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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Masahide Kashiwagi from comment #3)
> I forgot to mention in my earlier post that these two programs work fine in
> g++ 12.

Because same thing as for clang applies there, _Float64 or _Float64x types
aren't supported there in C++.  gcc 12 and earlier only supports them in C.
In GCC 13 and later, they are supported in C++ as well as distinct types,
_Float{16,32,64,128} as underlying types for std::float{16,32,64,128}_t, 
and the x suffixed types just with minimal support (the compiler can mangle
them among other things).
But because they aren't standard C++, the library doesn't know about them and
because they are distinct from long double etc. (again, intentional, because
they should mangle differently), the long double etc. support in the STL
headers doesn't work for those.

> Also, at https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html it says that
> __float80 and _Float64x are 80-bit extended floating point numbers and are
> available on x86. Has support for _Float64x been stopped?

No, it has been added, but just in very limited way.

Reply via email to