https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111759
Bug ID: 111759 Summary: __FLT_HAS_INFINITY__ has value 1 even when -ffinite-math-only is used. Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: Zahira.Ammarguellat at intel dot com Target Milestone: --- Not sure if this is a bug but would like community feedback. In https://godbolt.org/z/fqMdqfM7n we see that __FLT_HAS_INFINITY__ is set to 1 even when -ffast-math and -ffinite-math-only are used. Shouldn't this be set to 0 in presence of these options? In limits header: static _GLIBCXX_USE_CONSTEXPR bool has_infinity = __FLT_HAS_INFINITY__; That means the value of std::numeric_limits<float>::has_infinity will always be 1 even with -ffast-math and -ffinite-math-only. See https://godbolt.org/z/M6W6Ejc7W Is this acceptable? Any feedback appreciated. Thanks.