summaryrefslogtreecommitdiffstats
path: root/clang/lib/Lex/HeaderSearch.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2013-05-08 23:46:46 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2013-05-08 23:46:46 +0000
commit6f722b4eb9368df2b03fe3449dd91e7bb12147cf (patch)
treebb9511a311d81332a3b84095d3e69c07958c90a6 /clang/lib/Lex/HeaderSearch.cpp
parent65c163529d2328cc8dad0b370307800452e42e2c (diff)
downloadbcm5719-llvm-6f722b4eb9368df2b03fe3449dd91e7bb12147cf.tar.gz
bcm5719-llvm-6f722b4eb9368df2b03fe3449dd91e7bb12147cf.zip
[modules] When building a module, make sure we don't serialize out HeaderFileInfo for headers not belonging to the module.
After r180934 we may initiate module map parsing for modules not related to the module what we are building, make sure we ignore the header file info of headers from such modules. First part of rdar://13840148 llvm-svn: 181489
Diffstat (limited to 'clang/lib/Lex/HeaderSearch.cpp')
-rw-r--r--clang/lib/Lex/HeaderSearch.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Lex/HeaderSearch.cpp b/clang/lib/Lex/HeaderSearch.cpp
index 304bd6969a6..5e56e3d1130 100644
--- a/clang/lib/Lex/HeaderSearch.cpp
+++ b/clang/lib/Lex/HeaderSearch.cpp
@@ -866,12 +866,14 @@ bool HeaderSearch::isFileMultipleIncludeGuarded(const FileEntry *File) {
HFI.ControllingMacro || HFI.ControllingMacroID;
}
-void HeaderSearch::MarkFileModuleHeader(const FileEntry *FE) {
+void HeaderSearch::MarkFileModuleHeader(const FileEntry *FE,
+ bool isCompilingModuleHeader) {
if (FE->getUID() >= FileInfo.size())
FileInfo.resize(FE->getUID()+1);
HeaderFileInfo &HFI = FileInfo[FE->getUID()];
HFI.isModuleHeader = true;
+ HFI.isCompilingModuleHeader = isCompilingModuleHeader;
}
void HeaderSearch::setHeaderFileInfoForUID(HeaderFileInfo HFI, unsigned UID) {
OpenPOWER on IntegriCloud