[gcc r11-4839] libstdc++: Use 'inline' consistently in std::exception_ptr [PR 97729]
Jonathan Wakely
redi@gcc.gnu.org
Mon Nov 9 14:29:04 GMT 2020
https://gcc.gnu.org/g:0af3930a497e022597a08fa1bcef5e453bfa636f
commit r11-4839-g0af3930a497e022597a08fa1bcef5e453bfa636f
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Mon Nov 9 10:16:07 2020 +0000
libstdc++: Use 'inline' consistently in std::exception_ptr [PR 97729]
With PR c++/67453 fixed we can rely on the 'used' attribute to emit
inline constructors and destructors in libsupc++/eh_ptr.cc. This means
we don't need to suppress the 'inline' keyword on them in that file, and
don't need to force 'always_inline' on them in other files.
libstdc++-v3/ChangeLog:
PR libstdc++/97729
* libsupc++/exception_ptr.h (exception_ptr::exception_ptr())
(exception_ptr::exception_ptr(const exception_ptr&))
(exception_ptr::~exception_ptr()): Remove 'always_inline'
attributes. Use 'inline' unconditionally.
Diff:
---
libstdc++-v3/libsupc++/exception_ptr.h | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/libstdc++-v3/libsupc++/exception_ptr.h b/libstdc++-v3/libsupc++/exception_ptr.h
index 001343ac049..6ae4d4ca944 100644
--- a/libstdc++-v3/libsupc++/exception_ptr.h
+++ b/libstdc++-v3/libsupc++/exception_ptr.h
@@ -174,19 +174,13 @@ namespace std
};
_GLIBCXX_EH_PTR_USED
-#ifndef _GLIBCXX_EH_PTR_COMPAT
- __attribute__((__always_inline__)) // XXX see PR 97729
inline
-#endif
exception_ptr::exception_ptr() _GLIBCXX_NOEXCEPT
: _M_exception_object(0)
{ }
_GLIBCXX_EH_PTR_USED
-#ifndef _GLIBCXX_EH_PTR_COMPAT
- __attribute__((__always_inline__))
inline
-#endif
exception_ptr::exception_ptr(const exception_ptr& __other) _GLIBCXX_NOEXCEPT
: _M_exception_object(__other._M_exception_object)
{
@@ -195,10 +189,7 @@ namespace std
}
_GLIBCXX_EH_PTR_USED
-#ifndef _GLIBCXX_EH_PTR_COMPAT
- __attribute__((__always_inline__))
inline
-#endif
exception_ptr::~exception_ptr() _GLIBCXX_USE_NOEXCEPT
{
if (_M_exception_object)
More information about the Libstdc++-cvs
mailing list