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.

Reply via email to