Commit graph

9484 commits

Author SHA1 Message Date
Jonathan Wakely
10482a6598 Qualify use of std::declval to avoid ADL
* include/experimental/propagate_const (element_type): Qualify
	declval.

From-SVN: r241129
2016-10-13 17:41:10 +01:00
Jonathan Wakely
f49adbb8d8 Change test to use VERIFY not assert
* testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
	instead of assert.

From-SVN: r241128
2016-10-13 17:37:47 +01:00
Jonathan Wakely
5117a23e9f Use normal mode containers in searchers
* include/experiumental/functional (boyer_moore_searcher)
	(__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
	with _GLIBCXX_STD_C.
	* include/std/functional: Likewise.

From-SVN: r241126
2016-10-13 16:50:35 +01:00
Jonathan Wakely
0c0d2a4cf0 Replace non-constexpr decrement in std::chrono::floor
* include/std/chrono (floor): Replace non-constexpr operation.
	* testsuite/20_util/duration_cast/rounding.cc: Test conversion to
	durations with floating pointer representations.

From-SVN: r241122
2016-10-13 15:42:09 +01:00
Jonathan Wakely
3396fcc095 Restore __bind_simple for compat symbols
* src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
	(_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.

From-SVN: r241111
2016-10-13 13:39:19 +01:00
Jonathan Wakely
5579170b40 Replace __bind_simple with std:🧵:__make_invoker
* include/std/functional (_Bind_simple, _Bind_simple_helper)
	(__bind_simple): Remove.
	* include/std/future: Include <bits/invoke.h> instead of <functional>.
	(__future_base::_Task_state::_M_run)
	(__future_base::_Task_state::_M_run_delayed): Use lambda expressions
	instead of __bind_simple.
	(__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
	(async): Use thread::__make_invoker instead of __bind_simple.
	* include/std/thread: Include <tuple> and <bits/invoke.h> instead of
	<functional>.
	(thread::_Invoker, thread::__make_invoker): Define helpers to do
	INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).

From-SVN: r241093
2016-10-13 11:37:13 +01:00
Jonathan Wakely
cc06c7f652 Fix exception-specifications for std::_Not_fn
* include/std/functional (_Not_fn): Make exception specifications
	depend on whether negating the result can throw.
	* testsuite/20_util/not_fn/1.cc: Move to ...
	* testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
	for types that can throw when negated and that cannot be negated.

From-SVN: r241091
2016-10-13 11:19:24 +01:00
Jonathan Wakely
3e0c9334e9 Fix exception-specification of std::invoke
* include/bits/invoke.h (__invoke): Fix exception-specification.
	* include/std/functional (invoke): Likewise.
	* testsuite/20_util/function_objects/invoke/1.cc: New test.

From-SVN: r241089
2016-10-13 09:55:40 +01:00
Paolo Carlini
7daade997e testsuite_hooks.h: Rewrite VERIFY in terms of __builtin_printf and __builtin_abort.
2016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
	__builtin_printf and __builtin_abort.
	* testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
	* scripts/testsuite_flags.in: Likewise.
	* testsuite/22_locale/time_get/get/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get/char/2.cc: Likewise.
	* testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
	Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
	* testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
	* testsuite/18_support/bad_alloc/what.cc: Likewise.
	* testsuite/18_support/bad_cast/what.cc: Likewise.
	* testsuite/18_support/bad_exception/what.cc: Likewise.
	* testsuite/18_support/bad_typeid/what.cc: Likewise.
	* testsuite/18_support/exception/38732.cc: Likewise.
	* testsuite/18_support/exception/what.cc: Likewise.
	* testsuite/18_support/exception_ptr/64241.cc: Likewise.
	* testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
	* testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
	* testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
	* testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
	* testsuite/18_support/nested_exception/cons.cc: Likewise.
	* testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
	* testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
	* testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
	* testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
	* testsuite/18_support/numeric_limits/digits10.cc: Likewise.
	* testsuite/18_support/numeric_limits/dr559.cc: Likewise.
	* testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
	* testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
	* testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
	* testsuite/18_support/numeric_limits/lowest.cc: Likewise.
	* testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
	* testsuite/18_support/numeric_limits/min_max.cc: Likewise.
	* testsuite/18_support/numeric_limits/specialization_default_values.cc:
	Likewise.
	* testsuite/18_support/type_info/hash_code.cc: Likewise.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
	* testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
	* testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
	* testsuite/19_diagnostics/error_category/operators/
	not_equal.cc: Likewise.
	* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
	* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
	* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/modifiers/39881.cc: 
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/operators/equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
	Likewise.
	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
	* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
	* testsuite/20_util/addressof/1.cc: Likewise.
	* testsuite/20_util/align/1.cc: Likewise.
	* testsuite/20_util/align/2.cc: Likewise.
	* testsuite/20_util/allocator/1.cc: Likewise.
	* testsuite/20_util/allocator/10378.cc: Likewise.
	* testsuite/20_util/allocator/8230.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/any/assign/exception.cc: Likewise.
	* testsuite/20_util/auto_ptr/1.cc: Likewise.
	* testsuite/20_util/auto_ptr/2.cc: Likewise.
	* testsuite/20_util/auto_ptr/3.cc: Likewise.
	* testsuite/20_util/auto_ptr/4.cc: Likewise.
	* testsuite/20_util/auto_ptr/5.cc: Likewise.
	* testsuite/20_util/auto_ptr/6.cc: Likewise.
	* testsuite/20_util/auto_ptr/7.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
	* 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/common_type/requirements/typedefs-1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/2.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
	* testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
	* testsuite/20_util/duration/cons/1.cc: Likewise.
	* testsuite/20_util/duration/cons/2.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/members/assign.cc:
	Likewise.
	* testsuite/20_util/exchange/1.cc: Likewise.
	* testsuite/20_util/forward/a.cc: Likewise.
	* testsuite/20_util/forward/b.cc: Likewise.
	* testsuite/20_util/forward/d.cc: Likewise.
	* testsuite/20_util/function/1.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/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/cons/move.cc: Likewise.
	* testsuite/20_util/function_objects/dr660.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/integral_constant/static_definition.cc: Likewise.
	* testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
	* testsuite/20_util/is_function/24808.cc: Likewise.
	* testsuite/20_util/is_object/24808.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
	* testsuite/20_util/owner_less/cmp.cc: Likewise.
	* testsuite/20_util/pair/1.cc: Likewise.
	* testsuite/20_util/pair/2.cc: Likewise.
	* testsuite/20_util/pair/3.cc: Likewise.
	* testsuite/20_util/pair/4.cc: Likewise.
	* testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
	* testsuite/20_util/pair/moveable.cc: Likewise.
	* testsuite/20_util/pair/piecewise.cc: Likewise.
	* testsuite/20_util/pair/swap.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/operations/45866.cc: Likewise.
	* testsuite/20_util/ratio/operations/47913.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/reference_wrapper/invoke.cc: Likewise.
	* testsuite/20_util/scoped_allocator/1.cc: Likewise.
	* testsuite/20_util/scoped_allocator/2.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/move.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
	Likewise.
	* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/less.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/auto_ptr.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/nullptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_array.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/creation/alloc.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/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/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/temporary_buffer.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/nonmember/constexpr.cc: Likewise.
	* testsuite/20_util/tuple/48476.cc: Likewise.
	* testsuite/20_util/tuple/comparison_operators/comparisons.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/constructor.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/cv_tuple_size.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
	* testsuite/20_util/tuple/moveable.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/unique_ptr/assign/48635.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/cons/auto_ptr.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/creation/array.cc: Likewise.
	* testsuite/20_util/unique_ptr/creation/single.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/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/construction.cc: Likewise.
	* testsuite/20_util/uses_allocator/value.cc: Likewise.
	* testsuite/20_util/variant/run.cc: Likewise.
	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/58163.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/empty.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/front_back.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string/init-list.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/
	28277.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	10.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	11.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	28277.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/
	move_assign.cc: Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
	move_assign.cc: Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	stoull.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	to_string.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	dr1261.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stod.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stof.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoi.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stol.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stold.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoll.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoul.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoull.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	to_wstring.cc: Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/data/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/substr/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/substr/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
	* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	empty.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	empty.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
	char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
	wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
	char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
	wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	4.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/string_conversion/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/substr/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operators/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/c_strings/char/1.cc: Likewise.
	* testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char/57704.cc:
	Likewise.
	* testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.

	* doc/xml/manual/test.xml: Fix typo.

From-SVN: r241070
2016-10-12 16:14:17 +00:00
Paolo Carlini
118c842441 testsuite_hooks.h: Rewrite VERIFY in terms of __builtin_printf and __builtin_abort.
2016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
	__builtin_printf and __builtin_abort.
	* testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
	* scripts/testsuite_flags.in: Likewise.
	* testsuite/22_locale/time_get/get/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get/char/2.cc: Likewise.
	* testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
	Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
	* testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
	* testsuite/18_support/bad_alloc/what.cc: Likewise.
	* testsuite/18_support/bad_cast/what.cc: Likewise.
	* testsuite/18_support/bad_exception/what.cc: Likewise.
	* testsuite/18_support/bad_typeid/what.cc: Likewise.
	* testsuite/18_support/exception/38732.cc: Likewise.
	* testsuite/18_support/exception/what.cc: Likewise.
	* testsuite/18_support/exception_ptr/64241.cc: Likewise.
	* testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
	* testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
	* testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
	* testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
	* testsuite/18_support/nested_exception/cons.cc: Likewise.
	* testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
	* testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
	* testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
	* testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
	* testsuite/18_support/numeric_limits/digits10.cc: Likewise.
	* testsuite/18_support/numeric_limits/dr559.cc: Likewise.
	* testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
	* testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
	* testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
	* testsuite/18_support/numeric_limits/lowest.cc: Likewise.
	* testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
	* testsuite/18_support/numeric_limits/min_max.cc: Likewise.
	* testsuite/18_support/numeric_limits/specialization_default_values.cc:
	Likewise.
	* testsuite/18_support/type_info/hash_code.cc: Likewise.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
	* testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
	* testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
	* testsuite/19_diagnostics/error_category/operators/
	not_equal.cc: Likewise.
	* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
	* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
	* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/modifiers/39881.cc: 
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/operators/equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
	Likewise.
	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
	* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
	* testsuite/20_util/addressof/1.cc: Likewise.
	* testsuite/20_util/align/1.cc: Likewise.
	* testsuite/20_util/align/2.cc: Likewise.
	* testsuite/20_util/allocator/1.cc: Likewise.
	* testsuite/20_util/allocator/10378.cc: Likewise.
	* testsuite/20_util/allocator/8230.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/any/assign/exception.cc: Likewise.
	* testsuite/20_util/auto_ptr/1.cc: Likewise.
	* testsuite/20_util/auto_ptr/2.cc: Likewise.
	* testsuite/20_util/auto_ptr/3.cc: Likewise.
	* testsuite/20_util/auto_ptr/4.cc: Likewise.
	* testsuite/20_util/auto_ptr/5.cc: Likewise.
	* testsuite/20_util/auto_ptr/6.cc: Likewise.
	* testsuite/20_util/auto_ptr/7.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
	* 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/common_type/requirements/typedefs-1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/1.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/2.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
	* testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
	* testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
	* testsuite/20_util/duration/cons/1.cc: Likewise.
	* testsuite/20_util/duration/cons/2.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/members/assign.cc:
	Likewise.
	* testsuite/20_util/exchange/1.cc: Likewise.
	* testsuite/20_util/forward/a.cc: Likewise.
	* testsuite/20_util/forward/b.cc: Likewise.
	* testsuite/20_util/forward/d.cc: Likewise.
	* testsuite/20_util/function/1.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/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/cons/move.cc: Likewise.
	* testsuite/20_util/function_objects/dr660.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/integral_constant/static_definition.cc: Likewise.
	* testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
	* testsuite/20_util/is_function/24808.cc: Likewise.
	* testsuite/20_util/is_object/24808.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
	* testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
	* testsuite/20_util/owner_less/cmp.cc: Likewise.
	* testsuite/20_util/pair/1.cc: Likewise.
	* testsuite/20_util/pair/2.cc: Likewise.
	* testsuite/20_util/pair/3.cc: Likewise.
	* testsuite/20_util/pair/4.cc: Likewise.
	* testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
	* testsuite/20_util/pair/moveable.cc: Likewise.
	* testsuite/20_util/pair/piecewise.cc: Likewise.
	* testsuite/20_util/pair/swap.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/operations/45866.cc: Likewise.
	* testsuite/20_util/ratio/operations/47913.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/reference_wrapper/invoke.cc: Likewise.
	* testsuite/20_util/scoped_allocator/1.cc: Likewise.
	* testsuite/20_util/scoped_allocator/2.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/move.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
	Likewise.
	* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
	* testsuite/20_util/shared_ptr/comparison/less.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/auto_ptr.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/nullptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_array.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/creation/alloc.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/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/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/temporary_buffer.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/nonmember/constexpr.cc: Likewise.
	* testsuite/20_util/tuple/48476.cc: Likewise.
	* testsuite/20_util/tuple/comparison_operators/comparisons.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/constructor.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/cv_tuple_size.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get.cc: Likewise.
	* testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
	* testsuite/20_util/tuple/moveable.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/unique_ptr/assign/48635.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/cons/auto_ptr.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/creation/array.cc: Likewise.
	* testsuite/20_util/unique_ptr/creation/single.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/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/construction.cc: Likewise.
	* testsuite/20_util/uses_allocator/value.cc: Likewise.
	* testsuite/20_util/variant/run.cc: Likewise.
	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
	Likewise.
	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
	Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
	Likewise.
	* testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
	* testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/element_access/char/58163.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/empty.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/char/front_back.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
	Likewise.
	* testsuite/21_strings/basic_string/element_access/wchar_t/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string/init-list.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/
	28277.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	10.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	11.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
	28277.cc: Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
	Likewise.
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/char/
	move_assign.cc: Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
	move_assign.cc: Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
	Likewise.
	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	stoull.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	to_string.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	dr1261.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stod.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stof.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoi.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stol.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stold.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoll.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoul.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	stoull.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	to_wstring.cc: Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/data/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/char/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/substr/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string/operations/substr/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
	* testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
	* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	empty.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/char/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	empty.cc: Likewise.
	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
	front_back.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
	char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
	wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
	char/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
	wchar_t/1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/char/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
	13650.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
	4.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	2.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
	3.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/string_conversion/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/substr/char/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
	1.cc: Likewise.
	* testsuite/21_strings/basic_string_view/operators/char/2.cc:
	Likewise.
	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
	Likewise.
	* testsuite/21_strings/c_strings/char/1.cc: Likewise.
	* testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/char/57704.cc:
	Likewise.
	* testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.

	* doc/xml/manual/test.xml: Fix typo.

From-SVN: r241069
2016-10-12 16:13:06 +00:00
Jonathan Wakely
e7722f1106 Define std::sample for C++17
* doc/xml/manual/status_cxx2017.xml: Add std::sample status.
	* doc/html/*: Regenerate.
	* include/experimental/algorithm (__sample): Move to bits/stl_algo.h
	and into namespace std.
	* include/bits/stl_algo.h (__sample): Define here. Fix invalid use
	of input iterator. Defend against overloaded comma operator.
	(sample): Define for C++17.
	* testsuite/25_algorithms/sample/1.cc: New test.

From-SVN: r241062
2016-10-12 16:26:48 +01:00
Jonathan Wakely
432b6d9572 Make test helper work with non-copyable types
* testsuite/util/testsuite_common_types.h
	(bitwise_assignment_operators): Use direct-initialization for C++11
	and later, to avoid CopyConstructible requirement.
	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
	* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
	Adjust expected errors and line numbers.

From-SVN: r241047
2016-10-12 14:30:49 +01:00
Jonathan Wakely
cfbdc34f25 Simplify std::call_once implementation
* include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
	(call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.

From-SVN: r241034
2016-10-12 13:16:15 +01:00
Jonathan Wakely
08a53a2eda Add missing return to uninitialized_default_construct_n
* include/bits/stl_uninitialized.h
	(__uninitialized_default_novalue_n_1<true>): Add missing return.
	* testsuite/20_util/specialized_algorithms/memory_management_tools/
	1.cc: Check return values of uninitialized_xxx_n algorithms.

From-SVN: r241033
2016-10-12 12:20:35 +01:00
Jonathan Wakely
40571365a0 Remove 'return' from noreturn function
* libsupc++/nested_exception.h (throw_with_nested): Remove return.

From-SVN: r241032
2016-10-12 12:20:29 +01:00
Jonathan Wakely
164b41ebf3 Do not copy std:call_once arguments (LWG 2442)
* doc/xml/manual/intro.xml: Document LWG 2442 status.
	* include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
	[_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
	partial specialization to unpack args and forward to std::invoke.
	(call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
	instead of __bind_simple and __once_call_impl.
	(call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
	__bind_simple.
	* testsuite/30_threads/call_once/dr2442.cc: New test.

From-SVN: r241031
2016-10-12 12:20:25 +01:00
Jonathan Wakely
4bb4acee68 Optimise std::list::assign(initializer_list<T>) slightly
* include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
	_M_assign_dispatch directly with correct tag.

From-SVN: r240984
2016-10-11 11:33:41 +01:00
Jonathan Wakely
0470fad0d6 Simplify std::rethrow_if_nested definition
* doc/xml/manual/intro.xml: Document LWG 2484 status.
	* libsupc++/nested_exception.h (_Throw_with_nested_impl)
	(_Throw_with_nested_helper): Remove.
	(__throw_with_nested_impl): New overloaded functions to implement
	throw_with_nested logic.
	(throw_with_nested): Call __throw_with_nested_impl.
	(_Rethrow_if_nested_impl): Remove
	(__rethrow_if_nested_impl): New overloaded functions to implement
	rethrow_if_nested logic.
	(rethrow_if_nested): Call __rethrow_if_nested_impl.
	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
	problem cases from LWG 2484.

From-SVN: r240983
2016-10-11 11:33:36 +01:00
Jonathan Wakely
bf1de1ac98 Enable printers and xmethods for std::__cxx11::list
* python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
	Register printer for std::__cxx11::list.
	* python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
	std::__cxx11::list as well as std::list.

From-SVN: r240982
2016-10-11 11:33:29 +01:00
Jonathan Wakely
7571121f10 Remove redundant const qualifliers from string_view
* include/experimental/string_view (basic_string_view::_S_compare):
	Remove redundant const from return type.
	* include/std/string_view (basic_string_view:_S_compare): Likewise.

From-SVN: r240981
2016-10-11 11:33:24 +01:00
Jonathan Wakely
2c15eace95 More noexcept for standard mutex types and locks
* include/bits/std_mutex.h (mutex::native_handle)
	(lock_guard(mutex_type&, adopt_lock_t)
	(unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
	* include/std/mutex (recursive_mutex, timed_mutex)
	(recursive_timed_mutex): Likewise.

From-SVN: r240980
2016-10-11 11:33:16 +01:00
Jonathan Wakely
5c24897577 Improve docs on libstdc++ source-code layout
* doc/xml/manual/appendix_contributing.xml (contrib.organization):
	Replace <literallayout> with nested <variablelist> elements. Update
	some more outdated text.
	* doc/html/*: Regenerate.

From-SVN: r240952
2016-10-10 23:34:17 +01:00
Ville Voutilainen
1725d05d19 Make any's copy assignment operator exception-safe,
don't copy the underlying value when any is moved,
make in_place constructors explicit.
* include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
Make explicit.
(any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
Likewise.
(operator=(const any&)): Make strongly exception-safe.
(operator=(any&&)): reset() unconditionally in the case where
rhs has a value.
(operator=(_ValueType&&)): Indent the return type.
(_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
* testsuite/20_util/any/assign/2.cc: Adjust.
* testsuite/20_util/any/assign/exception.cc: New.
* testsuite/20_util/any/cons/2.cc: Adjust.
* testsuite/20_util/any/cons/explicit.cc: New.
* testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.

From-SVN: r240951
2016-10-11 01:08:58 +03:00
Jonathan Wakely
db62593447 Update docs on libstdc++ source-code layout
* doc/xml/manual/appendix_contributing.xml (contrib.organization):
	Describe other subdirectories and add markup. Remove outdated
	reference to check-script target.
	* doc/html/*: Regenerate.

From-SVN: r240946
2016-10-10 19:57:15 +01:00
Jonathan Wakely
e2be44770c Correct C++11 implementation status docs
* doc/xml/manual/status_cxx2011.xml: Correct C++11 status.

From-SVN: r240944
2016-10-10 19:39:18 +01:00
Jonathan Wakely
a3dbb63597 Use noexcept instead of _GLIBCXX_USE_NOEXCEPT
* libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
	with noexcept.

From-SVN: r240943
2016-10-10 19:32:40 +01:00
Jonathan Wakely
40962ac03a Minor simplification to std::_Bind_result helpers
* include/std/functional (_Bind_result::__enable_if_void): Use alias
	template instead of class template.
	(_Bind_result::__disable_if_void): Likewise.
	(_Bind_result::__call): Adjust uses of __enable_if_void and
	__disable_if_void.

From-SVN: r240940
2016-10-10 17:15:52 +01:00
Jonathan Wakely
9e023e3321 Implement constexpr std::addressof for C++17
* doc/xml/manual/intro.xml: Document DR 2296 status.
	* doc/xml/manual/status_cxx2017.xml: Update status.
	* include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
	call __builtin_addressof.
	(addressof): Add _GLIBCXX17_CONSTEXPR.
	* testsuite/20_util/addressof/requirements/constexpr.cc: New test.
	* testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
	* testsuite/20_util/forward/f_neg.cc: Likewise.

From-SVN: r240929
2016-10-10 16:34:28 +01:00
Jonathan Wakely
46942c8101 Define std::allocator<T>::is_always_equal
* include/bits/allocator.h (allocator<T>::is_always_equal): Define.
	* testsuite/20_util/allocator/requirements/typedefs.cc: Test for
	is_always_equal.
	* testsuite/util/testsuite_allocator.h
	(uneq_allocator::is_always_equal): Define as false_type.

From-SVN: r240920
2016-10-10 13:17:45 +01:00
Jonathan Wakely
f2e79496bf LWG 2733, LWG 2759 reject bool in gcd and lcm
* include/experimental/numeric (gcd, lcm): Make bool arguments
	ill-formed.
	* include/std/numeric (gcd, lcm): Likewise.
	* testsuite/26_numerics/gcd/gcd_neg.cc: New test.
	* testsuite/26_numerics/lcm/lcm_neg.cc: New test.

From-SVN: r240919
2016-10-10 13:17:34 +01:00
Jonathan Wakely
208b8b69b6 Add noexcept to enable_shared_from_this::weak_from_this
* include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
	Add noexcept.
	* include/bits/shared_ptr_base.h
	(__enable_shared_from_this::weak_from_this): Likewise.
	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
	Test exception-specification of weak_from_this.

From-SVN: r240917
2016-10-10 12:44:05 +01:00
Jason Merrill
36cbfdb066 Further P0135 refinement.
* call.c (build_user_type_conversion_1): Consider conversions from
	a single element in an initializer-list.
	(build_temp): Undo early_elide_copy change.
	(build_over_call): Check that we don't try to copy a TARGET_EXPR
	in C++17 mode.  Set user_conv_p here.
	(convert_like_real): Not here.
	(check_self_delegation): Split out from...
	(build_special_member_call): ...here.  Handle C++17 copy elision.
	* cvt.c (early_elide_copy): Remove.
	(ocp_convert): Undo early_elide_copy change.
	* except.c (build_throw): Likewise.
	* init.c (expand_default_init): Likewise.
	* typeck.c (cp_build_modify_expr): Likewise.

From-SVN: r240889
2016-10-08 12:23:26 -04:00
Jonathan Wakely
296002c6a1 Improve implementation-defined docs for libstdc++
* doc/xml/manual/status_cxx1998.xml: Improve documentation of
	implementation-defined properties.
	* doc/xml/manual/status_cxx2011.xml: Likewise.
	* doc/xml/manual/status_cxx2017.xml: Likewise.

From-SVN: r240869
2016-10-07 19:02:53 +01:00
Jonathan Wakely
873c7d5ade Implement std::has_unique_object_representations
* doc/xml/manual/status_cxx2017.xml: Update status.
	* include/std/type_traits (has_unique_object_representations): Define.
	* testsuite/20_util/has_unique_object_representations/value.cc: New.
	* testsuite/20_util/has_unique_object_representations/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/has_unique_object_representations/requirements/
	typedefs.cc: New.

From-SVN: r240868
2016-10-07 19:02:43 +01:00
Jonathan Wakely
937ec71aba Make std::scoped_allocator_adaptor's OUTERMOST recursive
* doc/xml/manual/status_cxx2011.xml: Update status.
	* include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
	New helpers for recursive OUTERMOST.
	(__outermost): Use __outermost_type::_S_outermost.
	(__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
	(scoped_allocator_adaptor::__outermost_alloc_traits): Use new
	__outermost_type helper.
	* testsuite/20_util/scoped_allocator/outermost.cc: New test.

From-SVN: r240844
2016-10-06 22:22:35 +01:00
Jonathan Wakely
aaae096a1a 70564 fix newly-added tests for not_fn
PR libstdc++/70564
	* testsuite/20_util/not_fn/1.cc: Fix test.
	* testsuite/experimental/functional/not_fn.cc: Likewise.

From-SVN: r240784
2016-10-05 13:40:31 +01:00
Jonathan Wakely
92805612f4 PR 70101 fix allocator-extended ctors for std::priority_queue
PR libstdc++/70101
	* include/bits/stl_queue.h (priority_queue): Fix allocator-extended
	constructors.
	* testsuite/23_containers/priority_queue/allocator.cc: New test.

From-SVN: r240781
2016-10-05 13:01:57 +01:00
Jonathan Wakely
a2a64b499a 77864 Fix noexcept conditions for map/set default constructors
PR libstdc++/77864
	* include/bits/stl_map.h (map::map()): Use nothrow constructibility
	of comparison function in conditional noexcept.
	* include/bits/stl_multimap.h (multimap::multimap()): Likewise.
	* include/bits/stl_multiset.h (multiset::multiset()): Likewise.
	* include/bits/stl_set.h (set::set()): Likewise.
	* testsuite/23_containers/map/cons/noexcept_default_construct.cc:
	New test.
	* testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
	Likewise.
	* testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
	Likewise.
	* testsuite/23_containers/set/cons/noexcept_default_construct.cc:
	Likewise.

From-SVN: r240780
2016-10-05 13:01:51 +01:00
Jonathan Wakely
d72d690a92 Remove invalid alias declaration from _Node_handle
* include/bits/node_handle.h (_Node_handle): Remove invalid and unused
	alias declaration.

From-SVN: r240779
2016-10-05 13:01:44 +01:00
Jonathan Wakely
78ec9c15be PR 70564 disambiguate constructors for not_fn call wrapper
PR libstdc++/70564
	* include/experimental/functional (_Not_fn): Remove.
	(not_fn): Use std::_Not_fn.
	* include/std/functional (_Not_fn): Add second parameter to
	disambiguate copying from initialization by not_fn. Define for C++14.
	(not_fn): Add second argument to initialization.
	* testsuite/20_util/not_fn/1.cc: Copy call wrapper using
	direct-initialization.

From-SVN: r240778
2016-10-05 13:01:36 +01:00
François Dumont
38aee22c7d shared_ptr.cc (mask, [...]): Move declaration...
2016-10-03  François Dumont  <fdumont@gcc.gnu.org>

	* src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
	declaration...
	* src/c++11/mutex_pool.h: ... here. New.
	* src/c++11/debug.cc: Use latter.

From-SVN: r240732
2016-10-03 20:23:13 +00:00
Jonathan Wakely
606dda21c8 Define std::gcd and std::lcm for C++17
* doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
	* doc/html/*: Regenerate.
	* include/experimental/numeric (__abs): Move to <numeric>.
	(gcd, lcm): Use __detail::gcd and __detail::lcm.
	* include/std/numeric (__detail::__abs_integral)
	(__detail::__gcd, __detail::__lcm): Define.
	(gcd, lcm): Define for C++17.
	* testsuite/26_numerics/gcd/1.cc: New test.
	* testsuite/26_numerics/lcm/1.cc: New test.
	* testsuite/experimental/numeric/gcd.cc: Swap contents with ...
	* testsuite/experimental/numeric/lcd.cc: ... this.

From-SVN: r240723
2016-10-03 18:01:10 +01:00
Jonathan Wakely
e347987da8 Fix libstdc++ versioned namespace build
PR libstdc++/68323
	PR libstdc++/77794
	* config/abi/pre/gnu-versioned-namespace.ver: Add exports for
	__cxa_thread_atexit and __gnu_cxx::__freeres.
	* include/Makefile.am: Add <experimental/bits/lfts_config.h>
	* include/Makefile.in: Regenerate.
	* include.bits/basic_string.h: Fix nesting of versioned namespaces.
	* include/bits/c++config: Declare versioned namespaces for literals.
	* include/bits/regex.h (basic_regex, match_results): Add workarounds
	for PR c++/59256.
	* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
	* include/std/chrono: Likewise.
	* include/std/complex: Likewise.
	* include/std/string_view: Likewise.
	* include/std/variant: Likewise. Add workaround for PR c++/59256.
	* include/experimental/bits/fs_fwd.h: Declare versioned namespace.
	* include/experimental/bits/lfts_config.h: Declare versioned
	namespaces.
	* include/experimental/algorithm: Include
	<experimental/bits/lfts_config.h>.
	* include/experimental/any: Likewise.
	* include/experimental/bits/erase_if.h: Likewise.
	* include/experimental/chrono: Likewise.
	* include/experimental/functional: Likewise.
	* include/experimental/memory_resource: Likewise.
	* include/experimental/optional: Likewise.
	* include/experimental/propagate_const: Likewise.
	* include/experimental/random: Likewise.
	* include/experimental/ratio: Likewise.
	* include/experimental/system_error: Likewise.
	* include/experimental/tuple: Likewise.
	* include/experimental/type_traits: Likewise.
	* include/experimental/utility: Likewise.
	* include/experimental/string_view: Likewise. Fix nesting of
	versioned namespaces.
	* include/experimental/bits/string_view.tcc: Reopen inline namespace
	for non-inline function definitions.
	* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
	* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
	* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
	Likewise.
	* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
	* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
	* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
	* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.

From-SVN: r240714
2016-10-03 15:35:28 +01:00
Jonathan Wakely
6a0d23af49 Ensure "C++" language linkage for std::abs overloads
PR libstdc++/77814
	* include/bits/std_abs.h: Use "C++" language linkage.
	* testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
	the end. Add <stdalign.h>.

From-SVN: r240710
2016-10-03 12:50:46 +01:00
Ville Voutilainen
3fe2ddae4b re PR libstdc++/77802 (Boost Fiber doesn't compile)
PR libstdc++/77802
    * testsuite/20_util/tuple/77802.cc: New.

    Revert:
    2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
    Implement LWG 2729 for tuple.
    * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
    Suppress conditionally.
    (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
    (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
    (_Tuple_impl(const _Head&)): Constrain.
    (_Tuple_impl(_UHead&&)): Likewise.
    (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
    (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
    (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
    (operator=(const tuple&)): Enable conditionally.
    (operator=(tuple&&)): Suppress conditionally.
    (operator=(const tuple<_UElements...>&)): Constrain.
    (operator=(tuple<_UElements...>&&)): Likewise.
    (operator=(const tuple&)): Enable conditionally (2-param tuple).
    (operator=(tuple&&)): Suppress conditionally (2-param tuple).
    (operator=(const tuple<_U1, _U2>&)): Constrain.
    (operator=(tuple<_U1, _U2>&&)): Likewise.
    (operator=(const pair<_U1, _U2>&)): Likewise.
    (operator=(pair<_U1, _U2>&&)): Likewise.
    * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
    * testsuite/20_util/tuple/tuple_traits.cc: New.

From-SVN: r240709
2016-10-03 14:06:53 +03:00
Jonathan Wakely
36105dbdab libstdc++/77795 Only declare ::gets for C++98 and C++11
PR libstdc++/77795
	* acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
	for gets.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
	for C++98 and C++11.
	* include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
	* testsuite/27_io/headers/cstdio/functions_neg.cc: New test.

From-SVN: r240672
2016-09-30 19:28:53 +01:00
Jonathan Wakely
37b204de60 Implement LWG 2192 and LWG 2294 for std::abs
* doc/xml/manual/intro.xml: Document LWG 2192 changes.
	* doc/html/*: Regenerate.
	* include/Makefile.am: Add bits/std_abs.h.
	* include/Makefile.in: Regenerate.
	* include/bits/std_abs.h: New header defining all required overloads
	of std::abs in one place (LWG 2294).
	* include/c_global/cmath (abs(double), abs(float), abs(long double)):
	Move to bits/std_abs.h.
	(abs<_Tp>(_Tp)): Remove.
	* include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
	Move to bits/std_abs.h.
	* testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
	* testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
	* testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
	* testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.

From-SVN: r240660
2016-09-30 17:07:43 +01:00
Jonathan Wakely
9e28a77462 Remove use of std::abs in experimental::{gcd,lcm}
PR libstdc++/77801
	* include/experimental/numeric: Include <numeric>.
	(__abs): Define.
	(gcd, lcm): Use __abs instead of std::abs.
	* testsuite/experimental/numeric/77801.cc: New test.
	* testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
	* testsuite/experimental/numeric/lcm.cc: Likewise.

From-SVN: r240656
2016-09-30 14:43:37 +01:00
Ville Voutilainen
a181f67231 Make optional::reset noexcept, make optional::value work in constant expressions.
Make optional::reset noexcept, make optional::value
    work in constant expressions.
    * include/std/optional (_M_get): Make constexpr.
    (reset): Make noexcept.
    * testsuite/20_util/optional/assignment/7.cc: New.
    * testsuite/20_util/optional/observers/6.cc: New.

From-SVN: r240623
2016-09-29 18:20:28 +03:00
Jonathan Wakely
998e01a6d5 Define C++17 std::hypot without _GLIBCXX_USE_C99_MATH_TR1
* include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
	outside _GLIBCXX_USE_C99_MATH_TR1 condition.

From-SVN: r240620
2016-09-29 14:25:48 +01:00