re PR libstdc++/61645 (forward_list::splice_after shall not throw exceptions)

PR libstdc++/61645
	* include/bits/forward_list.h (forward_list::splice_after): Add
	noexcept.
	* include/bits/forward_list.tcc (forward_list::splice_after):
	Likewise.

From-SVN: r222525
This commit is contained in:
Jonathan Wakely 2015-04-28 14:05:33 +01:00 committed by Jonathan Wakely
parent d747ee05e3
commit 956d18149e
3 changed files with 13 additions and 7 deletions

View File

@ -1,5 +1,11 @@
2015-04-28 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/61645
* include/bits/forward_list.h (forward_list::splice_after): Add
noexcept.
* include/bits/forward_list.tcc (forward_list::splice_after):
Likewise.
PR libstdc++/65631
* include/bits/random.h (seed_seq) Define copy constructor and copy
assignment as deleted.

View File

@ -1042,14 +1042,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Requires this != @a x.
*/
void
splice_after(const_iterator __pos, forward_list&& __list)
splice_after(const_iterator __pos, forward_list&& __list) noexcept
{
if (!__list.empty())
_M_splice_after(__pos, __list.before_begin(), __list.end());
}
void
splice_after(const_iterator __pos, forward_list& __list)
splice_after(const_iterator __pos, forward_list& __list) noexcept
{ splice_after(__pos, std::move(__list)); }
/**
@ -1064,11 +1064,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
*/
void
splice_after(const_iterator __pos, forward_list&& __list,
const_iterator __i);
const_iterator __i) noexcept;
void
splice_after(const_iterator __pos, forward_list& __list,
const_iterator __i)
const_iterator __i) noexcept
{ splice_after(__pos, std::move(__list), __i); }
/**
@ -1086,12 +1086,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
*/
void
splice_after(const_iterator __pos, forward_list&&,
const_iterator __before, const_iterator __last)
const_iterator __before, const_iterator __last) noexcept
{ _M_splice_after(__pos, __before, __last); }
void
splice_after(const_iterator __pos, forward_list&,
const_iterator __before, const_iterator __last)
const_iterator __before, const_iterator __last) noexcept
{ _M_splice_after(__pos, __before, __last); }
/**

View File

@ -253,7 +253,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
void
forward_list<_Tp, _Alloc>::
splice_after(const_iterator __pos, forward_list&&,
const_iterator __i)
const_iterator __i) noexcept
{
const_iterator __j = __i;
++__j;