clang 24.0.0git
clang::CIRGen::CIRGenFunction::ConditionalCleanupScope Struct Reference

One record per cir.cleanup.scope opened by a ConditionalEvaluation, as described above. More...

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

Public Attributes

cir::CleanupScopeOp scope
size_t deferredCleanupStackSize
 The size of deferredConditionalCleanupStack when this scope was opened.

Detailed Description

One record per cir.cleanup.scope opened by a ConditionalEvaluation, as described above.

These are bookkeeping owned by CIRGenFunction, not RAII objects. The scope outlives the ConditionalEvaluation that opened it, and the enclosing FullExprCleanupScope is what closes it.

Definition at line 183 of file CIRGenFunction.h.

Member Data Documentation

◆ deferredCleanupStackSize

size_t clang::CIRGen::CIRGenFunction::ConditionalCleanupScope::deferredCleanupStackSize

The size of deferredConditionalCleanupStack when this scope was opened.

Every open conditional scope shares that one stack, so the entries from this index onward are the ones deferred from inside this conditional. They are emitted into this scope's cleanup region, in reverse, when it is closed.

Definition at line 191 of file CIRGenFunction.h.

Referenced by closeConditionalCleanupScope().

◆ scope

cir::CleanupScopeOp clang::CIRGen::CIRGenFunction::ConditionalCleanupScope::scope

Definition at line 184 of file CIRGenFunction.h.

Referenced by closeConditionalCleanupScope().


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