[Bug libstdc++/124714] std module (std.cc) should check for long double support

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Mar 31 07:27:13 GMT 2026


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124714

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|std module (std.cc) should  |std module (std.cc) should
                   |check for __float128        |check for long double
                   |support                     |support

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Now on the other hand, the checks are _GLIBCXX_HAVE_LOG10L etc.

But c_global/cmath does not check if acoshl exists.


I think why you thought this was the right check was because of this usage:
#if defined(__STDCPP_FLOAT128_T__) &&
defined(_GLIBCXX_LDOUBLE_IS_IEEE_BINARY128)
  constexpr _Float128
  acosh(_Float128 __x)
  { return __builtin_acoshl(__x); }


But that is not related to at all std::acoshl but rather to std::acosh and that
has a overload for _Float128.


More information about the Gcc-bugs mailing list