In the recent patch to check for openat, I missed an occurrence of
dirfd in std::filesystem.
for libstdc++-v3/ChangeLog
* src/c++17/fs_dir.cc (dir_and_pathname): Use dirfd if
_GLIBCXX_HAVE_OPENAT.
(cherry picked from commit
486893b1d325d22d54c1380937943913a7501f91)
dir_and_pathname() const noexcept
{
const fs::path& p = entry.path();
-#if _GLIBCXX_HAVE_DIRFD
+#if _GLIBCXX_HAVE_DIRFD && _GLIBCXX_HAVE_OPENAT
if (!p.empty())
return {::dirfd(this->dirp), std::prev(p.end())->c_str()};
#endif