diff options
Diffstat (limited to 'lib/Lex')
-rw-r--r-- | lib/Lex/HeaderSearch.cpp | 5 | ||||
-rw-r--r-- | lib/Lex/ModuleMap.cpp | 2 | ||||
-rw-r--r-- | lib/Lex/PPDirectives.cpp | 10 |
3 files changed, 13 insertions, 4 deletions
diff --git a/lib/Lex/HeaderSearch.cpp b/lib/Lex/HeaderSearch.cpp index 5b827b13c0..c65fb47c0f 100644 --- a/lib/Lex/HeaderSearch.cpp +++ b/lib/Lex/HeaderSearch.cpp @@ -1678,9 +1678,8 @@ std::string HeaderSearch::suggestPathToFileForDiagnostics( StringRef Dir = SearchDirs[I].getDir()->getName(); llvm::SmallString<32> DirPath(Dir.begin(), Dir.end()); if (!WorkingDir.empty() && !path::is_absolute(Dir)) { - auto err = fs::make_absolute(WorkingDir, DirPath); - if (!err) - path::remove_dots(DirPath, /*remove_dot_dot=*/true); + fs::make_absolute(WorkingDir, DirPath); + path::remove_dots(DirPath, /*remove_dot_dot=*/true); Dir = DirPath; } for (auto NI = path::begin(File), NE = path::end(File), diff --git a/lib/Lex/ModuleMap.cpp b/lib/Lex/ModuleMap.cpp index 13d2b728f5..cff950b703 100644 --- a/lib/Lex/ModuleMap.cpp +++ b/lib/Lex/ModuleMap.cpp @@ -54,6 +54,8 @@ using namespace clang; +void ModuleMapCallbacks::anchor() {} + void ModuleMap::resolveLinkAsDependencies(Module *Mod) { auto PendingLinkAs = PendingLinkAsModule.find(Mod->Name); if (PendingLinkAs != PendingLinkAsModule.end()) { diff --git a/lib/Lex/PPDirectives.cpp b/lib/Lex/PPDirectives.cpp index 15fc086f8a..d62a3513c7 100644 --- a/lib/Lex/PPDirectives.cpp +++ b/lib/Lex/PPDirectives.cpp @@ -1813,9 +1813,17 @@ void Preprocessor::HandleIncludeDirective(SourceLocation HashLoc, return Filename; }; StringRef TypoCorrectionName = CorrectTypoFilename(Filename); + SmallString<128> NormalizedTypoCorrectionPath; + if (LangOpts.MSVCCompat) { + NormalizedTypoCorrectionPath = TypoCorrectionName.str(); +#ifndef _WIN32 + llvm::sys::path::native(NormalizedTypoCorrectionPath); +#endif + } File = LookupFile( FilenameLoc, - LangOpts.MSVCCompat ? NormalizedPath.c_str() : TypoCorrectionName, + LangOpts.MSVCCompat ? NormalizedTypoCorrectionPath.c_str() + : TypoCorrectionName, isAngled, LookupFrom, LookupFromFile, CurDir, Callbacks ? &SearchPath : nullptr, Callbacks ? &RelativePath : nullptr, &SuggestedModule, &IsMapped); |