summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/CFRefCount.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-05-09 23:45:33 +0000
committerTed Kremenek <kremenek@apple.com>2008-05-09 23:45:33 +0000
commitacdde6f099e797ecc366cf39381fae632f2eff2e (patch)
treeda1d54ae9eb38e1c13c987d2f3c81d4e37efc6b3 /clang/lib/Analysis/CFRefCount.cpp
parentfa8e15bfa5341a06b5cd1042a49e04708d6e2140 (diff)
downloadbcm5719-llvm-acdde6f099e797ecc366cf39381fae632f2eff2e.tar.gz
bcm5719-llvm-acdde6f099e797ecc366cf39381fae632f2eff2e.zip
Rename IsPointerType to LVal::IsLValType, and update CFRefCount::EvalSummary to use IsLValType when conjuring symbols for return values (this fixes a bug with an assertion firing in the analyzer when two qualified objective-c types were compared).
llvm-svn: 50924
Diffstat (limited to 'clang/lib/Analysis/CFRefCount.cpp')
-rw-r--r--clang/lib/Analysis/CFRefCount.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/Analysis/CFRefCount.cpp b/clang/lib/Analysis/CFRefCount.cpp
index 7a9d608b71c..fd47f03d3e1 100644
--- a/clang/lib/Analysis/CFRefCount.cpp
+++ b/clang/lib/Analysis/CFRefCount.cpp
@@ -1230,9 +1230,9 @@ void CFRefCount::EvalSummary(ExplodedNodeSet<ValueState>& Dst,
unsigned Count = Builder.getCurrentBlockCount();
SymbolID Sym = Eng.getSymbolManager().getConjuredSymbol(Ex, Count);
- RVal X = Ex->getType()->isPointerType()
- ? cast<RVal>(lval::SymbolVal(Sym))
- : cast<RVal>(nonlval::SymbolVal(Sym));
+ RVal X = LVal::IsLValType(Ex->getType())
+ ? cast<RVal>(lval::SymbolVal(Sym))
+ : cast<RVal>(nonlval::SymbolVal(Sym));
St = StateMgr.SetRVal(St, Ex, X, Eng.getCFG().isBlkExpr(Ex), false);
}
OpenPOWER on IntegriCloud