[cfp-interest 3644] SNAN* in math.h

Joseph Myers josmyers@redhat.com
Fri Oct 10 14:36:53 GMT 2025


On Fri, 10 Oct 2025, Paul Zimmermann wrote:

>        Hi,
> 
> I forward a message on the CFP-interest list.
> 
> Apparently the SNAN* macros are still in math.h,
> and should be moved to float.h.
> 
> $ grep "e SNAN" math/math.h
> #  define SNANF (__builtin_nansf (""))
> #  define SNAN (__builtin_nans (""))
> #  define SNANL (__builtin_nansl (""))

#if __GLIBC_USE (IEC_60559_BFP_EXT) is the condition for things in TS 
18661-1 that are *not* in C23.  See the comments in 
bits/libc-header-start.h.

> # define SNANF16 (__builtin_nansf16 (""))
> # define SNANF32 (__builtin_nansf32 (""))
> # define SNANF64 (__builtin_nansf64 (""))
> # define SNANF128 (__builtin_nansf128 (""))
> # define SNANF32X (__builtin_nansf32x (""))
> # define SNANF64X (__builtin_nansf64x (""))
> # define SNANF128X (__builtin_nansf128x (""))

Likewise, the conditions on these have __GLIBC_USE (IEC_60559_TYPES_EXT) 
&& (defined __USE_GNU || !__GLIBC_USE (ISOC23)).

-- 
Joseph S. Myers
josmyers@redhat.com



More information about the Libc-alpha mailing list