clang 20.0.0git
|
Information about invalidation for a particular region/symbol. More...
#include "clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h"
Public Types | |
enum | InvalidationKinds { TK_PreserveContents = 0x1 , TK_SuppressEscape = 0x2 , TK_DoNotInvalidateSuperRegion = 0x4 , TK_EntireMemSpace = 0x8 } |
Describes different invalidation traits. More... | |
Public Member Functions | |
void | setTrait (SymbolRef Sym, InvalidationKinds IK) |
void | setTrait (const MemRegion *MR, InvalidationKinds IK) |
bool | hasTrait (SymbolRef Sym, InvalidationKinds IK) const |
bool | hasTrait (const MemRegion *MR, InvalidationKinds IK) const |
Information about invalidation for a particular region/symbol.
Definition at line 1629 of file MemRegion.h.
Describes different invalidation traits.
Enumerator | |
---|---|
TK_PreserveContents | Tells that a region's contents is not changed. |
TK_SuppressEscape | Suppress pointer-escaping of a region. |
TK_DoNotInvalidateSuperRegion | |
TK_EntireMemSpace | When applied to a MemSpaceRegion, indicates the entire memory space should be invalidated. |
Definition at line 1642 of file MemRegion.h.
bool RegionAndSymbolInvalidationTraits::hasTrait | ( | const MemRegion * | MR, |
InvalidationKinds | IK | ||
) | const |
Definition at line 1804 of file MemRegion.cpp.
References hasTrait().
bool RegionAndSymbolInvalidationTraits::hasTrait | ( | SymbolRef | Sym, |
InvalidationKinds | IK | ||
) | const |
Definition at line 1795 of file MemRegion.cpp.
Referenced by hasTrait().
void RegionAndSymbolInvalidationTraits::setTrait | ( | const MemRegion * | MR, |
InvalidationKinds | IK | ||
) |
Definition at line 1786 of file MemRegion.cpp.
References setTrait().
void RegionAndSymbolInvalidationTraits::setTrait | ( | SymbolRef | Sym, |
InvalidationKinds | IK | ||
) |
Definition at line 1781 of file MemRegion.cpp.
Referenced by clang::ento::ExprEngine::bindReturnValue(), escapeByStartIndexAndCount(), clang::ento::CXXInstanceCall::getExtraInvalidatedValues(), clang::ento::AnyCXXConstructorCall::getExtraInvalidatedValues(), clang::ento::ObjCMethodCall::getExtraInvalidatedValues(), clang::ento::getWidenedLoopState(), clang::ento::CallEvent::invalidateRegions(), and setTrait().