view doc/posix-functions/ftello.texi @ 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 6355dc4626b5
children
line wrap: on
line source

@node ftello
@section @code{ftello}
@findex ftello

POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/ftello.html}

Gnulib module: ftello

Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
IRIX 5.3, OSF/1 4.0, Solaris 2.5.1, mingw, MSVC 9.
@item
The declaration of @code{ftello} in @code{<stdio.h>} is not enabled by default
on some platforms:
glibc 2.3.6, OSF/1 5.1.
@item
This function produces incorrect results after @code{putc} that followed a
@code{getc} call that reached EOF on some platforms:
Solaris 11 2010-11.
@item
This function fails on seekable stdin, stdout, and stderr: cygwin <= 1.5.24.
@item
On platforms where @code{off_t} is a 32-bit type, @code{ftello} does not work
correctly with files larger than 2 GB.  (Cf. @code{AC_SYS_LARGEFILE}.)
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
This function produces incorrect results immediately after @code{fseek} on some
platforms:
HP-UX 11.
@item
@code{fflush}, @code{ftell}, @code{ftello}, @code{fgetpos} behave incorrectly
on input streams that are opened in @code{O_TEXT} mode and whose contents
contains Unix line terminators (LF), on some platforms: mingw, MSVC 9.
@item
On platforms where @code{off_t} is a 64-bit type, but @code{fseeko} is
not present, stream operations on files larger than 2 GB silently do
the wrong thing.  This affects BSD/OS, which is mostly obsolete.
@end itemize