diff options
author | Jan Svoboda <jan_svoboda@apple.com> | 2023-05-26 13:14:16 -0700 |
---|---|---|
committer | Jan Svoboda <jan_svoboda@apple.com> | 2023-05-26 15:30:28 -0700 |
commit | d6e617c8efab582121e0a0a9d539652bdfd544da (patch) | |
tree | 588ce41704d098199d0948236a411fabf70582e3 /clang/lib/Lex/ModuleMap.cpp | |
parent | 89d71c1efa85656b54bcd79b4278bc67690480e1 (diff) | |
download | llvm-d6e617c8efab582121e0a0a9d539652bdfd544da.zip llvm-d6e617c8efab582121e0a0a9d539652bdfd544da.tar.gz llvm-d6e617c8efab582121e0a0a9d539652bdfd544da.tar.bz2 |
[clang][modules] NFCI: Use `DirectoryEntryRef` for umbrella directory
This removes some deprecated uses of `DirectoryEntry::getName()`.
Depends on D151581.
Differential Revision: https://reviews.llvm.org/D151584
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
-rw-r--r-- | clang/lib/Lex/ModuleMap.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 9bc1ccd..0db7ebf 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -1186,9 +1186,9 @@ void ModuleMap::setUmbrellaHeaderAsWritten( } void ModuleMap::setUmbrellaDirAsWritten( - Module *Mod, const DirectoryEntry *UmbrellaDir, const Twine &NameAsWritten, + Module *Mod, DirectoryEntryRef UmbrellaDir, const Twine &NameAsWritten, const Twine &PathRelativeToRootModuleDirectory) { - Mod->Umbrella = UmbrellaDir; + Mod->Umbrella = &UmbrellaDir.getMapEntry(); Mod->UmbrellaAsWritten = NameAsWritten.str(); Mod->UmbrellaRelativeToRootModuleDirectory = PathRelativeToRootModuleDirectory.str(); @@ -2515,16 +2515,14 @@ void ModuleMapParser::parseUmbrellaDirDecl(SourceLocation UmbrellaLoc) { } // Look for this file. - const DirectoryEntry *Dir = nullptr; + OptionalDirectoryEntryRef Dir; if (llvm::sys::path::is_absolute(DirName)) { - if (auto D = SourceMgr.getFileManager().getDirectory(DirName)) - Dir = *D; + Dir = SourceMgr.getFileManager().getOptionalDirectoryRef(DirName); } else { SmallString<128> PathName; PathName = Directory->getName(); llvm::sys::path::append(PathName, DirName); - if (auto D = SourceMgr.getFileManager().getDirectory(PathName)) - Dir = *D; + Dir = SourceMgr.getFileManager().getOptionalDirectoryRef(PathName); } if (!Dir) { @@ -2558,7 +2556,7 @@ void ModuleMapParser::parseUmbrellaDirDecl(SourceLocation UmbrellaLoc) { return; } - if (Module *OwningModule = Map.UmbrellaDirs[Dir]) { + if (Module *OwningModule = Map.UmbrellaDirs[*Dir]) { Diags.Report(UmbrellaLoc, diag::err_mmap_umbrella_clash) << OwningModule->getFullModuleName(); HadError = true; @@ -2566,7 +2564,7 @@ void ModuleMapParser::parseUmbrellaDirDecl(SourceLocation UmbrellaLoc) { } // Record this umbrella directory. - Map.setUmbrellaDirAsWritten(ActiveModule, Dir, DirNameAsWritten, DirName); + Map.setUmbrellaDirAsWritten(ActiveModule, *Dir, DirNameAsWritten, DirName); } /// Parse a module export declaration. |