[Bug middle-end/81120] __builtin_nansl ("") generates quiet NaN

joseph at codesourcery dot com gcc-bugzilla@gcc.gnu.org
Mon Jun 19 17:41:00 GMT 2017


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

--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
Of course, such a test is fairly meaningless without -fsignaling-nans.

Then, where long double and double have the same format, "Whether C 
assignment (6.5.16) (and conversion as if by assignment) to the same 
format is an IEC 60559 convertFormat or copy operation is 
implementation-defined, even if <fenv.h> defines the macro 
FE_SNANS_ALWAYS_SIGNAL (F.2.1)." from TS 18661-1 applies.  That is, a test 
should not be expecting a particular choice of the signaling NaN being 
quieted or not by a conversion to the same format, including when that's a 
conversion from long double to double (and GCC will generally not quiet 
the signaling NaN in such a conversion, unless on an excess-precision 
architecture where simple loads of the narrower type quiet it).


More information about the Gcc-bugs mailing list