Merge commit 'stable/20110609'
[gnulib.git] / doc / posix-functions / isnan.texi
1 @node isnan
2 @section @code{isnan}
3 @findex isnan
4
5 POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/isnan.html}
6
7 Gnulib module: isnan
8
9 Portability problems fixed by Gnulib:
10 @itemize
11 @item
12 @code{isnan} was introduced with C99 and is thus commonly not present
13 on pre-C99 systems.
14 @item
15 @code{isnan} is not a macro on some platforms:
16 IRIX 6.5, OSF/1 5.1 with gcc, Solaris 11 2010-11.
17 @item
18 On IRIX 6.5 with @code{cc}, @code{isnan} does not recognize some NaNs.
19 @item
20 On NetBSD/i386 and glibc/ia64, @code{isnan} does not recognize some
21 forms of NaNs, such as pseudo-NaNs, pseudo-Infinities, and
22 unnormalized numbers.
23 @item
24 On i686 and @var{x}86-64, @code{__builtin_isnanl} (and thus
25 @code{isnan} implementations based on it) in GCC 4.0 and later does
26 not recognize pseudo-denormals as NaNs, and similarly for
27 pseudo-zeroes, unnormalized numbers, and pseudo-denormals on ia64.
28 @end itemize
29
30 Portability problems not fixed by Gnulib:
31 @itemize
32 @end itemize