diff options
author | Anna Zaks <ganna@apple.com> | 2011-11-01 22:41:09 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2011-11-01 22:41:09 +0000 |
commit | bfb3520fc5bc97faaa0642bf0f97c40d923e10c6 (patch) | |
tree | 42e9731f8a1697f63e249efbf38f7c7c03a9fdeb /clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp | |
parent | 6d319489df0a0baa358cc42a9be9261af22101af (diff) | |
download | bcm5719-llvm-bfb3520fc5bc97faaa0642bf0f97c40d923e10c6.tar.gz bcm5719-llvm-bfb3520fc5bc97faaa0642bf0f97c40d923e10c6.zip |
[analyzer] Make sure the child builder use temporary destination sets
The parent and child builders should not share node sets.
llvm-svn: 143515
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp b/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp index bf97b8bbadd..8ba371452d7 100644 --- a/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp +++ b/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp @@ -369,8 +369,9 @@ void ExprEngine::VisitDeclStmt(const DeclStmt *DS, ExplodedNode *Pred, currentBuilderContext->getCurrentBlockCount()); } B.takeNodes(N); - evalBind(Dst, DS, N, state->getLValue(VD, LC), InitVal, true); - B.addNodes(Dst); + ExplodedNodeSet Dst2; + evalBind(Dst2, DS, N, state->getLValue(VD, LC), InitVal, true); + B.addNodes(Dst2); } else { B.generateNode(DS, N,state->bindDeclWithNoInit(state->getRegion(VD, LC))); |