summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/CFRefCount.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-11-25 23:53:07 +0000
committerTed Kremenek <kremenek@apple.com>2009-11-25 23:53:07 +0000
commitb63ad7a6c1bb28a3a9aaecde44f8f5fe5097b98d (patch)
tree5fd808e50e9d02754945485fe0bf2ac94806c9d8 /clang/lib/Analysis/CFRefCount.cpp
parent979ac9fce425fa9266512f24641cf73abf2a3d76 (diff)
downloadbcm5719-llvm-b63ad7a6c1bb28a3a9aaecde44f8f5fe5097b98d.tar.gz
bcm5719-llvm-b63ad7a6c1bb28a3a9aaecde44f8f5fe5097b98d.zip
Refine MemRegions for blocks. Add a new region called
'BlockDataRegion' to distinguish between the code associated with a block (which is represented by 'BlockTextRegion') and an instance of a block, which includes both code and data. 'BlockDataRegion' has an associated LocationContext, which can be used to eventually model the lifetime of a block object once LocationContexts can represent scopes (and iterations around a loop, etc.). llvm-svn: 89900
Diffstat (limited to 'clang/lib/Analysis/CFRefCount.cpp')
-rw-r--r--clang/lib/Analysis/CFRefCount.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Analysis/CFRefCount.cpp b/clang/lib/Analysis/CFRefCount.cpp
index 10d07762dbf..06aa6bd2791 100644
--- a/clang/lib/Analysis/CFRefCount.cpp
+++ b/clang/lib/Analysis/CFRefCount.cpp
@@ -3002,7 +3002,7 @@ void CFRefCount::EvalCall(ExplodedNodeSet& Dst,
// FIXME: Better support for blocks. For now we stop tracking anything
// that is passed to blocks.
// FIXME: Need to handle variables that are "captured" by the block.
- if (dyn_cast_or_null<BlockTextRegion>(L.getAsRegion())) {
+ if (dyn_cast_or_null<BlockDataRegion>(L.getAsRegion())) {
Summ = Summaries.getPersistentStopSummary();
}
else {
OpenPOWER on IntegriCloud