Branch
Hash :
d171b945
Author :
Date :
2024-12-27T23:14:22
Rename module math to math-h. * modules/math-h: Renamed from modules/math. * modules/math-h-tests: Renamed from modules/math-tests. * modules/math-h-c++-tests: Renamed from modules/math-c++-tests. * tests/test-math-h.c: Renamed from tests/test-math.c. * tests/test-math-h-c++.cc: Renamed from tests/test-math-c++.cc. * tests/test-math-h-c++2.cc: Renamed from tests/test-math-c++2.cc. * doc/posix-headers/math.texi: Update. * modules/* (Depends-on): Update. * modules/math: New file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
@node math.h
@section @file{math.h}
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/math.h.html}
Gnulib module: math-h
@mindex math-h
Portability problems fixed by Gnulib:
@itemize
@item
The conversion from @code{int} to @code{long double} in incorrect on some
platforms:
glibc 2.7 on Linux/SPARC64.
@item
The macro @code{NAN} is not defined on some platforms:
OpenBSD 4.0, AIX 5.1.
@item
The macro @code{NAN} is not exposed outside of C99 compilation on some
platforms:
glibc.
@item
The macros @code{NAN} and @code{HUGE_VAL} expand to a function address
rather than a floating point constant on some platforms:
Solaris 10.
@item
The macros @code{HUGE_VALF} and @code{HUGE_VALL} are not defined on some
platforms:
glibc/HPPA, glibc/SPARC, AIX 5.1, Solaris 9, MSVC 9.
@item
The macros @code{FP_ILOGB0} and @code{FP_ILOGBNAN} are not defined on some
platforms:
NetBSD 5.1, AIX 5.1, Solaris 9, MSVC 9.
@item
@code{HUGE_VAL}, @code{HUGE_VALF}, @code{HUGE_VALL} are not compile time
constants on some platforms:
FreeBSD 5.2, AIX 7.1.
@item
@code{INFINITY} and @code{NAN} are not compile time constants
on some platforms:
FreeBSD 5.2, AIX 7.1.
@item
@code{INFINITY} and @code{NAN} are of type @code{double} instead of @code{float}
on some platforms:
FreeBSD 7.1, mingw 5.0.
@item
The macros @code{NAN}, @code{HUGE_VALL}, and @code{INFINITY} are not
defined on some platforms:
OpenVMS.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
@code{NAN} is not a compile time constant with some compilers:
OpenVMS.
@item
The macro or variable @code{math_errhandling} is not defined on some platforms:
glibc 2.11, OpenBSD 4.9, NetBSD 5.1, UP-UX 11, Cygwin 1.7.9, mingw, MSVC 9.
@item
The macros @code{FP_ILOGB0} and @code{FP_ILOGBNAN} have wrong values on some
platforms:
@c https://dev.haiku-os.org/ticket/18351
Haiku before 2023-04-08.
@end itemize