* [PATCH] Use noexcept instead of _GLIBCXX_USE_NOEXCEPT
@ 2016-10-10 18:33 Jonathan Wakely
0 siblings, 0 replies; only message in thread
From: Jonathan Wakely @ 2016-10-10 18:33 UTC (permalink / raw)
To: libstdc++, gcc-patches
[-- Attachment #1: Type: text/plain, Size: 244 bytes --]
This file is compiled with -std=gnu++11 so there's no need to use the
macro, we can use noexcept directly.
* libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
with noexcept.
Tested powerpc64le-linbux, committed to trunk.
[-- Attachment #2: patch.txt --]
[-- Type: text/plain, Size: 4768 bytes --]
commit f80e14a01697a34b835638a303967c0a7ad194a1
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Mon Oct 10 18:38:20 2016 +0100
Use noexcept instead of _GLIBCXX_USE_NOEXCEPT
* libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
with noexcept.
diff --git a/libstdc++-v3/libsupc++/eh_ptr.cc b/libstdc++-v3/libsupc++/eh_ptr.cc
index 3b8e0a01..f3c910b 100644
--- a/libstdc++-v3/libsupc++/eh_ptr.cc
+++ b/libstdc++-v3/libsupc++/eh_ptr.cc
@@ -63,33 +63,31 @@ static_assert( adjptr<__cxa_exception>()
#endif
}
-std::__exception_ptr::exception_ptr::exception_ptr() _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::exception_ptr() noexcept
: _M_exception_object(0) { }
-std::__exception_ptr::exception_ptr::exception_ptr(void* obj)
-_GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::exception_ptr(void* obj) noexcept
: _M_exception_object(obj) { _M_addref(); }
-std::__exception_ptr::exception_ptr::exception_ptr(__safe_bool)
-_GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::exception_ptr(__safe_bool) noexcept
: _M_exception_object(0) { }
std::__exception_ptr::
-exception_ptr::exception_ptr(const exception_ptr& other) _GLIBCXX_USE_NOEXCEPT
+exception_ptr::exception_ptr(const exception_ptr& other) noexcept
: _M_exception_object(other._M_exception_object)
{ _M_addref(); }
-std::__exception_ptr::exception_ptr::~exception_ptr() _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::~exception_ptr() noexcept
{ _M_release(); }
std::__exception_ptr::exception_ptr&
std::__exception_ptr::
-exception_ptr::operator=(const exception_ptr& other) _GLIBCXX_USE_NOEXCEPT
+exception_ptr::operator=(const exception_ptr& other) noexcept
{
exception_ptr(other).swap(*this);
return *this;
@@ -97,7 +95,7 @@ exception_ptr::operator=(const exception_ptr& other) _GLIBCXX_USE_NOEXCEPT
void
-std::__exception_ptr::exception_ptr::_M_addref() _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::_M_addref() noexcept
{
if (_M_exception_object)
{
@@ -109,7 +107,7 @@ std::__exception_ptr::exception_ptr::_M_addref() _GLIBCXX_USE_NOEXCEPT
void
-std::__exception_ptr::exception_ptr::_M_release() _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::_M_release() noexcept
{
if (_M_exception_object)
{
@@ -128,13 +126,12 @@ std::__exception_ptr::exception_ptr::_M_release() _GLIBCXX_USE_NOEXCEPT
void*
-std::__exception_ptr::exception_ptr::_M_get() const _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::_M_get() const noexcept
{ return _M_exception_object; }
void
-std::__exception_ptr::exception_ptr::swap(exception_ptr &other)
- _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::swap(exception_ptr &other) noexcept
{
void *tmp = _M_exception_object;
_M_exception_object = other._M_exception_object;
@@ -144,27 +141,24 @@ std::__exception_ptr::exception_ptr::swap(exception_ptr &other)
// Retained for compatibility with CXXABI_1.3.
void
-std::__exception_ptr::exception_ptr::_M_safe_bool_dummy()
- _GLIBCXX_USE_NOEXCEPT { }
+std::__exception_ptr::exception_ptr::_M_safe_bool_dummy() noexcept { }
// Retained for compatibility with CXXABI_1.3.
bool
-std::__exception_ptr::exception_ptr::operator!() const _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::operator!() const noexcept
{ return _M_exception_object == 0; }
// Retained for compatibility with CXXABI_1.3.
-std::__exception_ptr::exception_ptr::operator __safe_bool() const
-_GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::operator __safe_bool() const noexcept
{
return _M_exception_object ? &exception_ptr::_M_safe_bool_dummy : 0;
}
const std::type_info*
-std::__exception_ptr::exception_ptr::__cxa_exception_type() const
- _GLIBCXX_USE_NOEXCEPT
+std::__exception_ptr::exception_ptr::__cxa_exception_type() const noexcept
{
__cxa_exception *eh = __get_exception_header_from_obj (_M_exception_object);
return eh->exceptionType;
@@ -172,19 +166,17 @@ std::__exception_ptr::exception_ptr::__cxa_exception_type() const
bool std::__exception_ptr::operator==(const exception_ptr& lhs,
- const exception_ptr& rhs)
- _GLIBCXX_USE_NOEXCEPT
+ const exception_ptr& rhs) noexcept
{ return lhs._M_exception_object == rhs._M_exception_object; }
bool std::__exception_ptr::operator!=(const exception_ptr& lhs,
- const exception_ptr& rhs)
- _GLIBCXX_USE_NOEXCEPT
+ const exception_ptr& rhs) noexcept
{ return !(lhs == rhs);}
std::exception_ptr
-std::current_exception() _GLIBCXX_USE_NOEXCEPT
+std::current_exception() noexcept
{
__cxa_eh_globals *globals = __cxa_get_globals ();
__cxa_exception *header = globals->caughtExceptions;
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2016-10-10 18:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-10 18:33 [PATCH] Use noexcept instead of _GLIBCXX_USE_NOEXCEPT Jonathan Wakely
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).