From 99cfccdcb371cd6769169538098c3c3539cf9498 Mon Sep 17 00:00:00 2001 From: Jan Svoboda Date: Wed, 20 Apr 2022 19:02:03 +0200 Subject: [PATCH] [clang][lex] NFCI: Use FileEntryRef in ModuleMap::diagnoseHeaderInclusion() This patch removes uses of the deprecated `DirectoryEntry::getName()` from the `ModuleMap::diagnoseHeaderInclusion()` function by using `{File,Directory}EntryRef` instead. Reviewed By: bnbarham Differential Revision: https://reviews.llvm.org/D123856 --- clang/include/clang/Lex/ModuleMap.h | 2 +- clang/lib/Lex/ModuleMap.cpp | 5 ++--- clang/lib/Lex/PPDirectives.cpp | 6 +++--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/clang/include/clang/Lex/ModuleMap.h b/clang/include/clang/Lex/ModuleMap.h index 3e14009d1027..20da9eb18a3e 100644 --- a/clang/include/clang/Lex/ModuleMap.h +++ b/clang/include/clang/Lex/ModuleMap.h @@ -479,7 +479,7 @@ public: void diagnoseHeaderInclusion(Module *RequestingModule, bool RequestingModuleIsModuleInterface, SourceLocation FilenameLoc, StringRef Filename, - const FileEntry *File); + FileEntryRef File); /// Determine whether the given header is part of a module /// marked 'unavailable'. diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 75a0e6bcdfe6..c791e3e4e5ca 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -473,8 +473,7 @@ static Module *getTopLevelOrNull(Module *M) { void ModuleMap::diagnoseHeaderInclusion(Module *RequestingModule, bool RequestingModuleIsModuleInterface, SourceLocation FilenameLoc, - StringRef Filename, - const FileEntry *File) { + StringRef Filename, FileEntryRef File) { // No errors for indirect modules. This may be a bit of a problem for modules // with no source files. if (getTopLevelOrNull(RequestingModule) != getTopLevelOrNull(SourceModule)) @@ -542,7 +541,7 @@ void ModuleMap::diagnoseHeaderInclusion(Module *RequestingModule, diag::warn_non_modular_include_in_framework_module : diag::warn_non_modular_include_in_module; Diags.Report(FilenameLoc, DiagID) << RequestingModule->getFullModuleName() - << File->getName(); + << File.getName(); } } diff --git a/clang/lib/Lex/PPDirectives.cpp b/clang/lib/Lex/PPDirectives.cpp index fbc9466e887f..0ac3bec5148a 100644 --- a/clang/lib/Lex/PPDirectives.cpp +++ b/clang/lib/Lex/PPDirectives.cpp @@ -905,7 +905,7 @@ Optional Preprocessor::LookupFile( if (SuggestedModule && !LangOpts.AsmPreprocessor) HeaderInfo.getModuleMap().diagnoseHeaderInclusion( RequestingModule, RequestingModuleIsModuleInterface, FilenameLoc, - Filename, &FE->getFileEntry()); + Filename, *FE); return FE; } @@ -921,7 +921,7 @@ Optional Preprocessor::LookupFile( if (SuggestedModule && !LangOpts.AsmPreprocessor) HeaderInfo.getModuleMap().diagnoseHeaderInclusion( RequestingModule, RequestingModuleIsModuleInterface, FilenameLoc, - Filename, &FE->getFileEntry()); + Filename, *FE); return FE; } } @@ -936,7 +936,7 @@ Optional Preprocessor::LookupFile( if (SuggestedModule && !LangOpts.AsmPreprocessor) HeaderInfo.getModuleMap().diagnoseHeaderInclusion( RequestingModule, RequestingModuleIsModuleInterface, - FilenameLoc, Filename, &FE->getFileEntry()); + FilenameLoc, Filename, *FE); return FE; } }