https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88881

--- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Fri Jun 14 18:11:22 2019
New Revision: 272304

URL: https://gcc.gnu.org/viewcvs?rev=272304&root=gcc&view=rev
Log:
PR libstdc++/88881 fix filesystem::symlink_status for Windows

The fix for PR 88881 only added a workaround to filesystem::status, but
filesystem::symlink_status is also affected by the _wstat bug and needs
the same workaround.

The recent change to optimize path::parent_path() means that the
workaround can be simplified to just use parent_path().

Backport from mainline
2019-05-29  Jonathan Wakely  <jwak...@redhat.com>

        PR libstdc++/88881
        * src/c++17/fs_ops.cc [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
        (status(const path&, error_code&)): Use parent_path() to remove
        trailing slash.
        (symlink_status(const path&, error_code&)): Duplicate workaround for
        bug in _wstat for paths with trailing slash.
        * testsuite/27_io/filesystem/operations/remove_all.cc: Check path
        with trailing slash.
        * testsuite/27_io/filesystem/operations/status.cc: Likewise.
        * testsuite/27_io/filesystem/operations/symlink_status.cc: Likewise.

Modified:
    branches/gcc-9-branch/libstdc++-v3/ChangeLog
    branches/gcc-9-branch/libstdc++-v3/src/c++17/fs_ops.cc
   
branches/gcc-9-branch/libstdc++-v3/testsuite/27_io/filesystem/operations/remove_all.cc
   
branches/gcc-9-branch/libstdc++-v3/testsuite/27_io/filesystem/operations/status.cc
   
branches/gcc-9-branch/libstdc++-v3/testsuite/27_io/filesystem/operations/symlink_status.cc

Reply via email to