clang 22.0.0git
clang::CIRGen::EHScope Class Reference

A protected scope for zero-cost EH handling. More...

#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CIR/CodeGen/CIRGenCleanup.h"

Inheritance diagram for clang::CIRGen::EHScope:
[legend]

Classes

class  CatchBitFields
class  CleanupBitFields

Public Types

enum  Kind { Cleanup , Catch , Terminate , Filter }

Public Member Functions

 EHScope (Kind kind, EHScopeStack::stable_iterator enclosingEHScope)
Kind getKind () const
bool mayThrow () const
void setMayThrow (bool mayThrow)
EHScopeStack::stable_iterator getEnclosingEHScope () const

Protected Attributes

union { 
   CommonBitFields   commonBits 
   CatchBitFields   catchBits 
   CleanupBitFields   cleanupBits 
}; 

Detailed Description

A protected scope for zero-cost EH handling.

Definition at line 33 of file CIRGenCleanup.h.

Member Enumeration Documentation

◆ Kind

Enumerator
Cleanup 
Catch 
Terminate 
Filter 

Definition at line 85 of file CIRGenCleanup.h.

Constructor & Destructor Documentation

◆ EHScope()

Member Function Documentation

◆ getEnclosingEHScope()

EHScopeStack::stable_iterator clang::CIRGen::EHScope::getEnclosingEHScope ( ) const
inline

Definition at line 103 of file CIRGenCleanup.h.

Referenced by clang::CIRGen::EHScopeStack::popCatch().

◆ getKind()

◆ mayThrow()

bool clang::CIRGen::EHScope::mayThrow ( ) const
inline

◆ setMayThrow()

void clang::CIRGen::EHScope::setMayThrow ( bool mayThrow)
inline

Definition at line 101 of file CIRGenCleanup.h.

References mayThrow().

Referenced by clang::CIRGen::CIRGenFunction::populateEHCatchRegions().

Member Data Documentation

◆ [union]

union { ... } clang::CIRGen::EHScope

◆ catchBits

CatchBitFields clang::CIRGen::EHScope::catchBits

◆ cleanupBits

◆ commonBits

CommonBitFields clang::CIRGen::EHScope::commonBits

Definition at line 79 of file CIRGenCleanup.h.

Referenced by EHScope(), and getKind().


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