Merge branch 'stable'
[gnulib.git] / doc / posix-functions / fwrite.texi
1 @node fwrite
2 @section @code{fwrite}
3 @findex fwrite
4
5 POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fwrite.html}
6
7 Gnulib module: stdio, nonblocking, sigpipe
8
9 Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
10 @itemize
11 @item
12 When writing to a non-blocking pipe whose buffer is full, this function fails
13 with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
14 platforms:
15 mingw, MSVC 9.
16 @end itemize
17
18 Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
19 @itemize
20 @item
21 When writing to a pipe with no readers, this function fails, instead of
22 obeying the current @code{SIGPIPE} handler, on some platforms:
23 mingw, MSVC 9.
24 @end itemize
25
26 Portability problems not fixed by Gnulib:
27 @itemize
28 @item
29 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
30 upon failure.
31 @item
32 On some platforms, this function does not set @code{errno} or the
33 stream error indicator on attempts to write to a read-only stream:
34 Cygwin 1.7.9.
35 @item
36 This function crashes if the stream's file descriptor has already been
37 closed, if @code{MSVC_INVALID_PARAMETER_HANDLING} is
38 @code{HAIRY_LIBRARY_HANDLING} or @code{SANE_LIBRARY_HANDLING},
39 on some platforms:
40 MSVC 9.
41 @end itemize