aboutsummaryrefslogtreecommitdiff
path: root/lib/Frontend/FrontendAction.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-02-09 18:47:31 +0000
committerDouglas Gregor <dgregor@apple.com>2011-02-09 18:47:31 +0000
commit92b97f2d279405751447488504816d82e1906f4f (patch)
tree32ac3711fa2ef62c3d9df55e98bfd6f246e76848 /lib/Frontend/FrontendAction.cpp
parent17d3fea677753e6e3e82ffe2cbdeccbf5f2e7497 (diff)
Finish up the diagnostic client before we've torn down the ASTReader,
since the diagnostic client might poke at source locations that have not yet been deserialized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125204 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/FrontendAction.cpp')
-rw-r--r--lib/Frontend/FrontendAction.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/Frontend/FrontendAction.cpp b/lib/Frontend/FrontendAction.cpp
index af23923002..e3d8b85941 100644
--- a/lib/Frontend/FrontendAction.cpp
+++ b/lib/Frontend/FrontendAction.cpp
@@ -290,6 +290,9 @@ void FrontendAction::Execute() {
void FrontendAction::EndSourceFile() {
CompilerInstance &CI = getCompilerInstance();
+ // Inform the diagnostic client we are done with this source file.
+ CI.getDiagnosticClient().EndSourceFile();
+
// Finalize the action.
EndSourceFileAction();
@@ -328,9 +331,6 @@ void FrontendAction::EndSourceFile() {
// an error.
CI.clearOutputFiles(/*EraseFiles=*/CI.getDiagnostics().hasErrorOccurred());
- // Inform the diagnostic client we are done with this source file.
- CI.getDiagnosticClient().EndSourceFile();
-
if (isCurrentFileAST()) {
CI.takeSema();
CI.takeASTContext();