clang 20.0.0git
|
Helper class that collects exception specifications for implicitly-declared special member functions. More...
#include "clang/Sema/Sema.h"
Public Member Functions | |
ImplicitExceptionSpecification (Sema &Self) | |
ExceptionSpecificationType | getExceptionSpecType () const |
Get the computed exception specification type. | |
unsigned | size () const |
The number of exceptions in the exception specification. | |
const QualType * | data () const |
The set of exceptions in the exception specification. | |
void | CalledDecl (SourceLocation CallLoc, const CXXMethodDecl *Method) |
Integrate another called method into the collected data. | |
void | CalledExpr (Expr *E) |
Integrate an invoked expression into the collected data. | |
void | CalledStmt (Stmt *S) |
Integrate an invoked statement into the collected data. | |
FunctionProtoType::ExceptionSpecInfo | getExceptionSpec () const |
Overwrite an EPI's exception specification with this computed exception specification. | |
Helper class that collects exception specifications for implicitly-declared special member functions.
|
inlineexplicit |
Definition at line 5023 of file Sema.h.
References clang::EST_BasicNoexcept, and clang::EST_DynamicNone.
void Sema::ImplicitExceptionSpecification::CalledDecl | ( | SourceLocation | CallLoc, |
const CXXMethodDecl * | Method | ||
) |
Integrate another called method into the collected data.
Definition at line 186 of file SemaDeclCXX.cpp.
References clang::Sema::Context, E, clang::EST_BasicNoexcept, clang::EST_DependentNoexcept, clang::EST_Dynamic, clang::EST_DynamicNone, clang::EST_MSAny, clang::EST_NoexceptFalse, clang::EST_NoexceptTrue, clang::EST_None, clang::EST_NoThrow, clang::EST_Unevaluated, clang::EST_Uninstantiated, clang::EST_Unparsed, clang::FunctionProtoType::exceptions(), clang::Type::getAs(), clang::ASTContext::getCanonicalType(), clang::FunctionProtoType::getExceptionSpecType(), clang::ValueDecl::getType(), clang::Decl::hasAttr(), and clang::Sema::ResolveExceptionSpec().
|
inline |
void Sema::ImplicitExceptionSpecification::CalledStmt | ( | Stmt * | S | ) |
Integrate an invoked statement into the collected data.
Definition at line 254 of file SemaDeclCXX.cpp.
References clang::EST_MSAny, clang::EST_None, and clang::Self.
Referenced by ComputeDefaultedComparisonExceptionSpec().
|
inline |
|
inline |
Overwrite an EPI's exception specification with this computed exception specification.
C++11 [except.spec]p14: The exception-specification is noexcept(false) if the set of potential exceptions of the special member function contains "any"
Definition at line 5053 of file Sema.h.
References clang::EST_Dynamic, clang::EST_NoexceptFalse, clang::EST_None, clang::FunctionProtoType::ExceptionSpecInfo::Exceptions, clang::FunctionProtoType::ExceptionSpecInfo::NoexceptExpr, and clang::FunctionProtoType::ExceptionSpecInfo::Type.
|
inline |
Get the computed exception specification type.
Definition at line 5030 of file Sema.h.
References clang::isComputedNoexcept().
|
inline |