diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2016-08-12 02:17:26 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2016-08-12 02:17:26 +0000 |
commit | e43e26395739bb91b1a581dc3b19063ebd82689d (patch) | |
tree | 9a5a17c194581cca2aec2b6e870f23781d8184cc /clang/lib/Basic/VirtualFileSystem.cpp | |
parent | 3997b1b427ea96690c694eff7b9d593156e5763c (diff) | |
download | llvm-e43e26395739bb91b1a581dc3b19063ebd82689d.zip llvm-e43e26395739bb91b1a581dc3b19063ebd82689d.tar.gz llvm-e43e26395739bb91b1a581dc3b19063ebd82689d.tar.bz2 |
Revert "[VFS] Skip non existent files from the VFS tree"
Breaking bots:
http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental_check/27281/
This reverts commit r278457.
llvm-svn: 278459
Diffstat (limited to 'clang/lib/Basic/VirtualFileSystem.cpp')
-rw-r--r-- | clang/lib/Basic/VirtualFileSystem.cpp | 34 |
1 files changed, 8 insertions, 26 deletions
diff --git a/clang/lib/Basic/VirtualFileSystem.cpp b/clang/lib/Basic/VirtualFileSystem.cpp index a56c911..62a386b 100644 --- a/clang/lib/Basic/VirtualFileSystem.cpp +++ b/clang/lib/Basic/VirtualFileSystem.cpp @@ -1778,47 +1778,29 @@ VFSFromYamlDirIterImpl::VFSFromYamlDirIterImpl( RedirectingDirectoryEntry::iterator Begin, RedirectingDirectoryEntry::iterator End, std::error_code &EC) : Dir(_Path.str()), FS(FS), Current(Begin), End(End) { - while (Current != End) { + if (Current != End) { SmallString<128> PathStr(Dir); llvm::sys::path::append(PathStr, (*Current)->getName()); llvm::ErrorOr<vfs::Status> S = FS.status(PathStr); - if (S) { + if (S) CurrentEntry = *S; - return; - } - // Skip entries which do not map to a reliable external content. - if (FS.ignoreNonExistentContents() && - S.getError() == llvm::errc::no_such_file_or_directory) { - ++Current; - continue; - } else { + else EC = S.getError(); - break; - } } } std::error_code VFSFromYamlDirIterImpl::increment() { assert(Current != End && "cannot iterate past end"); - while (++Current != End) { + if (++Current != End) { SmallString<128> PathStr(Dir); llvm::sys::path::append(PathStr, (*Current)->getName()); llvm::ErrorOr<vfs::Status> S = FS.status(PathStr); - if (!S) { - // Skip entries which do not map to a reliable external content. - if (FS.ignoreNonExistentContents() && - S.getError() == llvm::errc::no_such_file_or_directory) { - continue; - } else { - return S.getError(); - } - } + if (!S) + return S.getError(); CurrentEntry = *S; - break; - } - - if (Current == End) + } else { CurrentEntry = Status(); + } return std::error_code(); } |