33 #ifndef _GLIBCXX_STDEXCEPT 34 #define _GLIBCXX_STDEXCEPT 1 36 #pragma GCC system_header 41 namespace std _GLIBCXX_VISIBILITY(default)
43 _GLIBCXX_BEGIN_NAMESPACE_VERSION
45 #if _GLIBCXX_USE_DUAL_ABI 46 #if _GLIBCXX_USE_CXX11_ABI 52 char _M_bytes[
sizeof(
const char*)];
57 __cow_string(
const char*,
size_t);
58 __cow_string(
const __cow_string&) _GLIBCXX_USE_NOEXCEPT;
59 __cow_string&
operator=(
const __cow_string&) _GLIBCXX_USE_NOEXCEPT;
61 #if __cplusplus >= 201103L 62 __cow_string(__cow_string&&) noexcept;
63 __cow_string& operator=(__cow_string&&) noexcept;
67 typedef basic_string<char> __sso_string;
68 #else // _GLIBCXX_USE_CXX11_ABI 69 typedef basic_string<char> __cow_string;
77 size_t _M_string_length;
78 char _M_local_buf[16];
83 char _M_bytes[
sizeof(__str)];
86 __sso_string() _GLIBCXX_USE_NOEXCEPT;
87 __sso_string(const
std::
string&);
88 __sso_string(const
char*,
size_t);
89 __sso_string(const __sso_string&);
90 __sso_string& operator=(const __sso_string&);
92 #if __cplusplus >= 201103L 93 __sso_string(__sso_string&&) noexcept;
94 __sso_string& operator=(__sso_string&&) noexcept;
97 #endif // _GLIBCXX_USE_CXX11_ABI 98 #else // _GLIBCXX_USE_DUAL_ABI 99 typedef basic_string<char> __sso_string;
100 typedef basic_string<char> __cow_string;
120 logic_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
122 #if __cplusplus >= 201103L 127 #if _GLIBCXX_USE_CXX11_ABI || _GLIBCXX_DEFINE_STDEXCEPT_COPY_OPS 132 virtual ~
logic_error() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
137 what()
const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
139 # ifdef _GLIBCXX_TM_TS_INTERNAL 141 ::_txnal_logic_error_get_msg(
void* e);
150 explicit domain_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
151 #if __cplusplus >= 201103L 162 #if __cplusplus >= 201103L 173 explicit length_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
174 #if __cplusplus >= 201103L 185 explicit out_of_range(
const string& __arg) _GLIBCXX_TXN_SAFE;
186 #if __cplusplus >= 201103L 206 #if __cplusplus >= 201103L 211 #if _GLIBCXX_USE_CXX11_ABI || _GLIBCXX_DEFINE_STDEXCEPT_COPY_OPS 216 virtual ~
runtime_error() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
221 what()
const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
223 # ifdef _GLIBCXX_TM_TS_INTERNAL 225 ::_txnal_runtime_error_get_msg(
void* e);
233 explicit range_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
234 #if __cplusplus >= 201103L 235 explicit range_error(
const char*) _GLIBCXX_TXN_SAFE;
245 #if __cplusplus >= 201103L 256 #if __cplusplus >= 201103L 264 _GLIBCXX_END_NAMESPACE_VERSION
One of two subclasses of exception.
ISO C++ entities toplevel namespace is std.
One of two subclasses of exception.
basic_string & operator=(const basic_string &__str)
Assign the value of str to this string.
Base class for all library exceptions.