Должен ли стандарт C++ быть одинаковым в статических библиотеках и .exe?C++

Программы на C++. Форум разработчиков
Anonymous
Должен ли стандарт C++ быть одинаковым в статических библиотеках и .exe?

Сообщение Anonymous »

У меня есть статические библиотеки, созданные с использованием стандарта C++17, а основной проект (.exe) использует C++20 (компилятор MSVC).
Это нормально, или мне следует везде использовать один и тот же стандарт?
Вопрос возник потому, что я использую ASan (Address Sanitizer), который выдает ошибку «AddressSanitizer: use-after-poison по адресу...» Однако, если я устанавливаю Стандарт C++17 в основном проекте (в .exe), ASan не выдает эту ошибку.
Может ли использование разных стандартов привести к несовместимости на двоичном уровне?

Подробнее здесь: https://stackoverflow.com/questions/799 ... es-and-exe

Вернуться в «C++»