diff options
author | Martin Storsjö <martin@martin.st> | 2025-10-07 22:32:07 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-10-07 22:32:07 +0300 |
commit | 981dadcd60481939bdc8917c6f15cb6232313bc1 (patch) | |
tree | bc55d5d9ff5333f1cc1bf0ebc5975843e80cac2a /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | aed73d2afeecace1e38f9a85ec94d0aa05e86bda (diff) | |
download | llvm-981dadcd60481939bdc8917c6f15cb6232313bc1.zip llvm-981dadcd60481939bdc8917c6f15cb6232313bc1.tar.gz llvm-981dadcd60481939bdc8917c6f15cb6232313bc1.tar.bz2 |
[libcxx] Map Windows ERROR_NETNAME_DELETED to no_such_file_or_directory (#162257)
This fixes spurious failures in
std/input.output/filesystems/fs.op.funcs/fs.op.proximate/proximate.pass.cpp
on Windows.
As part of that test, libcxx tries to open a fake network path such as
"//foo/a". Normally, this sets the error ERROR_BAD_NETPATH, which is
mapped to no_such_file_or_directory. However occasionally, it can end up
setting the error ERROR_NETNAME_DELETED instead.
Map ERROR_NETNAME_DELETED to no_such_file_or_directory just like
ERROR_BAD_NETPATH is mapped. This makes these cases be treated equally
within the create_file_status function in
src/filesystem/file_descriptor.h, causing the __weakly_canonical
function in operations.cpp to keep iterating, rather than erroring out.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions