mirror of
https://github.com/boostorg/core.git
synced 2025-05-09 23:03:54 +00:00
71 lines
1.4 KiB
Plaintext
71 lines
1.4 KiB
Plaintext
[/
|
|
Copyright 2022 Peter Dimov
|
|
Distributed under the Boost Software License, Version 1.0.
|
|
https://boost.org/LICENSE_1_0.txt
|
|
]
|
|
|
|
[section:verbose_terminate_handler verbose_terminate_handler]
|
|
|
|
[simplesect Authors]
|
|
|
|
* Peter Dimov
|
|
|
|
[endsimplesect]
|
|
|
|
[section Header <boost/core/verbose_terminate_handler.hpp>]
|
|
|
|
The header `<boost/core/verbose_terminate_handler.hpp>` defines
|
|
the function `void boost::core::verbose_terminate_handler()`. Its
|
|
purpose is to be set as a terminate handler as in
|
|
```
|
|
std::set_terminate( boost::core::verbose_terminate_handler );
|
|
```
|
|
|
|
When invoked, the function prints information about the current
|
|
uncaught exception to `stderr` and then calls `std::abort`.
|
|
|
|
[section Synopsis]
|
|
|
|
``
|
|
namespace boost
|
|
{
|
|
namespace core
|
|
{
|
|
|
|
[[noreturn]] void verbose_terminate_handler();
|
|
|
|
} // namespace core
|
|
} // namespace boost
|
|
``
|
|
|
|
[endsect]
|
|
|
|
[section Example]
|
|
|
|
```
|
|
#include <boost/core/verbose_terminate_handler.hpp>
|
|
#include <boost/throw_exception.hpp>
|
|
#include <exception>
|
|
|
|
int main()
|
|
{
|
|
std::set_terminate( boost::core::verbose_terminate_handler );
|
|
boost::throw_with_location( std::exception() );
|
|
}
|
|
```
|
|
|
|
Sample output:
|
|
```
|
|
std::terminate called after throwing an exception:
|
|
|
|
type: class boost::detail::with_throw_location<class std::exception>
|
|
what(): Unknown exception
|
|
location: example.cpp:8:12 in function 'main'
|
|
```
|
|
|
|
[endsect]
|
|
|
|
[endsect]
|
|
|
|
[endsect]
|