|
#define | __cpp_lib_uncaught_exceptions |
|
- Since
- C++98
Classes and functions for reporting errors via exceptions.
typedef void(* std::terminate_handler)() |
If you write a replacement terminate handler, it must be of this type.
Definition at line 68 of file exception.
typedef void(* std::unexpected_handler)() |
If you write a replacement unexpected handler, it must be of this type.
Definition at line 84 of file exception.
void __gnu_cxx::__verbose_terminate_handler |
( |
| ) |
|
exception_ptr std::current_exception |
( |
| ) |
|
|
noexcept |
Obtain an exception_ptr to the currently handled exception. If there is none, or the currently handled exception is foreign, return the null value.
Referenced by std::make_exception_ptr().
terminate_handler std::get_terminate |
( |
| ) |
|
|
noexcept |
Return the current terminate handler.
unexpected_handler std::get_unexpected |
( |
| ) |
|
|
noexcept |
Return the current unexpected handler.
- Since
- C++11
- Deprecated:
- Removed from the C++ standard in C++17
template<typename _Ex >
exception_ptr std::make_exception_ptr |
( |
_Ex |
__ex | ) |
|
|
noexcept |
void std::rethrow_exception |
( |
exception_ptr |
| ) |
|
template<typename _Ex >
void std::rethrow_if_nested |
( |
const _Ex & |
__ex | ) |
|
|
inline |
terminate_handler std::set_terminate |
( |
terminate_handler |
| ) |
|
|
noexcept |
Takes a new handler function as an argument, returns the old function.
unexpected_handler std::set_unexpected |
( |
unexpected_handler |
| ) |
|
|
noexcept |
Takes a new handler function as an argument, returns the old function.
- Deprecated:
- Removed from the C++ standard in C++17
The runtime will call this function if exception handling must be abandoned for any reason. It can also be called by the user.
template<typename _Tp >
void std::throw_with_nested |
( |
_Tp && |
__t | ) |
|
|
inline |
If __t
is derived from nested_exception, throws __t
. Else, throws an implementation-defined object derived from both.
Definition at line 118 of file nested_exception.h.
bool std::uncaught_exception |
( |
| ) |
|
|
noexcept |
[18.6.4]/1: 'Returns true after completing evaluation of a throw-expression until either completing initialization of the exception-declaration in the matching handler or entering unexpected()
due to the throw; or after entering terminate()
for any reason other than an explicit call to terminate()
. [Note: This includes stack unwinding [15.2]. end note]'
2: 'When uncaught_exception()
is true, throwing an exception can result in a call of 1terminate()` (15.5.1).'
Referenced by std::basic_ostream< _CharT, _Traits >::sentry::~sentry().
int std::uncaught_exceptions |
( |
| ) |
|
|
noexcept |
The number of uncaught exceptions.
- Since
- C++17, or any non-strict mode, e.g.
-std=gnu++98
- See Also
- uncaught_exception()
The runtime will call this function if an exception is thrown which violates the function's exception specification.
- Deprecated:
- Removed from the C++ standard in C++17