poll tests: Avoid test failure on BSD and Solaris systems.
[gnulib.git] / doc / posix-functions / fscanf.texi
blob2b07c1cdb8841a75515d4df90e6138e626c6347a
1 @node fscanf
2 @section @code{fscanf}
3 @findex fscanf
5 POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/fscanf.html}
7 LSB specification:@* @url{https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-fscanf.html}
9 Gnulib module: stdio, nonblocking
11 Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
12 @itemize
13 @item
14 When reading from a non-blocking pipe whose buffer is empty, this function
15 fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
16 some platforms:
17 mingw, MSVC 14.
18 @end itemize
20 Portability problems not fixed by Gnulib:
21 @itemize
22 @item
23 C99 and POSIX.1-2001 and later require end-of-file to be sticky, that
24 is, they require this function to act as if it reads end-of-file if
25 @code{feof} would return nonzero.  However, on some systems this
26 function attempts to read from the underlying file descriptor even if
27 the stream's end-of-file indicator is set.  These systems include
28 glibc and default Solaris.
29 @item
30 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
31 upon failure.
32 @item
33 On Windows, this function doesn't support the @code{hh}, @code{ll}, @code{j},
34 @code{t}, @code{z} size specifiers.
35 @end itemize