Merge branch 'stable'
[gnulib.git] / doc / posix-functions / fgetc.texi
1 @node fgetc
2 @section @code{fgetc}
3 @findex fgetc
4
5 POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fgetc.html}
6
7 Gnulib module: stdio, nonblocking
8
9 Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
10 @itemize
11 @item
12 When reading from a non-blocking pipe whose buffer is empty, this function
13 fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
14 some platforms:
15 mingw, MSVC 9.
16 @end itemize
17
18 Portability problems not fixed by Gnulib:
19 @itemize
20 @item
21 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
22 upon failure.
23 @item
24 This function crashes if the stream's file descriptor has already been
25 closed, if @code{MSVC_INVALID_PARAMETER_HANDLING} is
26 @code{HAIRY_LIBRARY_HANDLING} or @code{SANE_LIBRARY_HANDLING},
27 on some platforms:
28 MSVC 9.
29 @end itemize