Actually all regions whose super region is not MemSpaceRegion are of these 3

kinds. This means we are visiting all regions 'from super region'.

llvm-svn: 84319
This commit is contained in:
Zhongxing Xu 2009-10-17 07:32:08 +00:00
parent 5ccfc98d19
commit 8b2f5d3929
1 changed files with 4 additions and 5 deletions

View File

@ -1741,11 +1741,10 @@ void RegionStoreManager::RemoveDeadBindings(GRState &state, Stmt* Loc,
// for the other fields and elements around. The reason is that
// pointer arithmetic can get us to the other fields or elements.
// FIXME: add an assertion that this is always true.
VisitFlag NewVisit =
isa<FieldRegion>(R) || isa<ElementRegion>(R) || isa<ObjCIvarRegion>(R)
? VisitedFromSuperRegion : VisitedFromSubRegion;
WorkList.push_back(RBDItem(state_N, superR, NewVisit));
assert(isa<FieldRegion>(R) || isa<ElementRegion>(R)
|| isa<ObjCIvarRegion>(R));
WorkList.push_back(RBDItem(state_N, superR, VisitedFromSuperRegion));
}
}