34#ifndef _STDEXCEPT_THROWDEF_H
35#define _STDEXCEPT_THROWDEF_H 1
39#if (_GLIBCXX_HOSTED && __cpp_exceptions && __cplusplus > 202302L \
40 && __cpp_constexpr_exceptions >= 202411L)
42namespace std _GLIBCXX_VISIBILITY(default)
44_GLIBCXX_BEGIN_NAMESPACE_VERSION
51 [[noreturn, __gnu__::__cold__]]
void
52 _ZSt19__throw_logic_errorPKc(
const char*);
54 [[noreturn, __gnu__::__cold__]]
void
55 _ZSt20__throw_domain_errorPKc(
const char*);
57 [[noreturn, __gnu__::__cold__]]
void
58 _ZSt24__throw_invalid_argumentPKc(
const char*);
60 [[noreturn, __gnu__::__cold__]]
void
61 _ZSt20__throw_length_errorPKc(
const char*);
63 [[noreturn, __gnu__::__cold__]]
void
64 _ZSt20__throw_out_of_rangePKc(
const char*);
66 [[noreturn, __gnu__::__cold__]]
67 [[__gnu__::__format__(__gnu_printf__, 1, 2)]]
void
68 _ZSt24__throw_out_of_range_fmtPKcz(
const char*, ...);
70 [[noreturn, __gnu__::__cold__]]
void
71 _ZSt21__throw_runtime_errorPKc(
const char*);
73 [[noreturn, __gnu__::__cold__]]
void
74 _ZSt22__throw_overflow_errorPKc(
const char*);
76 [[noreturn, __gnu__::__cold__]]
void
77 _ZSt23__throw_underflow_errorPKc(
const char*);
81 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
82 __throw_logic_error(
const char* __s)
87 __detail::_ZSt19__throw_logic_errorPKc(__s);
91 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
92 __throw_domain_error(
const char* __s)
97 __detail::_ZSt20__throw_domain_errorPKc(__s);
101 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
102 __throw_invalid_argument(
const char* __s)
107 __detail::_ZSt24__throw_invalid_argumentPKc(__s);
111 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
112 __throw_length_error(
const char* __s)
117 __detail::_ZSt20__throw_length_errorPKc(__s);
121 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
122 __throw_out_of_range(
const char* __s)
127 __detail::_ZSt20__throw_out_of_rangePKc(__s);
131 template <
typename... _Args>
132 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
133 __throw_out_of_range_fmt(
const char* __s, _Args... __args)
138 __detail::_ZSt24__throw_out_of_range_fmtPKcz(__s, __args...);
142 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
143 __throw_runtime_error(
const char* __s)
148 __detail::_ZSt21__throw_runtime_errorPKc(__s);
152 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
153 __throw_overflow_error(
const char* __s)
158 __detail::_ZSt22__throw_overflow_errorPKc(__s);
162 [[noreturn, __gnu__::__always_inline__, __gnu__::__cold__]]
constexpr void
163 __throw_underflow_error(
const char* __s)
168 __detail::_ZSt23__throw_underflow_errorPKc(__s);
172_GLIBCXX_END_NAMESPACE_VERSION
ISO C++ entities toplevel namespace is std.
Implementation details not part of the namespace std interface.
One of two subclasses of exception.
One of two subclasses of exception.