X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=doc%2Fposix-functions%2Fstat.texi;h=33af95d5ba1f17b72c5433dc9ed1c56b217216c6;hb=ead34780b88448b7ccd9ffd18968a3cef76aa14c;hp=5fdb683afe01b18aebf1ca6b1c2cf98951e157a6;hpb=c9d72f69bd201a1ab31464d91f234ea1817fe0e1;p=gnulib.git diff --git a/doc/posix-functions/stat.texi b/doc/posix-functions/stat.texi index 5fdb683af..33af95d5b 100644 --- a/doc/posix-functions/stat.texi +++ b/doc/posix-functions/stat.texi @@ -2,34 +2,34 @@ @section @code{stat} @findex stat -POSIX specification: @url{http://www.opengroup.org/onlinepubs/9699919799/functions/stat.html} +POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/stat.html} Gnulib module: stat Portability problems fixed by Gnulib: @itemize @item -On some platforms, @code{stat("file/",buf)} succeeds instead of -failing with @code{ENOTDIR}. -Solaris 9. +On platforms where @code{off_t} is a 32-bit type, @code{stat} may not correctly +report the size of files or block devices larger than 2 GB. +(Cf. @code{AC_SYS_LARGEFILE}.) +@item +On some platforms, @code{stat("link-to-file/",buf)} succeeds instead +of failing with @code{ENOTDIR}. +FreeBSD 7.2, AIX 7.1, Solaris 9, mingw64. @item On some platforms, @code{stat(".",buf)} and @code{stat("./",buf)} give different results: -mingw. +mingw, MSVC 9. @end itemize Portability problems not fixed by Gnulib: @itemize @item -On platforms where @code{off_t} is a 32-bit type, @code{stat} may not correctly -report the size of files or block devices larger than 2 GB. The fix is to -use the @code{AC_SYS_LARGEFILE} macro. +@xref{sys/stat.h}, for general portability problems with @code{struct stat}. @item Cygwin's @code{stat} function sometimes sets @code{errno} to @code{EACCES} when @code{ENOENT} would be more appropriate. @item -On Windows platforms (excluding Cygwin), @code{st_ino} is always 0. -@item Because of the definition of @code{struct stat}, it is not possible to portably replace @code{stat} via an object-like macro. Therefore, expressions such as @code{(islnk ? lstat : stat) (name, buf)} are not