Вопрос
Поддерживают ли GCC, MSVC или Clang, или некоторую комбинацию, настройку связи по умолчанию на C?
Фон
У меня большой смешанный проект C / C ++, и, хотя экспортировать символы в источниках C ++ с помощью связей C легко и логично, эти же источники предполагают, что все остальное в проекте находится под связью C ++. *
Текущая ситуация требует, чтобы я явно обернул все, что используют источники C, определенные в источниках C ++, и все, что источники C ++ используют из источников C с extern "C++"
.
В довершение ко всему, я не могу поместить extern "C"
во все файлы исходного кода или заголовочные файлы, так как сам материал C ++ будет потом жаловаться. (Например, из #include <memory>
или шаблонов, которые я определил.)