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

--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Masahide Kashiwagi from comment #5)
> I understand that g++ 13 no longer supports _Float64x in a very limited way.

No, that's incorrect.

In GCC 12, there was no C++ support for that type, it was just a typedef for
long double.

In GCC 13 there is limited support for a distinct _Float64x type in the
compiler, but you can't use it with the standard library (iostreams,
numeric_limits, etc.)

> Does this mean that if I want to use 80-bit extended floating point numbers
> in g++ 13 or later, is it best to use long double?

If you use long double then you get exactly the same code as you would get
using _Float64x with GCC 12.

> Since long double may not be 80-bit on non-x86 architectures, I wanted to
> use _Float64x or __float80, which are clearly 80-bit, if possible.

You can use them, but you can't use _Float64x with the standard library. You
need to convert to/from another  type like long double to use standard APIs.

Reply via email to