mirror of
https://git.savannah.gnu.org/git/gnulib.git
synced 2025-08-16 01:22:18 +03:00
* modules/fopen (Depends-on): Add 'largefile'. * modules/freopen (Depends-on): Likewise. * modules/fseeko (Depends-on): Likewise. * modules/ftello (Depends-on): Likewise. * modules/glob (Depends-on): Likewise. * modules/lseek (Depends-on): Likewise. * modules/lstat (Depends-on): Likewise. * modules/mkostemp (Depends-on): Likewise. * modules/mkostemps (Depends-on): Likewise. * modules/mkstemp (Depends-on): Likewise. * modules/mkstemps (Depends-on): Likewise. * modules/open (Depends-on): Likewise. * modules/openat (Depends-on): Likewise. * modules/pread (Depends-on): Likewise. * modules/pwrite (Depends-on): Likewise. * modules/scandir (Depends-on): Likewise. * modules/stat (Depends-on): Likewise. * modules/tmpfile (Depends-on): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Do not require AC_SYS_LARGEFILE, since the containing module now depends on the largefile module. * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Likewise. * doc/posix-functions/fopen.texi: Mention that the problem of 32-bit off_t is fixed by gnulib. * doc/posix-functions/freopen.texi: Likewise. * doc/posix-functions/fseeko.texi: Likewise. * doc/posix-functions/fstatat.texi: Likewise. * doc/posix-functions/ftello.texi: Likewise. * doc/posix-functions/glob.texi: Likewise. * doc/posix-functions/lseek.texi: Likewise. * doc/posix-functions/lstat.texi: Likewise. * doc/posix-functions/mkstemp.texi: Likewise. * doc/posix-functions/open.texi: Likewise. * doc/posix-functions/openat.texi: Likewise. * doc/posix-functions/pread.texi: Likewise. * doc/posix-functions/pwrite.texi: Likewise. * doc/posix-functions/scandir.texi: Likewise. * doc/posix-functions/stat.texi: Likewise. * doc/posix-functions/tmpfile.texi: Likewise. * doc/glibc-functions/mkostemp.texi: Likewise. * doc/glibc-functions/mkostemps.texi: Likewise. * doc/glibc-functions/mkstemps.texi: Likewise.
40 lines
1.4 KiB
Plaintext
40 lines
1.4 KiB
Plaintext
@node fopen
|
|
@section @code{fopen}
|
|
@findex fopen
|
|
|
|
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/fopen.html}
|
|
|
|
Gnulib module: fopen
|
|
|
|
Portability problems fixed by Gnulib:
|
|
@itemize
|
|
@item
|
|
This function does not fail when the file name argument ends in a slash
|
|
and (without the slash) names a nonexistent file or a file that is not a
|
|
directory, on some platforms:
|
|
HP-UX 11.00, AIX 7.1, Solaris 9, Irix 5.3.
|
|
@item
|
|
On platforms where @code{off_t} is a 32-bit type, @code{fopen} may not work
|
|
correctly with files larger than 2 GB. (Cf. @code{AC_SYS_LARGEFILE}.)
|
|
@item
|
|
On Windows platforms (excluding Cygwin), this function does usually not
|
|
recognize the @file{/dev/null} filename.
|
|
@end itemize
|
|
|
|
Portability problems not fixed by Gnulib:
|
|
@itemize
|
|
@item
|
|
On Windows platforms (excluding Cygwin), this function does not set @code{errno}
|
|
upon failure.
|
|
@item
|
|
On Windows, this function returns a file stream in ``text'' mode by default;
|
|
this means that it translates @code{'\n'} to CR/LF by default. Use the
|
|
@code{"b"} flag if you need reliable binary I/O.
|
|
@item
|
|
On Windows platforms (excluding Cygwin), this function fails to open
|
|
directories for reading. Such streams have implementation-defined
|
|
semantics on other platforms. To avoid directory streams with a
|
|
consistent error message, use @code{fstat} after @code{open} and
|
|
@code{fdopen}, rather than @code{fopen} and @code{fileno}.
|
|
@end itemize
|