class CompoundLiteralExpr

Declaration

class CompoundLiteralExpr : public Expr { /* full declaration omitted */ };

Description

CompoundLiteralExpr - [C99 6.5.2.5]

Declared at: clang/include/clang/AST/Expr.h:3405

Inherits from: Expr

Member Variables

private clang::SourceLocation LParenLoc
LParenLoc - If non-null, this is the location of the left paren in a compound literal like "(int){4}". This can be null if this is a synthesized compound expression.
private llvm::PointerIntPair<TypeSourceInfo*, 1, bool> TInfoAndScope
The type as written. This can be an incomplete array type, in which case the actual expression type will be different. The int part of the pair stores whether this expr is file scope.
private clang::Stmt* Init

Inherited from Stmt:

protected

Method Overview

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

CompoundLiteralExpr(
    clang::SourceLocation lparenloc,
    clang::TypeSourceInfo* tinfo,
    clang::QualType T,
    clang::ExprValueKind VK,
    clang::Expr* init,
    bool fileScope)

Declared at: clang/include/clang/AST/Expr.h:3417

Parameters

clang::SourceLocation lparenloc
clang::TypeSourceInfo* tinfo
clang::QualType T
clang::ExprValueKind VK
clang::Expr* init
bool fileScope

CompoundLiteralExpr(clang::Stmt::EmptyShell Empty)

Description

Construct an empty compound literal.

Declared at: clang/include/clang/AST/Expr.h:3425

Parameters

clang::Stmt::EmptyShell Empty

clang::Stmt::child_range children()

Declared at: clang/include/clang/AST/Expr.h:3465

clang::Stmt::const_child_range children() const

Declared at: clang/include/clang/AST/Expr.h:3466

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/Expr.h:3460

Parameters

const clang::Stmt* T

clang::SourceLocation getBeginLoc() const

Declared at: clang/include/clang/AST/Expr.h:3445

clang::SourceLocation getEndLoc() const

Declared at: clang/include/clang/AST/Expr.h:3453

const clang::Expr* getInitializer() const

Declared at: clang/include/clang/AST/Expr.h:3428

clang::Expr* getInitializer()

Declared at: clang/include/clang/AST/Expr.h:3429

clang::SourceLocation getLParenLoc() const

Declared at: clang/include/clang/AST/Expr.h:3435

clang::TypeSourceInfo* getTypeSourceInfo() const

Declared at: clang/include/clang/AST/Expr.h:3438

bool isFileScope() const

Declared at: clang/include/clang/AST/Expr.h:3432

void setFileScope(bool FS)

Declared at: clang/include/clang/AST/Expr.h:3433

Parameters

bool FS

void setInitializer(clang::Expr* E)

Declared at: clang/include/clang/AST/Expr.h:3430

Parameters

clang::Expr* E

void setLParenLoc(clang::SourceLocation L)

Declared at: clang/include/clang/AST/Expr.h:3436

Parameters

clang::SourceLocation L

void setTypeSourceInfo(
    clang::TypeSourceInfo* tinfo)

Declared at: clang/include/clang/AST/Expr.h:3441

Parameters

clang::TypeSourceInfo* tinfo