|
const CXXOperatorCallExpr * | getOriginExpr () const override |
| Returns the expression whose value will be the result of this call.
|
|
unsigned | getNumArgs () const override |
| Returns the number of arguments (explicit and implicit).
|
|
const Expr * | getArgExpr (unsigned Index) const override |
| Returns the expression associated with a given argument.
|
|
std::optional< unsigned > | getAdjustedParameterIndex (unsigned ASTArgumentIndex) const override |
| Some calls have parameter numbering mismatched from argument numbering.
|
|
unsigned | getASTArgumentIndex (unsigned CallArgumentIndex) const override |
| Some call event sub-classes conveniently adjust mismatching AST indices to match parameter indices.
|
|
OverloadedOperatorKind | getOverloadedOperator () const |
|
Kind | getKind () const override |
| Returns the kind of call this is.
|
|
StringRef | getKindAsString () const override |
|
const CallExpr * | getOriginExpr () const override |
| Returns the expression whose value will be the result of this call.
|
|
const FunctionDecl * | getDecl () const override |
| Returns the declaration of the function or method that will be called.
|
|
unsigned | getNumArgs () const override |
| Returns the number of arguments (explicit and implicit).
|
|
const Expr * | getArgExpr (unsigned Index) const override |
| Returns the expression associated with a given argument.
|
|
Kind | getKind () const override |
| Returns the kind of call this is.
|
|
StringRef | getKindAsString () const override |
|
const FunctionDecl * | getDecl () const override |
| Returns the declaration of the function or method that will be called.
|
|
RuntimeDefinition | getRuntimeDefinition () const override |
| Returns the definition of the function or method that will be called.
|
|
bool | argumentsMayEscape () const override |
| Returns true if any of the arguments are known to escape to long- term storage, even if this method will not modify them.
|
|
void | getInitialStackFrameContents (const StackFrameContext *CalleeCtx, BindingsTy &Bindings) const override |
| Populates the given SmallVector with the bindings in the callee's stack frame at the start of this call.
|
|
ArrayRef< ParmVarDecl * > | parameters () const override |
| Return call's formal parameters.
|
|
CallEvent & | operator= (const CallEvent &)=delete |
|
virtual | ~CallEvent ()=default |
|
virtual Kind | getKind () const =0 |
| Returns the kind of call this is.
|
|
virtual StringRef | getKindAsString () const =0 |
|
virtual const Decl * | getDecl () const |
| Returns the declaration of the function or method that will be called.
|
|
bool | isForeign () const |
|
void | setForeign (bool B) const |
|
const ProgramStateRef & | getState () const |
| The state in which the call is being evaluated.
|
|
const LocationContext * | getLocationContext () const |
| The context in which the call is being evaluated.
|
|
const CFGBlock::ConstCFGElementRef & | getCFGElementRef () const |
|
virtual RuntimeDefinition | getRuntimeDefinition () const =0 |
| Returns the definition of the function or method that will be called.
|
|
virtual const Expr * | getOriginExpr () const |
| Returns the expression whose value will be the result of this call.
|
|
virtual unsigned | getNumArgs () const =0 |
| Returns the number of arguments (explicit and implicit).
|
|
bool | isInSystemHeader () const |
| Returns true if the callee is known to be from a system header.
|
|
virtual SourceRange | getSourceRange () const |
| Returns a source range for the entire call, suitable for outputting in diagnostics.
|
|
virtual SVal | getArgSVal (unsigned Index) const |
| Returns the value of a given argument at the time of the call.
|
|
virtual const Expr * | getArgExpr (unsigned Index) const |
| Returns the expression associated with a given argument.
|
|
virtual SourceRange | getArgSourceRange (unsigned Index) const |
| Returns the source range for errors associated with this argument.
|
|
QualType | getResultType () const |
| Returns the result type, adjusted for references.
|
|
SVal | getReturnValue () const |
| Returns the return value of the call.
|
|
bool | hasNonNullArgumentsWithType (bool(*Condition)(QualType)) const |
| Returns true if the type of any of the non-null arguments satisfies the condition.
|
|
bool | hasNonZeroCallbackArg () const |
| Returns true if any of the arguments appear to represent callbacks.
|
|
bool | hasVoidPointerToNonConstArg () const |
| Returns true if any of the arguments is void*.
|
|
virtual bool | argumentsMayEscape () const |
| Returns true if any of the arguments are known to escape to long- term storage, even if this method will not modify them.
|
|
bool | isGlobalCFunction (StringRef SpecificName=StringRef()) const |
| Returns true if the callee is an externally-visible function in the top-level namespace, such as malloc .
|
|
const IdentifierInfo * | getCalleeIdentifier () const |
| Returns the name of the callee, if its name is a simple identifier.
|
|
ProgramPoint | getProgramPoint (bool IsPreVisit=false, const ProgramPointTag *Tag=nullptr) const |
| Returns an appropriate ProgramPoint for this call.
|
|
ProgramStateRef | invalidateRegions (unsigned BlockCount, ProgramStateRef Orig=nullptr) const |
| Returns a new state with all argument regions invalidated.
|
|
virtual void | getInitialStackFrameContents (const StackFrameContext *CalleeCtx, BindingsTy &Bindings) const =0 |
| Populates the given SmallVector with the bindings in the callee's stack frame at the start of this call.
|
|
template<typename T > |
CallEventRef< T > | cloneWithState (ProgramStateRef NewState) const |
| Returns a copy of this CallEvent, but using the given state.
|
|
CallEventRef | cloneWithState (ProgramStateRef NewState) const |
| Returns a copy of this CallEvent, but using the given state.
|
|
AnalysisDeclContext * | getCalleeAnalysisDeclContext () const |
| Returns AnalysisDeclContext for the callee stack frame.
|
|
const StackFrameContext * | getCalleeStackFrame (unsigned BlockCount) const |
| Returns the callee stack frame.
|
|
const ParamVarRegion * | getParameterLocation (unsigned Index, unsigned BlockCount) const |
| Returns memory location for a parameter variable within the callee stack frame.
|
|
bool | isArgumentConstructedDirectly (unsigned Index) const |
| Returns true if on the current path, the argument was constructed by calling a C++ constructor over it.
|
|
virtual std::optional< unsigned > | getAdjustedParameterIndex (unsigned ASTArgumentIndex) const |
| Some calls have parameter numbering mismatched from argument numbering.
|
|
virtual unsigned | getASTArgumentIndex (unsigned CallArgumentIndex) const |
| Some call event sub-classes conveniently adjust mismatching AST indices to match parameter indices.
|
|
const ConstructionContext * | getConstructionContext () const |
| Returns the construction context of the call, if it is a C++ constructor call or a call of a function returning a C++ class instance.
|
|
std::optional< SVal > | getReturnValueUnderConstruction () const |
| If the call returns a C++ record type then the region of its return value can be retrieved from its construction context.
|
|
const CallEventRef | getCaller () const |
|
bool | isCalledFromSystemHeader () const |
|
virtual ArrayRef< ParmVarDecl * > | parameters () const =0 |
| Return call's formal parameters.
|
|
param_type_iterator | param_type_begin () const |
| Returns an iterator over the types of the call's formal parameters.
|
|
param_type_iterator | param_type_end () const |
|
void | dump (raw_ostream &Out) const |
|
void | dump () const |
|
Represents a static C++ operator call.
"A" in this example. However, "B" and "C" are represented by SimpleFunctionCall.
struct S {
int pad;
static void operator()(int x, int y);
};
void (*fptr)(
int,
int) = &S::operator();
S::operator()(1, 2);
fptr(1, 2);
__device__ __2f16 float __ockl_bool s
Definition at line 734 of file CallEvent.h.