In libgfortran/intrinsics/stat.c, we unconditionally issue calls to stat(), fstat() and lstat(). This is wrong, and these calls should be protected by HAVE_{,F,L}STAT macros, themselves defined by autoconf.
This bug is annoying especially for lstat(), because it's non-POSIX and it's not present on mingw; this, in turns, prevent us from creating a DLL libgfortran (when the recent libtool patch by Steve Ellcey will be commited, it will be the only bug still preventing this!). In the lstat() case, when lstat() is not available and stat() is available, we should use it instead. PS: We already have a test HAVE_WORKING_STAT that is used by the I/O system to see if the system stat implementation fits the needs of the I/O code, but this is unrelated. -- Summary: Calls lstat(), stat() and fstat() in libgfortran should be protected by autoconf HAVE_{L,,F}STAT macros Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: fxcoudert at gcc dot gnu dot org ReportedBy: fxcoudert at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31335