clang API Documentation

Public Member Functions
clang::CodeGen::CodeGenFunction::LexicalScope Class Reference

#include <CodeGenFunction.h>

Inheritance diagram for clang::CodeGen::CodeGenFunction::LexicalScope:
Inheritance graph
[legend]
Collaboration diagram for clang::CodeGen::CodeGenFunction::LexicalScope:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 LexicalScope (CodeGenFunction &CGF, SourceRange Range)
 Enter a new cleanup scope.
void addLabel (const LabelDecl *label)
 ~LexicalScope ()
 Exit this cleanup scope, emitting any accumulated cleanups.
void ForceCleanup ()
 Force the emission of cleanups now, instead of waiting until this object is destroyed.
void rescopeLabels ()

Detailed Description

Definition at line 546 of file CodeGenFunction.h.


Constructor & Destructor Documentation

clang::CodeGen::CodeGenFunction::LexicalScope::LexicalScope ( CodeGenFunction CGF,
SourceRange  Range 
) [inline, explicit]

Member Function Documentation

Force the emission of cleanups now, instead of waiting until this object is destroyed.

Reimplemented from clang::CodeGen::CodeGenFunction::RunCleanupsScope.

Definition at line 581 of file CodeGenFunction.h.

References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, and rescopeLabels().

Referenced by ~LexicalScope().

Change the cleanup scope of the labels in this lexical scope to match the scope of the enclosing context.

Definition at line 434 of file CGStmt.cpp.

References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::CodeGenFunction::EHStack, clang::CodeGen::EHScopeStack::getInnermostNormalCleanup(), and clang::CodeGen::EHScopeStack::stable_end().

Referenced by ForceCleanup().


The documentation for this class was generated from the following files: