Mercurial > hg > CbC > CbC_gcc
comparison libstdc++-v3/libsupc++/exception_ptr.h @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
1 // Exception Handling support header (exception_ptr class) for -*- C++ -*- | 1 // Exception Handling support header (exception_ptr class) for -*- C++ -*- |
2 | 2 |
3 // Copyright (C) 2008-2018 Free Software Foundation, Inc. | 3 // Copyright (C) 2008-2020 Free Software Foundation, Inc. |
4 // | 4 // |
5 // This file is part of GCC. | 5 // This file is part of GCC. |
6 // | 6 // |
7 // GCC is free software; you can redistribute it and/or modify | 7 // GCC is free software; you can redistribute it and/or modify |
8 // it under the terms of the GNU General Public License as published by | 8 // it under the terms of the GNU General Public License as published by |
47 | 47 |
48 /** | 48 /** |
49 * @addtogroup exceptions | 49 * @addtogroup exceptions |
50 * @{ | 50 * @{ |
51 */ | 51 */ |
52 | |
52 namespace __exception_ptr | 53 namespace __exception_ptr |
53 { | 54 { |
54 class exception_ptr; | 55 class exception_ptr; |
55 } | 56 } |
56 | 57 |
152 const class std::type_info* | 153 const class std::type_info* |
153 __cxa_exception_type() const _GLIBCXX_USE_NOEXCEPT | 154 __cxa_exception_type() const _GLIBCXX_USE_NOEXCEPT |
154 __attribute__ ((__pure__)); | 155 __attribute__ ((__pure__)); |
155 }; | 156 }; |
156 | 157 |
158 /// @relates exception_ptr @{ | |
159 | |
157 bool | 160 bool |
158 operator==(const exception_ptr&, const exception_ptr&) | 161 operator==(const exception_ptr&, const exception_ptr&) |
159 _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__)); | 162 _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__)); |
160 | 163 |
161 bool | 164 bool |
164 | 167 |
165 inline void | 168 inline void |
166 swap(exception_ptr& __lhs, exception_ptr& __rhs) | 169 swap(exception_ptr& __lhs, exception_ptr& __rhs) |
167 { __lhs.swap(__rhs); } | 170 { __lhs.swap(__rhs); } |
168 | 171 |
172 // @} | |
173 | |
174 /// @cond undocumented | |
169 template<typename _Ex> | 175 template<typename _Ex> |
170 inline void | 176 inline void |
171 __dest_thunk(void* __x) | 177 __dest_thunk(void* __x) |
172 { static_cast<_Ex*>(__x)->~_Ex(); } | 178 { static_cast<_Ex*>(__x)->~_Ex(); } |
179 /// @endcond | |
173 | 180 |
174 } // namespace __exception_ptr | 181 } // namespace __exception_ptr |
175 | 182 |
176 /// Obtain an exception_ptr pointing to a copy of the supplied object. | 183 /// Obtain an exception_ptr pointing to a copy of the supplied object. |
177 template<typename _Ex> | 184 template<typename _Ex> |