changeset 17085:80904f782122

doc: document sticky-EOF issue * doc/posix-functions/fgetc.texi (fgetc): * doc/posix-functions/fgets.texi (fgets): * doc/posix-functions/fread.texi (fread): * doc/posix-functions/fscanf.texi (fscanf): * doc/posix-functions/getc.texi (getc): * doc/posix-functions/getchar.texi (getchar): * doc/posix-functions/scanf.texi (scanf): Mention that glibc and default Solaris do not conform to C99 and POSIX-2001 or later, with respect to how getchar etc. behave when feof reports nonzero.
author Paul Eggert <eggert@cs.ucla.edu>
date Sun, 16 Sep 2012 10:37:16 -0700
parents 723cfa7546c0
children ece5caebd75e
files ChangeLog doc/posix-functions/fgetc.texi doc/posix-functions/fgets.texi doc/posix-functions/fread.texi doc/posix-functions/fscanf.texi doc/posix-functions/getc.texi doc/posix-functions/getchar.texi doc/posix-functions/scanf.texi
diffstat 8 files changed, 63 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2012-09-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+	doc: document sticky-EOF issue
+	* doc/posix-functions/fgetc.texi (fgetc):
+	* doc/posix-functions/fgets.texi (fgets):
+	* doc/posix-functions/fread.texi (fread):
+	* doc/posix-functions/fscanf.texi (fscanf):
+	* doc/posix-functions/getc.texi (getc):
+	* doc/posix-functions/getchar.texi (getchar):
+	* doc/posix-functions/scanf.texi (scanf):
+	Mention that glibc and default Solaris do not conform to
+	C99 and POSIX-2001 or later, with respect to how getchar
+	etc. behave when feof reports nonzero.
+
 2012-09-13  Joachim Schmitz <jojo@schmitz-digital.de>  (tiny change)
 
 	poll: fix poll(0, NULL, msec)
--- a/doc/posix-functions/fgetc.texi
+++ b/doc/posix-functions/fgetc.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @item
--- a/doc/posix-functions/fgets.texi
+++ b/doc/posix-functions/fgets.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @end itemize
--- a/doc/posix-functions/fread.texi
+++ b/doc/posix-functions/fread.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @item
--- a/doc/posix-functions/fscanf.texi
+++ b/doc/posix-functions/fscanf.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @item
--- a/doc/posix-functions/getc.texi
+++ b/doc/posix-functions/getc.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @end itemize
--- a/doc/posix-functions/getchar.texi
+++ b/doc/posix-functions/getchar.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @end itemize
--- a/doc/posix-functions/scanf.texi
+++ b/doc/posix-functions/scanf.texi
@@ -18,6 +18,13 @@
 Portability problems not fixed by Gnulib:
 @itemize
 @item
+C99 and POSIX-2001 and later require end-of-file to be sticky, that
+is, they require this function to act as if it reads end-of-file if
+@code{feof} would return nonzero.  However, on some systems this
+function attempts to read from the underlying file descriptor even if
+the stream's end-of-file indicator is set.  These systems include
+glibc and default Solaris.
+@item
 On Windows platforms (excluding Cygwin), this function does not set @code{errno}
 upon failure.
 @item