summaryrefslogtreecommitdiff
path: root/doc/posix-functions
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2021-03-21 03:46:05 +0100
committerBruno Haible <bruno@clisp.org>2021-03-21 03:46:05 +0100
commita646e362fce5952d55073792799cdc8fa29ab253 (patch)
treef9a4b74f458850f4ae06cd003e0ef683d136ae6d /doc/posix-functions
parentcfe9452d1dd3cf16e6c518b970bcdca70e8c872c (diff)
downloadgnulib-a646e362fce5952d55073792799cdc8fa29ab253.tar.gz
ftello: Work around bug in macOS >= 10.15.
Reported by Martin Storsjö <martin@martin.st> in <https://lists.gnu.org/archive/html/bug-gnulib/2020-12/msg00002.html>. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): On macOS, don't define FUNC_UNGETC_BROKEN. Instead, set gl_ftello_broken_after_ungetc to yes. * m4/ftello.m4 (gl_FUNC_FTELLO): Invoke gl_FUNC_UNGETC_WORKS, and arrange to provide the workaround if ftello is broken after ungetc. * lib/ftello.c: Include <errno.h>, intprops.h. (ftello) [FTELLO_BROKEN_AFTER_UNGETC]: Implement from scratch. * modules/ftello (Files): Add m4/ungetc.m4. (Depends-on): Add intprops. * doc/posix-functions/ftello.texi: Mention the macOS bug.
Diffstat (limited to 'doc/posix-functions')
-rw-r--r--doc/posix-functions/ftello.texi5
1 files changed, 5 insertions, 0 deletions
diff --git a/doc/posix-functions/ftello.texi b/doc/posix-functions/ftello.texi
index 2561c5d65e..eab591fca0 100644
--- a/doc/posix-functions/ftello.texi
+++ b/doc/posix-functions/ftello.texi
@@ -20,6 +20,11 @@ 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, when invoked after @code{ungetc}, throws away the @code{ungetc}
+buffer, changes the stream's file position, and returns the wrong position on
+some platforms:
+macOS 10.15 and newer.
+@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