aboutsummaryrefslogtreecommitdiff
path: root/lib/StaticAnalyzer/Core/CXXExprEngine.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2011-03-12 02:49:11 +0000
committerTed Kremenek <kremenek@apple.com>2011-03-12 02:49:11 +0000
commite75f4c6f09a2f9a6a862200dd31c9e7f6d21295a (patch)
tree4e4ddfa7422284e81d0e675101e2485444c3ddd4 /lib/StaticAnalyzer/Core/CXXExprEngine.cpp
parent46fc3fae1cf1926a3b8138bca4adeda37c41f92c (diff)
Fix comments, and force auto progagation in VisitAggExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127524 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/CXXExprEngine.cpp')
-rw-r--r--lib/StaticAnalyzer/Core/CXXExprEngine.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/StaticAnalyzer/Core/CXXExprEngine.cpp b/lib/StaticAnalyzer/Core/CXXExprEngine.cpp
index 7d8a22bf2b..a71761dab8 100644
--- a/lib/StaticAnalyzer/Core/CXXExprEngine.cpp
+++ b/lib/StaticAnalyzer/Core/CXXExprEngine.cpp
@@ -105,6 +105,9 @@ void ExprEngine::VisitCXXConstructExpr(const CXXConstructExpr *E,
if (E->isElidable()) {
VisitAggExpr(E->getArg(0), Dest, Pred, Dst);
+ // FIXME: this is here to force propogation if VisitAggExpr doesn't
+ if (Dst.empty())
+ Dst.Add(Pred);
return;
}
@@ -200,7 +203,7 @@ void ExprEngine::VisitCXXOperatorCallExpr(const CXXOperatorCallExpr *C,
ExplodedNodeSet &Dst) {
const CXXMethodDecl *MD = dyn_cast_or_null<CXXMethodDecl>(C->getCalleeDecl());
if (!MD) {
- // If the operator doesn't represent a method call treat as regural call.
+ // If the operator doesn't represent a method call treat as regular call.
VisitCall(C, Pred, C->arg_begin(), C->arg_end(), Dst);
return;
}