class CXXInstanceCall

Declaration

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

Description

Represents a non-static C++ member function call, no matter how it is written.

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

Inherits from: AnyFunctionCall

Member Variables

Inherited from CallEvent:

protected Data
protected Location

Method Overview

  • protected CXXInstanceCall(const clang::CallExpr * CE, clang::ento::ProgramStateRef St, const clang::LocationContext * LCtx)
  • protected CXXInstanceCall(const clang::FunctionDecl * D, clang::ento::ProgramStateRef St, const clang::LocationContext * LCtx)
  • protected CXXInstanceCall(const clang::ento::CXXInstanceCall & Other)
  • public static bool classof(const clang::ento::CallEvent * CA)
  • public virtual const clang::Expr * getCXXThisExpr() const
  • public virtual clang::ento::SVal getCXXThisVal() const
  • public const clang::FunctionDecl * getDecl() const
  • protected void getExtraInvalidatedValues(clang::ento::CallEvent::ValueList & Values, clang::ento::RegionAndSymbolInvalidationTraits * ETraits) const
  • public void getInitialStackFrameContents(const clang::StackFrameContext * CalleeCtx, clang::ento::CallEvent::BindingsTy & Bindings) const
  • public clang::ento::RuntimeDefinition getRuntimeDefinition() const

Inherited from AnyFunctionCall:

Inherited from CallEvent:

Methods

CXXInstanceCall(
    const clang::CallExpr* CE,
    clang::ento::ProgramStateRef St,
    const clang::LocationContext* LCtx)

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

Parameters

const clang::CallExpr* CE
clang::ento::ProgramStateRef St
const clang::LocationContext* LCtx

CXXInstanceCall(
    const clang::FunctionDecl* D,
    clang::ento::ProgramStateRef St,
    const clang::LocationContext* LCtx)

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

Parameters

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

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

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

Parameters

const clang::ento::CXXInstanceCall& Other

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

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

Parameters

const clang::ento::CallEvent* CA

virtual const clang::Expr* getCXXThisExpr() const

Description

Returns the expression representing the implicit 'this' object.

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

virtual clang::ento::SVal getCXXThisVal() const

Description

Returns the value of the implicit 'this' object.

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

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:680

void getExtraInvalidatedValues(
    clang::ento::CallEvent::ValueList& Values,
    clang::ento::
        RegionAndSymbolInvalidationTraits*
            ETraits) const

Description

Used to specify non-argument regions that will be invalidated as a result of this call.

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

Parameters

clang::ento::CallEvent::ValueList& Values
clang::ento::RegionAndSymbolInvalidationTraits* ETraits

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:684

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:682