diff options
author | Ted Kremenek <kremenek@apple.com> | 2012-02-16 20:56:01 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2012-02-16 20:56:01 +0000 |
commit | bdd4c848349d4091d66b052efa453e6d69a77e36 (patch) | |
tree | e724c440cfbf5ea791b1840d7c0b04dc61ca6c21 /lib/StaticAnalyzer/Core/ExprEngine.cpp | |
parent | 2ac58b7c09938bb28c51c7cd2deada609b75f94c (diff) |
Add checker visitation hooks in ExprEngine::Visit() for common no-op expressions. To be used later.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150723 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/ExprEngine.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Core/ExprEngine.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/StaticAnalyzer/Core/ExprEngine.cpp b/lib/StaticAnalyzer/Core/ExprEngine.cpp index b0ed1815f9..6f588c5ae1 100644 --- a/lib/StaticAnalyzer/Core/ExprEngine.cpp +++ b/lib/StaticAnalyzer/Core/ExprEngine.cpp @@ -590,9 +590,14 @@ void ExprEngine::Visit(const Stmt *S, ExplodedNode *Pred, case Stmt::CXXBoolLiteralExprClass: case Stmt::FloatingLiteralClass: case Stmt::SizeOfPackExprClass: - case Stmt::CXXNullPtrLiteralExprClass: - // No-op. Simply propagate the current state unchanged. + case Stmt::CXXNullPtrLiteralExprClass: { + Bldr.takeNodes(Pred); + ExplodedNodeSet preVisit; + getCheckerManager().runCheckersForPreStmt(preVisit, Pred, S, *this); + getCheckerManager().runCheckersForPostStmt(Dst, preVisit, S, *this); + Bldr.addNodes(Dst); break; + } case Stmt::ArraySubscriptExprClass: Bldr.takeNodes(Pred); |