Программы на C++. Форум разработчиков
1749541593
Anonymous
Я заметил, что следующая программа вообще оптимизирует никаких инструкций на недавних версиях Clang, с -ffast-math и -o1 и выше:
[code]#include
#include
int main() {
static_assert(std::numeric_limits::has_quiet_NaN);
static_assert(!(std::numeric_limits::quiet_NaN() >= 0.1));
assert(std::numeric_limits::has_quiet_NaN);
return std::numeric_limits::quiet_NaN() >= 0.1;
}
[/code]
возвращаемое значение, по -видимому, не определено (значение текущего реестра). Это ожидается? Ссылка на компилятор: https://godbolt.org/z/3my648dfe
Подробнее здесь: [url]https://stackoverflow.com/questions/79660021/can-clang-ffast-math-optimize-away-comparison-between-quiet-nan-and-float[/url]