|
clang 24.0.0git
|
Holds information about the various types of exception specification. More...
#include "clang/AST/TypeBase.h"
Public Member Functions | |
| ExceptionSpecInfo ()=default | |
| ExceptionSpecInfo (ExceptionSpecificationType EST) | |
| void | instantiate () |
Public Attributes | |
| ExceptionSpecificationType | Type = EST_None |
| The kind of exception specification this is. | |
| ArrayRef< QualType > | Exceptions |
| Explicitly-specified list of exception types. | |
| Expr * | NoexceptExpr = nullptr |
| Noexcept expression, if this is a computed noexcept specification. | |
| FunctionDecl * | SourceDecl = nullptr |
| The function whose exception specification this is, for EST_Unevaluated and EST_Uninstantiated. | |
| FunctionDecl * | SourceTemplate = nullptr |
| The function template whose exception specification this is instantiated from, for EST_Uninstantiated. | |
Holds information about the various types of exception specification.
ExceptionSpecInfo is not stored as such in FunctionProtoType but is used to group together the various bits of information about the exception specification.
Definition at line 5463 of file TypeBase.h.
|
default |
|
inline |
Definition at line 5483 of file TypeBase.h.
References Type.
| void FunctionProtoType::ExceptionSpecInfo::instantiate | ( | ) |
Definition at line 3777 of file Type.cpp.
References clang::cast(), clang::EST_DependentNoexcept, clang::EST_Uninstantiated, NoexceptExpr, SourceTemplate, and Type.
Explicitly-specified list of exception types.
Definition at line 5468 of file TypeBase.h.
Referenced by clang::Sema::checkExceptionSpecification(), clang::Sema::DeclareGlobalAllocationFunction(), clang::Sema::ImplicitExceptionSpecification::getExceptionSpec(), isCanonicalExceptionSpecification(), clang::ASTContext::mergeExceptionSpecs(), clang::serialization::DataStreamBasicReader< Impl >::readExceptionSpecInfo(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::JSONNodeDumper::VisitFunctionProtoType(), and clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo().
Noexcept expression, if this is a computed noexcept specification.
Definition at line 5471 of file TypeBase.h.
Referenced by clang::Sema::checkExceptionSpecification(), clang::Sema::ImplicitExceptionSpecification::getExceptionSpec(), instantiate(), clang::serialization::DataStreamBasicReader< Impl >::readExceptionSpecInfo(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::ASTNodeImporter::VisitFunctionDecl(), and clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo().
| FunctionDecl* clang::FunctionProtoType::ExceptionSpecInfo::SourceDecl = nullptr |
The function whose exception specification this is, for EST_Unevaluated and EST_Uninstantiated.
Definition at line 5475 of file TypeBase.h.
Referenced by clang::Sema::AdjustDestructorExceptionSpec(), clang::Sema::CheckExplicitlyDefaultedSpecialMember(), getImplicitMethodEPI(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), clang::serialization::DataStreamBasicReader< Impl >::readExceptionSpecInfo(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TextNodeDumper::VisitFunctionDecl(), and clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo().
| FunctionDecl* clang::FunctionProtoType::ExceptionSpecInfo::SourceTemplate = nullptr |
The function template whose exception specification this is instantiated from, for EST_Uninstantiated.
Definition at line 5479 of file TypeBase.h.
Referenced by clang::TemplateDeclInstantiator::InitFunctionInstantiation(), instantiate(), clang::serialization::DataStreamBasicReader< Impl >::readExceptionSpecInfo(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TextNodeDumper::VisitFunctionDecl(), and clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo().
| ExceptionSpecificationType clang::FunctionProtoType::ExceptionSpecInfo::Type = EST_None |
The kind of exception specification this is.
Definition at line 5465 of file TypeBase.h.
Referenced by addFunctionPointerConversion(), clang::Sema::AdjustDestructorExceptionSpec(), clang::Sema::CheckEquivalentExceptionSpec(), clang::Sema::checkExceptionSpecification(), clang::Sema::CheckExplicitlyDefaultedComparison(), clang::Sema::CheckExplicitlyDefaultedSpecialMember(), clang::Sema::DeclareGlobalAllocationFunction(), ExceptionSpecInfo(), clang::Sema::findInheritingConstructor(), clang::ASTContext::GetBuiltinType(), clang::Sema::ImplicitExceptionSpecification::getExceptionSpec(), getImplicitMethodEPI(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), instantiate(), isCanonicalExceptionSpecification(), clang::ASTContext::mergeExceptionSpecs(), clang::serialization::DataStreamBasicReader< Impl >::readExceptionSpecInfo(), clang::Sema::SubstExceptionSpec(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::Sema::UpdateExceptionSpec(), clang::TextNodeDumper::VisitFunctionDecl(), clang::JSONNodeDumper::VisitFunctionProtoType(), and clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo().