[gcc r12-8612] libstdc++: Do not optimize away storing pathname if it's needed
Jonathan Wakely
redi@gcc.gnu.org
Fri Jul 22 17:44:33 GMT 2022
https://gcc.gnu.org/g:4be7b79d055446a0f647a41ca273ba22a119c7f2
commit r12-8612-g4be7b79d055446a0f647a41ca273ba22a119c7f2
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Tue Jun 28 09:26:12 2022 +0100
libstdc++: Do not optimize away storing pathname if it's needed
libstdc++-v3/ChangeLog:
* src/c++17/fs_dir.cc (_Dir::_Dir) [!_GLIBCXX_HAVE_OPENAT]:
Always store pathname if we don't have openat or unlinkat,
because the full path is needed to open sub-directories and
remove entries.
(cherry picked from commit 835b19936bf30d693783bfa39145a4ce243bbd7c)
Diff:
---
libstdc++-v3/src/c++17/fs_dir.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libstdc++-v3/src/c++17/fs_dir.cc b/libstdc++-v3/src/c++17/fs_dir.cc
index 25b33baa875..025317b0a08 100644
--- a/libstdc++-v3/src/c++17/fs_dir.cc
+++ b/libstdc++-v3/src/c++17/fs_dir.cc
@@ -48,7 +48,7 @@ struct fs::_Dir : _Dir_base
[[maybe_unused]] bool filename_only, error_code& ec)
: _Dir_base(fdcwd(), p.c_str(), skip_permission_denied, nofollow, ec)
{
-#if _GLIBCXX_HAVE_DIRFD
+#if _GLIBCXX_HAVE_DIRFD && _GLIBCXX_HAVE_OPENAT && _GLIBCXX_HAVE_UNLINKAT
if (filename_only)
return; // Do not store path p when we aren't going to use it.
#endif
More information about the Libstdc++-cvs
mailing list