Add noexcept to shared_ptr owner comparisons (LWG 2873)
commiteebca588509160151b715e791655b384dc1da2aa
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Jun 2017 09:33:19 +0000 (5 09:33 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Jun 2017 09:33:19 +0000 (5 09:33 +0000)
treee8c75dfb574ebf28307c5c8ec019a80f59115c38
parent1ea7c8124bb4f82273bdf2d46bd0795199ff0618
Add noexcept to shared_ptr owner comparisons (LWG 2873)

* include/bits/shared_ptr_base.h (__shared_ptr::owner_before)
(__weak_ptr::owner_before, _Sp_owner_less::operator()): Add noexcept
specifiers as per LWG 2873 and LWG 2942.
* testsuite/20_util/owner_less/noexcept.cc: New.
* testsuite/20_util/shared_ptr/observers/owner_before.cc: Test
noexcept guarantees.
* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@248874 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/shared_ptr_base.h
libstdc++-v3/testsuite/20_util/owner_less/noexcept.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/shared_ptr/observers/owner_before.cc
libstdc++-v3/testsuite/20_util/weak_ptr/observers/owner_before.cc