PR libstdc++/78389
commit31e1bbe64f59ac9c19059b28f5723f0aa315256b
authorville <ville@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Jan 2017 14:46:25 +0000 (13 14:46 +0000)
committerville <ville@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Jan 2017 14:46:25 +0000 (13 14:46 +0000)
tree0b93988d916d1c7b514a4937985f463ef43f4cb6
parent3411af1759f7d7ccd0c352e875db67661a45452c
PR libstdc++/78389
* include/bits/list.tcc (merge(list&&)):
Adjust list sizes if the comparator throws.
(merge(list&&, _StrictWeakOrdering)): Likewise.
(sort()): Splice elements back from the scratch buffers
if the comparator throws.
(sort(_StrictWeakOrdering)): Likewise.
* testsuite/23_containers/list/operations/78389.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244439 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/list.tcc
libstdc++-v3/testsuite/23_containers/list/operations/78389.cc [new file with mode: 0644]