]> granicus.if.org Git - clang/commitdiff
[analyzer] Fixup for r162935 as per Jordan's review.
authorAnna Zaks <ganna@apple.com>
Thu, 30 Aug 2012 22:42:41 +0000 (22:42 +0000)
committerAnna Zaks <ganna@apple.com>
Thu, 30 Aug 2012 22:42:41 +0000 (22:42 +0000)
Thanks for catching this!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162949 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
test/Analysis/inlining/assume-super-init-does-not-return-nil.m

index 9ba2f8c21aa66d4c8237303117ca7bf1c5a0307a..953527da34a1fff18b58d7ab104c0395e40395e5 100644 (file)
@@ -102,7 +102,7 @@ public:
 
   /// Returns true if the predecessor is within an inlined function/method.
   bool isWithinInlined() {
-    return (getStackFrame() != 0);
+    return (getStackFrame()->getParent() != 0);
   }
 
   BugReporter &getBugReporter() {
index e5fbb832a92eef0ba5224deba0e6acae31cef030..cfb35a4e5f918906cdcfdabdbcd2fa2a921608dd 100644 (file)
@@ -736,9 +736,9 @@ ProgramStateRef assumeExprIsNonNull(const Expr *NonNullExpr,
                                     ProgramStateRef State,
                                     CheckerContext &C) {
   SVal Val = State->getSVal(NonNullExpr, C.getLocationContext());
-  if (!isa<DefinedOrUnknownSVal>(Val))
-    return State;
-  return State->assume(cast<DefinedOrUnknownSVal>(Val), true);
+  if (DefinedOrUnknownSVal *DV = dyn_cast<DefinedOrUnknownSVal>(&Val))
+    return State->assume(cast<DefinedOrUnknownSVal>(*DV), true);
+  return State;
 }
 
 void ObjCNonNilReturnValueChecker::checkPostObjCMessage(const ObjCMethodCall &M,
index d17835e1fa630596685ab6c32c4dbc097ba14230..cda1e87918e6df60d1f56110be3e3688653ffb1e 100644 (file)
@@ -24,7 +24,7 @@ typedef signed char BOOL;
 @implementation Cell
 - (id) init {
   if ((self = [super init])) {
-    ;
+    return self;
   }
   // Test that this is being analyzed.
   int m;