Committed attached patch as rev. 226923 to document the behavior of gfortran when opening & closing symbolic links. Clearing up some of the old libgfortran PRs...
FX Index: ChangeLog =================================================================== --- ChangeLog (revision 226922) +++ ChangeLog (working copy) @@ -1,3 +1,8 @@ +2015-08-16 Francois-Xavier Coudert <fxcoud...@gcc.gnu.org> + + PR fortran/41387 + * gfortran.texi: New section "File operations on symbolic links". + 2015-08-08 Francois-Xavier Coudert <fxcoud...@gcc.gnu.org> PR fortran/67059 Index: gfortran.texi =================================================================== --- gfortran.texi (revision 226894) +++ gfortran.texi (working copy) @@ -1140,6 +1140,7 @@ might in some way or another become visi * Thread-safety of the runtime library:: * Data consistency and durability:: * Files opened without an explicit ACTION= specifier:: +* File operations on symbolic links:: @end menu @@ -1345,6 +1346,33 @@ processor dependent. GNU Fortran behave @end enumerate +@node File operations on symbolic links +@section File operations on symbolic links +@cindex file, symbolic link + +This section documents the behavior of GNU Fortran for file operations on +symbolic links, on systems that support them. + +@itemize + +@item Results of INQUIRE statements of the ``inquire by file'' form will +relate to the target of the symbolic link. For example, +@code{INQUIRE(FILE="foo",EXIST=ex)} will set @var{ex} to @var{.true.} if +@var{foo} is a symbolic link pointing to an existing file, and @var{.false.} +if @var{foo} points to an non-existing file (``dangling'' symbolic link). + +@item Using the @code{OPEN} statement with a @code{STATUS="NEW"} specifier +on a symbolic link will result in an error condition, whether the symbolic +link points to an existing target or is dangling. + +@item If a symbolic link was connected, using the @code{CLOSE} statement +with a @code{STATUS="DELETE"} specifier will cause the symbolic link itself +to be deleted, not its target. + +@end itemize + + + @c --------------------------------------------------------------------- @c Extensions @c ---------------------------------------------------------------------