diff options
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Basic/FileManager.cpp | 9 | ||||
-rw-r--r-- | clang/lib/Lex/ModuleMap.cpp | 4 |
2 files changed, 6 insertions, 7 deletions
diff --git a/clang/lib/Basic/FileManager.cpp b/clang/lib/Basic/FileManager.cpp index 0f544f0..f92c1ae 100644 --- a/clang/lib/Basic/FileManager.cpp +++ b/clang/lib/Basic/FileManager.cpp @@ -631,16 +631,15 @@ void FileManager::GetUniqueIDMapping( UIDToFiles[VFE->getUID()] = VFE; } -StringRef FileManager::getCanonicalName(const DirectoryEntry *Dir) { - llvm::DenseMap<const void *, llvm::StringRef>::iterator Known - = CanonicalNames.find(Dir); +StringRef FileManager::getCanonicalName(DirectoryEntryRef Dir) { + auto Known = CanonicalNames.find(Dir); if (Known != CanonicalNames.end()) return Known->second; - StringRef CanonicalName(Dir->getName()); + StringRef CanonicalName(Dir.getName()); SmallString<4096> CanonicalNameBuf; - if (!FS->getRealPath(Dir->getName(), CanonicalNameBuf)) + if (!FS->getRealPath(Dir.getName(), CanonicalNameBuf)) CanonicalName = CanonicalNameBuf.str().copy(CanonicalNameStorage); CanonicalNames.insert({Dir, CanonicalName}); diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 56329410..cf546c4 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -1319,9 +1319,9 @@ ModuleMap::canonicalizeModuleMapPath(SmallVectorImpl<char> &Path) { } FileManager &FM = SourceMgr.getFileManager(); - auto DirEntry = FM.getDirectory(Dir.empty() ? "." : Dir); + auto DirEntry = FM.getDirectoryRef(Dir.empty() ? "." : Dir); if (!DirEntry) - return DirEntry.getError(); + return llvm::errorToErrorCode(DirEntry.takeError()); // Canonicalize the directory. StringRef CanonicalDir = FM.getCanonicalName(*DirEntry); |