diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Basic/Module.cpp | 4 | ||||
-rw-r--r-- | lib/Frontend/CompilerInstance.cpp | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/Basic/Module.cpp b/lib/Basic/Module.cpp index 634884074e..91b6207b55 100644 --- a/lib/Basic/Module.cpp +++ b/lib/Basic/Module.cpp @@ -23,8 +23,8 @@ using namespace clang; Module::Module(StringRef Name, SourceLocation DefinitionLoc, Module *Parent, bool IsFramework, bool IsExplicit) - : Name(Name), DefinitionLoc(DefinitionLoc), Parent(Parent), - Umbrella(), IsAvailable(true), IsFromModuleFile(false), + : Name(Name), DefinitionLoc(DefinitionLoc), Parent(Parent), + Umbrella(), ASTFile(0), IsAvailable(true), IsFromModuleFile(false), IsFramework(IsFramework), IsExplicit(IsExplicit), IsSystem(false), InferSubmodules(false), InferExplicitSubmodules(false), InferExportWildcard(false), NameVisibility(Hidden) diff --git a/lib/Frontend/CompilerInstance.cpp b/lib/Frontend/CompilerInstance.cpp index 6de153107f..4cc46b8ab7 100644 --- a/lib/Frontend/CompilerInstance.cpp +++ b/lib/Frontend/CompilerInstance.cpp @@ -980,6 +980,9 @@ Module *CompilerInstance::loadModule(SourceLocation ImportLoc, Module = PP->getHeaderSearchInfo().getModuleMap() .findModule((Path[0].first->getName())); } + + if (Module) + Module->setASTFile(ModuleFile); // Cache the result of this top-level module lookup for later. Known = KnownModules.insert(std::make_pair(Path[0].first, Module)).first; |