Commit Graph

130 Commits

Author SHA1 Message Date
Jakub Jelinek a554497024 Update copyright years.
From-SVN: r267494
2019-01-01 13:31:55 +01:00
Edward Smith-Rowland 0b44b4b807 Pre-emptively support P0646R1 for std container erasure.
2018-11-30  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Pre-emptively support P0646R1 for std container erasure.
	* include/bits/erase_if.h: Accumulate and return number of erased nodes.
	* include/std/forward_list (): Return number of erased items.
	* include/std/list (): Ditto.
	* include/std/map (): Ditto.
	* include/std/set (): Ditto.
	* include/std/string (): Ditto.
	* include/std/unordered_map (): Ditto.
	* include/std/unordered_set (): Ditto.
	* include/std/vector (): Ditto.
	* testsuite/21_strings/basic_string/erasure.cc: Test number of erasures.
	* testsuite/23_containers/deque/erasure.cc: Ditto.
	* testsuite/23_containers/forward_list/erasure.cc: Ditto.
	* testsuite/23_containers/list/erasure.cc: Ditto.
	* testsuite/23_containers/map/erasure.cc: Ditto.
	* testsuite/23_containers/set/erasure.cc: Ditto.
	* testsuite/23_containers/unordered_map/erasure.cc: Ditto.
	* testsuite/23_containers/unordered_set/erasure.cc: Ditto.
	* testsuite/23_containers/vector/erasure.cc: Ditto.

From-SVN: r266672
2018-11-30 16:12:13 +00:00
Edward Smith-Rowland a62b871d65 Fix erasure goofs.
2018-11-29  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Fix erasure goofs.
	* include/experimental/deque: Make inline.
	* include/std/deque: Include bits/stl_algo.h.
	(erase, erase_if): Make inline.
	* include/std/string: Include bits/stl_algo.h.
	* include/std/unordered_set: Add erase, erase_if!
	* include/std/vector: Include bits/stl_algo.h.
	* testsuite/21_strings/basic_string/erasure.cc:
	Add { dg-options "-std=gnu++2a" }.
	* testsuite/23_containers/deque/erasure.cc: Ditto.
	* testsuite/23_containers/forward_list/erasure.cc: Ditto.
	* testsuite/23_containers/list/erasure.cc: Ditto.
	* testsuite/23_containers/map/erasure.cc: Ditto.
	* testsuite/23_containers/set/erasure.cc: Ditto.
	* testsuite/23_containers/unordered_map/erasure.cc: Ditto.
	* testsuite/23_containers/unordered_set/erasure.cc: Ditto.
	* testsuite/23_containers/vector/erasure.cc: Ditto.

From-SVN: r266616
2018-11-29 13:43:55 +00:00
Edward Smith-Rowland 188588e443 Implement uniform container erasure for C++20.
2018-11-28  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement uniform container erasure for C++20.
	* include/Makefile.am: Move erase_if.h.
	* include/Makefile.in: Move erase_if.h.
	* include/experimental/bits/erase_if.h: Move ...
	* include/bits/erase_if.h: ... here.
	* include/experimental/map: Move erase_if.h.
	* include/experimental/set: Move erase_if.h.
	* include/experimental/unordered_map: Move erase_if.h.
	* include/experimental/unordered_set: Move erase_if.h.
	* include/std/deque (erase_if, erase): New functions.
	* include/std/forward_list: Ditto.
	* include/std/list: Ditto.
	* include/std/map: Ditto.
	* include/std/set: Ditto.
	* include/std/string: Ditto.
	* include/std/unordered_map: Ditto.
	* include/std/unordered_set: Ditto.
	* include/std/vector: Ditto.
	* testsuite/21_strings/basic_string/erasure.cc: New test.
	* testsuite/23_containers/deque/erasure.cc: New test.
	* testsuite/23_containers/forward_list/erasure.cc: New test.
	* testsuite/23_containers/list/erasure.cc: New test.
	* testsuite/23_containers/map/erasure.cc: New test.
	* testsuite/23_containers/set/erasure.cc: New test.
	* testsuite/23_containers/unordered_map/erasure.cc: New test.
	* testsuite/23_containers/unordered_set/erasure.cc: New test.
	* testsuite/23_containers/vector/erasure.cc: New test.

From-SVN: r266567
2018-11-28 16:44:25 +00:00
François Dumont 010211394d re PR libstdc++/88199 (memory leak on unordered container move assignment)
2018-11-27  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/88199
	* include/bits/hashtable.h (_Hashtable<>::_M_assign_elements): New.
	(_Hashtable<>::operator=(const _Hashtable&)): Use latter.
	(_Hashtable<>::_M_move_assign(_Hashtable&&, false_type)): Likewise.
	* testsuite/23_containers/unordered_set/allocator/move_assign.cc
	(test03): New.

From-SVN: r266528
2018-11-27 21:21:51 +00:00
Jonathan Wakely f324588755 Skip tests for GNU extensions when testing with strict mode
Tests for the implicit allocator rebinding extension will fail if the
extension is disabled, so skip them.

	* testsuite/23_containers/array/requirements/explicit_instantiation/
	3.cc: Skip test when compiled with a -std=c++NN strict mode.
	* testsuite/23_containers/deque/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/list/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/map/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/set/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/vector/requirements/explicit_instantiation/
	3.cc: Likewise.

From-SVN: r265334
2018-10-19 22:50:15 +01:00
Jonathan Wakely 92bab15297 Fix testsuite failures due to extra errors in strict dialects
When __STRICT_ANSI__ is defined the incorrect allocators used in these
tests also trigger and additional static assertion. Prune those extra
errors so that the tests don't fail when built with strict dialects.

	* testsuite/23_containers/deque/48101_neg.cc: Prune additional errors
	printed when __STRICT_ANSI__ is defined.
	* testsuite/23_containers/forward_list/48101_neg.cc: Likewise.
	* testsuite/23_containers/list/48101_neg.cc: Likewise.
	* testsuite/23_containers/multiset/48101_neg.cc: Likewise.
	* testsuite/23_containers/set/48101_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/48101_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/48101_neg.cc: Likewise.
	* testsuite/23_containers/vector/48101_neg.cc: Likewise.

From-SVN: r265333
2018-10-19 22:50:03 +01:00
Jonathan Wakely f8f3939037 Conditionally disable tests of non-standard extensions
These tests include uses of the extension to allow allocators with the
wrong value_type in containers. Skip those parts of the tests when
__STRICT_ANIS__ is defined.

	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/5.cc [__STRICT_ANSI__]: Don't test non-standard
	extension.
	* testsuite/23_containers/list/requirements/explicit_instantiation/
	5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/map/requirements/explicit_instantiation/5.cc
	[__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/multimap/requirements/explicit_instantiation/
	5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/multiset/requirements/explicit_instantiation/
	5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/set/requirements/explicit_instantiation/5.cc
	[__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/unordered_map/requirements/debug_container.cc
	[__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.

From-SVN: r265332
2018-10-19 22:49:49 +01:00
François Dumont 9b29794962 re PR libstdc++/87135 ([C++17] unordered containers violate iterator validity requirements)
2018-09-21  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/87135
	* src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
	Use __builtin_floor to compute _M_next_resize.
	* testsuite/23_containers/unordered_set/hash_policy/71181.cc: Adapt.
	* testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc:
	Adapt.

From-SVN: r264494
2018-09-21 20:39:07 +00:00
Jonathan Wakely 9ca2ac699a Forward declare debug containers so std::pmr aliases work
Prior to this change, including a <debug/xxx> header when _GLIBCXX_DEBUG
is also defined would fail to compile in C++17 or later. The <debug/xxx>
header would include the standard <xxx> header which defined
std::pmr::xxx as an alias for std::xxx. But in Debug Mode std::xxx
refers to std::__debug::xxx which has not been defined yet (because it
is in <debug/xxx> after the inclusion of <xxx>).

This adds declarations of the debug containers before including the
non-Debug Mode <xxx> header, so that the std::pmr::xxx aliases work.

	* include/debug/deque (std::__debug::deque): Declare.
	* include/debug/forward_list (std::__debug::forward_list): Declare.
	* include/debug/list (std::__debug::list): Declare.
	* include/debug/map (std::__debug::map): Declare.
	* include/debug/set (std::__debug::set): Declare.
	* include/debug/unordered_map (std::__debug::unordered_map): Declare.
	* include/debug/unordered_set (std::__debug::unordered_set): Declare.
	* include/debug/vector (std::__debug::vector): Declare.
	* testsuite/23_containers/deque/types/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/forward_list/pmr_typedefs_debug.cc: New
	test.
	* testsuite/23_containers/list/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/map/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/multimap/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/multiset/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/set/pmr_typedefs_debug.cc: New test.
	* testsuite/23_containers/unordered_map/pmr_typedefs_debug.cc: New
	test.
	* testsuite/23_containers/unordered_multimap/pmr_typedefs_debug.cc:
	New test.
	* testsuite/23_containers/unordered_multiset/pmr_typedefs_debug.cc:
	New test.
	* testsuite/23_containers/unordered_set/pmr_typedefs_debug.cc: New
	test.
	* testsuite/23_containers/vector/cons/destructible_debug_neg.cc:
	Adjust dg-error lineno.
	* testsuite/23_containers/vector/types/pmr_typedefs_debug.cc: New
	test.

From-SVN: r263839
2018-08-24 18:43:18 +01:00
François Dumont e9afbed0d6 re PR libstdc++/68222 (_Safe_iterator provides operators the wrapped iterator can't actually support)
2018-08-22  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/68222
	* include/debug/safe_iterator.h
	(_Safe_iterator<_It, _Sq, _Cat>): Add category template parameter.
	(_Safe_iterator<>::_Const_iterator): Remove.
	(_Safe_iterator<>::_IsConstant): New.
	(_Safe_iterator<>::_OtherIterator): New.
	(_Safe_iterator<_It, _Sq, _Cat>::_Safe_iterator<_MutIte>(
	const _Safe_iterator<_MutIte, _Sq, _Cat>&)): Add _IsConstant::__value in
	__gnu_cxx::__enable_if condition.
	(_Safe_iterator<_It, _Sq, _Cat>::_M_get_distance_to): New.
	(_Safe_iterator<_It, _Sq, _Cat>::_M_get_distance_from_begin): New.
	(_Safe_iterator<_It, _Sq, _Cat>::_M_get_distance_to_end): New.
	(_Safe_iterator<_It, _Sq, std::bidirectional_iterator_tag>): New.
	(_Safe_iterator<_It, _Sq, _Cat>::operator--()): Move...
	(_Safe_iterator<_It, _Sq, std::bidirectional_iterator_tag>
	::operator--()): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::operator--(int)): Move...
	(_Safe_iterator<_It, _Sq, std::bidirectional_iterator_tag>
	::operator--(int)): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::_M_decrementable()): Move...
	(_Safe_iterator<_It, _Sq, std::bidirectional_iterator_tag>
	::_M_decrementable()): ...here.
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>): New.
	(_Safe_iterator<_It, _Sq, _Cat>::operator[](const difference_type&)):
	Move...
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>
	::operator[](const difference_type&)): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::operator+=(const difference_type&)):
	Move...
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>
	::operator+=(const difference_type&)): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::operator+(const difference_type&)):
	Move...
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>
	::operator+(const difference_type&)): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::operator-=(const difference_type&)):
	Move...
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>
	::operator-=(const difference_type&)): ...here.
	(_Safe_iterator<_It, _Sq, _Cat>::operator-(const difference_type&)):
	Move...
	(_Safe_iterator<_It, _Sq, std::random_access_iterator_tag>
	::operator-(const difference_type&)): ...here.
	(operator<(const _Safe_iterator<>&, const _Safe_iterator<>&)):
	Constraint to random access iterators.
	(operator<=(const _Safe_iterator<>&, const _Safe_iterator<>&)):
	Likewise.
	(operator>(const _Safe_iterator<>&, const _Safe_iterator<>&)): Likewise.
	(operator>=(const _Safe_iterator<>&, const _Safe_iterator<>&)):
	Likewise.
	(operator-(const _Safe_iterator<>&, const _Safe_iterator<>&)): Likewise.
	(operator+(const difference_type&, const _Safe_iterator<>&)): Likewise.
	(__check_dereferenceable(const _Safe_iterator<>&)): Remove.
	(__get_distance): Remove.
	(__get_distance_from_begin): Remove.
	(__get_distance_to_end): Remove.
	(struct __is_safe_random_iterator<_Safe_iterator<>>): Remove partial
	specialization.
	(__base(const _Safe_iterator<>&, std::input_iterator_tag)): Remove.
	(__base(const _Safe_iterator<>&, std::random_access_iterator_tag)): Remove.
	(__base(const _Safe_iterator<>&)): Constraint to random access iterator.
	* include/debug/safe_iterator.tcc
	(_Safe_iterator<>::_M_get_distance_from_begin()): New.
	(_Safe_iterator<>::_M_get_distance_to_end()): New.
	(_Safe_iterator<>::_M_get_distance_to(const _Safe_iterator<>&)): New.
	(_Safe_iterator<_It, _Seq, std::random_access_iterator_tag>
	::_M_valid_range): New.
	* include/debug/safe_local_iterator.h
	(_Safe_local_iterator<>::_Const_local_iterator): Remove.
	(_Safe_local_iterator<>::_IsConstant): New.
	(_Safe_local_iterator<>::_OtherIterator): New.
	(_Safe_local_iterator<_It, _Cont>::_Safe_local_iterator<_MutIte, _Cont>(
	const _Safe_local_iterator<_MutIte, _Seq>&)): Add _IsConstant::__value
	in __gnu_cxx::__enable_if condition. If singular compare base iterator
	with _MutIte rather than _It.
	(_Safe_local_iterator<>::_S_constant): Make constexpr.
	(_Safe_local_iterator<>::_M_get_distance_to): New.
	(__check_dereferenceable(const _Safe_local_iterator<>&)): Remove.
	(__get_distance(const _Safe_local_iterator<>&,
	const _Safe_local_iterator<>&, std::input_iterator_tag)): Remove.
	(__valid_range(const _Safe_local_iterator<>&,
	const _Safe_local_iterator<>&)): New.
	* include/debug/safe_local_iterator.tcc
	(_Safe_local_iterator<>::_M_get_distance_to): New.
	* include/debug/deque (std::__debug::deque<>): Add
	::__gnu_debug::_Safe_iterator<> friend declaration.
	* 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
	and add ::__gnu_debug::_Safe_local_iterator<> friend declaration.
	(std::__debug::unordered_multimap<>): Likewise.
	* include/debug/unordered_set (std::__debug::unordered_set<>): Likewise.
	(std::__debug::unordered_multiset<>): Likewise.
	* include/debug/formatter.h: Adapt.
	* include/debug/helper_functions.h
	(__gnu_debug::_Safe_local_iterator<>): Add declaration.
	(__get_distance<_Ite>(_Ite, _Ite, std::random_access_iterator_tag):
	Pass parameter by copy.
	(__get_distance<_Ite>(_Ite, _Ite, std::input_iterator_tag): Likewise.
	(__get_distance<_Ite>(_Ite, _Ite): Likewise.
	(__valid_range_aux<_Integral>): Pass _Integral by copy.
	(__valid_range<_InputIterator>): Pass _InputIterator by copy.
	(__valid_range<>(const _Safe_iterator<>&,
	const _Safe_iterator<>&, typename _Distance_traits<>::__type&)):
	Declare.
	(__valid_range(const _Safe_local_iterator<>&,
	const _Safe_local_iterator<>&, typename _Distance_traits<>::__type&)):
	Declare.
	(__valid_range<>(const _Safe_iterator<>&, const _Safe_iterator<>&)):
	Declare.
	(__valid_range(const _Safe_local_iterator<>&, const _Safe_local_iterator<>&)):
	Declare.
	(__can_advance): Adapt.
	(struct __is_safe_random_iterator<>): Remove.
	(struct _SIter_base<>): Remove.
	* include/debug/functions.h: Include <bits/stl_iterator.h>.
	(__check_dereferenceable): Remove.
	(__foreign_iterator_aux4, __foreign_iterator_aux3): Adapt.
	(__foreign_iterator_aux2, __foreign_iterator_aux): Adapt.
	(__foreign_iterator): Adapt.
	* include/debug/stl_iterator.h
	(__is_safe_random_iterator<std::reverse_iterator<>>): Remove.
	(__base(const std::reverse_iterator<_Safe_iterator<_It, _Sq>)):
	Constraint for random access iterators.
	(__niter_base): Adapt.
	* testsuite/util/testsuite_containers.h:
	Include <bits/boost_concept_check.h>.
	(iterator_concept_checks<_It, _Mutable, _Category>): New.
	(citerator<_Cont>::forward_members::forward_members()): Instantiate
	latter for container iterator and const_iterator.
	* testsuite/23_containers/list/68222_neg.cc: New.
	* testsuite/23_containers/vector/cons/destructible_debug_neg.cc: Adapt
	line number.
	* testsuite/23_containers/unordered_set/debug/debug_functions.cc:
	(test01): Remove.
	* testsuite/23_containers/vector/debug/debug_functions.cc (test01):
	Remove.

From-SVN: r263786
2018-08-22 18:51:25 +00:00
Jonathan Wakely 1fc9d0b0e4 Define aliases for containers using polymorphic_allocator
These aliases are placed in the top-level header, e.g. <vector> not
<bits/stl_vector.h>. This ensures that they refer to whichever of
std::vector or __debug::vector or __profile::vector is in use when the
header is included.

	* include/std/deque (std::pmr::deque): Declare alias.
	* include/std/forward_list (std::pmr::forward_list): Likewise.
	* include/std/list (std::pmr::list): Likewise.
	* include/std/map (std::pmr::map, std::pmr::multimap): Likewise.
	* include/std/regex (std::pmr::match_results, std::pmr::cmatch)
	(std::pmr::smatch, std::pmr::wcmatch, std::pmr::wsmatch): Likewise.
	* include/std/set (std::pmr::set, std::pmr::multiset): Likewise.
	* include/std/string (std::pmr::basic_string, std::pmr::string)
	(std::pmr::u16string, std::pmr::u32string, std::pmr::wstring):
	Likewise.
	* include/std/unordered_map (std::pmr::unordered_map)
	(std::pmr::unordered_multimap): Likewise.
	* include/std/unordered_set (std::pmr::unordered_set)
	(std::pmr::unordered_multiset): Likewise.
	* include/std/vector (std::pmr::vector): Likewise.
	* testsuite/21_strings/basic_string/types/pmr_typedefs.cc: New test.
	* testsuite/23_containers/deque/types/pmr_typedefs.cc: New test.
	* testsuite/23_containers/forward_list/pmr_typedefs.cc: New test.
	* testsuite/23_containers/list/pmr_typedefs.cc: New test.
	* testsuite/23_containers/map/pmr_typedefs.cc: New test.
	* testsuite/23_containers/multimap/pmr_typedefs.cc: New test.
	* testsuite/23_containers/multiset/pmr_typedefs.cc: New test.
	* testsuite/23_containers/set/pmr_typedefs.cc: New test.
	* testsuite/23_containers/unordered_map/pmr_typedefs.cc: New test.
	* testsuite/23_containers/unordered_multimap/pmr_typedefs.cc: New
	test.
	* testsuite/23_containers/unordered_multiset/pmr_typedefs.cc: New
	test.
	* testsuite/23_containers/unordered_set/pmr_typedefs.cc: New test.
	* testsuite/23_containers/vector/pmr_typedefs.cc: New test.
	* testsuite/28_regex/match_results/pmr_typedefs.cc: New test.

From-SVN: r263456
2018-08-10 00:25:53 +01:00
Jonathan Wakely 3adea09eea P0458R2 Checking for Existence of an Element in Associative Containers
* include/bits/stl_map.h (map::contains): Add for C++2a.
	* include/bits/stl_multimap.h (multimap::contains): Likewise.
	* include/bits/stl_multiset.h (multiset::contains): Likewise.
	* include/bits/stl_set.h (set::contains): Likewise.
	* include/bits/stl_tree.h (__has_is_transparent_t): Define alias.
	(_Rb_tree::_M_find_tr, _Rb_tree::_M_count_tr)
	(_Rb_tree::_M_lower_bound_tr, _Rb_tree::_M_upper_bound_tr)
	(_Rb_tree::_M_equal_range_tr): Use __has_is_transparent_t.
	* include/bits/unordered_map.h (unordered_map::contains)
	(unordered_multimap::contains): Add for C++2a.
	* include/bits/unordered_set.h (unordered_set::contains)
	(unordered_multiset::contains): Likewise.
	* testsuite/23_containers/map/operations/contains.cc: New.
	* testsuite/23_containers/multimap/operations/contains.cc: New.
	* testsuite/23_containers/multiset/operations/contains.cc: New.
	* testsuite/23_containers/set/operations/contains.cc: New.
	* testsuite/23_containers/unordered_map/operations/contains.cc: New.
	* testsuite/23_containers/unordered_multimap/operations/contains.cc:
	New.
	* testsuite/23_containers/unordered_multiset/operations/contains.cc:
	New.
	* testsuite/23_containers/unordered_set/operations/contains.cc: New.

From-SVN: r262418
2018-07-04 19:16:26 +01:00
François Dumont 0f1462579e re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators)
2018-01-09  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/83709
	* include/bits/hashtable_policy.h
	(__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
	__first != __last.
	(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
	(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
	Add false_type parameter.
	(_Insert_base::insert): Adapt.
	* include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
	Adapt.
	(_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
	 Add __n_elt parameter, defaulted to 1.
	(_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
	policy _M_need_rehash.
	(_Hashtable::_M_merge_unique): Pass target number of elements to add to
	produce only 1 rehash if necessary.
	* testsuite/23_containers/unordered_map/insert/83709.cc: New.
	* testsuite/23_containers/unordered_set/insert/83709.cc: New.

From-SVN: r256396
2018-01-09 21:05:10 +00:00
Jakub Jelinek 85ec4feb11 Update copyright years.
From-SVN: r256169
2018-01-03 11:03:58 +01:00
Jonathan Wakely 866e4d3853 PR libstdc++/48101 improve errors for invalid container specializations
PR libstdc++/48101
	* include/bits/allocator.h (allocator<const _Tp>)
	(allocator<volatile _Tp>, allocator<const volatile _Tp>): Add partial
	specializations.
	* include/bits/forward_list.h (forward_list): Add static assertions.
	* include/bits/hashtable.h (__cache_default): Use
	__is_nothrow_invocable instead of __is_noexcept_hash.
	(_Hashtable): Add static assertions.
	* include/bits/hashtable_policy.h (__is_noexcept_hash): Remove.
	* include/bits/stl_deque.h (deque): Add static assertions.
	* include/bits/stl_function.h (_Identity<const _Tp>): Add partial
	specialization.
	* include/bits/stl_list.h (list): Add static assertions.
	* include/bits/stl_map.h (map): Likewise.
	* include/bits/stl_multimap.h (multimap): Likewise.
	* include/bits/stl_multiset.h (multiset): Likewise.
	* include/bits/stl_set.h (set): Likewise.
	* include/bits/stl_tree.h (_Rb_tree): Likewise.
	* include/bits/stl_vector.h (vector): Likewise.
	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
	Use typename instead of class in template-parameter-list and remove
	spaces.
	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
	Likewise.
	* testsuite/23_containers/deque/48101-2_neg.cc: New test.
	* testsuite/23_containers/deque/48101_neg.cc: New test.
	* testsuite/23_containers/forward_list/48101-2_neg.cc: New test.
	* testsuite/23_containers/forward_list/48101_neg.cc: New test.
	* testsuite/23_containers/list/48101-2_neg.cc: New test.
	* testsuite/23_containers/list/48101_neg.cc: New test.
	* testsuite/23_containers/map/48101-2_neg.cc: New test.
	* testsuite/23_containers/map/48101_neg.cc: New test.
	* testsuite/23_containers/map/operations/31440.cc: Fix comparison
	object to have const-qualified call operator.
	* testsuite/23_containers/multimap/48101-2_neg.cc: New test.
	* testsuite/23_containers/multimap/48101_neg.cc: New test.
	* testsuite/23_containers/multiset/48101-2_neg.cc: New test.
	* testsuite/23_containers/multiset/48101_neg.cc: New test.
	* testsuite/23_containers/set/48101-2_neg.cc: New test.
	* testsuite/23_containers/set/48101_neg.cc: New test.
	* testsuite/23_containers/unordered_map/48101-2_neg.cc: New test.
	* testsuite/23_containers/unordered_map/48101_neg.cc: New test.
	* testsuite/23_containers/unordered_multimap/48101-2_neg.cc: New test.
	* testsuite/23_containers/unordered_multimap/48101_neg.cc: New test.
	* testsuite/23_containers/unordered_multiset/48101-2_neg.cc: New test.
	* testsuite/23_containers/unordered_multiset/48101_neg.cc: New test.
	* testsuite/23_containers/unordered_set/48101-2_neg.cc: New test.
	* testsuite/23_containers/unordered_set/48101_neg.cc: New test.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
	dg-error line number.
	* testsuite/23_containers/vector/48101-2_neg.cc: New test.
	* testsuite/23_containers/vector/48101_neg.cc: New test.

From-SVN: r255035
2017-11-21 20:47:09 +00:00
Ville Voutilainen 957f5feacf Deduction guides for associative containers, debug mode deduction guide fixes.
* include/bits/stl_iterator.h (__iter_key_t)
(__iter_val_t, __iter_to_alloc_t): New.
* include/bits/stl_map.h: Add deduction guides.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/unordered_map.h: Likewise.
* include/bits/unordered_set.h: Likewise.
* include/debug/deque: Likewise.
* include/debug/forward_list: Likewise.
* include/debug/list: Likewise.
* include/debug/map.h: Likewise.
* include/debug/multimap.h: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/set.h: Likewise.
* include/debug/unordered_map: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/vector: Likewise.
* testsuite/23_containers/map/cons/deduction.cc: New.
* testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
* testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
* testsuite/23_containers/set/cons/deduction.cc: Likewise.
* testsuite/23_containers/unordered_map/cons/deduction.cc: Likewise.
* testsuite/23_containers/unordered_multimap/cons/deduction.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/cons/deduction.cc:
Likewise.
* testsuite/23_containers/unordered_set/cons/deduction.cc: Likewise.

From-SVN: r254113
2017-10-26 19:42:31 +03:00
Jakub Jelinek 7b9361409d invoke.texi: Document -std=c++17 and -std=gnu++17 and document c++1z and gnu++1z as deprecated.
* doc/invoke.texi: Document -std=c++17 and -std=gnu++17 and document
	c++1z and gnu++1z as deprecated.  Change other references to
	-std=c++1z to -std=c++17 and -std=gnu++1z to -std=gnu++17.
	Change -Wc++1z-compat to -Wc++17-compat.
	* doc/cpp.texi: Document -std=c++17 defines __cplusplus 201703L.
	* dwarf2out.c (highest_c_language): Handle C++17.
	(gen_compile_unit_die): Likewise.
c-family/
	* c.opt (Wc++1z-compat): Change from option to undocumented alias.
	(Wc++17-compat): Change from undocumented alias to option.
	(Wnoexcept-type): Enable by Wc++17-compat instead of Wc++1z-compat,
	change C++1z to C++17 in description.
	(std=c++1z, std=gnu++1z): Change from option to undocumented
	deprecated alias.
	(std=c++17, std=gnu++17): Change from undocumented alias to option.
	Adjust description.
	* c-common.h (enum cxx_dialect): Rename cxx1z to cxx17.
	* c-opts.c (set_std_cxx1z): Rename to ...
	(set_std_cxx17): ... this.
	(c_common_handle_option): Rename OPT_std_c__1z to OPT_std_c__17
	and OPT_std_gnu__1z to OPT_std_gnu__17.  Adjust set_std_cxx1z
	caller.  
	(c_common_post_options): Use cxx17 instead of cxx1z.  Adjust
	comments.
cp/
	* decl.c (redeclaration_error_message): Use cxx17 instead of cxx1z,
	adjust diagnostics refering to C++1z or -std=gnu++1z or -std=c++1z
	to C++17 or -std=gnu++17 or -std=c++17.  Adjust comments.
	(cxx_init_decl_processing, next_initializable_field,
	is_direct_enum_init, check_initializer, cp_finish_decl,
	mark_inline_variable, grokdeclarator, grokparms, xref_basetypes,
	finish_function): Likewise.
	* cp-tree.h (DECL_INLINE_VAR_P): Likewise.
	* pt.c (mark_template_parm, convert_nontype_argument,
	instantiate_class_template_1, type_unification_real, unify,
	get_partial_spec_bindings, dependent_type_p_r): Likewise.
	* typeck.c (cp_build_unary_op): Likewise.
	* constexpr.c (var_in_maybe_constexpr_fn): Likewise.
	* call.c (build_user_type_conversion_1, build_over_call,
	build_special_member_call): Likewise.
	* lambda.c (begin_lambda_type): Likewise.
	* typeck2.c (process_init_constructor_record): Likewise.
	* class.c (build_base_field, finalize_literal_type_property,
	explain_non_literal_class): Likewise.
	* parser.c (cp_parser_diagnose_invalid_type_name,
	cp_parser_primary_expression, cp_parser_lambda_introducer,
	cp_parser_lambda_declarator_opt, cp_parser_selection_statement,
	cp_convert_range_for, cp_parser_perform_range_for_lookup,
	cp_parser_decomposition_declaration, cp_parser_linkage_specification,
	cp_parser_static_assert, cp_parser_simple_type_specifier,
	cp_parser_namespace_definition, cp_parser_using_declaration,
	cp_parser_init_declarator, cp_parser_type_parameter_key,
	cp_parser_exception_specification_opt, cp_parser_std_attribute_spec,
	cp_parser_constructor_declarator_p): Likewise.
	* mangle.c (struct globals): Rename need_cxx1z_warning to
	need_cxx17_warning.
	(write_exception_spec, start_mangling, mangle_decl): Likewise.
	* Make-lang.in (check-c++1z): Rename to check-c++17, depend on
	it.
	(check-c++17): New goal.  Use 17 instead of 1z.
	(check-c++-all): Use 17 instead of 1z.
testsuite/
	* lib/g++-dg.exp (g++-dg-runtest): Use 17 instead of 1z.
	* lib/target-supports.exp (check_effective_target_c++14): Use
	check_effective_target_c++17 instead of check_effective_target_c++1z.
	(check_effective_target_c++14_down): Likewise.
	(check_effective_target_c++1z_only): Rename to ...
	(check_effective_target_c++17_only): ... this.
	(check_effective_target_c++1z): Rename to ...
	(check_effective_target_c++17): ... this.
	* g++.dg/debug/dwarf2/inline-var-1.C: Use -std=c++17 or -std=gnu++17
	instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead of c++1z
	and c++17_only instead of c++1z_only.  Adjust expected diagnostics
	and comments refering to 1z to 17.
	* g++.dg/debug/dwarf2/inline-var-2.C: Likewise.
	* g++.dg/template/partial5.C: Likewise.
	* g++.dg/template/nontype8.C: Likewise.
	* g++.dg/cpp1z/noexcept-type5.C: Likewise.
	* g++.dg/cpp1z/nontype3a.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda4.C: Likewise.
	* g++.dg/cpp1z/noexcept-type16.C: Likewise.
	* g++.dg/cpp1z/class-deduction32.C: Likewise.
	* g++.dg/cpp1z/pr78771.C: Likewise.
	* g++.dg/cpp1z/elide1.C: Likewise.
	* g++.dg/cpp1z/fold3.C: Likewise.
	* g++.dg/cpp1z/class-deduction2.C: Likewise.
	* g++.dg/cpp1z/noexcept-type12.C: Likewise.
	* g++.dg/cpp1z/inline-var2.C: Likewise.
	* g++.dg/cpp1z/eval-order2.C: Likewise.
	* g++.dg/cpp1z/decomp21.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda11.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda9.C: Likewise.
	* g++.dg/cpp1z/utf8-neg.C: Likewise.
	* g++.dg/cpp1z/class-deduction41.C: Likewise.
	* g++.dg/cpp1z/class-deduction23.C: Likewise.
	* g++.dg/cpp1z/nodiscard3.C: Likewise.
	* g++.dg/cpp1z/static_assert-nomsg.C: Likewise.
	* g++.dg/cpp1z/noexcept-type9.C: Likewise.
	* g++.dg/cpp1z/class-deduction21.C: Likewise.
	* g++.dg/cpp1z/range-for1.C: Likewise.
	* g++.dg/cpp1z/init-statement4.C: Likewise.
	* g++.dg/cpp1z/udlit-utf8char.C: Likewise.
	* g++.dg/cpp1z/decomp30.C: Likewise.
	* g++.dg/cpp1z/class-deduction39.C: Likewise.
	* g++.dg/cpp1z/register2.C: Likewise.
	* g++.dg/cpp1z/decomp9.C: Likewise.
	* g++.dg/cpp1z/regress1.C: Likewise.
	* g++.dg/cpp1z/direct-enum-init1.C: Likewise.
	* g++.dg/cpp1z/class-deduction30.C: Likewise.
	* g++.dg/cpp1z/abbrev2.C: Likewise.
	* g++.dg/cpp1z/nontype-auto6.C: Likewise.
	* g++.dg/cpp1z/regress2.C: Likewise.
	* g++.dg/cpp1z/decomp16.C: Likewise.
	* g++.dg/cpp1z/bool-increment1.C: Likewise.
	* g++.dg/cpp1z/aligned-new1.C: Likewise.
	* g++.dg/cpp1z/decomp3.C: Likewise.
	* g++.dg/cpp1z/register1.C: Likewise.
	* g++.dg/cpp1z/namespace-attribs.C: Likewise.
	* g++.dg/cpp1z/class-deduction1.C: Likewise.
	* g++.dg/cpp1z/decomp10.C: Likewise.
	* g++.dg/cpp1z/constexpr-if11.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda10.C: Likewise.
	* g++.dg/cpp1z/decomp27.C: Likewise.
	* g++.dg/cpp1z/noexcept-type2.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda6.C: Likewise.
	* g++.dg/cpp1z/class-deduction9.C: Likewise.
	* g++.dg/cpp1z/attributes-enum-1.C: Likewise.
	* g++.dg/cpp1z/decomp11.C: Likewise.
	* g++.dg/cpp1z/aligned-new3.C: Likewise.
	* g++.dg/cpp1z/utf8-2.C: Likewise.
	* g++.dg/cpp1z/lambda-this3.C: Likewise.
	* g++.dg/cpp1z/decomp-constexpr1.C: Likewise.
	* g++.dg/cpp1z/byte1.C: Likewise.
	* g++.dg/cpp1z/nontype-auto9.C: Likewise.
	* g++.dg/cpp1z/aggr-base4.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda1.C: Likewise.
	* g++.dg/cpp1z/nontype-auto3.C: Likewise.
	* g++.dg/cpp1z/utf8-2a.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda7.C: Likewise.
	* g++.dg/cpp1z/aggr-base6.C: Likewise.
	* g++.dg/cpp1z/cplusplus.C: Likewise.
	* g++.dg/cpp1z/class-deduction20.C: Likewise.
	* g++.dg/cpp1z/aggr-base2.C: Likewise.
	* g++.dg/cpp1z/class-deduction6.C: Likewise.
	* g++.dg/cpp1z/noexcept-type3.C: Likewise.
	* g++.dg/cpp1z/class-deduction31.C: Likewise.
	* g++.dg/cpp1z/class-deduction25.C: Likewise.
	* g++.dg/cpp1z/class-deduction18.C: Likewise.
	* g++.dg/cpp1z/fold9.C: Likewise.
	* g++.dg/cpp1z/noexcept-type8.C: Likewise.
	* g++.dg/cpp1z/abbrev1.C: Likewise.
	* g++.dg/cpp1z/constexpr-if10.C: Likewise.
	* g++.dg/cpp1z/utf8.C: Likewise.
	* g++.dg/cpp1z/noexcept-type7.C: Likewise.
	* g++.dg/cpp1z/aggr-base3.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda8.C: Likewise.
	* g++.dg/cpp1z/init-statement2.C: Likewise.
	* g++.dg/cpp1z/nontype-auto4.C: Likewise.
	* g++.dg/cpp1z/constexpr-if12.C: Likewise.
	* g++.dg/cpp1z/class-deduction40.C: Likewise.
	* g++.dg/cpp1z/nontype3.C: Likewise.
	* g++.dg/cpp1z/class-deduction14.C: Likewise.
	* g++.dg/cpp1z/fold7.C: Likewise.
	* g++.dg/cpp1z/nontype2.C: Likewise.
	* g++.dg/cpp1z/class-deduction15.C: Likewise.
	* g++.dg/cpp1z/nested-namespace-def1.C: Likewise.
	* g++.dg/cpp1z/class-deduction13.C: Likewise.
	* g++.dg/cpp1z/aligned-new7.C: Likewise.
	* g++.dg/cpp1z/noexcept-type1.C: Likewise.
	* g++.dg/cpp1z/nontype1.C: Likewise.
	* g++.dg/cpp1z/init-statement5.C: Likewise.
	* g++.dg/cpp1z/nontype-auto2.C: Likewise.
	* g++.dg/cpp1z/decomp17.C: Likewise.
	* g++.dg/cpp1z/fold4.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda2.C: Likewise.
	* g++.dg/cpp1z/fold7a.C: Likewise.
	* g++.dg/cpp1z/nontype-auto5.C: Likewise.
	* g++.dg/cpp1z/init-statement7.C: Likewise.
	* g++.dg/cpp1z/aggr-base5.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda5.C: Likewise.
	* g++.dg/cpp1z/pr79143.C: Likewise.
	* g++.dg/cpp1z/class-deduction38.C: Likewise.
	* g++.dg/cpp1z/nontype-auto8.C: Likewise.
	* g++.dg/cpp1z/class-deduction12.C: Likewise.
	* g++.dg/cpp1z/decomp20.C: Likewise.
	* g++.dg/cpp1z/class-deduction22.C: Likewise.
	* g++.dg/cpp1z/class-deduction29.C: Likewise.
	* g++.dg/cpp1z/class-deduction8.C: Likewise.
	* g++.dg/cpp1z/class-deduction43.C: Likewise.
	* g++.dg/cpp1z/feat-cxx1z.C: Likewise.
	* g++.dg/cpp1z/fold8.C: Likewise.
	* g++.dg/cpp1z/init-statement3.C: Likewise.
	* g++.dg/cpp1z/nontype-auto10.C: Likewise.
	* g++.dg/cpp1z/class-deduction36.C: Likewise.
	* g++.dg/cpp1z/noexcept-type17.C: Likewise.
	* g++.dg/cpp1z/fallthrough1.C: Likewise.
	* g++.dg/cpp1z/fold1.C: Likewise.
	* g++.dg/cpp1z/class-deduction26.C: Likewise.
	* g++.dg/cpp1z/fold-ice1.C: Likewise.
	* g++.dg/cpp1z/fold5.C: Likewise.
	* g++.dg/cpp1z/class-deduction34.C: Likewise.
	* g++.dg/cpp1z/noexcept-type6.C: Likewise.
	* g++.dg/cpp1z/class-deduction7.C: Likewise.
	* g++.dg/cpp1z/class-deduction16.C: Likewise.
	* g++.dg/cpp1z/class-deduction10.C: Likewise.
	* g++.dg/cpp1z/eval-order3.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda13.C: Likewise.
	* g++.dg/cpp1z/aggr-base2a.C: Likewise.
	* g++.dg/cpp1z/nontype-auto1.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda3.C: Likewise.
	* g++.dg/cpp1z/nontype-auto7.C: Likewise.
	* g++.dg/cpp1z/decomp15.C: Likewise.
	* g++.dg/cpp1z/noexcept-type4.C: Likewise.
	* g++.dg/cpp1z/fold-mangle.C: Likewise.
	* g++.dg/cpp1z/class-deduction35.C: Likewise.
	* g++.dg/cpp1z/decomp4.C: Likewise.
	* g++.dg/cpp1z/class-deduction42.C: Likewise.
	* g++.dg/cpp1z/init-statement8.C: Likewise.
	* g++.dg/cpp1z/inline-var1a.C: Likewise.
	* g++.dg/cpp1z/init-statement6.C: Likewise.
	* g++.dg/cpp1z/class-deduction17.C: Likewise.
	* g++.dg/cpp1z/class-deduction28.C: Likewise.
	* g++.dg/cpp1z/class-deduction27.C: Likewise.
	* g++.dg/cpp1z/decomp-bitfield1.C: Likewise.
	* g++.dg/cpp1z/attributes-enum-1a.C: Likewise.
	* g++.dg/cpp1z/class-deduction11.C: Likewise.
	* g++.dg/cpp1z/constexpr-lambda12.C: Likewise.
	* g++.dg/cpp1z/init-statement9.C: Likewise.
	* g++.dg/cpp1z/class-deduction19.C: Likewise.
	* g++.dg/cpp1z/class-deduction5.C: Likewise.
	* g++.dg/cpp1z/fold2.C: Likewise.
	* g++.dg/cpp1z/class-deduction33.C: Likewise.
	* g++.dg/cpp1z/class-deduction24.C: Likewise.
	* g++.dg/cpp1z/aggr-base1.C: Likewise.
	* g++.dg/cpp1z/fold6.C: Likewise.
	* g++.dg/cpp1z/decomp12.C: Likewise.
	* g++.dg/cpp1z/class-deduction4.C: Likewise.
	* g++.dg/cpp1z/inline-var1.C: Likewise.
	* g++.dg/cpp1z/aligned-new2.C: Likewise.
	* g++.dg/cpp1z/class-deduction3.C: Likewise.
	* g++.dg/other/error3.C: Likewise.
	* g++.dg/init/new25.C: Likewise.
	* g++.dg/init/new13.C: Likewise.
	* g++.dg/tls/diag-2.C: Likewise.
	* g++.dg/tls/diag-4.C: Likewise.
	* g++.dg/opt/noreturn-1.C: Likewise.
	* g++.dg/eh/async-unwind2.C: Likewise.
	* g++.dg/eh/spec9.C: Likewise.
	* g++.dg/eh/spec7.C: Likewise.
	* g++.dg/eh/template1.C: Likewise.
	* g++.dg/eh/cond4.C: Likewise.
	* g++.dg/eh/pr41819.C: Likewise.
	* g++.dg/eh/delete1.C: Likewise.
	* g++.dg/eh/spec3.C: Likewise.
	* g++.dg/eh/forced4.C: Likewise.
	* g++.dg/eh/spec2.C: Likewise.
	* g++.dg/eh/shadow1.C: Likewise.
	* g++.dg/eh/pr38662.C: Likewise.
	* g++.dg/eh/ehopt1.C: Likewise.
	* g++.dg/eh/spec8.C: Likewise.
	* g++.dg/eh/init-temp2.C: Likewise.
	* g++.dg/rtti/crash3.C: Likewise.
	* g++.dg/warn/Wreturn-type-3.C: Likewise.
	* g++.dg/warn/register-parm-1.C: Likewise.
	* g++.dg/warn/register-var-2.C: Likewise.
	* g++.dg/gcov/gcov-7.C: Likewise.
	* g++.dg/tree-ssa/pr45605.C: Likewise.
	* g++.dg/cpp/pr23827_cxx98_neg.C: Likewise.
	* g++.dg/lookup/exception1.C: Likewise.
	* g++.dg/ubsan/pr79589.C: Likewise.
	* g++.dg/tm/pr47340.C: Likewise.
	* g++.dg/tm/pr46567.C: Likewise.
	* g++.dg/expr/bitfield5.C: Likewise.
	* g++.dg/expr/bool1.C: Likewise.
	* g++.dg/expr/lval3.C: Likewise.
	* g++.dg/expr/lval4.C: Likewise.
	* g++.dg/expr/bitfield4.C: Likewise.
	* g++.dg/expr/bitfield6.C: Likewise.
	* g++.dg/expr/bool3.C: Likewise.
	* g++.dg/ext/has_nothrow_constructor.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-7.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-1.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-2.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-4.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-5.C: Likewise.
	* g++.dg/ext/has_nothrow_copy-6.C: Likewise.
	* g++.dg/ext/has_nothrow_assign.C: Likewise.
	* g++.dg/parse/register1.C: Likewise.
	* g++.dg/parse/error15.C: Likewise.
	* g++.dg/parse/linkage2.C: Likewise.
	* g++.dg/concepts/intro2.C: Likewise.
	* g++.dg/concepts/class.C: Likewise.
	* g++.dg/concepts/traits1.C: Likewise.
	* g++.dg/concepts/req5.C: Likewise.
	* g++.dg/concepts/var-concept5.C: Likewise.
	* g++.dg/concepts/fn-concept2.C: Likewise.
	* g++.dg/concepts/traits2.C: Likewise.
	* g++.dg/concepts/placeholder2.C: Likewise.
	* g++.dg/concepts/class6.C: Likewise.
	* g++.dg/concepts/memtmpl1.C: Likewise.
	* g++.dg/concepts/friend2.C: Likewise.
	* g++.dg/concepts/template-parm3.C: Likewise.
	* g++.dg/concepts/template-parm10.C: Likewise.
	* g++.dg/concepts/explicit-spec1.C: Likewise.
	* g++.dg/concepts/explicit-spec3.C: Likewise.
	* g++.dg/concepts/var-templ2.C: Likewise.
	* g++.dg/concepts/intro5.C: Likewise.
	* g++.dg/concepts/deduction-constraint1.C: Likewise.
	* g++.dg/concepts/iconv1.C: Likewise.
	* g++.dg/concepts/constrained-parm.C: Likewise.
	* g++.dg/concepts/template-template-parm1.C: Likewise.
	* g++.dg/concepts/var-concept3.C: Likewise.
	* g++.dg/concepts/class3.C: Likewise.
	* g++.dg/concepts/memfun2.C: Likewise.
	* g++.dg/concepts/req1.C: Likewise.
	* g++.dg/concepts/disjunction1.C: Likewise.
	* g++.dg/concepts/req17.C: Likewise.
	* g++.dg/concepts/pr65848.C: Likewise.
	* g++.dg/concepts/placeholder4.C: Likewise.
	* g++.dg/concepts/decl-diagnose.C: Likewise.
	* g++.dg/concepts/intro7.C: Likewise.
	* g++.dg/concepts/pr68683.C: Likewise.
	* g++.dg/concepts/partial-spec4.C: Likewise.
	* g++.dg/concepts/template-parm5.C: Likewise.
	* g++.dg/concepts/explicit-inst1.C: Likewise.
	* g++.dg/concepts/class-deduction1.C: Likewise.
	* g++.dg/concepts/class1.C: Likewise.
	* g++.dg/concepts/req15.C: Likewise.
	* g++.dg/concepts/memfun.C: Likewise.
	* g++.dg/concepts/pr68434.C: Likewise.
	* g++.dg/concepts/inherit-ctor4.C: Likewise.
	* g++.dg/concepts/partial-spec6.C: Likewise.
	* g++.dg/concepts/var-templ1.C: Likewise.
	* g++.dg/concepts/template-parm8.C: Likewise.
	* g++.dg/concepts/explicit-inst3.C: Likewise.
	* g++.dg/concepts/class4.C: Likewise.
	* g++.dg/concepts/req6.C: Likewise.
	* g++.dg/concepts/fn8.C: Likewise.
	* g++.dg/concepts/class5.C: Likewise.
	* g++.dg/concepts/placeholder5.C: Likewise.
	* g++.dg/concepts/req16.C: Likewise.
	* g++.dg/concepts/req10.C: Likewise.
	* g++.dg/concepts/var-concept2.C: Likewise.
	* g++.dg/concepts/auto3.C: Likewise.
	* g++.dg/concepts/generic-fn-err.C: Likewise.
	* g++.dg/concepts/pr65552.C: Likewise.
	* g++.dg/concepts/partial-concept-id2.C: Likewise.
	* g++.dg/concepts/fn1.C: Likewise.
	* g++.dg/concepts/partial-spec.C: Likewise.
	* g++.dg/concepts/template-parm12.C: Likewise.
	* g++.dg/concepts/diagnostic1.C: Likewise.
	* g++.dg/concepts/intro1.C: Likewise.
	* g++.dg/concepts/explicit-inst4.C: Likewise.
	* g++.dg/concepts/req18.C: Likewise.
	* g++.dg/concepts/explicit-spec5.C: Likewise.
	* g++.dg/concepts/var-concept6.C: Likewise.
	* g++.dg/concepts/fn9.C: Likewise.
	* g++.dg/concepts/req2.C: Likewise.
	* g++.dg/concepts/template-parm7.C: Likewise.
	* g++.dg/concepts/req14.C: Likewise.
	* g++.dg/concepts/template-parm6.C: Likewise.
	* g++.dg/concepts/variadic4.C: Likewise.
	* g++.dg/concepts/fn6.C: Likewise.
	* g++.dg/concepts/req-neg1.C: Likewise.
	* g++.dg/concepts/alias3.C: Likewise.
	* g++.dg/concepts/expression2.C: Likewise.
	* g++.dg/concepts/partial-spec3.C: Likewise.
	* g++.dg/concepts/expression3.C: Likewise.
	* g++.dg/concepts/memfun-err.C: Likewise.
	* g++.dg/concepts/pr66091.C: Likewise.
	* g++.dg/concepts/explicit-spec2.C: Likewise.
	* g++.dg/concepts/equiv.C: Likewise.
	* g++.dg/concepts/friend1.C: Likewise.
	* g++.dg/concepts/fn4.C: Likewise.
	* g++.dg/concepts/var-templ3.C: Likewise.
	* g++.dg/concepts/explicit-inst2.C: Likewise.
	* g++.dg/concepts/alias2.C: Likewise.
	* g++.dg/concepts/regress/alias-decl-42.C: Likewise.
	* g++.dg/concepts/placeholder6.C: Likewise.
	* g++.dg/concepts/fn10.C: Likewise.
	* g++.dg/concepts/req3.C: Likewise.
	* g++.dg/concepts/variadic2.C: Likewise.
	* g++.dg/concepts/pr65636.C: Likewise.
	* g++.dg/concepts/intro6.C: Likewise.
	* g++.dg/concepts/class2.C: Likewise.
	* g++.dg/concepts/fn2.C: Likewise.
	* g++.dg/concepts/req20.C: Likewise.
	* g++.dg/concepts/req8.C: Likewise.
	* g++.dg/concepts/placeholder1.C: Likewise.
	* g++.dg/concepts/pr65854.C: Likewise.
	* g++.dg/concepts/member-concept.C: Likewise.
	* g++.dg/concepts/template-parm2.C: Likewise.
	* g++.dg/concepts/variadic1.C: Likewise.
	* g++.dg/concepts/fn7.C: Likewise.
	* g++.dg/concepts/intro4.C: Likewise.
	* g++.dg/concepts/req13.C: Likewise.
	* g++.dg/concepts/inherit-ctor3.C: Likewise.
	* g++.dg/concepts/explicit-spec6.C: Likewise.
	* g++.dg/concepts/auto1.C: Likewise.
	* g++.dg/concepts/alias1.C: Likewise.
	* g++.dg/concepts/fn-concept1.C: Likewise.
	* g++.dg/concepts/template-parm11.C: Likewise.
	* g++.dg/concepts/explicit-spec4.C: Likewise.
	* g++.dg/concepts/partial-concept-id1.C: Likewise.
	* g++.dg/concepts/req9.C: Likewise.
	* g++.dg/concepts/req4.C: Likewise.
	* g++.dg/concepts/pr65681.C: Likewise.
	* g++.dg/concepts/req7.C: Likewise.
	* g++.dg/concepts/req12.C: Likewise.
	* g++.dg/concepts/fn5.C: Likewise.
	* g++.dg/concepts/alias4.C: Likewise.
	* g++.dg/concepts/generic-fn.C: Likewise.
	* g++.dg/concepts/feature-macro.C: Likewise.
	* g++.dg/concepts/req19.C: Likewise.
	* g++.dg/concepts/placeholder3.C: Likewise.
	* g++.dg/concepts/intro3.C: Likewise.
	* g++.dg/concepts/partial-spec5.C: Likewise.
	* g++.dg/concepts/template-parm4.C: Likewise.
	* g++.dg/concepts/dr1430.C: Likewise.
	* g++.dg/concepts/pr65634.C: Likewise.
	* g++.dg/concepts/var-concept4.C: Likewise.
	* g++.dg/concepts/pr67249.C: Likewise.
	* g++.dg/concepts/expression.C: Likewise.
	* g++.dg/concepts/pr65575.C: Likewise.
	* g++.dg/concepts/partial-spec2.C: Likewise.
	* g++.dg/concepts/template-parm9.C: Likewise.
	* g++.dg/concepts/inherit-ctor1.C: Likewise.
	* g++.dg/concepts/equiv2.C: Likewise.
	* g++.dg/concepts/req11.C: Likewise.
	* g++.dg/concepts/template-parm1.C: Likewise.
	* g++.dg/concepts/inherit-ctor2.C: Likewise.
	* g++.dg/concepts/var-concept1.C: Likewise.
	* g++.dg/concepts/fn3.C: Likewise.
	* g++.dg/torture/pr46364.C: Likewise.
	* g++.dg/torture/stackalign/eh-alloca-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-vararg-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-vararg-2.C: Likewise.
	* g++.dg/torture/stackalign/eh-global-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-thiscall-1.C: Likewise.
	* g++.dg/torture/stackalign/eh-inline-2.C: Likewise.
	* g++.dg/torture/stackalign/eh-inline-1.C: Likewise.
	* g++.dg/torture/pr52918-1.C: Likewise.
	* g++.dg/torture/pr49394.C: Likewise.
	* g++.dg/torture/pr57190.C: Likewise.
	* g++.dg/cpp0x/static_assert8.C: Likewise.
	* g++.dg/cpp0x/noexcept19.C: Likewise.
	* g++.dg/cpp0x/variadic-throw.C: Likewise.
	* g++.dg/cpp0x/variadic73.C: Likewise.
	* g++.dg/cpp0x/noexcept02.C: Likewise.
	* g++.dg/cpp0x/defaulted23.C: Likewise.
	* g++.dg/cpp0x/noexcept08.C: Likewise.
	* g++.dg/cpp0x/auto9.C: Likewise.
	* g++.dg/cpp0x/lambda/lambda-eh2.C: Likewise.
	* g++.dg/cpp0x/error5.C: Likewise.
	* c-c++-common/gomp/atomic-12.c: Likewise.
	* c-c++-common/gomp/atomic-13.c: Likewise.
	* c-c++-common/gomp/atomic-14.c: Likewise.
	* c-c++-common/Wvarargs-2.c: Likewise.
	* c-c++-common/Wvarargs.c: Likewise.
	* c-c++-common/vector-subscript-2.c: Likewise.
	* g++.old-deja/g++.robertl/eb123.C: Likewise.
	* g++.old-deja/g++.eh/tmpl3.C: Likewise.
	* g++.old-deja/g++.eh/cleanup2.C: Likewise.
	* g++.old-deja/g++.eh/badalloc1.C: Likewise.
	* g++.old-deja/g++.eh/throw2.C: Likewise.
	* g++.old-deja/g++.eh/throw1.C: Likewise.
	* g++.old-deja/g++.eh/tmpl1.C: Likewise.
	* g++.old-deja/g++.other/new7.C: Likewise.
	* g++.old-deja/g++.other/crash30.C: Likewise.
	* g++.old-deja/g++.other/regstack.C: Likewise.
	* g++.old-deja/g++.other/crash28.C: Likewise.
	* g++.old-deja/g++.jason/bool5.C: Likewise.
	* g++.old-deja/g++.mike/p10416.C: Likewise.
	* g++.old-deja/g++.mike/eh25.C: Likewise.
	* g++.old-deja/g++.mike/eh55.C: Likewise.
libcpp/
	* include/cpplib.h (enum c_lang): Rename CLK_GNUCXX1Z
	to CLK_GNUCXX17 and CLK_CXX1Z to CLK_CXX17.
	* init.c (lang_defaults, cpp_init_builtins): Likewise.
	* expr.c (cpp_classify_number): Use C++17 instead of C++1z
	in diagnostics.
libstdc++-v3/
	* testsuite/libstdc++-prettyprinters/cxx17.cc: Use -std=c++17 or
	-std=gnu++17 instead of -std=c++1z or -std=gnu++1z.  Use c++17 instead
	of c++1z and c++17_only instead of c++1z_only.  Adjust expected
	diagnostics and comments refering to 1z to 17.
	* testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise.
	* testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise.
	* testsuite/30_threads/scoped_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Likewise.
	* testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc:
	Likewise.
	* testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise.
	* testsuite/18_support/launder/1.cc (test02): Likewise.
	* testsuite/18_support/launder/requirements_neg.cc: Likewise.
	* testsuite/18_support/launder/requirements.cc: Likewise.
	* testsuite/18_support/byte/requirements.cc: Likewise.
	* testsuite/18_support/byte/ops.cc: Likewise.
	* testsuite/18_support/byte/global_neg.cc: Likewise.
	* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
	Likewise.
	* testsuite/27_io/types/4.cc: Likewise.
	* testsuite/25_algorithms/sample/81221.cc: Likewise.
	* testsuite/25_algorithms/sample/1.cc: Likewise.
	* testsuite/25_algorithms/sample/2.cc: Likewise.
	* testsuite/25_algorithms/search/searcher.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
	* testsuite/experimental/filesystem/path/construct/string_view.cc:
	Likewise.
	* testsuite/24_iterators/range_access_cpp17.cc: Likewise.
	* testsuite/24_iterators/container_access.cc: Likewise.
	* testsuite/ext/pb_ds/regression/hash_map_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
	* testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
	* testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/array.cc: Likewise.
	* testsuite/20_util/shared_ptr/observers/array.cc (struct A): Likewise.
	* testsuite/20_util/pair/cons/deduction.cc: Likewise.
	* testsuite/20_util/variant/deduction.cc: Likewise.
	* testsuite/20_util/tuple/78939.cc: Likewise.
	* testsuite/20_util/tuple/cons/deduction.cc: Likewise.
	* testsuite/20_util/void_t/1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc: Likewise.
	* testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise.
	* testsuite/20_util/addressof/requirements/constexpr.cc: Likewise.
	* testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise.
	* testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc:
	Likewise.
	* testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc:
	Likewise.
	* testsuite/20_util/has_unique_object_representations/value.cc:
	Likewise.
	* testsuite/20_util/time_point/arithmetic/constexpr.cc: Likewise.
	* testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
	* testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise.
	* testsuite/20_util/function/cons/deduction.cc: Likewise.
	* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
	Likewise.
	* testsuite/20_util/is_aggregate/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
	Likewise.
	* testsuite/20_util/is_aggregate/value.cc: Likewise.
	* testsuite/26_numerics/lcm/1.cc: Likewise.
	* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
	* testsuite/26_numerics/gcd/1.cc: Likewise.
	* testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
	* testsuite/26_numerics/valarray/deduction.cc: Likewise.
	* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Likewise.
	* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
	* testsuite/23_containers/queue/members/emplace_cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/array/cons/deduction.cc: Likewise.
	* testsuite/23_containers/array/cons/deduction_neg.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/deque/cons/deduction.cc: Likewise.
	* testsuite/23_containers/stack/members/emplace_cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/list/cons/deduction.cc: Likewise.
	* testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/forward_list/cons/deduction.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
	Likewise.
	* testsuite/23_containers/vector/cons/deduction.cc: Likewise.
	* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc:
	Likewise.
	* testsuite/21_strings/basic_string/cons/char/9.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/deduction.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/79162.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
	Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/79162.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
	Likewise.

From-SVN: r252826
2017-09-15 18:15:46 +02:00
Jonathan Wakely 85c05b5eec Fix order and types of members in C++17 insert_return_type structs
PR libstdc++/80761
	* include/bits/node_handle.h (_Node_insert_return): Reorder members.
	(tuple_size, tuple_element): Remove partial specializations.
	* include/bits/stl_tree.h (_Rb_tree::insert_return_type): Use
	const_iterator for std::set.
	* testsuite/23_containers/map/modifiers/extract.cc: New.
	* testsuite/23_containers/set/modifiers/extract.cc: New.
	* testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
	* testsuite/23_containers/unordered_set/modifiers/extract.cc: New.

From-SVN: r248062
2017-05-15 14:47:40 +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
Jonathan Wakely 45cac8baeb Mark test as XFAIL for C++17 mode
* testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Mark
	XFAIL for C++17 until node reinsertion supports fancy pointers.

From-SVN: r244436
2017-01-13 13:01:48 +00:00
Jakub Jelinek cbe34bb5ed Update copyright years.
From-SVN: r243994
2017-01-01 13:07:43 +01: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 2dbe56bdfb Implement C++17 node extraction and insertion (P0083R5)
* doc/xml/manual/status_cxx2017.xml: Document status.
	* doc/html/*: Regenerate.
	* include/Makefile.am: Add bits/node_handle.h and reorder.
	* include/Makefile.in: Regenerate.
	* include/bits/hashtable.h (_Hashtable::node_type)
	(_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
	(_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
	(_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
	(_Hash_merge_helper): Define primary template.
	* include/bits/node_handle.h: New header.
	* include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
	friend.
	(map::node_type, map::insert_return_type, map::extract, map::merge)
	(map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
	Define new members.
	(_Rb_tree_merge_helper): Specialize for map.
	* include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
	as friend.
	(multimap::node_type, multimap::extract, multimap::merge)
	(multimap::insert(node_type&&))
	(multimap::insert(const_iterator, node_type&&)): Define.
	(_Rb_tree_merge_helper): Specialize for multimap.
	* include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
	as friend.
	(multiset::node_type, multiset::extract, multiset::merge)
	(multiset::insert(node_type&&))
	(multiset::insert(const_iterator, node_type&&)): Define.
	* include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
	friend.
	(set::node_type, set::insert_return_type, set::extract, set::merge)
	(set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
	Define.
	(_Rb_tree_merge_helper): Specialize for set.
	* include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
	(_Rb_tree::node_type, _Rb_tree::insert_return_type)
	(_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
	(_Rb_tree::_M_reinsert_node_hint_unique)
	(_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
	(_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
	(_Rb_tree_merge_helper): Specialize for multiset.
	* include/bits/unordered_map.h (unordered_map): Declare
	unordered_map<> and unordered_multimap<> as friends.
	(unordered_map::node_type, unordered_map::insert_return_type)
	(unordered_map::extract, unordered_map::merge)
	(unordered_map::insert(node_type&&))
	(unordered_map::insert(const_iterator, node_type&&))
	(unordered_multimap): Declare _Hash_merge_helper as friend.
	(unordered_multimap::node_type, unordered_multimap::extract)
	(unordered_multimap::merge, unordered_multimap::insert(node_type&&))
	(unordered_multimap::insert(const_iterator, node_type&&)): Define.
	(_Hash_merge_helper): Specialize for unordered maps and multimaps.
	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
	Declare _Hash_merge_helper as friend.
	(unordered_set::node_type, unordered_set::insert_return_type)
	(unordered_set::extract, unordered_set::merge)
	(unordered_set::insert(node_type&&))
	(unordered_set::insert(const_iterator, node_type&&)): Define.
	(unordered_multiset::node_type, unordered_multiset::extract)
	(unordered_multiset::merge, unordered_multiset::insert(node_type&&))
	(unordered_multiset::insert(const_iterator, node_type&&)): Define.
	(_Hash_merge_helper): Specialize for unordered sets and multisets.
	* include/debug/map.h (map): Add using declarations or forwarding
	functions for new members.
	* include/debug/map.h (multimap): Likewise.
	* include/debug/map.h (multiset): Likewise.
	* include/debug/map.h (set): Likewise.
	* include/debug/unordered_map (unordered_map, unordered_multimap):
	Likewise.
	* include/debug/unordered_set( unordered_set, unordered_multiset):
	Likewise.
	* python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
	helper function.
	(get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
	(StdNodeHandlePrinter): Define printer for node handles.
	(build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
	* testsuite/23_containers/map/modifiers/extract.cc: New.
	* testsuite/23_containers/map/modifiers/merge.cc: New.
	* testsuite/23_containers/multimap/modifiers/extract.cc: New.
	* testsuite/23_containers/multimap/modifiers/merge.cc: New.
	* testsuite/23_containers/multiset/modifiers/extract.cc: New.
	* testsuite/23_containers/multiset/modifiers/merge.cc: New.
	* testsuite/23_containers/set/modifiers/extract.cc: New.
	* testsuite/23_containers/set/modifiers/merge.cc: New.
	* testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
	* testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
	* testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
	New.
	* testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
	* testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
	New.
	* testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
	* testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
	* testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
	dg-error lineno.
	* testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.

From-SVN: r240363
2016-09-22 14:58:49 +01: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
François Dumont 29dbb034cb re PR libstdc++/71181 (Reserving in unordered_map doesn't reserve enough)
2016-06-20  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/71181
	* include/tr1/hashtable_policy.h
	(_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
	dereferenceable to avoid check on lower_bound result.
	(_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
	(_Prime_rehash_policy::_M_need_rehash): Likewise.
	* src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
	Always return a value greater than input value. Set _M_next_resize to
	max value when reaching highest prime number.
	* src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
	being now useless.
	* testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
	* testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
	(test02): New.
	* testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
	* testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
	Fix indentation.

From-SVN: r237617
2016-06-20 20:04:25 +00:00
François Dumont 732eb07625 c++config (_GLIBCXX14_USE_CONSTEXPR): New.
2016-05-24  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
	* include/bits/hashtable_policy.h
	(_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
	having load factor management.
	(_Mask_range_hashing): New.
	(__clp2): New.
	(_Power2_rehash_policy): New.
	(_Inserts<>): Remove last template parameter, _Unique_keys, so that
	partial specializations only depend on whether iterators are constant
	or not.
	* testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
	test new hash policy.
	* 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/insert/hash_policy.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
	New.
	* testsuite/performance/23_containers/insert/54075.cc: Add benchmark
	using the new hash policy.
	* testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.

From-SVN: r236669
2016-05-24 20:55:57 +00:00
Jakub Jelinek 818ab71a41 Update copyright years.
From-SVN: r232055
2016-01-04 15:30:50 +01: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
François Dumont 291e91daa7 hashtable.h (_Hashtable<>::__rehash_policy): Do not rehash container.
2015-07-05  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Do not
	rehash container.
	* testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
	Adapt.

From-SVN: r225436
2015-07-05 21:16:07 +00:00
Jonathan Wakely 7946683835 alloc_traits.h (__alloctr_rebind): Remove.
* include/bits/alloc_traits.h (__alloctr_rebind): Remove.
	(__allocator_traits_base): New base class.
	(__alloc_rebind): Reimplement in terms of detection idiom.
	(allocator_traits): Derive from __allocator_traits_base. Reimplement
	nested types in terms of detection idiom. Simplify SFINAE constraints
	on overloaded static member functions.
	* include/bits/hashtable.h (_Hashtable): Use __alloc_rebind instead
	of __alloctr_rebind.
	* testsuite/20_util/scoped_allocator/propagation.cc: Define rebind.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
	dg-error line number.

From-SVN: r225244
2015-07-01 13:24:09 +01:00
François Dumont 90f0d17641 66055.cc: Add constructor invocations.
2015-05-19  François Dumont  <fdumont@gcc.gnu.org>

	* testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
	invocations.
	* testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
	* testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.

From-SVN: r223413
2015-05-19 19:57:09 +00:00
Nathan Myers ddbd742bf8 re PR libstdc++/66055 (hash containers missing required reserving constructors)
2015-05-14  Nathan Myers  <ncm@cantrip.org>
	    Jonathan Wakely  <jwakely@redhat.com>

	PR libstdc++/66055
	* include/std/unordered_map (unordered_map, unordered_multimap): Add
	missing constructors.
	* include/std/unordered_set (unordered_set, unordered_multiset):
	Likewise.
	* testsuite/23_containers/unordered_map/cons/66055.cc: New.
	* testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
	* testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
	* testsuite/23_containers/unordered_set/cons/66055.cc: New.

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

From-SVN: r223198
2015-05-14 14:47:19 +01:00
Jonathan Wakely 32e6a60e3a alloc_traits.h (_S_max_size): Implement LWG 2466.
* include/bits/alloc_traits.h (_S_max_size): Implement LWG 2466.
	* testsuite/20_util/allocator_traits/members/max_size.cc: Adjust.
	* testsuite/23_containers/forward_list/allocator/minimal.cc:
	Likewise.
	* testsuite/23_containers/map/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/multimap/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/multiset/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/set/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/minimal.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/minimal.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/minimal.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/allocator/minimal.cc:
	Likewise.
	* testsuite/util/testsuite_allocator.h: Remove unused parameter.

From-SVN: r223154
2015-05-13 13:21:45 +01:00
Jakub Jelinek 5624e564d2 Update copyright years.
From-SVN: r219188
2015-01-05 13:33:28 +01: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
Paolo Carlini d5ffd10bc2 57899.cc: Prefer -std=gnu++11.
2014-10-15  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/bind/57899.cc: Prefer -std=gnu++11.
	* testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
	Likewise.
	* testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
	Likewise.
	* testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
	Likewise.
	* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/copy.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/copy_assign.cc: 
	Likewise.
	* testsuite/23_containers/unordered_map/allocator/minimal.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_map/allocator/noexcept.cc: Likewise.
	* testsuite/23_containers/unordered_map/allocator/swap.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/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc: 
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/copy.cc: 
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc: 
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/minimal.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_multimap/allocator/noexcept.cc: 
	Likewise.
	* testsuite/23_containers/unordered_multimap/allocator/swap.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/
	end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/debug/
	max_load_factor_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/
	copy.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/
	copy_assign.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/
	minimal.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_multiset/allocator/
	noexcept.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/allocator/
	swap.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/
	end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/debug/
	max_load_factor_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/copy.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/
	copy_assign.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/minimal.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/move.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/
	move_assign.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/
	noexcept.cc: Likewise.
	* testsuite/23_containers/unordered_set/allocator/swap.cc: Likewise.
	* testsuite/23_containers/unordered_set/buckets/swap.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/end1_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
	* testsuite/23_containers/unordered_set/debug/
	max_load_factor_neg.cc: Likewise.
	* testsuite/26_numerics/complex/abi_tag.cc: Likewise.
	* testsuite/26_numerics/headers/cstdlib/54686.c: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/bernoulli_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/binomial_distribution/requirements/
	explicit_instantiation/1.cc
	* testsuite/26_numerics/random/binomial_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/cauchy_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/default_random_engine.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	base_copy.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	base_move.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/discard_block_engine/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/cons/
	initlist.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/cons/
	num_xbound_fun.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/cons/
	range.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/operators/
	call-default.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/
	requirements/typedefs.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	base_copy.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	base_move.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/independent_bits_engine/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/knuth_b.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/requirements/
	constants.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/requirements/
	non_uint_neg.cc: Likewise.
	* testsuite/26_numerics/random/linear_congruential_engine/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
	constants.cc: Likewise.
	* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/minstd_rand.cc: Likewise.
	* testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
	* testsuite/26_numerics/random/mt19937.cc: Likewise.
	* testsuite/26_numerics/random/mt19937_64.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	operators/equal.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	operators/inequal.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	requirements/typedefs.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	cons/default.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	cons/initlist_fun.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	cons/num_xbound_fun.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	cons/range.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	operators/call-default.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	operators/equal.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	operators/inequal.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	requirements/typedefs.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	cons/default.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	cons/initlist_fun.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	cons/num_xbound_fun.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	cons/range.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	operators/call-default.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	operators/equal.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	operators/inequal.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	requirements/typedefs.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/random_device/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
	* testsuite/26_numerics/random/random_device/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/ranlux24.cc: Likewise.
	* testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
	* testsuite/26_numerics/random/ranlux48.cc: Likewise.
	* testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
	* testsuite/26_numerics/random/seed_seq/cons/default.cc: Likewise.
	* testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
	* testsuite/26_numerics/random/seed_seq/cons/range.cc: Likewise.
	* testsuite/26_numerics/random/seed_seq/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	base_copy.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	base_move.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/requirements/
	constants.cc: Likewise.
	* testsuite/26_numerics/random/shuffle_order_engine/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	copy.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	seed1.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	seed2.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/
	operators/equal.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/
	operators/inequal.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/
	operators/serialize.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/
	requirements/constants.cc: Likewise.
	* testsuite/26_numerics/random/subtract_with_carry_engine/
	requirements/typedefs.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/cons/
	default.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/cons/
	parms.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/operators/
	equal.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/basic/
	string_01.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/basic/
	string_range_00_03.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/basic/
	string_range_01_03.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/basic/
	string_range_02_03.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	cstring_plus.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	cstring_questionmark.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	string_any.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	string_range_00_03.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	string_range_01_03.cc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/
	string_range_02_03.cc: Likewise.
	* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/basic/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/basic/default.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/basic/
	pstring_wchar_t.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/cstring_awk.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/cstring_ecma.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/cstring_egrep.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/char/cstring_grep.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/copy_char.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
	* testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
	* testsuite/28_regex/constants/error_type.cc: Likewise.
	* testsuite/28_regex/constants/match_flag_type.cc: Likewise.
	* testsuite/28_regex/constants/syntax_option_type.cc: Likewise.
	* testsuite/28_regex/iterators/regex_iterator/ctors/char/
	default.cc: Likewise.
	* testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
	default.cc: Likewise.
	* testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
	* testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
	default.cc: Likewise.
	* testsuite/28_regex/iterators/regex_token_iterator/
	typedefs.cc: Likewise.
	* testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
	* testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
	* testsuite/28_regex/match_results/typedefs.cc: Likewise.
	* testsuite/28_regex/regex_error/base.cc: Likewise.
	* testsuite/28_regex/regex_error/regex_error.cc: Likewise.
	* testsuite/28_regex/requirements/typedefs.cc: Likewise.
	* testsuite/28_regex/sub_match/cast_char.cc: Likewise.
	* testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
	* testsuite/28_regex/sub_match/length.cc: Likewise.
	* testsuite/28_regex/sub_match/typedefs.cc: Likewise.
	* testsuite/28_regex/traits/char/isctype.cc: Likewise.
	* testsuite/28_regex/traits/char/length.cc: Likewise.
	* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
	* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
	* testsuite/28_regex/traits/char/transform.cc: Likewise.
	* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
	* testsuite/28_regex/traits/char/translate.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/arcsine_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
	* testsuite/ext/random/beta_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/beta_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/beta_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/beta_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/hoyt_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
	* testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
	* testsuite/ext/random/k_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/k_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/k_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/logistic_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/cons/
	default.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/nakagami_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/cons/
	default.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/cons/
	parms.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/normal_mv_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/pareto_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
	* testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
	* testsuite/ext/random/rice_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/rice_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/rice_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/rice_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
	copy.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
	default.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
	seed1.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
	seed2.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
	seed_seq.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/cons/
	default.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/triangular_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/cons/
	default.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/operators/
	equal.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/operators/
	inequal.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/operators/
	serialize.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/ext/random/von_mises_distribution/requirements/
	typedefs.cc: Likewise.
	* testsuite/performance/23_containers/insert/54075.cc: Likewise.
	* testsuite/performance/23_containers/insert/
	unordered_set.cc: Likewise.

From-SVN: r216272
2014-10-15 15:57:17 +00:00
François Dumont e6fb44d878 re PR libstdc++/63456 (unordered_map incorrectly frees _M_single_bucket. Patch Included)
2014-10-05  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/63456
	* include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test
	the parameter.
	* testsuite/23_containers/unordered_set/63456.cc: New.

From-SVN: r215905
2014-10-05 18:44:46 +00:00
François Dumont da27f5567c hashtable_policy.h (_Prime_rehash_policy): Constructor noexcept qualified.
2014-09-06  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
	noexcept qualified.
	(_Hash_code_base<>): All specialization default constructible if
	possible.
	(_Hashtable_base<>): Likewise.
	* include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
	* include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
	implementation defaulted.
	(unordered_multimap<>::unordered_multimap()): Likewise.
	* include/bits/unordered_set.h
	(unordered_set<>::unordered_set()): Likewise.
	(unordered_multiset<>::unordered_multiset()): Likewise.
	* include/debug/unordered_map: Likewise.
	* include/debug/unordered_set: Likewise.
	* testsuite/23_containers/unordered_map/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_set/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
	(test04()): New.

From-SVN: r214986
2014-09-06 07:38:48 +00: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
François Dumont 95539f21f5 re PR libstdc++/61143 (Arithmetic exception on emplacing into unordered_map moved out)
2014-05-21  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/61143
	* include/bits/hashtable.h: Fix move semantic to leave hashtable in a
	usable state.
	* testsuite/23_containers/unordered_set/61143.cc: New.
	* testsuite/23_containers/unordered_set/modifiers/swap.cc: New.

From-SVN: r210726
2014-05-21 19:51:05 +00: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 3a0f3672e5 re PR c++/60786 (In C++11 an explicit instantiation with an unqualified name must be in the right namespace)
PR c++/60786
	* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
	1.cc: Fix invalid explicit instantiations with unqualified names.
	* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
	2.cc: Likweise.
	* testsuite/20_util/tuple/53648.cc: Likweise.
	* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
	Likewise.
	* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
	Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	debug_container.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/debug.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/debug.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	debug_container.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/3.cc: Likewise.

From-SVN: r209431
2014-04-15 20:05:45 +01: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 6ff956e3c2 re PR libstdc++/56267 (unordered containers require Assignable hash function)
PR libstdc++/56267
	* include/bits/hashtable.h (__cache_default): Do not depend on
	whether the hash function is DefaultConstructible or CopyAssignable.
	(_Hashtable): Adjust static assertions.
	* doc/xml/manual/containers.xml (containers.unordered.cache): Update.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
	dg-error line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: Remove.

From-SVN: r206904
2014-01-21 19:38:35 +00:00
Jonathan Wakely 92e1622850 re PR libstdc++/56267 (unordered containers require Assignable hash function)
PR libstdc++/56267
	* include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
	friendship to _Local_iterator_base<..., false>.
	(_Local_iterator_base): Give protected access to all existing members.
	(_Local_iterator_base::_M_curr()): New public accessor.
	(_Local_iterator_base::_M_get_bucket()): New public accessor.
	(_Local_iterator_base<..., false>::_M_init()): New function to manage
	the lifetime of the _Hash_code_base explicitly.
	(_Local_iterator_base<..., false>::_M_destroy()): Likewise.
	(_Local_iterator_base<..., false>): Define copy constructor and copy
	assignment operator that use new functions to manage _Hash_code_base.
	(operator==(const _Local_iterator_base&, const _Local_iterator_base&),
	operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
	Use public API for _Local_iterator_base.
	* include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
	* include/debug/unordered_map (__debug::unordered_map::erase(),
	__debug::unordered_multimap::erase()): Likewise.
	* include/debug/unordered_set (__debug::unordered_set::erase(),
	__debug::unordered_multiset::erase()): Likewise.
	* testsuite/23_containers/unordered_set/56267-2.cc: New test.

From-SVN: r206834
2014-01-20 15:49:39 +00:00
François Dumont 1bb59e05ad hashtable_policy.h: Fix some long lines.
2014-01-15  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h: Fix some long lines.
	* include/bits/hashtable.h (__hash_code_base_access): Define and
	use it to check its _M_bucket_index noexcept qualification. Use
	also in place of...
	(__access_protected_ctor): ...this.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc:
	Adapt line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: Likewise.

From-SVN: r206632
2014-01-15 16:53:02 +00:00