diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2014-04-15 19:28:50 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2014-04-15 19:28:50 +0100 |
commit | ed39835fdc4bca98863e512c753b2b48d59a7276 (patch) | |
tree | ef1fd5b769c772177791b4e06ca355377c3bbbd7 | |
parent | 260d16c8ca780a9ddd022cc5a733fc20229f6e7b (diff) | |
download | gcc-ed39835fdc4bca98863e512c753b2b48d59a7276.zip gcc-ed39835fdc4bca98863e512c753b2b48d59a7276.tar.gz gcc-ed39835fdc4bca98863e512c753b2b48d59a7276.tar.bz2 |
shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use delegating constructor.
* include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
delegating constructor.
* include/bits/shared_ptr_base.h
(__shared_ptr::__shared_ptr(nullptr_t)): Likewise
From-SVN: r209428
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/shared_ptr.h | 3 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/shared_ptr_base.h | 5 |
3 files changed, 7 insertions, 6 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index de81ec7..5f16108 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -15,6 +15,11 @@ * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add const to constexpr member functions. + * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use + delegating constructor. + * include/bits/shared_ptr_base.h + (__shared_ptr::__shared_ptr(nullptr_t)): Likewise + 2014-04-14 Jonathan Wakely <jwakely@redhat.com> * include/bits/stl_vector.h (_Vector_base::_Vector_impl, diff --git a/libstdc++-v3/include/bits/shared_ptr.h b/libstdc++-v3/include/bits/shared_ptr.h index 081d3bd..104c869 100644 --- a/libstdc++-v3/include/bits/shared_ptr.h +++ b/libstdc++-v3/include/bits/shared_ptr.h @@ -262,8 +262,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __p A null pointer constant. * @post use_count() == 0 && get() == nullptr */ - constexpr shared_ptr(nullptr_t __p) noexcept - : __shared_ptr<_Tp>(__p) { } + constexpr shared_ptr(nullptr_t __p) noexcept : shared_ptr() { } shared_ptr& operator=(const shared_ptr&) noexcept = default; diff --git a/libstdc++-v3/include/bits/shared_ptr_base.h b/libstdc++-v3/include/bits/shared_ptr_base.h index 536df01..57398af 100644 --- a/libstdc++-v3/include/bits/shared_ptr_base.h +++ b/libstdc++-v3/include/bits/shared_ptr_base.h @@ -963,10 +963,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __shared_ptr(std::auto_ptr<_Tp1>&& __r); #endif - /* TODO: use delegating constructor */ - constexpr __shared_ptr(nullptr_t) noexcept - : _M_ptr(0), _M_refcount() - { } + constexpr __shared_ptr(nullptr_t) noexcept : __shared_ptr() { } template<typename _Tp1> __shared_ptr& |