|
clang 23.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 5419 of file TypeBase.h.
|
default |
|
inline |
Definition at line 5439 of file TypeBase.h.
References Type.
| void FunctionProtoType::ExceptionSpecInfo::instantiate | ( | ) |
Definition at line 3768 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 5424 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 5427 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 5431 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 5435 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 5421 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().