This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fix libstdc++ lstat missing return type for Windows target

Building for i686-mingw32 target (with some local changes) produced an

error: ISO C++ forbids declaration of 'lstat' with no type [-fpermissive]

in libstdc++-v3/src/filesystem/ops-common.h.  This patch adds the
missing return type.  OK to commit (trunk and GCC 9 branch)?

Note 1: I haven't run the testsuite with this patch, but it fixes the
build failure I see (in sources with other local changes).

Note 2: I don't know why this hasn't produced build failures for other
people, but the missing return type looks wrong in any case even if
other local changes are for some reason needed for it to produce an

2019-08-23  Joseph Myers  <>

	* src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
	(std::filesystem::__gnu_posix::lstat): Add return type.

Index: libstdc++-v3/src/filesystem/ops-common.h
--- libstdc++-v3/src/filesystem/ops-common.h	(revision 274854)
+++ libstdc++-v3/src/filesystem/ops-common.h	(working copy)
@@ -76,7 +76,7 @@
   inline int stat(const wchar_t* path, stat_type* buffer)
   { return ::_wstat(path, buffer); }
-  inline lstat(const wchar_t* path, stat_type* buffer)
+  inline int lstat(const wchar_t* path, stat_type* buffer)
     // TODO symlinks not currently supported
     return stat(path, buffer);

Joseph S. Myers

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]