22 #ifndef LELY_UTIL_EXCEPTION_HPP_
23 #define LELY_UTIL_EXCEPTION_HPP_
28 #include <system_error>
30 #ifndef throw_or_abort
36 #define throw_or_abort(e) throw(e)
38 #define throw_or_abort(e) __throw_or_abort((e).what())
54 class error :
public ::std::system_error {
57 : ::std::system_error(errc, ::std::system_category()), m_errc(errc) {}
60 errc()
const noexcept {
The type of objects thrown as exceptions to report a system error with an associated error code.
This header file is part of the utilities library; it contains the native and platform-independent er...
errnum_t errc2num(int errc)
Transforms a native error code to a platform-independent error number.
errnum
The platform-independent error numbers.
int get_errc(void)
Returns the last (thread-specific) native error code set by a system call or library function.
enum errnum errnum_t
The platform-independent error number type.
_Noreturn void __throw_or_abort(const char *what) noexcept
Aborts the process instead of throwing an exception.
#define _Noreturn
A function declared with a _Noreturn function specifier SHALL not return to its caller.