mirror of git://sourceware.org/git/glibc.git
The classification macros: finite, fpclassify, iseqsig, isinf, isnan, issignaling, and signbit are defined by ISO C11 and declared in mathcalls.h for each of the floating-point types: float, double, and long double. TS 18661-3 does not mention these macros for float128, however support for them must be present when _Float128 is present. This is true, even when the feature test macro __STDC_WANT_IEC_60559_TYPES_EXT__ is false. Other function declarations in mathcalls.h, on the other hand, depend on __STDC_WANT_IEC_60559_TYPES_EXT__. This patch splits the helper functions (__finite, __fpclassify, __iseqsig, __isinf, __isnan, __issignaling, and __signbit) from mathcalls.h, so that these helper functions can be declared for _Float128, even when __STDC_WANT_IEC_60559_TYPES_EXT__ is false. Tested for powerpc64le, s390x, and x86_64. * include/bits/mathcalls-helper-functions.h: New file. * math/Makefile (headers): Add bits/mathcalls-helper-functions.h. * math/bits/mathcalls.h (__finite, __fpclassify, __iseqsig) (__isinf, __isnan, __issignaling, __signbit): Move declarations to math/bits/mathcalls-helper-functions.h. * math/bits/mathcalls-helper-functions.h: New file. * math/math.h: Include bits/mathcalls-helper-functions.h for float, double, and long double. |
||
|---|---|---|
| .. | ||
| types | ||
| cmathcalls.h | ||
| dlfcn.h | ||
| error.h | ||
| fcntl2.h | ||
| locale.h | ||
| mathcalls-helper-functions.h | ||
| mathcalls.h | ||
| poll2.h | ||
| posix1_lim.h | ||
| posix2_lim.h | ||
| select2.h | ||
| setjmp2.h | ||
| socket2.h | ||
| stab.def | ||
| stdlib-float.h | ||
| stdlib.h | ||
| string2.h | ||
| string3.h | ||
| strings_fortified.h | ||
| syslog.h | ||
| types.h | ||
| unistd.h | ||
| wchar2.h | ||
| xopen_lim.h | ||