diff options
author | Erik Verbruggen <erikjv@me.com> | 2012-02-29 08:42:57 +0000 |
---|---|---|
committer | Erik Verbruggen <erikjv@me.com> | 2012-02-29 08:42:57 +0000 |
commit | 4fafeb6452a79794726a1adc53fb5e2a5887c5f9 (patch) | |
tree | 993fe7e54b402b03105766f47356a513970b2362 /lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | |
parent | 28cd22d7c2d2458575ce9cc19dfe63c6321010ce (diff) |
Remove a recursive visitiation in ExprEngine that is no longer needed
because the CFG is fully linearized.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151711 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/ExprEngineCXX.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp b/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp index 45f8cee910..fa0245145c 100644 --- a/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp +++ b/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp @@ -335,15 +335,9 @@ void ExprEngine::VisitCXXNewExpr(const CXXNewExpr *CNE, ExplodedNode *Pred, void ExprEngine::VisitCXXDeleteExpr(const CXXDeleteExpr *CDE, ExplodedNode *Pred, ExplodedNodeSet &Dst) { - // Should do more checking. - ExplodedNodeSet Argevaluated; - Visit(CDE->getArgument(), Pred, Argevaluated); - StmtNodeBuilder Bldr(Argevaluated, Dst, *currentBuilderContext); - for (ExplodedNodeSet::iterator I = Argevaluated.begin(), - E = Argevaluated.end(); I != E; ++I) { - ProgramStateRef state = (*I)->getState(); - Bldr.generateNode(CDE, *I, state); - } + StmtNodeBuilder Bldr(Pred, Dst, *currentBuilderContext); + ProgramStateRef state = Pred->getState(); + Bldr.generateNode(CDE, Pred, state); } void ExprEngine::VisitCXXThisExpr(const CXXThisExpr *TE, ExplodedNode *Pred, |