summaryrefslogtreecommitdiffstats
path: root/clang/lib/Serialization
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2014-03-14 02:26:31 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2014-03-14 02:26:31 +0000
commit68ccbe01b0fdb6b2ce3893d851ce225cd869cf0b (patch)
tree3e34e29bcda5fa5b6735c84bcff7a6abe9273625 /clang/lib/Serialization
parentce9b49e5ecc357019fdc41bc666d2ab7caf75f21 (diff)
downloadbcm5719-llvm-68ccbe01b0fdb6b2ce3893d851ce225cd869cf0b.tar.gz
bcm5719-llvm-68ccbe01b0fdb6b2ce3893d851ce225cd869cf0b.zip
[Modules] Make sure that the synthesized file "__inferred_module.map" doesn't show up as dependency of a module file.
Follow-up for rdar://15459210 llvm-svn: 203882
Diffstat (limited to 'clang/lib/Serialization')
-rw-r--r--clang/lib/Serialization/ASTReader.cpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp
index 595edfc4c5b..cc425c5695a 100644
--- a/clang/lib/Serialization/ASTReader.cpp
+++ b/clang/lib/Serialization/ASTReader.cpp
@@ -119,9 +119,10 @@ bool ChainedASTReaderListener::needsSystemInputFileVisitation() {
Second->needsSystemInputFileVisitation();
}
bool ChainedASTReaderListener::visitInputFile(StringRef Filename,
- bool isSystem) {
- return First->visitInputFile(Filename, isSystem) ||
- Second->visitInputFile(Filename, isSystem);
+ bool isSystem,
+ bool isOverridden) {
+ return First->visitInputFile(Filename, isSystem, isOverridden) ||
+ Second->visitInputFile(Filename, isSystem, isOverridden);
}
//===----------------------------------------------------------------------===//
@@ -2120,8 +2121,11 @@ ASTReader::ReadControlBlock(ModuleFile &F,
if (Listener && Listener->needsInputFileVisitation()) {
unsigned N = Listener->needsSystemInputFileVisitation() ? NumInputs
: NumUserInputs;
- for (unsigned I = 0; I < N; ++I)
- Listener->visitInputFile(getInputFileName(F, I+1), I >= NumUserInputs);
+ for (unsigned I = 0; I < N; ++I) {
+ bool IsSystem = I >= NumUserInputs;
+ InputFileInfo FI = readInputFileInfo(F, I+1);
+ Listener->visitInputFile(FI.Filename, IsSystem, FI.Overridden);
+ }
}
return Success;
@@ -3932,7 +3936,8 @@ bool ASTReader::readASTFileControlBlock(StringRef Filename,
bool shouldContinue = false;
switch ((InputFileRecordTypes)Cursor.readRecord(Code, Record, &Blob)) {
case INPUT_FILE:
- shouldContinue = Listener.visitInputFile(Blob, isSystemFile);
+ bool Overridden = static_cast<bool>(Record[3]);
+ shouldContinue = Listener.visitInputFile(Blob, isSystemFile, Overridden);
break;
}
if (!shouldContinue)
OpenPOWER on IntegriCloud