Commit Graph

196 Commits

Author SHA1 Message Date
Jonathan Wakely
9425300b41 Improve tests for vector and deque move-assignment
* testsuite/23_containers/deque/allocator/move_assign-2.cc: Improve
	comment. Ensure first test works because allocator type propagates and
	not because is_always_equal is true.
	* testsuite/23_containers/vector/52591.cc: Likewise. Restore original
	testcase that instantiates the move-assignment operator.

From-SVN: r247284
2017-04-26 20:25:30 +01:00
Jonathan Wakely
ac4664f9da Skip tests that are incompatible with Profile Mode
* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
	Skip test when -D_GLIBCXX_PROFILE mode is included in options.
	* testsuite/23_containers/map/modifiers/extract.cc: Likewise.
	* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
	Likewise.
	* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
	* testsuite/23_containers/set/modifiers/extract.cc: Likewise.
	* testsuite/23_containers/unordered_map/modifiers/extract.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/modifiers/extract.cc::
	Likewise.
	* testsuite/23_containers/unordered_multiset/modifiers/extract.cc::
	Likewise.
	* testsuite/23_containers/unordered_set/modifiers/extract.cc:
	Likewise.
	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
	Likewise.
	* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
	* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
	* testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise.
	* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
	* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
	* testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.

From-SVN: r244464
2017-01-14 11:55:22 +00:00
Jakub Jelinek
cbe34bb5ed Update copyright years.
From-SVN: r243994
2017-01-01 13:07:43 +01:00
Jonathan Wakely
1f153a1d2a Replace dynamic exception specifications in testsuite
* testsuite/util/testsuite_hooks.h (THROW): Define.
	* testsuite/util/replacement_memory_operators.h: Include
	testsuite_hooks.h and use THROW macro.
	* testsuite/util/testsuite_tr1.h: Likewise.
	* testsuite/20_util/allocator/1.cc: Use THROW macro.
	* testsuite/22_locale/locale/cons/12352.cc: Likewise.
	* testsuite/23_containers/vector/zero_sized_allocations.cc: Likewise.
	* testsuite/30_threads/lock_guard/cons/1.cc: Replace dynamic exception
	specification with noexcept-specifier.
	* testsuite/ext/pool_allocator/allocate_chunk.cc: Include
	testsuite_hooks.h and use THROW macro.
	* testsuite/ext/profile/replace_new.cc: Likewise.

From-SVN: r243353
2016-12-07 15:22:51 +00:00
David Edelsohn
57e27acf28 re PR libstdc++/68838 (AIX 32 bit wchar_t testsuite failures)
PR libstdc++/68838
* testsuite/lib/libstdc++.exp (DEFAULT_CXXFLAGS): Add -Wl,-bmaxdata on AIX.
* testsuite/23_containers/vector/profile/vector.cc: Remove
dg-additional-options.

From-SVN: r242967
2016-11-29 12:50:27 -05:00
Paolo Carlini
a9260b7eb6 57619.C: Rename to 57619.cc.
2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
	* testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.

2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/array/capacity/empty.cc: Remove 'test' variables.
	* testsuite/array/capacity/max_size.cc: Likewise.
	* testsuite/array/capacity/size.cc: Likewise.
	* testsuite/array/comparison_operators/equal.cc: Likewise.
	* testsuite/array/comparison_operators/greater.cc: Likewise.
	* testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
	* testsuite/array/comparison_operators/less.cc: Likewise.
	* testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
	* testsuite/array/comparison_operators/not_equal.cc: Likewise.
	* testsuite/array/element_access/54388.cc: Likewise.
	* testsuite/array/element_access/at_out_of_range.cc: Likewise.
	* testsuite/array/element_access/back.cc: Likewise.
	* testsuite/array/element_access/data.cc: Likewise.
	* testsuite/array/element_access/front.cc: Likewise.
	* testsuite/array/iterators/end_is_one_past.cc: Likewise.
	* testsuite/array/requirements/contiguous.cc: Likewise.
	* testsuite/array/requirements/fill.cc: Likewise.
	* testsuite/array/requirements/member_swap.cc: Likewise.
	* testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
	* testsuite/array/specialized_algorithms/swap.cc: Likewise.
	* testsuite/array/tuple_interface/tuple_element.cc: Likewise.
	* testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
	* testsuite/array/tuple_interface/tuple_size.cc: Likewise.
	* testsuite/bitset/all/1.cc: Likewise.
	* testsuite/bitset/cons/1.cc: Likewise.
	* testsuite/bitset/cons/16020.cc: Likewise.
	* testsuite/bitset/cons/2.cc: Likewise.
	* testsuite/bitset/cons/3.cc: Likewise.
	* testsuite/bitset/cons/50268.cc: Likewise.
	* testsuite/bitset/cons/6282.cc: Likewise.
	* testsuite/bitset/cons/dr1325-2.cc: Likewise.
	* testsuite/bitset/cons/dr396.cc: Likewise.
	* testsuite/bitset/ext/15361.cc: Likewise.
	* testsuite/bitset/input/1.cc: Likewise.
	* testsuite/bitset/operations/1.cc: Likewise.
	* testsuite/bitset/operations/13838.cc: Likewise.
	* testsuite/bitset/operations/2.cc: Likewise.
	* testsuite/bitset/test/1.cc: Likewise.
	* testsuite/bitset/to_string/1.cc: Likewise.
	* testsuite/bitset/to_string/dr396.cc: Likewise.
	* testsuite/bitset/to_ullong/1.cc: Likewise.
	* testsuite/bitset/to_ulong/1.cc: Likewise.
	* testsuite/deque/allocator/copy.cc: Likewise.
	* testsuite/deque/allocator/copy_assign.cc: Likewise.
	* testsuite/deque/allocator/ext_ptr.cc: Likewise.
	* testsuite/deque/allocator/minimal.cc: Likewise.
	* testsuite/deque/allocator/move.cc: Likewise.
	* testsuite/deque/allocator/move_assign.cc: Likewise.
	* testsuite/deque/allocator/swap.cc: Likewise.
	* testsuite/deque/capacity/29134-2.cc: Likewise.
	* testsuite/deque/capacity/29134.cc: Likewise.
	* testsuite/deque/capacity/moveable.cc: Likewise.
	* testsuite/deque/capacity/resize_size.cc: Likewise.
	* testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/deque/cons/1.cc: Likewise.
	* testsuite/deque/cons/2.cc: Likewise.
	* testsuite/deque/cons/assign/1.cc: Likewise.
	* testsuite/deque/cons/cons_size.cc: Likewise.
	* testsuite/deque/cons/moveable.cc: Likewise.
	* testsuite/deque/modifiers/erase/1.cc: Likewise.
	* testsuite/deque/modifiers/erase/2.cc: Likewise.
	* testsuite/deque/modifiers/erase/3.cc: Likewise.
	* testsuite/deque/modifiers/erase/moveable.cc: Likewise.
	* testsuite/deque/modifiers/moveable.cc: Likewise.
	* testsuite/deque/modifiers/push_back/49836.cc: Likewise.
	* testsuite/deque/modifiers/push_front/49836.cc: Likewise.
	* testsuite/deque/modifiers/swap/1.cc: Likewise.
	* testsuite/deque/modifiers/swap/2.cc: Likewise.
	* testsuite/deque/modifiers/swap/3.cc: Likewise.
	* testsuite/deque/operators/1.cc: Likewise.
	* testsuite/deque/operators/2.cc: Likewise.
	* testsuite/forward_list/allocator/copy.cc: Likewise.
	* testsuite/forward_list/allocator/copy_assign.cc: Likewise.
	* testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
	* testsuite/forward_list/allocator/minimal.cc: Likewise.
	* testsuite/forward_list/allocator/move.cc: Likewise.
	* testsuite/forward_list/allocator/move_assign.cc: Likewise.
	* testsuite/forward_list/allocator/swap.cc: Likewise.
	* testsuite/forward_list/capacity/1.cc: Likewise.
	* testsuite/forward_list/capacity/resize_size.cc: Likewise.
	* testsuite/forward_list/comparable.cc: Likewise.
	* testsuite/forward_list/cons/1.cc: Likewise.
	* testsuite/forward_list/cons/2.cc: Likewise.
	* testsuite/forward_list/cons/3.cc: Likewise.
	* testsuite/forward_list/cons/4.cc: Likewise.
	* testsuite/forward_list/cons/5.cc: Likewise.
	* testsuite/forward_list/cons/6.cc: Likewise.
	* testsuite/forward_list/cons/7.cc: Likewise.
	* testsuite/forward_list/cons/8.cc: Likewise.
	* testsuite/forward_list/cons/9.cc: Likewise.
	* testsuite/forward_list/cons/cons_size.cc: Likewise.
	* testsuite/forward_list/cons/moveable.cc: Likewise.
	* testsuite/forward_list/debug/clear.cc: Likewise.
	* testsuite/forward_list/debug/construct4_neg.cc: Likewise.
	* testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
	* testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
	* testsuite/forward_list/debug/move_constructor.cc: Likewise.
	* testsuite/forward_list/debug/move_neg.cc: Likewise.
	* testsuite/forward_list/debug/splice_after.cc: Likewise.
	* testsuite/forward_list/debug/swap.cc: Likewise.
	* testsuite/forward_list/modifiers/1.cc: Likewise.
	* testsuite/forward_list/modifiers/2.cc: Likewise.
	* testsuite/forward_list/modifiers/3.cc: Likewise.
	* testsuite/forward_list/modifiers/4.cc: Likewise.
	* testsuite/forward_list/modifiers/5.cc: Likewise.
	* testsuite/forward_list/modifiers/6.cc: Likewise.
	* testsuite/forward_list/operations/1.cc: Likewise.
	* testsuite/forward_list/operations/2.cc: Likewise.
	* testsuite/forward_list/operations/3.cc: Likewise.
	* testsuite/forward_list/operations/4.cc: Likewise.
	* testsuite/forward_list/operations/5.cc: Likewise.
	* testsuite/forward_list/operations/6.cc: Likewise.
	* testsuite/forward_list/operations/7.cc: Likewise.
	* testsuite/forward_list/operations/remove_freed.cc: Likewise.
	* testsuite/list/61347.cc: Likewise.
	* testsuite/list/allocator/copy.cc: Likewise.
	* testsuite/list/allocator/copy_assign.cc: Likewise.
	* testsuite/list/allocator/minimal.cc: Likewise.
	* testsuite/list/allocator/move.cc: Likewise.
	* testsuite/list/allocator/move_assign.cc: Likewise.
	* testsuite/list/allocator/swap.cc: Likewise.
	* testsuite/list/capacity/1.h: Likewise.
	* testsuite/list/capacity/29134.cc: Likewise.
	* testsuite/list/capacity/resize_size.cc: Likewise.
	* testsuite/list/cons/1.h: Likewise.
	* testsuite/list/cons/2.h: Likewise.
	* testsuite/list/cons/3.h: Likewise.
	* testsuite/list/cons/4.h: Likewise.
	* testsuite/list/cons/5.h: Likewise.
	* testsuite/list/cons/6.h: Likewise.
	* testsuite/list/cons/7.h: Likewise.
	* testsuite/list/cons/8.h: Likewise.
	* testsuite/list/cons/9.h: Likewise.
	* testsuite/list/cons/cons_size.cc: Likewise.
	* testsuite/list/cons/moveable.h: Likewise.
	* testsuite/list/debug/invalidation/1.cc: Likewise.
	* testsuite/list/debug/invalidation/2.cc: Likewise.
	* testsuite/list/debug/invalidation/3.cc: Likewise.
	* testsuite/list/debug/invalidation/4.cc: Likewise.
	* testsuite/list/modifiers/1.h: Likewise.
	* testsuite/list/modifiers/2.h: Likewise.
	* testsuite/list/modifiers/3.h: Likewise.
	* testsuite/list/modifiers/insert/25288.h: Likewise.
	* testsuite/list/modifiers/swap/1.h: Likewise.
	* testsuite/list/modifiers/swap/2.h: Likewise.
	* testsuite/list/modifiers/swap/3.h: Likewise.
	* testsuite/list/operations/1.h: Likewise.
	* testsuite/list/operations/2.h: Likewise.
	* testsuite/list/operations/3.h: Likewise.
	* testsuite/list/operations/4.h: Likewise.
	* testsuite/list/operations/42352.cc: Likewise.
	* testsuite/map/allocator/copy.cc: Likewise.
	* testsuite/map/allocator/copy_assign.cc: Likewise.
	* testsuite/map/allocator/init-list.cc: Likewise.
	* testsuite/map/allocator/minimal.cc: Likewise.
	* testsuite/map/allocator/move.cc: Likewise.
	* testsuite/map/allocator/move_assign.cc: Likewise.
	* testsuite/map/allocator/swap.cc: Likewise.
	* testsuite/map/capacity/29134.cc: Likewise.
	* testsuite/map/cons/moveable.cc: Likewise.
	* testsuite/map/debug/construct5_neg.cc: Likewise.
	* testsuite/map/debug/move_assign_neg.cc: Likewise.
	* testsuite/map/debug/move_neg.cc: Likewise.
	* testsuite/map/element_access/1.cc: Likewise.
	* testsuite/map/element_access/2.cc: Likewise.
	* testsuite/map/element_access/39901.cc: Likewise.
	* testsuite/map/init-list.cc: Likewise.
	* testsuite/map/modifiers/dr130.cc: Likewise.
	* testsuite/map/modifiers/emplace/1.cc: Likewise.
	* testsuite/map/modifiers/extract.cc: Likewise.
	* testsuite/map/modifiers/insert/1.cc: Likewise.
	* testsuite/map/modifiers/insert/16813.cc: Likewise.
	* testsuite/map/modifiers/insert/2.cc: Likewise.
	* testsuite/map/modifiers/insert/3.cc: Likewise.
	* testsuite/map/modifiers/insert/4.cc: Likewise.
	* testsuite/map/modifiers/insert/5.cc: Likewise.
	* testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
	* testsuite/map/modifiers/merge.cc: Likewise.
	* testsuite/map/modifiers/swap/1.cc: Likewise.
	* testsuite/map/modifiers/swap/2.cc: Likewise.
	* testsuite/map/modifiers/swap/3.cc: Likewise.
	* testsuite/map/modifiers/try_emplace/1.cc: Likewise.
	* testsuite/map/operations/1.cc: Likewise.
	* testsuite/map/operations/count.cc: Likewise.
	* testsuite/map/operators/1_neg.cc: Likewise.
	* testsuite/map/operators/2.cc: Likewise.
	* testsuite/multimap/allocator/copy.cc: Likewise.
	* testsuite/multimap/allocator/copy_assign.cc: Likewise.
	* testsuite/multimap/allocator/init-list.cc: Likewise.
	* testsuite/multimap/allocator/minimal.cc: Likewise.
	* testsuite/multimap/allocator/move.cc: Likewise.
	* testsuite/multimap/allocator/move_assign.cc: Likewise.
	* testsuite/multimap/allocator/swap.cc: Likewise.
	* testsuite/multimap/capacity/29134.cc: Likewise.
	* testsuite/multimap/cons/moveable.cc: Likewise.
	* testsuite/multimap/debug/construct5_neg.cc: Likewise.
	* testsuite/multimap/debug/move_assign_neg.cc: Likewise.
	* testsuite/multimap/debug/move_neg.cc: Likewise.
	* testsuite/multimap/init-list.cc: Likewise.
	* testsuite/multimap/modifiers/dr130.cc: Likewise.
	* testsuite/multimap/modifiers/emplace/1.cc: Likewise.
	* testsuite/multimap/modifiers/extract.cc: Likewise.
	* testsuite/multimap/modifiers/insert/1.cc: Likewise.
	* testsuite/multimap/modifiers/insert/2.cc: Likewise.
	* testsuite/multimap/modifiers/insert/22102.cc: Likewise.
	* testsuite/multimap/modifiers/insert/3.cc: Likewise.
	* testsuite/multimap/modifiers/insert/4.cc: Likewise.
	* testsuite/multimap/modifiers/merge.cc: Likewise.
	* testsuite/multimap/modifiers/swap/1.cc: Likewise.
	* testsuite/multimap/modifiers/swap/2.cc: Likewise.
	* testsuite/multimap/modifiers/swap/3.cc: Likewise.
	* testsuite/multimap/operations/1.cc: Likewise.
	* testsuite/multimap/operations/count.cc: Likewise.
	* testsuite/multiset/allocator/copy.cc: Likewise.
	* testsuite/multiset/allocator/copy_assign.cc: Likewise.
	* testsuite/multiset/allocator/init-list.cc: Likewise.
	* testsuite/multiset/allocator/minimal.cc: Likewise.
	* testsuite/multiset/allocator/move.cc: Likewise.
	* testsuite/multiset/allocator/move_assign.cc: Likewise.
	* testsuite/multiset/allocator/swap.cc: Likewise.
	* testsuite/multiset/capacity/29134.cc: Likewise.
	* testsuite/multiset/cons/moveable.cc: Likewise.
	* testsuite/multiset/debug/construct5_neg.cc: Likewise.
	* testsuite/multiset/debug/invalidation/2.cc: Likewise.
	* testsuite/multiset/debug/move_assign_neg.cc: Likewise.
	* testsuite/multiset/debug/move_neg.cc: Likewise.
	* testsuite/multiset/init-list.cc: Likewise.
	* testsuite/multiset/modifiers/dr130.cc: Likewise.
	* testsuite/multiset/modifiers/emplace/1.cc: Likewise.
	* testsuite/multiset/modifiers/extract.cc: Likewise.
	* testsuite/multiset/modifiers/insert/1.cc: Likewise.
	* testsuite/multiset/modifiers/insert/2.cc: Likewise.
	* testsuite/multiset/modifiers/insert/22102.cc: Likewise.
	* testsuite/multiset/modifiers/insert/3.cc: Likewise.
	* testsuite/multiset/modifiers/insert/4.cc: Likewise.
	* testsuite/multiset/modifiers/merge.cc: Likewise.
	* testsuite/multiset/modifiers/swap/1.cc: Likewise.
	* testsuite/multiset/modifiers/swap/2.cc: Likewise.
	* testsuite/multiset/modifiers/swap/3.cc: Likewise.
	* testsuite/multiset/operations/1.cc: Likewise.
	* testsuite/multiset/operations/count.cc: Likewise.
	* testsuite/priority_queue/moveable.cc: Likewise.
	* testsuite/queue/moveable.cc: Likewise.
	* testsuite/set/allocator/copy.cc: Likewise.
	* testsuite/set/allocator/copy_assign.cc: Likewise.
	* testsuite/set/allocator/init-list.cc: Likewise.
	* testsuite/set/allocator/minimal.cc: Likewise.
	* testsuite/set/allocator/move.cc: Likewise.
	* testsuite/set/allocator/move_assign.cc: Likewise.
	* testsuite/set/allocator/swap.cc: Likewise.
	* testsuite/set/capacity/29134.cc: Likewise.
	* testsuite/set/cons/moveable.cc: Likewise.
	* testsuite/set/debug/construct5_neg.cc: Likewise.
	* testsuite/set/debug/invalidation/2.cc: Likewise.
	* testsuite/set/debug/move_assign_neg.cc: Likewise.
	* testsuite/set/debug/move_neg.cc: Likewise.
	* testsuite/set/init-list.cc: Likewise.
	* testsuite/set/modifiers/17948.cc: Likewise.
	* testsuite/set/modifiers/dr130.cc: Likewise.
	* testsuite/set/modifiers/emplace/1.cc: Likewise.
	* testsuite/set/modifiers/extract.cc: Likewise.
	* testsuite/set/modifiers/insert/1.cc: Likewise.
	* testsuite/set/modifiers/insert/2.cc: Likewise.
	* testsuite/set/modifiers/insert/3.cc: Likewise.
	* testsuite/set/modifiers/merge.cc: Likewise.
	* testsuite/set/modifiers/swap/1.cc: Likewise.
	* testsuite/set/modifiers/swap/2.cc: Likewise.
	* testsuite/set/modifiers/swap/3.cc: Likewise.
	* testsuite/set/operations/1.cc: Likewise.
	* testsuite/set/operations/count.cc: Likewise.
	* testsuite/set/operators/1_neg.cc: Likewise.
	* testsuite/unordered_map/allocator/copy.cc: Likewise.
	* testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
	* testsuite/unordered_map/allocator/minimal.cc: Likewise.
	* testsuite/unordered_map/allocator/move.cc: Likewise.
	* testsuite/unordered_map/allocator/move_assign.cc: Likewise.
	* testsuite/unordered_map/allocator/swap.cc: Likewise.
	* testsuite/unordered_map/cons/moveable.cc: Likewise.
	* testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
	* testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
	* testsuite/unordered_map/debug/move_neg.cc: Likewise.
	* testsuite/unordered_map/dr761.cc: Likewise.
	* testsuite/unordered_map/erase/1.cc: Likewise.
	* testsuite/unordered_map/erase/24061-map.cc: Likewise.
	* testsuite/unordered_map/erase/54276.cc: Likewise.
	* testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
	* testsuite/unordered_map/init-list.cc: Likewise.
	* testsuite/unordered_map/insert/24061-map.cc: Likewise.
	* testsuite/unordered_map/insert/57619.C: Likewise.
	* testsuite/unordered_map/insert/array_syntax.cc: Likewise.
	* testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
	* testsuite/unordered_map/insert/map_range.cc: Likewise.
	* testsuite/unordered_map/insert/map_single.cc: Likewise.
	* testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
	* testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
	* testsuite/unordered_map/modifiers/61667.cc: Likewise.
	* testsuite/unordered_map/modifiers/emplace.cc: Likewise.
	* testsuite/unordered_map/modifiers/extract.cc: Likewise.
	* testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
	* testsuite/unordered_map/modifiers/merge.cc: Likewise.
	* testsuite/unordered_map/modifiers/reserve.cc: Likewise.
	* testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
	* testsuite/unordered_map/operations/count.cc: Likewise.
	* testsuite/unordered_map/operators/1.cc: Likewise.
	* testsuite/unordered_map/operators/2.cc: Likewise.
	* testsuite/unordered_multimap/allocator/copy.cc: Likewise.
	* testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
	* testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
	* testsuite/unordered_multimap/allocator/move.cc: Likewise.
	* testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
	* testsuite/unordered_multimap/allocator/swap.cc: Likewise.
	* testsuite/unordered_multimap/cons/moveable.cc: Likewise.
	* testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
	* testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
	* testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
	* testsuite/unordered_multimap/erase/1.cc: Likewise.
	* testsuite/unordered_multimap/erase/2.cc: Likewise.
	* testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
	* testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
	* testsuite/unordered_multimap/erase/54276.cc: Likewise.
	* testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
	* testsuite/unordered_multimap/init-list.cc: Likewise.
	* testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
	* testsuite/unordered_multimap/insert/51866.cc: Likewise.
	* testsuite/unordered_multimap/insert/52476.cc: Likewise.
	* testsuite/unordered_multimap/insert/53115.cc: Likewise.
	* testsuite/unordered_multimap/insert/57619.C: Likewise.
	* testsuite/unordered_multimap/insert/hint.cc: Likewise.
	* testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
	* testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
	* testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
	Likewise.
	* testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
	Likewise.
	* testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
	* testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
	* testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
	* testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
	* testsuite/unordered_multimap/operations/count.cc: Likewise.
	* testsuite/unordered_multimap/operators/1.cc: Likewise.
	* testsuite/unordered_multimap/operators/2.cc: Likewise.
	* testsuite/unordered_multiset/allocator/copy.cc: Likewise.
	* testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
	* testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
	* testsuite/unordered_multiset/allocator/move.cc: Likewise.
	* testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
	* testsuite/unordered_multiset/allocator/swap.cc: Likewise.
	* testsuite/unordered_multiset/cons/copy.cc: Likewise.
	* testsuite/unordered_multiset/cons/moveable.cc: Likewise.
	* testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
	* testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
	* testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
	* testsuite/unordered_multiset/erase/1.cc: Likewise.
	* testsuite/unordered_multiset/erase/2.cc: Likewise.
	* testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
	* testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
	* testsuite/unordered_multiset/init-list.cc: Likewise.
	* testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
	* testsuite/unordered_multiset/insert/51866.cc: Likewise.
	* testsuite/unordered_multiset/insert/52476.cc: Likewise.
	* testsuite/unordered_multiset/insert/53115.cc: Likewise.
	* testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
	* testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
	* testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
	* testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
	* testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
	* testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
	* testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
	* testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
	* testsuite/unordered_multiset/operations/count.cc: Likewise.
	* testsuite/unordered_multiset/operators/1.cc: Likewise.
	* testsuite/unordered_set/allocator/copy.cc: Likewise.
	* testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
	* testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
	* testsuite/unordered_set/allocator/minimal.cc: Likewise.
	* testsuite/unordered_set/allocator/move.cc: Likewise.
	* testsuite/unordered_set/allocator/move_assign.cc: Likewise.
	* testsuite/unordered_set/allocator/swap.cc: Likewise.
	* testsuite/unordered_set/buckets/swap.cc: Likewise.
	* testsuite/unordered_set/cons/moveable.cc: Likewise.
	* testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
	* testsuite/unordered_set/debug/debug_functions.cc: Likewise.
	* testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
	* testsuite/unordered_set/debug/move_neg.cc: Likewise.
	* testsuite/unordered_set/erase/1.cc: Likewise.
	* testsuite/unordered_set/erase/24061-set.cc: Likewise.
	* testsuite/unordered_set/hash_policy/26132.cc: Likewise.
	* testsuite/unordered_set/hash_policy/71181.cc: Likewise.
	* testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
	* testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
	* testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
	* testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
	* testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
	* testsuite/unordered_set/init-list.cc: Likewise.
	* testsuite/unordered_set/insert/24061-set.cc: Likewise.
	* testsuite/unordered_set/insert/hash_policy.cc: Likewise.
	* testsuite/unordered_set/insert/move_range.cc: Likewise.
	* testsuite/unordered_set/insert/set_range.cc: Likewise.
	* testsuite/unordered_set/insert/set_single.cc: Likewise.
	* testsuite/unordered_set/insert/set_single_move.cc: Likewise.
	* testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
	* testsuite/unordered_set/modifiers/emplace.cc: Likewise.
	* testsuite/unordered_set/modifiers/extract.cc: Likewise.
	* testsuite/unordered_set/modifiers/merge.cc: Likewise.
	* testsuite/unordered_set/modifiers/reserve.cc: Likewise.
	* testsuite/unordered_set/modifiers/swap.cc: Likewise.
	* testsuite/unordered_set/operations/count.cc: Likewise.
	* testsuite/unordered_set/operators/1.cc: Likewise.
	* testsuite/vector/allocator/copy.cc: Likewise.
	* testsuite/vector/allocator/copy_assign.cc: Likewise.
	* testsuite/vector/allocator/ext_ptr.cc: Likewise.
	* testsuite/vector/allocator/minimal.cc: Likewise.
	* testsuite/vector/allocator/move.cc: Likewise.
	* testsuite/vector/allocator/move_assign.cc: Likewise.
	* testsuite/vector/allocator/swap.cc: Likewise.
	* testsuite/vector/bool/6886.cc: Likewise.
	* testsuite/vector/bool/72847.cc: Likewise.
	* testsuite/vector/bool/allocator/copy.cc: Likewise.
	* testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
	* testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
	* testsuite/vector/bool/allocator/move.cc: Likewise.
	* testsuite/vector/bool/allocator/move_assign.cc: Likewise.
	* testsuite/vector/bool/allocator/swap.cc: Likewise.
	* testsuite/vector/bool/capacity/1.cc: Likewise.
	* testsuite/vector/bool/capacity/29134.cc: Likewise.
	* testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/vector/bool/cons/1.cc: Likewise.
	* testsuite/vector/bool/cons/2.cc: Likewise.
	* testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
	* testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
	* testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
	* testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
	* testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
	* testsuite/vector/bool/swap.cc: Likewise.
	* testsuite/vector/capacity/1.cc: Likewise.
	* testsuite/vector/capacity/2.cc: Likewise.
	* testsuite/vector/capacity/29134-2.cc: Likewise.
	* testsuite/vector/capacity/29134.cc: Likewise.
	* testsuite/vector/capacity/44190.cc: Likewise.
	* testsuite/vector/capacity/8230.cc: Likewise.
	* testsuite/vector/capacity/reserve/moveable.cc: Likewise.
	* testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
	* testsuite/vector/capacity/resize/1.cc: Likewise.
	* testsuite/vector/capacity/resize/moveable.cc: Likewise.
	* testsuite/vector/capacity/resize/moveable2.cc: Likewise.
	* testsuite/vector/capacity/resize/resize_size.cc: Likewise.
	* testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
	* testsuite/vector/cons/3.cc: Likewise.
	* testsuite/vector/cons/4.cc: Likewise.
	* testsuite/vector/cons/cons_size.cc: Likewise.
	* testsuite/vector/cons/moveable.cc: Likewise.
	* testsuite/vector/data_access/1.cc: Likewise.
	* testsuite/vector/debug/debug_functions.cc: Likewise.
	* testsuite/vector/debug/move_assign_neg.cc: Likewise.
	* testsuite/vector/debug/move_neg.cc: Likewise.
	* testsuite/vector/debug/multithreaded_swap.cc: Likewise.
	* testsuite/vector/element_access/1.cc: Likewise.
	* testsuite/vector/ext_pointer/citerators.cc: Likewise.
	* testsuite/vector/ext_pointer/data_access.cc: Likewise.
	* testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
	* testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
	* testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
	* testsuite/vector/ext_pointer/resize.cc: Likewise.
	* testsuite/vector/modifiers/1.cc: Likewise.
	* testsuite/vector/modifiers/2.cc: Likewise.
	* testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
	* testsuite/vector/modifiers/erase/1.cc: Likewise.
	* testsuite/vector/modifiers/erase/moveable.cc: Likewise.
	* testsuite/vector/modifiers/insert/1.cc: Likewise.
	* testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
	* testsuite/vector/modifiers/moveable.cc: Likewise.
	* testsuite/vector/modifiers/moveable2.cc: Likewise.
	* testsuite/vector/modifiers/push_back/49836.cc: Likewise.
	* testsuite/vector/modifiers/swap/1.cc: Likewise.
	* testsuite/vector/modifiers/swap/2.cc: Likewise.
	* testsuite/vector/modifiers/swap/3.cc: Likewise.
	* testsuite/vector/zero_sized_allocations.cc: Likewise.

From-SVN: r241241
2016-10-17 13:32:32 +00:00
Jonathan Wakely
594ef205ae Implement P0084R2, Emplace return type, for C++17
* doc/xml/manual/status_cxx2017.xml: Update status.
	* doc/html/*: Regenerate.
	* include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
	Return a reference in C++17 mode.
	* include/bits/forward_list.h (forward_list::emplace_front): Likewise.
	* include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
	* include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
	Likewise.
	* include/bits/stl_list.h (list::emplace_front, list::emplace_back):
	Likewise.
	* include/bits/stl_queue.h (queue::emplace): Likewise.
	* include/bits/stl_stack.h (stack::emplace): Likewise.
	* include/bits/stl_vector.h (vector::emplace_back): Likewise.
	* include/bits/vector.tcc (vector::emplace_back): Likewise.
	* include/debug/deque (__gnu_debug::deque::emplace_front)
	(__gnu_debug::deque::emplace_back): Likewise.
	* include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
	* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
	New.
	* testsuite/23_containers/forward_list/modifiers/
	emplace_cxx17_return.cc: New.
	* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
	* testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
	* testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
	* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
	* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
	New.

From-SVN: r241234
2016-10-17 13:00:38 +01:00
François Dumont
d8bbd665a1 debug.cc: Include debug/vector.
2016-09-25  François Dumont  <fdumont@gcc.gnu.org>

	* src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
	functional.
	(get_safe_base_mutex): Get mutex based on address lowest non nil bits.
	* testsuite/23_containers/vector/debug/mutex_association.cc: New.

From-SVN: r240479
2016-09-25 20:26:02 +00:00
Jonathan Wakely
0273c10e7b Fix testsuite to not increment bool
* testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
	-Wno-deprecated.
	* testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.

From-SVN: r240157
2016-09-15 11:18:38 +01:00
Marek Polacek
20a1e5b8c8 typeck.c (cp_build_unary_op): Diagnose incrementing boolean expressions.
* typeck.c (cp_build_unary_op): Diagnose incrementing boolean
	expressions.  Tweak an error message.

	* c-c++-common/gomp/atomic-12.c: Use -Wno-deprecated.
	* c-c++-common/gomp/atomic-13.c: Likewise.
	* c-c++-common/gomp/atomic-14.c: Likewise.
	* g++.dg/cpp1y/lambda-init11.C: Remove invalid code.
	* g++.dg/cpp1z/bool-increment1.C: New test.
	* c-c++-common/pr60439.c: Add dg-warning.
	* g++.dg/expr/bitfield4.C: Likewise.
	* g++.dg/expr/bitfield5.C: Likewise.
	* g++.dg/expr/bitfield6.C: Likewise.
	* g++.dg/expr/bool1.C: Likewise.
	* g++.dg/expr/bool3.C: Likewise.
	* g++.dg/expr/lval3.C: Likewise.
	* g++.dg/expr/lval4.C: Likewise.
	* g++.old-deja/g++.jason/bool5.C: Likewise.
	* g++.dg/expr/bitfield3.C: Adjust dg-error.
	* g++.dg/other/error18.C: Likewise.
	* g++.dg/gomp/atomic-14.C: Likewise.
libgomp/
	* testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
libstdc++-v3/
	* testsuite/23_containers/vector/debug/insert6_neg.cc: Use
	-Wno-deprecated.

From-SVN: r240141
2016-09-14 17:46:59 +00:00
Christophe Lyon
13cddbc115 Fix dg-require before dg-run directives in testsuite.
libstdc++-v3/ChangeLog:

2016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>

	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
	Move dg-do directive before dg-skip.
	* testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
	Move dg-do directive before dg-require.
	* testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
	* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
	* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
	Likewise.
	* testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
	* testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
	* testsuite/27_io/objects/char/12048-5.cc: Likewise.
	* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
	* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.

gcc/testsuite/ChangeLog:

2016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>

	* g++.dg/cpp0x/lambda/lambda-mangle.C: Move dg-do directive before
	dg-require.
	* g++.dg/ext/builtin_alloca.C: Likewise.
	* g++.dg/template/spec35.C: Likewise.
	* gcc.dg/builtins-68.c: Likewise.
	* gcc.misc-tests/gcov-13.c: Likewise.
	* gcc.misc-tests/gcov-14.c: Likewise.

From-SVN: r240135
2016-09-14 15:37:23 +02:00
Matthew Wahab
684211e11b [libstdc++-v3] Fix dg-require before dg-run directives in testsuite.
* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
	Move dg-do directive before dg-require.
	* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
	Likewise.
	* testsuite/22_locale/codecvt/utf8.cc: Likewise.
	* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
	* testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after4_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after5_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after6_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after7_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after8_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/erase_after9_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/insert_after4_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after4_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
	* testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/60499.cc: Likewise.
	* testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/60499.cc: Likewise.
	* testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/multimap/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/60499.cc: Likewise.
	* testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/multiset/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/multiset/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/60499.cc: Likewise.
	* testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/invalid_local_iterator_compare_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/invalid_local_iterator_range_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/debug/use_erased_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/debug/use_invalid_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/debug/use_invalid_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_compare_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/invalid_local_iterator_range_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/max_load_factor_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/use_erased_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/use_invalid_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/use_invalid_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/60499.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_compare_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/invalid_local_iterator_range_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/max_load_factor_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/use_erased_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/use_invalid_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/use_invalid_local_iterator_neg.cc:
	Likewise.
	*  testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/invalid_local_iterator_compare_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/invalid_local_iterator_range_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/use_erased_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/use_invalid_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/use_invalid_local_iterator_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/debug/52433.cc: Likewise.
	* testsuite/23_containers/vector/debug/60499.cc: Likewise.
	* testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/debug/iterator_self_move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/debug/self_move_assign_neg.cc: Likewise.
	* testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
	* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
	* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
	* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
	* testsuite/29_atomics/atomic/60658.cc: Likewise.
	* testsuite/29_atomics/atomic/60695.cc: Likewise.
	* testsuite/29_atomics/atomic/62259.cc: Likewise.
	* testsuite/29_atomics/atomic/64658.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: Likewise.

From-SVN: r240090
2016-09-12 09:03:50 +00:00
Jonathan Wakely
52066eae5d Use effective-target instead of -std options
* testsuite/*: Use { target c++11 } or { target c++14 } instead of
	using -std in dg-options.

From-SVN: r239777
2016-08-26 12:41:37 +01:00
Jonathan Wakely
71c54f8ea2 Simplify dg-options for tests using pthreads
* testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
	*-*-solaris* instead of -pthreads.
	* testsuite/21_strings/basic_string/pthread4.cc : Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
	* testsuite/23_containers/list/pthread1.cc: Likewise.
	* testsuite/23_containers/list/pthread5.cc: Likewise.
	* testsuite/23_containers/map/pthread6.cc: Likewise.
	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
	* testsuite/30_threads/shared_mutex/*: Likewise.
	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
	default_weaktoshared.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
	mutex_weaktoshared.cc: Likewise.
	* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
	dg-require-effective-target instead of using -std option.
	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc:
	Likewise.
	* testsuite/30_threads/async/*: Likewise.
	* testsuite/30_threads/call_once/*: Likewise.
	* testsuite/30_threads/condition_variable/*: Likewise.
	* testsuite/30_threads/condition_variable_any/*: Likewise.
	* testsuite/30_threads/future/*: Likewise.
	* testsuite/30_threads/lock/*: Likewise.
	* testsuite/30_threads/mutex/*: Likewise.
	* testsuite/30_threads/packaged_task/*: Likewise.
	* testsuite/30_threads/promise/*: Likewise.
	* testsuite/30_threads/recursive_mutex/*: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/*: Likewise.
	* testsuite/30_threads/shared_future/*: Likewise.
	* testsuite/30_threads/shared_lock/*: Likewise.
	* testsuite/30_threads/shared_timed_mutex/*: Likewise.
	* testsuite/30_threads/this_thread/*: Likewise.
	* testsuite/30_threads/thread/*: Likewise.
	* testsuite/30_threads/timed_mutex/*: Likewise.
	* testsuite/30_threads/try_lock/*: Likewise.
	* testsuite/30_threads/unique_lock/*: Likewise.

From-SVN: r239624
2016-08-19 17:36:07 +01:00
Jonathan Wakely
32917686b0 PR 72847 Prevent double-free in std::vector<bool>
PR libstdc++/72847
	* include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
	pointers to start and end of storage.
	* testsuite/23_containers/vector/bool/72847.cc: New test.
	* include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
	_M_finish after deallocating.
	(vector<bool>::_M_fill_insert): Likewise.
	(vector<bool>::_M_insert_range): Likewise.
	(vector<bool>::_M_insert_aux): Likewise.

From-SVN: r239497
2016-08-16 12:33:16 +01:00
Jonathan Wakely
1a2196e484 Fix DR 438 container tests to pass in C++98 mode
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-prune-output pattern for error in C++98 mode.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r238837
2016-07-28 22:00:45 +01:00
Jonathan Wakely
e539b4ff2f Fix std::vector test to pass in C++98 mode
* testsuite/23_containers/vector/check_construct_destroy.cc: Account
	for different construct/destroy counts in C++98 mode.

From-SVN: r238836
2016-07-28 22:00:39 +01:00
Jonathan Wakely
509b778f6c Define missing delete operators in libstdc++ testsuite
* testsuite/23_containers/vector/zero_sized_allocations.cc:
	Define sized deallocation function.
	* testsuite/util/testsuite_new_operators.h:
	(operator delete(void*, const std::nothrow_t&)): Define nothrow
	deallocation function.

From-SVN: r238610
2016-07-21 20:38:57 +01:00
Jonathan Wakely
17b31c054c Add std::vector::emplace() testcase from LWG 2164
* testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
	Add testcase from LWG 2164.

From-SVN: r238243
2016-07-12 15:00:11 +01:00
François Dumont
76225d2ca7 stl_vector.h (push_back(const value_type&)): Forward to _M_realloc_insert.
2016-07-11  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/stl_vector.h (push_back(const value_type&)): Forward
	to _M_realloc_insert.
	(insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
	(_M_realloc_insert): Declare new function.
	(_M_emplace_back_aux): Remove definition.
	* include/bits/vector.tcc (emplace_back(_Args...)):
	Use _M_realloc_insert.
	(insert(const_iterator, const value_type&)): Likewise.
	(_M_insert_rval, _M_emplace_aux): Likewise.
	(_M_emplace_back_aux): Remove declaration.
	(_M_realloc_insert): Define.
	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
	Adjust expected results for emplacing an lvalue with reallocation.

From-SVN: r238226
2016-07-11 20:17:56 +00:00
Jonathan Wakely
d81102f473 * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
From-SVN: r238169
2016-07-08 17:35:10 +01:00
François Dumont
097e899495 Add tests for inserting aliased objects into std::vector
2016-07-04  François Dumont  <fdumont@gcc.gnu.org>

	* testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
	New test.
	* testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
	test.

From-SVN: r237986
2016-07-04 15:52:54 +01:00
Jonathan Wakely
9958c7eb58 Fix std::vector's use of temporary objects
* include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
	Define inline. Forward to _M_emplace_aux.
	(insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
	(_M_insert_rval, _M_emplace_aux): Declare new functions.
	(_Temporary_value): New RAII type using allocator to construct/destroy.
	(_S_insert_aux_assign): Remove.
	(_M_insert_aux): Make non-variadic.
	* include/bits/vector.tcc (insert(const_iterator, const value_type&)):
	Use _Temporary_value.
	(emplace(const_iterator, _Args&&...)): Remove definition.
	(_M_insert_rval, _M_emplace_aux): Define.
	(_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
	(_M_fill_insert): Use _Temporary_value.
	* testsuite/23_containers/vector/allocator/construction.cc: New test.
	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
	Adjust expected results for emplacing an lvalue with reallocation.
	* testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
	expected results to account for construction/destruction of temporary
	using allocator.

From-SVN: r237985
2016-07-04 15:52:46 +01:00
Jonathan Wakely
0ae207e947 Optimize inserting value_type into std::vector
* include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
	new overloaded functions.
	* include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
	to avoid creating a redundant temporary.
	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
	test.

From-SVN: r237526
2016-06-16 13:42:21 +01:00
Jakub Jelinek
818ab71a41 Update copyright years.
From-SVN: r232055
2016-01-04 15:30:50 +01:00
David Edelsohn
3b58931386 * testsuite/23_containers/vector/profile/vector.cc: Add maxdata option on AIX.
From-SVN: r230701
2015-11-21 00:38:25 -05:00
Sebastian Huber
37d13ae648 libstdc++: Run tests on RTEMS
libstdc++-v3/ChangeLog

	* testsuite/18_support/pthread_guard.cc: Add *-*-rtems* target
	selector to all lines which contain a *-*-cygwin target selector.
	* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise.
	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread33394.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
	* testsuite/23_containers/list/pthread1.cc: Likewise.
	* testsuite/23_containers/list/pthread5.cc: Likewise.
	* testsuite/23_containers/map/pthread6.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
	* testsuite/30_threads/async/42819.cc: Likewise.
	* testsuite/30_threads/async/49668.cc: Likewise.
	* testsuite/30_threads/async/54297.cc: Likewise.
	* testsuite/30_threads/async/any.cc: Likewise.
	* testsuite/30_threads/async/async.cc: Likewise.
	* testsuite/30_threads/async/launch.cc: Likewise.
	* testsuite/30_threads/async/lwg2021.cc: Likewise.
	* testsuite/30_threads/async/sync.cc: Likewise.
	* testsuite/30_threads/call_once/39909.cc: Likewise.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/60497.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/condition_variable/54185.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
	* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
	* testsuite/30_threads/future/cons/move.cc: Likewise.
	* testsuite/30_threads/future/members/45133.cc: Likewise.
	* testsuite/30_threads/future/members/get.cc: Likewise.
	* testsuite/30_threads/future/members/get2.cc: Likewise.
	* testsuite/30_threads/future/members/share.cc: Likewise.
	* testsuite/30_threads/future/members/valid.cc: Likewise.
	* testsuite/30_threads/future/members/wait.cc: Likewise.
	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/lock/1.cc: Likewise.
	* testsuite/30_threads/lock/2.cc: Likewise.
	* testsuite/30_threads/lock/3.cc: Likewise.
	* testsuite/30_threads/lock/4.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
	* testsuite/30_threads/packaged_task/60564.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
	Likewise.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
	* testsuite/30_threads/promise/60966.cc: Likewise.
	* testsuite/30_threads/promise/cons/1.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
	* testsuite/30_threads/promise/cons/move.cc: Likewise.
	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
	* testsuite/30_threads/promise/members/swap.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
	* testsuite/30_threads/shared_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/this_thread/1.cc: Likewise.
	* testsuite/30_threads/this_thread/2.cc: Likewise.
	* testsuite/30_threads/this_thread/3.cc: Likewise.
	* testsuite/30_threads/this_thread/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/1.cc: Likewise.
	* testsuite/30_threads/thread/cons/2.cc: Likewise.
	* testsuite/30_threads/thread/cons/3.cc: Likewise.
	* testsuite/30_threads/thread/cons/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
	* testsuite/30_threads/thread/cons/5.cc: Likewise.
	* testsuite/30_threads/thread/cons/6.cc: Likewise.
	* testsuite/30_threads/thread/cons/7.cc: Likewise.
	* testsuite/30_threads/thread/cons/8.cc: Likewise.
	* testsuite/30_threads/thread/cons/9.cc: Likewise.
	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
	* testsuite/30_threads/thread/members/1.cc: Likewise.
	* testsuite/30_threads/thread/members/2.cc: Likewise.
	* testsuite/30_threads/thread/members/3.cc: Likewise.
	* testsuite/30_threads/thread/members/4.cc: Likewise.
	* testsuite/30_threads/thread/members/5.cc: Likewise.
	* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
	* testsuite/30_threads/thread/swap/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/3.cc: Likewise.
	* testsuite/30_threads/try_lock/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
	Likewise.

From-SVN: r227429
2015-09-03 05:45:33 +00:00
François Dumont
5bc1c07c4a stl_algobase.h (__miter_base): Move...
2015-07-16  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/stl_algobase.h (__miter_base): Move...
	* include/bits/cpp_type_traits.h: ...here.
	* include/debug/functions.h (__foreign_iterator_aux): Use latter.
	* testsuite/23_containers/vector/debug/insert7_neg.cc: New.

From-SVN: r225902
2015-07-16 19:17:26 +00:00
Jonathan Wakely
c5d9ec5670 c++config (_GLIBCXX_NOEXCEPT_IF): Define.
* include/bits/c++config (_GLIBCXX_NOEXCEPT_IF): Define.
	* include/bits/forward_list.h (forward_list::swap): Make noexcept
	unconditional.
	* include/bits/hashtable.h (_Hashtable::swap): Do not use
	_S_nothrow_swap().
	* include/bits/stl_bvector.h (vector<bool>::swap): Make noexcept
	unconditional.
	* include/bits/stl_deque.h (deque::swap): Likewise.
	(swap(deque&, deque&)): Use _GLIBCXX_NOEXCEPT_IF.
	* include/bits/stl_list.h (list::swap): Make noexcept unconditional.
	(swap(list&, list&)): Use _GLIBCXX_NOEXCEPT_IF.
	* include/bits/stl_map.h (map::swap, swap(map&, map&)): Use
	_GLIBCXX_NOEXCEPT_IF, do not depend on _S_nothrow_swap.
	* include/bits/stl_multimap.h (multimap::swap,
	swap(multimap&, multimap&)): Likewise.
	* include/bits/stl_multiset.h (multiset::swap,
	swap(multiset&, multiset&)): Likewise.
	* include/bits/stl_set.h (set::swap, swap(set&, set&)): Likewise.
	* include/bits/stl_tree.h (_Rb_tree::swap,
	swap(_Rb_tree&, _Rb_tree&)): Likewise.
	* include/bits/stl_vector.h (vector::swap): Make noexcept
	unconditional.
	(swap(vector&, vector&)): Use _GLIBCXX_NOEXCEPT_IF.
	* include/debug/deque (deque::swap, swap): Likewise.
	* include/debug/forward_list (swap): Add noexcept.
	* include/debug/list (list::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
	* include/debug/map.h (map::swap, swap): Likewise.
	* include/debug/multimap.h (multimap::swap, swap): Likewise.
	* include/debug/multiset.h (multiset::Swap, swap): Likewise.
	* include/debug/set.h (set::swap, swap): Likewise.
	* include/debug/unordered_map (unordered_map::swap,
	unordered_multimap::swap, swap): Likewise.
	* include/debug/unordered_set (unordered_set::swap,
	unordered_multiset::swap, swap): Likewise.
	* include/debug/vector (vector::swap, swap): Likewise.
	* include/ext/alloc_traits.h (__alloc_traits::_S_nothrow_swap()):
	Remove.
	* include/profile/deque (deque::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
	* include/profile/forward_list (swap): Add noexcept.
	* include/profile/list (list::swap, swap) : Use _GLIBCXX_NOEXCEPT_IF.
	* include/profile/map.h (map::swap, swap): Likewise.
	* include/profile/multimap.h (multimap::swap, swap): Likewise.
	* include/profile/multiset.h (multiset::swap, swap): Likewise.
	* include/profile/set.h (set::swap, swap): Likewise.
	* include/profile/unordered_map (swap): Likewise.
	* include/profile/unordered_set (swap): Likewise.
	* include/profile/vector (vector::swap, swap): Likewise. Remove
	overloads for swapping rvalues.
	* testsuite/23_containers/deque/allocator/noexcept.cc: Update tests
	for noexcept on swap.
	* testsuite/23_containers/forward_list/allocator/noexcept.cc:
	Likewise.
	* testsuite/23_containers/list/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/map/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/multimap/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/multiset/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/set/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/noexcept.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/allocator/noexcept.cc:
	Likewise.
	* testsuite/23_containers/vector/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/vector/bool/allocator/noexcept.cc: Likewise.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line
	number.

From-SVN: r225744
2015-07-13 18:15:48 +01:00
Jonathan Wakely
a2b5fdcbdb Implement N4258 (Cleaning-up noexcept in the Library rev 3)
* doc/xml/manual/intro.xml: Document LWG 2108 status.
	* include/bits/alloc_traits.h (allocator_traits::is_always_equal):
	Define.
	* include/bits/allocator.h (allocator::is_always_equal): Likewise.
	* include/bits/forward_list.h
	(forward_list::operator=(forward_list&&)): Use __bool_constant.
	(forward_list::swap(forward_list&)): Add noexcept.
	* include/bits/hashtable.h (_Hashtable::operator=(_Hashtable&&)):
	Likewise.
	(_Hashtable::swap(_Hashtable&)): Likewise.
	* include/bits/stl_deque.h (_Deque_base::_Deque_base(_Deque_base&&)):
	Use _Alloc_traits::is_always_equal.
	(deque::operator=(deque&&)): Likewise.
	(deque::_M_move_assign1(deque&&, false_type)): Add comment and use
	__bool_constant.
	(swap(deque&, deque&)): Add noexcept.
	* include/bits/stl_list.h (list::operator=(list&&)): Use
	__bool_constant.
	(swap(list&, list&)): Add noexcept.
	* include/bits/stl_map.h (map::swap(map&)): Include _Compare in
	noexcept.
	(swap(map&, map&)): Add noexcept.
	* include/bits/stl_multimap.h (multimap::swap(multimap&)): Include
	_Compare in noexcept.
	(swap(multimap&, multimap&)): Add noexcept.
	* include/bits/stl_multiset.h (multiset::swap(multiset&)): Include
	_Compare in noexcept.
	(swap(multiset&, multiset&)): Add noexcept.
	* include/bits/stl_set.h (set::swap(set&)): Include _Compare in
	noexcept.
	(swap(set&, set&)): Add noexcept.
	* include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Include
	_Compare in noexcept.
	(_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_alloc_type&&)): Use
	is_always_equal.
	* include/bits/stl_vector.h (vector::operator=(vector&&)): Use
	__bool_constant.
	(swap(vector&, vector&)): Add noexcept.
	* include/bits/unordered_map.h (swap(unordered_map&, unordered_map&),
	swap(unordered_multimap& unordered_multimap&)): Add noexcept.
	* include/bits/unordered_set.h (swap(unordered_set&, unordered_set&),
	swap(unordered_multiset& unordered_multiset&)): Add noexcept.
	* include/ext/alloc_traits.h (__allocator_always_compares_equal):
	Remove.
	(__alloc_traits::_S_always_equal()): Use is_always_equal instead of
	__allocator_always_compares_equal.
	* include/ext/array_allocator.h (array_allocator::is_always_equal):
	Define.
	* include/std/scoped_allocator (__any_of, __propagate_on_copy,
	__propagate_on_move, __propagate_on_swap): Remove.
	(scoped_allocator_adaptor::propagate_on_container_copy_assignment,
	scoped_allocator_adaptor::propagate_on_container_move_assignment,
	scoped_allocator_adaptor::propagate_on_container_swap): Define with
	__and_ instead of __any_of.
	(scoped_allocator_adaptor::is_always_equal): Define.
	* testsuite/20_util/allocator_traits/members/is_always_equal.cc: New.
	* testsuite/20_util/scoped_allocator/propagation.cc: Make traits
	derive from true_type or false_type.
	* testsuite/23_containers/deque/allocator/move_assign-2.cc: Add
	is_always_equal member and remove the trait specialization.
	* testsuite/23_containers/vector/52591.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r225081
2015-06-26 21:10:24 +01:00
Jonathan Wakely
793cac74e9 re PR libstdc++/66078 (20_util/specialized_algorithms/uninitialized_copy/808590.cc fails with -std=c++11)
PR libstdc++/66078
	* include/bits/stl_iterator.h (__make_move_if_noexcept_iterator): Add
	overload for pointers.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	808590.cc: Add -std=gnu++03 switch.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	808590-cxx11.cc: Copy of 808590.cc to test with -std=gnu++11.
	* testsuite/23_containers/vector/modifiers/push_back/
	strong_guarantee.cc: New.

From-SVN: r223449
2015-05-20 18:11:03 +01:00
Jason Merrill
f8356d52f2 std_c++0x_neg.cc: Add -std=c++98.
* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
	* testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust expected errors.
	* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:  Likewise.
	* testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_allocate_max_size.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_deallocate_null.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
	* testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Add -std=c++98 -fno-show-column.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc: Add -std=c++98.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Add -std=c++98.
	* testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
	* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.

From-SVN: r222965
2015-05-09 00:50:30 -04:00
Jakub Jelinek
5624e564d2 Update copyright years.
From-SVN: r219188
2015-01-05 13:33:28 +01:00
François Dumont
a5ebfd3e2a vector (std::__debug::vector<>::clear()): Do not reset guaranteed capacity.
2014-12-20  François Dumont  <fdumont@gcc.gnu.org>

	* include/debug/vector (std::__debug::vector<>::clear()): Do not reset
	guaranteed capacity.
	* testsuite/23_containers/vector/bool/allocator/swap.cc: Move
	propagating_allocator equality and inequality operators to __gnu_test
	namespace.

From-SVN: r218991
2014-12-20 19:16:03 +00:00
Jonathan Wakely
ccd615e3fd Make std::vector<bool> meet C++11 allocator requirements.
* include/bits/stl_bvector.h (_Bvector_base): Use allocator_traits.
	(_Bvector_base::_Bvector_impl): Use allocator's pointer type.
	(_Bvector_base::_M_end_addr()): Convert to raw pointer.
	(vector<bool>): Use allocator_traits and _M_end_addr. Add allocator
	extended constructors.
	* include/bits/vector.tcc (vector<bool>): Use allocator_traits and
	_M_end_addr.
	* testsuite/23_containers/vector/bool/allocator/copy.cc: New.
	* testsuite/23_containers/vector/bool/allocator/minimal.cc: New.
	* testsuite/23_containers/vector/bool/allocator/noexcept.cc: New.
	* testsuite/23_containers/vector/bool/allocator/copy_assign.cc: New.
	* testsuite/23_containers/vector/bool/allocator/move.cc: New.
	* testsuite/23_containers/vector/bool/allocator/swap.cc: New.
	* testsuite/23_containers/vector/bool/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/vector/bool/allocator/move_assign.cc: New.

From-SVN: r216988
2014-10-31 20:49:40 +00:00
Paolo Carlini
4415f7a538 libstdc++.exp: Prefer -std=gnu++11.
2014-10-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/lib/libstdc++.exp: Prefer -std=gnu++11.
	* testsuite/20_util/add_lvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/add_rvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/addressof/1.cc: Likewise.
	* testsuite/20_util/addressof/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/aligned_storage/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/aligned_storage/value.cc: Likewise.
	* testsuite/20_util/allocator_traits/members/
	allocate_hint.cc: Likewise.
	* testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
	* testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
	* testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
	* testsuite/20_util/allocator_traits/members/select.cc: Likewise.
	* testsuite/20_util/allocator_traits/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/allocator_traits/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/bad_function_call/
	cons_virtual_derivation.cc: Likewise.
	* testsuite/20_util/bind/35569.cc: Likewise.
	* testsuite/20_util/bind/38889.cc: Likewise.
	* testsuite/20_util/bind/42593.cc: Likewise.
	* testsuite/20_util/bind/45924.cc: Likewise.
	* testsuite/20_util/bind/48698.cc: Likewise.
	* testsuite/20_util/bind/49058_1.cc: Likewise.
	* testsuite/20_util/bind/49058_2.cc: Likewise.
	* testsuite/20_util/bind/all_bound.cc: Likewise.
	* testsuite/20_util/bind/conv_result.cc: Likewise.
	* testsuite/20_util/bind/cv_quals.cc: Likewise.
	* testsuite/20_util/bind/cv_quals_2.cc: Likewise.
	* testsuite/20_util/bind/cv_quals_3.cc: Likewise.
	* testsuite/20_util/bind/move.cc: Likewise.
	* testsuite/20_util/bind/nested.cc: Likewise.
	* testsuite/20_util/bind/placeholders.cc: Likewise.
	* testsuite/20_util/bind/ref.cc: Likewise.
	* testsuite/20_util/bind/ref2.cc: Likewise.
	* testsuite/20_util/bind/ref_neg.cc: Likewise.
	* testsuite/20_util/bind/socket.cc: Likewise.
	* testsuite/20_util/common_type/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/common_type/requirements/
	typedefs-1.cc: Likewise.
	* testsuite/20_util/conditional/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/conditional/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/decay/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/declval/requirements/1.cc: Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
	* testsuite/20_util/default_delete/48631_neg.cc: Likewise.
	* testsuite/20_util/default_delete/cons/constexpr.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/2.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/constexpr.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr934-1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
	* testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
	* testsuite/20_util/duration/comparison_operators/
	constexpr.cc: Likewise.
	* testsuite/20_util/duration/cons/1.cc: Likewise.
	* testsuite/20_util/duration/cons/1_neg.cc: Likewise.
	* testsuite/20_util/duration/cons/2.cc: Likewise.
	* testsuite/20_util/duration/cons/constexpr.cc: Likewise.
	* testsuite/20_util/duration/cons/dr974_neg.cc: Likewise.
	* testsuite/20_util/duration/requirements/
	constexpr_functions.cc: Likewise.
	* testsuite/20_util/duration/requirements/
	explicit_instantiation/explicit_instantiation.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
	* testsuite/20_util/duration_cast/constexpr.cc: Likewise.
	* testsuite/20_util/enable_if/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
	* testsuite/20_util/enable_shared_from_this/cons/constexpr.cc: Likewise.
	* testsuite/20_util/enable_shared_from_this/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/forward/1.cc: Likewise.
	* testsuite/20_util/forward/1_neg.cc: Likewise.
	* testsuite/20_util/forward/a.cc: Likewise.
	* testsuite/20_util/forward/b.cc: Likewise.
	* testsuite/20_util/forward/c_neg.cc: Likewise.
	* testsuite/20_util/forward/d.cc: Likewise.
	* testsuite/20_util/forward/e.cc: Likewise.
	* testsuite/20_util/forward/f_neg.cc: Likewise.
	* testsuite/20_util/forward/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/function/1.cc: Likewise.
	* testsuite/20_util/function/10.cc: Likewise.
	* testsuite/20_util/function/2.cc: Likewise.
	* testsuite/20_util/function/3.cc: Likewise.
	* testsuite/20_util/function/4.cc: Likewise.
	* testsuite/20_util/function/43397.cc: Likewise.
	* testsuite/20_util/function/48541.cc: Likewise.
	* testsuite/20_util/function/5.cc: Likewise.
	* testsuite/20_util/function/6.cc: Likewise.
	* testsuite/20_util/function/7.cc: Likewise.
	* testsuite/20_util/function/8.cc: Likewise.
	* testsuite/20_util/function/9.cc: Likewise.
	* testsuite/20_util/function/assign/move.cc: Likewise.
	* testsuite/20_util/function/assign/move_target.cc: Likewise.
	* testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
	* testsuite/20_util/function/cons/55320.cc: Likewise.
	* testsuite/20_util/function/cons/addressof.cc: Likewise.
	* testsuite/20_util/function/cons/callable.cc: Likewise.
	* testsuite/20_util/function/cons/move.cc: Likewise.
	* testsuite/20_util/function/cons/move_target.cc: Likewise.
	* testsuite/20_util/function/invoke/move_only.cc: Likewise.
	* testsuite/20_util/function/null_pointer_comparisons.cc: Likewise.
	* testsuite/20_util/function/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/function_objects/mem_fn/adl.cc: Likewise.
	* testsuite/20_util/has_trivial_copy_assign/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/has_trivial_copy_assign/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/has_trivial_copy_constructor/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/has_trivial_copy_constructor/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/has_trivial_default_constructor/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/has_trivial_default_constructor/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
	* testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
	* testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
	* testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
	* testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
	* testsuite/20_util/hash/operators/size_t.cc: Likewise.
	* testsuite/20_util/hash/quality.cc: Likewise.
	* testsuite/20_util/hash/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/headers/functional/types_std_c++0x.cc: Likewise.
	* testsuite/20_util/headers/functional/
	using_namespace_std_placeholders.cc: Likewise.
	* testsuite/20_util/headers/memory/types_std_c++0x.cc: Likewise.
	* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Likewise.
	* testsuite/20_util/headers/type_traits/
	types_std_c++0x_neg.cc: Likewise.
	* testsuite/20_util/is_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_assignable/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_assignable/value.cc: Likewise.
	* testsuite/20_util/is_compound/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_constructible/51185.cc: Likewise.
	* testsuite/20_util/is_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_constructible/value-2.cc: Likewise.
	* testsuite/20_util/is_convertible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_convertible/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_copy_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_copy_assignable/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_copy_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_copy_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_default_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_default_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_default_constructible/value.cc: Likewise.
	* testsuite/20_util/is_destructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_destructible/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_destructible/value.cc: Likewise.
	* testsuite/20_util/is_floating_point/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_floating_point/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_function/24808.cc: Likewise.
	* testsuite/20_util/is_function/35637.cc: Likewise.
	* testsuite/20_util/is_function/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_fundamental/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_integral/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_integral/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_literal_type/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_literal_type/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_lvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_lvalue_reference/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_member_function_pointer/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_member_function_pointer/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_member_object_pointer/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_member_object_pointer/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_member_pointer/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_member_pointer/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_move_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_move_assignable/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_move_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_move_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_assignable/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_assignable/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_copy_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_default_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_default_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_destructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_destructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_destructible/value.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_assignable/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_assignable/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_constructible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_nothrow_move_constructible/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_object/24808.cc: Likewise.
	* testsuite/20_util/is_object/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_pod/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_rvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_rvalue_reference/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_scalar/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_scalar/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_signed/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_standard_layout/requiremenents/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_standard_layout/requiremenents/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_trivial/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_trivial/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_unsigned/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
	* testsuite/20_util/make_unsigned/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/make_unsigned/requirements/
	typedefs_neg.cc: Likewise.
	* testsuite/20_util/move/1.cc: Likewise.
	* testsuite/20_util/move/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/owner_less/cmp.cc: Likewise.
	* testsuite/20_util/pair/44487.cc: Likewise.
	* testsuite/20_util/pair/astuple/get.cc: Likewise.
	* testsuite/20_util/pair/comparison_operators/constexpr.cc: Likewise.
	* testsuite/20_util/pair/cons/constexpr.cc: Likewise.
	* testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/20_util/pair/constexpr_get.cc: Likewise.
	* testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
	* testsuite/20_util/pair/moveable.cc: Likewise.
	* testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
	* testsuite/20_util/pair/noexcept_swap.cc: Likewise.
	* testsuite/20_util/pair/piecewise.cc: Likewise.
	* testsuite/20_util/pair/piecewise2.cc: Likewise.
	* testsuite/20_util/pair/requirements/dr801.cc: Likewise.
	* testsuite/20_util/pair/swap.cc: Likewise.
	* testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
	* testsuite/20_util/pointer_traits/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/pointer_traits/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
	* testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
	* testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
	* testsuite/20_util/ratio/cons/cons1.cc: Likewise.
	* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
	* testsuite/20_util/ratio/operations/45866.cc: Likewise.
	* testsuite/20_util/ratio/operations/47913.cc: Likewise.
	* testsuite/20_util/ratio/operations/53840.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops1.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops2.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops3.cc: Likewise.
	* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
	* testsuite/20_util/ratio/requirements/constexpr_data.cc: Likewise.
	* testsuite/20_util/reference_wrapper/24803.cc: Likewise.
	* testsuite/20_util/reference_wrapper/41792.cc: Likewise.
	* testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
	* testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
	* testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
	* testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
	* testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
	* testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
	* testsuite/20_util/reference_wrapper/typedefs.cc: Likewise.
	* testsuite/20_util/remove_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/result_of/1.cc: Likewise.
	* testsuite/20_util/result_of/2.cc: Likewise.
	* testsuite/20_util/scoped_allocator/1.cc: Likewise.
	* testsuite/20_util/scoped_allocator/2.cc: Likewise.
	* testsuite/20_util/scoped_allocator/propagation.cc: Likewise.
	* testsuite/20_util/scoped_allocator/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/scoped_allocator/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/dr541.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/
	unique_ptr_lvalue_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
	* testsuite/20_util/shared_ptr/casts/1.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/42925.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/dr1401.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/39405.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/46910.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/51365.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/52924.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/55123.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/alloc_min.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/constexpr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/
	unique_ptr_deleter_ref_1.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/
	unique_ptr_deleter_ref_2.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/36949.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/alloc_min.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
	* testsuite/20_util/shared_ptr/creation/private.cc: Likewise.
	* testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
	* testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
	* testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
	* testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
	* testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
	* testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/24805.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
	* testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
	* testsuite/20_util/shared_ptr/thread/
	default_weaktoshared.cc: Likewise.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
	move_iterators/1.cc: Likewise.
	* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
	move_iterators/1.cc: Likewise.
	* testsuite/20_util/steady_clock/constexpr_data.cc: Likewise.
	* testsuite/20_util/system_clock/1.cc: Likewise.
	* testsuite/20_util/system_clock/constexpr_data.cc: Likewise.
	* testsuite/20_util/time_point/1.cc: Likewise.
	* testsuite/20_util/time_point/2.cc: Likewise.
	* testsuite/20_util/time_point/3.cc: Likewise.
	* testsuite/20_util/time_point/comparison_operators/
	constexpr.cc: Likewise.
	* testsuite/20_util/time_point/cons/constexpr.cc: Likewise.
	* testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
	* testsuite/20_util/time_point/requirements/
	constexpr_functions.cc: Likewise.
	* testsuite/20_util/time_point/requirements/
	explicit_instantiation/explicit_instantiation.cc: Likewise.
	* testsuite/20_util/time_point_cast/constexpr.cc: Likewise.
	* testsuite/20_util/tuple/48476.cc: Likewise.
	* testsuite/20_util/tuple/51365.cc: Likewise.
	* testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
	* testsuite/20_util/tuple/comparison_operators/
	comparisons.cc: Likewise.
	* testsuite/20_util/tuple/comparison_operators/constexpr.cc: Likewise.
	* testsuite/20_util/tuple/cons/41530.cc: Likewise.
	* testsuite/20_util/tuple/cons/44487.cc: Likewise.
	* testsuite/20_util/tuple/cons/45228.cc: Likewise.
	* testsuite/20_util/tuple/cons/48476.cc: Likewise.
	* testsuite/20_util/tuple/cons/allocators.cc: Likewise.
	* testsuite/20_util/tuple/cons/assignment.cc: Likewise.
	* testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
	* testsuite/20_util/tuple/cons/constexpr-2.cc: Likewise.
	* testsuite/20_util/tuple/cons/constexpr-3.cc: Likewise.
	* testsuite/20_util/tuple/cons/constructor.cc: Likewise.
	* testsuite/20_util/tuple/cons/converting.cc: Likewise.
	* testsuite/20_util/tuple/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/
	forward_as_tuple.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
	* testsuite/20_util/tuple/creation_functions/tuple_cat.cc: Likewise.
	* testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
	* testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
	* testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get2.cc: Likewise.
	* testsuite/20_util/tuple/moveable.cc: Likewise.
	* testsuite/20_util/tuple/moveable2.cc: Likewise.
	* testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
	* testsuite/20_util/tuple/noexcept_swap.cc: Likewise.
	* testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
	* testsuite/20_util/tuple/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/tuple/swap.cc: Likewise.
	* testsuite/20_util/tuple/tuple_size.cc: Likewise.
	* testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
	* testsuite/20_util/typeindex/hash.cc: Likewise.
	* testsuite/20_util/typeindex/hash_code.cc: Likewise.
	* testsuite/20_util/typeindex/name.cc: Likewise.
	* testsuite/20_util/underlying_type/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/underlying_type/requirements/
	typedefs-1.cc: Likewise.
	* testsuite/20_util/underlying_type/requirements/
	typedefs-2.cc: Likewise.
	* testsuite/20_util/unique_ptr/54351.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
	* testsuite/20_util/unique_ptr/comparison/42925.cc: Likewise.
	* testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/constexpr.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
	* testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
	* testsuite/20_util/unique_ptr/modifiers/48398.cc: Likewise.
	* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/requirements/
	explicit_instantiation/explicit_instantiation.cc: Likewise.
	* testsuite/20_util/unique_ptr/specialized_algorithms/
	comparisons.cc: Likewise.
	* testsuite/20_util/unique_ptr/specialized_algorithms/
	comparisons_array.cc: Likewise.
	* testsuite/20_util/unique_ptr/specialized_algorithms/
	swap.cc: Likewise.
	* testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
	* testsuite/20_util/uses_allocator/construction.cc: Likewise.
	* testsuite/20_util/uses_allocator/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/uses_allocator/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/uses_allocator/value.cc: Likewise.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
	* testsuite/20_util/weak_ptr/cons/constexpr.cc: Likewise.
	* testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/20_util/weak_ptr/lock/1.cc: Likewise.
	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
	* testsuite/23_containers/array/capacity/
	constexpr_functions.cc: Likewise.
	* testsuite/23_containers/array/capacity/empty.cc: Likewise.
	* testsuite/23_containers/array/capacity/max_size.cc: Likewise.
	* testsuite/23_containers/array/capacity/size.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/
	greater.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/
	greater_or_equal.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/
	less_or_equal.cc: Likewise.
	* testsuite/23_containers/array/comparison_operators/
	not_equal.cc: Likewise.
	* testsuite/23_containers/array/cons/
	aggregate_initialization.cc: Likewise.
	* testsuite/23_containers/array/element_access/54388.cc: Likewise.
	* testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
	* testsuite/23_containers/array/element_access/
	at_out_of_range.cc: Likewise.
	* testsuite/23_containers/array/element_access/back.cc: Likewise.
	* testsuite/23_containers/array/element_access/
	constexpr_element_access.cc: Likewise.
	* testsuite/23_containers/array/element_access/data.cc: Likewise.
	* testsuite/23_containers/array/element_access/front.cc: Likewise.
	* testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
	* testsuite/23_containers/array/range_access.cc: Likewise.
	* testsuite/23_containers/array/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/array/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/array/requirements/fill.cc: Likewise.
	* testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
	* testsuite/23_containers/array/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/array/requirements/
	zero_sized_arrays.cc: Likewise.
	* testsuite/23_containers/array/specialized_algorithms/
	swap.cc: Likewise.
	* testsuite/23_containers/array/tuple_interface/
	constexpr_get.cc: Likewise.
	* testsuite/23_containers/array/tuple_interface/get.cc: Likewise.
	* testsuite/23_containers/array/tuple_interface/
	tuple_element.cc: Likewise.
	* testsuite/23_containers/array/tuple_interface/tuple_size.cc: Likewise.
	* testsuite/23_containers/bitset/cons/2.cc: Likewise.
	* testsuite/23_containers/bitset/cons/3.cc: Likewise.
	* testsuite/23_containers/bitset/cons/50268.cc: Likewise.
	* testsuite/23_containers/bitset/cons/constexpr.cc: Likewise.
	* testsuite/23_containers/bitset/cons/dr1325-1.cc: Likewise.
	* testsuite/23_containers/bitset/cons/dr1325-2.cc: Likewise.
	* testsuite/23_containers/bitset/hash/1.cc: Likewise.
	* testsuite/23_containers/bitset/operations/constexpr-2.cc: Likewise.
	* testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
	* testsuite/23_containers/bitset/requirements/
	constexpr_functions.cc: Likewise.
	* testsuite/23_containers/bitset/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/bitset/to_ullong/1.cc: Likewise.
	* testsuite/23_containers/deque/capacity/moveable.cc: Likewise.
	* testsuite/23_containers/deque/capacity/resize_size.cc: Likewise.
	* testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/deque/cons/cons_size.cc: Likewise.
	* testsuite/23_containers/deque/cons/moveable.cc: Likewise.
	* testsuite/23_containers/deque/cons/moveable2.cc: Likewise.
	* testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/deque/init-list.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/erase/moveable.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/moveable.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/push_back/49836.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/push_front/49836.cc: Likewise.
	* testsuite/23_containers/deque/range_access.cc: Likewise.
	* testsuite/23_containers/deque/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/deque/requirements/exception/
	basic.cc: Likewise.
	* testsuite/23_containers/deque/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/deque/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/deque/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/deque/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/
	copy_assign.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/
	move_assign.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/forward_list/allocator/swap.cc: Likewise.
	* testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
	* testsuite/23_containers/forward_list/capacity/
	resize_size.cc: Likewise.
	* testsuite/23_containers/forward_list/comparable.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/1.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/2.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/3.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/4.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/5.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/6.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/7.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/8.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/9.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/cons_size.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/moveable.cc: Likewise.
	* testsuite/23_containers/forward_list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after4_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after5_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after6_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after7_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after8_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	erase_after9_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	insert_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	insert_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	insert_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	move_constructor.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after3_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after4_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after5_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after6_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/
	splice_after7_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/1.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/2.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/3.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/4.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/5.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/6.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/7.cc: Likewise.
	* testsuite/23_containers/forward_list/operations/
	remove_freed.cc: Likewise.
	* testsuite/23_containers/forward_list/range_access.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	do_the_right_thing.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	dr438/assign_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	dr438/constructor.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	dr438/constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	dr438/constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	dr438/insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	exception/basic.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	exception/generation_prohibited.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/4.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/5.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/headers/forward_list/synopsis.cc: Likewise.
	* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Likewise.
	* testsuite/23_containers/list/capacity/resize_size.cc: Likewise.
	* testsuite/23_containers/list/cons/cons_size.cc: Likewise.
	* testsuite/23_containers/list/cons/moveable.cc: Likewise.
	* testsuite/23_containers/list/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/list/init-list.cc: Likewise.
	* testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
	* testsuite/23_containers/list/operations/42352.cc: Likewise.
	* testsuite/23_containers/list/range_access.cc: Likewise.
	* testsuite/23_containers/list/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/list/requirements/
	do_the_right_thing.cc: Likewise.
	* testsuite/23_containers/list/requirements/exception/
	basic.cc: Likewise.
	* testsuite/23_containers/list/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/list/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/list/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/list/requirements/
	explicit_instantiation/5_c++0x.cc: Likewise.
	* testsuite/23_containers/list/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/map/cons/moveable.cc: Likewise.
	* testsuite/23_containers/map/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/map/element_access/2.cc: Likewise.
	* testsuite/23_containers/map/element_access/39901.cc: Likewise.
	* testsuite/23_containers/map/element_access/46148.cc: Likewise.
	* testsuite/23_containers/map/init-list.cc: Likewise.
	* testsuite/23_containers/map/modifiers/dr130.cc: Likewise.
	* testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
	* testsuite/23_containers/map/modifiers/insert/2.cc: Likewise.
	* testsuite/23_containers/map/modifiers/insert/3.cc: Likewise.
	* testsuite/23_containers/map/modifiers/insert/4.cc: Likewise.
	* testsuite/23_containers/map/modifiers/insert/5.cc: Likewise.
	* testsuite/23_containers/map/range_access.cc: Likewise.
	* testsuite/23_containers/map/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/map/requirements/exception/basic.cc: Likewise.
	* testsuite/23_containers/map/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/map/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/map/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/map/requirements/
	explicit_instantiation/5_c++0x.cc: Likewise.
	* testsuite/23_containers/map/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/multimap/cons/moveable.cc: Likewise.
	* testsuite/23_containers/multimap/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multimap/init-list.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/dr130.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/insert/1.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/insert/2.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/insert/3.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/insert/4.cc: Likewise.
	* testsuite/23_containers/multimap/range_access.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/exception/
	basic.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/
	explicit_instantiation/5_c++0x.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/multiset/cons/moveable.cc: Likewise.
	* testsuite/23_containers/multiset/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/multiset/init-list.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/dr130.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/insert/3.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/insert/4.cc: Likewise.
	* testsuite/23_containers/multiset/range_access.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/exception/
	basic.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/
	explicit_instantiation/5_c++0x.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/priority_queue/moveable.cc: Likewise.
	* testsuite/23_containers/priority_queue/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/priority_queue/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/queue/moveable.cc: Likewise.
	* testsuite/23_containers/queue/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/queue/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/set/cons/moveable.cc: Likewise.
	* testsuite/23_containers/set/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/set/init-list.cc: Likewise.
	* testsuite/23_containers/set/modifiers/dr130.cc: Likewise.
	* testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
	* testsuite/23_containers/set/modifiers/insert/2.cc: Likewise.
	* testsuite/23_containers/set/modifiers/insert/3.cc: Likewise.
	* testsuite/23_containers/set/range_access.cc: Likewise.
	* testsuite/23_containers/set/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/set/requirements/exception/basic.cc: Likewise.
	* testsuite/23_containers/set/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/set/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/set/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/set/requirements/
	explicit_instantiation/5_c++0x.cc: Likewise.
	* testsuite/23_containers/set/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/stack/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/stack/requirements/typedefs.cc: Likewise.
	* testsuite/23_containers/unordered_map/55043.cc: Likewise.
	* testsuite/23_containers/unordered_map/cons/56112.cc: Likewise.
	* testsuite/23_containers/unordered_map/cons/moveable.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	construct4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/insert4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	invalid_local_iterator_compare_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	invalid_local_iterator_range_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	use_erased_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	use_invalid_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/
	use_invalid_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/dr761.cc: Likewise.
	* testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise.
	* testsuite/23_containers/unordered_map/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_map/erase/54276.cc: Likewise.
	* testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_map/hash_policy/dr1189.cc: Likewise.
	* testsuite/23_containers/unordered_map/init-list.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/
	array_syntax.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/
	array_syntax_move.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/map_single.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/
	map_single_move-1.cc: Likewise.
	* testsuite/23_containers/unordered_map/insert/
	map_single_move-2.cc: Likewise.
	* testsuite/23_containers/unordered_map/modifiers/emplace.cc: Likewise.
	* testsuite/23_containers/unordered_map/modifiers/reserve.cc: Likewise.
	* testsuite/23_containers/unordered_map/observers.cc: Likewise.
	* testsuite/23_containers/unordered_map/operations/count.cc: Likewise.
	* testsuite/23_containers/unordered_map/operators/1.cc: Likewise.
	* testsuite/23_containers/unordered_map/profile/unordered.cc: Likewise.
	* testsuite/23_containers/unordered_map/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	cliterators.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	debug_mode.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	exception/basic.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	exception/generation_prohibited.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	exception/propagation_consistent.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/4.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/5.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/cons/moveable.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	construct4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	insert4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	invalid_local_iterator_compare_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	invalid_local_iterator_range_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	use_erased_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	use_invalid_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	use_invalid_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/
	24061-multimap.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/
	51845-multimap.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/54276.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/hash_policy/
	dr1189.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/init-list.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	24061-multimap.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/51866.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/52476.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_range.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_single.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_single_move-1.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/
	multimap_single_move-2.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/modifiers/
	emplace.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/modifiers/
	reserve.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/operations/
	count.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/operators/1.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/operators/2.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	cliterators.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	exception/basic.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	exception/generation_prohibited.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	exception/propagation_consistent.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/4.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/5.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/copy.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/moveable.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	construct4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	insert4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	invalid_local_iterator_compare_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	invalid_local_iterator_range_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	use_erased_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	use_invalid_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	use_invalid_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/
	24061-multiset.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/hash_policy/
	dr1189.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/init-list.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	24061-multiset.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/51866.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/52476.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	hash_policy.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	multiset_range.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	multiset_single.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/insert/
	multiset_single_move.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/modifiers/
	emplace.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/modifiers/
	reserve.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/operations/
	count.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/operators/1.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	cliterators.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	exception/basic.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	exception/generation_prohibited.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	exception/propagation_consistent.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/4.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/5.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/unordered_set/55043.cc: Likewise.
	* testsuite/23_containers/unordered_set/56267.cc: Likewise.
	* testsuite/23_containers/unordered_set/56278.cc: Likewise.
	* testsuite/23_containers/unordered_set/cons/moveable.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	construct1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	construct2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	construct3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	construct4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/insert4_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	invalid_local_iterator_compare_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	invalid_local_iterator_range_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	use_erased_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	use_invalid_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	use_invalid_local_iterator_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
	* testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise.
	* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
	* testsuite/23_containers/unordered_set/hash_policy/26132.cc: Likewise.
	* testsuite/23_containers/unordered_set/hash_policy/dr1189.cc: Likewise.
	* testsuite/23_containers/unordered_set/hash_policy/
	load_factor.cc: Likewise.
	* testsuite/23_containers/unordered_set/hash_policy/rehash.cc: Likewise.
	* testsuite/23_containers/unordered_set/init-list.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/hash_policy.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise.
	* testsuite/23_containers/unordered_set/insert/
	set_single_move.cc: Likewise.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/max_load_factor/
	robustness.cc: Likewise.
	* testsuite/23_containers/unordered_set/modifiers/emplace.cc: Likewise.
	* testsuite/23_containers/unordered_set/modifiers/reserve.cc: Likewise.
	* testsuite/23_containers/unordered_set/observers.cc: Likewise.
	* testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
	* testsuite/23_containers/unordered_set/operators/1.cc: Likewise.
	* testsuite/23_containers/unordered_set/operators/52309.cc: Likewise.
	* testsuite/23_containers/unordered_set/range_access.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	cliterators.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	debug_mode.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	exception/basic.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	exception/generation_prohibited.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	exception/propagation_consistent.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/4.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/5.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	typedefs.cc: Likewise.
	* testsuite/23_containers/vector/52591.cc: Likewise.
	* testsuite/23_containers/vector/allocator/copy_assign.cc: Likewise.
	* testsuite/23_containers/vector/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/vector/allocator/move_assign.cc: Likewise.
	* testsuite/23_containers/vector/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/vector/allocator/swap.cc: Likewise.
	* testsuite/23_containers/vector/bool/capacity/
	shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/bool/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/bool/hash/1.cc: Likewise.
	* testsuite/23_containers/vector/bool/requirements/
	citerators.cc: Likewise.
	* testsuite/23_containers/vector/capacity/reserve/moveable.cc: Likewise.
	* testsuite/23_containers/vector/capacity/reserve/
	moveable2.cc: Likewise.
	* testsuite/23_containers/vector/capacity/resize/moveable.cc: Likewise.
	* testsuite/23_containers/vector/capacity/resize/moveable2.cc: Likewise.
	* testsuite/23_containers/vector/capacity/resize/
	resize_size.cc: Likewise.
	* testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
	* testsuite/23_containers/vector/cons/cons_size.cc: Likewise.
	* testsuite/23_containers/vector/cons/moveable.cc: Likewise.
	* testsuite/23_containers/vector/cons/moveable2.cc: Likewise.
	* testsuite/23_containers/vector/cons/
	noexcept_move_construct.cc: Likewise.
	* testsuite/23_containers/vector/debug/52433.cc: Likewise.
	* testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
	* testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
	* testsuite/23_containers/vector/ext_pointer/citerators.cc: Likewise.
	* testsuite/23_containers/vector/ext_pointer/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/vector/ext_pointer/types/2.cc: Likewise.
	* testsuite/23_containers/vector/init-list.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/erase/50529.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/erase/moveable.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/moveable.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/moveable2.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/push_back/49836.cc: Likewise.
	* testsuite/23_containers/vector/range_access.cc: Likewise.
	* testsuite/23_containers/vector/requirements/citerators.cc: Likewise.
	* testsuite/23_containers/vector/requirements/
	do_the_right_thing.cc: Likewise.
	* testsuite/23_containers/vector/requirements/exception/
	basic.cc: Likewise.
	* testsuite/23_containers/vector/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/23_containers/vector/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/23_containers/vector/requirements/
	explicit_instantiation/1_c++0x.cc: Likewise.
	* testsuite/23_containers/vector/requirements/typedefs.cc: Likewise.
	* testsuite/27_io/basic_filebuf/open/char/5.cc: Likewise.
	* testsuite/27_io/basic_fstream/cons/char/1.cc: Likewise.
	* testsuite/27_io/basic_fstream/open/char/1.cc: Likewise.
	* testsuite/27_io/basic_ifstream/cons/char/2.cc: Likewise.
	* testsuite/27_io/basic_ifstream/open/char/2.cc: Likewise.
	* testsuite/27_io/basic_ofstream/cons/char/2.cc: Likewise.
	* testsuite/27_io/basic_ofstream/open/char/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	error_code.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	error_code.cc: Likewise.
	* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Likewise.
	* testsuite/27_io/ios_base/types/fmtflags/
	constexpr_operators.cc: Likewise.
	* testsuite/27_io/ios_base/types/iostate/
	constexpr_operators.cc: Likewise.
	* testsuite/27_io/ios_base/types/openmode/
	constexpr_operators.cc: Likewise.
	* testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
	* testsuite/27_io/manipulators/extended/get_money/char/
	51288.cc: Likewise.
	* testsuite/27_io/manipulators/extended/get_money/wchar_t/
	1.cc: Likewise.
	* testsuite/27_io/manipulators/extended/get_money/wchar_t/
	51288.cc: Likewise.
	* testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
	* testsuite/27_io/manipulators/extended/put_money/char/
	51288.cc: Likewise.
	* testsuite/27_io/manipulators/extended/put_money/wchar_t/
	1.cc: Likewise.
	* testsuite/27_io/manipulators/extended/put_money/wchar_t/
	51288.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_replace/char/51711.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_replace/wchar_t/
	51711.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/47724.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/basic/pstring_char.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/basic/
	string_range_01_02_03.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/default.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/range.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/extended/
	string_range_01_02_03.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/string_char.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
	* testsuite/28_regex/basic_regex/requirements/
	constexpr_data.cc: Likewise.
	* testsuite/28_regex/init-list.cc: Likewise.
	* testsuite/28_regex/iterators/regex_token_iterator/ctors/
	wchar_t/default.cc: Likewise.
	* testsuite/28_regex/range_access.cc: Likewise.
	* testsuite/28_regex/traits/char/ctor.cc: Likewise.
	* testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
	* testsuite/28_regex/traits/char/value.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/constexpr.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/copy_list.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/default.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/direct_list.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/single_value.cc: Likewise.
	* testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/56011.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/
	integral_assignment.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/
	integral_conversion.cc: Likewise.
	* testsuite/29_atomics/atomic/operators/
	pointer_partial_void.cc: Likewise.
	* testsuite/29_atomics/atomic/requirements/base_classes.cc: Likewise.
	* testsuite/29_atomics/atomic/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/1.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/56012.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/cons/default.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/requirements/
	standard_layout.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/test_and_set/
	explicit-hle.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/default.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/direct_list.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/single_value.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/bitwise.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	bitwise_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	decrement.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	decrement_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	increment.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	increment_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_assignment.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_conversion.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/requirements/
	standard_layout.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/requirements/
	trivial.cc: Likewise.
	* testsuite/29_atomics/headers/atomic/functions_std_c++0x.cc: Likewise.
	* testsuite/29_atomics/headers/atomic/macros.cc: Likewise.
	* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Likewise.
	* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Likewise.
	* testsuite/30_threads/async/42819.cc: Likewise.
	* testsuite/30_threads/async/49668.cc: Likewise.
	* testsuite/30_threads/async/54297.cc: Likewise.
	* testsuite/30_threads/async/any.cc: Likewise.
	* testsuite/30_threads/async/async.cc: Likewise.
	* testsuite/30_threads/async/launch.cc: Likewise.
	* testsuite/30_threads/async/sync.cc: Likewise.
	* testsuite/30_threads/call_once/39909.cc: Likewise.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/call_once/constexpr.cc: Likewise.
	* testsuite/30_threads/call_once/once_flag.cc: Likewise.
	* testsuite/30_threads/condition_variable/54185.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
	* testsuite/30_threads/condition_variable/native_handle/
	typesizes.cc: Likewise.
	* testsuite/30_threads/condition_variable/requirements/
	standard_layout.cc: Likewise.
	* testsuite/30_threads/condition_variable/requirements/
	typedefs.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/
	assign_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/
	copy_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
	* testsuite/30_threads/future/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/future/cons/constexpr.cc: Likewise.
	* testsuite/30_threads/future/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/future/cons/default.cc: Likewise.
	* testsuite/30_threads/future/cons/move.cc: Likewise.
	* testsuite/30_threads/future/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/future/members/45133.cc: Likewise.
	* testsuite/30_threads/future/members/get.cc: Likewise.
	* testsuite/30_threads/future/members/get2.cc: Likewise.
	* testsuite/30_threads/future/members/share.cc: Likewise.
	* testsuite/30_threads/future/members/valid.cc: Likewise.
	* testsuite/30_threads/future/members/wait.cc: Likewise.
	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/future/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/headers/condition_variable/
	types_std_c++0x.cc: Likewise.
	* testsuite/30_threads/headers/future/types_std_c++0x.cc: Likewise.
	* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Likewise.
	* testsuite/30_threads/headers/thread/types_std_c++0x.cc: Likewise.
	* testsuite/30_threads/lock/1.cc: Likewise.
	* testsuite/30_threads/lock/2.cc: Likewise.
	* testsuite/30_threads/lock/3.cc: Likewise.
	* testsuite/30_threads/lock/4.cc: Likewise.
	* testsuite/30_threads/lock_guard/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/lock_guard/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/mutex/cons/constexpr.cc: Likewise.
	* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/requirements/standard_layout.cc: Likewise.
	* testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/once_flag/cons/constexpr.cc: Likewise.
	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc_min.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
	* testsuite/30_threads/packaged_task/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/packaged_task/uses_allocator.cc: Likewise.
	* testsuite/30_threads/promise/cons/1.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc2.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc_min.cc: Likewise.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/promise/cons/move.cc: Likewise.
	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
	* testsuite/30_threads/promise/members/swap.cc: Likewise.
	* testsuite/30_threads/promise/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/promise/uses_allocator.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/
	destructor_locked.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/
	typesizes.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/requirements/
	standard_layout.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/requirements/
	typedefs.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/
	assign_neg.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/
	copy_neg.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/
	destructor_locked.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/
	try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/assign.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/copy.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/default.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/shared_future/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/this_thread/1.cc: Likewise.
	* testsuite/30_threads/this_thread/2.cc: Likewise.
	* testsuite/30_threads/this_thread/3.cc: Likewise.
	* testsuite/30_threads/this_thread/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/1.cc: Likewise.
	* testsuite/30_threads/thread/cons/2.cc: Likewise.
	* testsuite/30_threads/thread/cons/3.cc: Likewise.
	* testsuite/30_threads/thread/cons/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
	* testsuite/30_threads/thread/cons/5.cc: Likewise.
	* testsuite/30_threads/thread/cons/6.cc: Likewise.
	* testsuite/30_threads/thread/cons/7.cc: Likewise.
	* testsuite/30_threads/thread/cons/8.cc: Likewise.
	* testsuite/30_threads/thread/cons/9.cc: Likewise.
	* testsuite/30_threads/thread/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
	* testsuite/30_threads/thread/id/hash.cc: Likewise.
	* testsuite/30_threads/thread/id/operators.cc: Likewise.
	* testsuite/30_threads/thread/members/1.cc: Likewise.
	* testsuite/30_threads/thread/members/2.cc: Likewise.
	* testsuite/30_threads/thread/members/3.cc: Likewise.
	* testsuite/30_threads/thread/members/4.cc: Likewise.
	* testsuite/30_threads/thread/members/5.cc: Likewise.
	* testsuite/30_threads/thread/members/
	hardware_concurrency.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/thread/swap/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/
	typesizes.cc: Likewise.
	* testsuite/30_threads/timed_mutex/requirements/
	standard_layout.cc: Likewise.
	* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/3.cc: Likewise.
	* testsuite/30_threads/try_lock/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
	* testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/iota/cxx0x.cc: Likewise.
	* testsuite/ext/is_heap/47709.cc: Likewise.
	* testsuite/ext/is_sorted/cxx0x.cc: Likewise.
	* testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/profile/all.cc: Likewise.
	* testsuite/ext/rope/40299.cc: Likewise.
	* testsuite/ext/rope/44708.cc: Likewise.
	* testsuite/ext/rope/44963.cc: Likewise.
	* testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
	* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
	* testsuite/ext/vstring/cons/moveable.cc: Likewise.
	* testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
	* testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
	* testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
	* testsuite/ext/vstring/hash/char/1.cc: Likewise.
	* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
	* testsuite/ext/vstring/init-list.cc: Likewise.
	* testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
	* testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
	* testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
	* testsuite/ext/vstring/operators/1.cc: Likewise.
	* testsuite/ext/vstring/operators/2.cc: Likewise.
	* testsuite/ext/vstring/range_access.cc: Likewise.
	* testsuite/ext/vstring/requirements/citerators.cc: Likewise.
	* testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/basic.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/
	generation_prohibited.cc: Likewise.
	* testsuite/ext/vstring/requirements/exception/
	propagation_consistent.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char16_t/1.cc: Likewise.
	* testsuite/ext/vstring/requirements/explicit_instantiation/
	char32_t/1.cc: Likewise.
	* testsuite/ext/vstring/requirements/typedefs.cc: Likewise.
	* testsuite/performance/23_containers/copy_construct/
	unordered_set.cc: Likewise.
	* testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
	* testsuite/tr1/3_function_objects/bind/cv_quals.cc: Likewise.
	* testsuite/tr1/3_function_objects/function/10.cc: Likewise.
	* testsuite/tr1/8_c_compatibility/cmath/51083.cc: Likewise.
	* testsuite/tr1/8_c_compatibility/complex/51083.cc: Likewise.
	* testsuite/tr1/headers/c++200x/complex.cc: Likewise.
	* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: Likewise.
	* testsuite/tr2/bases/requirements/explicit_instantiation.cc: Likewise.
	* testsuite/tr2/bases/requirements/typedefs.cc: Likewise.
	* testsuite/tr2/bases/value.cc: Likewise.
	* testsuite/tr2/direct_bases/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/tr2/direct_bases/requirements/typedefs.cc: Likewise.
	* testsuite/tr2/direct_bases/value.cc: Likewise.
	* testsuite/tr2/headers/all.cc: Likewise.
	* testsuite/tr2/headers/using_namespace_std_tr2.cc: Likewise.

From-SVN: r216299
2014-10-16 08:09:09 +00:00
François Dumont
8a7fb87eae re PR libstdc++/63500 (bug in debug version of std::make_move_iterator?)
2014-10-15  François Dumont  <fdumont@gcc.gnu.org>
	    Jonathan Wakely  <jwakely@redhat.com>

	PR libstdc++/63500
	* include/debug/functions.h (__foreign_iterator_aux2): Do not check for
	foreign iterators if input iterators returns rvalue reference.
	* testsuite/23_containers/vector/63500.cc: New.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>

From-SVN: r216286
2014-10-15 20:40:31 +00:00
Jonathan Wakely
fd18c76ac8 Make std::deque meet C++11 allocator requirements.
* include/bits/deque.tcc (deque::operator=(const deque&)): Handle
	allocator propagation.
	(deque::emplace_front, deque::emplace_back): Use allocator traits.
	(deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
	(deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
	* include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
	(_Deque_iterator): Handle allocators with custom pointers.
	(_Deque_base): Likewise. Use allocator traits.
	(deque): Likewise. Add allocator-extended constructors.
	(deque::_M_move_assign1, deque::_M_move_assign2): Implement move
	assignment via tag dispatching.
	(deque::_M_replace_map): Replace existing data.
	* include/debug/deque (deque): Add allocator-extended constructors.
	* include/profile/deque (deque): Likewise.
	* testsuite/23_containers/deque/allocator/copy.cc: New.
	* testsuite/23_containers/deque/allocator/copy_assign.cc: New.
	* testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/deque/allocator/minimal.cc: New.
	* testsuite/23_containers/deque/allocator/move.cc: New.
	* testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
	* testsuite/23_containers/deque/allocator/move_assign.cc: New.
	* testsuite/23_containers/deque/allocator/noexcept.cc: New.
	* testsuite/23_containers/deque/allocator/swap.cc: New.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/52591.cc: Test both the propagating
	and always-equal cases.

From-SVN: r215090
2014-09-09 18:29:32 +01:00
François Dumont
5c7c5f9a88 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
* testsuite/util/testsuite_allocator.h
	(tracker_allocator_counter::allocate): Remove new invocation, only
	collect information.
	(tracker_allocator_counter::deallocate): Remove delete invocation, only
	collect information.
	(check_inconsistent_alloc_value_type): New.
	(tracker_allocator): Transform as a facade for any allocator type.
	(uneq_allocator): Likewise.
	(propagating_allocator): Likewise.
	* testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
	explicitly non propagating allocator.
	* testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
	* testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.

From-SVN: r213224
2014-07-29 19:47:19 +00:00
Paolo Carlini
8274b28187 2014-06-27 Paolo Carlini <paolo.carlini@oracle.com>
* Revert r212046 and r212054.

From-SVN: r212085
2014-06-27 20:03:26 +00:00
François Dumont
b3fb198ded 2014-06-26 François Dumont <fdumont@gcc.gnu.org>
* testsuite/util/testsuite_allocator.h
	(tracker_allocator_counter::allocate): Remove new invocation, only
	collect information.
	(tracker_allocator_counter::deallocate): Remove delete invocation, only
	collect information.
	(check_inconsistent_alloc_value_type): New.
	(tracker_allocator): Transform as a facade for any allocator type.
	(uneq_allocator): Likewise.
	(propagating_allocator): Likewise.
	* testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
	explicitly non propagating allocator.
	* testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
	* testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.

From-SVN: r212046
2014-06-26 18:42:41 +00:00
Jonathan Wakely
d90838f96c 1.cc: Add xfail for dragonfly.
* testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
	dragonfly.
	* testsuite/30_threads/call_once/60497.cc: Add target selectors.
	* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.

From-SVN: r210850
2014-05-23 11:19:32 +01:00
Jonathan Wakely
75a8a745af re PR libstdc++/60793 (Add target *-*-dragonfly* to dg-options on 172 libstdc++ tests)
PR libstdc++/60793
	* testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
	dragonfly target selector to all tests that run on freebsd.

From-SVN: r210849
2014-05-23 11:19:20 +01:00
Jonathan Wakely
bbf264c9b2 re PR libstdc++/61086 (ubsan detects undefined behaviour in the standard library)
PR libstdc++/61086
	* include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
	Remove.
	* include/bits/stl_vector.h (vector::insert, vector::erase): Use
	arithmetic to obtain a mutable iterator from const_iterator.
	* include/bits/vector.tcc (vector::insert): Likewise.
	* include/debug/vector (vector::erase): Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r210162
2014-05-07 15:43:22 +01:00
François Dumont
15ee1a7745 macros.h [...]: Add parameter to pass the 2 instances to check allocator equality.
2014-05-06  François Dumont  <fdumont@gcc.gnu.org>

	* include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
	parameter to pass the 2 instances to check allocator equality.
	* include/debug/safe_container.h: New, define _Safe_container<>.
	* include/Makefile.am: Add previous.
	* include/debug/deque (std::__debug::deque<>): Inherit
	_Safe_container<>. Use default implementation for all special
	functions.
	* include/debug/forward_list (std::__debug::forward_list<>):
	Likewise.
	* include/debug/list (std::__debug::list<>): Likewise.
	* include/debug/map.h (std::__debug::map<>): Likewise.
	* include/debug/multimap.h (std::__debug::multimap<>): Likewise.
	* include/debug/set.h (std::__debug::set<>): Likewise.
	* include/debug/multiset.h (std::__debug::multiset<>): Likewise.
	* include/debug/string (std::__debug::basic_string<>): Likewise.
	* include/debug/unordered_map
	(std::__debug::unordered_map<>): Likewise.
	(std::__debug::unordered_multimap<>): Likewise.
	* include/debug/unordered_set
	(std::__debug::unordered_set<>): Likewise.
	(std::__debug::unordered_multiset<>): Likewise.
	* include/debug/vector (std::__debug::vector<>): Likewise.
	* include/debug/safe_base.h (_Safe_sequence_base()): Add
	noexcept.
	(_Safe_sequence_base(_Safe_sequence_base&&): Remove.
	(~_Safe_sequence_base()): Add noexcept.
	* include/debug/safe_sequence.h
	(std::__debug::_Safe_node_sequence<>): New.
	* include/debug/safe_unordered_base.h
	(_Safe_unordered_container_base()): Add noexcept.
	(~_Safe_unordered_container_base()): Likewise.
	(_M_swap(_Safe_unordered_container_base&)): Likewise.
	* include/debug/safe_unordered_container.h:
	(_Safe_unordered_container<>::_M_invalidate_locals()): New.
	(_Safe_unordered_container<>::_M_invalidate_all()): New.
	* src/c++11/debug.cc: Limit includes, adapt methods noexcept
	qualifications.
	* testsuite/util/debug/checks.h (check_construct1): Just implement
	an invalid constructor invocation  and no other operations
	potentially not supported by some types of container.
	(check_construct2): Likewise.
	(check_construct3): Likewise.
	* testsuite/23_containers/forward_list/allocator/move.cc: Add
	check on iterators to make sure they are correctly moved in debug
	mode.
	* testsuite/23_containers/forward_list/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/map/allocator/move.cc: Likewise.
	* testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
	* testsuite/23_containers/multimap/allocator/move.cc: Likewise.
	* testsuite/23_containers/multimap/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/multiset/allocator/move.cc: Likewise.
	* testsuite/23_containers/multiset/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/set/allocator/move.cc: Likewise.
	* testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/move.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/move.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/move.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/allocator/move.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/allocator/move_assign.cc:
	Likewise.
	* testsuite/23_containers/forward_list/debug/construct1_neg.cc:
	New.
	* testsuite/23_containers/forward_list/debug/construct2_neg.cc:
	New.
	* testsuite/23_containers/forward_list/debug/construct3_neg.cc:
	New.
	* testsuite/23_containers/forward_list/debug/construct4_neg.cc:
	New.
	* testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
	New.
	* testsuite/23_containers/forward_list/debug/move_neg.cc: New.
	* testsuite/23_containers/map/debug/construct5_neg.cc: New.
	* testsuite/23_containers/map/debug/move_assign_neg.cc: New.
	* testsuite/23_containers/map/debug/move_neg.cc: New.
	* testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
	* testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
	* testsuite/23_containers/multimap/debug/move_neg.cc: New.
	* testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
	* testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
	* testsuite/23_containers/multiset/debug/move_neg.cc: New.
	* testsuite/23_containers/set/debug/construct5_neg.cc: New.
	* testsuite/23_containers/set/debug/move_assign_neg.cc: New.
	* testsuite/23_containers/set/debug/move_neg.cc: New.
	* testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
	New.
	* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
	New.
	* testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
	* testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
	New.
	* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
	New.
	* testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
	New.
	* testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
	New.
	* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
	New.
	* testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
	New.
	* testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
	New.
	* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
	New.
	* testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
	* testsuite/23_containers/vector/debug/move_neg.cc: New.

From-SVN: r210123
2014-05-06 19:59:44 +00:00
Jonathan Wakely
72d1f255ae re PR libstdc++/60587 (debug-mode -std=c++11 vector::insert(pos, begin, end) dereferences begin too eagerly)
PR libstdc++/60587
	* include/debug/functions.h (_Is_contiguous_sequence): Define.
	(__foreign_iterator): Accept additional iterator. Do not dispatch on
	iterator category.
	(__foreign_iterator_aux2): Likewise. Add overload for iterators
	from different types of debug container. Use _Is_contiguous_sequence
	instead of is_lvalue_reference.
	(__foreign_iterator_aux3): Accept additional iterator. Avoid
	dereferencing past-the-end iterator.
	(__foreign_iterator_aux4): Use const value_type* instead of
	potentially user-defined const_pointer type.
	* include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
	and pass end iterator to __gnu_debug::__foreign_iterator.
	(__glibcxx_check_insert_range_after): Likewise.
	(__glibcxx_check_max_load_factor): Fix comment.
	* include/debug/vector (_Is_contiguous_sequence): Define partial
	specializations.
	* testsuite/23_containers/vector/debug/57779_neg.cc: Remove
	-std=gnu++11 option and unused header.
	* testsuite/23_containers/vector/debug/60587.cc: New.
	* testsuite/23_containers/vector/debug/60587_neg.cc: New.

From-SVN: r208755
2014-03-21 18:54:06 +00:00
Jonathan Wakely
06dce00742 re PR libstdc++/60499 (non-reserved name in <debug/vector>)
PR libstdc++/60499
	* include/debug/forward_list (forward_list::operator=(forward_list&&)):
	Uglify name.
	* include/debug/map (map::operator=(map&&)): Likewise.
	* include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
	* include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
	* include/debug/set (set::operator=(set&&)): Likewise.
	* include/debug/unordered_map
	(unordered_map::operator=(unordered_map&&)): Likewise.
	(unordered_multimap::operator=(unordered_multimap&&)): Likewise.
	* include/debug/unordered_set
	(unordered_set::operator=(unordered_set&&)): Likewise.
	(unordered_multiset::operator=(unordered_multiset&&)): Likewise.
	* include/debug/vector (vector::operator=(vector&&)): Likewise.
	* testsuite/23_containers/forward_list/debug/60499.cc: New
	* testsuite/23_containers/map/debug/60499.cc: New
	* testsuite/23_containers/multimap/debug/60499.cc: New
	* testsuite/23_containers/multiset/debug/60499.cc: New
	* testsuite/23_containers/set/debug/60499.cc: New
	* testsuite/23_containers/unordered_map/debug/60499.cc: New
	* testsuite/23_containers/unordered_multimap/debug/60499.cc: New
	* testsuite/23_containers/unordered_multiset/debug/60499.cc: New
	* testsuite/23_containers/unordered_set/debug/60499.cc: New
	* testsuite/23_containers/vector/debug/60499.cc: New

From-SVN: r208490
2014-03-11 17:16:41 +00:00
Jonathan Wakely
8a972abdd9 re PR libstdc++/59829 (Calling vector::data() occurs undefined behavior when the vector is empty)
PR libstdc++/59829
	* include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
	(vector::_M_data_ptr): New overloaded functions to ensure empty
	vectors do not dereference the pointer.
	* testsuite/23_containers/vector/59829.cc: New.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r207241
2014-01-29 14:57:42 +00:00
Jonathan Wakely
d9dcda6f48 PR libstdc++/58764 (again)
PR libstdc++/58764 (again)
	* include/bits/stl_list.h (list): Make default constructor's exception
	specification conditional.
	* include/bits/stl_vector.h (vector): Likewise.
	* testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
	to default constructor.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r206946
2014-01-22 23:50:58 +00:00
Jonathan Wakely
c3cdd71f45 re PR libstdc++/58764 ([lwg/2193] error: converting to ‘const std::vector<std::basic_string<char> >’ from initializer list would use explicit constructor)
PR libstdc++/58764
	* include/bits/stl_deque.h (deque::deque(const allocator_type&):
	Split into separate default constructor and constructor taking
	allocator.
	* include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
	* include/bits/stl_vector.h (vector::vector(const allocator_type&):
	Likewise.
	* include/debug/deque (deque::deque(const allocator_type&)): Likewise.
	* include/debug/list (list::list(const _Allocator&)): Likewise.
	* include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
	Likewise.
	* include/debug/multimap.h
	(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
	* include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
	Likewise.
	* include/debug/multiset.h
	(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
	* include/debug/vector (vector::vector(const allocator_type&)):
	Likewise.
	* include/profile/deque (deque::deque(const _Allocator&)): Likewise.
	* include/profile/list (list::list(const _Allocator&)): Likewise.
	* include/profile/map.h
	(map::map(const _Compare&, const _Allocator&)): Likewise.
	* include/profile/multimap.h
	(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
	* include/profile/set.h
	(set::set(const _Compare&, const _Allocator&)): Likewise.
	* include/profile/multiset.h
	(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
	* include/profile/vector (vector::vector(const _Allocator&)):
	Likewise.
	* testsuite/23_containers/deque/58764.cc: New.
	* testsuite/23_containers/list/58764.cc: New.
	* testsuite/23_containers/map/58764.cc: New.
	* testsuite/23_containers/multimap/58764.cc: New.
	* testsuite/23_containers/set/58764.cc: New.
	* testsuite/23_containers/multiset/58764.cc: New.
	* testsuite/23_containers/vector/58764.cc: New.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r206939
2014-01-22 19:46:44 +00:00