A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/SValBuilder_8h_source.html below:

clang: include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h Source File

14#ifndef LLVM_CLANG_STATICANALYZER_CORE_PATHSENSITIVE_SVALBUILDER_H 15#define LLVM_CLANG_STATICANALYZER_CORE_PATHSENSITIVE_SVALBUILDER_H 30#include "llvm/ADT/ImmutableList.h" 38class

CXXBoolLiteralExpr;

44class

StackFrameContext;

49class

ConditionTruthVal;

50class

ProgramStateManager;

54 virtual void

anchor();

178 const void

*symbolTag =

nullptr

) {

185 const void

*symbolTag =

nullptr

) {

211 unsigned

visitCount);

252 unsigned

blockCount);

360

assert((

type

->isPointerType() ||

type

->isObjCObjectPointerType() ||

361 type

->isBlockPointerType() ||

type

->isNullPtrType() ||

362 type

->isReferenceType()) &&

363 "makeNullWithType must use pointer type"

);

391

std::optional<loc::MemRegionVal>

414

ProgramStateManager &stateMgr);

Defines the clang::ASTContext interface.

static bool isUnsigned(SValBuilder &SVB, NonLoc Value)

Forward-declares and imports various common LLVM datatypes that clang wants to use unqualified.

Defines the clang::LangOptions interface.

C Language Family Type Representation.

llvm::APInt getValue() const

Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...

QualType getPointerType(QualType T) const

Return the uniqued reference to the type for a pointer to the specified type.

const LangOptions & getLangOpts() const

AddrLabelExpr - The GNU address of label extension, representing &&label.

Stores options for the analyzer from the command line.

Represents a block literal declaration, which is like an unnamed FunctionDecl.

A boolean literal, per ([C++ lex.bool] Boolean literals).

Represents a static or instance method of a struct/union/class.

Represents a C++ struct/union/class.

Represents a ValueDecl that came out of a declarator.

This represents one expression.

Represents a function declaration or definition.

It wraps the AnalysisDeclContext to represent both the call stack with the help of StackFrameContext ...

This represents a decl that may have a name.

ObjCBoolLiteralExpr - Objective-C Boolean Literal.

A (possibly-)qualified type.

It represents a stack frame of the call stack (based on CallEvent).

Stmt - This represents one statement.

bool isUnsignedIntegerOrEnumerationType() const

Determines whether this is an integer type that is unsigned or an enumeration types whose underlying ...

A safe wrapper around APSInt objects allocated and owned by BasicValueFactory.

const CompoundValData * getCompoundValData(QualType T, llvm::ImmutableList< SVal > Vals)

APSIntPtr getZeroWithTypeSize(QualType T)

APSIntPtr getIntValue(uint64_t X, bool isUnsigned)

const std::pair< SVal, uintptr_t > & getPersistentSValWithData(const SVal &V, uintptr_t Data)

APSIntPtr getTruthValue(bool b, QualType T)

const LazyCompoundValData * getLazyCompoundValData(const StoreRef &store, const TypedValueRegion *region)

static bool isLocType(QualType T)

const SymbolicRegion * getSymbolicRegion(SymbolRef Sym, const MemSpaceRegion *MemSpace=nullptr)

Retrieve or create a "symbolic" memory region.

MemRegion - The root abstract class for all memory regions.

const SymbolConjured * conjureSymbol(const Stmt *stmt, const LocationContext *LCtx, QualType type, unsigned visitCount, const void *symbolTag=nullptr)

DefinedOrUnknownSVal makeZeroVal(QualType type)

Construct an SVal representing '0' for the specified type.

DefinedSVal getMemberPointer(const NamedDecl *ND)

NonLoc makePointerToMember(const DeclaratorDecl *DD)

SVal evalMinus(NonLoc val)

SVal evalComplement(NonLoc val)

virtual const llvm::APSInt * getKnownValue(ProgramStateRef state, SVal val)=0

Evaluates a given SVal.

BasicValueFactory & getBasicValueFactory()

loc::ConcreteInt makeLoc(const llvm::APSInt &integer)

NonLoc makeCompoundVal(QualType type, llvm::ImmutableList< SVal > vals)

SymbolManager SymMgr

Manages the creation of symbols.

virtual SVal evalBinOpLN(ProgramStateRef state, BinaryOperator::Opcode op, Loc lhs, NonLoc rhs, QualType resultTy)=0

Create a new value which represents a binary expression with a memory location and non-location opera...

DefinedSVal getMetadataSymbolVal(const void *symbolTag, const MemRegion *region, const Expr *expr, QualType type, const LocationContext *LCtx, unsigned count)

MemRegionManager & getRegionManager()

ProgramStateManager & getStateManager()

SVal makeSymExprValNN(BinaryOperator::Opcode op, NonLoc lhs, NonLoc rhs, QualType resultTy)

Constructs a symbolic expression for two non-location values.

virtual SVal evalBinOpLL(ProgramStateRef state, BinaryOperator::Opcode op, Loc lhs, Loc rhs, QualType resultTy)=0

Create a new value which represents a binary expression with two memory location operands.

const unsigned ArrayIndexWidth

The width of the scalar type used for array indices.

DefinedSVal getBlockPointer(const BlockDecl *block, CanQualType locTy, const LocationContext *locContext, unsigned blockCount)

DefinedSVal getFunctionPointer(const FunctionDecl *func)

const QualType ArrayIndexTy

The scalar type to use for array indices.

NonLoc makePointerToMember(const PointerToMemberData *PTMD)

NonLoc makeIntValWithWidth(QualType ptrType, uint64_t integer)

loc::GotoLabel makeLoc(const AddrLabelExpr *expr)

NonLoc makeArrayIndex(uint64_t idx)

ASTContext & getContext()

nonloc::ConcreteInt makeIntVal(const IntegerLiteral *integer)

SVal convertToArrayIndex(SVal val)

const SymbolConjured * conjureSymbol(const Expr *expr, const LocationContext *LCtx, unsigned visitCount, const void *symbolTag=nullptr)

QualType getArrayIndexType() const

loc::MemRegionVal makeLoc(SymbolRef sym)

virtual const llvm::APSInt * getMinValue(ProgramStateRef state, SVal val)=0

Tries to get the minimal possible (integer) value of a given SVal.

const BasicValueFactory & getBasicValueFactory() const

virtual SVal evalBinOpNN(ProgramStateRef state, BinaryOperator::Opcode op, NonLoc lhs, NonLoc rhs, QualType resultTy)=0

Create a new value which represents a binary expression with two non- location operands.

DefinedSVal makeSymbolVal(SymbolRef Sym)

Make an SVal that represents the given symbol.

SVal evalCast(SVal V, QualType CastTy, QualType OriginalTy)

Cast a given SVal to another SVal using given QualType's.

NonLoc makeIntVal(uint64_t integer, bool isUnsigned)

const AnalyzerOptions & getAnalyzerOptions() const

nonloc::ConcreteInt makeTruthVal(bool b)

DefinedOrUnknownSVal conjureSymbolVal(const void *symbolTag, const Expr *expr, const LocationContext *LCtx, unsigned count)

Create a new symbol with a unique 'name'.

DefinedSVal makeIntVal(uint64_t integer, QualType type)

BasicValueFactory BasicVals

Manager of APSInt values.

ConditionTruthVal areEqual(ProgramStateRef state, SVal lhs, SVal rhs)

virtual SVal simplifySVal(ProgramStateRef State, SVal Val)=0

Simplify symbolic expressions within a given SVal.

QualType getConditionType() const

MemRegionManager MemMgr

Manages the creation of memory regions.

SVal evalEQ(ProgramStateRef state, SVal lhs, SVal rhs)

SVal evalUnaryOp(ProgramStateRef state, UnaryOperator::Opcode opc, SVal operand, QualType type)

DefinedOrUnknownSVal getDerivedRegionValueSymbolVal(SymbolRef parentSymbol, const TypedValueRegion *region)

loc::MemRegionVal getCXXThis(const CXXMethodDecl *D, const StackFrameContext *SFC)

Return a memory region for the 'this' object reference.

nonloc::ConcreteInt makeTruthVal(bool b, QualType type)

const MemRegionManager & getRegionManager() const

virtual ~SValBuilder()=default

loc::ConcreteInt makeNullWithType(QualType type)

Create NULL pointer, with proper pointer bit-width for given address space.

virtual const llvm::APSInt * getMaxValue(ProgramStateRef state, SVal val)=0

Tries to get the maximal possible (integer) value of a given SVal.

NonLoc makeIntVal(const llvm::APInt &integer, bool isUnsigned)

ProgramStateManager & StateMgr

loc::MemRegionVal makeLoc(const MemRegion *region)

std::optional< SVal > getConstantVal(const Expr *E)

Returns the value of E, if it can be determined in a non-path-sensitive manner.

NonLoc makeLocAsInteger(Loc loc, unsigned bits)

NonLoc makeZeroArrayIndex()

const ASTContext & getContext() const

SVal evalIntegralCast(ProgramStateRef state, SVal val, QualType castTy, QualType originalType)

SymbolManager & getSymbolManager()

DefinedOrUnknownSVal getRegionValueSymbolVal(const TypedValueRegion *region)

Make a unique symbol for value of region.

SVal evalBinOp(ProgramStateRef state, BinaryOperator::Opcode op, SVal lhs, SVal rhs, QualType type)

loc::ConcreteInt makeIntLocVal(const llvm::APSInt &integer)

NonLoc makeLazyCompoundVal(const StoreRef &store, const TypedValueRegion *region)

nonloc::SymbolVal makeNonLoc(const SymExpr *lhs, BinaryOperator::Opcode op, APSIntPtr rhs, QualType type)

const AnalyzerOptions & AnOpts

const SymbolManager & getSymbolManager() const

DefinedSVal getConjuredHeapSymbolVal(const Expr *E, const LocationContext *LCtx, unsigned Count)

Conjure a symbol representing heap allocated memory region.

std::optional< loc::MemRegionVal > getCastedMemRegionVal(const MemRegion *region, QualType type)

Return MemRegionVal on success cast, otherwise return std::nullopt.

loc::MemRegionVal getAllocaRegionVal(const Expr *E, const LocationContext *LCtx, unsigned Count)

Create an SVal representing the result of an alloca()-like call, that is, an AllocaRegion on the stac...

nonloc::ConcreteInt makeBoolVal(const ObjCBoolLiteralExpr *boolean)

nonloc::ConcreteInt makeIntVal(const llvm::APSInt &integer)

SVal - This represents a symbolic expression, which can be either an L-value or an R-value.

virtual QualType getType() const =0

A symbol representing the result of an expression in the case when we do not know anything about what...

const SymbolConjured * conjureSymbol(const Stmt *E, const LocationContext *LCtx, QualType T, unsigned VisitCount, const void *SymbolTag=nullptr)

TypedValueRegion - An abstract class representing regions having a typed value.

The simplest example of a concrete compound value is nonloc::CompoundVal, which represents a concrete...

Value representing integer constant.

While nonloc::CompoundVal covers a few simple use cases, nonloc::LazyCompoundVal is a more performant...

Value representing pointer-to-member.

Represents symbolic expression that isn't a location.

const internal::VariadicAllOfMatcher< Type > type

Matches Types in the clang AST.

const internal::VariadicAllOfMatcher< Stmt > stmt

Matches statements.

const internal::VariadicDynCastAllOfMatcher< Stmt, Expr > expr

Matches expressions.

SValBuilder * createSimpleSValBuilder(llvm::BumpPtrAllocator &alloc, ASTContext &context, ProgramStateManager &stateMgr)

The JSON file list parser is used to communicate input to InstallAPI.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4