summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Core/Store.cpp
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2012-07-10 22:08:01 +0000
committerJordan Rose <jordan_rose@apple.com>2012-07-10 22:08:01 +0000
commiteab627b9512c26b6de1fd8727d1013a79f88a44f (patch)
treeee828401d728053a4f94052aa137bc4ebae6389f /clang/lib/StaticAnalyzer/Core/Store.cpp
parentd1d54aa1314fc4a6f7b001261079456df677c88b (diff)
downloadbcm5719-llvm-eab627b9512c26b6de1fd8727d1013a79f88a44f.tar.gz
bcm5719-llvm-eab627b9512c26b6de1fd8727d1013a79f88a44f.zip
[analyzer] Construct stack variables directly in their VarDecl.
Also contains a number of tweaks to inlining that are necessary for constructors and destructors. (I have this enabled on a private branch, but it is very much unstable.) llvm-svn: 160023
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/Store.cpp')
-rw-r--r--clang/lib/StaticAnalyzer/Core/Store.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/Store.cpp b/clang/lib/StaticAnalyzer/Core/Store.cpp
index d5c88e8ad81..916db13aacf 100644
--- a/clang/lib/StaticAnalyzer/Core/Store.cpp
+++ b/clang/lib/StaticAnalyzer/Core/Store.cpp
@@ -47,7 +47,7 @@ StoreRef StoreManager::enterStackFrame(Store OldStore,
// FIXME: We will eventually want to generalize this to handle other non-
// parameter arguments besides 'this' (such as 'self' for ObjC methods).
SVal ThisVal = Call.getCXXThisVal();
- if (!ThisVal.isUndef()) {
+ if (isa<DefinedSVal>(ThisVal)) {
const CXXMethodDecl *MD = cast<CXXMethodDecl>(Call.getDecl());
loc::MemRegionVal ThisRegion = svalBuilder.getCXXThis(MD, LCtx);
Store = Bind(Store.getStore(), ThisRegion, ThisVal);
OpenPOWER on IntegriCloud