Знаете ли вы об аномалиях встраивания в Visual C++ 2022?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Знаете ли вы об аномалиях встраивания в Visual C++ 2022?

Сообщение Anonymous »

У меня есть собственный код C++, который уже много лет работает во всех версиях Visual Studio, с 2008 по 2022 год.
Но теперь я наблюдаю сбой в работе компилятора 2022 года, когда следующие симптомы:
  • вызов определенной функции не выполняется* должным образом (вызывает ненормальное выполнение);
  • отладчик не учитывает точку останова на вызывающей строке ни внутри функции;
  • если я изменю режим расширения встроенной функции со значения по умолчанию на отключено ( или /Ob1), все работает нормально;
  • если я предварю вызов фиктивным оператором (

    Код: Выделить всё

    puts("")
    ), все работает нормально (!).
Так что похоже, что проблема связана со встраиванием функций. У меня нет лучшего объяснения, чем ошибка компилятора. Подчеркиваю, что функция не объявлена ​​встроенной, не реализована в заголовочном файле и проблема проявляется только в сборке Release x64.
*Когда я говорю «не выполняется», я имею в виду что вызов не имеет никакого эффекта, хотя я не уверен, встроена ли функция на самом деле или нет.
Код сложен, поэтому, прежде чем пытаться предоставить минимальный код, я спрашиваю, есть ли подобные проблемы уже были замечены. Должен ли я начать не доверять и отключить автоматическое встраивание?

Подробнее здесь: https://stackoverflow.com/questions/792 ... ual-c-2022
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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