[committed] libstdc++: Fix std::filesystem build failure for Windows

Jonathan Wakely jwakely@redhat.com
Sat Feb 5 00:10:21 GMT 2022


Tested x86_64-linux (and built on x86_64-w64-mingw), pushed to trunk.


The std::filesystem code needs to use posix::DIR not ::DIR, as that is
an alias for _WDIR on Windows.

libstdc++-v3/ChangeLog:

	* src/filesystem/dir-common.h (_Dir_base::openat): Change return
	type to use portable posix::DIR alias.
---
 libstdc++-v3/src/filesystem/dir-common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libstdc++-v3/src/filesystem/dir-common.h b/libstdc++-v3/src/filesystem/dir-common.h
index ee4f33b6bc1..0b7665a3f70 100644
--- a/libstdc++-v3/src/filesystem/dir-common.h
+++ b/libstdc++-v3/src/filesystem/dir-common.h
@@ -173,7 +173,7 @@ struct _Dir_base
     return true;
   }
 
-  static ::DIR*
+  static posix::DIR*
   openat(int fd, const posix::char_type* pathname, bool nofollow)
   {
 #if _GLIBCXX_HAVE_FDOPENDIR && defined O_RDONLY && defined O_DIRECTORY \
-- 
2.34.1



More information about the Libstdc++ mailing list