Я не могу отметить ваш ответ как принятый, но спасибо за ссылку! Я прочитал этот пост еще в марте, но совершенно забыл об этом.
ТАК пост:Является ли Visual-C ++ - 2017 двоичным кодом совместимым с VC ++ - 2015? ясно говорит, что VS 2017 двоично совместим с VS 2015. Это даже выглядит как официальная позиция.
Мой вопрос в прошлом, я отчетливо помню, как сталкивался с ошибками компоновщика (я не помню конкретный набор ошибок) каждый раз, когда я пытаюсь связать встатическая библиотека это было скомпилировано с другой версией MSVC в EXE, который создается с более новой версией MSVC.
Тем не менее, двоичная (не) совместимость звучит как то, что взорвется на вашем лице привремя выполнения, а не время ссылки.
Может кто-нибудь сказать мне, действительно ли предыдущие версии MSVC действительно производили ошибки компоновщика при несовпадении версий? Как это было достигнуто?
РЕДАКТИРОВАТЬКак это влияет на статические библиотеки, созданные с включенным WPO / LTCG? Я считаю, что они создают промежуточные объектные файлы (в отличие от COFF), и Microsoft не гарантировала, что формат этих промежуточных файлов останется неизменным в разных версиях компилятора.