poll tests: Avoid test failure on BSD and Solaris systems.
[gnulib.git] / doc / posix-functions / strtod.texi
blob5a466d4399744adf9747454d09dca768b8031c3b
1 @node strtod
2 @section @code{strtod}
3 @findex strtod
5 POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/strtod.html}
7 Gnulib module: strtod or strtod-obsolete
9 Portability problems fixed by either Gnulib module @code{strtod} or @code{strtod-obsolete}:
10 @itemize
11 @item
12 This function mis-parses strings with leading @samp{+} on some old platforms:
13 Old versions of Linux.
15 @item
16 This function returns a wrong end pointer on some old platforms.
18 @item
19 This function consumes whitespace even when there is nothing that should
20 be parsed on some platforms:
21 IRIX 6.5.
23 @item
24 This function allows whitespace between @samp{e} and the exponent on
25 some platforms:
26 HP-UX 11.11, IRIX 6.5.
28 @item
29 This function returns the wrong end pointer for @samp{-0x} on some
30 platforms:
31 glibc 2.4, Mac OS X 10.5, FreeBSD 6.2, AIX 7.1, Cygwin < 1.5.25-11.
33 @item
34 This function returns +0.0 (not @minus{}0.0) for @samp{-0} on some platforms:
35 IRIX 6.5.
37 @item
38 This function fails to parse Infinities and plain NaNs on some platforms:
39 OpenBSD 4.0, HP-UX 11.11, IRIX 6.5, Solaris 9, mingw, MSVC 14.
41 @item
42 This function fails to parse @samp{NaN()} on some platforms:
43 glibc-2.3.6, Mac OS X 10.5, FreeBSD 6.2, OpenBSD 4.0, AIX 7.1, HP-UX 11.11, IRIX 6.5, Cygwin < 1.5.25-11, mingw, MSVC 14.
45 @item
46 This function fails to parse @samp{NaN(@var{n-char-sequence})} on some
47 platforms:
48 OpenBSD 4.0, HP-UX 11.11, IRIX 6.5, mingw, MSVC 14.
50 @item
51 This function parses @samp{NaN(@var{n-char-sequence})}, but returns
52 the wrong end pointer on some platforms:
53 glibc-2.4, AIX 7.1.
55 @item
56 This function fails to parse C99 hexadecimal floating point on some
57 platforms:
58 NetBSD 5.0, OpenBSD 4.0, AIX 5.1, HP-UX 11.11, IRIX 6.5, Solaris 11.4, mingw, MSVC 14.
60 @item
61 In hexadecimal floats, this function allows whitespace between @samp{p}
62 and the exponent on some platforms:
63 HP-UX 11.31/ia64.
65 @item
66 This function returns the wrong end pointer for @samp{0x1p} on some
67 platforms:
68 AIX 7.1.
69 @end itemize
71 Portability problems fixed by Gnulib module @code{strtod-obsolete}:
72 @itemize
73 @item
74 This function is missing on some old platforms.
75 @end itemize
77 Portability problems not fixed by Gnulib:
78 @itemize
79 @item
80 This function returns +0.0 (not @minus{}0.0) for negative underflow on some
81 platforms:
82 glibc 2.7, Cygwin 1.5.x, mingw, MSVC 14.
84 @item
85 This function cannot distinguish between ``nan'' and ``-nan'' on some
86 platforms:
87 glibc 2.7, IRIX 6.5, mingw, MSVC 14.
89 @item
90 This function fails to correctly parse very long strings on some
91 platforms:
92 Mac OS X 10.5, FreeBSD 6.2, NetBSD 5.0, OpenBSD 4.0, IRIX 6.5, Cygwin, mingw, MSVC 14.
94 @item
95 The replacement function does not always return correctly rounded results.
96 @end itemize