class CompoundLiteralRegion

Declaration

class CompoundLiteralRegion : public TypedValueRegion { /* full declaration omitted */ };

Description

CompoundLiteralRegion - A memory region representing a compound literal. Compound literals are essentially temporaries that are stack allocated or in the global constant pool.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:878

Inherits from: TypedValueRegion

Member Variables

private const clang::CompoundLiteralExpr* CL

Inherited from SubRegion:

protected superRegion

Method Overview

  • private CompoundLiteralRegion(const clang::CompoundLiteralExpr * cl, const clang::ento::MemSpaceRegion * sReg)
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • private static void ProfileRegion(llvm::FoldingSetNodeID & ID, const clang::CompoundLiteralExpr * CL, const clang::ento::MemRegion * superRegion)
  • public static bool classof(const clang::ento::MemRegion * R)
  • public void dumpToStream(llvm::raw_ostream & os) const
  • public const clang::CompoundLiteralExpr * getLiteralExpr() const
  • public clang::QualType getValueType() const
  • public bool isBoundable() const

Inherited from TypedValueRegion:

Inherited from TypedRegion:

Inherited from SubRegion:

Inherited from MemRegion:

Inherited from FoldingSetBase::Node:

Methods

CompoundLiteralRegion(
    const clang::CompoundLiteralExpr* cl,
    const clang::ento::MemSpaceRegion* sReg)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:883

Parameters

const clang::CompoundLiteralExpr* cl
const clang::ento::MemSpaceRegion* sReg

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:900

Parameters

llvm::FoldingSetNodeID& ID

static void ProfileRegion(
    llvm::FoldingSetNodeID& ID,
    const clang::CompoundLiteralExpr* CL,
    const clang::ento::MemRegion* superRegion)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:891

Parameters

llvm::FoldingSetNodeID& ID
const clang::CompoundLiteralExpr* CL
const clang::ento::MemRegion* superRegion

static bool classof(
    const clang::ento::MemRegion* R)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:907

Parameters

const clang::ento::MemRegion* R

void dumpToStream(llvm::raw_ostream& os) const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:902

Parameters

llvm::raw_ostream& os

const clang::CompoundLiteralExpr* getLiteralExpr()
    const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:905

clang::QualType getValueType() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:896

bool isBoundable() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:898