clang 20.0.0git
|
Information for lazily generating a cleanup. More...
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/EHScopeStack.h"
Classes | |
class | Flags |
Generation flags. More... | |
Public Member Functions | |
Cleanup (const Cleanup &)=default | |
Cleanup (Cleanup &&) | |
Cleanup & | operator= (const Cleanup &)=delete |
Cleanup & | operator= (Cleanup &&)=delete |
Cleanup ()=default | |
virtual bool | isRedundantBeforeReturn () |
virtual void | Emit (CodeGenFunction &CGF, Flags flags)=0 |
Emit the cleanup. | |
Protected Member Functions | |
~Cleanup ()=default | |
Information for lazily generating a cleanup.
Subclasses must be POD-like: cleanups will not be destructed, and they will be allocated on the cleanup stack and freely copied and moved around.
Cleanup implementations should generally be declared in an anonymous namespace.
Definition at line 141 of file EHScopeStack.h.
|
protecteddefault |
|
default |
|
inline |
Definition at line 150 of file EHScopeStack.h.
|
default |
|
pure virtual |
Emit the cleanup.
For normal cleanups, this is run in the same EH context as when the cleanup was pushed, i.e. the immediately-enclosing context of the cleanup scope. For EH cleanups, this is run in a terminate context.
Implemented in clang::CodeGen::CatchRetScope, clang::CodeGen::CodeGenFunction::CallLifetimeEnd, and clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::OMPAllocateCleanupTy.
|
inlinevirtual |
Definition at line 159 of file EHScopeStack.h.