aboutsummaryrefslogtreecommitdiff
path: root/lib/Frontend/CompilerInstance.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2013-02-08 21:27:45 +0000
committerDouglas Gregor <dgregor@apple.com>2013-02-08 21:27:45 +0000
commitea14a8799f2a6d139491483151cee4341ef1a73e (patch)
tree1299f45bc2c952230c21ee9d09c1d535236c9383 /lib/Frontend/CompilerInstance.cpp
parent52635ff9fb530dfdfc6a94e52a2270bf1bb8346b (diff)
Never cache the result of a module file lookup.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174744 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/CompilerInstance.cpp')
-rw-r--r--lib/Frontend/CompilerInstance.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/Frontend/CompilerInstance.cpp b/lib/Frontend/CompilerInstance.cpp
index 0c5a1fa70a..ce6572aa1b 100644
--- a/lib/Frontend/CompilerInstance.cpp
+++ b/lib/Frontend/CompilerInstance.cpp
@@ -996,7 +996,8 @@ CompilerInstance::loadModule(SourceLocation ImportLoc,
BuildingModule = true;
compileModule(*this, ModuleNameLoc, Module, ModuleFileName);
- ModuleFile = FileMgr->getFile(ModuleFileName);
+ ModuleFile = FileMgr->getFile(ModuleFileName, /*OpenFile=*/false,
+ /*CacheFailure=*/false);
if (!ModuleFile && getPreprocessorOpts().FailedModules)
getPreprocessorOpts().FailedModules->addFailed(ModuleName);
@@ -1079,14 +1080,14 @@ CompilerInstance::loadModule(SourceLocation ImportLoc,
<< ModuleName
<< SourceRange(ImportLoc, ModuleNameLoc);
ModuleBuildFailed = true;
-
return ModuleLoadResult();
}
compileModule(*this, ModuleNameLoc, Module, ModuleFileName);
// Try loading the module again.
- ModuleFile = FileMgr->getFile(ModuleFileName);
+ ModuleFile = FileMgr->getFile(ModuleFileName, /*OpenFile=*/false,
+ /*CacheFailure=*/false);
if (!ModuleFile ||
ModuleManager->ReadAST(ModuleFileName,
serialization::MK_Module, ImportLoc,