diff options
Diffstat (limited to 'clang-tools-extra/modularize/ModularizeUtilities.cpp')
-rw-r--r-- | clang-tools-extra/modularize/ModularizeUtilities.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang-tools-extra/modularize/ModularizeUtilities.cpp b/clang-tools-extra/modularize/ModularizeUtilities.cpp index 874742dacda..85768d5a45d 100644 --- a/clang-tools-extra/modularize/ModularizeUtilities.cpp +++ b/clang-tools-extra/modularize/ModularizeUtilities.cpp @@ -399,14 +399,15 @@ bool ModularizeUtilities::collectUmbrellaHeaders(StringRef UmbrellaDirName, SmallString<256> Directory(UmbrellaDirName); // Walk the directory. std::error_code EC; - llvm::sys::fs::file_status Status; for (llvm::sys::fs::directory_iterator I(Directory.str(), EC), E; I != E; I.increment(EC)) { if (EC) return false; std::string File(I->path()); - I->status(Status); - llvm::sys::fs::file_type Type = Status.type(); + llvm::ErrorOr<llvm::sys::fs::basic_file_status> Status = I->status(); + if (!Status) + return false; + llvm::sys::fs::file_type Type = Status->type(); // If the file is a directory, ignore the name and recurse. if (Type == llvm::sys::fs::file_type::directory_file) { if (!collectUmbrellaHeaders(File, Dependents)) |