https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104772
--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- Strictly speaking, the __FLT128_* macros relate to _Float128 which is not defined for C++ even when __float128 is (and in theory a target could have a non-IEEE __float128 which would have different properties from _Float128).