clang
6.0.0
|
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. More... | |
unsigned | size () const |
The number of exceptions in the exception specification. More... | |
const QualType * | data () const |
The set of exceptions in the exception specification. More... | |
void | CalledDecl (SourceLocation CallLoc, const CXXMethodDecl *Method) |
Integrate another called method into the collected data. More... | |
void | CalledExpr (Expr *E) |
Integrate an invoked expression into the collected data. More... | |
FunctionProtoType::ExceptionSpecInfo | getExceptionSpec () const |
Overwrite an EPI's exception specification with this computed exception specification. More... | |
Helper class that collects exception specifications for implicitly-declared special member functions.
|
inlineexplicit |
Definition at line 4701 of file Sema.h.
References clang::EST_DynamicNone, and clang::Sema::getLangOpts().
void Sema::ImplicitExceptionSpecification::CalledDecl | ( | SourceLocation | CallLoc, |
const CXXMethodDecl * | Method | ||
) |
Integrate another called method into the collected data.
Definition at line 152 of file SemaDeclCXX.cpp.
References clang::EST_BasicNoexcept, clang::EST_ComputedNoexcept, clang::EST_Dynamic, clang::EST_DynamicNone, clang::EST_MSAny, clang::EST_None, clang::FunctionProtoType::exceptions(), clang::Type::getAs(), clang::FunctionProtoType::getExceptionSpecType(), clang::FunctionProtoType::getNoexceptSpec(), clang::ValueDecl::getType(), clang::Decl::hasAttr(), clang::FunctionProtoType::NR_Dependent, clang::FunctionProtoType::NR_NoNoexcept, and clang::FunctionProtoType::NR_Throw.
void Sema::ImplicitExceptionSpecification::CalledExpr | ( | Expr * | E | ) |
Integrate an invoked expression into the collected data.
Definition at line 222 of file SemaDeclCXX.cpp.
References clang::EST_MSAny, and clang::EST_None.
|
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 4728 of file Sema.h.
References clang::Sema::ActOnCXXBoolLiteral(), clang::EST_ComputedNoexcept, clang::EST_Dynamic, clang::EST_None, clang::FunctionProtoType::ExceptionSpecInfo::Exceptions, clang::ActionResult< PtrTy, CompressInvalid >::get(), clang::FunctionProtoType::ExceptionSpecInfo::NoexceptExpr, and clang::FunctionProtoType::ExceptionSpecInfo::Type.
|
inline |
Get the computed exception specification type.
Definition at line 4708 of file Sema.h.
References clang::EST_ComputedNoexcept.
|
inline |