gcc/libstdc++-v3/testsuite/25_algorithms
Paolo Carlini 848ca96f30 re PR libstdc++/49559 ([C++0x] stable_sort calls self-move-assignment operator)
2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/49559
	* include/bits/stl_algo.h (__move_merge_backward): Remove.
	(__move_merge_adaptive, __move_merge_adaptive_backward): New.
	(__merge_adaptive): Use the latter two.
	(__rotate_adaptive): Avoid self move-assignment.
	* include/bits/stl_algobase.h (move_backward): Fix comment.
	* testsuite/25_algorithms/stable_sort/49559.cc: New.
	* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
	* testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
	* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
	* testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
	(rvalstruct&&)): Check for self move-assignment.

From-SVN: r176174
2011-07-11 18:38:54 +00:00
..
adjacent_find Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
all_of Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
any_of Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
binary_search Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
copy 5.cc: Move... 2009-12-23 18:45:41 +00:00
copy_backward stl_deque.h (copy_backward(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare. 2009-12-24 12:47:37 +00:00
copy_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
copy_n testsuite_rvalref.h: Remove obsolete macro using _GLIBCXX_TESTSUITE_ALLOW_RVALREF_ALIASING. 2009-09-01 10:19:11 +00:00
count Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
count_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
equal Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
equal_range Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
fill 009-11-04 Benjamin Kosnik <bkoz@redhat.com> 2009-11-05 02:55:08 +00:00
fill_n re PR libstdc++/25306 (fill_n, generate_n assume Size is modifiable) 2010-05-21 16:57:17 +00:00
find re PR libstdc++/39546 (parallel mode doesn't support implicit string conversion) 2009-05-06 11:20:35 +00:00
find_end Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
find_first_of Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
find_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
find_if_not Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
for_each stl_algo.h (for_each): Implement resolution of DR 1110. 2010-02-19 17:38:18 +00:00
generate/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
generate_n re PR libstdc++/25306 (fill_n, generate_n assume Size is modifiable) 2010-05-21 16:57:17 +00:00
headers numeric (inner_product, [...]): Qualify subsequent call with __gnu_parallel instead of _GLIBCXX_STD_P to... 2011-01-26 09:18:48 +00:00
heap moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
includes Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
inplace_merge re PR libstdc++/49559 ([C++0x] stable_sort calls self-move-assignment operator) 2011-07-11 18:38:54 +00:00
is_heap Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
is_heap_until Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
is_partitioned Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
is_permutation check_type.cc: Minor tweaks. 2011-01-14 17:17:32 +00:00
is_sorted Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
is_sorted_until Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
iter_swap Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
lexicographical_compare Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
lower_bound list: Implement DR 1133 here too. 2010-01-04 01:58:21 +00:00
make_heap/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
max Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
max_element Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
merge Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
min Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
min_element Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
minmax order_statistics_imp.hpp: Avoid -Wall warnings. 2010-06-08 00:45:02 +00:00
minmax_element Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
mismatch Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
move 5.cc: Move... 2009-12-23 18:45:41 +00:00
move_backward stl_deque.h (copy_backward(_Deque_iterator, _Deque_iterator, _Deque_iterator), [...]): Declare. 2009-12-24 12:47:37 +00:00
next_permutation moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
none_of Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
nth_element using_namespace_std_tr1_neg.cc: Do not run in parallel-mode. 2010-01-12 17:16:25 +00:00
partial_sort [multiple changes] 2011-03-09 18:30:11 +00:00
partial_sort_copy Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
partition moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-17 23:15:28 +00:00
partition_copy Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
partition_point Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
pop_heap/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
prev_permutation moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
push_heap/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
random_shuffle using_namespace_std_tr1_neg.cc: Do not run in parallel-mode. 2010-01-12 17:16:25 +00:00
remove moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
remove_copy/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
remove_copy_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
remove_if moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
replace Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
replace_copy Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
replace_copy_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
replace_if Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
reverse tuple (tuple<>::operator=(tuple&&)): Specify as noexcept. 2011-05-19 17:20:22 +00:00
reverse_copy/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
rotate moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
rotate_copy/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
search Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
search_n re PR libstdc++/42712 (search_n/iterator.cc times out in parallel-mode) 2010-01-19 11:18:03 +00:00
set_difference list: Implement DR 1133 here too. 2010-01-04 01:58:21 +00:00
set_intersection list: Implement DR 1133 here too. 2010-01-04 01:58:21 +00:00
set_symmetric_difference Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
set_union Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
shuffle stl_algo.h (shuffle): Change signature consistently with random_shuffle (US 121). 2010-08-11 17:10:04 +00:00
sort tie2.cc: Fix for C++0x mode. 2011-06-23 11:32:23 +01:00
sort_heap moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
stable_partition moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
stable_sort re PR libstdc++/49559 ([C++0x] stable_sort calls self-move-assignment operator) 2011-07-11 18:38:54 +00:00
swap move.h (__is_nothrow_swappable): Add. 2011-06-21 23:01:03 +00:00
swap_ranges tuple (tuple<>::operator=(tuple&&)): Specify as noexcept. 2011-05-19 17:20:22 +00:00
transform/requirements/explicit_instantiation Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unique moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-11 17:50:39 +00:00
unique_copy Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
upper_bound list: Implement DR 1133 here too. 2010-01-04 01:58:21 +00:00