aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/CFRefCount.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-01-28 05:29:13 +0000
committerTed Kremenek <kremenek@apple.com>2009-01-28 05:29:13 +0000
commit611a15a18f34de57870f66b57b6d287fd29a9ad1 (patch)
treed4c2465b8f94a6d7fffe37b8fc7c60afbede2453 /lib/Analysis/CFRefCount.cpp
parent103a185af4c1596a1642f732a37792a58059eced (diff)
retain/release checker: More cleanups (no real functionality change).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63181 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/CFRefCount.cpp')
-rw-r--r--lib/Analysis/CFRefCount.cpp25
1 files changed, 10 insertions, 15 deletions
diff --git a/lib/Analysis/CFRefCount.cpp b/lib/Analysis/CFRefCount.cpp
index bbbe7646fd..4e6544c98e 100644
--- a/lib/Analysis/CFRefCount.cpp
+++ b/lib/Analysis/CFRefCount.cpp
@@ -2309,21 +2309,16 @@ PathDiagnosticPiece* CFRefReport::VisitNode(const ExplodedNode<GRState>* N,
const ExplodedGraph<GRState>& G,
BugReporter& BR) {
- // Check if the type state has changed.
-
- const GRState* PrevSt = PrevN->getState();
- GRStateRef CurrSt(N->getState(), cast<GRBugReporter>(BR).getStateManager());
+ // Check if the type state has changed.
+ GRStateManager &StMgr = cast<GRBugReporter>(BR).getStateManager();
+ GRStateRef PrevSt(PrevN->getState(), StMgr);
+ GRStateRef CurrSt(N->getState(), StMgr);
- RefBindings PrevB = PrevSt->get<RefBindings>();
- RefBindings CurrB = CurrSt.get<RefBindings>();
-
- const RefVal* PrevT = PrevB.lookup(Sym);
- const RefVal* CurrT = CurrB.lookup(Sym);
-
- if (!CurrT)
- return NULL;
-
- const RefVal& CurrV = *CurrB.lookup(Sym);
+ const RefVal* CurrT = CurrSt.get<RefBindings>(Sym);
+ if (!CurrT) return NULL;
+
+ const RefVal& CurrV = *CurrT;
+ const RefVal* PrevT = PrevSt.get<RefBindings>(Sym);
if (!PrevT) {
std::string sbuf;
@@ -2363,7 +2358,7 @@ PathDiagnosticPiece* CFRefReport::VisitNode(const ExplodedNode<GRState>* N,
}
// Determine if the typestate has changed.
- RefVal PrevV = *PrevB.lookup(Sym);
+ RefVal PrevV = *PrevT;
if (PrevV == CurrV)
return NULL;