aboutsummaryrefslogtreecommitdiff
path: root/lib/Checker/GRExprEngine.cpp
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2010-11-25 03:18:57 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2010-11-25 03:18:57 +0000
commit0e38d5d6775a26f8f39df353e34b0dc14c2d6cfc (patch)
tree4e4f3bf9a404a386e69243f44bb756f2393ea736 /lib/Checker/GRExprEngine.cpp
parent8ed119f7cb73fcbf44df0240203a3194e52a79d0 (diff)
handle CXXFunctionalCastExpr in visitLValue and Environment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120143 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Checker/GRExprEngine.cpp')
-rw-r--r--lib/Checker/GRExprEngine.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/Checker/GRExprEngine.cpp b/lib/Checker/GRExprEngine.cpp
index 2181b705f7..6db8dbab7d 100644
--- a/lib/Checker/GRExprEngine.cpp
+++ b/lib/Checker/GRExprEngine.cpp
@@ -1158,6 +1158,18 @@ void GRExprEngine::VisitLValue(const Expr* Ex, ExplodedNode* Pred,
break;
}
+ case Stmt::CXXConstructExprClass: {
+ const CXXConstructExpr *expr = cast<CXXConstructExpr>(Ex);
+ VisitCXXConstructExpr(expr, 0, Pred, Dst, true);
+ break;
+ }
+
+ case Stmt::CXXFunctionalCastExprClass: {
+ const CXXFunctionalCastExpr *expr = cast<CXXFunctionalCastExpr>(Ex);
+ VisitLValue(expr->getSubExpr(), Pred, Dst);
+ break;
+ }
+
case Stmt::CXXTemporaryObjectExprClass: {
const CXXTemporaryObjectExpr *expr = cast<CXXTemporaryObjectExpr>(Ex);
VisitCXXTemporaryObjectExpr(expr, Pred, Dst, true);