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>