class EHScopeStack::Cleanup
Declaration
class EHScopeStack::Cleanup { /* full declaration omitted */ };
Description
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.
Declared at: clang/lib/CodeGen/EHScopeStack.h:141
Method Overview
- public Cleanup(const clang::CodeGen::EHScopeStack::Cleanup &)
- public Cleanup(clang::CodeGen::EHScopeStack::Cleanup &&)
- public Cleanup()
- public virtual void Emit(clang::CodeGen::CodeGenFunction & CGF, clang::CodeGen::EHScopeStack::Cleanup::Flags flags)
- private virtual void anchor()
- public virtual bool isRedundantBeforeReturn()
- protected ~Cleanup()
Methods
¶Cleanup(
const clang::CodeGen::EHScopeStack::Cleanup&)
Cleanup(
const clang::CodeGen::EHScopeStack::Cleanup&)
Declared at: clang/lib/CodeGen/EHScopeStack.h:149
Parameters
¶Cleanup(clang::CodeGen::EHScopeStack::Cleanup&&)
Cleanup(clang::CodeGen::EHScopeStack::Cleanup&&)
Declared at: clang/lib/CodeGen/EHScopeStack.h:150
Parameters
¶Cleanup()
Cleanup()
Declared at: clang/lib/CodeGen/EHScopeStack.h:151
¶virtual void Emit(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::EHScopeStack::Cleanup::Flags
flags)
virtual void Emit(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::EHScopeStack::Cleanup::Flags
flags)
Description
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.
Declared at: clang/lib/CodeGen/EHScopeStack.h:191
Parameters
¶virtual void anchor()
virtual void anchor()
Declared at: clang/lib/CodeGen/EHScopeStack.h:143
¶virtual bool isRedundantBeforeReturn()
virtual bool isRedundantBeforeReturn()
Declared at: clang/lib/CodeGen/EHScopeStack.h:153
¶~Cleanup()
~Cleanup()
Declared at: clang/lib/CodeGen/EHScopeStack.h:146