summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2012-04-14 09:11:56 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2012-04-14 09:11:56 +0000
commitffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13 (patch)
treea3ea3550ad46f359f4776388c7cf38bc3108491e /clang/lib
parentaf7ae314dbd6ad9280c3b6530a6e1357f3079735 (diff)
downloadbcm5719-llvm-ffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13.tar.gz
bcm5719-llvm-ffe7c7f4b23c9d5efc50fbb1dee3c83b4dc6ac13.zip
ASTUnit: Don't clone the new DiagnosticConsumer, causing it to get leaked.
llvm-svn: 154739
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Frontend/ASTUnit.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp
index e32fa630a73..7aa96032ee3 100644
--- a/clang/lib/Frontend/ASTUnit.cpp
+++ b/clang/lib/Frontend/ASTUnit.cpp
@@ -643,8 +643,10 @@ void ASTUnit::ConfigureDiags(IntrusiveRefCntPtr<DiagnosticsEngine> &Diags,
DiagnosticConsumer *Client = 0;
if (CaptureDiagnostics)
Client = new StoredDiagnosticConsumer(AST.StoredDiagnostics);
- Diags = CompilerInstance::createDiagnostics(DiagOpts, ArgEnd- ArgBegin,
- ArgBegin, Client);
+ Diags = CompilerInstance::createDiagnostics(DiagOpts, ArgEnd-ArgBegin,
+ ArgBegin, Client,
+ /*ShouldOwnClient=*/true,
+ /*ShouldCloneClient=*/false);
} else if (CaptureDiagnostics) {
Diags->setClient(new StoredDiagnosticConsumer(AST.StoredDiagnostics));
}
OpenPOWER on IntegriCloud