summaryrefslogtreecommitdiffstats
path: root/clang/lib/Checker
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2010-05-06 02:59:29 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2010-05-06 02:59:29 +0000
commit9174b2c2f9251db08fea0c4e48372b9a599f57af (patch)
tree13c7afba2093214a1b5b820c3f4b6fb5bc0c5de9 /clang/lib/Checker
parent9feb1bb11727cb79a71015fd950473269bcdafd6 (diff)
downloadbcm5719-llvm-9174b2c2f9251db08fea0c4e48372b9a599f57af.tar.gz
bcm5719-llvm-9174b2c2f9251db08fea0c4e48372b9a599f57af.zip
Make -analyzer-inline-call not a separate analysis. Instead it's a boolean
flag now, and can be used with other analyses. Only turned it on for C++ methods for now. llvm-svn: 103160
Diffstat (limited to 'clang/lib/Checker')
-rw-r--r--clang/lib/Checker/GRCXXExprEngine.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Checker/GRCXXExprEngine.cpp b/clang/lib/Checker/GRCXXExprEngine.cpp
index 00ac9955928..18e112cc8d3 100644
--- a/clang/lib/Checker/GRCXXExprEngine.cpp
+++ b/clang/lib/Checker/GRCXXExprEngine.cpp
@@ -86,7 +86,7 @@ void GRExprEngine::VisitCXXConstructExpr(const CXXConstructExpr *E, SVal Dest,
const CXXConstructorDecl *CD = E->getConstructor();
assert(CD);
- if (!CD->isThisDeclarationADefinition())
+ if (!(CD->isThisDeclarationADefinition() && AMgr.shouldInlineCall()))
// FIXME: invalidate the object.
return;
@@ -147,7 +147,7 @@ void GRExprEngine::VisitCXXMemberCallExpr(const CXXMemberCallExpr *MCE,
const CXXMethodDecl *MD = cast<CXXMethodDecl>(ME->getMemberDecl());
assert(MD && "not a CXXMethodDecl?");
- if (!MD->isThisDeclarationADefinition())
+ if (!(MD->isThisDeclarationADefinition() && AMgr.shouldInlineCall()))
// FIXME: conservative method call evaluation.
return;
OpenPOWER on IntegriCloud