> 2021-01-05 Bruno Haible <[email protected]> > > truncate: Work around trailing slash bug in truncate() on AIX 7.2. > * m4/truncate.m4 (gl_FUNC_TRUNCATE): Add a test whether truncate > rejects trailing slashes. Set REPLACE_TRUNCATE and define > TRUNCATE_TRAILING_SLASH_BUG if not. > * lib/truncate.c (orig_truncate): New function. > (truncate): Add alternative implementation when > TRUNCATE_TRAILING_SLASH_BUG is defined. > * modules/truncate (Depends-on): Add sys_stat, stat.
Oops, I forgot to document this workaround. 2021-01-09 Bruno Haible <[email protected]> truncate: Document last workaround. * doc/posix-functions/truncate.texi: Document the AIX bug. diff --git a/doc/posix-functions/truncate.texi b/doc/posix-functions/truncate.texi index 85a4dbe..8ee1fa7 100644 --- a/doc/posix-functions/truncate.texi +++ b/doc/posix-functions/truncate.texi @@ -15,6 +15,10 @@ mingw, MSVC 14, Android 4.4 with @code{AC_SYS_LARGEFILE} in effect. On platforms where @code{off_t} is a 32-bit type, this function is not applicable to arbitrary lengths for files larger than 2 GB@. The fix is to use the @code{AC_SYS_LARGEFILE} macro. +@item +This function does not fail when the file name argument ends in a slash +and (without the slash) names a non-directory, on some platforms: +AIX 7.2. @end itemize Portability problems not fixed by Gnulib:
