|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Derived Classes
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h 472 class AllocaRegion : public SubRegion {
506 class TypedRegion : public SubRegion {
764 class SymbolicRegion : public SubRegion {
References
include/llvm/Support/Casting.h 57 static inline bool doit(const From &Val) {
58 return To::classof(&Val);
66 static inline bool doit(const From &) { return true; }
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
142 return isa_impl_wrap<X, const Y,
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
309 return cast<X>(Val);
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h 777 const SubRegion **OutRegionWithAdjustments = nullptr);
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h 472 class AllocaRegion : public SubRegion {
506 class TypedRegion : public SubRegion {
764 class SymbolicRegion : public SubRegion {
1008 FieldRegion(const FieldDecl *fd, const SubRegion* sReg)
1041 ObjCIvarRegion(const ObjCIvarDecl *ivd, const SubRegion *sReg);
1089 ElementRegion(QualType elementType, NonLoc Idx, const SubRegion *sReg)
1159 const SubRegion *SReg)
1196 CXXDerivedObjectRegion(const CXXRecordDecl *DerivedD, const SubRegion *SReg)
1228 const RegionTy* MemRegion::getAs() const {
1229 if (const auto *RT = dyn_cast<RegionTy>(this))
1229 if (const auto *RT = dyn_cast<RegionTy>(this))
1236 const RegionTy* MemRegion::castAs() const {
1237 return cast<RegionTy>(this);
1334 const SubRegion *superRegion,
1338 const SubRegion *superRegion) {
1348 const SubRegion* superRegion);
1351 const SubRegion *superRegion) {
1360 const SubRegion* superRegion);
1370 getCXXBaseObjectRegion(const CXXRecordDecl *BaseClass, const SubRegion *Super,
1377 const SubRegion *superRegion) {
1388 const SubRegion *Super);
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h 302 Loc getLValue(const CXXBaseSpecifier &BaseSpec, const SubRegion *Super) const;
305 Loc getLValue(const CXXRecordDecl *BaseClass, const SubRegion *Super,
708 const SubRegion *Super) const {
716 const SubRegion *Super,
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h 613 const REGION* getRegionAs() const {
614 return dyn_cast<REGION>(getRegion());
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h 187 const ElementRegion *GetElementZeroRegion(const SubRegion *R, QualType T);
287 const ElementRegion *MakeElementRegion(const SubRegion *baseRegion,
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h 168 const SubRegion *R;
171 SymbolExtent(SymbolID sym, const SubRegion *r)
176 const SubRegion *getRegion() const { return R; }
182 static void Profile(llvm::FoldingSetNodeID& profile, const SubRegion *R) {
502 const SymbolExtent *getExtentSymbol(const SubRegion *R);
tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp 48 const SubRegion *baseRegion;
55 RegionRawOffsetV2(const SubRegion* base, SVal offset)
59 const SubRegion *getRegion() const { return baseRegion; }
317 if (const SubRegion *subReg = dyn_cast<SubRegion>(region)) {
317 if (const SubRegion *subReg = dyn_cast<SubRegion>(region)) {
tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp 331 const SubRegion *superReg = cast<SubRegion>(ER->getSuperRegion());
331 const SubRegion *superReg = cast<SubRegion>(ER->getSuperRegion());
939 const SubRegion *superReg = cast<SubRegion>(ER->getSuperRegion());
939 const SubRegion *superReg = cast<SubRegion>(ER->getSuperRegion());
1074 auto *SubReg = cast<SubRegion>(BR);
2331 while (const SubRegion *SR = dyn_cast<SubRegion>(MR)) {
2331 while (const SubRegion *SR = dyn_cast<SubRegion>(MR)) {
2352 while (const SubRegion *SR = dyn_cast<SubRegion>(Super)) {
2352 while (const SubRegion *SR = dyn_cast<SubRegion>(Super)) {
tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp 230 auto MR = dyn_cast_or_null<SubRegion>(C.getSVal(CE->getArg(0)).getAsRegion());
tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp 152 const SubRegion *SuperRegion{nullptr};
154 SuperRegion = cast<SubRegion>(ER->getSuperRegion());
tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp 55 const SubRegion *SR = dyn_cast<SubRegion>(R);
55 const SubRegion *SR = dyn_cast<SubRegion>(R);
59 SR = dyn_cast<SubRegion>(SR->getSuperRegion());
tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp 1384 const SubRegion *Region;
1391 ->castAs<SubRegion>()
1393 ->castAs<SubRegion>();
1396 Region = Target.getAsRegion()->castAs<SubRegion>();
tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp 147 while (const SubRegion *SR = dyn_cast<SubRegion>(R)) {
147 while (const SubRegion *SR = dyn_cast<SubRegion>(R)) {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp 490 cast<SubRegion>(MR)->getSuperRegion());
tools/clang/lib/StaticAnalyzer/Checkers/Taint.cpp 99 const SubRegion *SubRegion,
148 if (const SubRegion *ER = dyn_cast<SubRegion>(Reg))
148 if (const SubRegion *ER = dyn_cast<SubRegion>(Reg))
tools/clang/lib/StaticAnalyzer/Checkers/Taint.h 56 SymbolRef ParentSym, const SubRegion *SubRegion,
tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp 265 static bool wasRegionOfInterestModifiedAt(const SubRegion *RegionOfInterest,
335 const SubRegion *RegionOfInterest;
360 NoStoreFuncVisitor(const SubRegion *R, bugreporter::TrackingKind TKind)
516 const FieldRegion *FR = MmrMgr.getFieldRegion(I, cast<SubRegion>(R));
725 R = cast<SubRegion>(R)->getSuperRegion();
792 const SubRegion *RegionOfInterest;
800 MacroNullReturnSuppressionVisitor(const SubRegion *R, const SVal V)
837 R->getAs<SubRegion>(), V));
1999 std::make_unique<NoStoreFuncVisitor>(cast<SubRegion>(R), TKind));
tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp 312 const SubRegion **OutRegionWithAdjustments) {
456 *OutRegionWithAdjustments = cast<SubRegion>(Reg.getAsRegion());
1018 ArgR = getStoreManager().GetElementZeroRegion(cast<SubRegion>(ArgR), DTy);
2597 const SubRegion *MR = nullptr;
tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp 167 if (const SubRegion *MR =
168 dyn_cast_or_null<SubRegion>(V.getAsRegion())) {
807 if (const auto *NewReg = cast_or_null<SubRegion>(symVal.getAsRegion())) {
807 if (const auto *NewReg = cast_or_null<SubRegion>(symVal.getAsRegion())) {
tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp 67 const SuperTy *superRegion) {
84 const SuperTy *superRegion) {
137 if (const auto *sr = dyn_cast<SubRegion>(r))
137 if (const auto *sr = dyn_cast<SubRegion>(r))
146 const SubRegion* r = this;
149 if (const auto *sr = dyn_cast<SubRegion>(superRegion)) {
149 if (const auto *sr = dyn_cast<SubRegion>(superRegion)) {
212 ObjCIvarRegion::ObjCIvarRegion(const ObjCIvarDecl *ivd, const SubRegion *sReg)
990 const SubRegion* superRegion,
1033 const SubRegion* superRegion){
1039 const SubRegion* superRegion) {
1075 const SubRegion *Super,
1085 Super = cast<SubRegion>(Base->getSuperRegion());
1095 const SubRegion *Super) {
1130 const auto *SR = dyn_cast<SubRegion>(this);
1130 const auto *SR = dyn_cast<SubRegion>(this);
1134 SR = dyn_cast<SubRegion>(R);
1169 R = cast<SubRegion>(R)->getSuperRegion();
1220 const auto *SubR = dyn_cast<SubRegion>(this);
1220 const auto *SubR = dyn_cast<SubRegion>(this);
1225 SubR = dyn_cast<SubRegion>(SubR->getSuperRegion());
tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp 606 if (const SubRegion *SR = dyn_cast<SubRegion>(R)) {
606 if (const SubRegion *SR = dyn_cast<SubRegion>(R)) {
tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp 54 explicit BindingKey(const SubRegion *r, const SubRegion *Base, Kind k)
54 explicit BindingKey(const SubRegion *r, const SubRegion *Base, Kind k)
80 const SubRegion *getConcreteOffsetRegion() const {
118 return BindingKey(cast<SubRegion>(R), cast<SubRegion>(RO.getRegion()), k);
118 return BindingKey(cast<SubRegion>(R), cast<SubRegion>(RO.getRegion()), k);
439 const SubRegion *R);
480 B = removeSubRegionBindings(B, cast<SubRegion>(R));
577 SVal getLazyBinding(const SubRegion *LazyBindingRegion,
603 std::pair<Store, const SubRegion *>
604 findLazyBinding(RegionBindingsConstRef B, const SubRegion *R,
605 const SubRegion *originalRegion);
659 if (const SubRegion *R = dyn_cast<SubRegion>(K.getRegion())) {
659 if (const SubRegion *R = dyn_cast<SubRegion>(K.getRegion())) {
833 R = cast<SubRegion>(R)->getSuperRegion();
868 const SubRegion *Top, BindingKey TopKey,
926 } else if (const SubRegion *BaseSR = dyn_cast<SubRegion>(Base)) {
926 } else if (const SubRegion *BaseSR = dyn_cast<SubRegion>(Base)) {
940 const SubRegion *Top, bool IncludeAllDefaultBindings) {
948 const SubRegion *Top) {
962 const SubRegion *Concrete = TopKey.getConcreteOffsetRegion();
983 const SubRegion *Concrete = TopKey.getConcreteOffsetRegion();
1397 SVal Size = cast<SubRegion>(R)->getExtent(svalBuilder);
1437 const SubRegion *R =
1438 cast<SubRegion>(Array.castAs<loc::MemRegionVal>().getRegion());
1479 MR = GetElementZeroRegion(cast<SubRegion>(MR), T);
1573 static QualType getUnderlyingType(const SubRegion *R) {
1593 const SubRegion *R, bool AllowSubregionBindings) {
1626 std::pair<Store, const SubRegion *>
1628 const SubRegion *R,
1629 const SubRegion *originalRegion) {
1636 typedef std::pair<Store, const SubRegion *> StoreRegionPair;
1640 Result = findLazyBinding(B, cast<SubRegion>(ER->getSuperRegion()),
1647 Result = findLazyBinding(B, cast<SubRegion>(FR->getSuperRegion()),
1657 Result = findLazyBinding(B, cast<SubRegion>(BaseReg->getSuperRegion()),
1848 SVal RegionStoreManager::getLazyBinding(const SubRegion *LazyBindingRegion,
1887 const SubRegion *lazyBindingRegion = nullptr;
1913 const SubRegion *SR = R;
1933 SR = dyn_cast<SubRegion>(Base);
2060 const SubRegion *LazyR = LCV.getRegion();
2200 RegionBindingsRef NewB = removeSubRegionBindings(B, cast<SubRegion>(R));
tools/clang/lib/StaticAnalyzer/Core/SVals.cpp 109 while (const auto *SR = dyn_cast<SubRegion>(R)) {
109 while (const auto *SR = dyn_cast<SubRegion>(R)) {
tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp 1172 const SubRegion *superR = nullptr;
1181 superR = cast<SubRegion>(elemReg->getSuperRegion());
1184 else if (isa<SubRegion>(region)) {
1187 superR = cast<SubRegion>(region);
tools/clang/lib/StaticAnalyzer/Core/Store.cpp 60 const ElementRegion *StoreManager::MakeElementRegion(const SubRegion *Base,
67 const ElementRegion *StoreManager::GetElementZeroRegion(const SubRegion *R,
141 return MakeElementRegion(cast<SubRegion>(R), PointeeTy);
186 return MakeElementRegion(cast<SubRegion>(baseR), PointeeTy);
217 newSuperR = MakeElementRegion(cast<SubRegion>(baseR), Ctx.CharTy,
221 return MakeElementRegion(cast<SubRegion>(newSuperR), PointeeTy, newIndex);
295 BaseDecl, cast<SubRegion>(DerivedReg), IsVirtual);
437 const SubRegion* BaseR = nullptr;
441 BaseR = cast<SubRegion>(BaseL.castAs<loc::MemRegionVal>().getRegion());
489 const SubRegion *BaseRegion =
490 Base.castAs<loc::MemRegionVal>().getRegionAs<SubRegion>();
526 elementType, Offset, cast<SubRegion>(ElemR->getSuperRegion()), Ctx));
537 const SubRegion *ArrayR = cast<SubRegion>(ElemR->getSuperRegion());
537 const SubRegion *ArrayR = cast<SubRegion>(ElemR->getSuperRegion());
tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp 220 SymbolManager::getExtentSymbol(const SubRegion *R) {
412 for (auto SR = dyn_cast<SubRegion>(region); SR;
413 SR = dyn_cast<SubRegion>(SR->getSuperRegion())) {
usr/include/c++/7.4.0/type_traits 1558 { typedef _Tp type; };