summaryrefslogtreecommitdiff
path: root/doc/posix-functions
diff options
context:
space:
mode:
Diffstat (limited to 'doc/posix-functions')
-rw-r--r--doc/posix-functions/accept.texi4
-rw-r--r--doc/posix-functions/dup2.texi7
-rw-r--r--doc/posix-functions/fclose.texi12
-rw-r--r--doc/posix-functions/fgetc.texi9
-rw-r--r--doc/posix-functions/fgets.texi9
-rw-r--r--doc/posix-functions/fprintf.texi11
-rw-r--r--doc/posix-functions/fputc.texi13
-rw-r--r--doc/posix-functions/fputs.texi13
-rw-r--r--doc/posix-functions/fread.texi9
-rw-r--r--doc/posix-functions/fscanf.texi9
-rw-r--r--doc/posix-functions/fwrite.texi13
-rw-r--r--doc/posix-functions/gai_strerror.texi15
-rw-r--r--doc/posix-functions/getc.texi9
-rw-r--r--doc/posix-functions/getchar.texi9
-rw-r--r--doc/posix-functions/getcwd.texi20
-rw-r--r--doc/posix-functions/gets.texi9
-rw-r--r--doc/posix-functions/iconv.texi4
-rw-r--r--doc/posix-functions/memchr.texi13
-rw-r--r--doc/posix-functions/mkstemp.texi15
-rw-r--r--doc/posix-functions/open.texi4
-rw-r--r--doc/posix-functions/printf.texi11
-rw-r--r--doc/posix-functions/putc.texi13
-rw-r--r--doc/posix-functions/putchar.texi13
-rw-r--r--doc/posix-functions/puts.texi13
-rw-r--r--doc/posix-functions/read.texi9
-rw-r--r--doc/posix-functions/scanf.texi9
-rw-r--r--doc/posix-functions/socket.texi4
-rw-r--r--doc/posix-functions/strtod.texi13
-rw-r--r--doc/posix-functions/vfprintf.texi11
-rw-r--r--doc/posix-functions/vfscanf.texi9
-rw-r--r--doc/posix-functions/vprintf.texi11
-rw-r--r--doc/posix-functions/vscanf.texi9
-rw-r--r--doc/posix-functions/write.texi19
33 files changed, 277 insertions, 74 deletions
diff --git a/doc/posix-functions/accept.texi b/doc/posix-functions/accept.texi
index 61b009345c..b937e15f00 100644
--- a/doc/posix-functions/accept.texi
+++ b/doc/posix-functions/accept.texi
@@ -10,7 +10,7 @@ Portability problems fixed by Gnulib:
@itemize
@item
On Windows platforms (excluding Cygwin), the descriptors returned by
-the @code{accept} function can not be used in calls to @code{read},
+the @code{accept} function cannot be used in calls to @code{read},
@code{write}, and @code{close}; you have to use @code{recv}, @code{send},
@code{closesocket} in these cases instead.
@item
@@ -22,7 +22,7 @@ used instead.
Portability problems not fixed by Gnulib:
@itemize
@item
-On BeOS, the descriptors returned by the @code{accept} function can not be used
+On BeOS, the descriptors returned by the @code{accept} function cannot be used
in calls to @code{read}, @code{write}, and @code{close}; you have to use
@code{recv}, @code{send}, @code{closesocket} in these cases instead.
@item
diff --git a/doc/posix-functions/dup2.texi b/doc/posix-functions/dup2.texi
index fc1e3595a9..6054c303ba 100644
--- a/doc/posix-functions/dup2.texi
+++ b/doc/posix-functions/dup2.texi
@@ -4,9 +4,9 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/dup2.html}
-Gnulib module: dup2
+Gnulib module: dup2 or dup2-obsolete
-Portability problems fixed by Gnulib:
+Portability problems fixed by either Gnulib module @code{dup2} or @code{dup2-obsolete}:
@itemize
@item
This function always returns 0 for success on some platforms:
@@ -34,7 +34,10 @@ This function returns @code{EMFILE} instead of @code{EBADF} for
extremely large targets, which interferes with using
@code{dup2(fd,fd)==fd)} as the minimal @code{EBADF} filter:
FreeBSD 6.1, Cygwin 1.5.
+@end itemize
+Portability problems fixed by Gnulib module @code{dup2-obsolete}:
+@itemize
@item
This function is missing on some older platforms.
@end itemize
diff --git a/doc/posix-functions/fclose.texi b/doc/posix-functions/fclose.texi
index da26c87e89..a7b576088e 100644
--- a/doc/posix-functions/fclose.texi
+++ b/doc/posix-functions/fclose.texi
@@ -4,9 +4,17 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fclose.html}
-Gnulib module: fclose
+Gnulib module: fclose, fflush
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{fclose} together with module @code{fflush}:
+@itemize
+@item
+On some platforms, this function fails to set the file position of a
+seekable input stream to the byte after the last one actually read:
+glibc 2.13, FreeBSD.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{fclose}:
@itemize
@item
On Windows platforms (excluding Cygwin), @code{socket} and @code{accept}
diff --git a/doc/posix-functions/fgetc.texi b/doc/posix-functions/fgetc.texi
index 057efe78ab..4cbe30eb6a 100644
--- a/doc/posix-functions/fgetc.texi
+++ b/doc/posix-functions/fgetc.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fgetc.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/fgets.texi b/doc/posix-functions/fgets.texi
index fd0744e106..2d840b168b 100644
--- a/doc/posix-functions/fgets.texi
+++ b/doc/posix-functions/fgets.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fgets.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/fprintf.texi b/doc/posix-functions/fprintf.texi
index e922e85e08..04c4c72cae 100644
--- a/doc/posix-functions/fprintf.texi
+++ b/doc/posix-functions/fprintf.texi
@@ -4,7 +4,7 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fprintf.html}
-Gnulib module: fprintf-posix or stdio, sigpipe
+Gnulib module: fprintf-posix or stdio, nonblocking, sigpipe
Portability problems fixed by Gnulib module @code{fprintf-posix}:
@itemize
@@ -64,6 +64,15 @@ This function can crash in out-of-memory conditions on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 5.0.
@end itemize
+Portability problems fixed by Gnulib module @code{stdio} or @code{fprintf-posix}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
Portability problems fixed by Gnulib module @code{stdio} or @code{fprintf-posix}, together with module @code{sigpipe}:
@itemize
@item
diff --git a/doc/posix-functions/fputc.texi b/doc/posix-functions/fputc.texi
index 2f09a8a98f..9d6c9fd29c 100644
--- a/doc/posix-functions/fputc.texi
+++ b/doc/posix-functions/fputc.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fputc.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/fputs.texi b/doc/posix-functions/fputs.texi
index d2c46ef8bd..7fc4bf5311 100644
--- a/doc/posix-functions/fputs.texi
+++ b/doc/posix-functions/fputs.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fputs.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/fread.texi b/doc/posix-functions/fread.texi
index 6f02f51f55..57155c22f2 100644
--- a/doc/posix-functions/fread.texi
+++ b/doc/posix-functions/fread.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fread.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/fscanf.texi b/doc/posix-functions/fscanf.texi
index 49d528a5f4..1c47ec2cce 100644
--- a/doc/posix-functions/fscanf.texi
+++ b/doc/posix-functions/fscanf.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fscanf.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/fwrite.texi b/doc/posix-functions/fwrite.texi
index d9defec9c8..20f7fb8100 100644
--- a/doc/posix-functions/fwrite.texi
+++ b/doc/posix-functions/fwrite.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fwrite.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/gai_strerror.texi b/doc/posix-functions/gai_strerror.texi
index ece2bdc991..d94a6ed9bd 100644
--- a/doc/posix-functions/gai_strerror.texi
+++ b/doc/posix-functions/gai_strerror.texi
@@ -10,13 +10,18 @@ Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
-HP-UX 11.11, IRIX 6.5, OSF/1 4.0, Solaris 7, Cygwin 1.5.x, mingw, Interix 3.5, BeOS.
+HP-UX 11.11, IRIX 6.5, OSF/1 4.0, Solaris 7, Cygwin 1.5.x, Interix
+3.5, BeOS.
+@item
+This function is only available in @code{<ws2tcpip.h>} on some
+platforms:
+mingw.
+@item
+This function's return type is @code{char *} instead of @code{const char *}
+on some platforms:
+AIX 7.1, HP-UX 11, OSF/1 5.1, Solaris 9, mingw.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
-@item
-This function's return type is @code{char *} instead of @code{const char *}
-on some platforms:
-AIX 7.1, HP-UX 11, OSF/1 5.1, Solaris 9.
@end itemize
diff --git a/doc/posix-functions/getc.texi b/doc/posix-functions/getc.texi
index 7c92ab4d16..fea05113af 100644
--- a/doc/posix-functions/getc.texi
+++ b/doc/posix-functions/getc.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/getc.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/getchar.texi b/doc/posix-functions/getchar.texi
index d365f8d3ac..3b11d99343 100644
--- a/doc/posix-functions/getchar.texi
+++ b/doc/posix-functions/getchar.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/getchar.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/getcwd.texi b/doc/posix-functions/getcwd.texi
index 4d00af8955..1f6dd187d2 100644
--- a/doc/posix-functions/getcwd.texi
+++ b/doc/posix-functions/getcwd.texi
@@ -4,15 +4,25 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/getcwd.html}
-Gnulib module: getcwd
+Gnulib module: getcwd or getcwd-lgpl
-Portability problems fixed by Gnulib:
+Portability problems fixed by either Gnulib module @code{getcwd} or
+@code{getcwd-lgpl}:
@itemize
@item
-This function is missing on some older platforms.
-@item
On glibc platforms, @code{getcwd (NULL, n)} allocates memory for the result.
-On other platforms, this call is not allowed.
+On some other platforms, this call is not allowed. Conversely, mingw fails
+to honor non-zero @code{n}.
+@item
+On some platforms, the prototype for @code{getcwd} uses @code{int}
+instead of @code{size_t} for the size argument:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{getcwd}:
+@itemize
+@item
+This function is missing on some older platforms.
@item
This function does not handle long file names (greater than @code{PATH_MAX})
correctly on some platforms.
diff --git a/doc/posix-functions/gets.texi b/doc/posix-functions/gets.texi
index af29450a8c..1a3b277439 100644
--- a/doc/posix-functions/gets.texi
+++ b/doc/posix-functions/gets.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/gets.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/iconv.texi b/doc/posix-functions/iconv.texi
index 3f984b5940..7ba2cfcc49 100644
--- a/doc/posix-functions/iconv.texi
+++ b/doc/posix-functions/iconv.texi
@@ -27,8 +27,8 @@ when GNU libiconv is not installed.
@item
This function was not correctly implemented in glibc versions before 2.2.
@item
-When @code{iconv} encounters an input character that is valid but that can
-not be converted to the output character set, glibc's and GNU libiconv's
+When @code{iconv} encounters an input character that is valid but that
+cannot be converted to the output character set, glibc's and GNU libiconv's
@code{iconv} stop the conversion. Some other implementations put an
implementation-defined character into the output buffer. ---
Gnulib provides higher-level facilities @code{striconv} and @code{striconveh}
diff --git a/doc/posix-functions/memchr.texi b/doc/posix-functions/memchr.texi
index 3c9cfcb9d2..68a15a23f6 100644
--- a/doc/posix-functions/memchr.texi
+++ b/doc/posix-functions/memchr.texi
@@ -4,18 +4,21 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/memchr.html}
-Gnulib module: memchr
+Gnulib module: memchr or memchr-obsolete
-Portability problems fixed by Gnulib:
+Portability problems fixed by either Gnulib module @code{memchr} or @code{memchr-obsolete}:
@itemize
@item
-This function is missing on some older platforms.
-
-@item
This function dereferences too much memory on some platforms:
glibc 2.10 on x86_64, IA-64; glibc 2.11 on Alpha.
@end itemize
+Portability problems fixed by Gnulib module @code{memchr-obsolete}:
+@itemize
+@item
+This function is missing on some older platforms.
+@end itemize
+
Portability problems not fixed by Gnulib:
@itemize
@end itemize
diff --git a/doc/posix-functions/mkstemp.texi b/doc/posix-functions/mkstemp.texi
index 55b42a9feb..ebe8c50c8b 100644
--- a/doc/posix-functions/mkstemp.texi
+++ b/doc/posix-functions/mkstemp.texi
@@ -12,15 +12,22 @@ Portability problems fixed by Gnulib:
This function is missing on some platforms:
mingw.
@item
+This function is declared in @code{<unistd.h>} instead of @code{<stdlib.h>}
+on some platforms:
+MacOS X 10.3.
+@item
On some platforms (HP-UX 10.20, SunOS 4.1.4, Solaris 2.5.1), mkstemp has a silly
limit that it can create no more than 26 files from a given template. On
OSF/1 4.0f, it can create only 32 files per process.
+@item
+On some older platforms, @code{mkstemp} can create a world or group
+writable or readable file, if you haven't set the process umask to
+077. This is a security risk.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
-@item
-On platforms other than glibc 2.0.7 or newer, @code{mkstemp} can create a
-world or group writable or readable file, if you haven't set the process
-umask to 077. This is a security risk.
@end itemize
+
+The gnulib module @code{clean-temp} can create temporary files that will not
+be left behind after signals such as SIGINT.
diff --git a/doc/posix-functions/open.texi b/doc/posix-functions/open.texi
index 223126f61e..7ccb4861e4 100644
--- a/doc/posix-functions/open.texi
+++ b/doc/posix-functions/open.texi
@@ -14,6 +14,10 @@ and (without the slash) names a nonexistent file or a file that is not a
directory, on some platforms:
FreeBSD 7.2, AIX 7.1, HP-UX 11.00, Solaris 9, Irix 5.3.
@item
+This function does not support the @code{O_NONBLOCK} flag when it is defined
+by the gnulib module @code{nonblock} on some platforms:
+mingw.
+@item
On Windows platforms (excluding Cygwin), this function does usually not
recognize the @file{/dev/null} filename.
@end itemize
diff --git a/doc/posix-functions/printf.texi b/doc/posix-functions/printf.texi
index eaee96a753..df7813f6a4 100644
--- a/doc/posix-functions/printf.texi
+++ b/doc/posix-functions/printf.texi
@@ -4,7 +4,7 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/printf.html}
-Gnulib module: printf-posix or stdio, sigpipe
+Gnulib module: printf-posix or stdio, nonblocking, sigpipe
Portability problems fixed by Gnulib module @code{printf-posix}:
@itemize
@@ -64,6 +64,15 @@ This function can crash in out-of-memory conditions on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 5.0.
@end itemize
+Portability problems fixed by Gnulib module @code{stdio} or @code{printf-posix}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
Portability problems fixed by Gnulib module @code{stdio} or @code{printf-posix}, together with module @code{sigpipe}:
@itemize
@item
diff --git a/doc/posix-functions/putc.texi b/doc/posix-functions/putc.texi
index b7011a01be..d156461ace 100644
--- a/doc/posix-functions/putc.texi
+++ b/doc/posix-functions/putc.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/putc.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/putchar.texi b/doc/posix-functions/putchar.texi
index d89ab7189f..aeb6b4307c 100644
--- a/doc/posix-functions/putchar.texi
+++ b/doc/posix-functions/putchar.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/putchar.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/puts.texi b/doc/posix-functions/puts.texi
index 69ee72e3de..ef350ac1b1 100644
--- a/doc/posix-functions/puts.texi
+++ b/doc/posix-functions/puts.texi
@@ -4,9 +4,18 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/puts.html}
-Gnulib module: stdio, sigpipe
+Gnulib module: stdio, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails, instead of
diff --git a/doc/posix-functions/read.texi b/doc/posix-functions/read.texi
index 385fb77b0f..2f5312de84 100644
--- a/doc/posix-functions/read.texi
+++ b/doc/posix-functions/read.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/read.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/scanf.texi b/doc/posix-functions/scanf.texi
index fbca16749a..f29378c097 100644
--- a/doc/posix-functions/scanf.texi
+++ b/doc/posix-functions/scanf.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/scanf.html}
-Gnulib module: ---
+Gnulib module: stdio, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/socket.texi b/doc/posix-functions/socket.texi
index bc3ee0f719..a91ebd6d76 100644
--- a/doc/posix-functions/socket.texi
+++ b/doc/posix-functions/socket.texi
@@ -10,7 +10,7 @@ Portability problems fixed by Gnulib:
@itemize
@item
On Windows platforms (excluding Cygwin), the descriptors returned by
-the @code{socket} function can not be used in calls to @code{read},
+the @code{socket} function cannot be used in calls to @code{read},
@code{write}, and @code{close}; you have to use @code{recv}, @code{send},
@code{closesocket} in these cases instead.
@item
@@ -22,7 +22,7 @@ used instead.
Portability problems not fixed by Gnulib:
@itemize
@item
-On BeOS, the descriptors returned by the @code{socket} function can not be used
+On BeOS, the descriptors returned by the @code{socket} function cannot be used
in calls to @code{read}, @code{write}, and @code{close}; you have to use
@code{recv}, @code{send}, @code{closesocket} in these cases instead.
@end itemize
diff --git a/doc/posix-functions/strtod.texi b/doc/posix-functions/strtod.texi
index 222f584a79..4f8f08bdb7 100644
--- a/doc/posix-functions/strtod.texi
+++ b/doc/posix-functions/strtod.texi
@@ -4,14 +4,11 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/strtod.html}
-Gnulib module: strtod
+Gnulib module: strtod or strtod-obsolete
-Portability problems fixed by Gnulib:
+Portability problems fixed by either Gnulib module @code{strtod} or @code{strtod-obsolete}:
@itemize
@item
-This function is missing on some old platforms.
-
-@item
This function mis-parses strings with leading @samp{+} on some old platforms:
Old versions of Linux.
@@ -67,6 +64,12 @@ platforms:
AIX 7.1.
@end itemize
+Portability problems fixed by Gnulib module @code{strtod-obsolete}:
+@itemize
+@item
+This function is missing on some old platforms.
+@end itemize
+
Portability problems not fixed by Gnulib:
@itemize
@item
diff --git a/doc/posix-functions/vfprintf.texi b/doc/posix-functions/vfprintf.texi
index 7e502347de..b40a334167 100644
--- a/doc/posix-functions/vfprintf.texi
+++ b/doc/posix-functions/vfprintf.texi
@@ -4,7 +4,7 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/vfprintf.html}
-Gnulib module: vfprintf-posix or stdio, sigpipe
+Gnulib module: vfprintf-posix or stdio, nonblocking, sigpipe
Portability problems fixed by Gnulib module @code{vfprintf-posix}:
@itemize
@@ -64,6 +64,15 @@ This function can crash in out-of-memory conditions on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 5.0.
@end itemize
+Portability problems fixed by Gnulib module @code{stdio} or @code{vfprintf-posix}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
Portability problems fixed by Gnulib module @code{stdio} or @code{vfprintf-posix}, together with module @code{sigpipe}:
@itemize
@item
diff --git a/doc/posix-functions/vfscanf.texi b/doc/posix-functions/vfscanf.texi
index 9f3da4da28..d051e6d0c7 100644
--- a/doc/posix-functions/vfscanf.texi
+++ b/doc/posix-functions/vfscanf.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/vfscanf.html}
-Gnulib module: ---
+Gnulib module: vfscanf, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{vfscanf}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/vprintf.texi b/doc/posix-functions/vprintf.texi
index 526070e22d..342d182c64 100644
--- a/doc/posix-functions/vprintf.texi
+++ b/doc/posix-functions/vprintf.texi
@@ -4,7 +4,7 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/vprintf.html}
-Gnulib module: vprintf-posix or stdio, sigpipe
+Gnulib module: vprintf-posix or stdio, nonblocking, sigpipe
Portability problems fixed by Gnulib module @code{vprintf-posix}:
@itemize
@@ -64,6 +64,15 @@ This function can crash in out-of-memory conditions on some platforms:
MacOS X 10.3, FreeBSD 6.0, NetBSD 5.0.
@end itemize
+Portability problems fixed by Gnulib module @code{stdio} or @code{vprintf-posix}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@end itemize
+
Portability problems fixed by Gnulib module @code{stdio} or @code{vprintf-posix}, together with module @code{sigpipe}:
@itemize
@item
diff --git a/doc/posix-functions/vscanf.texi b/doc/posix-functions/vscanf.texi
index 980f1a8a92..feff03ac5c 100644
--- a/doc/posix-functions/vscanf.texi
+++ b/doc/posix-functions/vscanf.texi
@@ -4,10 +4,15 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/vscanf.html}
-Gnulib module: ---
+Gnulib module: vscanf, nonblocking
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{vscanf}, together with module @code{nonblocking}:
@itemize
+@item
+When reading from a non-blocking pipe whose buffer is empty, this function
+fails with @code{errno} being set to @code{EINVAL} instead of @code{EAGAIN} on
+some platforms:
+mingw.
@end itemize
Portability problems not fixed by Gnulib:
diff --git a/doc/posix-functions/write.texi b/doc/posix-functions/write.texi
index 826151c9ee..604507d30c 100644
--- a/doc/posix-functions/write.texi
+++ b/doc/posix-functions/write.texi
@@ -4,9 +4,24 @@
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/write.html}
-Gnulib module: write, sigpipe
+Gnulib module: write, nonblocking, sigpipe
-Portability problems fixed by Gnulib:
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{nonblocking}:
+@itemize
+@item
+When writing to a non-blocking pipe whose buffer is full, this function fails
+with @code{errno} being set to @code{ENOSPC} instead of @code{EAGAIN} on some
+platforms:
+mingw.
+@item
+When writing to a non-blocking pipe on which no reader is currently waiting
+an amount of bytes that exceeds the pipe buffer's size, then -- even if the
+pipe's buffer is empty -- this function fails, instead of performing a partial
+write into the pipe buffer, on some platforms:
+mingw.
+@end itemize
+
+Portability problems fixed by Gnulib module @code{stdio}, together with module @code{sigpipe}:
@itemize
@item
When writing to a pipe with no readers, this function fails with error