class AnyFunctionCall

Declaration

class AnyFunctionCall : public CallEvent { /* full declaration omitted */ };

Description

Represents a call to any sort of function that might have a FunctionDecl.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:483

Inherits from: CallEvent

Member Variables

Inherited from CallEvent:

protected Data
protected Location

Method Overview

  • protected AnyFunctionCall(const clang::Expr * E, clang::ento::ProgramStateRef St, const clang::LocationContext * LCtx)
  • protected AnyFunctionCall(const clang::Decl * D, clang::ento::ProgramStateRef St, const clang::LocationContext * LCtx)
  • protected AnyFunctionCall(const clang::ento::AnyFunctionCall & Other)
  • public bool argumentsMayEscape() const
  • public static bool classof(const clang::ento::CallEvent * CA)
  • public const clang::FunctionDecl * getDecl() const
  • public void getInitialStackFrameContents(const clang::StackFrameContext * CalleeCtx, clang::ento::CallEvent::BindingsTy & Bindings) const
  • public clang::ento::RuntimeDefinition getRuntimeDefinition() const
  • public ArrayRef<clang::ParmVarDecl *> parameters() const

Inherited from CallEvent:

Methods

AnyFunctionCall(
    const clang::Expr* E,
    clang::ento::ProgramStateRef St,
    const clang::LocationContext* LCtx)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:485

Parameters

const clang::Expr* E
clang::ento::ProgramStateRef St
const clang::LocationContext* LCtx

AnyFunctionCall(
    const clang::Decl* D,
    clang::ento::ProgramStateRef St,
    const clang::LocationContext* LCtx)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:488

Parameters

const clang::Decl* D
clang::ento::ProgramStateRef St
const clang::LocationContext* LCtx

AnyFunctionCall(
    const clang::ento::AnyFunctionCall& Other)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:491

Parameters

const clang::ento::AnyFunctionCall& Other

bool argumentsMayEscape() const

Description

Returns true if any of the arguments are known to escape to long- term storage, even if this method will not modify them.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:502

static bool classof(
    const clang::ento::CallEvent* CA)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:509

Parameters

const clang::ento::CallEvent* CA

const clang::FunctionDecl* getDecl() const

Description

Returns the declaration of the function or method that will be called. May be null.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:496

void getInitialStackFrameContents(
    const clang::StackFrameContext* CalleeCtx,
    clang::ento::CallEvent::BindingsTy& Bindings)
    const

Description

Populates the given SmallVector with the bindings in the callee's stack frame at the start of this call.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:504

Parameters

const clang::StackFrameContext* CalleeCtx
clang::ento::CallEvent::BindingsTy& Bindings

clang::ento::RuntimeDefinition
getRuntimeDefinition() const

Description

Returns the definition of the function or method that will be called.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:500

ArrayRef<clang::ParmVarDecl*> parameters() const

Description

Return call's formal parameters. Remember that the number of formal parameters may not match the number of arguments for all calls. However, the first parameter will always correspond with the argument value returned by \c getArgSVal(0).

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h:507