Lines Matching refs:Region
51 const MemRegion *getArrayRegion(const MemRegion *Region, bool &Polymorphic,
53 const MemRegion *getPointedRegion(const MemRegion *Region,
106 PointerArithChecker::getPointedRegion(const MemRegion *Region, in getPointedRegion() argument
108 assert(Region); in getPointedRegion()
110 SVal S = State->getSVal(Region); in getPointedRegion()
118 const MemRegion *PointerArithChecker::getArrayRegion(const MemRegion *Region, in getArrayRegion() argument
122 assert(Region); in getArrayRegion()
123 while (Region->getKind() == MemRegion::Kind::CXXBaseObjectRegionKind) { in getArrayRegion()
124 Region = Region->getAs<CXXBaseObjectRegion>()->getSuperRegion(); in getArrayRegion()
127 if (Region->getKind() == MemRegion::Kind::ElementRegionKind) { in getArrayRegion()
128 Region = Region->getAs<ElementRegion>()->getSuperRegion(); in getArrayRegion()
132 if (const AllocKind *Kind = State->get<RegionState>(Region)) { in getArrayRegion()
135 return Region; in getArrayRegion()
141 if (Region->getKind() == MemRegion::Kind::SymbolicRegionKind) in getArrayRegion()
142 return Region; in getArrayRegion()
157 const MemRegion *Region = C.getSVal(E).getAsRegion(); in reportPointerArithMisuse() local
158 if (!Region) in reportPointerArithMisuse()
161 Region = getPointedRegion(Region, C); in reportPointerArithMisuse()
162 if (!Region) in reportPointerArithMisuse()
168 getArrayRegion(Region, IsPolymorphic, Kind, C)) { in reportPointerArithMisuse()
191 Region->getKind() == MemRegion::Kind::SymbolicRegionKind) in reportPointerArithMisuse()
203 R->markInteresting(Region); in reportPointerArithMisuse()
230 const MemRegion *Region = SV.getAsRegion(); in checkPostStmt() local
231 if (!Region) in checkPostStmt()
237 State = State->set<RegionState>(Region, AllocKind::Array); in checkPostStmt()
251 const MemRegion *Region = AllocedVal.getAsRegion(); in checkPostStmt() local
252 if (!Region) in checkPostStmt()
254 State = State->set<RegionState>(Region, Kind); in checkPostStmt()
267 const MemRegion *Region = CastedVal.getAsRegion(); in checkPostStmt() local
268 if (!Region) in checkPostStmt()
272 State = State->set<RegionState>(Region, AllocKind::Reinterpreted); in checkPostStmt()
285 const MemRegion *Region = CastedVal.getAsRegion(); in checkPreStmt() local
286 if (!Region) in checkPreStmt()
289 if (const AllocKind *Kind = State->get<RegionState>(Region)) { in checkPreStmt()
293 State = State->set<RegionState>(Region, AllocKind::Array); in checkPreStmt()