diff options
author | Ben Langmuir <blangmuir@apple.com> | 2023-05-08 15:59:51 -0700 |
---|---|---|
committer | Ben Langmuir <blangmuir@apple.com> | 2023-05-09 13:02:36 -0700 |
commit | 5984ea216d2acbe5613b0af06ea27ef395ca9904 (patch) | |
tree | 2286c3de9542e6009d5923ffb017ef392ce04c0a /clang/lib/Lex/ModuleMap.cpp | |
parent | bb6a1eb003320cdfd4a5887ad2cd8577275c2f95 (diff) | |
download | llvm-5984ea216d2acbe5613b0af06ea27ef395ca9904.zip llvm-5984ea216d2acbe5613b0af06ea27ef395ca9904.tar.gz llvm-5984ea216d2acbe5613b0af06ea27ef395ca9904.tar.bz2 |
[clang] Prevent creation of new submodules in ASTWriter
Avoid inferring new submodules for headers in ASTWriter's collection of
affecting modulemap files, since we don't want to pick up dependencies
that didn't actually exist during parsing.
rdar://109112624
Differential Revision: https://reviews.llvm.org/D150151
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
-rw-r--r-- | clang/lib/Lex/ModuleMap.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 0e148a4..66e9a7e 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -683,12 +683,12 @@ ModuleMap::findOrCreateModuleForHeaderInUmbrellaDir(const FileEntry *File) { } ArrayRef<ModuleMap::KnownHeader> -ModuleMap::findAllModulesForHeader(const FileEntry *File) { +ModuleMap::findAllModulesForHeader(const FileEntry *File, bool AllowCreation) { HeadersMap::iterator Known = findKnownHeader(File); if (Known != Headers.end()) return Known->second; - if (findOrCreateModuleForHeaderInUmbrellaDir(File)) + if (AllowCreation && findOrCreateModuleForHeaderInUmbrellaDir(File)) return Headers.find(File)->second; return std::nullopt; |