Результатом операции с плавающей точкой является NaN для операндов non-NaN
Эта проверка определяет, является ли результатом операции с плавающей точкой NaN. Проверка выполнена, только если вы включаете режим верификации, который включает NaNs, и укажите, что верификация должна подсветить операции тот результат в NaN.
Если вы указываете, что верификация должна произвести предупреждение для NaN, проверка:
Красный, если операция производит NaN на всех путях к выполнению, которые программное обеспечение рассматривает, и операнды, не NaN.
Оранжевый, если операция производит NaN на некоторых путях к выполнению, когда операндами не является NaN.
Зеленый, если операция не производит NaN, если операндами не является NaN.
Если вы указываете, что верификация должна запретить NaN, цвет проверки зависит от результата операции только. Цвет не зависит от операндов.
Проверка также подсвечивает преобразования от переменных с плавающей точкой до целых чисел, где переменной с плавающей точкой может быть NaN. В этом случае проверка всегда выполняется, когда вы включаете NaNs в верификацию, и не разрешает NaNs, как введено преобразованию.
Чтобы включить этот режим верификации, используйте эти опции:
NaNs (-check-nan)
: Используйте аргумент warn-first
или forbid
.
Группа: числовой |
Язык: C | C++ |
Акроним: INVALID_FLOAT_OP |