r256283 - in /trunk/libstdc++-v3: ChangeLog src...
redi@gcc.gnu.org
redi@gcc.gnu.org
Fri Jan 5 18:02:00 GMT 2018
Author: redi
Date: Fri Jan 5 18:02:18 2018
New Revision: 256283
URL: https://gcc.gnu.org/viewcvs?rev=256283&root=gcc&view=rev
Log:
PR libstdc++/83626 handle ENOENT due to filesystem race
PR libstdc++/83626
* src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
report an error for ENOENT.
(remove_all(const path&)): Fix type of result variable.
(remove_all(const path&, error_code&)): Use non-throwing increment
for directory iterator. Call POSIX remove directly to avoid redundant
calls to symlink_status. Do not report errors for ENOENT.
* src/filesystem/std-ops.cc: Likewise.
* testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
overload.
* testsuite/experimental/filesystem/operations/remove_all.cc:
Likewise.
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/src/filesystem/ops.cc
trunk/libstdc++-v3/src/filesystem/std-ops.cc
trunk/libstdc++-v3/testsuite/27_io/filesystem/operations/remove_all.cc
trunk/libstdc++-v3/testsuite/experimental/filesystem/operations/remove_all.cc
More information about the Libstdc++-cvs
mailing list