12016-12-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
2
3	Implement LWG 2842, in_place_t check for optional::optional(U&&)
4	should decay U.
5	* include/std/optional (_Optional_base(in_place_t, _Args&&...)):
6	Constrain.
7	(_Optional_base(in_place_t, initializer_list<_Up>, _Args&&...)):
8	Turn the int-pack constraint hack into a saner bool.
9	(_Optional_base<_Tp, false>::_Optional_base(in_place_t, _Args&&...)):
10	Constrain.
11	(_Optional_base<_Tp, false>::_Optional_base(in_place_t,
12	initializer_list<_Up>, _Args&&...)):
13	Turn the int-pack constraint hack into a saner bool.
14	(optional(_Up&&)): Constrain against in_place_t.
15	(optional(in_place_t, _Args&&...)): Constrain.
16	(constexpr optional(in_place_t, initializer_list<_Up>, _Args&&...)):
17	Turn the int-pack constraint hack into a saner bool.
18	* testsuite/20_util/optional/cons/value_neg.cc: Add a test for
19	a type that is constructible from in_place.
20
212016-12-24  François Dumont  <fdumont@gcc.gnu.org>
22
23	* include/ext/random.tcc: Fix usage of _OutputIteratorConcept.
24
252016-12-21  Jason Merrill  <jason@redhat.com>
26
27	* testsuite/util/testsuite_tr1.h (test_property): Don't define both
28	variadic and non-variadic overloads.
29
302016-12-21  Jonathan Wakely  <jwakely@redhat.com>
31
32	PR libstdc++/71444
33	* config/os/mingw32-w64/error_constants.h
34	(address_family_not_supported, address_in_use, address_not_available)
35	(already_connected, connection_aborted, connection_already_in_progress)
36	connection_refused, connection_reset, cross_device_link)
37	(destination_address_required, host_unreachable, message_size)
38	(network_down, network_reset, network_unreachable, no_buffer_space)
39	(no_protocol_option, not_a_socket, not_connected, operation_canceled)
40	(operation_in_progress, operation_not_supported, protocol_error)
41	(protocol_not_supported, too_many_links, too_many_symbolic_link_levels)
42	(value_too_large, wrong_protocol_type): Define.
43	(bad_message, identifier_removed, no_link, no_message_available)
44	(no_message, no_stream_resources, not_a_stream, owner_dead)
45	(state_not_recoverable, stream_timeout, text_file_busy): Define
46	conditionally.
47	* testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
48	Guard test for no_message with _GLIBCXX_HAVE_ENOMSG.
49
502016-12-19  Ville Voutilainen  <ville.voutilainen@gmail.com>
51
52	Make the perfect-forwarding constructor of a two-element tuple
53	sfinae away when the first argument is an allocator_arg.
54	* include/std/tuple (tuple(_U1&&, _U2&&)): Constrain.
55	* testsuite/20_util/tuple/cons/allocator_with_any.cc: New.
56	* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
57
582016-12-16  Jonathan Wakely  <jwakely@redhat.com>
59
60	* include/bits/stl_map.h (map::erase(iterator)): Add Doxygen markup
61	to reuse documentation for erase(const_iterator) overload.
62	* include/bits/stl_multimap.h (multimap::erase(iterator)): Likewise.
63
64	* include/bits/stl_tree.h (_Rb_tree::_M_erase_aux(const_iterator)):
65	Add assertion for undefined argument.
66	(_Rb_tree::_M_erase_aux(const_iterator, const_iterator)): Call
67	_M_erase_aux directly instead of through erase.
68	(_Rb_tree::_M_erase_aux(const Key&)): Likewise.
69	* testsuite/23_containers/map/modifiers/erase/end_neg.cc: New test.
70
712016-12-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
72
73	Implement LWG 2769, Redundant const in the return type of
74	any_cast(const any&).
75	* include/std/any (_AnyCast): New.
76	(any_cast(const any&)): Use it and add an explicit cast for return.
77	(any_cast(any&)): Likewise.
78	(any_cast(any&&)): Likewise.
79	* testsuite/20_util/any/misc/any_cast.cc: Add a test for a type
80	that has an explicit copy constructor.
81	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
82
832016-12-15  Jonathan Wakely  <jwakely@redhat.com>
84
85	PR libstdc++/59170
86	* python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
87	(StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
88	(StdRbtreeIteratorPrinter.to_string)
89	(StdDequeIteratorPrinter.to_string): Add check for value-initialized
90	iterators.
91	* testsuite/libstdc++-prettyprinters/simple.cc: Test them.
92	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
93
94	PR libstdc++/59161
95	* python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
96	(StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
97	(StdRbtreeIteratorPrinter.to_string, StdDequeIteratorPrinter.to_string)
98	(StdDebugIteratorPrinter.to_string): Return string instead of
99	gdb.Value.
100	* testsuite/libstdc++-prettyprinters/59161.cc: New test.
101
102	* python/libstdcxx/v6/printers.py (UniquePointerPrinter.to_string):
103	Remove redundant parentheses.
104	(RbtreeIterator, StdRbtreeIteratorPrinter): Add docstrings.
105	(StdForwardListPrinter.to_string): Remove redundant parentheses.
106	(StdExpOptionalPrinter.to_string): Use string formatting instead of
107	concatenation.
108	(StdVariantPrinter.to_string, StdNodeHandlePrinter.to_string)
109	(TemplateTypePrinter): Adjust whitespace.
110
111	* python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker.__init__): Use
112	correct element type for unique_ptr<T[]>.
113	(UniquePtrGetWorker._supports, UniquePtrDerefWorker._supports): New
114	functions to disable unsupported operators for unique_ptr<T[]>.
115	(UniquePtrSubscriptWorker): New worker for operator[].
116	(UniquePtrMethodsMatcher.__init__): Register UniquePtrSubscriptWorker.
117	(UniquePtrMethodsMatcher.match): Call _supports on the chosen worker.
118	(SharedPtrGetWorker, SharedPtrDerefWorker, SharedPtrSubscriptWorker)
119	(SharedPtrUseCountWorker, SharedPtrUniqueWorker): New workers.
120	(SharedPtrMethodsMatcher): New matcher for shared_ptr.
121	(register_libstdcxx_xmethods): Register SharedPtrMethodsMatcher.
122	* testsuite/libstdc++-xmethods/unique_ptr.cc: Test arrays.
123	* testsuite/libstdc++-xmethods/shared_ptr.cc: New test.
124
1252016-12-14  François Dumont  <fdumont@gcc.gnu.org>
126
127	* include/bits/stl_tree.h
128	(_Rb_tree_impl(const _Key_compare&, const _Node_allocator&): Restore
129	before C++11 mode.
130
1312016-12-14  Jonathan Wakely  <jwakely@redhat.com>
132
133	* python/libstdcxx/v6/printers.py (num_elements): New function.
134	(StdMapPrinter.to_string, StdSetPrinter.to_string)
135	(StdDequePrinter.to_string, Tr1UnorderedSetPrinter.to_string)
136	(Tr1UnorderedMapPrinter.to_string): Use num_elements.
137	* testsuite/libstdc++-prettyprinters/cxx11.cc: Adjust expected results
138	to use singular noun when there is only one element.
139	* testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
140	* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
141	* testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
142	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
143	* testsuite/libstdc++-prettyprinters/tr1.cc: Likewise.
144
145	PR libstdc++/59170
146	* python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter): Use
147	_M_sequence and _M_version to detect invalid iterators.
148	* testsuite/libstdc++-prettyprinters/debug.cc: Test debug mode vector
149	and test invalid iterators.
150	* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: New test.
151
1522016-12-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
153
154	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
155	XFAIL run if newlib_broken_long_double_io.
156	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc:
157	Likewise.
158	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc:
159	Likewise.
160	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
161	Likewise.
162
1632016-12-12  Jonathan Wakely  <jwakely@redhat.com>
164
165	* testsuite/experimental/filesystem/operations/is_empty.cc:
166	Remove stray character at end of dg-do directive.
167
168	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
169	Remove stray character at end of dg-do directive.
170
1712016-12-09  Jonathan Wakely  <jwakely@redhat.com>
172
173	* include/std/variant: Remove misplaced
174	_GLIBCXX_BEGIN_NAMESPACE_VERSION macro.
175
1762016-12-08  David Edelsohn  <dje.gcc@gmail.com>
177
178	* testsuite/25_algorithms/headers/algorithm/
179	parallel_algorithm_assert2.cc: Move dg-do run first.
180
1812016-12-08  Eric Botcazou  <ebotcazou@adacore.com>
182
183	PR libstdc++/78264
184	* include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM): Turn _N into _NE.
185	(_GLIBCXX_NOEXCEPT_QUAL): Likewise.
186
1872016-12-08  Jonathan Wakely  <jwakely@redhat.com>
188
189	* testsuite/experimental/filesystem/path/construct/range.cc: Don't
190	use basic_string::front() when string might be empty.
191
192	* include/debug/array (swap): Add deleted overload.
193	* include/bits/stl_pair.h (swap): Remove redundant inline keyword
194	from deleted overload.
195	* include/bits/unique_ptr.h (swap): Likewise.
196	* include/std/array (swap): Likewise.
197	* include/std/optional (swap): Likewise.
198	* include/std/tuple (swap): Likewise.
199	* include/std/variant (swap): Likewise.
200	* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
201	Adjust dg-error line numbers.
202	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
203	* testsuite/23_containers/array/tuple_interface/
204	tuple_element_debug_neg.cc: Likewise.
205	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
206	Likewise.
207
208	PR libstdc++/71856
209	* doc/xml/manual/using.xml: Document macro.
210	* include/bits/c++config [_GLIBCXX_DEBUG || _GLIBCXX_PARALLEL]
211	(__glibcxx_assert): Rename to __glibcxx_assert_impl.
212	[_GLIBCXX_DEBUG] (__glibcxx_assert): Expand to __glibcxx_assert_impl.
213	* include/parallel/base.h [_GLIBCXX_PARALLEL_ASSERTIONS]
214	(_GLIBCXX_PARALLEL_ASSERT): Expand to __glibcxx_assert_impl.
215	[!_GLIBCXX_PARALLEL_ASSERTIONS] (_GLIBCXX_PARALLEL_ASSERT): Define as
216	empty.
217	* testsuite/25_algorithms/headers/algorithm/
218	parallel_algorithm_assert2.cc: New test.
219
2202016-12-08  Jakub Jelinek  <jakub@redhat.com>
221
222	* testsuite/util/testsuite_new_operators.h: Include testsuite_hooks.h.
223	(operator new): Use THROW macro.
224
2252016-12-07  François Dumont  <fdumont@gcc.gnu.org>
226
227	* include/bits/stl_tree.h
228	(_Rb_tree<>::_M_copy(_Const_Link_type, _Base_ptr)): Delete.
229	(_Rb_tree<>::_M_copy(const _Rb_tree&, _NodeGen&)): New.
230	(_Rb_tree<>::_M_copy(const _Rb_tree&)): New, use latter.
231	(_Rb_tree<>(const _Rb_tree&): Use latter.
232	(_Rb_tree<>(const _Rb_tree&, const allocator_type&)): Likewise.
233	(_Rb_tree<>::_M_move_data(_Rb_tree&, false_type)): Likewise.
234	(_Rb_tree<>::_M_move_assign(_Rb_tree&, false_type)): Likewise.
235	(_Rb_tree<>::operator=(const _Rb_tree&)): Likewise.
236
237	* include/bits/stl_map.h (map(const map&)): Make default.
238	(map(map&&)): Likewise.
239	(~map()): Likewise.
240	(operator=(const map&)): Likewise.
241	* include/bits/stl_multimap.h (multimap(const multimap&)): Make default.
242	(multimap(multimap&&)): Likewise.
243	(~multimap()): Likewise.
244	(operator=(const multimap&)): Likewise.
245	* include/bits/stl_set.h (set(const set&)): Make default.
246	(set(set&&)): Likewise.
247	(~set()): Likewise.
248	(operator=(const set&)): Likewise.
249	* include/bits/stl_multiset.h (multiset(const multiset&)): Make default.
250	(multiset(multiset&&)): Likewise.
251	(~multiset()): Likewise.
252	(operator=(const multiset&)): Likewise.
253	* include/bits/stl_tree.h (_Rb_tree_key_compare<>): New.
254	(_Rb_tree_header): New.
255	(_Rb_tree_impl): Inherit from latters.
256	(_Rb_tree_impl()): Make default.
257	(_Rb_tree_impl(const _Rb_tree_impl&)): New.
258	(_Rb_tree<>(const _Rb_tree&): Use latter.
259	(_Rb_tree_impl(_Rb_tree_impl&&)): New, default.
260	(_Rb_tree_impl(const _Key_compare&, const _Node_allocator&)): Delete.
261	(_Rb_tree_impl::_M_reset): Move...
262	(_Rb_tree_header::_M_reset): ...here.
263	(_Rb_tree_impl::_M_initialize): Delete.
264	(_Rb_tree(_Rb_tree&&)): Make default.
265	(_Rb_tree_header::_M_move_data(_Rb_tree_header&)): New.
266	(_Rb_tree<>::_M_move_data(_Rb_tree&, true_type)): Use latter.
267	(_Rb_tree<>(_Rb_tree&&)): Make default.
268
2692016-12-07  Jonathan Wakely  <jwakely@redhat.com>
270
271	* include/experimental/bits/fs_path.h (path::_S_convert): Replace
272	uses of C++14 std::remove_cv_t alias template.
273
274	* testsuite/28_regex/traits/char/user_defined.cc: Replace uses of
275	C++14 std::exchange function.
276
277	* testsuite/util/testsuite_hooks.h (THROW): Define.
278	* testsuite/util/replacement_memory_operators.h: Include
279	testsuite_hooks.h and use THROW macro.
280	* testsuite/util/testsuite_tr1.h: Likewise.
281	* testsuite/20_util/allocator/1.cc: Use THROW macro.
282	* testsuite/22_locale/locale/cons/12352.cc: Likewise.
283	* testsuite/23_containers/vector/zero_sized_allocations.cc: Likewise.
284	* testsuite/30_threads/lock_guard/cons/1.cc: Replace dynamic exception
285	specification with noexcept-specifier.
286	* testsuite/ext/pool_allocator/allocate_chunk.cc: Include
287	testsuite_hooks.h and use THROW macro.
288	* testsuite/ext/profile/replace_new.cc: Likewise.
289
290	* include/ext/bitmap_allocator.h (bitmap_allocator::_S_refill_pool)
291	(bitmap_allocator::_M_allocate_single_object)
292	(bitmap_allocator::_M_get): Use _GLIBCXX_THROW macro.
293
294	* testsuite/18_support/bad_exception/59392.cc: Disable for C++17.
295
296	* testsuite/18_support/headers/new/synopsis.cc: Add C++14 and C++17
297	declarations.
298	* testsuite/18_support/headers/new/synopsis_cxx98.cc: New test.
299
3002016-12-06  Felipe Magno de Almeida  <felipe@expertisesolutions.com.br>
301
302	* src/c++11/cow-stdexcept.cc: Add special case for 16 bit pointers.
303
304	* crossconfig.m4: Add avr target for cross-compilation.
305	* configure: Regenerate.
306
3072016-12-06  Jonathan Wakely  <jwakely@redhat.com>
308
309	* python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new
310	data member name.
311	* testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test.
312
313	* include/bits/shared_ptr_base.h
314	(__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion.
315
3162016-12-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
317
318	Constrain optional's __constexpr_addressof in its return type
319	and use a constexpr addressof for optional, if available.
320	* include/experimental/optional (__constexpr_addressof):
321	Constrain in the return type instead of in a template parameter.
322	(_Has_addressof_mem)
323	(_Has_addressof_free, _Has_addressof, __constexpr_addressof):
324	Guard with #ifndef __cpp_lib_addressof_constexpr.
325	(operator->()): Use std::__addressof if it's constexpr.
326
3272016-12-06  Tim Shen  <timshen@google.com>
328
329	* include/std/variant (visit): Make visit constexpr. Also cleanup
330	__get_alternative and __storage, since we don't support reference/void
331	alternatives any more.
332	* testsuite/20_util/variant/compile.cc: Add tests.
333
3342016-12-06  Tim Shen  <timshen@google.com>
335
336	* include/bits/enable_special_members.h: Make
337	_Enable_default_constructor constexpr.
338	* include/std/variant (variant::emplace, variant::swap, std::swap,
339	std::hash): Sfinae on emplace and std::swap; handle __poison_hash bases
340	of duplicated types.
341
3422016-12-06  Tim Shen  <timshen@google.com>
343
344	* include/std/variant (std::get, operator==): Implement constexpr
345	comparison and get<>.
346	* testsuite/20_util/variant/compile.cc: Tests.
347
3482016-12-06  Tim Shen  <timshen@google.com>
349
350	* include/std/variant (__erased_use_alloc_ctor,
351	_Variant_base::_Variant_base, variant::variant): Remove uses-allocator
352	related functions.
353	* testsuite/20_util/variant/compile.cc: Remove related tests.
354	* testsuite/20_util/variant/run.cc: Remove related tests.
355
3562016-12-06  Aditya Kumar  <hiraditya@msn.com>
357
358	* src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
359	noexcept on constructor.
360	(_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.
361
3622016-12-06  Jonathan Wakely  <jwakely@redhat.com>
363
364	* include/bits/basic_string.h (basic_string::find, basic_string::rfind)
365	(basic_string::find_first_of, basic_string::find_last_of)
366	(basic_string::find_first_not_of, basic_string::find_last_not_of):
367	Make all overloads noexcept.
368	(basic_string::compare(const _CharT*)): Make noexcept.
369
3702016-12-03  John David Anglin  <danglin@gcc.gnu.org>
371
372	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Regenerate.
373
3742016-12-01  David Edelsohn  <dje.gcc@gmail.com>
375
376	* testsuite/26_numerics/headers/cmath/hypot.cc: XFAIL on AIX.
377
3782016-12-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
379
380	Implement LWG 2766,
381	Swapping non-swappable types and LWG 2749,
382	swappable traits for variants.
383	* include/bits/move.h (swap(_Tp&, _Tp&)): Constrain
384	with __is_tuple_like.
385	* include/bits/stl_pair.h (swap(pair<_T1, _T2>&, pair<_T1, _T2>&)):
386	Add a deleted overload.
387	* include/bits/unique_ptr.h
388	(swap(unique_ptr<_Tp, _Dp>&, unique_ptr<_Tp, _Dp>&)): Likewise.
389	* include/std/array
390	(swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&)): Likewise.
391	* include/std/optional
392	(swap(optional<_Tp>&, optional<_Tp>&)): Likewise.
393	* include/std/tuple (__is_tuple_like_impl, __is_tuple_like):
394	Move to type_traits.
395	(swap(tuple<_Elements...>&, tuple<_Elements...>&)): Add a deleted
396	overload.
397	* include/std/type_traits (__is_tuple_like_impl, __is_tuple_like):
398	New.
399	(swap(_Tp&, _Tp&)): Constrain with __is_tuple_like.
400	* include/std/utility (__is_tuple_like_impl): Move to type_traits.
401	* include/std/variant
402	(swap(variant<_Types...>&, variant<_Types...>&)):
403	Add a deleted overload.
404	* testsuite/20_util/optional/swap/2.cc: Add tests for disabled
405	swaps.
406	* testsuite/20_util/pair/swap_cxx17.cc: New.
407	* testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
408	* testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
409	Likewise.
410	* testsuite/20_util/variant/compile.cc: Add tests for disabled
411	swaps.
412	* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
413	New.
414	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
415	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
416	Likewise.
417
4182016-12-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
419
420	The convertible_to traits need to use a variadic catch-all for the
421	false-cases.
422	* include/std/istream (__is_convertible_to_basic_istream):
423	Change the parameter of the false-case of __check to a variadic.
424	* include/std/ostream (__is_convertible_to_basic_ostream):
425	Likewise.
426
4272016-12-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
428
429	* crossconfig.m4 (*-linux*): Add link-check for memalign.
430	* configure: Regenerated.
431
4322016-12-01  Tim Shen  <timshen@google.com>
433
434	PR libstdc++/71500
435	* include/bits/regex.h (basic_regex::basic_regex): Use ECMAScript
436	when the syntax is not specified.
437	* include/bits/regex_compiler.h (_RegexTranslator,
438	_RegexTranslatorBase): Partially support icase in ranges.
439	* include/bits/regex_compiler.tcc (_BracketMatcher::_M_apply):
440	Refactor _M_apply to make the control flow easier to follow, and
441	call _M_translator._M_match_range as added previously.
442	* testsuite/28_regex/traits/char/icase.cc: Add new tests.
443	* testsuite/28_regex/traits/char/user_defined.cc: Add new tests.
444
4452016-11-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
446
447	Fix testsuite failures caused by the patch implementing LWG 2534.
448	* include/std/istream (__is_convertible_to_basic_istream):
449	Change the return types of __check, introduce istream_type.
450	(operator>>(_Istream&&, _Tp&&)):
451	Use __is_convertible_to_basic_istream::istream_type as the return type.
452	* include/std/ostream (__is_convertible_to_basic_ostream):
453	Change the return types of __check, introduce ostream_type.
454	(operator>>(_Ostream&&, _Tp&&)):
455	Use __is_convertible_to_basic_ostream::ostream_type as the return type.
456
4572016-11-30  Tim Shen  <timshen@google.com>
458
459	* include/bits/shared_ptr_base.h
460	(__shared_ptr_access<T, L, true, false>::operator*()): Fix assertion.
461
4622016-11-30  David Edelsohn  <dje.gcc@gmail.com>
463
464	* testsuite/18_support/50594.cc: XFAIL on AIX.
465	* testsuite/ext/mt_allocator/check_new.cc: Same.
466	* testsuite/ext/pool_allocator/check_new.cc: Same.
467	* testsuite/27_io/ios_base/storage/11584.cc: Same.
468
4692016-11-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
470
471	Implement LWG 2534, Constrain rvalue stream operators.
472	* include/std/istream (__is_convertible_to_basic_istream): New.
473	(__is_extractable): Likewise.
474	(operator>>(basic_istream<_CharT, _Traits>&&, _Tp&&)):
475	Turn the stream parameter into a template parameter
476	and constrain.
477	* include/std/ostream (__is_convertible_to_basic_ostream): New.
478	(__is_insertable): Likewise.
479	(operator<<(basic_ostream<_CharT, _Traits>&&, const _Tp&)):
480	Turn the stream parameter into a template parameter
481	and constrain.
482	* testsuite/27_io/basic_istream/extractors_other/char/4.cc: New.
483	* testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
484	Likewise.
485	* testsuite/27_io/basic_ostream/inserters_other/char/6.cc: Likewise.
486	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc: Likewise.
487
4882016-11-30  Christophe Lyon  <christophe.lyon@linaro.org>
489
490	* testsuite/experimental/type_erased_allocator/2.cc: Add
491	dg-require-thread-fence.
492
4932016-11-29  David Edelsohn  <dje.gcc@gmail.com>
494
495	PR libstdc++/68838
496	* testsuite/lib/libstdc++.exp (DEFAULT_CXXFLAGS): Add -Wl,-bmaxdata on
497	AIX.
498	* testsuite/23_containers/vector/profile/vector.cc: Remove
499	dg-additional-options.
500
5012016-11-26  Tim Shen  <timshen@google.com>
502
503	PR libstdc++/78441
504	* include/std/variant: Propagate cv qualifications to types returned
505	by variant_alternative.
506	* testsuite/20_util/variant/compile.cc: Tests.
507
5082016-11-23  Felix Morgner  <felix.morgner@gmail.com>
509	    Jonathan Wakely  <jwakely@redhat.com>
510
511	PR libstdc++/78490
512	* include/experimental/propagate_const (propagate_const::operator=):
513	Add missing return statements.
514	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
515	Adjust dg-error line numbers.
516	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
517
5182016-11-22  Uros Bizjak  <ubizjak@gmail.com>
519
520	* testsuite/Makefile.am
521	(check-DEJAGNU $(check_DEJAGNU_normal_targets)): Fix detection
522	of -j argument.
523	* testsuite/Makefile.in: Regenereate.
524
5252016-11-22  Jonathan Wakely  <jwakely@redhat.com>
526
527	PR libstdc++/78465
528	* testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
529	with preprocessor conditions.
530
5312016-11-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
532
533	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Update comments.
534	(__CORRECT_ISO_CPP11_MATH_H_PROTO): Rename to ...
535	(__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): ... this.
536	Add test for C++11 <math.h> integral overloads.
537	* configure: Regenerate.
538	* config.h.in: Regenerate.
539
540	* include/c_global/cmath [__cplusplus >= 201103L]: Reflect
541	__CORRECT_ISO_CPP11_MATH_H_PROTO to
542	__CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
543	* include/c_global/cmath [_GLIBCXX_USE_C99_MATH &&
544	!_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC && __cplusplus >= 201103L]
545	(std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO_INT.
546	(std::isfinite): Likewise.
547	(std::isinf): Likewise.
548	(std::isnan): Likewise.
549	(std::isnormal): Likewise.
550	(std::signbit): Likewise.
551	(std::isgreater): Likewise.
552	(std::isgreaterequal): Likewise.
553	(std::isless): Likewise.
554	(std::islessequal): Likewise.
555	(std::islessgreater): Likewise.
556	(std::isunordered): Likewise.
557	[__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]
558	(std::acosh): Likewise.
559	(std::asinh): Likewise.
560	(std::atanh): Likewise.
561	(std::cbrt): Likewise.
562	(std::copysign): Likewise.
563	(std::erf): Likewise.
564	(std::erfc): Likewise.
565	(std::exp2): Likewise.
566	(std::expm1): Likewise.
567	(std::fdim): Likewise.
568	(std::fma): Likewise.
569	(std::fmax): Likewise.
570	(std::fmin): Likewise.
571	(std::hypot): Likewise.
572	(std::ilogb): Likewise.
573	(std::lgamma): Likewise.
574	(std::llrint): Likewise.
575	(std::llround): Likewise.
576	(std::log1p): Likewise.
577	(std::log2): Likewise.
578	(std::logb): Likewise.
579	(std::lrint): Likewise.
580	(std::lround): Likewise.
581	(std::nearbyint): Likewise.
582	(std::nextafter): Likewise.
583	(std::nexttoward): Likewise.
584	(std::remainder): Likewise.
585	(std::remquo): Likewise.
586	(std::rint): Likewise.
587	(std::round): Likewise.
588	(std::scalbln): Likewise.
589	(std::scalbn): Likewise.
590	(std::tgamma): Likewise.
591	(std::trunc): Likewise.
592	* include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1 && __cplusplus >=
593	201103L]: Reflect __CORRECT_ISO_CPP11_MATH_H_PROTO to
594	__CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
595
5962016-11-15  Jonathan Wakely  <jwakely@redhat.com>
597
598	PR libstdc++/59406
599	* include/bits/functional_hash.h: Add comment noting difference from
600	FNV-1a.
601	* include/tr1/functional_hash.h: Likewise.
602	* libsupc++/hash_bytes.cc: Likewise.
603
604	* include/bits/basic_string.h: Reuse _If_sv alias template for new
605	constructor.
606
607	* doc/xml/manual/intro.xml: Document LWG 2770 status. Remove entries
608	for 2742 and 2748.
609	* doc/html/*: Regenerate.
610	* include/std/utility (__tuple_size_cv_impl): New helper to safely
611	detect tuple_size<T>::value, as per LWG 2770.
612	(tuple_size<cv T>): Adjust partial specializations to derive from
613	__tuple_size_cv_impl.
614	* testsuite/20_util/tuple/cv_tuple_size.cc: Test SFINAE-friendliness.
615
616	* testsuite/libstdc++-prettyprinters/cxx17.cc: Adjust test for
617	variant<T&>.
618
6192016-11-15  Tim Shen  <timshen@google.com>
620
621	* include/std/variant: Remove variant<T&>, variant<void>, variant<>
622	support to rebase on the post-Issaquah design.
623	* testsuite/20_util/variant/compile.cc: Likewise.
624
6252016-11-15  Matthias Klose  <doko@ubuntu.com>
626
627	* configure: Regenerate.
628
6292016-11-15  Jonathan Wakely  <jwakely@redhat.com>
630
631	* testsuite/19_diagnostics/error_code/is_error_code_v.cc: Fix license
632	text.
633	* testsuite/20_util/any/assign/emplace.cc: Likewise.
634	* testsuite/20_util/any/cons/in_place.cc: Likewise.
635	* testsuite/20_util/any/make_any.cc: Likewise.
636	* testsuite/20_util/any/requirements.cc: Likewise.
637	* testsuite/20_util/any/typedefs.cc: Likewise.
638	* testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
639	* testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
640	Likewise.
641	* testsuite/20_util/in_place/requirements.cc: Likewise.
642	* testsuite/20_util/optional/77288.cc: Likewise.
643	* testsuite/20_util/optional/assignment/1.cc: Likewise.
644	* testsuite/20_util/optional/assignment/2.cc: Likewise.
645	* testsuite/20_util/optional/assignment/3.cc: Likewise.
646	* testsuite/20_util/optional/assignment/4.cc: Likewise.
647	* testsuite/20_util/optional/assignment/5.cc: Likewise.
648	* testsuite/20_util/optional/assignment/6.cc: Likewise.
649	* testsuite/20_util/optional/assignment/7.cc: Likewise.
650	* testsuite/20_util/optional/cons/77727.cc: Likewise.
651	* testsuite/20_util/optional/cons/move.cc: Likewise.
652	* testsuite/20_util/optional/cons/value.cc: Likewise.
653	* testsuite/20_util/optional/cons/value_neg.cc: Likewise.
654	* testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
655	* testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
656	* testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
657	* testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
658	* testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
659	* testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
660	* testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
661	* testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
662	* testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
663	* testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
664	* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
665	* testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
666	* testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
667	* testsuite/20_util/optional/hash.cc: Likewise.
668	* testsuite/20_util/optional/make_optional.cc: Likewise.
669	* testsuite/20_util/optional/observers/1.cc: Likewise.
670	* testsuite/20_util/optional/observers/2.cc: Likewise.
671	* testsuite/20_util/optional/observers/3.cc: Likewise.
672	* testsuite/20_util/optional/observers/4.cc: Likewise.
673	* testsuite/20_util/optional/observers/5.cc: Likewise.
674	* testsuite/20_util/optional/observers/6.cc: Likewise.
675	* testsuite/20_util/optional/relops/1.cc: Likewise.
676	* testsuite/20_util/optional/relops/2.cc: Likewise.
677	* testsuite/20_util/optional/relops/3.cc: Likewise.
678	* testsuite/20_util/optional/relops/4.cc: Likewise.
679	* testsuite/20_util/optional/relops/5.cc: Likewise.
680	* testsuite/20_util/optional/relops/6.cc: Likewise.
681	* testsuite/20_util/optional/requirements.cc: Likewise.
682	* testsuite/20_util/optional/swap/1.cc: Likewise.
683	* testsuite/20_util/optional/typedefs.cc: Likewise.
684	* testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
685	* testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
686	* testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
687	Likewise.
688	* testsuite/20_util/variable_templates_for_traits.cc: Likewise.
689	* testsuite/20_util/variant/hash.cc: Likewise.
690	* testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
691	* testsuite/experimental/any/typedefs.cc: Likewise.
692	* testsuite/experimental/array/make_array.cc: Likewise.
693	* testsuite/experimental/array/neg.cc: Likewise.
694	* testsuite/experimental/chrono/value.cc: Likewise.
695	* testsuite/experimental/deque/erasure.cc: Likewise.
696	* testsuite/experimental/forward_list/erasure.cc: Likewise.
697	* testsuite/experimental/list/erasure.cc: Likewise.
698	* testsuite/experimental/map/erasure.cc: Likewise.
699	* testsuite/experimental/memory/observer_ptr/assignment/assign.cc:
700	Likewise.
701	* testsuite/experimental/memory/observer_ptr/cons/cons.cc: Likewise.
702	* testsuite/experimental/memory/observer_ptr/hash/hash.cc: Likewise.
703	* testsuite/experimental/memory/observer_ptr/make_observer.cc:
704	Likewise.
705	* testsuite/experimental/memory/observer_ptr/relops/relops.cc:
706	Likewise.
707	* testsuite/experimental/memory/observer_ptr/requirements.cc: Likewise.
708	* testsuite/experimental/memory/observer_ptr/swap/swap.cc: Likewise.
709	* testsuite/experimental/memory/observer_ptr/typedefs.cc: Likewise.
710	* testsuite/experimental/optional/77288.cc: Likewise.
711	* testsuite/experimental/optional/assignment/1.cc: Likewise.
712	* testsuite/experimental/optional/assignment/2.cc: Likewise.
713	* testsuite/experimental/optional/assignment/3.cc: Likewise.
714	* testsuite/experimental/optional/assignment/4.cc: Likewise.
715	* testsuite/experimental/optional/assignment/5.cc: Likewise.
716	* testsuite/experimental/optional/assignment/6.cc: Likewise.
717	* testsuite/experimental/optional/cons/77727.cc: Likewise.
718	* testsuite/experimental/optional/cons/move.cc: Likewise.
719	* testsuite/experimental/optional/cons/value.cc: Likewise.
720	* testsuite/experimental/optional/cons/value_neg.cc: Likewise.
721	* testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.
722	* testsuite/experimental/optional/constexpr/make_optional.cc: Likewise.
723	* testsuite/experimental/optional/constexpr/observers/1.cc: Likewise.
724	* testsuite/experimental/optional/constexpr/observers/2.cc: Likewise.
725	* testsuite/experimental/optional/constexpr/observers/3.cc: Likewise.
726	* testsuite/experimental/optional/constexpr/observers/4.cc: Likewise.
727	* testsuite/experimental/optional/constexpr/observers/5.cc: Likewise.
728	* testsuite/experimental/optional/constexpr/relops/1.cc: Likewise.
729	* testsuite/experimental/optional/constexpr/relops/2.cc: Likewise.
730	* testsuite/experimental/optional/constexpr/relops/3.cc: Likewise.
731	* testsuite/experimental/optional/constexpr/relops/4.cc: Likewise.
732	* testsuite/experimental/optional/constexpr/relops/5.cc: Likewise.
733	* testsuite/experimental/optional/constexpr/relops/6.cc: Likewise.
734	* testsuite/experimental/optional/make_optional.cc: Likewise.
735	* testsuite/experimental/optional/observers/1.cc: Likewise.
736	* testsuite/experimental/optional/observers/2.cc: Likewise.
737	* testsuite/experimental/optional/observers/3.cc: Likewise.
738	* testsuite/experimental/optional/observers/4.cc: Likewise.
739	* testsuite/experimental/optional/observers/5.cc: Likewise.
740	* testsuite/experimental/optional/relops/1.cc: Likewise.
741	* testsuite/experimental/optional/relops/2.cc: Likewise.
742	* testsuite/experimental/optional/relops/3.cc: Likewise.
743	* testsuite/experimental/optional/relops/4.cc: Likewise.
744	* testsuite/experimental/optional/relops/5.cc: Likewise.
745	* testsuite/experimental/optional/relops/6.cc: Likewise.
746	* testsuite/experimental/optional/requirements.cc: Likewise.
747	* testsuite/experimental/optional/swap/1.cc: Likewise.
748	* testsuite/experimental/optional/typedefs.cc: Likewise.
749	* testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
750	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
751	Likewise.
752	* testsuite/experimental/propagate_const/cons/move.cc: Likewise.
753	* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
754	* testsuite/experimental/propagate_const/hash/1.cc: Likewise.
755	* testsuite/experimental/propagate_const/observers/1.cc: Likewise.
756	* testsuite/experimental/propagate_const/relops/1.cc: Likewise.
757	* testsuite/experimental/propagate_const/requirements1.cc: Likewise.
758	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
759	* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
760	* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
761	* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
762	* testsuite/experimental/propagate_const/swap/1.cc: Likewise.
763	* testsuite/experimental/propagate_const/typedefs.cc: Likewise.
764	* testsuite/experimental/random/randint.cc: Likewise.
765	* testsuite/experimental/ratio/value.cc: Likewise.
766	* testsuite/experimental/set/erasure.cc: Likewise.
767	* testsuite/experimental/string/erasure.cc: Likewise.
768	* testsuite/experimental/string_view/typedefs.cc: Likewise.
769	* testsuite/experimental/system_error/value.cc: Likewise.
770	* testsuite/experimental/tuple/tuple_size.cc: Likewise.
771	* testsuite/experimental/type_traits/value.cc: Likewise.
772	* testsuite/experimental/unordered_map/erasure.cc: Likewise.
773	* testsuite/experimental/unordered_set/erasure.cc: Likewise.
774	* testsuite/experimental/vector/erasure.cc: Likewise.
775
776	* doc/xml/manual/intro.xml: Document LWG 2742 status.
777	* doc/html/*: Regenerate.
778	* include/bits/basic_string.h
779	(basic_string(const T&, size_type, size_type, const Allocator&)): Add
780	constructor for substring of basic_string_view, as per LWG 2742 but
781	with additional constraint to fix ambiguity.
782	* testsuite/21_strings/basic_string/cons/char/9.cc: New test.
783	* testsuite/21_strings/basic_string/cons/wchar_t/9.cc: New test.
784
785	* doc/xml/manual/intro.xml: Document LWG 2748 status.
786	* include/std/optional (optional<T>::swap): Use is_nothrow_swappable_v
787	for exception specification.
788	(swap(optional<T>&, optional<T>&)): Disable when T is not swappable.
789	* testsuite/20_util/optional/swap/2.cc: New test.
790
7912016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
792
793	Implement P0513R0, Poisoning the Hash.
794	* include/bits/functional_hash.h (__poison_hash): New.
795	* include/bits/unique_ptr.h
796	(hash<unique_ptr<_Tp, _Dp>>): Derive from __poison_hash.
797	* include/std/optional (hash<optional<_Tp>>): Likewise.
798	* include/std/variant (hash<variant<_Types...>>): Likewise.
799	* testsuite/20_util/default_delete/48631_neg.cc: Adjust.
800	* testsuite/20_util/default_delete/void_neg.cc: Likewise.
801	* testsuite/20_util/optional/hash.cc: New.
802	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
803	* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Adjust.
804	* testsuite/20_util/unique_ptr/hash/1.cc: Add tests for
805	poisoned fancy pointer hashes.
806	* testsuite/20_util/variant/hash.cc: New.
807
8082016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
809
810	Implement P0504R0 (Revisiting in-place tag types for
811	any/optional/variant).
812	* include/std/any (any(_ValueType&& __value)): Constrain
813	the __is_in_place_type with the decayed type.
814	(make_any): Adjust to use the new tag type.
815	* include/std/utility (in_place_tag): Remove.
816	(in_place_t): Turn into a non-reference tag type.
817	(__in_place, __in_place_type, __in_place_index): Remove.
818	(in_place): Turn into an inline variable of non-reference
819	tag type.
820	(in_place<_Tp>): Remove.
821	(in_place_index<_Idx>): Remove.
822	(in_place_type_t): New.
823	(in_place_type): Turn into a variable template of non-reference
824	type.
825	(in_place_index_t): New.
826	(in_place_index): Turn into a variable template of non-reference
827	type.
828	* include/std/variant
829	(_Variant_storage(in_place_index_t<_Np>, _Args&&...)): Adjust to
830	use the new tag type.
831	(_Union(in_place_index_t<0>, _Args&&...)): Likewise.
832	(_Union(in_place_index_t<_Np>, _Args&&...)): Likewise.
833	(_Variant_base()): Likewise.
834	(variant(_Tp&&)): Likewise.
835	(variant(in_place_type_t<_Tp>, _Args&&...)): Likewise.
836	(variant(in_place_type_t<_Tp>, initializer_list<_Up>,
837	_Args&&...)): Likewise.
838	(variant(in_place_index_t<_Np>, _Args&&...)): Likewise.
839	(variant(in_place_index_t<_Np>, initializer_list<_Up>,
840	_Args&&...)): Likewise
841	(variant(allocator_arg_t, const _Alloc&)): Likewise.
842	(variant(allocator_arg_t, const _Alloc&, _Tp&&)): Likewise.
843	(variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
844	_Args&&...)): Likewise.
845	(variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
846	initializer_list<_Up>, _Args&&...)): Likewise.
847	(variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
848	_Args&&...)): Likewise.
849	(variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
850	initializer_list<_Up>, _Args&&...)): Likewise.
851	(emplace(_Args&&...)): Likewise.
852	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
853	* testsuite/20_util/any/cons/explicit.cc: Likewise.
854	* testsuite/20_util/any/cons/in_place.cc: Likewise.
855	* testsuite/20_util/any/requirements.cc: Add tests to
856	check that any is not constructible from the new in_place_type_t
857	of any value category.
858	* testsuite/20_util/in_place/requirements.cc: Adjust to
859	use the new tag type.
860	* testsuite/20_util/variant/compile.cc: Likewise.
861	* testsuite/20_util/variant/run.cc: Likewise.
862
8632016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
864
865	Use constexpr addressof in optional, SFINAE housekeeping
866	for any, optional and tuple.
867	* include/std/any (__do_emplace(_Args&&...)): New.
868	(__do_emplace(initializer_list<_Up>, _Args&&...)): Likewise.
869	(__any_constructible): Likewise.
870	(__any_constructible_t): Use __any_constructible.
871	(operator=(_ValueType&&)): SFINAE in the return type.
872	(emplace(_Args&&...)): Likewise.
873	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
874	* include/std/optional (_Has_addressof_mem): Remove.
875	(_Has_addressof_free): Likewise.
876	(_Has_addressof): Likewise.
877	(__constexpr_addressof(_Tp&)): Likewise.
878	(operator->): Use std::__addressof.
879	* include/std/tuple (operator=(const tuple<_UElements...>&)):
880	SFINAE in return type.
881	(operator=(tuple<_UElements...>&&)): Likewise.
882	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
883
8842016-11-14  Jonathan Wakely  <jwakely@redhat.com>
885
886	* include/bits/move.h (addressof(const _Tp&&)): Add deleted overload,
887	as per LWG 2598.
888
889	* include/std/future (future::share(), future<R&>::share())
890	(future<void>::share()): Add noexcept, as per LWG 2556.
891
8922016-11-13  Jonathan Wakely  <jwakely@redhat.com>
893
894	PR libstdc++/78326
895	* include/experimental/memory_resource (memory_resource::_S_max_align):
896	Change access to protected.
897
898	* doc/xml/manual/status_cxx2017.xml: Update status.
899	* doc/html/manual/status.html: Regenerate.
900	* include/bits/shared_ptr.h (shared_ptr(unique_ptr<_Yp, _Del>)): Add
901	extension constructor to maintain C++14 behaviour.
902	* include/bits/shared_ptr_base.h (__sp_array_delete): Add new struct.
903	(__shared_count(_Ptr, false_type), __shared_count(_Ptr, true_type)):
904	New constructors.
905	(__sp_compatible_with, __sp_is_constructible): Add specializations
906	for array support.
907	(__sp_is_constructible_arr, __sp_is_constructible_arrN): New helpers.
908	(__shared_ptr_access): New base class for observer member functions.
909	(__shared_ptr::element_type): Use remove_extent.
910	(__shared_ptr::_UniqCompatible): Add __sp_compatible_with check.
911	(__shared_ptr(_Yp*)): Use tag dispatching to call new __shared_count
912	constructor.
913	(__shared_ptr(unique_ptr<_Yp, _Del>)): Add extension constructor.
914	(__shared_ptr::operator*, __shared_ptr::operator->): Remove and
915	inherit from __shared_ptr_access base class.
916	(__shared_ptr::__has_esft_base): Return false for array types.
917	(__weak_ptr::element_type): Use remove_extent.
918	* include/experimental/bits/shared_ptr.h (__libfund_v1): Remove.
919	(__shared_ptr<__libfund_v1<_Tp>>): Remove specializations.
920	(__wak_ptr<__libfund_v1<_Tp>>): Likewise.
921	(experimental::__sp_compatible_v): Redefine using
922	__sp_compatible_with.
923	(experimental::__sp_is_constructible_v): Redefine using
924	__sp_is_constructible.
925	(get_deleter, operator<<): Change argument from __shared_ptr to
926	shared_ptr.
927	* testsuite/20_util/shared_ptr/cons/array.cc: New test.
928	* testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Adjust for
929	new behaviour.
930	* testsuite/20_util/shared_ptr/observers/array.cc: Test observers for
931	arrays.
932	* testsuite/20_util/shared_ptr/observers/array_neg.cc: New test.
933
9342016-11-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
935
936	Implement P0403R1, Literal suffixes for basic_string_view.
937	* include/std/string_view
938	(operator""sv(const char*, size_t)): New.
939	(operator""sv(const wchar_t*, size_t)): Likewise.
940	(operator""sv(const char16_t*, size_t)): Likewise.
941	(operator""sv(const char32_t*, size_t)): Likewise.
942	* testsuite/21_strings/basic_string_view/literals/types.cc: New.
943	* testsuite/21_strings/basic_string_view/literals/values.cc: Likewise.
944	* testsuite/experimental/string_view/literals/values.cc: Add
945	tests for literals with embedded NULs.
946
9472016-11-12  Jonathan Wakely  <jwakely@redhat.com>
948
949	* src/filesystem/ops.cc (is_empty): Fix typo in exception message.
950
951	* include/std/future (future_error): Fix public typo to private.
952
9532016-11-11  Jonathan Wakely  <jwakely@redhat.com>
954
955	* include/std/future (future_error): Make existing constructor
956	private and add constructor from future_errc.
957
958	* include/bits/shared_ptr.h (hash<shared_ptr<T>>): Use element_type.
959	* include/bits/shared_ptr_base.h (hash<__shared_ptr<T, L>>): Likewise.
960
9612016-11-10  François Dumont  <fdumont@gcc.gnu.org>
962
963	* src/c++11/debug.cc (format_word): Delete.
964	(print_literal): New. Replace call to print_word for literals.
965
9662016-11-09  Tim Shen  <timshen@google.com>
967
968	* include/bits/regex.h (regex_iterator::regex_iterator()):
969	Define end() as _M_pregex == nullptr.
970	* include/bits/regex.tcc (regex_iterator::operator==(),
971	regex_iterator::operator++()): Fix operator==() and operator++() to
972	look at null-ness of _M_pregex on both sides.
973	* testsuite/28_regex/regression.cc: New testcase.
974
9752016-11-07  Jason Merrill  <jason@redhat.com>
976
977	* include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM)
978	(_GLIBCXX_NOEXCEPT_QUAL): New.
979	* include/std/type_traits (is_function): Use them.
980	* libsubc++/new (launder): Likewise.
981	* libsupc++/cxxabi.h (__pbase_type_info::__masks): Add
982	__noexcept_mask.
983	* libsupc++/pbase_type_info.cc (__do_catch): Handle function
984	pointer conversion.
985
9862016-11-07  François Dumont  <fdumont@gcc.gnu.org>
987
988	* config/abi/pre/gnu-versioned-namespace.ver: Export C++17 new of
989	over-aligned types symbols.
990
9912016-10-28  Jonathan Wakely  <jwakely@redhat.com>
992
993	* include/experimental/bits/fs_path.h (__is_path_src)
994	(_S_range_begin, _S_range_end): Overload to treat string_view as a
995	Source object.
996	(path::operator+=, path::compare): Overload for basic_string_view.
997	* testsuite/experimental/filesystem/path/construct/string_view.cc:
998	New test.
999	* testsuite/experimental/filesystem/path/construct/
1000	string_view_cxx17.cc: New test.
1001
1002	* include/experimental/bits/fs_path.h
1003	(path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
1004	iterator's value_type.
1005	(path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
1006	Do not use operation not supported by input iterators.
1007	(path::__is_path_iter_src): Add partial specialization for const
1008	encoded character types.
1009	* testsuite/experimental/filesystem/path/construct/range.cc: Test
1010	construction from input iterators with const value types.
1011
1012	* doc/xml/manual/status_cxx2017.xml: Update status.
1013	* doc/html/*: Regenerate.
1014	* include/std/type_traits (has_unique_object_representations): Guard
1015	with __has_builtin check.
1016	* libsupc++/new (launder): Define for C++17.
1017	* testsuite/18_support/launder/1.cc: New test.
1018	* testsuite/18_support/launder/requirements.cc: New test.
1019	* testsuite/18_support/launder/requirements_neg.cc: New test.
1020
10212016-10-27  Uros Bizjak  <ubizjak@gmail.com>
1022
1023	PR libstdc++/70975
1024	* src/filesystem/ops.cc (do_copy_file) [_GLIBCXX_USE_SENDFILE]:
1025	Pass non-null pointer to sendfile for offset argument.
1026
10272016-10-27  Jonathan Wakely  <jwakely@redhat.com>
1028
1029	* testsuite/ext/random/uniform_inside_sphere_distribution/cons/
1030	default.cc: Fix effective target selector.
1031	* testsuite/ext/random/uniform_inside_sphere_distribution/cons/
1032	parms.cc: Likewise.
1033	* testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1034	equal.cc: Likewise.
1035	* testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1036	generate.cc: Likewise.
1037	* testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1038	inequal.cc: Likewise.
1039	* testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1040	serialize.cc: Likewise.
1041
1042	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1043	Use end() function to get end iterator.
1044	* testsuite/experimental/filesystem/iterators/pop.cc: Remove printf
1045	statements that were present for debugging.
1046	* testsuite/experimental/filesystem/iterators/
1047	recursive_directory_iterator.cc: Use end() function to get end
1048	iterator.
1049	* testsuite/experimental/filesystem/operations/last_write_time.cc:
1050	Only require file timestamps to be accurate to one second.
1051
10522016-10-26  François Dumont  <fdumont@gcc.gnu.org>
1053
1054	* include/bits/stl_map.h (map()): Make default.
1055	* include/bits/stl_multimap.h (multimap()): Likewise.
1056	* include/bits/stl_multiset.h (multiset()): Likewise.
1057	* include/bits/stl_set.h (set()): Likewise.
1058	* include/bits/stl_tree.h (_Rb_tree_impl()): Add conditional noexcept.
1059	(_Rb_tree()): Make default.
1060
10612016-10-26  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1062
1063	PR libstdc++/78110
1064	* libsupc++/new_opa.cc: Don't include <malloc.h> in a free standing
1065	environment.  Declare memalign directly in that case.
1066
10672016-10-26  Jonathan Wakely  <jwakely@redhat.com>
1068
1069	* testsuite/experimental/filesystem/iterators/pop.cc: Remove
1070	unreliable dependency on directory order.
1071
10722016-10-26  Edward Smith-Rowland  <3dw4rd@verizon.net>
1073
1074	Implement uniform_inside_sphere_distribution extension.
1075	* include/ext/random: Implement uniform_inside_sphere_distribution.
1076	* include/ext/random.tcc: Ditto.
1077	* testsuite/ext/random/uniform_inside_sphere_distribution/
1078	cons/default.cc: New.
1079	* testsuite/ext/random/uniform_inside_sphere_distribution/
1080	cons/parms.cc: New.
1081	* testsuite/ext/random/uniform_inside_sphere_distribution/
1082	operators/equal.cc: New.
1083	* testsuite/ext/random/uniform_inside_sphere_distribution/
1084	operators/generate.cc: New.
1085	* testsuite/ext/random/uniform_inside_sphere_distribution/
1086	operators/inequal.cc: New.
1087	* testsuite/ext/random/uniform_inside_sphere_distribution/
1088	operators/serialize.cc: New.
1089
10902016-10-26  Jonathan Wakely  <jwakely@redhat.com>
1091
1092	* include/experimental/bits/fs_dir.h (recursive_directory_iterator):
1093	Overload pop (LWG 2706).
1094	* src/filesystem/dir.cc (recursive_directory_iterator::pop): Define
1095	new overload.
1096	* testsuite/experimental/filesystem/iterators/pop.cc: New test.
1097
1098	* src/filesystem/dir.cc (recursive_directory_iterator::increment):
1099	Reset state on error.
1100	* testsuite/experimental/filesystem/iterators/
1101	recursive_directory_iterator.cc: Check state after increment error.
1102
1103	PR libstdc++/78111
1104	* src/filesystem/ops.cc (canonical): Set error for non-existent path.
1105
11062016-10-26  Uros Bizjak  <ubizjak@gmail.com>
1107
1108	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
1109	for PATH_MAX in realpath test.
1110	* configure: Regenerate.
1111
11122016-10-25  Jonathan Wakely  <jwakely@redhat.com>
1113
1114	* src/filesystem/ops.cc
1115	(last_write_time(const path&, file_time_type, error_code&)): Handle
1116	negative times correctly.
1117	* testsuite/experimental/filesystem/operations/last_write_time.cc:
1118	Test writing file times.
1119
1120	* src/filesystem/ops.cc (do_copy_file): Report an error if source or
1121	destination is not a regular file (LWG 2712).
1122	(equivalent): Fix error handling and result when only one file exists.
1123	* testsuite/experimental/filesystem/operations/copy.cc: Remove files
1124	created by tests. Test copying directories.
1125	* testsuite/experimental/filesystem/operations/copy_file.cc: Remove
1126	files created by tests.
1127	* testsuite/experimental/filesystem/operations/equivalent.cc: New.
1128	* testsuite/experimental/filesystem/operations/is_empty.cc: New.
1129	* testsuite/experimental/filesystem/operations/read_symlink.cc: Remove
1130	file created by test.
1131	* testsuite/experimental/filesystem/operations/remove_all.cc: New.
1132	* testsuite/util/testsuite_fs.h (~scoped_file): Only try to remove
1133	file if path is non-empty, to support removal by other means.
1134
11352016-10-24  Jonathan Wakely  <jwakely@redhat.com>
1136
1137	* src/filesystem/ops.cc (is_empty): Fix error handling.
1138	* testsuite/experimental/filesystem/operations/is_empty.cc: New test.
1139
1140	PR libstdc++/71337
1141	* src/filesystem/ops.cc (temp_directory_path): Pass error_code
1142	argument to other filesystem operations.
1143	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1144	Add testcase for inaccessible directory.
1145
1146	* src/filesystem/dir.cc (open_dir): Return same value for errors
1147	whether ignored or not.
1148	(_Dir::advance(error_code*, directory_options)): Return false on
1149	error.
1150	(directory_iterator(const path&, directory_options, error_code*)):
1151	Create end iterator on error (LWG 2723).
1152	(recursive_directory_iterator(const path&, directory_options,
1153	error_code*)): Likewise.
1154	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1155	Update expected behaviour on error.
1156	* testsuite/experimental/filesystem/iterators/
1157	recursive_directory_iterator.cc: Likewise.
1158
1159	* src/filesystem/ops.cc (close_fd): Remove.
1160	(do_copy_file): Just use close(3) instead of close_fd, to prevent
1161	retrying on error.
1162
1163	* src/filesystem/ops.cc (do_copy_file): Return an error if either
1164	source or destination is not a regular file.
1165	(copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
1166	resolutions.
1167	(read_symlink): Add missing ec.clear().
1168	* testsuite/experimental/filesystem/operations/copy.cc: Update
1169	expected behaviour for copying directories with create_symlinks.
1170	Verify that error_code arguments are cleared if there's no error.
1171	* testsuite/experimental/filesystem/operations/read_symlink.cc: New.
1172
11732016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
1174
1175	Cross-port exception-safety and move fixes of std::any to
1176	std::experimental::any.
1177	* include/experimental/any (operator=(const any&)):
1178	Make strongly exception-safe.
1179	(operator=(any&&)): clear() unconditionally in the case where
1180	rhs has a value.
1181	(_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
1182	* testsuite/experimental/any/assign/2.cc: Adjust.
1183	* testsuite/experimental/any/assign/exception.cc: New.
1184	* testsuite/experimental/any/cons/2.cc: Adjust.
1185	* testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.
1186
11872016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
1188
1189	Cross-port the latest resolution of LWG2756 and some
1190	bug-fixes to experimental::optional.
1191	PR libstdc++/77288
1192	PR libstdc++/77727
1193	* include/experimental/optional (_Optional_base):
1194	Remove constructors that take a _Tp.
1195	(__is_optional_impl, __is_optional): Remove.
1196	(__converts_from_optional): New.
1197	(optional(_Up&&)): Fix constraints, call base with in_place.
1198	(optional(const optional<_Up>&)): Fix constraints, use emplace.
1199	(optional(optional<_Up>&&)): Likewise.
1200	(operator=(_Up&&)): Fix constraints.
1201	(operator=(const optional<_Up>&)): Likewise.
1202	(operator=(optional<_Up>&&)): Likewise.
1203	(emplace(_Args&&...)): Constrain.
1204	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
1205	* testsuite/experimental/optional/77288.cc: New.
1206	* testsuite/experimental/optional/assignment/5.cc: Adjust.
1207	* testsuite/experimental/optional/cons/77727.cc: New.
1208	* testsuite/experimental/optional/cons/value.cc: Adjust.
1209
12102016-10-24  Jonathan Wakely  <jwakely@redhat.com>
1211
1212	* include/bits/stl_vector.h (vector::_M_data_ptr, vector::data):
1213	Change return type of non-standard C++98 extension to match C++11.
1214
12152016-10-22  François Dumont  <fdumont@gcc.gnu.org>
1216
1217	* include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_ALGO)
1218	(_GLIBCXX_END_NAMESPACE_ALGO): Default to respectively
1219	_GLIBCXX_BEGIN_NAMESPACE_VERSION and _GLIBCXX_END_NAMESPACE_VERSION.
1220	(_GLIBCXX_BEGIN_NAMESPACE_CONTAINER, _GLIBCXX_END_NAMESPACE_CONTAINER):
1221	Likewise.
1222
12232016-10-22  Jonathan Wakely  <jwakely@redhat.com>
1224
1225	* src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1226	Ignore symlink_nofollow flag if file is not a symlink.
1227	* testsuite/experimental/filesystem/operations/permissions.cc: Test
1228	symlink_nofollow on non-symlinks.
1229
12302016-10-21  Jonathan Wakely  <jwakely@redhat.com>
1231
1232	* include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
1233	Replace with symlink_nofollow (LWG 2720).
1234	* src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1235	Handle symlink_nofollow.
1236	* testsuite/experimental/filesystem/operations/create_symlink.cc: New
1237	test.
1238	* testsuite/experimental/filesystem/operations/permissions.cc: Test
1239	overload taking error_code.
1240
1241	* include/experimental/bits/fs_ops.h
1242	(exists(const path&, error_code&)): Clear error if status is known
1243	(LWG 2725).
1244	(status(const path&, error_code&)): Handle EOVERFLOW.
1245	* testsuite/experimental/filesystem/operations/exists.cc: Test
1246	overload taking an error_code.
1247
1248	* include/experimental/bits/fs_path.h (path::path(string_type&&))
1249	(path::operator=(string&&), path::assign(string_type&&)): Define
1250	construction and assignment from string_type rvalues (LWG 2707).
1251
12522016-10-21  Eelis van der Weegen  <eelis@eelis.net>
1253
1254	* include/bits/stl_algo.h (__gen_two_uniform_ints): Move logic out
1255	of shuffle into new function.
1256	(shuffle): Call __gen_two_uniform_ints.
1257	(__sample<ForwardIterator, OutputIterator, Cat, Size, URBG>): Use
1258	__gen_two_uniform_ints and perform two samples at a time.
1259
12602016-10-21  Jonathan Wakely  <jwakely@redhat.com>
1261
1262	* include/Makefile.am: Add <bits/refwrap.h> and <bits/std_function.h>.
1263	Order alphabetically.
1264	* include/Makefile.in: Regenerate.
1265	* include/bits/refwrap.h: New header.
1266	(_Maybe_get_result_type,_Weak_result_type_impl, _Weak_result_type)
1267	(_Reference_wrapper_base_impl, _Reference_wrapper_base)
1268	(reference_wrapper, ref, cref): Move here from <functional>.
1269	* include/bits/shared_ptr_base.h: Include <bits/refwrap.h> and
1270	<bits/stl_function.h> instead of <functional>.
1271	* include/bits/std_function.h: New header.
1272	(_Maybe_unary_or_binary_function, bad_function_call)
1273	(__is_location_invariant, _Nocopy_types, _Any_data)
1274	(_Simple_type_wrapper, _Function_base, _Function_handler, function):
1275	Move here from <functional>.
1276	* include/bits/unique_ptr.h: Include <bits/stl_function.h>.
1277	* include/std/functional: Include new headers and move components to
1278	them.
1279	* include/std/future: Include <bits/std_function.h> instead of
1280	<functional>.
1281	* include/std/mutex: Likewise.
1282	* include/std/regex: Likewise.
1283	* src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
1284	* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
1285	* testsuite/20_util/default_delete/void_neg.cc: Likewise.
1286	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1287	lines.
1288	* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
1289	* testsuite/30_threads/packaged_task/49668.cc: Include <functional>.
1290
1291	* libsupc++/exception_ptr.h (make_exception_ptr): Qualify new.
1292	* testsuite/18_support/exception_ptr/make_exception_ptr_2.cc: New
1293	test.
1294
12952016-10-20  Jonathan Wakely  <jwakely@redhat.com>
1296
1297	* include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
1298	(shared_ptr(auto_ptr&&)): Adjust template parameter lists.
1299	* include/bits/shared_ptr.h (__sp_compatible_with)
1300	(__sp_is_constructible): New helper traits for shared_ptr.
1301	(shared_ptr::_Convertible): Replace with _Constructible.
1302	(shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
1303	to base class.
1304	(shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
1305	with _Constructible and _Assignable.
1306	(shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
1307	instead of _Tp.
1308	(operator<): Likewise.
1309	(operator>): Define in terms of operator<.
1310	(static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1311	element_type instead of _Tp.
1312	(reinterpret_pointer_cast): Define for C++17.
1313	(weak_ptr::_Convertible): Replace with _Constructible.
1314	(weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
1315	to base class.
1316	(weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
1317	with _Constructible and _Assignable.
1318	* include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
1319	with _Compatible.
1320	(__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
1321	(__shared_ptr::_Compatible): New constraint for converting from
1322	other types of shared_ptr and weak_ptr.
1323	(__shared_ptr::_Assignable): Define in terms of _Compatible.
1324	(__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
1325	constraints for converting from unique_ptr.
1326	(__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
1327	template with _SaveConf, _Compatible and _Assignable. Remove
1328	__glibcxx_function_requires concept checks. Add static assertion for
1329	deleter expression being well-formed.
1330	(__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
1331	(__shared_ptr::operator*, __shared_ptr::operator->)
1332	(__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
1333	of _Tp.
1334	(operator<): Likewise.
1335	(operator>): Define in terms of operator<.
1336	(static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1337	element_type instead of _Tp.
1338	(reinterpret_pointer_cast): Define for C++17.
1339	(weak_ptr::_Convertible): Replace with _Compatible.
1340	(weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
1341	conversions from other types of weak_ptr and shared_ptr.
1342	(__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
1343	with _Constructible and _Assignable.
1344	(__weak_ptr::_M_ptr): Use element_type instead of _Tp.
1345	* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
1346	dg-error pattern.
1347	* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
1348	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
1349	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1350	* testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.
1351
13522016-10-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
1353
1354	Do the operator= SFINAE in the return type for optional,
1355	not in the template parameters.
1356	* include/std/optional (operator=(_Up&&)): Move SFINAE
1357	from template parameters to the return type.
1358	(operator=(const optional<_Up>&)): Likewise.
1359	(operator=(optional<_Up>&&)): Likewise.
1360
13612016-10-20  Jonathan Wakely  <jwakely@redhat.com>
1362
1363	* include/bits/allocator.h: Remove trailing whitespace, tab-indent.
1364	* include/ext/new_allocator.h: Likewise.
1365
1366	PR libstdc++/78052
1367	* include/bits/allocator.h (allocator<void>::construct)
1368	(allocator<void>::destroy): Define.
1369	* testsuite/20_util/allocator/void.cc: New test.
1370
1371	* testsuite/20_util/enable_shared_from_this/56383.cc: Add tests for
1372	additional ambiguous cases.
1373
13742016-10-19  Jonathan Wakely  <jwakely@redhat.com>
1375
1376	* include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&)): Call
1377	_M_enable_shared_from_this_with instead of
1378	__enable_shared_from_this_helper.
1379	* include/bits/shared_ptr.h (__enable_shared_from_this_helper):
1380	Remove overload for std::enable_shared_from_this..
1381	(__enable_shared_from_this_base): Define friend function to select a
1382	std::enable_shared_from_this base class.
1383	* include/bits/shared_ptr_base.h (__enable_shared_from_this_helper):
1384	Remove all overloads.
1385	(__shared_ptr): Change all relevant constructors to call
1386	_M_enable_shared_from_this_with instead of
1387	__enable_shared_from_this_helper.
1388	(__shared_ptr::__efst_base_t, __shared_ptr::__has_efst_base): Helpers
1389	to detect accessible and unambiguous enable_shared_from_this bases.
1390	(__shared_ptr::_M_enable_shared_from_this_with): New function to
1391	replace __enable_shared_from_this_helper overloads.
1392	(__enable_shared_from_this_helper): Remove overload for
1393	std::__enable_shared_from_this.
1394	(__enable_shared_from_this_base): Define friend function to select a
1395	std::__enable_shared_from_this base class.
1396	* include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
1397	Change relevant constructors to call _M_enable_shared_from_this_with.
1398	(experimental::shared_ptr::__efst_base_t)
1399	(experimental::shared_ptr::__has_efst_base): Helpers to detect
1400	accessible and unambiguous enable_shared_from_this bases.
1401	(experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
1402	(experimental::__enable_shared_from_this_helper): Remove overload for
1403	std::experimental::enable_shared_from_this.
1404	(experimental::__expt_enable_shared_from_this_base): Define friend
1405	function to select a std::experimental::enable_shared_from_this base.
1406	* testsuite/experimental/memory/shared_ptr/cons/
1407	enable_shared_from_this.cc: New test.
1408	* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1409	Adjust expected behaviour for shared_ptr<A[]>.
1410
1411	* include/debug/vector (__gnu_debug::vector::emplace_back): Fix return
1412	type.
1413
1414	* include/backward/auto_ptr.h (dauto_ptr): Correct comment about
1415	conversions from auto_ptr<Derived> rvalues to auto_ptr<Base>.
1416	* testsuite/20_util/auto_ptr/assign_neg.cc: Remove redundant dg-error
1417	directives that only match notes, not errors.
1418
1419	* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1420	Add tests for valid and invalid conversions.
1421	* testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
1422	Likewise.
1423
1424	* testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
1425	to new file.
1426	* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file.  Fix
1427	test for incompatible deleters to not also use incompatible types.
1428	Add tests for incompatible array types.
1429
1430	* include/experimental/bits/shared_ptr.h
1431	(__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
1432	is_convertible for non-array specialization.
1433	(__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
1434	constraint for conversions from unique_ptr.
1435	(__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
1436	(__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
1437	(__sp_compatible_v): New variable template for trait.
1438	(__sp_is_constructible): New trait to check shared_ptr constraints.
1439	(__sp_is_constructible_v): New variable template for trait.
1440	(__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
1441	constraint for construction/reset, using __sp_is_constructible_v.
1442	(__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
1443	constraint for conversions from unique_ptr.
1444	(__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
1445	(__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
1446	(shared_ptr::_SafeConv): Constraint for checking constructors.
1447	(shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
1448	(shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
1449	(shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
1450	(shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
1451	* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
1452	Remove tests using invalid conversions.
1453	* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
1454	New test.
1455	* testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
1456	* testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
1457	tests using invalid conversions.
1458	* testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
1459	test.
1460	* testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
1461	Remove tests using invalid conversions.
1462
1463	PR libstdc++/77990
1464	* include/bits/unique_ptr.h (__uniq_ptr_impl): New type to
1465	encapsulate implementation details.
1466	(unique_ptr::unique_ptr(_Up)): Don't copy deleter object.
1467	(unique_ptr::get, unique_ptr::get_deleter, unique_ptr::release):
1468	Call member functions of implementation object.
1469	(unique_ptr<T[], D>): Likewise.
1470	* python/libstdcxx/v6/printers.py (UniquePointerPrinter): Adjust for
1471	new implementation.
1472	* python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Likewise.
1473	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1474	lines.
1475	* testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
1476	* testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
1477	* testsuite/20_util/unique_ptr/cons/77990.cc: New test.
1478
14792016-10-18  Jonathan Wakely  <jwakely@redhat.com>
1480
1481	* include/experimental/bits/shared_ptr.h: Fix indentation.
1482
1483	* include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
1484	Remove const from parameter.
1485	(operator<(const shared_ptr<T>&, nullptr_t)): Use correct
1486	specialization of std::less.
1487	* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
1488	Test comparison with nullptr and actually call test functions.
1489
1490	* include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
1491	(__is_nothrow_uses_allocator_constructible_v): Only define for C++14
1492	and later.
1493
14942016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1495
1496	* testsuite/27_io/basic_filebuf/close/12790-1.cc: Remove 'test'
1497	variables.
1498	* testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
1499	* testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Likewise.
1500	* testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Likewise.
1501	* testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
1502	* testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Likewise.
1503	* testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
1504	* testsuite/27_io/basic_filebuf/close/char/3.cc: Likewise.
1505	* testsuite/27_io/basic_filebuf/close/char/4.cc: Likewise.
1506	* testsuite/27_io/basic_filebuf/close/char/5.cc: Likewise.
1507	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise.
1508	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise.
1509	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
1510	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise.
1511	* testsuite/27_io/basic_filebuf/cons/2020.cc: Likewise.
1512	* testsuite/27_io/basic_filebuf/cons/char/1.cc: Likewise.
1513	* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
1514	* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: Likewise.
1515	* testsuite/27_io/basic_filebuf/imbue/12206.cc: Likewise.
1516	* testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
1517	* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
1518	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
1519	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
1520	* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
1521	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
1522	* testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
1523	* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
1524	* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
1525	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
1526	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
1527	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
1528	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
1529	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1530	* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
1531	* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
1532	* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
1533	* testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Likewise.
1534	* testsuite/27_io/basic_filebuf/is_open/char/1.cc: Likewise.
1535	* testsuite/27_io/basic_filebuf/open/12790-1.cc: Likewise.
1536	* testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
1537	* testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
1538	* testsuite/27_io/basic_filebuf/open/char/3.cc: Likewise.
1539	* testsuite/27_io/basic_filebuf/open/char/4.cc: Likewise.
1540	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1541	* testsuite/27_io/basic_filebuf/overflow/char/1.cc: Likewise.
1542	* testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Likewise.
1543	* testsuite/27_io/basic_filebuf/overflow/char/2.cc: Likewise.
1544	* testsuite/27_io/basic_filebuf/overflow/char/3599.cc: Likewise.
1545	* testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Likewise.
1546	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Likewise.
1547	* testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Likewise.
1548	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
1549	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
1550	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
1551	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
1552	* testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Likewise.
1553	* testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Likewise.
1554	* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Likewise.
1555	* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Likewise.
1556	* testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Likewise.
1557	* testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Likewise.
1558	* testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: Likewise.
1559	* testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Likewise.
1560	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
1561	* testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Likewise.
1562	* testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Likewise.
1563	* testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Likewise.
1564	* testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
1565	* testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
1566	* testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
1567	* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
1568	* testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
1569	* testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Likewise.
1570	* testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: Likewise.
1571	* testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Likewise.
1572	* testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Likewise.
1573	* testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Likewise.
1574	* testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Likewise.
1575	* testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
1576	* testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
1577	* testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
1578	* testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Likewise.
1579	* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Likewise.
1580	* testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
1581	* testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Likewise.
1582	* testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: Likewise.
1583	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
1584	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise.
1585	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise.
1586	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise.
1587	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise.
1588	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise.
1589	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
1590	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Likewise.
1591	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
1592	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
1593	Likewise.
1594	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
1595	* testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Likewise.
1596	* testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Likewise.
1597	* testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Likewise.
1598	* testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Likewise.
1599	* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
1600	* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Likewise.
1601	* testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Likewise.
1602	* testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Likewise.
1603	* testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc: Likewise.
1604	* testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Likewise.
1605	* testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Likewise.
1606	* testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
1607	* testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Likewise.
1608	* testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
1609	* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Likewise.
1610	* testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
1611	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Likewise.
1612	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise.
1613	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise.
1614	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc: Likewise.
1615	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise.
1616	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
1617	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
1618	Likewise.
1619	* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
1620	* testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Likewise.
1621	* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc
1622	* testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
1623	* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1624	* testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Likewise.
1625	* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Likewise.
1626	* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Likewise.
1627	* testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Likewise.
1628	* testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Likewise.
1629	* testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: Likewise.
1630	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Likewise.
1631	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
1632	* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Likewise.
1633	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
1634	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
1635	* testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
1636	* testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Likewise.
1637	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
1638	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Likewise.
1639	* testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Likewise.
1640	* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Likewise.
1641	* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Likewise.
1642	* testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Likewise.
1643	* testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Likewise.
1644	* testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: Likewise.
1645	* testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Likewise.
1646	* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Likewise.
1647	* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
1648	* testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Likewise.
1649	* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Likewise.
1650	* testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
1651	* testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Likewise.
1652	* testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: Likewise.
1653	* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Likewise.
1654	* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Likewise.
1655	* testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: Likewise.
1656	* testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Likewise.
1657	* testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Likewise.
1658	* testsuite/27_io/basic_filebuf/sputc/char/59427.cc: Likewise.
1659	* testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Likewise.
1660	* testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: Likewise.
1661	* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Likewise.
1662	* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Likewise.
1663	* testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: Likewise.
1664	* testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Likewise.
1665	* testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Likewise.
1666	* testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise.
1667	* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Likewise.
1668	* testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Likewise.
1669	* testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Likewise.
1670	* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
1671	* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Likewise.
1672	* testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Likewise.
1673	* testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
1674	* testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: Likewise.
1675	* testsuite/27_io/basic_filebuf/sync/char/1057.cc: Likewise.
1676	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Likewise.
1677	* testsuite/27_io/basic_filebuf/underflow/char/1.cc: Likewise.
1678	* testsuite/27_io/basic_filebuf/underflow/char/2.cc: Likewise.
1679	* testsuite/27_io/basic_filebuf/underflow/char/3.cc: Likewise.
1680	* testsuite/27_io/basic_filebuf/underflow/char/45841.cc: Likewise.
1681	* testsuite/27_io/basic_filebuf/underflow/char/9027.cc: Likewise.
1682	* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
1683	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
1684	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
1685	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
1686	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
1687	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: Likewise.
1688	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Likewise.
1689	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
1690	* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
1691	* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
1692	* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
1693	* testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
1694	* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
1695	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Likewise.
1696	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
1697	* testsuite/27_io/basic_fstream/cons/1.cc: Likewise.
1698	* testsuite/27_io/basic_fstream/rdbuf/char/2832.cc: Likewise.
1699	* testsuite/27_io/basic_ifstream/cons/2020.cc: Likewise.
1700	* testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
1701	* testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
1702	* testsuite/27_io/basic_ifstream/rdbuf/char/2832.cc: Likewise.
1703	* testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
1704	* testsuite/27_io/basic_ios/cons/2020.cc: Likewise.
1705	* testsuite/27_io/basic_ios/cons/char/1.cc: Likewise.
1706	* testsuite/27_io/basic_ios/cons/char/2.cc: Likewise.
1707	* testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
1708	* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
1709	* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
1710	* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
1711	* testsuite/27_io/basic_ios/imbue/14072.cc: Likewise.
1712	* testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
1713	* testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
1714	* testsuite/27_io/basic_istream/cons/3.cc: Likewise.
1715	* testsuite/27_io/basic_istream/exceptions/char/9561.cc: Likewise.
1716	* testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: Likewise.
1717	* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1718	Likewise.
1719	* testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1720	Likewise.
1721	* testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1722	Likewise.
1723	* testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1724	Likewise.
1725	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1726	Likewise.
1727	* testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1728	Likewise.
1729	* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1730	Likewise.
1731	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1732	Likewise.
1733	* testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1734	Likewise.
1735	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1736	Likewise.
1737	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1738	Likewise.
1739	* testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
1740	Likewise.
1741	* testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
1742	Likewise.
1743	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
1744	exceptions_badbit_throw.cc: Likewise.
1745	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
1746	exceptions_failbit.cc: Likewise.
1747	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
1748	exceptions_failbit_throw.cc: Likewise.
1749	* testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
1750	Likewise.
1751	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
1752	Likewise.
1753	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/02.cc:
1754	Likewise.
1755	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/03.cc:
1756	Likewise.
1757	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/06.cc:
1758	Likewise.
1759	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
1760	Likewise.
1761	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/08.cc:
1762	Likewise.
1763	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
1764	Likewise.
1765	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
1766	Likewise.
1767	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/11.cc:
1768	Likewise.
1769	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1770	Likewise.
1771	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
1772	Likewise.
1773	* testsuite/27_io/basic_istream/extractors_arithmetic/
1774	wchar_t/9555-ia.cc: Likewise.
1775	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1776	dr696.cc: Likewise.
1777	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1778	exceptions_badbit_throw.cc: Likewise.
1779	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1780	exceptions_failbit.cc: Likewise.
1781	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1782	exceptions_failbit_throw.cc: Likewise.
1783	* testsuite/27_io/basic_istream/extractors_character/char/1.cc:
1784	Likewise.
1785	* testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
1786	Likewise.
1787	* testsuite/27_io/basic_istream/extractors_character/char/2.cc:
1788	Likewise.
1789	* testsuite/27_io/basic_istream/extractors_character/char/3.cc:
1790	Likewise.
1791	* testsuite/27_io/basic_istream/extractors_character/char/4.cc:
1792	Likewise.
1793	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1794	Likewise.
1795	* testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
1796	Likewise.
1797	* testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
1798	Likewise.
1799	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
1800	11095-i.cc: Likewise.
1801	* testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc:
1802	Likewise.
1803	* testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
1804	Likewise.
1805	* testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
1806	Likewise.
1807	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
1808	9555-ic.cc: Likewise.
1809	* testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
1810	* testsuite/27_io/basic_istream/extractors_other/char/2.cc: Likewise.
1811	* testsuite/27_io/basic_istream/extractors_other/char/26181.cc:
1812	Likewise.
1813	* testsuite/27_io/basic_istream/extractors_other/char/3.cc: Likewise.
1814	* testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
1815	Likewise.
1816	* testsuite/27_io/basic_istream/extractors_other/char/9424-in.cc:
1817	Likewise.
1818	* testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
1819	Likewise.
1820	* testsuite/27_io/basic_istream/extractors_other/char/
1821	error_failbit.cc: Likewise.
1822	* testsuite/27_io/basic_istream/extractors_other/char/
1823	exceptions_badbit_throw.cc: Likewise.
1824	* testsuite/27_io/basic_istream/extractors_other/char/
1825	exceptions_failbit_throw.cc: Likewise.
1826	* testsuite/27_io/basic_istream/extractors_other/char/
1827	exceptions_null.cc: Likewise.
1828	* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc:
1829	Likewise.
1830	* testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc: Likewise.
1831	* testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise.
1832	* testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
1833	Likewise.
1834	* testsuite/27_io/basic_istream/extractors_other/wchar_t/3.cc: Likewise.
1835	* testsuite/27_io/basic_istream/extractors_other/wchar_t/9318-in.cc:
1836	Likewise.
1837	* testsuite/27_io/basic_istream/extractors_other/wchar_t/9424-in.cc:
1838	Likewise.
1839	* testsuite/27_io/basic_istream/extractors_other/wchar_t/9555-io.cc:
1840	Likewise.
1841	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1842	error_failbit.cc: Likewise.
1843	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1844	exceptions_badbit_throw.cc: Likewise.
1845	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1846	exceptions_failbit_throw.cc: Likewise.
1847	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
1848	exceptions_null.cc: Likewise.
1849	* testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1850	* testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1851	* testsuite/27_io/basic_istream/get/char/3.cc: Likewise.
1852	* testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
1853	* testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
1854	* testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
1855	* testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1856	* testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1857	* testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1858	* testsuite/27_io/basic_istream/getline/char/4.cc: Likewise.
1859	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
1860	* testsuite/27_io/basic_istream/getline/char/6.cc: Likewise.
1861	* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
1862	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Likewise.
1863	* testsuite/27_io/basic_istream/getline/wchar_t/3.cc: Likewise.
1864	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
1865	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
1866	* testsuite/27_io/basic_istream/getline/wchar_t/6.cc: Likewise.
1867	* testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1868	* testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
1869	* testsuite/27_io/basic_istream/ignore/char/3.cc: Likewise.
1870	* testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1871	* testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1872	* testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
1873	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
1874	* testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
1875	* testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
1876	* testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
1877	* testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1878	* testsuite/27_io/basic_istream/peek/char/12296.cc: Likewise.
1879	* testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1880	* testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
1881	* testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
1882	* testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
1883	* testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1884	* testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
1885	* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1886	* testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1887	* testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1888	* testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
1889	* testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
1890	* testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
1891	* testsuite/27_io/basic_istream/readsome/char/6746-1.cc: Likewise.
1892	* testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Likewise.
1893	* testsuite/27_io/basic_istream/readsome/char/8258.cc: Likewise.
1894	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
1895	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
1896	* testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
1897	* testsuite/27_io/basic_istream/seekg/char/2.cc: Likewise.
1898	* testsuite/27_io/basic_istream/seekg/char/26211.cc: Likewise.
1899	* testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1900	* testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1901	* testsuite/27_io/basic_istream/seekg/char/
1902	exceptions_badbit_throw.cc: Likewise.
1903	* testsuite/27_io/basic_istream/seekg/char/fstream.cc: Likewise.
1904	* testsuite/27_io/basic_istream/seekg/char/sstream.cc: Likewise.
1905	* testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
1906	* testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
1907	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
1908	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
1909	* testsuite/27_io/basic_istream/seekg/wchar_t/
1910	exceptions_badbit_throw.cc: Likewise.
1911	* testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1912	* testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
1913	* testsuite/27_io/basic_istream/sentry/char/1.cc: Likewise.
1914	* testsuite/27_io/basic_istream/sentry/char/2.cc: Likewise.
1915	* testsuite/27_io/basic_istream/sentry/char/3.cc: Likewise.
1916	* testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
1917	* testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
1918	* testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
1919	* testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
1920	* testsuite/27_io/basic_istream/tellg/char/1.cc: Likewise.
1921	* testsuite/27_io/basic_istream/tellg/char/2.cc: Likewise.
1922	* testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
1923	* testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1924	* testsuite/27_io/basic_istream/tellg/char/
1925	exceptions_badbit_throw.cc: Likewise.
1926	* testsuite/27_io/basic_istream/tellg/char/fstream.cc: Likewise.
1927	* testsuite/27_io/basic_istream/tellg/char/sstream.cc: Likewise.
1928	* testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1929	* testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
1930	* testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
1931	* testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
1932	* testsuite/27_io/basic_istream/tellg/wchar_t/
1933	exceptions_badbit_throw.cc: Likewise.
1934	* testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1935	* testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
1936	* testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
1937	* testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
1938	* testsuite/27_io/basic_istringstream/cons/2020.cc: Likewise.
1939	* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Likewise.
1940	* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: Likewise.
1941	* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
1942	* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
1943	* testsuite/27_io/basic_ofstream/cons/2020.cc: Likewise.
1944	* testsuite/27_io/basic_ofstream/cons/char/1.cc: Likewise.
1945	* testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
1946	* testsuite/27_io/basic_ofstream/rdbuf/char/2832.cc: Likewise.
1947	* testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
1948	* testsuite/27_io/basic_ostream/cons/char/9827.cc: Likewise.
1949	* testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: Likewise.
1950	* testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
1951	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
1952	* testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
1953	* testsuite/27_io/basic_ostream/ends/char/2.cc: Likewise.
1954	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
1955	* testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
1956	* testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
1957	* testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
1958	* testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1959	* testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
1960	* testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
1961	Likewise.
1962	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
1963	* testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
1964	* testsuite/27_io/basic_ostream/flush/wchar_t/
1965	exceptions_badbit_throw.cc: Likewise.
1966	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1967	Likewise.
1968	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1969	Likewise.
1970	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/3.cc:
1971	Likewise.
1972	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/4.cc:
1973	Likewise.
1974	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
1975	Likewise.
1976	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/5.cc:
1977	Likewise.
1978	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
1979	Likewise.
1980	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
1981	Likewise.
1982	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
1983	Likewise.
1984	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1985	exceptions_badbit_throw.cc: Likewise.
1986	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1987	exceptions_failbit_throw.cc: Likewise.
1988	* testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc:
1989	Likewise.
1990	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1991	Likewise.
1992	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
1993	Likewise.
1994	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/3.cc:
1995	Likewise.
1996	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4.cc:
1997	Likewise.
1998	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
1999	Likewise.
2000	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/5.cc:
2001	Likewise.
2002	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
2003	Likewise.
2004	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
2005	Likewise.
2006	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2007	9555-oa.cc: Likewise.
2008	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2009	exceptions_badbit_throw.cc: Likewise.
2010	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2011	exceptions_failbit_throw.cc: Likewise.
2012	* testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
2013	Likewise.
2014	* testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
2015	Likewise.
2016	* testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
2017	Likewise.
2018	* testsuite/27_io/basic_ostream/inserters_character/char/2.cc: Likewise.
2019	* testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
2020	Likewise.
2021	* testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
2022	Likewise.
2023	* testsuite/27_io/basic_ostream/inserters_character/char/3.cc: Likewise.
2024	* testsuite/27_io/basic_ostream/inserters_character/char/4.cc: Likewise.
2025	* testsuite/27_io/basic_ostream/inserters_character/char/5.cc: Likewise.
2026	* testsuite/27_io/basic_ostream/inserters_character/char/6.cc: Likewise.
2027	* testsuite/27_io/basic_ostream/inserters_character/char/8.cc: Likewise.
2028	* testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
2029	Likewise.
2030	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2031	11095-od.cc: Likewise.
2032	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2033	11095-oe.cc: Likewise.
2034	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2035	11095-of.cc: Likewise.
2036	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/2.cc:
2037	Likewise.
2038	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2039	28277-1.cc: Likewise.
2040	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2041	28277-2.cc: Likewise.
2042	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2043	28277-3.cc: Likewise.
2044	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2045	28277-4.cc: Likewise.
2046	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/3.cc:
2047	Likewise.
2048	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
2049	Likewise.
2050	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/5.cc:
2051	Likewise.
2052	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/6.cc:
2053	Likewise.
2054	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
2055	Likewise.
2056	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
2057	Likewise.
2058	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2059	9555-oc.cc: Likewise.
2060	* testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
2061	* testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Likewise.
2062	* testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Likewise.
2063	* testsuite/27_io/basic_ostream/inserters_other/char/5.cc: Likewise.
2064	* testsuite/27_io/basic_ostream/inserters_other/char/9318-out.cc:
2065	Likewise.
2066	* testsuite/27_io/basic_ostream/inserters_other/char/9424-out.cc:
2067	Likewise.
2068	* testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
2069	Likewise.
2070	* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
2071	Likewise.
2072	* testsuite/27_io/basic_ostream/inserters_other/char/
2073	error_failbit.cc: Likewise.
2074	* testsuite/27_io/basic_ostream/inserters_other/char/
2075	exceptions_badbit_throw.cc: Likewise.
2076	* testsuite/27_io/basic_ostream/inserters_other/char/
2077	exceptions_failbit_throw.cc: Likewise.
2078	* testsuite/27_io/basic_ostream/inserters_other/char/
2079	exceptions_null.cc: Likewise.
2080	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise.
2081	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/3.cc: Likewise.
2082	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/4.cc: Likewise.
2083	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/5.cc: Likewise.
2084	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2085	9318-out.cc: Likewise.
2086	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2087	9424-out.cc: Likewise.
2088	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2089	9555-oo.cc: Likewise.
2090	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2091	error_code.cc: Likewise.
2092	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2093	error_failbit.cc: Likewise.
2094	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2095	exceptions_badbit_throw.cc: Likewise.
2096	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2097	exceptions_failbit_throw.cc: Likewise.
2098	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2099	exceptions_null.cc: Likewise.
2100	* testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
2101	* testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
2102	* testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Likewise.
2103	* testsuite/27_io/basic_ostream/seekp/char/2346-sstream.cc: Likewise.
2104	* testsuite/27_io/basic_ostream/seekp/char/
2105	exceptions_badbit_throw.cc: Likewise.
2106	* testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise.
2107	* testsuite/27_io/basic_ostream/seekp/wchar_t/2346-sstream.cc: Likewise.
2108	* testsuite/27_io/basic_ostream/seekp/wchar_t/
2109	exceptions_badbit_throw.cc: Likewise.
2110	* testsuite/27_io/basic_ostream/sentry/char/1.cc: Likewise.
2111	* testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
2112	* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
2113	* testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
2114	* testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
2115	* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
2116	* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
2117	* testsuite/27_io/basic_ostream/tellp/char/
2118	exceptions_badbit_throw.cc: Likewise.
2119	* testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
2120	* testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
2121	* testsuite/27_io/basic_ostream/tellp/wchar_t/
2122	exceptions_badbit_throw.cc: Likewise.
2123	* testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
2124	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
2125	* testsuite/27_io/basic_ostringstream/cons/2020.cc: Likewise.
2126	* testsuite/27_io/basic_ostringstream/cons/char/3.cc: Likewise.
2127	* testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
2128	* testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc: Likewise.
2129	* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
2130	* testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
2131	* testsuite/27_io/basic_ostringstream/str/char/2.cc: Likewise.
2132	* testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
2133	* testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
2134	* testsuite/27_io/basic_streambuf/cons/2020.cc: Likewise.
2135	* testsuite/27_io/basic_streambuf/cons/57394.cc: Likewise.
2136	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Likewise.
2137	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2138	* testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
2139	* testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
2140	* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
2141	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
2142	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
2143	* testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
2144	* testsuite/27_io/basic_streambuf/in_avail/char/1.cc: Likewise.
2145	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Likewise.
2146	* testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
2147	* testsuite/27_io/basic_streambuf/overflow/char/2.cc: Likewise.
2148	* testsuite/27_io/basic_streambuf/overflow/char/3599.cc: Likewise.
2149	* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
2150	* testsuite/27_io/basic_streambuf/overflow/wchar_t/2.cc: Likewise.
2151	* testsuite/27_io/basic_streambuf/overflow/wchar_t/3599.cc: Likewise.
2152	* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
2153	* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
2154	* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
2155	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
2156	* testsuite/27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
2157	* testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
2158	* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2159	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
2160	* testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
2161	* testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
2162	* testsuite/27_io/basic_stringbuf/cons/2020.cc: Likewise.
2163	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
2164	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
2165	* testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Likewise.
2166	* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
2167	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Likewise.
2168	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
2169	* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Likewise.
2170	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
2171	* testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Likewise.
2172	* testsuite/27_io/basic_stringbuf/overflow/char/2.cc: Likewise.
2173	* testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: Likewise.
2174	* testsuite/27_io/basic_stringbuf/overflow/char/3599.cc: Likewise.
2175	* testsuite/27_io/basic_stringbuf/overflow/char/9988.cc: Likewise.
2176	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc: Likewise.
2177	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/2.cc: Likewise.
2178	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Likewise.
2179	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/3599.cc: Likewise.
2180	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/9988.cc: Likewise.
2181	* testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: Likewise.
2182	* testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
2183	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
2184	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
2185	* testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
2186	* testsuite/27_io/basic_stringbuf/sbumpc/char/9825.cc: Likewise.
2187	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
2188	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/9825.cc: Likewise.
2189	* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
2190	* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: Likewise.
2191	* testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: Likewise.
2192	* testsuite/27_io/basic_stringbuf/seekoff/char/2.cc: Likewise.
2193	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
2194	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
2195	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: Likewise.
2196	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/2.cc: Likewise.
2197	* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
2198	* testsuite/27_io/basic_stringbuf/seekpos/char/2.cc: Likewise.
2199	* testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: Likewise.
2200	* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Likewise.
2201	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
2202	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/2.cc: Likewise.
2203	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: Likewise.
2204	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/3.cc: Likewise.
2205	* testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Likewise.
2206	* testsuite/27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
2207	* testsuite/27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
2208	* testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
2209	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Likewise.
2210	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/2.cc: Likewise.
2211	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/3.cc: Likewise.
2212	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
2213	* testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
2214	* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
2215	* testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
2216	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
2217	* testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
2218	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
2219	* testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
2220	* testsuite/27_io/basic_stringbuf/sputbackc/char/9425.cc: Likewise.
2221	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
2222	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc: Likewise.
2223	* testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Likewise.
2224	* testsuite/27_io/basic_stringbuf/sputc/char/9404-1.cc: Likewise.
2225	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Likewise.
2226	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/9404-1.cc: Likewise.
2227	* testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Likewise.
2228	* testsuite/27_io/basic_stringbuf/sputn/char/9404-2.cc: Likewise.
2229	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Likewise.
2230	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/9404-2.cc: Likewise.
2231	* testsuite/27_io/basic_stringbuf/str/char/1.cc: Likewise.
2232	* testsuite/27_io/basic_stringbuf/str/char/2.cc: Likewise.
2233	* testsuite/27_io/basic_stringbuf/str/char/3.cc: Likewise.
2234	* testsuite/27_io/basic_stringbuf/str/char/3955.cc: Likewise.
2235	* testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Likewise.
2236	* testsuite/27_io/basic_stringbuf/str/wchar_t/2.cc: Likewise.
2237	* testsuite/27_io/basic_stringbuf/str/wchar_t/3.cc: Likewise.
2238	* testsuite/27_io/basic_stringbuf/str/wchar_t/3955.cc: Likewise.
2239	* testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
2240	* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
2241	* testsuite/27_io/basic_stringbuf/sync/char/1057.cc: Likewise.
2242	* testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
2243	* testsuite/27_io/basic_stringstream/cons/2020.cc: Likewise.
2244	* testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Likewise.
2245	* testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: Likewise.
2246	* testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
2247	* testsuite/27_io/basic_stringstream/str/char/2.cc: Likewise.
2248	* testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
2249	* testsuite/27_io/basic_stringstream/str/char/4.cc: Likewise.
2250	* testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
2251	* testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
2252	* testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
2253	* testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
2254	* testsuite/27_io/fpos/11450.cc: Likewise.
2255	* testsuite/27_io/fpos/14252.cc: Likewise.
2256	* testsuite/27_io/fpos/14320-1.cc: Likewise.
2257	* testsuite/27_io/fpos/14320-2.cc: Likewise.
2258	* testsuite/27_io/fpos/14320-3.cc: Likewise.
2259	* testsuite/27_io/fpos/14320-4.cc: Likewise.
2260	* testsuite/27_io/fpos/14320-5.cc: Likewise.
2261	* testsuite/27_io/fpos/14775.cc: Likewise.
2262	* testsuite/27_io/fpos/mbstate_t/1.cc: Likewise.
2263	* testsuite/27_io/fpos/mbstate_t/12065.cc: Likewise.
2264	* testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
2265	* testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
2266	* testsuite/27_io/ios_base/callbacks/1.cc: Likewise.
2267	* testsuite/27_io/ios_base/failure/what-1.cc: Likewise.
2268	* testsuite/27_io/ios_base/failure/what-2.cc: Likewise.
2269	* testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
2270	* testsuite/27_io/ios_base/failure/what-big.cc: Likewise.
2271	* testsuite/27_io/ios_base/state/1.cc: Likewise.
2272	* testsuite/27_io/ios_base/storage/1.cc: Likewise.
2273	* testsuite/27_io/ios_base/storage/11584.cc: Likewise.
2274	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
2275	* testsuite/27_io/ios_base/sync_with_stdio/2.cc: Likewise.
2276	* testsuite/27_io/manipulators/adjustfield/char/1.cc: Likewise.
2277	* testsuite/27_io/manipulators/adjustfield/char/2.cc
2278	* testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: Likewise.
2279	* testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
2280	* testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
2281	* testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
2282	* testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
2283	* testsuite/27_io/manipulators/extended/get_money/char/51288.cc:
2284	Likewise.
2285	* testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
2286	Likewise.
2287	* testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
2288	Likewise.
2289	* testsuite/27_io/manipulators/extended/get_time/char/1.cc
2290	* testsuite/27_io/manipulators/extended/get_time/char/2.cc: Likewise.
2291	* testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: Likewise.
2292	* testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Likewise.
2293	* testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
2294	* testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
2295	Likewise.
2296	* testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
2297	Likewise.
2298	* testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
2299	Likewise.
2300	* testsuite/27_io/manipulators/extended/put_time/char/1.cc: Likewise.
2301	* testsuite/27_io/manipulators/extended/put_time/char/2.cc: Likewise.
2302	* testsuite/27_io/manipulators/extended/put_time/wchar_t/1.cc: Likewise.
2303	* testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Likewise.
2304	* testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
2305	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
2306	* testsuite/27_io/manipulators/standard/char/dr2344.cc: Likewise.
2307	* testsuite/27_io/manipulators/standard/char/quoted.cc: Likewise.
2308	* testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
2309	* testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
2310	* testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: Likewise.
2311	* testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: Likewise.
2312	* testsuite/27_io/objects/char/1.cc: Likewise.
2313	* testsuite/27_io/objects/char/10.cc: Likewise.
2314	* testsuite/27_io/objects/char/3045.cc: Likewise.
2315	* testsuite/27_io/objects/char/41037.cc: Likewise.
2316	* testsuite/27_io/objects/char/5.cc: Likewise.
2317	* testsuite/27_io/objects/char/6.cc: Likewise.
2318	* testsuite/27_io/objects/char/6548_xin.cc: Likewise.
2319	* testsuite/27_io/objects/char/6648-1_xin.cc: Likewise.
2320	* testsuite/27_io/objects/char/6648-2_xin.cc: Likewise.
2321	* testsuite/27_io/objects/char/7744_xin.cc: Likewise.
2322	* testsuite/27_io/objects/char/8.cc: Likewise.
2323	* testsuite/27_io/objects/char/9.cc: Likewise.
2324	* testsuite/27_io/objects/char/9661-2_xin.cc: Likewise.
2325	* testsuite/27_io/objects/char/dr455.cc: Likewise.
2326	* testsuite/27_io/objects/wchar_t/1.cc: Likewise.
2327	* testsuite/27_io/objects/wchar_t/10.cc: Likewise.
2328	* testsuite/27_io/objects/wchar_t/11.cc: Likewise.
2329	* testsuite/27_io/objects/wchar_t/12.cc: Likewise.
2330	* testsuite/27_io/objects/wchar_t/13.cc: Likewise.
2331	* testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Likewise.
2332	* testsuite/27_io/objects/wchar_t/3045.cc: Likewise.
2333	* testsuite/27_io/objects/wchar_t/41037.cc: Likewise.
2334	* testsuite/27_io/objects/wchar_t/5.cc: Likewise.
2335	* testsuite/27_io/objects/wchar_t/6548_xin.cc: Likewise.
2336	* testsuite/27_io/objects/wchar_t/6648-1_xin.cc: Likewise.
2337	* testsuite/27_io/objects/wchar_t/6648-2_xin.cc: Likewise.
2338	* testsuite/27_io/objects/wchar_t/7744_xin.cc: Likewise.
2339	* testsuite/27_io/objects/wchar_t/8.cc: Likewise.
2340	* testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
2341	* testsuite/27_io/objects/wchar_t/9661-2_xin.cc: Likewise.
2342	* testsuite/27_io/objects/wchar_t/9662.cc: Likewise.
2343	* testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
2344	* testsuite/27_io/types/3.cc: Likewise.
2345
23462016-10-17  Jonathan Wakely  <jwakely@redhat.com>
2347
2348	PR libstdc++/77994
2349	* include/bits/stl_algo.h (sample): Convert size argument to iterator
2350	difference type.
2351	* include/experimental/algorithm (experimental::sample): Likewise.
2352	* testsuite/25_algorithms/sample/2.cc: New test.
2353
23542016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2355
2356	* testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
2357	* testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
2358
23592016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2360
2361	* testsuite/array/capacity/empty.cc: Remove 'test' variables.
2362	* testsuite/array/capacity/max_size.cc: Likewise.
2363	* testsuite/array/capacity/size.cc: Likewise.
2364	* testsuite/array/comparison_operators/equal.cc: Likewise.
2365	* testsuite/array/comparison_operators/greater.cc: Likewise.
2366	* testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
2367	* testsuite/array/comparison_operators/less.cc: Likewise.
2368	* testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
2369	* testsuite/array/comparison_operators/not_equal.cc: Likewise.
2370	* testsuite/array/element_access/54388.cc: Likewise.
2371	* testsuite/array/element_access/at_out_of_range.cc: Likewise.
2372	* testsuite/array/element_access/back.cc: Likewise.
2373	* testsuite/array/element_access/data.cc: Likewise.
2374	* testsuite/array/element_access/front.cc: Likewise.
2375	* testsuite/array/iterators/end_is_one_past.cc: Likewise.
2376	* testsuite/array/requirements/contiguous.cc: Likewise.
2377	* testsuite/array/requirements/fill.cc: Likewise.
2378	* testsuite/array/requirements/member_swap.cc: Likewise.
2379	* testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
2380	* testsuite/array/specialized_algorithms/swap.cc: Likewise.
2381	* testsuite/array/tuple_interface/tuple_element.cc: Likewise.
2382	* testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
2383	* testsuite/array/tuple_interface/tuple_size.cc: Likewise.
2384	* testsuite/bitset/all/1.cc: Likewise.
2385	* testsuite/bitset/cons/1.cc: Likewise.
2386	* testsuite/bitset/cons/16020.cc: Likewise.
2387	* testsuite/bitset/cons/2.cc: Likewise.
2388	* testsuite/bitset/cons/3.cc: Likewise.
2389	* testsuite/bitset/cons/50268.cc: Likewise.
2390	* testsuite/bitset/cons/6282.cc: Likewise.
2391	* testsuite/bitset/cons/dr1325-2.cc: Likewise.
2392	* testsuite/bitset/cons/dr396.cc: Likewise.
2393	* testsuite/bitset/ext/15361.cc: Likewise.
2394	* testsuite/bitset/input/1.cc: Likewise.
2395	* testsuite/bitset/operations/1.cc: Likewise.
2396	* testsuite/bitset/operations/13838.cc: Likewise.
2397	* testsuite/bitset/operations/2.cc: Likewise.
2398	* testsuite/bitset/test/1.cc: Likewise.
2399	* testsuite/bitset/to_string/1.cc: Likewise.
2400	* testsuite/bitset/to_string/dr396.cc: Likewise.
2401	* testsuite/bitset/to_ullong/1.cc: Likewise.
2402	* testsuite/bitset/to_ulong/1.cc: Likewise.
2403	* testsuite/deque/allocator/copy.cc: Likewise.
2404	* testsuite/deque/allocator/copy_assign.cc: Likewise.
2405	* testsuite/deque/allocator/ext_ptr.cc: Likewise.
2406	* testsuite/deque/allocator/minimal.cc: Likewise.
2407	* testsuite/deque/allocator/move.cc: Likewise.
2408	* testsuite/deque/allocator/move_assign.cc: Likewise.
2409	* testsuite/deque/allocator/swap.cc: Likewise.
2410	* testsuite/deque/capacity/29134-2.cc: Likewise.
2411	* testsuite/deque/capacity/29134.cc: Likewise.
2412	* testsuite/deque/capacity/moveable.cc: Likewise.
2413	* testsuite/deque/capacity/resize_size.cc: Likewise.
2414	* testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
2415	* testsuite/deque/cons/1.cc: Likewise.
2416	* testsuite/deque/cons/2.cc: Likewise.
2417	* testsuite/deque/cons/assign/1.cc: Likewise.
2418	* testsuite/deque/cons/cons_size.cc: Likewise.
2419	* testsuite/deque/cons/moveable.cc: Likewise.
2420	* testsuite/deque/modifiers/erase/1.cc: Likewise.
2421	* testsuite/deque/modifiers/erase/2.cc: Likewise.
2422	* testsuite/deque/modifiers/erase/3.cc: Likewise.
2423	* testsuite/deque/modifiers/erase/moveable.cc: Likewise.
2424	* testsuite/deque/modifiers/moveable.cc: Likewise.
2425	* testsuite/deque/modifiers/push_back/49836.cc: Likewise.
2426	* testsuite/deque/modifiers/push_front/49836.cc: Likewise.
2427	* testsuite/deque/modifiers/swap/1.cc: Likewise.
2428	* testsuite/deque/modifiers/swap/2.cc: Likewise.
2429	* testsuite/deque/modifiers/swap/3.cc: Likewise.
2430	* testsuite/deque/operators/1.cc: Likewise.
2431	* testsuite/deque/operators/2.cc: Likewise.
2432	* testsuite/forward_list/allocator/copy.cc: Likewise.
2433	* testsuite/forward_list/allocator/copy_assign.cc: Likewise.
2434	* testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
2435	* testsuite/forward_list/allocator/minimal.cc: Likewise.
2436	* testsuite/forward_list/allocator/move.cc: Likewise.
2437	* testsuite/forward_list/allocator/move_assign.cc: Likewise.
2438	* testsuite/forward_list/allocator/swap.cc: Likewise.
2439	* testsuite/forward_list/capacity/1.cc: Likewise.
2440	* testsuite/forward_list/capacity/resize_size.cc: Likewise.
2441	* testsuite/forward_list/comparable.cc: Likewise.
2442	* testsuite/forward_list/cons/1.cc: Likewise.
2443	* testsuite/forward_list/cons/2.cc: Likewise.
2444	* testsuite/forward_list/cons/3.cc: Likewise.
2445	* testsuite/forward_list/cons/4.cc: Likewise.
2446	* testsuite/forward_list/cons/5.cc: Likewise.
2447	* testsuite/forward_list/cons/6.cc: Likewise.
2448	* testsuite/forward_list/cons/7.cc: Likewise.
2449	* testsuite/forward_list/cons/8.cc: Likewise.
2450	* testsuite/forward_list/cons/9.cc: Likewise.
2451	* testsuite/forward_list/cons/cons_size.cc: Likewise.
2452	* testsuite/forward_list/cons/moveable.cc: Likewise.
2453	* testsuite/forward_list/debug/clear.cc: Likewise.
2454	* testsuite/forward_list/debug/construct4_neg.cc: Likewise.
2455	* testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
2456	* testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
2457	* testsuite/forward_list/debug/move_constructor.cc: Likewise.
2458	* testsuite/forward_list/debug/move_neg.cc: Likewise.
2459	* testsuite/forward_list/debug/splice_after.cc: Likewise.
2460	* testsuite/forward_list/debug/swap.cc: Likewise.
2461	* testsuite/forward_list/modifiers/1.cc: Likewise.
2462	* testsuite/forward_list/modifiers/2.cc: Likewise.
2463	* testsuite/forward_list/modifiers/3.cc: Likewise.
2464	* testsuite/forward_list/modifiers/4.cc: Likewise.
2465	* testsuite/forward_list/modifiers/5.cc: Likewise.
2466	* testsuite/forward_list/modifiers/6.cc: Likewise.
2467	* testsuite/forward_list/operations/1.cc: Likewise.
2468	* testsuite/forward_list/operations/2.cc: Likewise.
2469	* testsuite/forward_list/operations/3.cc: Likewise.
2470	* testsuite/forward_list/operations/4.cc: Likewise.
2471	* testsuite/forward_list/operations/5.cc: Likewise.
2472	* testsuite/forward_list/operations/6.cc: Likewise.
2473	* testsuite/forward_list/operations/7.cc: Likewise.
2474	* testsuite/forward_list/operations/remove_freed.cc: Likewise.
2475	* testsuite/list/61347.cc: Likewise.
2476	* testsuite/list/allocator/copy.cc: Likewise.
2477	* testsuite/list/allocator/copy_assign.cc: Likewise.
2478	* testsuite/list/allocator/minimal.cc: Likewise.
2479	* testsuite/list/allocator/move.cc: Likewise.
2480	* testsuite/list/allocator/move_assign.cc: Likewise.
2481	* testsuite/list/allocator/swap.cc: Likewise.
2482	* testsuite/list/capacity/1.h: Likewise.
2483	* testsuite/list/capacity/29134.cc: Likewise.
2484	* testsuite/list/capacity/resize_size.cc: Likewise.
2485	* testsuite/list/cons/1.h: Likewise.
2486	* testsuite/list/cons/2.h: Likewise.
2487	* testsuite/list/cons/3.h: Likewise.
2488	* testsuite/list/cons/4.h: Likewise.
2489	* testsuite/list/cons/5.h: Likewise.
2490	* testsuite/list/cons/6.h: Likewise.
2491	* testsuite/list/cons/7.h: Likewise.
2492	* testsuite/list/cons/8.h: Likewise.
2493	* testsuite/list/cons/9.h: Likewise.
2494	* testsuite/list/cons/cons_size.cc: Likewise.
2495	* testsuite/list/cons/moveable.h: Likewise.
2496	* testsuite/list/debug/invalidation/1.cc: Likewise.
2497	* testsuite/list/debug/invalidation/2.cc: Likewise.
2498	* testsuite/list/debug/invalidation/3.cc: Likewise.
2499	* testsuite/list/debug/invalidation/4.cc: Likewise.
2500	* testsuite/list/modifiers/1.h: Likewise.
2501	* testsuite/list/modifiers/2.h: Likewise.
2502	* testsuite/list/modifiers/3.h: Likewise.
2503	* testsuite/list/modifiers/insert/25288.h: Likewise.
2504	* testsuite/list/modifiers/swap/1.h: Likewise.
2505	* testsuite/list/modifiers/swap/2.h: Likewise.
2506	* testsuite/list/modifiers/swap/3.h: Likewise.
2507	* testsuite/list/operations/1.h: Likewise.
2508	* testsuite/list/operations/2.h: Likewise.
2509	* testsuite/list/operations/3.h: Likewise.
2510	* testsuite/list/operations/4.h: Likewise.
2511	* testsuite/list/operations/42352.cc: Likewise.
2512	* testsuite/map/allocator/copy.cc: Likewise.
2513	* testsuite/map/allocator/copy_assign.cc: Likewise.
2514	* testsuite/map/allocator/init-list.cc: Likewise.
2515	* testsuite/map/allocator/minimal.cc: Likewise.
2516	* testsuite/map/allocator/move.cc: Likewise.
2517	* testsuite/map/allocator/move_assign.cc: Likewise.
2518	* testsuite/map/allocator/swap.cc: Likewise.
2519	* testsuite/map/capacity/29134.cc: Likewise.
2520	* testsuite/map/cons/moveable.cc: Likewise.
2521	* testsuite/map/debug/construct5_neg.cc: Likewise.
2522	* testsuite/map/debug/move_assign_neg.cc: Likewise.
2523	* testsuite/map/debug/move_neg.cc: Likewise.
2524	* testsuite/map/element_access/1.cc: Likewise.
2525	* testsuite/map/element_access/2.cc: Likewise.
2526	* testsuite/map/element_access/39901.cc: Likewise.
2527	* testsuite/map/init-list.cc: Likewise.
2528	* testsuite/map/modifiers/dr130.cc: Likewise.
2529	* testsuite/map/modifiers/emplace/1.cc: Likewise.
2530	* testsuite/map/modifiers/extract.cc: Likewise.
2531	* testsuite/map/modifiers/insert/1.cc: Likewise.
2532	* testsuite/map/modifiers/insert/16813.cc: Likewise.
2533	* testsuite/map/modifiers/insert/2.cc: Likewise.
2534	* testsuite/map/modifiers/insert/3.cc: Likewise.
2535	* testsuite/map/modifiers/insert/4.cc: Likewise.
2536	* testsuite/map/modifiers/insert/5.cc: Likewise.
2537	* testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
2538	* testsuite/map/modifiers/merge.cc: Likewise.
2539	* testsuite/map/modifiers/swap/1.cc: Likewise.
2540	* testsuite/map/modifiers/swap/2.cc: Likewise.
2541	* testsuite/map/modifiers/swap/3.cc: Likewise.
2542	* testsuite/map/modifiers/try_emplace/1.cc: Likewise.
2543	* testsuite/map/operations/1.cc: Likewise.
2544	* testsuite/map/operations/count.cc: Likewise.
2545	* testsuite/map/operators/1_neg.cc: Likewise.
2546	* testsuite/map/operators/2.cc: Likewise.
2547	* testsuite/multimap/allocator/copy.cc: Likewise.
2548	* testsuite/multimap/allocator/copy_assign.cc: Likewise.
2549	* testsuite/multimap/allocator/init-list.cc: Likewise.
2550	* testsuite/multimap/allocator/minimal.cc: Likewise.
2551	* testsuite/multimap/allocator/move.cc: Likewise.
2552	* testsuite/multimap/allocator/move_assign.cc: Likewise.
2553	* testsuite/multimap/allocator/swap.cc: Likewise.
2554	* testsuite/multimap/capacity/29134.cc: Likewise.
2555	* testsuite/multimap/cons/moveable.cc: Likewise.
2556	* testsuite/multimap/debug/construct5_neg.cc: Likewise.
2557	* testsuite/multimap/debug/move_assign_neg.cc: Likewise.
2558	* testsuite/multimap/debug/move_neg.cc: Likewise.
2559	* testsuite/multimap/init-list.cc: Likewise.
2560	* testsuite/multimap/modifiers/dr130.cc: Likewise.
2561	* testsuite/multimap/modifiers/emplace/1.cc: Likewise.
2562	* testsuite/multimap/modifiers/extract.cc: Likewise.
2563	* testsuite/multimap/modifiers/insert/1.cc: Likewise.
2564	* testsuite/multimap/modifiers/insert/2.cc: Likewise.
2565	* testsuite/multimap/modifiers/insert/22102.cc: Likewise.
2566	* testsuite/multimap/modifiers/insert/3.cc: Likewise.
2567	* testsuite/multimap/modifiers/insert/4.cc: Likewise.
2568	* testsuite/multimap/modifiers/merge.cc: Likewise.
2569	* testsuite/multimap/modifiers/swap/1.cc: Likewise.
2570	* testsuite/multimap/modifiers/swap/2.cc: Likewise.
2571	* testsuite/multimap/modifiers/swap/3.cc: Likewise.
2572	* testsuite/multimap/operations/1.cc: Likewise.
2573	* testsuite/multimap/operations/count.cc: Likewise.
2574	* testsuite/multiset/allocator/copy.cc: Likewise.
2575	* testsuite/multiset/allocator/copy_assign.cc: Likewise.
2576	* testsuite/multiset/allocator/init-list.cc: Likewise.
2577	* testsuite/multiset/allocator/minimal.cc: Likewise.
2578	* testsuite/multiset/allocator/move.cc: Likewise.
2579	* testsuite/multiset/allocator/move_assign.cc: Likewise.
2580	* testsuite/multiset/allocator/swap.cc: Likewise.
2581	* testsuite/multiset/capacity/29134.cc: Likewise.
2582	* testsuite/multiset/cons/moveable.cc: Likewise.
2583	* testsuite/multiset/debug/construct5_neg.cc: Likewise.
2584	* testsuite/multiset/debug/invalidation/2.cc: Likewise.
2585	* testsuite/multiset/debug/move_assign_neg.cc: Likewise.
2586	* testsuite/multiset/debug/move_neg.cc: Likewise.
2587	* testsuite/multiset/init-list.cc: Likewise.
2588	* testsuite/multiset/modifiers/dr130.cc: Likewise.
2589	* testsuite/multiset/modifiers/emplace/1.cc: Likewise.
2590	* testsuite/multiset/modifiers/extract.cc: Likewise.
2591	* testsuite/multiset/modifiers/insert/1.cc: Likewise.
2592	* testsuite/multiset/modifiers/insert/2.cc: Likewise.
2593	* testsuite/multiset/modifiers/insert/22102.cc: Likewise.
2594	* testsuite/multiset/modifiers/insert/3.cc: Likewise.
2595	* testsuite/multiset/modifiers/insert/4.cc: Likewise.
2596	* testsuite/multiset/modifiers/merge.cc: Likewise.
2597	* testsuite/multiset/modifiers/swap/1.cc: Likewise.
2598	* testsuite/multiset/modifiers/swap/2.cc: Likewise.
2599	* testsuite/multiset/modifiers/swap/3.cc: Likewise.
2600	* testsuite/multiset/operations/1.cc: Likewise.
2601	* testsuite/multiset/operations/count.cc: Likewise.
2602	* testsuite/priority_queue/moveable.cc: Likewise.
2603	* testsuite/queue/moveable.cc: Likewise.
2604	* testsuite/set/allocator/copy.cc: Likewise.
2605	* testsuite/set/allocator/copy_assign.cc: Likewise.
2606	* testsuite/set/allocator/init-list.cc: Likewise.
2607	* testsuite/set/allocator/minimal.cc: Likewise.
2608	* testsuite/set/allocator/move.cc: Likewise.
2609	* testsuite/set/allocator/move_assign.cc: Likewise.
2610	* testsuite/set/allocator/swap.cc: Likewise.
2611	* testsuite/set/capacity/29134.cc: Likewise.
2612	* testsuite/set/cons/moveable.cc: Likewise.
2613	* testsuite/set/debug/construct5_neg.cc: Likewise.
2614	* testsuite/set/debug/invalidation/2.cc: Likewise.
2615	* testsuite/set/debug/move_assign_neg.cc: Likewise.
2616	* testsuite/set/debug/move_neg.cc: Likewise.
2617	* testsuite/set/init-list.cc: Likewise.
2618	* testsuite/set/modifiers/17948.cc: Likewise.
2619	* testsuite/set/modifiers/dr130.cc: Likewise.
2620	* testsuite/set/modifiers/emplace/1.cc: Likewise.
2621	* testsuite/set/modifiers/extract.cc: Likewise.
2622	* testsuite/set/modifiers/insert/1.cc: Likewise.
2623	* testsuite/set/modifiers/insert/2.cc: Likewise.
2624	* testsuite/set/modifiers/insert/3.cc: Likewise.
2625	* testsuite/set/modifiers/merge.cc: Likewise.
2626	* testsuite/set/modifiers/swap/1.cc: Likewise.
2627	* testsuite/set/modifiers/swap/2.cc: Likewise.
2628	* testsuite/set/modifiers/swap/3.cc: Likewise.
2629	* testsuite/set/operations/1.cc: Likewise.
2630	* testsuite/set/operations/count.cc: Likewise.
2631	* testsuite/set/operators/1_neg.cc: Likewise.
2632	* testsuite/unordered_map/allocator/copy.cc: Likewise.
2633	* testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
2634	* testsuite/unordered_map/allocator/minimal.cc: Likewise.
2635	* testsuite/unordered_map/allocator/move.cc: Likewise.
2636	* testsuite/unordered_map/allocator/move_assign.cc: Likewise.
2637	* testsuite/unordered_map/allocator/swap.cc: Likewise.
2638	* testsuite/unordered_map/cons/moveable.cc: Likewise.
2639	* testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
2640	* testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
2641	* testsuite/unordered_map/debug/move_neg.cc: Likewise.
2642	* testsuite/unordered_map/dr761.cc: Likewise.
2643	* testsuite/unordered_map/erase/1.cc: Likewise.
2644	* testsuite/unordered_map/erase/24061-map.cc: Likewise.
2645	* testsuite/unordered_map/erase/54276.cc: Likewise.
2646	* testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
2647	* testsuite/unordered_map/init-list.cc: Likewise.
2648	* testsuite/unordered_map/insert/24061-map.cc: Likewise.
2649	* testsuite/unordered_map/insert/57619.C: Likewise.
2650	* testsuite/unordered_map/insert/array_syntax.cc: Likewise.
2651	* testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
2652	* testsuite/unordered_map/insert/map_range.cc: Likewise.
2653	* testsuite/unordered_map/insert/map_single.cc: Likewise.
2654	* testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
2655	* testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
2656	* testsuite/unordered_map/modifiers/61667.cc: Likewise.
2657	* testsuite/unordered_map/modifiers/emplace.cc: Likewise.
2658	* testsuite/unordered_map/modifiers/extract.cc: Likewise.
2659	* testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
2660	* testsuite/unordered_map/modifiers/merge.cc: Likewise.
2661	* testsuite/unordered_map/modifiers/reserve.cc: Likewise.
2662	* testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
2663	* testsuite/unordered_map/operations/count.cc: Likewise.
2664	* testsuite/unordered_map/operators/1.cc: Likewise.
2665	* testsuite/unordered_map/operators/2.cc: Likewise.
2666	* testsuite/unordered_multimap/allocator/copy.cc: Likewise.
2667	* testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
2668	* testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
2669	* testsuite/unordered_multimap/allocator/move.cc: Likewise.
2670	* testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
2671	* testsuite/unordered_multimap/allocator/swap.cc: Likewise.
2672	* testsuite/unordered_multimap/cons/moveable.cc: Likewise.
2673	* testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
2674	* testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
2675	* testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
2676	* testsuite/unordered_multimap/erase/1.cc: Likewise.
2677	* testsuite/unordered_multimap/erase/2.cc: Likewise.
2678	* testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
2679	* testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
2680	* testsuite/unordered_multimap/erase/54276.cc: Likewise.
2681	* testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
2682	* testsuite/unordered_multimap/init-list.cc: Likewise.
2683	* testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
2684	* testsuite/unordered_multimap/insert/51866.cc: Likewise.
2685	* testsuite/unordered_multimap/insert/52476.cc: Likewise.
2686	* testsuite/unordered_multimap/insert/53115.cc: Likewise.
2687	* testsuite/unordered_multimap/insert/57619.C: Likewise.
2688	* testsuite/unordered_multimap/insert/hint.cc: Likewise.
2689	* testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
2690	* testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
2691	* testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
2692	Likewise.
2693	* testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
2694	Likewise.
2695	* testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
2696	* testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
2697	* testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
2698	* testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
2699	* testsuite/unordered_multimap/operations/count.cc: Likewise.
2700	* testsuite/unordered_multimap/operators/1.cc: Likewise.
2701	* testsuite/unordered_multimap/operators/2.cc: Likewise.
2702	* testsuite/unordered_multiset/allocator/copy.cc: Likewise.
2703	* testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
2704	* testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
2705	* testsuite/unordered_multiset/allocator/move.cc: Likewise.
2706	* testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
2707	* testsuite/unordered_multiset/allocator/swap.cc: Likewise.
2708	* testsuite/unordered_multiset/cons/copy.cc: Likewise.
2709	* testsuite/unordered_multiset/cons/moveable.cc: Likewise.
2710	* testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
2711	* testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
2712	* testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
2713	* testsuite/unordered_multiset/erase/1.cc: Likewise.
2714	* testsuite/unordered_multiset/erase/2.cc: Likewise.
2715	* testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
2716	* testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
2717	* testsuite/unordered_multiset/init-list.cc: Likewise.
2718	* testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
2719	* testsuite/unordered_multiset/insert/51866.cc: Likewise.
2720	* testsuite/unordered_multiset/insert/52476.cc: Likewise.
2721	* testsuite/unordered_multiset/insert/53115.cc: Likewise.
2722	* testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
2723	* testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
2724	* testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
2725	* testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
2726	* testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
2727	* testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
2728	* testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
2729	* testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
2730	* testsuite/unordered_multiset/operations/count.cc: Likewise.
2731	* testsuite/unordered_multiset/operators/1.cc: Likewise.
2732	* testsuite/unordered_set/allocator/copy.cc: Likewise.
2733	* testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
2734	* testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
2735	* testsuite/unordered_set/allocator/minimal.cc: Likewise.
2736	* testsuite/unordered_set/allocator/move.cc: Likewise.
2737	* testsuite/unordered_set/allocator/move_assign.cc: Likewise.
2738	* testsuite/unordered_set/allocator/swap.cc: Likewise.
2739	* testsuite/unordered_set/buckets/swap.cc: Likewise.
2740	* testsuite/unordered_set/cons/moveable.cc: Likewise.
2741	* testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
2742	* testsuite/unordered_set/debug/debug_functions.cc: Likewise.
2743	* testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
2744	* testsuite/unordered_set/debug/move_neg.cc: Likewise.
2745	* testsuite/unordered_set/erase/1.cc: Likewise.
2746	* testsuite/unordered_set/erase/24061-set.cc: Likewise.
2747	* testsuite/unordered_set/hash_policy/26132.cc: Likewise.
2748	* testsuite/unordered_set/hash_policy/71181.cc: Likewise.
2749	* testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
2750	* testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
2751	* testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
2752	* testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
2753	* testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
2754	* testsuite/unordered_set/init-list.cc: Likewise.
2755	* testsuite/unordered_set/insert/24061-set.cc: Likewise.
2756	* testsuite/unordered_set/insert/hash_policy.cc: Likewise.
2757	* testsuite/unordered_set/insert/move_range.cc: Likewise.
2758	* testsuite/unordered_set/insert/set_range.cc: Likewise.
2759	* testsuite/unordered_set/insert/set_single.cc: Likewise.
2760	* testsuite/unordered_set/insert/set_single_move.cc: Likewise.
2761	* testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
2762	* testsuite/unordered_set/modifiers/emplace.cc: Likewise.
2763	* testsuite/unordered_set/modifiers/extract.cc: Likewise.
2764	* testsuite/unordered_set/modifiers/merge.cc: Likewise.
2765	* testsuite/unordered_set/modifiers/reserve.cc: Likewise.
2766	* testsuite/unordered_set/modifiers/swap.cc: Likewise.
2767	* testsuite/unordered_set/operations/count.cc: Likewise.
2768	* testsuite/unordered_set/operators/1.cc: Likewise.
2769	* testsuite/vector/allocator/copy.cc: Likewise.
2770	* testsuite/vector/allocator/copy_assign.cc: Likewise.
2771	* testsuite/vector/allocator/ext_ptr.cc: Likewise.
2772	* testsuite/vector/allocator/minimal.cc: Likewise.
2773	* testsuite/vector/allocator/move.cc: Likewise.
2774	* testsuite/vector/allocator/move_assign.cc: Likewise.
2775	* testsuite/vector/allocator/swap.cc: Likewise.
2776	* testsuite/vector/bool/6886.cc: Likewise.
2777	* testsuite/vector/bool/72847.cc: Likewise.
2778	* testsuite/vector/bool/allocator/copy.cc: Likewise.
2779	* testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
2780	* testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
2781	* testsuite/vector/bool/allocator/move.cc: Likewise.
2782	* testsuite/vector/bool/allocator/move_assign.cc: Likewise.
2783	* testsuite/vector/bool/allocator/swap.cc: Likewise.
2784	* testsuite/vector/bool/capacity/1.cc: Likewise.
2785	* testsuite/vector/bool/capacity/29134.cc: Likewise.
2786	* testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
2787	* testsuite/vector/bool/cons/1.cc: Likewise.
2788	* testsuite/vector/bool/cons/2.cc: Likewise.
2789	* testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
2790	* testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
2791	* testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
2792	* testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
2793	* testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
2794	* testsuite/vector/bool/swap.cc: Likewise.
2795	* testsuite/vector/capacity/1.cc: Likewise.
2796	* testsuite/vector/capacity/2.cc: Likewise.
2797	* testsuite/vector/capacity/29134-2.cc: Likewise.
2798	* testsuite/vector/capacity/29134.cc: Likewise.
2799	* testsuite/vector/capacity/44190.cc: Likewise.
2800	* testsuite/vector/capacity/8230.cc: Likewise.
2801	* testsuite/vector/capacity/reserve/moveable.cc: Likewise.
2802	* testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
2803	* testsuite/vector/capacity/resize/1.cc: Likewise.
2804	* testsuite/vector/capacity/resize/moveable.cc: Likewise.
2805	* testsuite/vector/capacity/resize/moveable2.cc: Likewise.
2806	* testsuite/vector/capacity/resize/resize_size.cc: Likewise.
2807	* testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
2808	* testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
2809	* testsuite/vector/cons/3.cc: Likewise.
2810	* testsuite/vector/cons/4.cc: Likewise.
2811	* testsuite/vector/cons/cons_size.cc: Likewise.
2812	* testsuite/vector/cons/moveable.cc: Likewise.
2813	* testsuite/vector/data_access/1.cc: Likewise.
2814	* testsuite/vector/debug/debug_functions.cc: Likewise.
2815	* testsuite/vector/debug/move_assign_neg.cc: Likewise.
2816	* testsuite/vector/debug/move_neg.cc: Likewise.
2817	* testsuite/vector/debug/multithreaded_swap.cc: Likewise.
2818	* testsuite/vector/element_access/1.cc: Likewise.
2819	* testsuite/vector/ext_pointer/citerators.cc: Likewise.
2820	* testsuite/vector/ext_pointer/data_access.cc: Likewise.
2821	* testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
2822	* testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
2823	* testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
2824	* testsuite/vector/ext_pointer/resize.cc: Likewise.
2825	* testsuite/vector/modifiers/1.cc: Likewise.
2826	* testsuite/vector/modifiers/2.cc: Likewise.
2827	* testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
2828	* testsuite/vector/modifiers/erase/1.cc: Likewise.
2829	* testsuite/vector/modifiers/erase/moveable.cc: Likewise.
2830	* testsuite/vector/modifiers/insert/1.cc: Likewise.
2831	* testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
2832	* testsuite/vector/modifiers/moveable.cc: Likewise.
2833	* testsuite/vector/modifiers/moveable2.cc: Likewise.
2834	* testsuite/vector/modifiers/push_back/49836.cc: Likewise.
2835	* testsuite/vector/modifiers/swap/1.cc: Likewise.
2836	* testsuite/vector/modifiers/swap/2.cc: Likewise.
2837	* testsuite/vector/modifiers/swap/3.cc: Likewise.
2838	* testsuite/vector/zero_sized_allocations.cc: Likewise.
2839
28402016-10-17  Jonathan Wakely  <jwakely@redhat.com>
2841
2842	PR libstdc++/77998
2843	* include/std/future (__future_base::_Deferred_state)
2844	(__future_base::_Async_state_impl): Use decltype to deduce return
2845	type, instead of _Invoker::result_type.
2846	* include/std/thread (thread::_Invoker::operator()): Likewise.
2847	(thread::_Invoker::result_type): Remove.
2848
2849	PR libstdc++/77987
2850	* include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
2851	value to pointer of the correct type to swap, to support conversions
2852	allowed by LWG 2118 / N4089.
2853	* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
2854	incompatible deleters from ...
2855	* testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
2856	* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
2857	incompatible pointers to ...
2858	* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
2859	destructor definition to base class. Test for invalid derived-to-base
2860	conversion.
2861
2862	* doc/xml/manual/status_cxx2017.xml: Update status.
2863	* doc/html/*: Regenerate.
2864	* include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
2865	Return a reference in C++17 mode.
2866	* include/bits/forward_list.h (forward_list::emplace_front): Likewise.
2867	* include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
2868	* include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
2869	Likewise.
2870	* include/bits/stl_list.h (list::emplace_front, list::emplace_back):
2871	Likewise.
2872	* include/bits/stl_queue.h (queue::emplace): Likewise.
2873	* include/bits/stl_stack.h (stack::emplace): Likewise.
2874	* include/bits/stl_vector.h (vector::emplace_back): Likewise.
2875	* include/bits/vector.tcc (vector::emplace_back): Likewise.
2876	* include/debug/deque (__gnu_debug::deque::emplace_front)
2877	(__gnu_debug::deque::emplace_back): Likewise.
2878	* include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
2879	* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
2880	New.
2881	* testsuite/23_containers/forward_list/modifiers/
2882	emplace_cxx17_return.cc: New.
2883	* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
2884	* testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
2885	* testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
2886	* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
2887	* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
2888	New.
2889
28902016-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
2891
2892	* testsuite/22_locale/classification/isblank.cc: Remove 'test'
2893	variables.
2894	* testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
2895	* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
2896	* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
2897	* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
2898	* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
2899	* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
2900	* testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
2901	* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
2902	* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
2903	* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
2904	* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
2905	* testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
2906	* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
2907	* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
2908	* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
2909	* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
2910	* testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
2911	* testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
2912	* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
2913	* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
2914	* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
2915	* testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
2916	* testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
2917	* testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
2918	* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
2919	* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
2920	* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
2921	* testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
2922	* testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
2923	* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
2924	* testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
2925	* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
2926	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
2927	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
2928	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
2929	* testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
2930	* testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
2931	* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
2932	* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
2933	* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
2934	* testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
2935	* testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
2936	* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
2937	* testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
2938	* testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
2939	* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
2940	* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
2941	* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
2942	* testsuite/22_locale/collate/compare/char/1.cc: Likewise.
2943	* testsuite/22_locale/collate/compare/char/2.cc: Likewise.
2944	* testsuite/22_locale/collate/compare/char/3.cc: Likewise.
2945	* testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
2946	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
2947	* testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
2948	* testsuite/22_locale/collate/hash/char/1.cc: Likewise.
2949	* testsuite/22_locale/collate/hash/char/2.cc: Likewise.
2950	* testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
2951	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
2952	* testsuite/22_locale/collate/transform/char/2.cc: Likewise.
2953	* testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
2954	* testsuite/22_locale/collate/transform/char/3.cc: Likewise.
2955	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
2956	* testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
2957	* testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
2958	* testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
2959	* testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
2960	* testsuite/22_locale/ctype/is/char/1.cc: Likewise.
2961	* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
2962	* testsuite/22_locale/ctype/is/char/3.cc: Likewise.
2963	* testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
2964	* testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
2965	* testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
2966	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
2967	* testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
2968	* testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
2969	* testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
2970	* testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
2971	* testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
2972	* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
2973	* testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
2974	* testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
2975	* testsuite/22_locale/ctype/to/char/1.cc: Likewise.
2976	* testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
2977	* testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
2978	* testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
2979	* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
2980	* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
2981	* testsuite/22_locale/ctype_base/11844.cc: Likewise.
2982	* testsuite/22_locale/facet/1.cc: Likewise.
2983	* testsuite/22_locale/facet/2.cc: Likewise.
2984	* testsuite/22_locale/facet/25421.cc: Likewise.
2985	* testsuite/22_locale/global_templates/1.cc: Likewise.
2986	* testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
2987	Likewise.
2988	* testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
2989	Likewise.
2990	* testsuite/22_locale/locale/13630.cc: Likewise.
2991	* testsuite/22_locale/locale/cons/12352.cc: Likewise.
2992	* testsuite/22_locale/locale/cons/12438.cc: Likewise.
2993	* testsuite/22_locale/locale/cons/2.cc: Likewise.
2994	* testsuite/22_locale/locale/cons/29217.cc: Likewise.
2995	* testsuite/22_locale/locale/cons/38365.cc: Likewise.
2996	* testsuite/22_locale/locale/cons/38368.cc: Likewise.
2997	* testsuite/22_locale/locale/cons/4.cc: Likewise.
2998	* testsuite/22_locale/locale/cons/40184.cc: Likewise.
2999	* testsuite/22_locale/locale/cons/5.cc: Likewise.
3000	* testsuite/22_locale/locale/cons/6.cc: Likewise.
3001	* testsuite/22_locale/locale/cons/7.cc: Likewise.
3002	* testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
3003	* testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
3004	* testsuite/22_locale/locale/cons/8.cc: Likewise.
3005	* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
3006	* testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
3007	* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
3008	* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
3009	* testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
3010	* testsuite/22_locale/locale/operations/1.cc: Likewise.
3011	* testsuite/22_locale/locale/operations/2.cc: Likewise.
3012	* testsuite/22_locale/messages/13631.cc: Likewise.
3013	* testsuite/22_locale/messages/members/char/1.cc: Likewise.
3014	* testsuite/22_locale/messages/members/char/2.cc: Likewise.
3015	* testsuite/22_locale/messages/members/char/3.cc: Likewise.
3016	* testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
3017	* testsuite/22_locale/money_get/get/char/1.cc: Likewise.
3018	* testsuite/22_locale/money_get/get/char/10.cc: Likewise.
3019	* testsuite/22_locale/money_get/get/char/11.cc: Likewise.
3020	* testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
3021	* testsuite/22_locale/money_get/get/char/12.cc: Likewise.
3022	* testsuite/22_locale/money_get/get/char/13.cc: Likewise.
3023	* testsuite/22_locale/money_get/get/char/14.cc: Likewise.
3024	* testsuite/22_locale/money_get/get/char/15.cc: Likewise.
3025	* testsuite/22_locale/money_get/get/char/16.cc: Likewise.
3026	* testsuite/22_locale/money_get/get/char/17.cc: Likewise.
3027	* testsuite/22_locale/money_get/get/char/18.cc: Likewise.
3028	* testsuite/22_locale/money_get/get/char/19.cc: Likewise.
3029	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
3030	* testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
3031	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
3032	* testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
3033	* testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
3034	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
3035	* testsuite/22_locale/money_get/get/char/5.cc: Likewise.
3036	* testsuite/22_locale/money_get/get/char/6.cc: Likewise.
3037	* testsuite/22_locale/money_get/get/char/7.cc: Likewise.
3038	* testsuite/22_locale/money_get/get/char/8.cc: Likewise.
3039	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
3040	* testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
3041	* testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
3042	* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
3043	* testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
3044	* testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
3045	* testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
3046	* testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
3047	* testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
3048	* testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
3049	* testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
3050	* testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
3051	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
3052	* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
3053	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
3054	* testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
3055	* testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
3056	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
3057	* testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
3058	* testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
3059	* testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
3060	* testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
3061	* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
3062	* testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
3063	* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
3064	* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
3065	* testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
3066	* testsuite/22_locale/money_put/put/char/4.cc: Likewise.
3067	* testsuite/22_locale/money_put/put/char/5.cc: Likewise.
3068	* testsuite/22_locale/money_put/put/char/6.cc: Likewise.
3069	* testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
3070	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
3071	* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
3072	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
3073	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
3074	* testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
3075	* testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
3076	* testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
3077	* testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
3078	* testsuite/22_locale/moneypunct/40712.cc: Likewise.
3079	* testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
3080	* testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
3081	* testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
3082	* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
3083	* testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
3084	* testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
3085	* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
3086	* testsuite/22_locale/num_get/get/char/1.cc: Likewise.
3087	* testsuite/22_locale/num_get/get/char/10.cc: Likewise.
3088	* testsuite/22_locale/num_get/get/char/11.cc: Likewise.
3089	* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
3090	* testsuite/22_locale/num_get/get/char/13.cc: Likewise.
3091	* testsuite/22_locale/num_get/get/char/14.cc: Likewise.
3092	* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
3093	* testsuite/22_locale/num_get/get/char/16.cc: Likewise.
3094	* testsuite/22_locale/num_get/get/char/2.cc: Likewise.
3095	* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
3096	* testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
3097	* testsuite/22_locale/num_get/get/char/3.cc: Likewise.
3098	* testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
3099	* testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
3100	* testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
3101	* testsuite/22_locale/num_get/get/char/4.cc: Likewise.
3102	* testsuite/22_locale/num_get/get/char/5.cc: Likewise.
3103	* testsuite/22_locale/num_get/get/char/6.cc: Likewise.
3104	* testsuite/22_locale/num_get/get/char/7.cc: Likewise.
3105	* testsuite/22_locale/num_get/get/char/8.cc: Likewise.
3106	* testsuite/22_locale/num_get/get/char/9.cc: Likewise.
3107	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
3108	* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
3109	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
3110	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
3111	* testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
3112	* testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
3113	* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
3114	* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
3115	* testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
3116	* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
3117	* testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
3118	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
3119	* testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
3120	* testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
3121	* testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
3122	* testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
3123	* testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
3124	* testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
3125	* testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
3126	* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
3127	* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
3128	* testsuite/22_locale/num_put/put/char/1.cc: Likewise.
3129	* testsuite/22_locale/num_put/put/char/10.cc: Likewise.
3130	* testsuite/22_locale/num_put/put/char/11.cc: Likewise.
3131	* testsuite/22_locale/num_put/put/char/12.cc: Likewise.
3132	* testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
3133	* testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
3134	* testsuite/22_locale/num_put/put/char/2.cc: Likewise.
3135	* testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
3136	* testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
3137	* testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
3138	* testsuite/22_locale/num_put/put/char/3.cc: Likewise.
3139	* testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
3140	* testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
3141	* testsuite/22_locale/num_put/put/char/4.cc: Likewise.
3142	* testsuite/22_locale/num_put/put/char/5.cc: Likewise.
3143	* testsuite/22_locale/num_put/put/char/6.cc: Likewise.
3144	* testsuite/22_locale/num_put/put/char/7.cc: Likewise.
3145	* testsuite/22_locale/num_put/put/char/8.cc: Likewise.
3146	* testsuite/22_locale/num_put/put/char/9.cc: Likewise.
3147	* testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
3148	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3149	* testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
3150	* testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
3151	* testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
3152	* testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3153	* testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
3154	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
3155	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
3156	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
3157	* testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
3158	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
3159	* testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
3160	* testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
3161	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
3162	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
3163	* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
3164	* testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3165	* testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
3166	* testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
3167	* testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
3168	* testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
3169	* testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
3170	* testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
3171	* testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
3172	* testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
3173	* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
3174	* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
3175	* testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
3176	* testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
3177	* testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
3178	* testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
3179	* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
3180	* testsuite/22_locale/time_get/get/char/1.cc: Likewise.
3181	* testsuite/22_locale/time_get/get/char/2.cc: Likewise.
3182	* testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
3183	* testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
3184	* testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
3185	* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
3186	* testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
3187	* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
3188	* testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
3189	* testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
3190	* testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
3191	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
3192	* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
3193	* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
3194	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
3195	* testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
3196	* testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
3197	* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
3198	* testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
3199	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
3200	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
3201	* testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
3202	* testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
3203	* testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
3204	* testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
3205	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
3206	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
3207	* testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
3208	* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
3209	* testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
3210	* testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
3211	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
3212	* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
3213	* testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
3214	* testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
3215	* testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
3216	* testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
3217	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
3218	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
3219	* testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
3220	* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
3221	* testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
3222	* testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
3223	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
3224	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
3225	* testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
3226	* testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
3227	* testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3228	* testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
3229	* testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
3230	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
3231	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
3232	* testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
3233	* testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
3234	* testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
3235	* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
3236	* testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
3237	* testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
3238	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
3239	* testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
3240	* testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
3241	* testsuite/22_locale/time_put/put/char/1.cc: Likewise.
3242	* testsuite/22_locale/time_put/put/char/10.cc: Likewise.
3243	* testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
3244	* testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
3245	* testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
3246	* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
3247	* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
3248	* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
3249	* testsuite/22_locale/time_put/put/char/5.cc: Likewise.
3250	* testsuite/22_locale/time_put/put/char/6.cc: Likewise.
3251	* testsuite/22_locale/time_put/put/char/7.cc: Likewise.
3252	* testsuite/22_locale/time_put/put/char/8.cc: Likewise.
3253	* testsuite/22_locale/time_put/put/char/9.cc: Likewise.
3254	* testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
3255	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
3256	* testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
3257	* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3258	* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3259	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3260	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
3261	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
3262	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
3263	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3264	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
3265	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
3266	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
3267	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
3268	* testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
3269	* testsuite/30_threads/async/42819.cc: Likewise.
3270	* testsuite/30_threads/async/any.cc: Likewise.
3271	* testsuite/30_threads/async/async.cc: Likewise.
3272	* testsuite/30_threads/async/except.cc: Likewise.
3273	* testsuite/30_threads/async/launch.cc: Likewise.
3274	* testsuite/30_threads/async/sync.cc: Likewise.
3275	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
3276	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3277	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3278	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3279	* testsuite/30_threads/condition_variable/members/3.cc: Likewise.
3280	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3281	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3282	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3283	* testsuite/30_threads/future/members/45133.cc: Likewise.
3284	* testsuite/30_threads/future/members/get.cc: Likewise.
3285	* testsuite/30_threads/future/members/get2.cc: Likewise.
3286	* testsuite/30_threads/future/members/share.cc: Likewise.
3287	* testsuite/30_threads/future/members/valid.cc: Likewise.
3288	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
3289	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
3290	* testsuite/30_threads/lock/1.cc: Likewise.
3291	* testsuite/30_threads/lock/2.cc: Likewise.
3292	* testsuite/30_threads/lock/3.cc: Likewise.
3293	* testsuite/30_threads/lock/4.cc: Likewise.
3294	* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3295	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
3296	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3297	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
3298	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3299	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3300	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3301	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3302	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3303	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3304	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3305	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3306	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3307	* testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
3308	Likewise.
3309	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3310	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3311	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3312	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3313	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3314	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3315	* testsuite/30_threads/promise/cons/move.cc: Likewise.
3316	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3317	* testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
3318	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
3319	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
3320	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3321	* testsuite/30_threads/promise/members/swap.cc: Likewise.
3322	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3323	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3324	Likewise.
3325	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3326	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3327	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3328	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3329	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3330	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3331	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3332	Likewise.
3333	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3334	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3335	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3336	Likewise.
3337	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3338	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3339	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3340	Likewise.
3341	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3342	Likewise.
3343	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3344	Likewise.
3345	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3346	Likewise.
3347	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3348	Likewise.
3349	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3350	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3351	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
3352	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3353	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3354	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3355	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3356	* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
3357	* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
3358	* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
3359	* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
3360	* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
3361	* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
3362	* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
3363	* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
3364	* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
3365	* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
3366	* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
3367	* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
3368	* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
3369	* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
3370	* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
3371	* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
3372	* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
3373	* testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
3374	* testsuite/30_threads/this_thread/1.cc: Likewise.
3375	* testsuite/30_threads/this_thread/2.cc: Likewise.
3376	* testsuite/30_threads/this_thread/3.cc: Likewise.
3377	* testsuite/30_threads/this_thread/4.cc: Likewise.
3378	* testsuite/30_threads/this_thread/60421.cc: Likewise.
3379	* testsuite/30_threads/thread/cons/1.cc: Likewise.
3380	* testsuite/30_threads/thread/cons/2.cc: Likewise.
3381	* testsuite/30_threads/thread/cons/3.cc: Likewise.
3382	* testsuite/30_threads/thread/cons/4.cc: Likewise.
3383	* testsuite/30_threads/thread/cons/5.cc: Likewise.
3384	* testsuite/30_threads/thread/cons/6.cc: Likewise.
3385	* testsuite/30_threads/thread/cons/7.cc: Likewise.
3386	* testsuite/30_threads/thread/cons/8.cc: Likewise.
3387	* testsuite/30_threads/thread/cons/9.cc: Likewise.
3388	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3389	* testsuite/30_threads/thread/members/1.cc: Likewise.
3390	* testsuite/30_threads/thread/members/2.cc: Likewise.
3391	* testsuite/30_threads/thread/members/3.cc: Likewise.
3392	* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3393	* testsuite/30_threads/thread/swap/1.cc: Likewise.
3394	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3395	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3396	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3397	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3398	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3399	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3400	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3401	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3402	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3403	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3404	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3405	* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
3406	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3407	* testsuite/30_threads/try_lock/1.cc: Likewise.
3408	* testsuite/30_threads/try_lock/2.cc: Likewise.
3409	* testsuite/30_threads/try_lock/3.cc: Likewise.
3410	* testsuite/30_threads/try_lock/4.cc: Likewise.
3411	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3412	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3413	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3414	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3415	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3416	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3417	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3418	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3419	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3420	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3421	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3422	* testsuite/tr1/2_general_utilities/enable_shared_from_this/
3423	not_shared.cc: Likewise.
3424	* testsuite/tr1/2_general_utilities/enable_shared_from_this/
3425	not_shared2.cc: Likewise.
3426	* testsuite/tr1/2_general_utilities/enable_shared_from_this/
3427	not_shared3.cc: Likewise.
3428	* testsuite/tr1/2_general_utilities/enable_shared_from_this/
3429	shared.cc: Likewise.
3430	* testsuite/tr1/2_general_utilities/enable_shared_from_this/
3431	still_shared.cc: Likewise.
3432	* testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
3433	Likewise.
3434	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
3435	Likewise.
3436	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
3437	Likewise.
3438	* testsuite/tr1/2_general_utilities/shared_ptr/assign/
3439	auto_ptr_rvalue_neg.cc: Likewise.
3440	* testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
3441	Likewise.
3442	* testsuite/tr1/2_general_utilities/shared_ptr/assign/
3443	shared_ptr_neg.cc: Likewise.
3444	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
3445	Likewise.
3446	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
3447	Likewise.
3448	* testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
3449	* testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
3450	Likewise.
3451	* testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
3452	Likewise.
3453	* testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
3454	Likewise.
3455	* testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
3456	* testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
3457	* testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
3458	* testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
3459	* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
3460	Likewise.
3461	* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
3462	Likewise.
3463	* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
3464	Likewise.
3465	* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
3466	Likewise.
3467	* testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
3468	Likewise.
3469	* testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
3470	Likewise.
3471	* testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
3472	Likewise.
3473	* testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
3474	Likewise.
3475	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
3476	default_weaktoshared.cc: Likewise.
3477	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
3478	mutex_weaktoshared.cc: Likewise.
3479	* testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
3480	* testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
3481	* testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
3482	* testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
3483	* testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
3484	* testsuite/tr1/3_function_objects/function/1.cc: Likewise.
3485	* testsuite/tr1/3_function_objects/function/2.cc: Likewise.
3486	* testsuite/tr1/3_function_objects/function/3.cc: Likewise.
3487	* testsuite/tr1/3_function_objects/function/4.cc: Likewise.
3488	* testsuite/tr1/3_function_objects/function/5.cc: Likewise.
3489	* testsuite/tr1/3_function_objects/function/6.cc: Likewise.
3490	* testsuite/tr1/3_function_objects/function/7.cc: Likewise.
3491	* testsuite/tr1/3_function_objects/function/8.cc: Likewise.
3492	* testsuite/tr1/3_function_objects/function/9.cc: Likewise.
3493	* testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
3494	Likewise.
3495	* testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
3496	Likewise.
3497	* testsuite/tr1/3_function_objects/result_of.cc: Likewise.
3498	* testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
3499	* testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
3500	* testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
3501	* testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
3502	* testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
3503	* testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
3504	* testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
3505	* testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
3506	* testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
3507	* testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
3508	Likewise.
3509	* testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
3510	* testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
3511	* testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
3512	Likewise.
3513	* testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
3514	* testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
3515	Likewise.
3516	* testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
3517	Likewise.
3518	* testsuite/tr1/4_metaprogramming/integral_constant/
3519	static_definition.cc: Likewise.
3520	* testsuite/tr1/4_metaprogramming/integral_constant/
3521	true_false_value.cc: Likewise.
3522	* testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
3523	* testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
3524	* testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
3525	* testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
3526	* testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
3527	* testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
3528	* testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
3529	* testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
3530	* testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
3531	* testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
3532	* testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
3533	* testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
3534	* testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
3535	* testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
3536	* testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
3537	* testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
3538	* testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
3539	Likewise.
3540	* testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
3541	Likewise.
3542	* testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
3543	* testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
3544	* testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
3545	* testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
3546	* testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
3547	* testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
3548	* testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
3549	* testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
3550	* testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
3551	* testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
3552	* testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
3553	* testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
3554	* testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
3555	* testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
3556	* testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
3557	* testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
3558	* testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
3559	* testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
3560	* testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
3561	* testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
3562	* testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
3563	* testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
3564	* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3565	equal.cc: Likewise.
3566	* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3567	not_equal.cc: Likewise.
3568	* testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3569	serialize.cc: Likewise.
3570	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3571	cons/default.cc: Likewise.
3572	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3573	cons/gen1.cc: Likewise.
3574	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3575	operators/equal.cc: Likewise.
3576	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3577	operators/not_equal.cc: Likewise.
3578	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3579	operators/serialize.cc: Likewise.
3580	* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3581	cons/default.cc: Likewise.
3582	* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3583	cons/gen1.cc: Likewise.
3584	* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3585	operators/equal.cc: Likewise.
3586	* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3587	operators/not_equal.cc: Likewise.
3588	* testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3589	operators/serialize.cc: Likewise.
3590	* testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
3591	* testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
3592	* testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
3593	* testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3594	default.cc: Likewise.
3595	* testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3596	token.cc: Likewise.
3597	* testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
3598	* testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
3599	* testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
3600	* testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
3601	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3602	cons/default.cc: Likewise.
3603	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3604	cons/gen1.cc: Likewise.
3605	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3606	operators/equal.cc: Likewise.
3607	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3608	operators/not_equal.cc: Likewise.
3609	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3610	operators/serialize.cc: Likewise.
3611	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3612	cons/default.cc: Likewise.
3613	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3614	cons/gen1.cc: Likewise.
3615	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3616	operators/equal.cc: Likewise.
3617	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3618	operators/not_equal.cc: Likewise.
3619	* testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3620	operators/serialize.cc: Likewise.
3621	* testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
3622	Likewise.
3623	* testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3624	default.cc: Likewise.
3625	* testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3626	range.cc: Likewise.
3627	* testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
3628	default.cc: Likewise.
3629	* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3630	equal.cc: Likewise.
3631	* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3632	not_equal.cc: Likewise.
3633	* testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3634	serialize.cc: Likewise.
3635	* testsuite/tr1/5_numerical_facilities/special_functions/
3636	08_cyl_bessel_i/check_value.cc: Likewise.
3637	* testsuite/tr1/5_numerical_facilities/special_functions/
3638	08_cyl_bessel_i/pr56216.cc: Likewise.
3639	* testsuite/tr1/5_numerical_facilities/special_functions/
3640	09_cyl_bessel_j/check_value.cc: Likewise.
3641	* testsuite/tr1/5_numerical_facilities/special_functions/
3642	10_cyl_bessel_k/check_value.cc: Likewise.
3643	* testsuite/tr1/5_numerical_facilities/special_functions/
3644	11_cyl_neumann/check_value.cc: Likewise.
3645	* testsuite/tr1/5_numerical_facilities/special_functions/
3646	16_hermite/check_value.cc: Likewise.
3647	* testsuite/tr1/5_numerical_facilities/special_functions/
3648	21_sph_bessel/check_value.cc: Likewise.
3649	* testsuite/tr1/5_numerical_facilities/special_functions/
3650	23_sph_neumann/check_value.cc: Likewise.
3651	* testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
3652	* testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
3653	* testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
3654	* testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
3655	Likewise.
3656	* testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
3657	Likewise.
3658	* testsuite/tr1/6_containers/array/comparison_operators/
3659	greater_or_equal.cc: Likewise.
3660	* testsuite/tr1/6_containers/array/comparison_operators/less.cc:
3661	Likewise.
3662	* testsuite/tr1/6_containers/array/comparison_operators/
3663	less_or_equal.cc: Likewise.
3664	* testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
3665	Likewise.
3666	* testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
3667	Likewise.
3668	* testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
3669	* testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
3670	* testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
3671	* testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
3672	Likewise.
3673	* testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
3674	* testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
3675	* testsuite/tr1/6_containers/array/requirements/member_swap.cc:
3676	Likewise.
3677	* testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
3678	Likewise.
3679	* testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
3680	Likewise.
3681	* testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
3682	* testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
3683	Likewise.
3684	* testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
3685	Likewise.
3686	* testsuite/tr1/6_containers/hash/24799.cc: Likewise.
3687	* testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
3688	*
3689	testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
3690	Likewise.
3691	* testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
3692	* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
3693	* testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
3694	* testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
3695	Likewise.
3696	* testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
3697	Likewise.
3698	* testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
3699	* testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
3700	* testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
3701	* testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
3702	* testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
3703	* testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
3704	Likewise.
3705	* testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
3706	* testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
3707	* testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
3708	* testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
3709	Likewise.
3710	* testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
3711	Likewise.
3712	* testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
3713	Likewise.
3714	* testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
3715	Likewise.
3716	* testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
3717	* testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
3718	* testsuite/tr1/6_containers/unordered_multimap/capacity/
3719	29134-multimap.cc: Likewise.
3720	* testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
3721	* testsuite/tr1/6_containers/unordered_multimap/erase/
3722	24061-multimap.cc: Likewise.
3723	* testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
3724	Likewise.
3725	* testsuite/tr1/6_containers/unordered_multimap/insert/
3726	24061-multimap.cc: Likewise.
3727	* testsuite/tr1/6_containers/unordered_multimap/insert/
3728	multimap_range.cc: Likewise.
3729	* testsuite/tr1/6_containers/unordered_multimap/insert/
3730	multimap_single.cc: Likewise.
3731	* testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
3732	* testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
3733	* testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
3734	* testsuite/tr1/6_containers/unordered_multiset/capacity/
3735	29134-multiset.cc: Likewise.
3736	* testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
3737	* testsuite/tr1/6_containers/unordered_multiset/erase/
3738	24061-multiset.cc: Likewise.
3739	* testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
3740	Likewise.
3741	* testsuite/tr1/6_containers/unordered_multiset/insert/
3742	24061-multiset.cc: Likewise.
3743	* testsuite/tr1/6_containers/unordered_multiset/insert/
3744	multiset_range.cc: Likewise.
3745	* testsuite/tr1/6_containers/unordered_multiset/insert/
3746	multiset_single.cc: Likewise.
3747	* testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
3748	* testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
3749	* testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
3750	* testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
3751	* testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
3752	Likewise.
3753	* testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
3754	* testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
3755	* testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
3756	* testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
3757	Likewise.
3758	* testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
3759	Likewise.
3760	* testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
3761	Likewise.
3762	* testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
3763	* testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
3764	* testsuite/tr1/6_containers/utility/pair.cc: Likewise.
3765	* testsuite/tr1/7_regular_expressions/match_results/ctors/char/
3766	default.cc: Likewise.
3767	* testsuite/tr1/7_regular_expressions/regex_traits/char/
3768	translate_nocase.cc: Likewise.
3769	* testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
3770	Likewise.
3771	* testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
3772	translate_nocase.cc: Likewise.
3773	* testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
3774	Likewise.
3775	* testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
3776	* testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
3777
37782016-10-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
3779
3780	Make sure the return value of malloc_allocator::allocate
3781	is zero-initialized so that checking it for non-zero works
3782	later.
3783	* include/ext/malloc_allocator.h (malloc_allocator::allocate):
3784	Initialize the return value.
3785	* testsuite/ext/malloc_allocator/sanity.cc: New.
3786
37872016-10-14  Eelis van der Weegen  <eelis@eelis.net>
3788
3789	* include/bits/stl_algo.h (shuffle): Extract two random numbers from
3790	each generator invocation when its range is large enough.
3791
37922016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3793
3794	* testsuite/experimental/algorithm/sample.cc: Qualify calls to
3795	resolve ambiguity between std::sample and std::experimental::sample.
3796
3797	* include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
3798	Simplify forwarding from tuple of references.
3799	(_Maybe_wrap_member_pointer): Remove.
3800	(_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
3801	Use std::__invoke.
3802	(_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
3803	(_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
3804	return type deduction.
3805	(_Bind::operator(), _Bind::operator() const): Use new helpers.
3806	(_Bind::operator() volatile, _Bind::operator() const volatile):
3807	Likewise. Add deprecated attribute for C++17 mode.
3808	(_Bind_result::__call): Use std::__invoke.
3809	(_Bind_result::operator() volatile)
3810	(_Bind_result::operator() const volatile): Add deprecated attribute.
3811	(_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
3812	(_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
3813	(bind, bind<R>): Don't use __maybe_type.
3814	* src/c++11/compatibility-thread-c++0x.cc
3815	(_Maybe_wrap_member_pointer): Define here for compatibility symbols.
3816	* testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
3817	in C++17 mode.
3818	* testsuite/20_util/bind/cv_quals.cc: Likewise.
3819	* testsuite/20_util/bind/cv_quals_2.cc: Likewise.
3820
3821	* include/std/scoped_allocator (scoped_allocator_adaptor): Forward
3822	piecewise construction arguments as tuples of references, to avoid
3823	copies (related to LWG 2511).
3824	* testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
3825
38262016-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
3827
3828	* testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
3829	* testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
3830	* testsuite/26_numerics/complex/13450.cc: Likewise.
3831	* testsuite/26_numerics/complex/50880.cc: Likewise.
3832	* testsuite/26_numerics/complex/c99.cc: Likewise.
3833	* testsuite/26_numerics/complex/cons/48760.cc: Likewise.
3834	* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3835	* testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
3836	* testsuite/26_numerics/complex/dr844.cc: Likewise.
3837	* testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
3838	Likewise.
3839	* testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
3840	Likewise.
3841	* testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
3842	* testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
3843	* testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
3844	* testsuite/26_numerics/headers/cmath/
3845	c99_classification_macros_c++11.c: Likewise.c
3846	* testsuite/26_numerics/headers/cmath/
3847	c99_classification_macros_c++98.cc: Likewise.
3848	* testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
3849	* testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
3850	* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
3851	* testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
3852	* testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
3853	* testsuite/26_numerics/inner_product/1.cc: Likewise.
3854	* testsuite/26_numerics/iota/1.cc: Likewise.
3855	* testsuite/26_numerics/partial_sum/1.cc: Likewise.
3856	* testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
3857	Likewise.
3858	* testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
3859	Likewise.
3860	* testsuite/26_numerics/random/bernoulli_distribution/operators/
3861	equal.cc: Likewise.
3862	* testsuite/26_numerics/random/bernoulli_distribution/operators/
3863	inequal.cc: Likewise.
3864	* testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
3865	Likewise.
3866	* testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
3867	Likewise.
3868	* testsuite/26_numerics/random/binomial_distribution/operators/
3869	equal.cc: Likewise.
3870	* testsuite/26_numerics/random/binomial_distribution/operators/
3871	inequal.cc: Likewise.
3872	* testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
3873	Likewise.
3874	* testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
3875	Likewise.
3876	* testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
3877	Likewise.
3878	* testsuite/26_numerics/random/cauchy_distribution/operators/
3879	inequal.cc: Likewise.
3880	* testsuite/26_numerics/random/chi_squared_distribution/cons/
3881	default.cc: Likewise.
3882	* testsuite/26_numerics/random/chi_squared_distribution/cons/
3883	parms.cc: Likewise.
3884	* testsuite/26_numerics/random/chi_squared_distribution/operators/
3885	equal.cc: Likewise.
3886	* testsuite/26_numerics/random/chi_squared_distribution/operators/
3887	inequal.cc: Likewise.
3888	* testsuite/26_numerics/random/default_random_engine.cc: Likewise.
3889	* testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
3890	Likewise.
3891	* testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
3892	Likewise.
3893	* testsuite/26_numerics/random/discard_block_engine/operators/
3894	inequal.cc: Likewise.
3895	* testsuite/26_numerics/random/discard_block_engine/operators/
3896	serialize.cc: Likewise.
3897	* testsuite/26_numerics/random/discrete_distribution/cons/
3898	default.cc: Likewise.
3899	* testsuite/26_numerics/random/discrete_distribution/cons/
3900	initlist.cc: Likewise.
3901	* testsuite/26_numerics/random/discrete_distribution/cons/
3902	num_xbound_fun.cc: Likewise.
3903	* testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
3904	Likewise.
3905	* testsuite/26_numerics/random/discrete_distribution/operators/
3906	equal.cc: Likewise.
3907	* testsuite/26_numerics/random/discrete_distribution/operators/
3908	inequal.cc: Likewise.
3909	* testsuite/26_numerics/random/exponential_distribution/cons/
3910	default.cc: Likewise.
3911	* testsuite/26_numerics/random/exponential_distribution/cons/
3912	parms.cc: Likewise.
3913	* testsuite/26_numerics/random/exponential_distribution/operators/
3914	equal.cc: Likewise.
3915	* testsuite/26_numerics/random/exponential_distribution/operators/
3916	inequal.cc: Likewise.
3917	* testsuite/26_numerics/random/extreme_value_distribution/cons/
3918	default.cc: Likewise.
3919	* testsuite/26_numerics/random/extreme_value_distribution/cons/
3920	parms.cc: Likewise.
3921	* testsuite/26_numerics/random/extreme_value_distribution/operators/
3922	equal.cc: Likewise.
3923	* testsuite/26_numerics/random/extreme_value_distribution/operators/
3924	inequal.cc: Likewise.
3925	* testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
3926	Likewise.
3927	* testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
3928	Likewise.
3929	* testsuite/26_numerics/random/fisher_f_distribution/operators/
3930	equal.cc: Likewise.
3931	* testsuite/26_numerics/random/fisher_f_distribution/operators/
3932	inequal.cc: Likewise.
3933	* testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
3934	Likewise.
3935	* testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
3936	Likewise.
3937	* testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
3938	Likewise.
3939	* testsuite/26_numerics/random/gamma_distribution/operators/
3940	inequal.cc: Likewise.
3941	* testsuite/26_numerics/random/geometric_distribution/cons/
3942	default.cc: Likewise.
3943	* testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
3944	Likewise.
3945	* testsuite/26_numerics/random/geometric_distribution/operators/
3946	equal.cc: Likewise.
3947	* testsuite/26_numerics/random/geometric_distribution/operators/
3948	inequal.cc: Likewise.
3949	* testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
3950	Likewise.
3951	* testsuite/26_numerics/random/independent_bits_engine/operators/
3952	equal.cc: Likewise.
3953	* testsuite/26_numerics/random/independent_bits_engine/operators/
3954	inequal.cc: Likewise.
3955	* testsuite/26_numerics/random/independent_bits_engine/operators/
3956	serialize.cc: Likewise.
3957	* testsuite/26_numerics/random/knuth_b.cc: Likewise.
3958	* testsuite/26_numerics/random/linear_congruential_engine/cons/
3959	55215.cc: Likewise.
3960	* testsuite/26_numerics/random/linear_congruential_engine/cons/
3961	default.cc: Likewise.
3962	* testsuite/26_numerics/random/linear_congruential_engine/operators/
3963	51795.cc: Likewise.
3964	* testsuite/26_numerics/random/linear_congruential_engine/operators/
3965	equal.cc: Likewise.
3966	* testsuite/26_numerics/random/linear_congruential_engine/operators/
3967	inequal.cc: Likewise.
3968	* testsuite/26_numerics/random/linear_congruential_engine/operators/
3969	serialize.cc: Likewise.
3970	* testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
3971	Likewise.
3972	* testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
3973	Likewise.
3974	* testsuite/26_numerics/random/lognormal_distribution/operators/
3975	equal.cc: Likewise.
3976	* testsuite/26_numerics/random/lognormal_distribution/operators/
3977	inequal.cc: Likewise.
3978	* testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
3979	Likewise.
3980	* testsuite/26_numerics/random/mersenne_twister_engine/cons/
3981	default.cc: Likewise.
3982	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
3983	equal.cc: Likewise.
3984	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
3985	inequal.cc: Likewise.
3986	* testsuite/26_numerics/random/mersenne_twister_engine/operators/
3987	serialize.cc: Likewise.
3988	* testsuite/26_numerics/random/minstd_rand.cc: Likewise.
3989	* testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
3990	* testsuite/26_numerics/random/mt19937.cc: Likewise.
3991	* testsuite/26_numerics/random/mt19937_64.cc: Likewise.
3992	* testsuite/26_numerics/random/negative_binomial_distribution/cons/
3993	default.cc: Likewise.
3994	* testsuite/26_numerics/random/negative_binomial_distribution/cons/
3995	parms.cc: Likewise.
3996	* testsuite/26_numerics/random/negative_binomial_distribution/
3997	operators/equal.cc: Likewise.
3998	* testsuite/26_numerics/random/negative_binomial_distribution/
3999	operators/inequal.cc: Likewise.
4000	* testsuite/26_numerics/random/normal_distribution/cons/default.cc:
4001	Likewise.
4002	* testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
4003	Likewise.
4004	* testsuite/26_numerics/random/normal_distribution/operators/
4005	equal.cc: Likewise.
4006	* testsuite/26_numerics/random/normal_distribution/operators/
4007	inequal.cc: Likewise.
4008	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4009	default.cc: Likewise.
4010	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4011	initlist_fun.cc: Likewise.
4012	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4013	num_xbound_fun.cc: Likewise.
4014	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4015	range.cc: Likewise.
4016	* testsuite/26_numerics/random/piecewise_constant_distribution/
4017	operators/equal.cc: Likewise.
4018	* testsuite/26_numerics/random/piecewise_constant_distribution/
4019	operators/inequal.cc: Likewise.
4020	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4021	default.cc: Likewise.
4022	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4023	initlist_fun.cc: Likewise.
4024	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4025	num_xbound_fun.cc: Likewise.
4026	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4027	range.cc: Likewise.
4028	* testsuite/26_numerics/random/piecewise_linear_distribution/
4029	operators/equal.cc: Likewise.
4030	* testsuite/26_numerics/random/piecewise_linear_distribution/
4031	operators/inequal.cc: Likewise.
4032	* testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
4033	Likewise.
4034	* testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
4035	Likewise.
4036	* testsuite/26_numerics/random/poisson_distribution/operators/
4037	equal.cc: Likewise.
4038	* testsuite/26_numerics/random/poisson_distribution/operators/
4039	inequal.cc: Likewise.
4040	* testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
4041	* testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
4042	* testsuite/26_numerics/random/ranlux24.cc: Likewise.
4043	* testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
4044	* testsuite/26_numerics/random/ranlux48.cc: Likewise.
4045	* testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
4046	* testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
4047	* testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
4048	Likewise.
4049	* testsuite/26_numerics/random/shuffle_order_engine/operators/
4050	equal.cc: Likewise.
4051	* testsuite/26_numerics/random/shuffle_order_engine/operators/
4052	inequal.cc: Likewise.
4053	* testsuite/26_numerics/random/shuffle_order_engine/operators/
4054	serialize.cc: Likewise.
4055	* testsuite/26_numerics/random/student_t_distribution/cons/
4056	default.cc: Likewise.
4057	* testsuite/26_numerics/random/student_t_distribution/cons/
4058	parms.cc: Likewise.
4059	* testsuite/26_numerics/random/student_t_distribution/operators/
4060	equal.cc: Likewise.
4061	* testsuite/26_numerics/random/student_t_distribution/operators/
4062	inequal.cc: Likewise.
4063	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
4064	55215.cc: Likewise.
4065	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
4066	default.cc: Likewise.
4067	* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4068	equal.cc: Likewise.
4069	* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4070	inequal.cc: Likewise.
4071	* testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4072	serialize.cc: Likewise.
4073	* testsuite/26_numerics/random/uniform_int_distribution/cons/
4074	default.cc: Likewise.
4075	* testsuite/26_numerics/random/uniform_int_distribution/cons/
4076	parms.cc: Likewise.
4077	* testsuite/26_numerics/random/uniform_int_distribution/operators/
4078	equal.cc: Likewise.
4079	* testsuite/26_numerics/random/uniform_int_distribution/operators/
4080	inequal.cc: Likewise.
4081	* testsuite/26_numerics/random/uniform_real_distribution/cons/
4082	default.cc: Likewise.
4083	* testsuite/26_numerics/random/uniform_real_distribution/cons/
4084	parms.cc: Likewise.
4085	* testsuite/26_numerics/random/uniform_real_distribution/operators/
4086	equal.cc: Likewise.
4087	* testsuite/26_numerics/random/uniform_real_distribution/operators/
4088	inequal.cc: Likewise.
4089	* testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
4090	Likewise.
4091	* testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
4092	Likewise.
4093	* testsuite/26_numerics/random/weibull_distribution/operators/
4094	equal.cc: Likewise.
4095	* testsuite/26_numerics/random/weibull_distribution/operators/
4096	inequal.cc: Likewise.
4097	* testsuite/26_numerics/slice/1.cc: Likewise.
4098	* testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
4099	* testsuite/26_numerics/valarray/27867.cc: Likewise.
4100	* testsuite/26_numerics/valarray/28277.cc: Likewise.
4101	* testsuite/26_numerics/valarray/30416.cc: Likewise.
4102	* testsuite/26_numerics/valarray/dr543.cc: Likewise.
4103	* testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
4104	* testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
4105	* testsuite/26_numerics/valarray/dr630-3.C: Likewise.
4106	* testsuite/26_numerics/valarray/init-list.cc: Likewise.
4107	* testsuite/26_numerics/valarray/moveable.cc: Likewise.
4108	* testsuite/26_numerics/valarray/operators.cc: Likewise.
4109	* testsuite/26_numerics/valarray/swap.cc: Likewise.
4110	* testsuite/experimental/deque/erasure.cc: Likewise.
4111	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
4112	Likewise.
4113	* testsuite/experimental/filesystem/iterators/
4114	recursive_directory_iterator.cc: Likewise.
4115	* testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
4116	* testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
4117	* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
4118	* testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
4119	* testsuite/experimental/filesystem/operations/create_directories.cc:
4120	Likewise.
4121	* testsuite/experimental/filesystem/operations/create_directory.cc:
4122	Likewise.
4123	* testsuite/experimental/filesystem/operations/current_path.cc:
4124	Likewise.
4125	* testsuite/experimental/filesystem/operations/exists.cc: Likewise.
4126	* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
4127	* testsuite/experimental/filesystem/operations/last_write_time.cc:
4128	Likewise.
4129	* testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
4130	* testsuite/experimental/filesystem/operations/status.cc: Likewise.
4131	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
4132	Likewise.
4133	* testsuite/experimental/filesystem/path/native/string.cc: Likewise.
4134	* testsuite/experimental/forward_list/erasure.cc: Likewise.
4135	* testsuite/experimental/list/erasure.cc: Likewise.
4136	* testsuite/experimental/map/erasure.cc: Likewise.
4137	* testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
4138	* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
4139	Likewise.
4140	* testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
4141	* testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
4142	* testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
4143	* testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
4144	Likewise.
4145	* testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
4146	* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
4147	Likewise.
4148	* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
4149	Likewise.
4150	* testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
4151	Likewise.
4152	* testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
4153	* testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
4154	* testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
4155	* testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
4156	Likewise.
4157	* testsuite/experimental/memory/shared_ptr/observers/operators.cc:
4158	Likewise.
4159	* testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
4160	Likewise.
4161	* testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
4162	Likewise.
4163	* testsuite/experimental/memory_resource/1.cc: Likewise.
4164	* testsuite/experimental/memory_resource/null_memory_resource.cc:
4165	Likewise.
4166	* testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
4167	* testsuite/experimental/set/erasure.cc: Likewise.
4168	* testsuite/experimental/string/erasure.cc: Likewise.
4169	* testsuite/experimental/string_view/capacity/1.cc: Likewise.
4170	* testsuite/experimental/string_view/cons/char/1.cc: Likewise.
4171	* testsuite/experimental/string_view/cons/char/2.cc: Likewise.
4172	* testsuite/experimental/string_view/cons/char/3.cc: Likewise.
4173	* testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
4174	* testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
4175	* testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
4176	* testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
4177	* testsuite/experimental/string_view/element_access/char/empty.cc:
4178	Likewise.
4179	* testsuite/experimental/string_view/element_access/char/
4180	front_back.cc: Likewise.
4181	* testsuite/experimental/string_view/element_access/wchar_t/1.cc:
4182	Likewise.
4183	* testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
4184	Likewise.
4185	* testsuite/experimental/string_view/element_access/wchar_t/
4186	front_back.cc: Likewise.
4187	* testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
4188	* testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
4189	* testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
4190	* testsuite/experimental/string_view/inserters/pod/10081-out.cc:
4191	Likewise.
4192	* testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
4193	* testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
4194	* testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
4195	* testsuite/experimental/string_view/modifiers/remove_prefix/char/
4196	1.cc: Likewise.
4197	* testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
4198	1.cc: Likewise.
4199	* testsuite/experimental/string_view/modifiers/remove_suffix/char/
4200	1.cc: Likewise.
4201	* testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
4202	1.cc: Likewise.
4203	* testsuite/experimental/string_view/operations/compare/char/1.cc:
4204	Likewise.
4205	* testsuite/experimental/string_view/operations/compare/char/
4206	13650.cc: Likewise.
4207	* testsuite/experimental/string_view/operations/compare/wchar_t/
4208	1.cc: Likewise.
4209	* testsuite/experimental/string_view/operations/compare/wchar_t/
4210	13650.cc: Likewise.
4211	* testsuite/experimental/string_view/operations/copy/char/1.cc:
4212	Likewise.
4213	* testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
4214	Likewise.
4215	* testsuite/experimental/string_view/operations/data/char/1.cc:
4216	Likewise.
4217	* testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
4218	Likewise.
4219	* testsuite/experimental/string_view/operations/find/char/1.cc:
4220	Likewise.
4221	* testsuite/experimental/string_view/operations/find/char/2.cc:
4222	Likewise.
4223	* testsuite/experimental/string_view/operations/find/char/3.cc:
4224	Likewise.
4225	* testsuite/experimental/string_view/operations/find/char/4.cc:
4226	Likewise.
4227	* testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
4228	Likewise.
4229	* testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
4230	Likewise.
4231	* testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
4232	Likewise.
4233	* testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
4234	Likewise.
4235	* testsuite/experimental/string_view/operations/rfind/char/1.cc:
4236	Likewise.
4237	* testsuite/experimental/string_view/operations/rfind/char/2.cc:
4238	Likewise.
4239	* testsuite/experimental/string_view/operations/rfind/char/3.cc:
4240	Likewise.
4241	* testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
4242	Likewise.
4243	* testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
4244	Likewise.
4245	* testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
4246	Likewise.
4247	* testsuite/experimental/string_view/operations/substr/char/1.cc:
4248	Likewise.
4249	* testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
4250	Likewise.
4251	* testsuite/experimental/string_view/operations/to_string/1.cc:
4252	Likewise.
4253	* testsuite/experimental/string_view/operators/char/2.cc: Likewise.
4254	* testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
4255	* testsuite/experimental/unordered_map/erasure.cc: Likewise.
4256	* testsuite/experimental/unordered_set/erasure.cc: Likewise.
4257	* testsuite/experimental/vector/erasure.cc: Likewise.
4258	* testsuite/ext/array_allocator/1.cc: Likewise.
4259	* testsuite/ext/array_allocator/2.cc: Likewise.
4260	* testsuite/ext/array_allocator/3.cc: Likewise.
4261	* testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
4262	* testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
4263	* testsuite/ext/codecvt/1.cc: Likewise.
4264	* testsuite/ext/codecvt/char-1.cc: Likewise.
4265	* testsuite/ext/codecvt/char-2.cc: Likewise.
4266	* testsuite/ext/codecvt/wchar_t.cc: Likewise.
4267	* testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
4268	* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
4269	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
4270	* testsuite/ext/ext_pointer/1.cc: Likewise.
4271	* testsuite/ext/ext_pointer/1_neg.cc: Likewise.
4272	* testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
4273	* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
4274	* testsuite/ext/mt_allocator/tune-1.cc: Likewise.
4275	* testsuite/ext/mt_allocator/tune-2.cc: Likewise.
4276	* testsuite/ext/mt_allocator/tune-3.cc: Likewise.
4277	* testsuite/ext/mt_allocator/tune-4.cc: Likewise.
4278	* testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
4279	* testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
4280	* testsuite/ext/pod_char_traits.cc: Likewise.
4281	* testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
4282	* testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
4283	* testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
4284	* testsuite/ext/random/arcsine_distribution/operators/equal.cc:
4285	Likewise.
4286	* testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
4287	Likewise.
4288	* testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
4289	Likewise.
4290	* testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
4291	* testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
4292	* testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
4293	* testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
4294	* testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
4295	* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
4296	* testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
4297	* testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
4298	* testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
4299	Likewise.
4300	* testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
4301	Likewise.
4302	* testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
4303	Likewise.
4304	* testsuite/ext/random/hypergeometric_distribution/operators/
4305	equal.cc: Likewise.
4306	* testsuite/ext/random/hypergeometric_distribution/operators/
4307	inequal.cc: Likewise.
4308	* testsuite/ext/random/hypergeometric_distribution/operators/
4309	serialize.cc: Likewise.
4310	* testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
4311	* testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
4312	* testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
4313	* testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
4314	* testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
4315	* testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
4316	* testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
4317	* testsuite/ext/random/logistic_distribution/operators/equal.cc:
4318	Likewise.
4319	* testsuite/ext/random/logistic_distribution/operators/inequal.cc:
4320	Likewise.
4321	* testsuite/ext/random/logistic_distribution/operators/serialize.cc:
4322	Likewise.
4323	* testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
4324	* testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
4325	* testsuite/ext/random/nakagami_distribution/operators/equal.cc:
4326	Likewise.
4327	* testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
4328	Likewise.
4329	* testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
4330	Likewise.
4331	* testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
4332	* testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
4333	* testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
4334	Likewise.
4335	* testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
4336	Likewise.
4337	* testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
4338	* testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
4339	* testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
4340	* testsuite/ext/random/pareto_distribution/operators/inequal.cc:
4341	Likewise.
4342	* testsuite/ext/random/pareto_distribution/operators/serialize.cc:
4343	Likewise.
4344	* testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
4345	* testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
4346	* testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
4347	* testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
4348	* testsuite/ext/random/rice_distribution/operators/serialize.cc:
4349	Likewise.
4350	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
4351	default.cc: Likewise.
4352	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4353	equal.cc: Likewise.
4354	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4355	inequal.cc: Likewise.
4356	* testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4357	serialize.cc: Likewise.
4358	* testsuite/ext/random/triangular_distribution/cons/default.cc:
4359	Likewise.
4360	* testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
4361	* testsuite/ext/random/triangular_distribution/operators/equal.cc:
4362	Likewise.
4363	* testsuite/ext/random/triangular_distribution/operators/inequal.cc:
4364	Likewise.
4365	* testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
4366	Likewise.
4367	* testsuite/ext/random/uniform_on_sphere_distribution/operators/
4368	equal.cc: Likewise.
4369	* testsuite/ext/random/uniform_on_sphere_distribution/operators/
4370	generate.cc: Likewise.
4371	* testsuite/ext/random/uniform_on_sphere_distribution/operators/
4372	inequal.cc: Likewise.
4373	* testsuite/ext/random/uniform_on_sphere_distribution/operators/
4374	serialize.cc: Likewise.
4375	* testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
4376	* testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
4377	* testsuite/ext/random/von_mises_distribution/operators/equal.cc:
4378	Likewise.
4379	* testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
4380	Likewise.
4381	* testsuite/ext/rope/2.cc: Likewise.
4382	* testsuite/ext/rope/3.cc: Likewise.
4383	* testsuite/ext/rope/4.cc: Likewise.
4384	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
4385	* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
4386	* testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
4387	* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
4388	* testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
4389	* testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
4390	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
4391	* testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
4392	* testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
4393	* testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
4394	* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
4395	* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
4396	* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
4397	* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
4398	* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
4399	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
4400	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
4401	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
4402	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
4403	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
4404	* testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
4405	* testsuite/ext/type_traits/add_unsigned.cc: Likewise.
4406	* testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
4407	* testsuite/ext/vstring/capacity/29134.cc: Likewise.
4408	* testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
4409	* testsuite/ext/vstring/cons/58415-1.cc: Likewise.
4410	* testsuite/ext/vstring/cons/moveable.cc: Likewise.
4411	* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
4412	* testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
4413	* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
4414	* testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
4415	* testsuite/ext/vstring/hash/char/1.cc: Likewise.
4416	* testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4417	* testsuite/ext/vstring/init-list.cc: Likewise.
4418	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
4419	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
4420	* testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
4421	* testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
4422	* testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
4423	* testsuite/ext/vstring/operators/1.cc: Likewise.
4424	* testsuite/ext/vstring/operators/2.cc: Likewise.
4425
44262016-10-14  Jonathan Wakely  <jwakely@redhat.com>
4427
4428	PR libstdc++/65122
4429	* include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
4430	aligned_alloc for types with extended alignment if available,
4431	otherwise throw bad_alloc if malloc doesn't return a suitable value.
4432	* include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
4433	(bitmap_allocator::deallocate): Use aligned new/delete for types with
4434	extended alignment.
4435	* include/ext/mt_allocator.h (__mt_alloc::allocate)
4436	(__mt_alloc::deallocate): Likewise.
4437	* include/ext/new_allocator.h (new_allocator::allocate)
4438	(new_allocator::deallocate): Likewise.
4439	* include/ext/pool_allocator.h (__pool_alloc::allocate)
4440	(__pool_alloc::deallocate): Likewise.
4441	* testsuite/20_util/allocator/overaligned.cc: New test.
4442	* testsuite/ext/bitmap_allocator/overaligned.cc: New test.
4443	* testsuite/ext/malloc_allocator/overaligned.cc: New test.
4444	* testsuite/ext/mt_allocator/overaligned.cc: New test.
4445	* testsuite/ext/new_allocator/overaligned.cc: New test.
4446	* testsuite/ext/pool_allocator/overaligned.cc: New test.
4447
44482016-10-14  Tim Shen  <timshen@google.com>
4449
4450	PR libstdc++/77944
4451	* include/std/variant: Include <bits/funcexcept.h> for __try and
4452	__catch.
4453
44542016-10-14  Jonathan Wakely  <jwakely@redhat.com>
4455
4456	* include/std/functional (_Reference_wrapper_base_impl): Remove.
4457	(_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
4458	(_Reference_wrapper_base): Inherit from new helpers.
4459
44602016-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
4461
4462	* testsuite/24_iterators/container_access.cc: Remove 'test' variables.
4463	* testsuite/24_iterators/istream_iterator/2.cc: Likewise.
4464	* testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
4465	* testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
4466	* testsuite/24_iterators/operations/next.cc: Likewise.
4467	* testsuite/24_iterators/operations/prev.cc: Likewise.
4468	* testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
4469	* testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
4470	* testsuite/24_iterators/range_access_cpp14.cc: Likewise.
4471	* testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
4472	* testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
4473	* testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
4474	* testsuite/25_algorithms/all_of/1.cc: Likewise.
4475	* testsuite/25_algorithms/any_of/1.cc: Likewise.
4476	* testsuite/25_algorithms/binary_search/2.cc: Likewise.
4477	* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
4478	* testsuite/25_algorithms/clamp/1.cc: Likewise.
4479	* testsuite/25_algorithms/clamp/2.cc: Likewise.
4480	* testsuite/25_algorithms/copy/1.cc: Likewise.
4481	* testsuite/25_algorithms/copy/2.cc: Likewise.
4482	* testsuite/25_algorithms/copy/3.cc: Likewise.
4483	* testsuite/25_algorithms/copy/34595.cc: Likewise.
4484	* testsuite/25_algorithms/copy/4.cc: Likewise.
4485	* testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
4486	* testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
4487	* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
4488	* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
4489	* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
4490	* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
4491	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
4492	Likewise.
4493	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
4494	Likewise.
4495	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
4496	Likewise.
4497	* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
4498	Likewise.
4499	* testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
4500	* testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
4501	* testsuite/25_algorithms/copy_n/1.cc: Likewise.
4502	* testsuite/25_algorithms/copy_n/2.cc: Likewise.
4503	* testsuite/25_algorithms/copy_n/3.cc: Likewise.
4504	* testsuite/25_algorithms/copy_n/4.cc: Likewise.
4505	* testsuite/25_algorithms/copy_n/50119.cc: Likewise.
4506	* testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
4507	* testsuite/25_algorithms/equal_range/2.cc: Likewise.
4508	* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
4509	* testsuite/25_algorithms/fill/1.cc: Likewise.
4510	* testsuite/25_algorithms/fill/2.cc: Likewise.
4511	* testsuite/25_algorithms/fill/3.cc: Likewise.
4512	* testsuite/25_algorithms/fill/4.cc: Likewise.
4513	* testsuite/25_algorithms/fill_n/1.cc: Likewise.
4514	* testsuite/25_algorithms/find/39546.cc: Likewise.
4515	* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
4516	* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
4517	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
4518	Likewise.
4519	* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
4520	Likewise.
4521	* testsuite/25_algorithms/find_if/1.cc: Likewise.
4522	* testsuite/25_algorithms/find_if_not/1.cc: Likewise.
4523	* testsuite/25_algorithms/for_each/1.cc: Likewise.
4524	* testsuite/25_algorithms/heap/1.cc: Likewise.
4525	* testsuite/25_algorithms/heap/moveable.cc: Likewise.
4526	* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
4527	* testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
4528	* testsuite/25_algorithms/includes/1.cc: Likewise.
4529	* testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
4530	* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
4531	* testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
4532	* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
4533	* testsuite/25_algorithms/is_heap/1.cc: Likewise.
4534	* testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
4535	* testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
4536	* testsuite/25_algorithms/is_permutation/1.cc: Likewise.
4537	* testsuite/25_algorithms/is_permutation/2.cc: Likewise.
4538	* testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
4539	* testsuite/25_algorithms/is_sorted/1.cc: Likewise.
4540	* testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
4541	* testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
4542	* testsuite/25_algorithms/lower_bound/2.cc: Likewise.
4543	* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
4544	* testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
4545	* testsuite/25_algorithms/max/1.cc: Likewise.
4546	* testsuite/25_algorithms/max/2.cc: Likewise.
4547	* testsuite/25_algorithms/max/3.cc: Likewise.
4548	* testsuite/25_algorithms/max/37547.cc: Likewise.
4549	* testsuite/25_algorithms/max/4.cc: Likewise.
4550	* testsuite/25_algorithms/min/1.cc: Likewise.
4551	* testsuite/25_algorithms/min/2.cc: Likewise.
4552	* testsuite/25_algorithms/min/3.cc: Likewise.
4553	* testsuite/25_algorithms/min/37547.cc: Likewise.
4554	* testsuite/25_algorithms/min/4.cc: Likewise.
4555	* testsuite/25_algorithms/minmax/1.cc: Likewise.
4556	* testsuite/25_algorithms/minmax/2.cc: Likewise.
4557	* testsuite/25_algorithms/minmax/3.cc: Likewise.
4558	* testsuite/25_algorithms/minmax/37547.cc: Likewise.
4559	* testsuite/25_algorithms/minmax_element/1.cc: Likewise.
4560	* testsuite/25_algorithms/move/1.cc: Likewise.
4561	* testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
4562	* testsuite/25_algorithms/move_backward/1.cc: Likewise.
4563	* testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
4564	* testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
4565	* testsuite/25_algorithms/none_of/1.cc: Likewise.
4566	* testsuite/25_algorithms/nth_element/1.cc: Likewise.
4567	* testsuite/25_algorithms/nth_element/2.cc: Likewise.
4568	* testsuite/25_algorithms/nth_element/3.cc: Likewise.
4569	* testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
4570	* testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
4571	* testsuite/25_algorithms/partial_sort/2.cc: Likewise.
4572	* testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
4573	Likewise.
4574	* testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
4575	* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
4576	* testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
4577	* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
4578	* testsuite/25_algorithms/partition/1.cc: Likewise.
4579	* testsuite/25_algorithms/partition/moveable.cc: Likewise.
4580	* testsuite/25_algorithms/partition_copy/1.cc: Likewise.
4581	* testsuite/25_algorithms/partition_point/1.cc: Likewise.
4582	* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
4583	* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4584	* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
4585	* testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
4586	* testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
4587	* testsuite/25_algorithms/rotate/1.cc: Likewise.
4588	* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4589	* testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
4590	* testsuite/25_algorithms/rotate/rotate.cc: Likewise.
4591	* testsuite/25_algorithms/search/1.cc: Likewise.
4592	* testsuite/25_algorithms/search_n/58358.cc: Likewise.
4593	* testsuite/25_algorithms/shuffle/1.cc: Likewise.
4594	* testsuite/25_algorithms/sort/1.cc: Likewise.
4595	* testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
4596	* testsuite/25_algorithms/sort/moveable.cc: Likewise.
4597	* testsuite/25_algorithms/sort/random_test.cc: Likewise.
4598	* testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
4599	* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
4600	* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
4601	* testsuite/25_algorithms/stable_partition/1.cc: Likewise.
4602	* testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
4603	* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4604	* testsuite/25_algorithms/stable_sort/2.cc: Likewise.
4605	* testsuite/25_algorithms/stable_sort/3.cc: Likewise.
4606	* testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
4607	* testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4608	Likewise.
4609	* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
4610	* testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
4611	* testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
4612	* testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
4613	* testsuite/25_algorithms/unique/11480.cc: Likewise.
4614	* testsuite/25_algorithms/unique/2.cc: Likewise.
4615	* testsuite/25_algorithms/unique/moveable.cc: Likewise.
4616	* testsuite/25_algorithms/unique_copy/1.cc: Likewise.
4617	* testsuite/25_algorithms/unique_copy/2.cc: Likewise.
4618	* testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
4619	* testsuite/25_algorithms/upper_bound/2.cc: Likewise.
4620	* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
4621	* testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
4622	* testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
4623	Likewise.
4624	* testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
4625	Likewise.
4626	* testsuite/28_regex/algorithms/regex_match/basic/
4627	string_range_00_03.cc: Likewise.
4628	* testsuite/28_regex/algorithms/regex_match/basic/
4629	string_range_01_03.cc: Likewise.
4630	* testsuite/28_regex/algorithms/regex_match/basic/
4631	string_range_02_03.cc: Likewise.
4632	* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
4633	Likewise.
4634	* testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
4635	Likewise.
4636	* testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
4637	Likewise.
4638	* testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
4639	Likewise.
4640	* testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
4641	Likewise.
4642	* testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
4643	Likewise.
4644	* testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
4645	Likewise.
4646	* testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
4647	Likewise.
4648	* testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
4649	Likewise.
4650	* testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
4651	* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
4652	Likewise.
4653	* testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
4654	Likewise.
4655	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
4656	Likewise.
4657	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
4658	anymatcher.cc: Likewise.
4659	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
4660	Likewise.
4661	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
4662	Likewise.
4663	* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
4664	Likewise.
4665	* testsuite/28_regex/algorithms/regex_match/extended/
4666	cstring_questionmark.cc: Likewise.
4667	* testsuite/28_regex/algorithms/regex_match/extended/
4668	cstring_range.cc: Likewise.
4669	* testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
4670	Likewise.
4671	* testsuite/28_regex/algorithms/regex_match/extended/
4672	string_range_00_03.cc: Likewise.
4673	* testsuite/28_regex/algorithms/regex_match/extended/
4674	string_range_01_03.cc: Likewise.
4675	* testsuite/28_regex/algorithms/regex_match/extended/
4676	string_range_02_03.cc: Likewise.
4677	* testsuite/28_regex/algorithms/regex_match/extended/
4678	wstring_locale.cc: Likewise.
4679	* testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
4680	Likewise.
4681	* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
4682	* testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
4683	* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
4684	Likewise.
4685	* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
4686	Likewise.
4687	* testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
4688	* testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
4689	* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
4690	Likewise.
4691	* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
4692	* testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
4693	* testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
4694	* testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
4695	* testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
4696	* testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
4697	* testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
4698	* testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
4699	* testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
4700	* testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
4701	* testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
4702	* testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
4703	* testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
4704	* testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
4705	Likewise.
4706	* testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4707	Likewise.
4708	* testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
4709	* testsuite/28_regex/basic_regex/ctors/extended/
4710	string_range_01_02_03.cc: Likewise.
4711	* testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
4712	* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
4713	* testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
4714	* testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
4715	* testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
4716	* testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
4717	* testsuite/28_regex/constants/error_type.cc: Likewise.
4718	* testsuite/28_regex/constants/match_flag_type.cc: Likewise.
4719	* testsuite/28_regex/init-list.cc: Likewise.
4720	* testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
4721	* testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
4722	Likewise.
4723	* testsuite/28_regex/iterators/regex_iterator/char/
4724	string_position_01.cc
4725	* testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
4726	Likewise.
4727	* testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
4728	default.cc: Likewise.
4729	* testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
4730	* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
4731	Likewise.
4732	* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
4733	Likewise.
4734	* testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
4735	* testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
4736	Likewise.
4737	* testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
4738	default.cc: Likewise.
4739	* testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
4740	default.cc: Likewise.
4741	* testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
4742	Likewise.
4743	* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4744	string_01.cc: Likewise.
4745	* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4746	wstring_02.cc: Likewise.
4747	* testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
4748	* testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4749	* testsuite/28_regex/match_results/format.cc: Likewise.
4750	* testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
4751	* testsuite/28_regex/match_results/swap.cc: Likewise.
4752	* testsuite/28_regex/match_results/typedefs.cc: Likewise.
4753	* testsuite/28_regex/regex_error/regex_error.cc: Likewise.
4754	* testsuite/28_regex/regression.cc: Likewise.
4755	* testsuite/28_regex/sub_match/cast_char.cc: Likewise.
4756	* testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
4757	* testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
4758	* testsuite/28_regex/sub_match/length.cc: Likewise.
4759	* testsuite/28_regex/traits/char/ctor.cc: Likewise.
4760	* testsuite/28_regex/traits/char/isctype.cc: Likewise.
4761	* testsuite/28_regex/traits/char/length.cc: Likewise.
4762	* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
4763	* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
4764	* testsuite/28_regex/traits/char/transform.cc: Likewise.
4765	* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
4766	* testsuite/28_regex/traits/char/translate.cc: Likewise.
4767	* testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
4768	* testsuite/28_regex/traits/char/user_defined.cc: Likewise.
4769	* testsuite/28_regex/traits/char/value.cc: Likewise.
4770	* testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
4771	* testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
4772	* testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
4773	* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
4774	* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
4775	* testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
4776	* testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
4777	* testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
4778	* testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
4779	* testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
4780	* testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
4781	* testsuite/29_atomics/atomic/60658.cc: Likewise.
4782	* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
4783	* testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
4784	* testsuite/backward/11460.cc: Likewise.
4785	* testsuite/backward/hash_map/1.cc: Likewise.
4786	* testsuite/backward/hash_map/25896.cc: Likewise.
4787	* testsuite/backward/hash_set/1.cc: Likewise.
4788	* testsuite/backward/hash_set/25896.cc: Likewise.
4789	* testsuite/decimal/binary-arith.cc: Likewise.
4790	* testsuite/decimal/comparison.cc: Likewise.
4791	* testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
4792	* testsuite/decimal/compound-assignment.cc: Likewise.
4793	* testsuite/decimal/conversion-from-float.cc: Likewise.
4794	* testsuite/decimal/conversion-from-integral.cc: Likewise.
4795	* testsuite/decimal/conversion-to-generic-float.cc: Likewise.
4796	* testsuite/decimal/conversion-to-integral.cc: Likewise.
4797	* testsuite/decimal/ctor.cc: Likewise.
4798	* testsuite/decimal/incdec-memfunc.cc: Likewise.
4799	* testsuite/decimal/incdec.cc: Likewise.
4800	* testsuite/decimal/make-decimal.cc: Likewise.
4801	* testsuite/decimal/pr54036-1.cc: Likewise.
4802	* testsuite/decimal/pr54036-2.cc: Likewise.
4803	* testsuite/decimal/pr54036-3.cc: Likewise.
4804	* testsuite/decimal/unary-arith.cc: Likewise.
4805	* testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
4806	* testsuite/special_functions/01_assoc_laguerre/check_value.cc:
4807	Likewise.
4808	* testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
4809	* testsuite/special_functions/02_assoc_legendre/check_value.cc:
4810	Likewise.
4811	* testsuite/special_functions/03_beta/check_nan.cc: Likewise.
4812	* testsuite/special_functions/03_beta/check_value.cc: Likewise.
4813	* testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
4814	* testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
4815	* testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
4816	* testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
4817	* testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
4818	* testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
4819	* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
4820	* testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
4821	* testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
4822	* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
4823	* testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
4824	* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
4825	* testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
4826	* testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
4827	* testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
4828	* testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
4829	* testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
4830	* testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
4831	* testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
4832	* testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
4833	* testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
4834	* testsuite/special_functions/14_expint/check_nan.cc: Likewise.
4835	* testsuite/special_functions/14_expint/check_value.cc: Likewise.
4836	* testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
4837	* testsuite/special_functions/15_hermite/check_value.cc: Likewise.
4838	* testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
4839	* testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
4840	* testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
4841	* testsuite/special_functions/17_legendre/check_value.cc: Likewise.
4842	* testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
4843	* testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
4844	* testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
4845	* testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
4846	* testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
4847	* testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
4848	* testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
4849	* testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
4850	* testsuite/tr2/bases/value.cc: Likewise.
4851	* testsuite/tr2/direct_bases/value.cc: Likewise.
4852	* testsuite/util/debug/checks.h: Likewise.
4853	* testsuite/util/debug/unordered_checks.h: Likewise.
4854	* testsuite/util/testsuite_allocator.h: Likewise.
4855	* testsuite/util/testsuite_api.h: Likewise.
4856	* testsuite/util/testsuite_common_types.h: Likewise.
4857	* testsuite/util/testsuite_random.h: Likewise.
4858	* testsuite/util/testsuite_rvalref.h: Likewise.
4859
48602016-10-13  Jonathan Wakely  <jwakely@redhat.com>
4861
4862	* include/bits/shared_ptr_base.h: Include <functional>.
4863	[!__cpp_rtti]: Do not include <typeinfo>.
4864	* include/experimental/array: Do not include <functional>.
4865	* include/experimental/memory: Include <bits/functional_hash.h>
4866	instead of <functional>.
4867	* include/experimental/propagate_const: Include <bits/stl_function.h>,
4868	<bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
4869	* include/experimental/tuple: Do not include <functional>.
4870	* include/std/future: Include <functional>.
4871	* include/std/memory: Do not include <functional>.
4872	* include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
4873	* src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
4874	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
4875	missing includes.
4876	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4877	* testsuite/20_util/specialized_algorithms/memory_management_tools/
4878	1.cc: Likewise.
4879	* testsuite/30_threads/call_once/60497.cc: Likewise.
4880	* testsuite/30_threads/lock/2.cc: Likewise.
4881	* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
4882	* testsuite/experimental/algorithm/sample.cc: Likewise.
4883	* testsuite/experimental/array/make_array.cc: Likewise.
4884	* testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
4885	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
4886	Adjust dg-error lines.
4887	* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
4888	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
4889	* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
4890	* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
4891	* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
4892
4893	* testsuite/experimental/algorithm/sample.cc: Add missing header.
4894
4895	* include/experimental/propagate_const (element_type): Qualify
4896	declval.
4897
4898	* testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
4899	instead of assert.
4900
4901	* include/experiumental/functional (boyer_moore_searcher)
4902	(__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
4903	with _GLIBCXX_STD_C.
4904	* include/std/functional: Likewise.
4905
4906	* include/std/chrono (floor): Replace non-constexpr operation.
4907	* testsuite/20_util/duration_cast/rounding.cc: Test conversion to
4908	durations with floating pointer representations.
4909
4910	* src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
4911	(_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
4912
4913	* include/std/functional (_Bind_simple, _Bind_simple_helper)
4914	(__bind_simple): Remove.
4915	* include/std/future: Include <bits/invoke.h> instead of <functional>.
4916	(__future_base::_Task_state::_M_run)
4917	(__future_base::_Task_state::_M_run_delayed): Use lambda expressions
4918	instead of __bind_simple.
4919	(__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
4920	(async): Use thread::__make_invoker instead of __bind_simple.
4921	* include/std/thread: Include <tuple> and <bits/invoke.h> instead of
4922	<functional>.
4923	(thread::_Invoker, thread::__make_invoker): Define helpers to do
4924	INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
4925
4926	* include/std/functional (_Not_fn): Make exception specifications
4927	depend on whether negating the result can throw.
4928	* testsuite/20_util/not_fn/1.cc: Move to ...
4929	* testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
4930	for types that can throw when negated and that cannot be negated.
4931
4932	* include/bits/invoke.h (__invoke): Fix exception-specification.
4933	* include/std/functional (invoke): Likewise.
4934	* testsuite/20_util/function_objects/invoke/1.cc: New test.
4935
49362016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
4937
4938	* testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
4939	__builtin_printf and __builtin_abort.
4940	* testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
4941	* scripts/testsuite_flags.in: Likewise.
4942	* testsuite/22_locale/time_get/get/char/1.cc: Likewise.
4943	* testsuite/22_locale/time_get/get/char/2.cc: Likewise.
4944	* testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
4945	* testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
4946	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
4947	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
4948	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
4949	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
4950	* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
4951	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
4952	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
4953	Likewise.
4954	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
4955	Likewise.
4956	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
4957	Likewise.
4958	* testsuite/27_io/objects/char/7.cc: Likewise.
4959	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
4960	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
4961	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
4962	* testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
4963	* testsuite/18_support/bad_alloc/what.cc: Likewise.
4964	* testsuite/18_support/bad_cast/what.cc: Likewise.
4965	* testsuite/18_support/bad_exception/what.cc: Likewise.
4966	* testsuite/18_support/bad_typeid/what.cc: Likewise.
4967	* testsuite/18_support/exception/38732.cc: Likewise.
4968	* testsuite/18_support/exception/what.cc: Likewise.
4969	* testsuite/18_support/exception_ptr/64241.cc: Likewise.
4970	* testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
4971	* testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
4972	* testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
4973	* testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
4974	* testsuite/18_support/nested_exception/cons.cc: Likewise.
4975	* testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
4976	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
4977	* testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
4978	* testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
4979	* testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
4980	* testsuite/18_support/numeric_limits/digits10.cc: Likewise.
4981	* testsuite/18_support/numeric_limits/dr559.cc: Likewise.
4982	* testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
4983	* testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
4984	* testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
4985	* testsuite/18_support/numeric_limits/lowest.cc: Likewise.
4986	* testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
4987	* testsuite/18_support/numeric_limits/min_max.cc: Likewise.
4988	* testsuite/18_support/numeric_limits/specialization_default_values.cc:
4989	Likewise.
4990	* testsuite/18_support/type_info/hash_code.cc: Likewise.
4991	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
4992	* testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
4993	* testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
4994	* testsuite/19_diagnostics/error_category/operators/
4995	not_equal.cc: Likewise.
4996	* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
4997	* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
4998	* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
4999	* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
5000	* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
5001	* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
5002	* testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
5003	* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
5004	* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
5005	Likewise.
5006	* testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
5007	* testsuite/19_diagnostics/error_condition/operators/equal.cc:
5008	Likewise.
5009	* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
5010	Likewise.
5011	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
5012	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
5013	* testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
5014	* testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
5015	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
5016	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
5017	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
5018	* testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
5019	* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
5020	* testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
5021	* testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
5022	* testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
5023	* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
5024	* testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
5025	* testsuite/20_util/addressof/1.cc: Likewise.
5026	* testsuite/20_util/align/1.cc: Likewise.
5027	* testsuite/20_util/align/2.cc: Likewise.
5028	* testsuite/20_util/allocator/1.cc: Likewise.
5029	* testsuite/20_util/allocator/10378.cc: Likewise.
5030	* testsuite/20_util/allocator/8230.cc: Likewise.
5031	* testsuite/20_util/allocator_traits/members/allocate_hint.cc:
5032	Likewise.
5033	* testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
5034	* testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
5035	* testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
5036	* testsuite/20_util/any/assign/exception.cc: Likewise.
5037	* testsuite/20_util/auto_ptr/1.cc: Likewise.
5038	* testsuite/20_util/auto_ptr/2.cc: Likewise.
5039	* testsuite/20_util/auto_ptr/3.cc: Likewise.
5040	* testsuite/20_util/auto_ptr/4.cc: Likewise.
5041	* testsuite/20_util/auto_ptr/5.cc: Likewise.
5042	* testsuite/20_util/auto_ptr/6.cc: Likewise.
5043	* testsuite/20_util/auto_ptr/7.cc: Likewise.
5044	* testsuite/20_util/bind/all_bound.cc: Likewise.
5045	* testsuite/20_util/bind/conv_result.cc: Likewise.
5046	* testsuite/20_util/bind/cv_quals.cc: Likewise.
5047	* testsuite/20_util/bind/cv_quals_2.cc
5048	* testsuite/20_util/bind/nested.cc: Likewise.
5049	* testsuite/20_util/bind/placeholders.cc: Likewise.
5050	* testsuite/20_util/bind/ref.cc: Likewise.
5051	* testsuite/20_util/bind/ref2.cc: Likewise.
5052	* testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
5053	* testsuite/20_util/duration/arithmetic/1.cc: Likewise.
5054	* testsuite/20_util/duration/arithmetic/2.cc: Likewise.
5055	* testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
5056	* testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
5057	* testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
5058	* testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
5059	* testsuite/20_util/duration/cons/1.cc: Likewise.
5060	* testsuite/20_util/duration/cons/2.cc: Likewise.
5061	* testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
5062	* testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
5063	* testsuite/20_util/enable_shared_from_this/members/assign.cc:
5064	Likewise.
5065	* testsuite/20_util/exchange/1.cc: Likewise.
5066	* testsuite/20_util/forward/a.cc: Likewise.
5067	* testsuite/20_util/forward/b.cc: Likewise.
5068	* testsuite/20_util/forward/d.cc: Likewise.
5069	* testsuite/20_util/function/1.cc: Likewise.
5070	* testsuite/20_util/function/2.cc: Likewise.
5071	* testsuite/20_util/function/3.cc: Likewise.
5072	* testsuite/20_util/function/4.cc: Likewise.
5073	* testsuite/20_util/function/43397.cc: Likewise.
5074	* testsuite/20_util/function/5.cc: Likewise.
5075	* testsuite/20_util/function/6.cc: Likewise.
5076	* testsuite/20_util/function/7.cc: Likewise.
5077	* testsuite/20_util/function/8.cc: Likewise.
5078	* testsuite/20_util/function/9.cc: Likewise.
5079	* testsuite/20_util/function/assign/move.cc: Likewise.
5080	* testsuite/20_util/function/cons/move.cc: Likewise.
5081	* testsuite/20_util/function_objects/dr660.cc: Likewise.
5082	* testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
5083	* testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
5084	* testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
5085	* testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
5086	* testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
5087	* testsuite/20_util/hash/operators/size_t.cc: Likewise.
5088	* testsuite/20_util/hash/quality.cc: Likewise.
5089	* testsuite/20_util/integral_constant/static_definition.cc: Likewise.
5090	* testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
5091	* testsuite/20_util/is_function/24808.cc: Likewise.
5092	* testsuite/20_util/is_object/24808.cc: Likewise.
5093	* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
5094	* testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
5095	* testsuite/20_util/owner_less/cmp.cc: Likewise.
5096	* testsuite/20_util/pair/1.cc: Likewise.
5097	* testsuite/20_util/pair/2.cc: Likewise.
5098	* testsuite/20_util/pair/3.cc: Likewise.
5099	* testsuite/20_util/pair/4.cc: Likewise.
5100	* testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
5101	* testsuite/20_util/pair/moveable.cc: Likewise.
5102	* testsuite/20_util/pair/piecewise.cc: Likewise.
5103	* testsuite/20_util/pair/swap.cc: Likewise.
5104	* testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
5105	* testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
5106	* testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
5107	* testsuite/20_util/ratio/cons/cons1.cc: Likewise.
5108	* testsuite/20_util/ratio/operations/45866.cc: Likewise.
5109	* testsuite/20_util/ratio/operations/47913.cc: Likewise.
5110	* testsuite/20_util/ratio/operations/ops1.cc: Likewise.
5111	* testsuite/20_util/ratio/operations/ops2.cc: Likewise.
5112	* testsuite/20_util/ratio/operations/ops3.cc: Likewise.
5113	* testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
5114	* testsuite/20_util/scoped_allocator/1.cc: Likewise.
5115	* testsuite/20_util/scoped_allocator/2.cc: Likewise.
5116	* testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
5117	* testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
5118	* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
5119	* testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
5120	* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
5121	* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
5122	Likewise.
5123	* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
5124	* testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
5125	* testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
5126	* testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
5127	* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
5128	* testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
5129	* testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
5130	* testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
5131	* testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
5132	* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
5133	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
5134	* testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
5135	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
5136	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
5137	Likewise.
5138	* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
5139	Likewise.
5140	* testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
5141	* testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
5142	* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
5143	* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
5144	* testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
5145	* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
5146	* testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
5147	* testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
5148	* testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
5149	* testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
5150	* testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
5151	* testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
5152	* testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
5153	* testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
5154	* testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
5155	* testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
5156	* testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
5157	* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
5158	* testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
5159	* testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
5160	* testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
5161	* testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
5162	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
5163	Likewise.
5164	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5165	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
5166	move_iterators/1.cc: Likewise.
5167	* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
5168	move_iterators/1.cc: Likewise.
5169	* testsuite/20_util/temporary_buffer.cc: Likewise.
5170	* testsuite/20_util/time_point/1.cc: Likewise.
5171	* testsuite/20_util/time_point/2.cc: Likewise.
5172	* testsuite/20_util/time_point/3.cc: Likewise.
5173	* testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
5174	* testsuite/20_util/tuple/48476.cc: Likewise.
5175	* testsuite/20_util/tuple/comparison_operators/comparisons.cc:
5176	Likewise.
5177	* testsuite/20_util/tuple/cons/allocators.cc: Likewise.
5178	* testsuite/20_util/tuple/cons/assignment.cc: Likewise.
5179	* testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
5180	* testsuite/20_util/tuple/cons/constructor.cc: Likewise.
5181	* testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
5182	* testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
5183	* testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
5184	* testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
5185	Likewise.
5186	* testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
5187	* testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
5188	* testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
5189	* testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
5190	* testsuite/20_util/tuple/element_access/get.cc: Likewise.
5191	* testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
5192	* testsuite/20_util/tuple/moveable.cc: Likewise.
5193	* testsuite/20_util/tuple/swap.cc: Likewise.
5194	* testsuite/20_util/tuple/tuple_size.cc: Likewise.
5195	* testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
5196	* testsuite/20_util/typeindex/hash.cc: Likewise.
5197	* testsuite/20_util/typeindex/hash_code.cc: Likewise.
5198	* testsuite/20_util/typeindex/name.cc: Likewise.
5199	* testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
5200	* testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
5201	* testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
5202	* testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
5203	* testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
5204	* testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
5205	* testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
5206	* testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
5207	* testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
5208	* testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
5209	* testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
5210	* testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
5211	* testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
5212	* testsuite/20_util/unique_ptr/specialized_algorithms/
5213	comparisons.cc: Likewise.
5214	* testsuite/20_util/unique_ptr/specialized_algorithms/
5215	comparisons_array.cc: Likewise.
5216	* testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
5217	Likewise.
5218	* testsuite/20_util/uses_allocator/construction.cc: Likewise.
5219	* testsuite/20_util/uses_allocator/value.cc: Likewise.
5220	* testsuite/20_util/variant/run.cc: Likewise.
5221	* testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
5222	* testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
5223	* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
5224	Likewise.
5225	* testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
5226	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
5227	Likewise.
5228	* testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
5229	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
5230	Likewise.
5231	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
5232	Likewise.
5233	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
5234	Likewise.
5235	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
5236	Likewise.
5237	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
5238	Likewise.
5239	* testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
5240	* testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
5241	* testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
5242	* testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
5243	* testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
5244	Likewise.
5245	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
5246	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
5247	Likewise.
5248	* testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
5249	* testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
5250	Likewise.
5251	* testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
5252	* testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
5253	* testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
5254	* testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
5255	* testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
5256	* testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
5257	* testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
5258	* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
5259	* testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
5260	* testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
5261	* testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
5262	* testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
5263	* testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
5264	* testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
5265	* testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
5266	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
5267	* testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
5268	* testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
5269	* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
5270	* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
5271	* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
5272	* testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
5273	Likewise.
5274	* testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
5275	* testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
5276	* testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
5277	* testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
5278	* testsuite/21_strings/basic_string/element_access/char/58163.cc:
5279	Likewise.
5280	* testsuite/21_strings/basic_string/element_access/char/empty.cc:
5281	Likewise.
5282	* testsuite/21_strings/basic_string/element_access/char/front_back.cc:
5283	Likewise.
5284	* testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
5285	Likewise.
5286	* testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
5287	Likewise.
5288	* testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
5289	Likewise.
5290	* testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
5291	Likewise.
5292	* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
5293	Likewise.
5294	* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
5295	Likewise.
5296	* testsuite/21_strings/basic_string/element_access/wchar_t/
5297	front_back.cc: Likewise.
5298	* testsuite/21_strings/basic_string/init-list.cc: Likewise.
5299	* testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
5300	Likewise.
5301	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
5302	Likewise.
5303	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
5304	Likewise.
5305	* testsuite/21_strings/basic_string/inserters_extractors/char/
5306	28277.cc: Likewise.
5307	* testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
5308	Likewise.
5309	* testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
5310	Likewise.
5311	* testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
5312	Likewise.
5313	* testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
5314	Likewise.
5315	* testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
5316	Likewise.
5317	* testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
5318	Likewise.
5319	* testsuite/21_strings/basic_string/inserters_extractors/pod/
5320	10081-in.cc: Likewise.
5321	* testsuite/21_strings/basic_string/inserters_extractors/pod/
5322	10081-out.cc: Likewise.
5323	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
5324	Likewise.
5325	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5326	10.cc: Likewise.
5327	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5328	11.cc: Likewise.
5329	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5330	28277.cc: Likewise.
5331	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
5332	Likewise.
5333	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
5334	Likewise.
5335	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
5336	Likewise.
5337	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
5338	Likewise.
5339	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
5340	Likewise.
5341	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
5342	Likewise.
5343	* testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
5344	Likewise.
5345	* testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
5346	Likewise.
5347	* testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
5348	Likewise.
5349	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
5350	Likewise.
5351	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
5352	Likewise.
5353	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
5354	Likewise.
5355	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
5356	Likewise.
5357	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
5358	Likewise.
5359	* testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
5360	Likewise.
5361	* testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
5362	Likewise.
5363	* testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
5364	Likewise.
5365	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
5366	Likewise.
5367	* testsuite/21_strings/basic_string/modifiers/assign/char/
5368	move_assign.cc: Likewise.
5369	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
5370	Likewise.
5371	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
5372	Likewise.
5373	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
5374	Likewise.
5375	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
5376	Likewise.
5377	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
5378	move_assign.cc: Likewise.
5379	* testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
5380	Likewise.
5381	* testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
5382	Likewise.
5383	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
5384	Likewise.
5385	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
5386	Likewise.
5387	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
5388	Likewise.
5389	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
5390	Likewise.
5391	* testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
5392	Likewise.
5393	* testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
5394	Likewise.
5395	* testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
5396	Likewise.
5397	* testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
5398	Likewise.
5399	* testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
5400	Likewise.
5401	* testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
5402	Likewise.
5403	* testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
5404	Likewise.
5405	* testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
5406	Likewise.
5407	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
5408	Likewise.
5409	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
5410	Likewise.
5411	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
5412	Likewise.
5413	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
5414	Likewise.
5415	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
5416	Likewise.
5417	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
5418	Likewise.
5419	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
5420	Likewise.
5421	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
5422	Likewise.
5423	* testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
5424	Likewise.
5425	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
5426	Likewise.
5427	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
5428	Likewise.
5429	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
5430	Likewise.
5431	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
5432	Likewise.
5433	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
5434	Likewise.
5435	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
5436	Likewise.
5437	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
5438	Likewise.
5439	* testsuite/21_strings/basic_string/numeric_conversions/char/
5440	stoull.cc: Likewise.
5441	* testsuite/21_strings/basic_string/numeric_conversions/char/
5442	to_string.cc: Likewise.
5443	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5444	dr1261.cc: Likewise.
5445	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5446	stod.cc: Likewise.
5447	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5448	stof.cc: Likewise.
5449	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5450	stoi.cc: Likewise.
5451	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5452	stol.cc: Likewise.
5453	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5454	stold.cc: Likewise.
5455	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5456	stoll.cc: Likewise.
5457	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5458	stoul.cc: Likewise.
5459	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5460	stoull.cc: Likewise.
5461	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5462	to_wstring.cc: Likewise.
5463	* testsuite/21_strings/basic_string/operations/compare/char/1.cc:
5464	Likewise.
5465	* testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
5466	Likewise.
5467	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
5468	Likewise.
5469	* testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
5470	Likewise.
5471	* testsuite/21_strings/basic_string/operations/compare/wchar_t/
5472	13650.cc: Likewise.
5473	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
5474	Likewise.
5475	* testsuite/21_strings/basic_string/operations/data/char/1.cc:
5476	Likewise.
5477	* testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
5478	Likewise.
5479	* testsuite/21_strings/basic_string/operations/find/char/1.cc:
5480	Likewise.
5481	* testsuite/21_strings/basic_string/operations/find/char/2.cc:
5482	Likewise.
5483	* testsuite/21_strings/basic_string/operations/find/char/3.cc:
5484	Likewise.
5485	* testsuite/21_strings/basic_string/operations/find/char/4.cc:
5486	Likewise.
5487	* testsuite/21_strings/basic_string/operations/find/char/5.cc:
5488	Likewise.
5489	* testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
5490	Likewise.
5491	* testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
5492	Likewise.
5493	* testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
5494	Likewise.
5495	* testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
5496	Likewise.
5497	* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
5498	Likewise.
5499	* testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
5500	Likewise.
5501	* testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
5502	Likewise.
5503	* testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
5504	Likewise.
5505	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
5506	Likewise.
5507	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
5508	Likewise.
5509	* testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
5510	Likewise.
5511	* testsuite/21_strings/basic_string/operations/substr/char/1.cc:
5512	Likewise.
5513	* testsuite/21_strings/basic_string/operations/substr/wchar_t/
5514	1.cc: Likewise.
5515	* testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
5516	* testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
5517	* testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
5518	* testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
5519	* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
5520	* testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
5521	* testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
5522	* testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
5523	* testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
5524	* testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
5525	* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
5526	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
5527	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
5528	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
5529	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
5530	* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
5531	* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
5532	* testsuite/21_strings/basic_string_view/element_access/char/
5533	1.cc: Likewise.
5534	* testsuite/21_strings/basic_string_view/element_access/char/
5535	empty.cc: Likewise.
5536	* testsuite/21_strings/basic_string_view/element_access/char/
5537	front_back.cc: Likewise.
5538	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
5539	1.cc: Likewise.
5540	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
5541	empty.cc: Likewise.
5542	* testsuite/21_strings/basic_string_view/element_access/wchar_t/
5543	front_back.cc: Likewise.
5544	* testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
5545	* testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
5546	* testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
5547	* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
5548	Likewise.
5549	* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
5550	Likewise.
5551	* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
5552	Likewise.
5553	* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
5554	Likewise.
5555	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5556	char/1.cc: Likewise.
5557	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5558	wchar_t/1.cc: Likewise.
5559	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5560	char/1.cc: Likewise.
5561	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5562	wchar_t/1.cc: Likewise.
5563	* testsuite/21_strings/basic_string_view/operations/compare/char/
5564	1.cc: Likewise.
5565	* testsuite/21_strings/basic_string_view/operations/compare/char/
5566	13650.cc: Likewise.
5567	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5568	1.cc: Likewise.
5569	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5570	13650.cc: Likewise.
5571	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
5572	Likewise.
5573	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
5574	Likewise.
5575	* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
5576	Likewise.
5577	* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
5578	Likewise.
5579	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
5580	Likewise.
5581	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
5582	Likewise.
5583	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
5584	Likewise.
5585	* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
5586	Likewise.
5587	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5588	1.cc: Likewise.
5589	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5590	2.cc: Likewise.
5591	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5592	3.cc: Likewise.
5593	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5594	4.cc: Likewise.
5595	* testsuite/21_strings/basic_string_view/operations/rfind/char/
5596	1.cc: Likewise.
5597	* testsuite/21_strings/basic_string_view/operations/rfind/char/
5598	2.cc: Likewise.
5599	* testsuite/21_strings/basic_string_view/operations/rfind/char/
5600	3.cc: Likewise.
5601	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5602	1.cc: Likewise.
5603	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5604	2.cc: Likewise.
5605	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5606	3.cc: Likewise.
5607	* testsuite/21_strings/basic_string_view/operations/string_conversion/
5608	1.cc: Likewise.
5609	* testsuite/21_strings/basic_string_view/operations/substr/char/
5610	1.cc: Likewise.
5611	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
5612	1.cc: Likewise.
5613	* testsuite/21_strings/basic_string_view/operators/char/2.cc:
5614	Likewise.
5615	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
5616	Likewise.
5617	* testsuite/21_strings/c_strings/char/1.cc: Likewise.
5618	* testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
5619	* testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
5620	* testsuite/21_strings/char_traits/requirements/char/57704.cc:
5621	Likewise.
5622	* testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
5623	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
5624
5625	* doc/xml/manual/test.xml: Fix typo.
5626
56272016-10-12  Jonathan Wakely  <jwakely@redhat.com>
5628
5629	* doc/xml/manual/status_cxx2017.xml: Add std::sample status.
5630	* doc/html/*: Regenerate.
5631	* include/experimental/algorithm (__sample): Move to bits/stl_algo.h
5632	and into namespace std.
5633	* include/bits/stl_algo.h (__sample): Define here. Fix invalid use
5634	of input iterator. Defend against overloaded comma operator.
5635	(sample): Define for C++17.
5636	* testsuite/25_algorithms/sample/1.cc: New test.
5637
5638	* testsuite/util/testsuite_common_types.h
5639	(bitwise_assignment_operators): Use direct-initialization for C++11
5640	and later, to avoid CopyConstructible requirement.
5641	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
5642	line numbers.
5643	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
5644	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
5645	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
5646	* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
5647	Adjust expected errors and line numbers.
5648
5649	* include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
5650	(call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
5651
5652	* include/bits/stl_uninitialized.h
5653	(__uninitialized_default_novalue_n_1<true>): Add missing return.
5654	* testsuite/20_util/specialized_algorithms/memory_management_tools/
5655	1.cc: Check return values of uninitialized_xxx_n algorithms.
5656
5657	* libsupc++/nested_exception.h (throw_with_nested): Remove return.
5658
5659	* doc/xml/manual/intro.xml: Document LWG 2442 status.
5660	* include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
5661	[_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
5662	partial specialization to unpack args and forward to std::invoke.
5663	(call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
5664	instead of __bind_simple and __once_call_impl.
5665	(call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
5666	__bind_simple.
5667	* testsuite/30_threads/call_once/dr2442.cc: New test.
5668
56692016-10-11  Jonathan Wakely  <jwakely@redhat.com>
5670
5671	* include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
5672	_M_assign_dispatch directly with correct tag.
5673
5674	* doc/xml/manual/intro.xml: Document LWG 2484 status.
5675	* libsupc++/nested_exception.h (_Throw_with_nested_impl)
5676	(_Throw_with_nested_helper): Remove.
5677	(__throw_with_nested_impl): New overloaded functions to implement
5678	throw_with_nested logic.
5679	(throw_with_nested): Call __throw_with_nested_impl.
5680	(_Rethrow_if_nested_impl): Remove
5681	(__rethrow_if_nested_impl): New overloaded functions to implement
5682	rethrow_if_nested logic.
5683	(rethrow_if_nested): Call __rethrow_if_nested_impl.
5684	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
5685	problem cases from LWG 2484.
5686
5687	* python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
5688	Register printer for std::__cxx11::list.
5689	* python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
5690	std::__cxx11::list as well as std::list.
5691
5692	* include/experimental/string_view (basic_string_view::_S_compare):
5693	Remove redundant const from return type.
5694	* include/std/string_view (basic_string_view:_S_compare): Likewise.
5695
5696	* include/bits/std_mutex.h (mutex::native_handle)
5697	(lock_guard(mutex_type&, adopt_lock_t)
5698	(unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
5699	* include/std/mutex (recursive_mutex, timed_mutex)
5700	(recursive_timed_mutex): Likewise.
5701
57022016-10-10  Jonathan Wakely  <jwakely@redhat.com>
5703
5704	* doc/xml/manual/appendix_contributing.xml (contrib.organization):
5705	Replace <literallayout> with nested <variablelist> elements. Update
5706	some more outdated text.
5707	* doc/html/*: Regenerate.
5708
57092016-10-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
5710
5711	Make any's copy assignment operator exception-safe,
5712	don't copy the underlying value when any is moved,
5713	make in_place constructors explicit.
5714	* include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
5715	Make explicit.
5716	(any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
5717	Likewise.
5718	(operator=(const any&)): Make strongly exception-safe.
5719	(operator=(any&&)): reset() unconditionally in the case where
5720	rhs has a value.
5721	(operator=(_ValueType&&)): Indent the return type.
5722	(_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
5723	* testsuite/20_util/any/assign/2.cc: Adjust.
5724	* testsuite/20_util/any/assign/exception.cc: New.
5725	* testsuite/20_util/any/cons/2.cc: Adjust.
5726	* testsuite/20_util/any/cons/explicit.cc: New.
5727	* testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
5728
57292016-10-10  Jonathan Wakely  <jwakely@redhat.com>
5730
5731	* doc/xml/manual/appendix_contributing.xml (contrib.organization):
5732	Describe other subdirectories and add markup. Remove outdated
5733	reference to check-script target.
5734	* doc/html/*: Regenerate.
5735
5736	* doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
5737
5738	* libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
5739	with noexcept.
5740
5741	* include/std/functional (_Bind_result::__enable_if_void): Use alias
5742	template instead of class template.
5743	(_Bind_result::__disable_if_void): Likewise.
5744	(_Bind_result::__call): Adjust uses of __enable_if_void and
5745	__disable_if_void.
5746
5747	* doc/xml/manual/intro.xml: Document DR 2296 status.
5748	* doc/xml/manual/status_cxx2017.xml: Update status.
5749	* include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
5750	call __builtin_addressof.
5751	(addressof): Add _GLIBCXX17_CONSTEXPR.
5752	* testsuite/20_util/addressof/requirements/constexpr.cc: New test.
5753	* testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
5754	* testsuite/20_util/forward/f_neg.cc: Likewise.
5755
5756	* include/bits/allocator.h (allocator<T>::is_always_equal): Define.
5757	* testsuite/20_util/allocator/requirements/typedefs.cc: Test for
5758	is_always_equal.
5759	* testsuite/util/testsuite_allocator.h
5760	(uneq_allocator::is_always_equal): Define as false_type.
5761
5762	* include/experimental/numeric (gcd, lcm): Make bool arguments
5763	ill-formed.
5764	* include/std/numeric (gcd, lcm): Likewise.
5765	* testsuite/26_numerics/gcd/gcd_neg.cc: New test.
5766	* testsuite/26_numerics/lcm/lcm_neg.cc: New test.
5767
5768	* include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
5769	Add noexcept.
5770	* include/bits/shared_ptr_base.h
5771	(__enable_shared_from_this::weak_from_this): Likewise.
5772	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5773	Test exception-specification of weak_from_this.
5774
57752016-10-07  Jonathan Wakely  <jwakely@redhat.com>
5776
5777	* doc/xml/manual/status_cxx1998.xml: Improve documentation of
5778	implementation-defined properties.
5779	* doc/xml/manual/status_cxx2011.xml: Likewise.
5780	* doc/xml/manual/status_cxx2017.xml: Likewise.
5781
5782	* doc/xml/manual/status_cxx2017.xml: Update status.
5783	* include/std/type_traits (has_unique_object_representations): Define.
5784	* testsuite/20_util/has_unique_object_representations/value.cc: New.
5785	* testsuite/20_util/has_unique_object_representations/requirements/
5786	explicit_instantiation.cc: New.
5787	* testsuite/20_util/has_unique_object_representations/requirements/
5788	typedefs.cc: New.
5789
57902016-10-06  Jonathan Wakely  <jwakely@redhat.com>
5791
5792	* doc/xml/manual/status_cxx2011.xml: Update status.
5793	* include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
5794	New helpers for recursive OUTERMOST.
5795	(__outermost): Use __outermost_type::_S_outermost.
5796	(__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
5797	(scoped_allocator_adaptor::__outermost_alloc_traits): Use new
5798	__outermost_type helper.
5799	(scoped_allocator_adaptor::_Constructible): New alias template.
5800	(scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
5801	Constrain template constructors.
5802	* testsuite/20_util/scoped_allocator/3.cc: New test.
5803	* testsuite/20_util/scoped_allocator/outermost.cc: New test.
5804
58052016-10-05  Jonathan Wakely  <jwakely@redhat.com>
5806
5807	PR libstdc++/70564
5808	* testsuite/20_util/not_fn/1.cc: Fix test.
5809	* testsuite/experimental/functional/not_fn.cc: Likewise.
5810
5811	PR libstdc++/70101
5812	* include/bits/stl_queue.h (priority_queue): Fix allocator-extended
5813	constructors.
5814	* testsuite/23_containers/priority_queue/allocator.cc: New test.
5815
5816	PR libstdc++/77864
5817	* include/bits/stl_map.h (map::map()): Use nothrow constructibility
5818	of comparison function in conditional noexcept.
5819	* include/bits/stl_multimap.h (multimap::multimap()): Likewise.
5820	* include/bits/stl_multiset.h (multiset::multiset()): Likewise.
5821	* include/bits/stl_set.h (set::set()): Likewise.
5822	* testsuite/23_containers/map/cons/noexcept_default_construct.cc:
5823	New test.
5824	* testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
5825	Likewise.
5826	* testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
5827	Likewise.
5828	* testsuite/23_containers/set/cons/noexcept_default_construct.cc:
5829	Likewise.
5830
5831	* include/bits/node_handle.h (_Node_handle): Remove invalid and unused
5832	alias declaration.
5833
5834	PR libstdc++/70564
5835	* include/experimental/functional (_Not_fn): Remove.
5836	(not_fn): Use std::_Not_fn.
5837	* include/std/functional (_Not_fn): Add second parameter to
5838	disambiguate copying from initialization by not_fn. Define for C++14.
5839	(not_fn): Add second argument to initialization.
5840	* testsuite/20_util/not_fn/1.cc: Copy call wrapper using
5841	direct-initialization.
5842
58432016-10-03  François Dumont  <fdumont@gcc.gnu.org>
5844
5845	* src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
5846	declaration...
5847	* src/c++11/mutex_pool.h: ... here. New.
5848	* src/c++11/debug.cc: Use latter.
5849
58502016-10-03  Jonathan Wakely  <jwakely@redhat.com>
5851
5852	* doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
5853	* doc/html/*: Regenerate.
5854	* include/experimental/numeric (__abs): Move to <numeric>.
5855	(gcd, lcm): Use __detail::gcd and __detail::lcm.
5856	* include/std/numeric (__detail::__abs_integral)
5857	(__detail::__gcd, __detail::__lcm): Define.
5858	(gcd, lcm): Define for C++17.
5859	* testsuite/26_numerics/gcd/1.cc: New test.
5860	* testsuite/26_numerics/lcm/1.cc: New test.
5861	* testsuite/experimental/numeric/gcd.cc: Swap contents with ...
5862	* testsuite/experimental/numeric/lcd.cc: ... this.
5863
5864	PR libstdc++/68323
5865	PR libstdc++/77794
5866	* config/abi/pre/gnu-versioned-namespace.ver: Add exports for
5867	__cxa_thread_atexit and __gnu_cxx::__freeres.
5868	* include/Makefile.am: Add <experimental/bits/lfts_config.h>
5869	* include/Makefile.in: Regenerate.
5870	* include.bits/basic_string.h: Fix nesting of versioned namespaces.
5871	* include/bits/c++config: Declare versioned namespaces for literals.
5872	* include/bits/regex.h (basic_regex, match_results): Add workarounds
5873	for PR c++/59256.
5874	* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
5875	* include/std/chrono: Likewise.
5876	* include/std/complex: Likewise.
5877	* include/std/string_view: Likewise.
5878	* include/std/variant: Likewise. Add workaround for PR c++/59256.
5879	* include/experimental/bits/fs_fwd.h: Declare versioned namespace.
5880	* include/experimental/bits/lfts_config.h: Declare versioned
5881	namespaces.
5882	* include/experimental/algorithm: Include
5883	<experimental/bits/lfts_config.h>.
5884	* include/experimental/any: Likewise.
5885	* include/experimental/bits/erase_if.h: Likewise.
5886	* include/experimental/chrono: Likewise.
5887	* include/experimental/functional: Likewise.
5888	* include/experimental/memory_resource: Likewise.
5889	* include/experimental/optional: Likewise.
5890	* include/experimental/propagate_const: Likewise.
5891	* include/experimental/random: Likewise.
5892	* include/experimental/ratio: Likewise.
5893	* include/experimental/system_error: Likewise.
5894	* include/experimental/tuple: Likewise.
5895	* include/experimental/type_traits: Likewise.
5896	* include/experimental/utility: Likewise.
5897	* include/experimental/string_view: Likewise. Fix nesting of
5898	versioned namespaces.
5899	* include/experimental/bits/string_view.tcc: Reopen inline namespace
5900	for non-inline function definitions.
5901	* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
5902	* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
5903	* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
5904	* testsuite/experimental/propagate_const/assignment/move_neg.cc:
5905	Likewise.
5906	* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
5907	* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
5908	* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
5909	* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
5910	* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
5911	* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
5912
5913	PR libstdc++/77814
5914	* include/bits/std_abs.h: Use "C++" language linkage.
5915	* testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
5916	the end. Add <stdalign.h>.
5917
59182016-10-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
5919
5920	PR libstdc++/77802
5921	* testsuite/20_util/tuple/77802.cc: New.
5922
5923	Revert:
5924	2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5925	Implement LWG 2729 for tuple.
5926	* include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
5927	Suppress conditionally.
5928	(_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
5929	(__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
5930	(_Tuple_impl(const _Head&)): Constrain.
5931	(_Tuple_impl(_UHead&&)): Likewise.
5932	(_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
5933	(_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
5934	(_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
5935	(operator=(const tuple&)): Enable conditionally.
5936	(operator=(tuple&&)): Suppress conditionally.
5937	(operator=(const tuple<_UElements...>&)): Constrain.
5938	(operator=(tuple<_UElements...>&&)): Likewise.
5939	(operator=(const tuple&)): Enable conditionally (2-param tuple).
5940	(operator=(tuple&&)): Suppress conditionally (2-param tuple).
5941	(operator=(const tuple<_U1, _U2>&)): Constrain.
5942	(operator=(tuple<_U1, _U2>&&)): Likewise.
5943	(operator=(const pair<_U1, _U2>&)): Likewise.
5944	(operator=(pair<_U1, _U2>&&)): Likewise.
5945	* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
5946	* testsuite/20_util/tuple/tuple_traits.cc: New.
5947
59482016-09-30  Jonathan Wakely  <jwakely@redhat.com>
5949
5950	PR libstdc++/77795
5951	* acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
5952	for gets.
5953	* config.h.in: Regenerate.
5954	* configure: Regenerate.
5955	* include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
5956	for C++98 and C++11.
5957	* include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
5958	* testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
5959
5960	* doc/xml/manual/intro.xml: Document LWG 2192 changes.
5961	* doc/html/*: Regenerate.
5962	* include/Makefile.am: Add bits/std_abs.h.
5963	* include/Makefile.in: Regenerate.
5964	* include/bits/std_abs.h: New header defining all required overloads
5965	of std::abs in one place (LWG 2294).
5966	* include/c_global/cmath (abs(double), abs(float), abs(long double)):
5967	Move to bits/std_abs.h.
5968	(abs<_Tp>(_Tp)): Remove.
5969	* include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
5970	Move to bits/std_abs.h.
5971	* testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
5972	* testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
5973	* testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
5974	* testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
5975
5976	PR libstdc++/77801
5977	* include/experimental/numeric: Include <numeric>.
5978	(__abs): Define.
5979	(gcd, lcm): Use __abs instead of std::abs.
5980	* testsuite/experimental/numeric/77801.cc: New test.
5981	* testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
5982	* testsuite/experimental/numeric/lcm.cc: Likewise.
5983
59842016-09-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
5985
5986	Make optional::reset noexcept, make optional::value
5987	work in constant expressions.
5988	* include/std/optional (_M_get): Make constexpr.
5989	(reset): Make noexcept.
5990	* testsuite/20_util/optional/assignment/7.cc: New.
5991	* testsuite/20_util/optional/observers/6.cc: New.
5992
59932016-09-29  Jonathan Wakely  <jwakely@redhat.com>
5994
5995	* include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
5996	outside _GLIBCXX_USE_C99_MATH_TR1 condition.
5997
59982016-09-29  Alan Modra  <amodra@gmail.com>
5999
6000	* configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
6001	* src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
6002	Use LONG_DOUBLE_COMPAT_FLAGS.
6003	* Makefile.in: Regenerate.
6004	* configure: Regenerate.
6005	* doc/Makefile.in: Regenerate.
6006	* include/Makefile.in: Regenerate.
6007	* libsupc++/Makefile.in: Regenerate.
6008	* po/Makefile.in: Regenerate.
6009	* python/Makefile.in: Regenerate.
6010	* src/Makefile.in: Regenerate.
6011	* src/c++11/Makefile.in: Regenerate.
6012	* src/c++98/Makefile.in: Regenerate.
6013	* src/filesystem/Makefile.in: Regenerate.
6014	* testsuite/Makefile.in: Regenerate.
6015
60162016-09-28  Jonathan Wakely  <jwakely@redhat.com>
6017
6018	* include/std/chrono (system_clock): Fix typo in comment.
6019
6020	* include/experimental/bits/fs_fwd.h (file_time_type): Simplify
6021	definition.
6022	* src/filesystem/ops.cc (file_time): Take error_code parameter and
6023	check for overflow.
6024	(do_copy_file, last_write_time): Pass error_code in file_time calls.
6025	* testsuite/experimental/filesystem/operations/last_write_time.cc:
6026	New.
6027	* testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
6028
6029	PR libstdc++/77686
6030	* include/std/functional (_Any_data): Add may_alias attribute.
6031
60322016-09-27  Jonathan Wakely  <jwakely@redhat.com>
6033
6034	* doc/xml/manual/status_cxx2017.xml: Update status.
6035	* doc/html/*: Regenerate.
6036	* include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
6037	* testsuite/20_util/function_objects/searchers.cc: Test feature macro.
6038
6039	* doc/xml/manual/status_cxx2017.xml: Update status.
6040	* include/c_global/cmath (hypot): Add three-dimensional overloads.
6041	* testsuite/26_numerics/headers/cmath/hypot.cc: New.
6042
60432016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
6044
6045	PR libstdc++/77727
6046	* include/std/optional (optional(const optional<_Up>&)):
6047	Default-initialize the base and use emplace.
6048	(optional(optional<_Up>&&)): Likewise.
6049	* testsuite/20_util/optional/cons/77727.cc: New.
6050
60512016-09-26  François Dumont  <fdumont@gcc.gnu.org>
6052
6053	* include/debug/safe_base.h
6054	(_Safe_iterator_base::_M_detach_single): Make public.
6055
60562016-09-26  Jonathan Wakely  <jwakely@redhat.com>
6057
6058	* include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
6059	redefine macro defined in <bits/stl_iterator.h>.
6060
6061	* include/bits/stl_map.h (map::extract(const_iterator)): Assert that
6062	iterator is not past-the-end.
6063	* include/bits/stl_multimap.h (multimap::extract(const_iterator)):
6064	Likewise.
6065	* include/bits/stl_multiset.h (multiset::extract(const_iterator)):
6066	Likewise.
6067	* include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
6068	* include/bits/unordered_map.h (unordered_map::extract(const_iterator))
6069	(unordered_multimap::extract(const_iterator)): Likewise.
6070	* include/bits/unordered_set.h (unordered_set::extract(const_iterator))
6071	(unordered_multiset::extract(const_iterator)): Likewise.
6072
60732016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
6074
6075	PR libstdc++/77717
6076	* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
6077	Fix an out-of-bounds access.
6078
60792016-09-26  Marek Polacek  <polacek@redhat.com>
6080
6081	PR c/7652
6082	* libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
6083
60842016-09-25  François Dumont  <fdumont@gcc.gnu.org>
6085
6086	* src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
6087	functional.
6088	(get_safe_base_mutex): Get mutex based on address lowest non nil bits.
6089	* testsuite/23_containers/vector/debug/mutex_association.cc: New.
6090
6091	* include/debug/bitset (bitset::reference::reference(const _Base_ref&,
6092	bitset*)): Remove __unused__ attribute.
6093	* include/debug/safe_base.h (_Safe_iterator_base): Make
6094	_Safe_sequence_base a friend.
6095	(_Safe_iterator_base::_M_attach): Make protected.
6096	(_Safe_iterator_base::_M_attach_single): Likewise.
6097	(_Safe_iterator_base::_M_detach): Likewise.
6098	(_Safe_iterator_base::_M_detach_single): Likewise.
6099	(_Safe_sequence_base): Make _Safe_iterator_base a friend.
6100	(_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
6101	(_Safe_sequence_base::_M_swap): Make protected.
6102	(_Safe_sequence_base::_M_attach): Make private.
6103	(_Safe_sequence_base::_M_attach_single): Likewise.
6104	(_Safe_sequence_base::_M_detach): Likewise.
6105	(_Safe_sequence_base::_M_detach_single): Likewise.
6106	* include/debug/safe_container.h
6107	(_Safe_container::_Safe_container(_Safe_container&&)): Make default.
6108	* include/debug/safe_iterator.h
6109	(_Safe_iterator::operator++()): Name __scoped_lock instance.
6110	* include/debug/safe_iterator.tcc: Remove trailing line.
6111	* include/debug/safe_unordered_base.h
6112	(_Safe_local_iterator_base::_M_attach): Make protected.
6113	(_Safe_local_iterator_base::_M_attach_single): Likewise.
6114	(_Safe_local_iterator_base::_M_detach): Likewise.
6115	(_Safe_local_iterator_base::_M_detach_single): Likewise.
6116	(_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
6117	(_Safe_unordered_container_base::_M_attach_local): Make private.
6118	(_Safe_unordered_container_base::_M_attach_local_single): Likewise.
6119	(_Safe_unordered_container_base::_M_detach_local): Likewise.
6120	(_Safe_unordered_container_base::_M_detach_local_single): Likewise.
6121
6122	* include/parallel/algo.h: Generalize usage of std::__iterator_category.
6123	Adjust whitespaces.
6124
61252016-09-23  Jonathan Wakely  <jwakely@redhat.com>
6126
6127	PR libstdc++/56166
6128	PR libstdc++/77582
6129	* include/bits/basic_string.h (basic_string::clear()): Drop reference
6130	and use empty rep.
6131	* include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
6132	Likewise.
6133	* testsuite/21_strings/basic_string/56166.cc: New.
6134	* testsuite/ext/vstring/modifiers/clear/56166.cc: New.
6135
6136	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6137	(basic_string::erase(size_type, size_type)): Add fast path for
6138	truncating the string, by calling _M_set_length directly.
6139	(basic_string::erase(__const_iterator, __const_iterator)): Likewise.
6140	* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
6141	(basic_string::resize(size_type, _CharT)): Likewise.
6142
61432016-09-22  Jason Merrill  <jason@redhat.com>
6144
6145	* configure.ac: Define HAVE_MEMALIGN for newlib.
6146
61472015-09-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6148
6149	* config/cpu/m68k/atomicity.h: Adjust comment.
6150	* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
6151	explicit atomicity_dir setup via configure.host.
6152	* configure.host (rtems-*): Set atomicity_dir.
6153	* configure: Regenerate.
6154
61552016-09-22  Jonathan Wakely  <jwakely@redhat.com>
6156
6157	Implement C++17 node extraction and insertion (P0083R5)
6158	* doc/xml/manual/status_cxx2017.xml: Document status.
6159	* doc/html/*: Regenerate.
6160	* include/Makefile.am: Add bits/node_handle.h and reorder.
6161	* include/Makefile.in: Regenerate.
6162	* include/bits/hashtable.h (_Hashtable::node_type)
6163	(_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
6164	(_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
6165	(_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
6166	(_Hash_merge_helper): Define primary template.
6167	* include/bits/node_handle.h: New header.
6168	* include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
6169	friend.
6170	(map::node_type, map::insert_return_type, map::extract, map::merge)
6171	(map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
6172	Define new members.
6173	(_Rb_tree_merge_helper): Specialize for map.
6174	* include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
6175	as friend.
6176	(multimap::node_type, multimap::extract, multimap::merge)
6177	(multimap::insert(node_type&&))
6178	(multimap::insert(const_iterator, node_type&&)): Define.
6179	(_Rb_tree_merge_helper): Specialize for multimap.
6180	* include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
6181	as friend.
6182	(multiset::node_type, multiset::extract, multiset::merge)
6183	(multiset::insert(node_type&&))
6184	(multiset::insert(const_iterator, node_type&&)): Define.
6185	* include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
6186	friend.
6187	(set::node_type, set::insert_return_type, set::extract, set::merge)
6188	(set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
6189	Define.
6190	(_Rb_tree_merge_helper): Specialize for set.
6191	* include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
6192	(_Rb_tree::node_type, _Rb_tree::insert_return_type)
6193	(_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
6194	(_Rb_tree::_M_reinsert_node_hint_unique)
6195	(_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
6196	(_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
6197	(_Rb_tree_merge_helper): Specialize for multiset.
6198	* include/bits/unordered_map.h (unordered_map): Declare
6199	unordered_map<> and unordered_multimap<> as friends.
6200	(unordered_map::node_type, unordered_map::insert_return_type)
6201	(unordered_map::extract, unordered_map::merge)
6202	(unordered_map::insert(node_type&&))
6203	(unordered_map::insert(const_iterator, node_type&&))
6204	(unordered_multimap): Declare _Hash_merge_helper as friend.
6205	(unordered_multimap::node_type, unordered_multimap::extract)
6206	(unordered_multimap::merge, unordered_multimap::insert(node_type&&))
6207	(unordered_multimap::insert(const_iterator, node_type&&)): Define.
6208	(_Hash_merge_helper): Specialize for unordered maps and multimaps.
6209	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
6210	Declare _Hash_merge_helper as friend.
6211	(unordered_set::node_type, unordered_set::insert_return_type)
6212	(unordered_set::extract, unordered_set::merge)
6213	(unordered_set::insert(node_type&&))
6214	(unordered_set::insert(const_iterator, node_type&&)): Define.
6215	(unordered_multiset::node_type, unordered_multiset::extract)
6216	(unordered_multiset::merge, unordered_multiset::insert(node_type&&))
6217	(unordered_multiset::insert(const_iterator, node_type&&)): Define.
6218	(_Hash_merge_helper): Specialize for unordered sets and multisets.
6219	* include/debug/map.h (map): Add using declarations or forwarding
6220	functions for new members.
6221	* include/debug/map.h (multimap): Likewise.
6222	* include/debug/map.h (multiset): Likewise.
6223	* include/debug/map.h (set): Likewise.
6224	* include/debug/unordered_map (unordered_map, unordered_multimap):
6225	Likewise.
6226	* include/debug/unordered_set( unordered_set, unordered_multiset):
6227	Likewise.
6228	* python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
6229	helper function.
6230	(get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
6231	(StdNodeHandlePrinter): Define printer for node handles.
6232	(build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
6233	* testsuite/23_containers/map/modifiers/extract.cc: New.
6234	* testsuite/23_containers/map/modifiers/merge.cc: New.
6235	* testsuite/23_containers/multimap/modifiers/extract.cc: New.
6236	* testsuite/23_containers/multimap/modifiers/merge.cc: New.
6237	* testsuite/23_containers/multiset/modifiers/extract.cc: New.
6238	* testsuite/23_containers/multiset/modifiers/merge.cc: New.
6239	* testsuite/23_containers/set/modifiers/extract.cc: New.
6240	* testsuite/23_containers/set/modifiers/merge.cc: New.
6241	* testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
6242	* testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
6243	* testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
6244	New.
6245	* testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
6246	* testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
6247	New.
6248	* testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
6249	* testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
6250	* testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
6251	* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
6252	dg-error lineno.
6253	* testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
6254
62552016-09-22  Ville Voutilainen  <ville.voutilainen@gmail.com>
6256
6257	Fix tests on old arm platforms for optional.
6258	* testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
6259
62602016-09-22  Jonathan Wakely  <jwakely@redhat.com>
6261
6262	* python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
6263	recent change to _Variant_storage.
6264	* testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
6265	reference type.
6266
6267	* include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
6268	std::forward and ::new. Cast pointer to void*.
6269	* include/std/variant (_Variant_storage, _Union, _Variant_base)
6270	(__access, __visit_invoke, variant, visit): Qualify std::forward.
6271	* testsuite/20_util/variant/compile.cc: Test for ADL problems.
6272
62732016-09-22  Tim Shen  <timshen@google.com>
6274
6275	* include/std/variant (variant::operator=): Fix assignment
6276	on references.
6277	* testsuite/20_util/variant/compile.cc: Add test.
6278
62792016-09-22  Tim Shen  <timshen@google.com>
6280
6281	PR libstdc++/77641
6282	* include/std/variant (_Variant_storage::_Variant_storage):
6283	Change _Variant_storage's union to be default constructible.
6284	* testsuite/20_util/variant/compile.cc: New test.
6285
62862016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6287
6288	PR libstdc++/77288
6289	* include/std/optional (__is_optional_impl, __is_optional): Remove.
6290	(__converts_from_optional, __assigns_from_optional): New.
6291	(optional(_Up&&)): Use is_same instead of __is_optional.
6292	(optional(const optional<_Up>&)): Constrain with
6293	__converts_from_optional.
6294	(optional(optional<_Up>&&)): Likewise.
6295	(operator=(_Up&&)): Use is_same instead of __is_optional, check
6296	is_same and is_scalar.
6297	(operator=(const optional<_Up>&)): Constrain with
6298	__converts_from_optional and __assigns_from_optional.
6299	(operator=(optional<_Up>&&)): Likewise.
6300	* testsuite/20_util/optional/77288.cc: New.
6301	* testsuite/20_util/optional/cons/value.cc: Adjust.
6302
63032016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6304
6305	Implement LWG 2729 for tuple.
6306	* include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
6307	Suppress conditionally.
6308	(_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
6309	(__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
6310	(_Tuple_impl(const _Head&)): Constrain.
6311	(_Tuple_impl(_UHead&&)): Likewise.
6312	(_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
6313	(_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
6314	(_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
6315	(operator=(const tuple&)): Enable conditionally.
6316	(operator=(tuple&&)): Suppress conditionally.
6317	(operator=(const tuple<_UElements...>&)): Constrain.
6318	(operator=(tuple<_UElements...>&&)): Likewise.
6319	(operator=(const tuple&)): Enable conditionally (2-param tuple).
6320	(operator=(tuple&&)): Suppress conditionally (2-param tuple).
6321	(operator=(const tuple<_U1, _U2>&)): Constrain.
6322	(operator=(tuple<_U1, _U2>&&)): Likewise.
6323	(operator=(const pair<_U1, _U2>&)): Likewise.
6324	(operator=(pair<_U1, _U2>&&)): Likewise.
6325	* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
6326	* testsuite/20_util/tuple/tuple_traits.cc: New.
6327
63282016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6329
6330	PR libstdc++/77537
6331	Implement LWG 2729 for pair.
6332	* include/bits/stl_pair.h (_PCC): New.
6333	(_ConstructiblePair, _ImplicitlyConvertiblePair):
6334	Turn into static member functions of _PCC.
6335	(_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
6336	(_PCCP): New.
6337	(pair(const _T1&, const _T2&)): Adjust.
6338	(_PCCFP): New.
6339	(pair(const pair<_U1, _U2>&)): Adjust.
6340	(pair(_U1&&, const _T2&)): Likewise.
6341	(pair(const _T1&, _U2&&)): Likewise.
6342	(pair(_U1&&, _U2&&)): Likewise.
6343	(pair(pair<_U1, _U2>&&)): Likewise.
6344	(operator=(const pair&)): Make conditionally deleted.
6345	(operator=(pair&&)): Make conditionally suppressed.
6346	(operator=(const pair<_U1, _U2>&)): Constrain.
6347	(operator=(pair<_U1, _U2>&&): Likewise.
6348	* include/std/type_traits (__nonesuch): New.
6349	* testsuite/20_util/pair/traits.cc: New.
6350
63512016-09-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
6352
6353	PR libstdc++/77619
6354	* include/bits/stl_construct.h: (_Construct_novalue): New.
6355	(_Destroy_n_aux, _Destroy_n): New.
6356	* include/bits/stl_uninitialized.h: (type_traits):
6357	New include in C++11 mode.
6358	(__uninitialized_default_novalue_1): New.
6359	(__uninitialized_default_novalue_n_1): Likewise.
6360	(__uninitialized_default_novalue): Likewise.
6361	(__uninitialized_default_novalue_n): Likewise.
6362	(__uninitialized_copy_n_pair): Likewise.
6363	(uninitialized_default_construct):
6364	Use __uninitialized_default_novalue.
6365	(uninitialized_default_construct_n):
6366	Use __uninitialized_default_novalue_n.
6367	(uninitialized_value_construct): Use __uninitialized_default.
6368	(uninitialized_value_construct_n): Use __uninitialized_default_n.
6369	(uninitialized_move): Use uninitialized_copy.
6370	(uninitialized_move_n): Use __uninitialized_copy_n_pair.
6371	(destroy_at): Use _Destroy.
6372	(destroy): Likewise.
6373	(destroy_n): Likewise.
6374	* testsuite/20_util/specialized_algorithms/
6375	memory_management_tools/1.cc: Add tests for exceptions,
6376	add tests for trivial cases for construct and move.
6377
63782016-09-20  Jonathan Wakely  <jwakely@redhat.com>
6379
6380	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6381	(DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
6382
63832016-09-19  Jonathan Wakely  <jwakely@redhat.com>
6384
6385	PR libstdc++/77645
6386	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6387	(DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
6388	division to int to work with Python 3.
6389
6390	* testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
6391
6392	* python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
6393	display_hint to be set by subclasses.
6394	(StdVariantPrinter): Use array for display_hint. Adjust output to be
6395	more similar to std::any and std::optional output.
6396	(register_type_printers): Add type printers for basic_string_view
6397	typedefs and experimental::any. Adjust type printers for
6398	fundamentals_v1 templates to match fundamentals_v2 and later.
6399	* testsuite/libstdc++-prettyprinters/cxx17.cc: New.
6400
6401	PR libstdc++/77645
6402	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
6403	argument.
6404	(ListWorkerBase.get_value_from_node): Define new method.
6405	(ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
6406
64072016-09-17  Jonathan Wakely  <jwakely@redhat.com>
6408
6409	* python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
6410	(StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
6411	Register for C++17 components in namespace std. Strip inline namespace
6412	from typename.
6413
64142016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6415
6416	* doc/xml/manual/profile_mode.xml: Fix typo.
6417	* doc/html/manual/profile_mode_devel.html: Regenerate.
6418
64192016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6420	    Marc Glisse  <marc.glisse@inria.fr>
6421
6422	* libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
6423	(operator new(size_t, align_val_t)): Replace modulus operator with
6424	mask.
6425
64262016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6427
6428	* libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
6429	Increase alignment if less than sizeof(void*).
6430	[_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
6431	Increase size if not a multiple of alignment.
6432
64332016-09-15  Jonathan Wakely  <jwakely@redhat.com>
6434
6435	* doc/xml/manual/debug_mode.xml: Minor editorial fixes.
6436	* doc/html/*: Regenerate.
6437
6438	* testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
6439	-Wno-deprecated.
6440	* testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
6441
64422016-09-14  Marek Polacek  <polacek@redhat.com>
6443
6444	* testsuite/23_containers/vector/debug/insert6_neg.cc: Use
6445	-Wno-deprecated.
6446
64472016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>
6448
6449	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
6450	Move dg-do directive before dg-skip.
6451	* testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
6452	Move dg-do directive before dg-require.
6453	* testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
6454	* testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
6455	* testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
6456	* testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
6457	* testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
6458	* testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
6459	* testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
6460	* testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
6461	* testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
6462	* testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
6463	* testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
6464	* testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
6465	* testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
6466	* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
6467	* testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
6468	Likewise.
6469	* testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
6470	* testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
6471	* testsuite/27_io/objects/char/12048-5.cc: Likewise.
6472	* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
6473	* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
6474
64752016-09-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
6476
6477	Implement P0040R3, Extending memory management tools.
6478	* include/bits/stl_uninitialized.h (utility): New include
6479	in C++17 mode.
6480	(uninitialized_default_construct): New.
6481	(uninitialized_default_construct_n): Likewise.
6482	(uninitialized_value_construct): Likewise.
6483	(uninitialized_value_construct_n): Likewise.
6484	(uninitialized_move): Likewise.
6485	(uninitialized_move_n): Likewise.
6486	(destroy_at, destroy, destroy_n): Likewise.
6487	* testsuite/20_util/specialized_algorithms/memory_management_tools/
6488	1.cc: New.
6489
64902016-09-12  Jason Merrill  <jason@redhat.com>
6491
6492	* config/abi/pre/gnu.ver: Use [jmy] for size_t.
6493
64942016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
6495
6496	Implement P0253R1, Fixing a design mistake in the searchers
6497	interface in Library Fundamentals.
6498	* include/std/functional: (utility): New include in C++17 mode.
6499	(default_searcher): Use a pair as return type, adjust the definition.
6500	(boyer_moore_searcher): Likewise.
6501	(boyer_moore_horspool_searcher): Likewise.
6502	* testsuite/20_util/function_objects/searchers.cc: Adjust.
6503
65042016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
6505
6506	Implement C++17 string searchers.
6507	* include/std/functional: (unordered_map, vector): New includes
6508	in C++17 mode.
6509	(array, bits/stl_algo.h): Likewise.
6510	(default_searcher, __boyer_moore_map_base): New.
6511	(__boyer_moore_array_base, __is_std_equal_to): Likewise.
6512	(__boyer_moore_base_t, boyer_moore_searcher): Likewise.
6513	(boyer_moore_horspool_searcher, make_default_searcher): Likewise.
6514	(make_boyer_moore_searcher): Likewise.
6515	(make_boyer_moore_horspool_searcher): Likewise.
6516	* testsuite/20_util/function_objects/searchers.cc: New.
6517
65182016-09-12  Matthew Wahab  <matthew.wahab@arm.com>
6519
6520	* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
6521	Move dg-do directive before dg-require.
6522	* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
6523	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
6524	Likewise.
6525	* testsuite/22_locale/codecvt/utf8.cc: Likewise.
6526	* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
6527	* testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
6528	* testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
6529	* testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
6530	* testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
6531	* testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
6532	* testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
6533	* testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
6534	* testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
6535	* testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
6536	* testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
6537	* testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
6538	Likewise.
6539	* testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
6540	Likewise.
6541	* testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
6542	* testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
6543	* testsuite/23_containers/forward_list/debug/construct1_neg.cc:
6544	Likewise.
6545	* testsuite/23_containers/forward_list/debug/construct2_neg.cc:
6546	Likewise.
6547	* testsuite/23_containers/forward_list/debug/construct3_neg.cc:
6548	Likewise.
6549	* testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
6550	Likewise.
6551	* testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
6552	Likewise.
6553	* testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
6554	Likewise.
6555	* testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
6556	Likewise.
6557	* testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
6558	Likewise.
6559	* testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
6560	Likewise.
6561	* testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
6562	Likewise.
6563	* testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
6564	Likewise.
6565	* testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
6566	Likewise.
6567	* testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
6568	Likewise.
6569	* testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
6570	Likewise.
6571	* testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
6572	Likewise.
6573	* testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
6574	Likewise.
6575	* testsuite/23_containers/forward_list/debug/
6576	iterator_self_move_assign_neg.cc: Likewise.
6577	* testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
6578	Likewise.
6579	* testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
6580	Likewise.
6581	* testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
6582	Likewise.
6583	* testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
6584	Likewise.
6585	* testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
6586	Likewise.
6587	* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
6588	Likewise.
6589	* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
6590	Likewise.
6591	* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
6592	Likewise.
6593	* testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
6594	* testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
6595	* testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
6596	* testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
6597	* testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
6598	* testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
6599	* testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
6600	* testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
6601	* testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
6602	* testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
6603	* testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
6604	Likewise.
6605	* testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
6606	* testsuite/23_containers/map/debug/60499.cc: Likewise.
6607	* testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
6608	* testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
6609	* testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
6610	* testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
6611	* testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
6612	* testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
6613	* testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
6614	Likewise.
6615	* testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
6616	* testsuite/23_containers/multimap/debug/60499.cc: Likewise.
6617	* testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
6618	* testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
6619	* testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
6620	* testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
6621	* testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
6622	* testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
6623	* testsuite/23_containers/multimap/debug/
6624	iterator_self_move_assign_neg.cc: Likewise.
6625	* testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
6626	Likewise.
6627	* testsuite/23_containers/multiset/debug/60499.cc: Likewise.
6628	* testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
6629	* testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
6630	* testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
6631	* testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
6632	* testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
6633	* testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
6634	* testsuite/23_containers/multiset/debug/
6635	iterator_self_move_assign_neg.cc: Likewise.
6636	* testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
6637	Likewise.
6638	* testsuite/23_containers/set/debug/60499.cc: Likewise.
6639	* testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
6640	* testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
6641	* testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
6642	* testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
6643	* testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
6644	* testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
6645	* testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
6646	Likewise.
6647	* testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
6648	* testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
6649	* testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
6650	* testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
6651	* testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
6652	Likewise.
6653	* testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
6654	* testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
6655	* testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
6656	Likewise.
6657	* testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
6658	Likewise.
6659	* testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
6660	Likewise.
6661	* testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
6662	* testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
6663	* testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
6664	* testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
6665	* testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
6666	* testsuite/23_containers/unordered_map/debug/
6667	invalid_local_iterator_compare_neg.cc: Likewise.
6668	* testsuite/23_containers/unordered_map/debug/
6669	invalid_local_iterator_range_neg.cc: Likewise.
6670	* testsuite/23_containers/unordered_map/debug/
6671	iterator_self_move_assign_neg.cc: Likewise.
6672	* testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
6673	Likewise.
6674	* testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
6675	Likewise.
6676	* testsuite/23_containers/unordered_map/debug/
6677	use_erased_local_iterator_neg.cc: Likewise.
6678	* testsuite/23_containers/unordered_map/debug/
6679	use_invalid_iterator_neg.cc: Likewise.
6680	* testsuite/23_containers/unordered_map/debug/
6681	use_invalid_local_iterator_neg.cc: Likewise.
6682	* testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
6683	* testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
6684	Likewise.
6685	* testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
6686	Likewise.
6687	* testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
6688	Likewise.
6689	* testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
6690	Likewise.
6691	* testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
6692	Likewise.
6693	* testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
6694	Likewise.
6695	* testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
6696	Likewise.
6697	* testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
6698	Likewise.
6699	* testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
6700	Likewise.
6701	* testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
6702	Likewise.
6703	* testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
6704	Likewise.
6705	* testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
6706	Likewise.
6707	* testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
6708	Likewise.
6709	* testsuite/23_containers/unordered_multimap/debug/
6710	invalid_local_iterator_compare_neg.cc: Likewise.
6711	* testsuite/23_containers/unordered_multimap/debug/
6712	invalid_local_iterator_range_neg.cc: Likewise.
6713	* testsuite/23_containers/unordered_multimap/debug/
6714	iterator_self_move_assign_neg.cc: Likewise.
6715	* testsuite/23_containers/unordered_multimap/debug/
6716	max_load_factor_neg.cc: Likewise.
6717	* testsuite/23_containers/unordered_multimap/debug/
6718	self_move_assign_neg.cc: Likewise.
6719	* testsuite/23_containers/unordered_multimap/debug/
6720	use_erased_local_iterator_neg.cc: Likewise.
6721	* testsuite/23_containers/unordered_multimap/debug/
6722	use_invalid_iterator_neg.cc: Likewise.
6723	* testsuite/23_containers/unordered_multimap/debug/
6724	use_invalid_local_iterator_neg.cc: Likewise.
6725	* testsuite/23_containers/unordered_multiset/debug/60499.cc:
6726	Likewise.
6727	* testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
6728	Likewise.
6729	* testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
6730	Likewise.
6731	* testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
6732	Likewise.
6733	* testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
6734	Likewise.
6735	* testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
6736	Likewise.
6737	* testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
6738	Likewise.
6739	* testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
6740	Likewise.
6741	* testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
6742	Likewise.
6743	* testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
6744	Likewise.
6745	* testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
6746	Likewise.
6747	* testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
6748	Likewise.
6749	* testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
6750	Likewise.
6751	* testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
6752	Likewise.
6753	* testsuite/23_containers/unordered_multiset/debug/
6754	invalid_local_iterator_compare_neg.cc: Likewise.
6755	* testsuite/23_containers/unordered_multiset/debug/
6756	invalid_local_iterator_range_neg.cc: Likewise.
6757	* testsuite/23_containers/unordered_multiset/debug/
6758	iterator_self_move_assign_neg.cc: Likewise.
6759	* testsuite/23_containers/unordered_multiset/debug/
6760	max_load_factor_neg.cc: Likewise.
6761	* testsuite/23_containers/unordered_multiset/debug/
6762	self_move_assign_neg.cc: Likewise.
6763	* testsuite/23_containers/unordered_multiset/debug/
6764	use_erased_local_iterator_neg.cc: Likewise.
6765	* testsuite/23_containers/unordered_multiset/debug/
6766	use_invalid_iterator_neg.cc: Likewise.
6767	* testsuite/23_containers/unordered_multiset/debug/
6768	use_invalid_local_iterator_neg.cc: Likewise.
6769	*  testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
6770	* testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
6771	* testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
6772	* testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
6773	Likewise.
6774	* testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
6775	* testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
6776	* testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
6777	Likewise.
6778	* testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
6779	Likewise.
6780	* testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
6781	Likewise.
6782	* testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
6783	* testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
6784	* testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
6785	* testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
6786	* testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
6787	* testsuite/23_containers/unordered_set/debug/
6788	invalid_local_iterator_compare_neg.cc: Likewise.
6789	* testsuite/23_containers/unordered_set/debug/
6790	invalid_local_iterator_range_neg.cc: Likewise.
6791	* testsuite/23_containers/unordered_set/debug/
6792	iterator_self_move_assign_neg.cc: Likewise.
6793	* testsuite/23_containers/unordered_set/debug/
6794	max_load_factor_neg.cc: Likewise.
6795	* testsuite/23_containers/unordered_set/debug/
6796	self_move_assign_neg.cc: Likewise.
6797	* testsuite/23_containers/unordered_set/debug/
6798	use_erased_local_iterator_neg.cc: Likewise.
6799	* testsuite/23_containers/unordered_set/debug/
6800	use_invalid_iterator_neg.cc: Likewise.
6801	* testsuite/23_containers/unordered_set/debug/
6802	use_invalid_local_iterator_neg.cc: Likewise.
6803	* testsuite/23_containers/vector/debug/52433.cc: Likewise.
6804	* testsuite/23_containers/vector/debug/60499.cc: Likewise.
6805	* testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
6806	* testsuite/23_containers/vector/debug/
6807	iterator_self_move_assign_neg.cc: Likewise.
6808	* testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
6809	Likewise.
6810	* testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
6811	* testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
6812	* testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
6813	* testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
6814	* testsuite/29_atomics/atomic/60658.cc: Likewise.
6815	* testsuite/29_atomics/atomic/60695.cc: Likewise.
6816	* testsuite/29_atomics/atomic/62259.cc: Likewise.
6817	* testsuite/29_atomics/atomic/64658.cc: Likewise.
6818	* testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
6819	* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
6820	* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
6821	Likewise.
6822
68232016-09-11  Jonathan Wakely  <jwakely@redhat.com>
6824
6825	* libsupc++/new_opant.cc: Include exception_defines.h.
6826	* libsupc++/new_opvant.cc: Likewise.
6827
68282016-09-09  Jason Merrill  <jason@redhat.com>
6829
6830	Implement P0035R4, C++17 new of over-aligned types.
6831	* libsupc++/new: Declare aligned new/delete operators.
6832	* config/abi/pre/gnu.ver: Export them.
6833	* configure.ac: Check for aligned_alloc, posix_memalign, memalign,
6834	_aligned_malloc.
6835	* libsupc++/new_opa.cc: New.
6836	* libsupc++/new_opant.cc: New.
6837	* libsupc++/new_opva.cc: New.
6838	* libsupc++/new_opva.cc: New.
6839	* libsupc++/del_opa.cc: New.
6840	* libsupc++/del_opant.cc: New.
6841	* libsupc++/del_opsa.cc: New.
6842	* libsupc++/del_opva.cc: New.
6843	* libsupc++/del_opvant.cc: New.
6844	* libsupc++/del_opvsa.cc: New.
6845	* libsupc++/Makefile.am: Build them.
6846
68472016-09-05  Tim Shen  <timshen@google.com>
6848
6849	* include/std/variant: include bits/move.h for std::addressof.
6850
68512016-09-05  Mikhail Strelnikov  <mikhail.strelnikov@gmail.com>
6852
6853	* include/std/variant (_Variant_storage::_M_storage()): Use
6854	std::addressof instead of operator& to take address.
6855
68562016-09-02  Maxim Kuvyrkov  <maxim.kuvyrkov@linaro.org>
6857
6858	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
6859	setrlimit on both native and cross targets.
6860	* configure: Regenerate.
6861
68622016-08-31  Jonathan Wakely  <jwakely@redhat.com>
6863
6864	* include/bits/shared_ptr.h (_Assignable): New alias template.
6865	(shared_ptr::operator=(const shared_ptr<_Tp1>&))
6866	(shared_ptr::operator=(shared_ptr<_Tp1>&&))
6867	(shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6868	_Assignable.
6869	* include/bits/shared_ptr_base.h (_Assignable): New alias template.
6870	(__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
6871	(__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
6872	(__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6873	_Assignable.
6874	(__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
6875	(__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
6876	_Convertible.
6877	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
6878	match on any line.
6879	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6880	* testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
6881	* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
6882	expected errors. Remove unnecessary code.
6883	* testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
6884
6885	* include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
6886	comparison object.
6887	* testsuite/23_containers/set/move_comparison.cc: New test.
6888
6889	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
6890	New test.
6891
68922016-08-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
6893
6894	PR libstdc++/77395
6895	* include/std/type_traits (is_constructible): Forward-declare...
6896	(__is_base_to_derived_ref): ...and use here.
6897	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
6898	* testsuite/20_util/is_constructible/77395.cc: New.
6899	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
6900	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6901	Likewise.
6902	* testsuite/20_util/tuple/77395.cc: New.
6903
69042016-08-30  Uros Bizjak  <ubizjak@gmail.com>
6905
6906	* testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
6907	directive above dg-require-namedlocale directive.
6908	* testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
6909	* testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
6910	* testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
6911	* testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
6912	* testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
6913
69142016-08-27  Tim Shen  <timshen@google.com>
6915
6916	PR libstdc++/77356
6917	* include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
6918	_M_expression_term): Modify to support dash literal.
6919	* include/bits/regex_scanner.h: Add dash as a token type to make
6920	a different from the mandated dash literal by escaping.
6921	* include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
6922	token in bracket expression parsing.
6923	* testsuite/28_regex/regression.cc: Add new testcases.
6924
69252016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6926
6927	PR libstdc++/51960
6928	* doc/xml/manual/intro.xml: Document DR 2127 change.
6929	* doc/html/*: Regenerate.
6930	* include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
6931	(operator++(), operator++(int)): Use injected class name.
6932	* testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
6933
6934	* testsuite/*: Use { target c++11 } or { target c++14 } instead of
6935	using -std in dg-options.
6936
69372016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6938	    Pedro Alves  <palves@redhat.com>
6939
6940	* testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
6941	and restore dg-interpreter-batch-mode.
6942	* testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
6943	gdb-dg-runtest instead of dg-runtest.
6944	* testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
6945
69462016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6947
6948	* config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
6949	precise patterns for basic_string constructors.
6950	(GLIBCXX_3.4.23): Export new constructors.
6951	* doc/xml/manual/intro.xml: Document LWG 2583 status.
6952	* doc/html/*: Regenerate.
6953	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6954	(basic_string(const basic_string&, size_type, const Alloc&)): Add
6955	new constructor for LWG 2583.
6956	(basic_string(const basic_string&, size_type, size_type)): Remove
6957	default argument.
6958	[!_GLIBCXX_USE_CXX11_ABI]: Likewise.
6959	* include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
6960	* testsuite/21_strings/basic_string/cons/char/8.cc: New test.
6961	* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
6962
69632016-08-24  Aditya Kumar  <hiraditya@msn.com>
6964
6965	* include/bits/algorithmfwd.h: Remove trailing whitespace.
6966	* include/bits/shared_ptr_base.h: Likewise.
6967
69682016-08-23  Jonathan Wakely  <jwakely@redhat.com>
6969
6970	* include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
6971	* include/profile/array (array): Likewise.
6972	(array::swap): Fix exception specification for zero-sized arrays.
6973
6974	PR libstdc++/77334
6975	* include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
6976	(_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
6977	* testsuite/23_containers/map/77334.cc: New test.
6978
6979	* doc/xml/manual/using.xml: Remove reference to -pthreads option.
6980	* doc/html/*: Regenerate.
6981
6982	* testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
6983	* testsuite/experimental/feat-lib-fund.cc: Likewise.
6984
6985	PR libstdc++/71771
6986	* include/bits/stl_iterator.h
6987	(operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
6988	define for C++98 mode.
6989	(operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
6990	* testsuite/24_iterators/headers/iterator/synopsis.cc: Use
6991	-std=gnu++98.
6992	* testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
6993	* testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
6994	* testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
6995	* testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
6996	difference operator.
6997	* testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
6998	difference operator for C++98.
6999	* testsuite/24_iterators/reverse_iterator/71771.cc: New test.
7000
7001	* include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
7002	* include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
7003	(crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
7004	* include/bits/stl_iterator.h (reverse_iterator, move_iterator)
7005	(__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
7006	Likewise.
7007	* include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
7008	_GLIBCXX14_CONSTEXPR.
7009	(distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
7010	* include/std/array (array::begin, array::end, array::rbegin)
7011	(array::rend, array::cbegin, array:cend, array::crbegin)
7012	(array::crend, array::operator[], array::at, array::front)
7013	(array::back, array::data): Likewise.
7014	* testsuite/24_iterators/headers/iterator/range_access.cc: Replace
7015	with separate tests for C++11, C++14, and C++17.
7016	* testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
7017	* testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
7018	* testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
7019
70202016-08-22  Tim Shen  <timshen@google.com>
7021
7022	Split _M_dfs() into smaller functions.
7023	* regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
7024	(_M_handle_subexpr_end, _M_handle_line_begin_assertion)
7025	(_M_handle_line_end_assertion, _M_handle_word_boundary)
7026	(_M_handle_subexpr_lookahead, _M_handle_match)
7027	(_M_handle_backref, _M_handle_accept, _M_handle_alternative):
7028	Add separate function declarations.
7029	* regex_executor.tcc: Split _M_dfs() into multiple handler functions.
7030
70312016-08-22  Gleb Natapov  <gleb@scylladb.com>
7032
7033	PR libstdc++/68297
7034	* config/abi/pre/gnu-versioned-namespace.ver: Export
7035	__cxa_init_primary_exception and std::exception_ptr(void*).
7036	* config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
7037	export __cxa_init_primary_exception and std::exception_ptr(void*).
7038	* include/Makefile.am: Add new headers.
7039	* include/Makefile.in: Regenerate.
7040	* libsupc++/Makefile.am: Add new headers.
7041	* libsupc++/Makefile.in: Regenerate.
7042	* libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
7043	* libsupc++/cxxabi_init_exception.h: New header.
7044	(__cxa_init_primary_exception): Declare.
7045	* libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
7046	(__cxa_throw): Use __cxa_init_primary_exception.
7047	* libsupc++/exception (std::exception): Move to ...
7048	* libsupc++/exception.h: New header.
7049	* libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
7050	friend declaration.
7051	(__exception_ptr::__dest_thunk): New function template.
7052	(std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
7053	Use __cxa_allocate_exception and __cxa_init_primary_exception to
7054	create exception_ptr.
7055	* libsupc++/typeinfo: Include bits/exception.h instead of exception.
7056	* testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
7057
70582016-08-22  Jonathan Wakely  <jwakely@redhat.com>
7059
7060	* doc/xml/api.xml: Replace hardcoded links for specific versions with
7061	link to docs for all releases.
7062	* doc/html/*: Regenerate.
7063
7064	PR libstdc++/77322
7065	* doc/xml/manual/intro.xml: Document DR 2062 change.
7066	* include/std/functional (function::swap): Add noexcept.
7067	(swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
7068	* testsuite/20_util/function/77322.cc: New test.
7069
70702016-08-19  Jonathan Wakely  <jwakely@redhat.com>
7071
7072	* testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
7073	*-*-solaris* instead of -pthreads.
7074	* testsuite/21_strings/basic_string/pthread4.cc : Likewise.
7075	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
7076	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
7077	* testsuite/23_containers/list/pthread1.cc: Likewise.
7078	* testsuite/23_containers/list/pthread5.cc: Likewise.
7079	* testsuite/23_containers/map/pthread6.cc: Likewise.
7080	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
7081	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
7082	* testsuite/30_threads/shared_mutex/*: Likewise.
7083	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
7084	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
7085	default_weaktoshared.cc: Likewise.
7086	* testsuite/tr1/2_general_utilities/shared_ptr/thread/
7087	mutex_weaktoshared.cc: Likewise.
7088	* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
7089	dg-require-effective-target instead of using -std option.
7090	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
7091	Likewise.
7092	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
7093	* testsuite/23_containers/vector/debug/multithreaded_swap.cc:
7094	Likewise.
7095	* testsuite/30_threads/async/*: Likewise.
7096	* testsuite/30_threads/call_once/*: Likewise.
7097	* testsuite/30_threads/condition_variable/*: Likewise.
7098	* testsuite/30_threads/condition_variable_any/*: Likewise.
7099	* testsuite/30_threads/future/*: Likewise.
7100	* testsuite/30_threads/lock/*: Likewise.
7101	* testsuite/30_threads/mutex/*: Likewise.
7102	* testsuite/30_threads/packaged_task/*: Likewise.
7103	* testsuite/30_threads/promise/*: Likewise.
7104	* testsuite/30_threads/recursive_mutex/*: Likewise.
7105	* testsuite/30_threads/recursive_timed_mutex/*: Likewise.
7106	* testsuite/30_threads/shared_future/*: Likewise.
7107	* testsuite/30_threads/shared_lock/*: Likewise.
7108	* testsuite/30_threads/shared_timed_mutex/*: Likewise.
7109	* testsuite/30_threads/this_thread/*: Likewise.
7110	* testsuite/30_threads/thread/*: Likewise.
7111	* testsuite/30_threads/timed_mutex/*: Likewise.
7112	* testsuite/30_threads/try_lock/*: Likewise.
7113	* testsuite/30_threads/unique_lock/*: Likewise.
7114
7115	* doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
7116	* doc/html/*: Regenerate.
7117	* include/experimental/functional (_Not_fn, not_fn): Match C++17
7118	semantics.
7119	* include/std/functional (_Not_fn, not_fn): Define for C++17.
7120	* testsuite/20_util/not_fn/1.cc: New.
7121	* testsuite/experimental/functional/not_fn.cc: Test abstract class.
7122	Remove test for volatile-qualified wrapper.
7123
7124	* include/std/atomic (atomic::is_always_lock_free): Define.
7125	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
7126	* testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
7127	* testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
7128	* doc/xml/manual/status_cxx2017.xml: Update status.
7129	* doc/html/*: Regenerate.
7130
7131	* include/experimental/tuple (apply): Qualify call to __apply_impl.
7132	* include/std/tuple (apply): Likewise.
7133	* testsuite/experimental/system_error/value.cc: Fix ambiguities in
7134	C++17 mode.
7135	* testsuite/experimental/tuple/tuple_size.cc: Likewise.
7136	* testsuite/experimental/type_traits/value.cc: Likewise.
7137
7138	* doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
7139	and variant.
7140	* doc/html/*: Regenerate.
7141
71422016-08-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
7143
7144	Implement the latest proposed resolution of LWG 2756.
7145	* include/std/optional (Optional_base(const _Tp&))
7146	(Optional_base(_Tp&&), using _Base::_Base): Remove.
7147	(optional(nullopt_t)): New.
7148	(optional(_Up&&)): Invoke base directly with in_place
7149	rather than creating a temporary, add default template
7150	argument, change constraints.
7151	(optional(const optional<_Up>&)): Invoke base directly
7152	with in_place, remove unnecessary constraints.
7153	(optional(optional<_Up>&& __t)): Likewise.
7154	(optional(in_place_t, _Args&&...)): New.
7155	(optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
7156	(operator=(_Up&&)): Add default template argument, change constraints.
7157	(operator=(const optional<_Up>&)): Put is_same first in the
7158	constraints.
7159	(operator=(optional<_Up>&&)): Likewise.
7160	* testsuite/20_util/optional/assignment/5.cc: Add a test to
7161	verify assignment from something that can't be perfect-forwarded.
7162	* testsuite/20_util/optional/cons/value.cc: Add tests to verify
7163	that a nested optional is disengaged when constructed
7164	from a disengaged element type,	and to verify that assignments
7165	from an engaged element type engage the optional.
7166
71672016-08-18  Tim Shen  <timshen@google.com>
7168
7169	Implement <variant>
7170
7171	* include/Makefile.am: Add new file std/variant.
7172	* include/Makefile.in: Generated from Makefile.am.
7173	* include/bits/enable_special_members.h: Add a tag type to allow
7174	the construction in non-default constructor.
7175	* include/bits/uses_allocator.h: Add convenience traits to
7176	detect constructibility.
7177	* include/std/variant: Implement <variant>.
7178	* testsuite/20_util/variant/compile.cc: Compile-time tests.
7179	* testsuite/20_util/variant/run.cc: Runtime tests.
7180
71812016-08-18  Jonathan Wakely  <jwakely@redhat.com>
7182
7183	* doc/xml/manual/test.xml (test.run.permutations): Expand section.
7184	(test.new_tests): Rewrite section.
7185	(tests.dg.directives): New section.
7186	* doc/html/*: Regenerate.
7187
7188	* doc/xml/manual/test.xml: Improve documentation of test targets.
7189	Document new-abi-baseline, check-debug, and check-parallel targets.
7190
7191	* doc/xml/manual/build_hacking.xml: New section on shared library
7192	versioning.
7193
7194	* doc/xml/manual/build_hacking.xml: Improve markup.
7195	* doc/xml/manual/test.xml: Likewise. Change section title from "Test"
7196	to "Testing".
7197	* doc/xml/faq.xml: Change link text to "Testing".
7198
7199	* testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
7200	dg-options directive.
7201
72022016-08-17  Jonathan Wakely  <jwakely@redhat.com>
7203
7204	* testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
7205	directive and use effective target instead of dg-options.
7206
7207	* testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
7208	instead of -std in dg-options.
7209	* testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
7210	* testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
7211	* testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
7212	* testsuite/20_util/hash/quality.cc: Likewise.
7213	* testsuite/25_algorithms/heap/moveable.cc: Likewise.
7214	* testsuite/25_algorithms/heap/moveable2.cc: Likewise.
7215	* testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
7216	* testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
7217	* testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
7218	* testsuite/25_algorithms/sort/random_test.cc: Likewise.
7219
7220	* testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
7221	* testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
7222	* testsuite/27_io/rvalue_streams.cc: Likewise.
7223
7224	* testsuite/26_numerics/complex/literals/types.cc: Add comment.
7225
7226	* testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
7227	Remove duplicate dg-options directive.
7228
7229	* testsuite/ext/profile/all.cc: Use effective target instead of
7230	-std=gnu++11. Use dg-additional-options instead of repeating options.
7231
7232	* testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
7233	-std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
7234	instead of dg-excess-errors.
7235
7236	* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
7237	test for C++17.
7238	* testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
7239	* testsuite/experimental/ratio/value.cc: Likewise.
7240	* testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
7241	C++17.
7242	* testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
7243	* testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
7244	* testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
7245	* testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
7246	* testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
7247	* testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
7248	* testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
7249	* testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
7250	* testsuite/tr1/5_numerical_facilities/special_functions/
7251	10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
7252	C++17 compatibility.
7253
7254	* testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
7255	expected signatures for C++14 compatibility.
7256
7257	PR libstdc++/77264
7258	* include/bits/basic_string.h (operator=(__sv_type)
7259	(append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
7260	(replace(size_type, size_type, __sv_type))
7261	(replace(const_iterator, const_iterator, __sv_type))
7262	(find(__sv_type, size_type), rfind(__sv_type, size_type))
7263	(compare(size_type, size_type, __sv_type)): Reformat.
7264	(_If_sv): Define helper for SFINAE constaints.
7265	(append(const _Tp&, size_type, size_type))
7266	(assign(const _Tp&, size_type, size_type))
7267	(insert(size_type, const _Tp&, size_type, size_type))
7268	(replace(size_type, size_type, const _Tp&, size_type, size_type)):
7269	Use _If_sv.
7270	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
7271	SFINAE constraints.
7272	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
7273	Likewise.
7274	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7275	Likewise.
7276	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
7277	Likewise.
7278	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
7279	Likewise.
7280	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
7281	Likewise.
7282	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
7283	Likewise.
7284	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
7285	Likewise.
7286	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7287	Likewise.
7288	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
7289	Likewise.
7290	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
7291	Likewise.
7292
72932016-08-16  Jonathan Wakely  <jwakely@redhat.com>
7294
7295	PR libstdc++/72847
7296	* include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
7297	pointers to start and end of storage.
7298	* testsuite/23_containers/vector/bool/72847.cc: New test.
7299	* include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
7300	_M_finish after deallocating.
7301	(vector<bool>::_M_fill_insert): Likewise.
7302	(vector<bool>::_M_insert_range): Likewise.
7303	(vector<bool>::_M_insert_aux): Likewise.
7304
73052016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
7306
7307	Implement LWG 2744 and LWG 2754.
7308	* include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
7309	(any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
7310	(any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
7311	Likewise.
7312	(emplace(_Args&&...)): Likewise.
7313	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
7314	* include/std/utility: (__is_in_place_type_impl): New.
7315	(__is_in_place_type): Likewise.
7316	* testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
7317	emplace.
7318	* testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
7319	in_place constructor.
7320	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
7321	* testsuite/20_util/any/requirements.cc: Add a test for
7322	in_place-constructing a non-default-constructible type.
7323
73242016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
7325
7326	Add a feature macro for C++17 make_from_tuple.
7327	* include/std/tuple (__cpp_lib_make_from_tuple): New.
7328	(__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
7329	Qualify the call to get<>().
7330	* testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
7331
73322016-08-15  Uros Bizjak  <ubizjak@gmail.com>
7333
7334	* src/filesystem/ops.cc: Always include ostream and
7335	ext/stdio_filebuf.h.
7336	(do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
7337	[_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
7338	sendfile fails with ENOSYS or EINVAL.
7339
73402016-08-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
7341
7342	PR libstdc++/72840
7343	* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
7344	syntax.
7345
73462016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
7347
7348	Implement C++17 make_from_tuple.
7349	* include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
7350	* testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
7351
73522016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
7353
7354	Implement LWG 2758.
7355	* include/bits/basic_string.h
7356	(append(__sv_type, size_type, size_type)): Turn into a template,
7357	change parameter type, constrain, add a conversion to __sv_type
7358	from the dependent parameter type.
7359	(assign(__sv_type, size_type, size_type)): Likewise.
7360	(insert(size_type, __sv_type, size_type, size_type)): Likewise.
7361	(replace(size_type, size_type, __sv_type, size_type, size_type)):
7362	Likewise.
7363	(compare(size_type, size_type,__sv_type, size_type, size_type)):
7364	Likewise.
7365	* testsuite/21_strings/basic_string/lwg2758.cc: New.
7366
73672016-08-06  Jonathan Wakely  <jwakely@redhat.com>
7368
7369	* doc/xml/manual/status_cxx2017.xml: Update status table.
7370	* doc/html/manual/status.html: Regenerate.
7371
7372	* testsuite/lib/libstdc++.exp: Fix typo in comment.
7373
7374	PR libstdc++/72820
7375	* include/std/functional (_Function_base::_Base_manager::_M_clone):
7376	Qualify new operator.
7377	* testsuite/20_util/function/cons/72820.cc: New test.
7378
7379	* doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
7380	* doc/html/manual/status.html: Regenerate.
7381	* include/Makefile.am: Add new header.
7382	* include/Makefile.in: Regenerate.
7383	* include/bits/invoke.h: New header.
7384	(__invoke): Make constexpr. Add && to types in exception specification.
7385	* include/experimental/tuple (apply, __apply_impl): Fix non-reserved
7386	names. Include <bits/invoke.h> and use std::__invoke.
7387	* include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
7388	new header.
7389	(invoke): Add && to types in exception specification.
7390	* include/std/tuple (apply, __apply_impl): Define for C++17.
7391	* testsuite/20_util/tuple/apply/1.cc: New test.
7392	* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
7393	lineno.
7394
73952016-08-05  Jonathan Wakely  <jwakely@redhat.com>
7396
7397	* doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
7398	* doc/html/manual/status.html: Regenerate.
7399
7400	* include/std/chrono (floor, ceil, round, abs): New for C++17.
7401	* testsuite/20_util/duration_cast/rounding.cc: New test.
7402	* testsuite/20_util/time_point_cast/rounding.cc: New test.
7403	* doc/xml/manual/status_cxx2017.xml: Update status table.
7404	* doc/html/manual/status.html: Regenerate.
7405	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
7406	dg-error lineno.
7407	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7408	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7409	* testsuite/20_util/duration/literals/range.cc: Likewise.
7410
7411	* include/std/functional (__callable_functor): Remove.
7412	(_Function_handler::_M_invoke): Use __invoke instead of
7413	__callable_functor or mem_fn.
7414	(function::_Callable): Use lvalue in result_of expression.
7415	(function): Remove TODO comments about allocators.
7416	* testsuite/20_util/function/cons/refqual.cc: New test.
7417
74182016-08-04  Jonathan Wakely  <jwakely@redhat.com>
7419
7420	* doc/xml/manual/status_cxx2017.xml: Update status table.
7421	* include/std/functional (__inv_unwrap): Move to <type_traits>.
7422	(__invoke_impl): Remove exception specifications.
7423	(__invoke, invoke): Add exception specifications using
7424	__is_nothrow_callable.
7425	* include/std/type_traits (__inv_unwrap): Move from <functional>.
7426	(__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
7427	(__is_callable, __is_nothrow_callable): New traits.
7428	(is_callable, is_callable_v): New C++17 traits.
7429	(is_nothrow_callable, is_nothrow_callable_v): Likewise.
7430	* testsuite/20_util/is_callable/requirements/
7431	explicit_instantiation.cc: New test.
7432	* testsuite/20_util/is_callable/requirements/
7433	explicit_instantiation_ext.cc: New test.
7434	* testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
7435	* testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
7436	test.
7437	* testsuite/20_util/is_callable/value.cc: New test.
7438	* testsuite/20_util/is_callable/value_ext.cc: New test.
7439	* testsuite/20_util/is_nothrow_callable/requirements/
7440	explicit_instantiation.cc: New test.
7441	* testsuite/20_util/is_nothrow_callable/requirements/
7442	explicit_instantiation_ext.cc: New test.
7443	* testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
7444	New test.
7445	* testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
7446	New test.
7447	* testsuite/20_util/is_nothrow_callable/value.cc: New test.
7448	* testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
7449
7450	* doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
7451	* doc/html/manual/status.html: Regenerate.
7452
7453	* testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
7454	effective target not dg-options. Move check for feature-test macro to:
7455	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
7456	New test.
7457
7458	* include/std/functional (_Unwrap): Rename to __inv_unwrap.
7459	(__invfwd): Adjust.
7460	(__invoke_impl): Remove unused template parameters.
7461	* testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
7462	parameter.
7463	* testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
7464	and test __invoke extension for C++11.
7465
74662016-08-03  Jonathan Wakely  <jwakely@redhat.com>
7467
7468	* include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
7469	Define feature-test macro.
7470	* testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
7471	for the macro.
7472
7473	* include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
7474	* include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
7475	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
7476	* testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
7477	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
7478
7479	* include/std/utility (as_const): Define.
7480	* testsuite/20_util/as_const/1.cc: New test.
7481	* testsuite/20_util/as_const/rvalue_neg.cc: New test.
7482
7483	* include/bits/shared_ptr.h (owner_less): Add default template
7484	argument.
7485	* include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
7486	specialization.
7487	(owner_less<void>): Define specialization.
7488	* include/bits/stl_function.h (__cpp_lib_transparent_operators):
7489	Update value.
7490	* testsuite/20_util/owner_less/void.cc: New test.
7491	* testsuite/experimental/feat-cxx14.cc: Update macro value tested.
7492
7493	* include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
7494	Define feature-test macro.
7495	* include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
7496	* include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
7497	* include/std/type_traits (__cpp_lib_logical_traits): Fix value.
7498	(__cpp_lib_type_trait_variable_templates): Define.
7499
7500	* include/bits/stl_function.h: Remove commented-out macro.
7501	* include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
7502	Define feature-test macro.
7503	* testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
7504
7505	* include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
7506	C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
7507	true.
7508	* include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
7509	do #error for C++17.
7510	* include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
7511	of __STDCPP_WANT_MATH_SPEC_FUNCS__.
7512	* include/tr1/bessel_function.tcc: Likewise.
7513	* include/tr1/beta_function.tcc: Likewise.
7514	* include/tr1/cmath: Likewise.
7515	* include/tr1/ell_integral.tcc: Likewise.
7516	* include/tr1/exp_integral.tcc: Likewise.
7517	* include/tr1/gamma.tcc: Likewise.
7518	* include/tr1/hypergeometric.tcc: Likewise.
7519	* include/tr1/legendre_function.tcc: Likewise.
7520	* include/tr1/modified_bessel_func.tcc: Likewise.
7521	* include/tr1/poly_hermite.tcc: Likewise.
7522	* include/tr1/poly_laguerre.tcc: Likewise.
7523	* include/tr1/riemann_zeta.tcc: Likewise.
7524	* include/tr1/special_function_util.h: Likewise.
7525	* testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
7526
7527	* include/std/type_traits (has_trivial_default_constructor): Remove.
7528	(has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
7529	* testsuite/20_util/has_trivial_copy_assign/requirements/
7530	explicit_instantiation.cc: Remove test.
7531	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
7532	line number.
7533	* testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
7534	Likewise.
7535	* testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
7536	* testsuite/20_util/has_trivial_copy_constructor/requirements/
7537	explicit_instantiation.cc: Likewise.
7538	* testsuite/20_util/has_trivial_copy_constructor/requirements/
7539	typedefs.cc: Likewise.
7540	* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
7541	* testsuite/20_util/has_trivial_default_constructor/requirements/
7542	explicit_instantiation.cc: Likewise.
7543	* testsuite/20_util/has_trivial_default_constructor/requirements/
7544	typedefs.cc: Likewise.
7545	* testsuite/20_util/has_trivial_default_constructor/value.cc:
7546	Likewise.
7547	* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7548	Check has_trivial_default_constructor, has_trivial_copy_constructor,
7549	and has_trivial_copy_assign are not defined.
7550	* testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
7551	tests.
7552	* testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
7553	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
7554	dg-error line number.
7555	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7556	Likewise.
7557
75582016-08-02  Jonathan Wakely  <jwakely@redhat.com>
7559
7560	* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
7561	Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
7562	* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
7563	Likewise.
7564	* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
7565	Likewise.
7566	* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
7567	Likewise.
7568	* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
7569	Likewise.
7570	* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
7571	Likewise.
7572	* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
7573	Likewise.
7574
7575	* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
7576	comments.
7577
7578	* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
7579	dg-error to relevant line.
7580	* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
7581	Likewise.
7582	* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
7583
7584	* scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
7585
7586	* testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
7587	options are present that aren't valid for C.
7588	* testsuite/abi/header_cxxabi.c: Likewise.
7589
7590	* testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
7591	check_value.cc: Do not add special functions to namespace std in TR1
7592	test.
7593
7594	* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
7595	run for C++11 and later.
7596	* testsuite/ext/special_functions/conf_hyperg/check_value.cc:
7597	Likewise.
7598	* testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
7599	* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
7600	* testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
7601	* testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
7602	* testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
7603	Likewise.
7604	* testsuite/special_functions/01_assoc_laguerre/check_value.cc:
7605	Likewise.
7606	* testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
7607	* testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
7608	Likewise.
7609	* testsuite/special_functions/02_assoc_legendre/check_nan.cc:
7610	Likewise.
7611	* testsuite/special_functions/02_assoc_legendre/check_value.cc:
7612	Likewise.
7613	* testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
7614	* testsuite/special_functions/02_assoc_legendre/compile_2.cc:
7615	* testsuite/special_functions/03_beta/check_nan.cc: Likewise.
7616	* testsuite/special_functions/03_beta/check_value.cc: Likewise.
7617	* testsuite/special_functions/03_beta/compile.cc: Likewise.
7618	* testsuite/special_functions/03_beta/compile_2.cc: Likewise.
7619	* testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
7620	* testsuite/special_functions/04_comp_ellint_1/check_value.cc:
7621	Likewise.
7622	* testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
7623	* testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
7624	* testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
7625	* testsuite/special_functions/05_comp_ellint_2/check_value.cc:
7626	Likewise.
7627	* testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
7628	* testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
7629	* testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
7630	* testsuite/special_functions/06_comp_ellint_3/check_value.cc:
7631	Likewise.
7632	* testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
7633	* testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
7634	* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
7635	* testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
7636	Likewise.
7637	* testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
7638	* testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
7639	* testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
7640	* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
7641	* testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
7642	Likewise.
7643	* testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
7644	* testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
7645	* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
7646	* testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
7647	Likewise.
7648	* testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
7649	* testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
7650	* testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
7651	* testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
7652	* testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
7653	* testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
7654	* testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
7655	* testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
7656	* testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
7657	* testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
7658	* testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
7659	* testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
7660	* testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
7661	* testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
7662	* testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
7663	* testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
7664	* testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
7665	* testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
7666	* testsuite/special_functions/14_expint/check_nan.cc: Likewise.
7667	* testsuite/special_functions/14_expint/check_value.cc: Likewise.
7668	* testsuite/special_functions/14_expint/compile.cc: Likewise.
7669	* testsuite/special_functions/14_expint/compile_2.cc: Likewise.
7670	* testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
7671	* testsuite/special_functions/15_hermite/check_value.cc: Likewise.
7672	* testsuite/special_functions/15_hermite/compile.cc: Likewise.
7673	* testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
7674	* testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
7675	* testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
7676	* testsuite/special_functions/16_laguerre/compile.cc: Likewise.
7677	* testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
7678	* testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
7679	* testsuite/special_functions/17_legendre/check_value.cc: Likewise.
7680	* testsuite/special_functions/17_legendre/compile.cc: Likewise.
7681	* testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
7682	* testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
7683	* testsuite/special_functions/18_riemann_zeta/check_value.cc:
7684	Likewise.
7685	* testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
7686	* testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
7687	* testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
7688	* testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
7689	* testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
7690	* testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
7691	* testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
7692	* testsuite/special_functions/20_sph_legendre/check_value.cc:
7693	Likewise.
7694	* testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
7695	* testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
7696	* testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
7697	* testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
7698	* testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
7699	* testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
7700
7701	* testsuite/tr1/5_numerical_facilities/special_functions/
7702	08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
7703	of [[gnu::unused]].
7704	* testsuite/tr1/5_numerical_facilities/special_functions/
7705	09_cyl_bessel_j/check_value.cc: Likewise.
7706	* testsuite/tr1/5_numerical_facilities/special_functions/
7707	10_cyl_bessel_k/check_value.cc: Likewise.
7708	* testsuite/tr1/5_numerical_facilities/special_functions/
7709	11_cyl_neumann/check_value.cc: Likewise.
7710	* testsuite/tr1/5_numerical_facilities/special_functions/
7711	21_sph_bessel/check_value.cc: Likewise.
7712	* testsuite/tr1/5_numerical_facilities/special_functions/
7713	23_sph_neumann/check_value.cc: Likewise.
7714
77152016-08-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7716
7717	* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
7718	* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
7719	* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
7720	* config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
7721	* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
7722	* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
7723
77242016-08-02  Jonathan Wakely  <jwakely@redhat.com>
7725
7726	* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
7727	test if -flto used.
7728
7729	* testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
7730	additional flags for compiling libtestc++.a objects.
7731
77322016-08-01  Jonathan Wakely  <jwakely@redhat.com>
7733
7734	* include/bits/basic_string.h (data() const): Update comment.
7735	(data()): Add non-const overload for C++17.
7736	* testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
7737	* testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
7738
7739	* include/bits/basic_string.tcc: Disable explicit instantiation
7740	declarations for C++17.
7741
7742	* testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
7743	ignored "xfail" from { dg-do compile { xfail selector } } directive.
7744	* testsuite/23_containers/unordered_multimap/requirements/53339.cc:
7745	Likewise.
7746	* testsuite/26_numerics/headers/cmath/
7747	c99_classification_macros_c++11.cc: Likewise.
7748	* testsuite/26_numerics/headers/cmath/
7749	c99_classification_macros_c++98.cc: Likewise.
7750	* testsuite/26_numerics/headers/cmath/
7751	c99_classification_macros_c.cc: Likewise.
7752
7753	* testsuite/backward/hash_set/check_construct_destroy.cc: Account
7754	for different construct/destroy counts in C++98 mode.
7755
7756	* testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
7757
7758	* testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
7759	later.
7760	* testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
7761	Likewise.
7762
7763	* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
7764	C++98-compatible initialization for array.
7765
7766	* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
7767	unused header and variable from compile-only test.
7768	* testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
7769	* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
7770	* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
7771	* testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
7772	Likewise.
7773
7774	* testsuite/experimental/string_view/operations/rfind/char/2.cc:
7775	Remove duplicate dg-options directive.
7776
7777	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
7778	808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
7779
7780	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
7781	linker options from compile-only tests.
7782	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7783	Likewise.
7784
7785	* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
7786	supported for C++11 and later.
7787	* testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
7788	* testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
7789
77902016-08-01  Uros Bizjak  <ubizjak@gmail.com>
7791
7792	* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
7793
77942016-07-31  Jonathan Wakely  <jwakely@redhat.com>
7795
7796	* testsuite/20_util/conditional/requirements/typedefs.cc: Change to
7797	compile-only test.
7798
7799	* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7800	Ensure test is compiled with optimization.
7801
7802	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7803	Adjust dg-prune-output pattern for error in C++98 mode.
7804
7805	* testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
7806	run for C++11 or later.
7807
7808	* testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
7809	test to not rely on GNU extension (escaped normal characters in POSIX
7810	BRE). Enable tests for other strings which are now supported.
7811
7812	* testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
7813	c++11 instead of setting -std=gnu++14.
7814
7815	PR libstdc++/72745
7816	* include/std/array (get): Use positive message for static assertions.
7817	* include/std/functional (_Safe_tuple_element_t): Fix indentation.
7818	* include/std/tuple (tuple_element<I, tuple<>>): Add partial
7819	specialization for invalid indices, with static assertion.
7820	* testsuite/20_util/tuple/element_access/get_neg.cc: New test.
7821
7822	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
7823	dg-error to relevant line.
7824	* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7825	Likewise.
7826	* testsuite/23_containers/forward_list/requirements/dr438/
7827	assign_neg.cc: Likewise.
7828	* testsuite/23_containers/forward_list/requirements/dr438/
7829	constructor_1_neg.cc: Likewise.
7830	* testsuite/23_containers/forward_list/requirements/dr438/
7831	constructor_2_neg.cc: Likewise.
7832	* testsuite/23_containers/forward_list/requirements/dr438/
7833	insert_neg.cc: Likewise.
7834	* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
7835	Likewise.
7836	* testsuite/26_numerics/random/linear_congruential_engine/
7837	requirements/non_uint_neg.cc: Likewise.
7838	* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
7839	Likewise. Also test for std::atomic_address.
7840
78412016-07-31  Ville Voutilainen  <ville.voutilainen@gmail.com>
7842
7843	Add missing variable traits, fix testsuite failures.
7844	* include/bits/uses_allocator.h (uses_allocator_v): New.
7845	* include/std/functional (is_bind_expression_v, is_placeholder_v):
7846	Likewise.
7847	* testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
7848	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
7849	* testsuite/20_util/duration/literals/range.cc: Likewise.
7850	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
7851	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7852	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7853	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
7854	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7855	Likewise.
7856	* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
7857	* testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
7858	New.
7859
78602016-07-31  Jonathan Wakely  <jwakely@redhat.com>
7861
7862	* testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
7863	not test 128-bit types.
7864	* testsuite/20_util/is_floating_point/value.cc: Likewise.
7865	* testsuite/20_util/is_integral/value.cc: Likewise.
7866	* testsuite/20_util/is_signed/value.cc: Likewise.
7867	* testsuite/20_util/is_unsigned/value.cc: Likewise.
7868	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
7869	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
7870	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
7871	Likewise.
7872	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7873	Likewise.
7874
7875	* testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
7876
78772016-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
7878
7879	Implement C++17 variable templates for type traits.
7880	* include/std/chrono (treat_as_floating_point_v): New.
7881	* include/std/ratio (ratio_equal_v, ratio_not_equal_v)
7882	(ratio_less_v, ratio_less_equal_v, ratio_greater_v)
7883	(ratio_greater_equal_v): Likewise.
7884	* include/std/system_error (is_error_code_enum_v)
7885	(is_error_condition_enum_v): Likewise.
7886	* include/std/tuple (tuple_size_v): Likewise.
7887	* type_traits (conjunction_v, disjunction_v, negation_v)
7888	(is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
7889	(is_array_v, is_pointer_v, is_lvalue_reference_v)
7890	(is_rvalue_reference_v, is_member_object_pointer_v)
7891	(is_member_function_pointer_v, is_enum_v, is_union_v)
7892	(is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
7893	(is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
7894	(is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
7895	(is_trivially_copyable_v, is_standard_layout_v)
7896	(is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
7897	(is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
7898	(is_constructible_v, is_default_constructible_v)
7899	(is_copy_constructible_v, is_move_constructible_v)
7900	(is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
7901	(is_destructible_v, is_trivially_constructible_v)
7902	(is_trivially_default_constructible_v)
7903	(is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
7904	(is_trivially_assignable_v, is_trivially_copy_assignable_v)
7905	(is_trivially_move_assignable_v, is_trivially_destructible_v)
7906	(is_nothrow_constructible_v, is_nothrow_default_constructible_v)
7907	(is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
7908	(is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
7909	(is_nothrow_move_assignable_v, is_nothrow_destructible_v)
7910	(has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
7911	(is_same_v, is_base_of_v, is_convertible_v): Likewise.
7912	* testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
7913	* testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
7914	Likewise.
7915	* testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
7916	* testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
7917	* testsuite/20_util/variable_templates_for_traits.cc: Likewise.
7918
79192016-07-29  Andreas Schwab  <schwab@linux-m68k.org>
7920
7921	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
7922	* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
7923	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
7924
79252016-07-29  Jonathan Wakely  <jwakely@redhat.com>
7926
7927	* doc/xml/manual/abi.xml: Document 6.0.22 library version.
7928	* doc/html/manual/abi.html: Regenerate.
7929
7930	* acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
7931	* config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
7932	symbols.
7933	* configure: Regenerate.
7934	* testsuite/util/testsuite_abi.cc: Add new symbol version.
7935
7936	* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
7937	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
7938	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
7939	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
7940	Likewise.
7941	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
7942	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
7943	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
7944
79452016-07-28  Jonathan Wakely  <jwakely@redhat.com>
7946
7947	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
7948	Adjust dg-prune-output pattern for error in C++98 mode.
7949	* testsuite/23_containers/deque/requirements/dr438/
7950	constructor_1_neg.cc: Likewise.
7951	* testsuite/23_containers/deque/requirements/dr438/
7952	constructor_2_neg.cc: Likewise.
7953	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
7954	Likewise.
7955	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
7956	Likewise.
7957	* testsuite/23_containers/list/requirements/dr438/
7958	constructor_1_neg.cc: Likewise.
7959	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7960	Likewise.
7961	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
7962	Likewise.
7963	* testsuite/23_containers/vector/requirements/dr438/
7964	constructor_1_neg.cc: Likewise.
7965	* testsuite/23_containers/vector/requirements/dr438/
7966	constructor_2_neg.cc: Likewise.
7967	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
7968	Likewise.
7969
7970	* testsuite/23_containers/vector/check_construct_destroy.cc: Account
7971	for different construct/destroy counts in C++98 mode.
7972
7973	* testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
7974	dg-options to dg-additional-options so that default options are used.
7975	* testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
7976	Likewise.
7977	* testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
7978	* testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
7979	Likewise.
7980	* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7981	Use dg-additional-options instead of repeating the common options.
7982
7983	* testsuite/22_locale/conversions/string/1.cc: Remove unintended
7984	dg-do compile directive.
7985	* testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
7986	dg-do directive.
7987	* testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
7988
79892016-07-28  Ville Voutilainen  <ville.voutilainen@gmail.com>
7990
7991	Implement std::string_view and P0254r2,
7992	Integrating std::string_view and std::string.
7993	* include/Makefile.am: Add string_view and string_view.tcc
7994	to the exported headers.
7995	* include/Makefile.in: Likewise.
7996	* include/bits/basic_string.h: Include <string_view> in C++17 mode.
7997	(__sv_type): New.
7998	(basic_string(__sv_type, const _Alloc&)): Likewise.
7999	(operator=(__sv_type)): Likewise.
8000	(operator __sv_type()): Likewise.
8001	(operator+=(__sv_type)): Likewise.
8002	(append(__sv_type __sv)): Likewise.
8003	(append(__sv_type, size_type, size_type)): Likewise.
8004	(assign(__sv_type)): Likewise.
8005	(assign(__sv_type, size_type, size_type)): Likewise.
8006	(insert(size_type, __sv_type)): Likewise.
8007	(insert(size_type, __sv_type, size_type, size_type)): Likewise.
8008	(replace(size_type, size_type, __sv_type)): Likewise.
8009	(replace(size_type, size_type, __sv_type, size_type, size_type)):
8010	Likewise.
8011	(replace(const_iterator, const_iterator, __sv_type)): Likewise.
8012	(find(__sv_type, size_type)): Likewise.
8013	(rfind(__sv_type, size_type)): Likewise.
8014	(find_first_of(__sv_type, size_type)): Likewise.
8015	(find_last_of(__sv_type, size_type)): Likewise.
8016	(find_first_not_of(__sv_type, size_type)): Likewise.
8017	(find_last_not_of(__sv_type, size_type)): Likewise.
8018	(compare(__sv_type)): Likewise.
8019	(compare(size_type, size_type, __sv_type)): Likewise.
8020	(compare(size_type, size_type, __sv_type, size_type, size_type)):
8021	Likewise.
8022	* include/bits/string_view.tcc: New.
8023	* include/std/string_view: Likewise.
8024	* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
8025	* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
8026	* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
8027	Likewise.
8028	* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
8029	Likewise.
8030	* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
8031	Likewise.
8032	* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
8033	Likewise.
8034	* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
8035	Likewise.
8036	* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
8037	Likewise.
8038	* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
8039	Likewise.
8040	* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
8041	Likewise.
8042	* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
8043	Likewise.
8044	* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
8045	Likewise.
8046	* testsuite/21_strings/basic_string/operations/find/char/5.cc:
8047	Likewise.
8048	* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
8049	Likewise.
8050	* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
8051	* testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
8052	* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
8053	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
8054	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
8055	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
8056	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
8057	* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
8058	* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
8059	* testsuite/21_strings/basic_string_view/element_access/char/1.cc:
8060	Likewise.
8061	* testsuite/21_strings/basic_string_view/element_access/char/2.cc:
8062	Likewise.
8063	* testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
8064	Likewise.
8065	* testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
8066	Likewise.
8067	* testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
8068	Likewise.
8069	* testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
8070	Likewise.
8071	* testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
8072	Likewise.
8073	* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
8074	Likewise.
8075	* testsuite/21_strings/basic_string_view/include.cc: Likewise.
8076	* testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
8077	* testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
8078	* testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
8079	* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
8080	Likewise.
8081	* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
8082	Likewise.
8083	* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
8084	Likewise.
8085	* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
8086	Likewise.
8087	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
8088	Likewise.
8089	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
8090	Likewise.
8091	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
8092	Likewise.
8093	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
8094	Likewise.
8095	* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
8096	Likewise.
8097	* testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
8098	Likewise.
8099	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
8100	Likewise.
8101	* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
8102	Likewise.
8103	* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
8104	Likewise.
8105	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
8106	Likewise.
8107	* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
8108	Likewise.
8109	* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
8110	Likewise.
8111	* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
8112	Likewise.
8113	* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
8114	Likewise.
8115	* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
8116	Likewise.
8117	* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
8118	Likewise.
8119	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
8120	Likewise.
8121	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
8122	Likewise.
8123	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
8124	Likewise.
8125	* testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
8126	Likewise.
8127	* testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
8128	Likewise.
8129	* testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
8130	Likewise.
8131	* testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
8132	Likewise.
8133	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
8134	Likewise.
8135	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
8136	Likewise.
8137	* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
8138	Likewise.
8139	* testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
8140	Likewise.
8141	* testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
8142	Likewise.
8143	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
8144	Likewise.
8145	* testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
8146	* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
8147	Likewise.
8148	* testsuite/21_strings/basic_string_view/range_access/char/1.cc:
8149	Likewise.
8150	* testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
8151	Likewise.
8152	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
8153	Likewise.
8154	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
8155	Likewise.
8156	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
8157	Likewise.
8158	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
8159	Likewise.
8160	* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
8161	Likewise.
8162	* testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
8163	Likewise.
8164	* testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
8165	* testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
8166
81672016-07-27  Jonathan Wakely  <jwakely@redhat.com>
8168
8169	* testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
8170
81712016-07-25  Georeth Chow  <georeth2010@gmail.com>
8172
8173	* include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
8174	_S_concat enumerator.
8175	* testsuite/ext/rope/6.cc: New test.
8176
81772016-07-25  Jonathan Wakely  <jwakely@redhat.com>
8178
8179	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
8180	std::mt19937, std::thread and std::atomic to simplify test.
8181	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
8182
81832016-07-22  Jonathan Wakely  <jwakely@redhat.com>
8184
8185	PR libstdc++/71964
8186	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8187	(basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
8188	* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
8189	* testsuite/21_strings/basic_string/allocator/71964.cc: New test.
8190	* testsuite/23_containers/set/allocator/71964.cc: New test.
8191
8192	* testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
8193	delete[] instead of delete.
8194
81952016-07-21  Jonathan Wakely  <jwakely@redhat.com>
8196
8197	* include/experimental/propagate_const (propagate_const::__t): Rename
8198	to _M_t and remove comment. Qualify std::move and std::forward.
8199	* testsuite/experimental/propagate_const/cons/default.cc: Fix test.
8200
8201	* testsuite/23_containers/vector/zero_sized_allocations.cc:
8202	Define sized deallocation function.
8203	* testsuite/util/testsuite_new_operators.h:
8204	(operator delete(void*, const std::nothrow_t&)): Define nothrow
8205	deallocation function.
8206
8207	* testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
8208	reads past the end of strings.
8209	* testsuite/21_strings/basic_string/operations/compare/char/1.cc:
8210	Likewise.
8211	* testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
8212	invalid array accesses.
8213	* testsuite/experimental/string_view/operations/compare/char/1.cc:
8214	Fix read past the end of string.
8215	* testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
8216
8217	* testsuite/24_iterators/container_access.cc: Fix missing returns.
8218	* testsuite/24_iterators/range_access_cpp14.cc: Likewise.
8219
8220	* testsuite/18_support/new_delete_placement.cc: Don't allocate (and
8221	leak) memory for arguments to placement delete.
8222	* testsuite/20_util/addressof/1.cc: Don't leak memory.
8223	* testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
8224	* testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
8225	Likewise.
8226
82272016-07-20  Jonathan Wakely  <jwakely@redhat.com>
8228
8229	* doc/xml/manual/intro.xml: Document DR 2684 status.
8230	* doc/html/*: Regenerate.
8231
8232	* include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
8233	(atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
8234	(atomic_uint64_t): Define (LWG 2441).
8235	* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
8236	lines.
8237	* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
8238	the new types.
8239	* doc/xml/manual/intro.xml: Document DR 2441 status.
8240
8241	* include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
8242	to use perfect forwarding (LWG 2328).
8243	* testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
8244	* doc/xml/manual/intro.xml: Document DR 2328 status.
8245
8246	* libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
8247	static objects for catching nullptr as pointer to member types.
8248
82492016-07-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
8250
8251	Clean up optional's comments.
8252	* include/std/optional: Remove incorrect section headers
8253	from comments when redundant, replace bare section
8254	headers with more descriptive comments.
8255
82562016-07-15  Jonathan Wakely  <jwakely@redhat.com>
8257
8258	* include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
8259	* include/bits/move.h: Likewise.
8260	* include/bits/postypes.h: Likewise.
8261	* include/debug/bitset: Likewise.
8262	* include/ext/pb_ds/detail/type_utils.hpp: Likewise.
8263	* include/ext/string_conversions.h: Change C++0x to __cxx11 in
8264	comment.
8265	* testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
8266	* testsuite/util/thread/all.h: Likewise.
8267
8268	* include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
8269	and adjust comment.
8270
8271	PR c++/58796
8272	* libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
8273	nullptr match handlers of pointer type.
8274
82752016-07-15  Edward Smith-Rowland  <3dw4rd@verizon.net>
8276
8277	Implement C++17 P0025 clamp.
8278	* include/bits/algorithmfwd.h: Declare clamp overloads.
8279	* include/bits/stl_algo.h: Implement clamp.  Feature __cpp_lib_clamp.
8280	* testsuite/25_algorithms/clamp/1.cc: New test.
8281	* testsuite/25_algorithms/clamp/2.cc: New test.
8282	* testsuite/25_algorithms/clamp/constexpr.cc: New test.
8283	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8284	1.cc: New test.
8285	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8286	pod.cc: New test.
8287
82882016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
8289
8290	Fix the constraints for any's assignment operator template to properly
8291	reject assignment from a non-copyable lvalue.
8292	* include/std/any (operator=(_ValueType&&)): Constrain the decayed
8293	type for is_copy_constructible,
8294	* testsuite/20_util/any/requirements.cc: Add a test for
8295	non-copyable lvalues.
8296
82972016-07-14  Jonathan Wakely  <jwakely@redhat.com>
8298
8299	* include/experimental/functional: Include <parallel/algorithm> in
8300	Parallel Mode.
8301
8302	* testsuite/experimental/functional/searchers.cc: Include <algorithm>
8303	for std::search.
8304
8305	PR libstdc++/70716
8306	* include/bits/forward_list.h (forward_list): Update doxygen comments
8307	to reflect allocator propagation semantics. Remove ambiguous
8308	statements about data being lost.
8309	* include/bits/stl_deque.h (deque): Likewise.
8310	* include/bits/stl_list.h (list): Likewise.
8311	* include/bits/stl_map.h (map): Likewise.
8312	* include/bits/stl_multimap.h (multimap): Likewise.
8313	* include/bits/stl_multiset.h (multiset): Likewise.
8314	* include/bits/stl_set.h (set): Likewise.
8315	* include/bits/stl_vector.h (vector): Likewise.
8316	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
8317	Likewise.
8318	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
8319	Likewise.
8320
83212016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
8322
8323	Implement P0032R3, Homogeneous interface for variant, any and optional,
8324	for the parts concerning any and optional.
8325	* include/std/any (_Storage()): Make constexpr and have it
8326	initialize _M_ptr.
8327	(any()): Make constexpr.
8328	(any(const any&)): Adjust.
8329	(any(any&&)): Likewise.
8330	(__any_constructible_t): New.
8331	(any(_ValueType&&)): Constrain.
8332	(any(in_place_type_t<_Tp>, _Args&&...)): New.
8333	(any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
8334	Likewise.
8335	(~any()): Adjust.
8336	(operator=(const any&)): Likewise.
8337	(operator=(any&&)): Likewise.
8338	(operator=(_ValueType&&)): Constrain.
8339	(emplace(_Args&&...)): New.
8340	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
8341	(clear()): Remove.
8342	(reset()): New.
8343	(swap(any&)): Adjust.
8344	(empty()): Remove.
8345	(has_value()): New.
8346	(type()): Adjust.
8347	(_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
8348	(_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
8349	(make_any(_Args&&...)): Likewise.
8350	(make_any(initializer_list<_Up>, _Args&&...)): Likewise.
8351	* include/std/optional (in_place_t, in_place): Remove.
8352	(bad_optional_access): Add a comment referring to LEWG 72.
8353	(emplace(_Args&&...)): Constrain.
8354	(has_value()): New.
8355	(reset()): Likewise.
8356	(make_optional(_Args&&...)): Likewise.
8357	(make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
8358	* include/std/utility (in_place_tag): New.
8359	(__in_place, __in_place_type, __in_place_index): Likewise.
8360	(in_place_t, in_place_type_t, in_place_index_t): Likewise.
8361	(in_place(__in_place*)): Likewise.
8362	(in_place(__in_place_type<_Tp>*)): Likewise.
8363	(in_place(__in_place_index<_Idx>*)): Likewise.
8364	* testsuite/20_util/any/assign/1.cc: Adjust.
8365	* testsuite/20_util/any/assign/emplace.cc: New.
8366	* testsuite/20_util/any/assign/self.cc: Adjust.
8367	* testsuite/20_util/any/cons/1.cc: Likewise.
8368	* testsuite/20_util/any/cons/in_place.cc: New.
8369	* testsuite/20_util/any/make_any.cc: Likewise.
8370	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
8371	* testsuite/20_util/any/misc/swap.cc: Likewise.
8372	* testsuite/20_util/any/modifiers/1.cc: Likewise.
8373	* testsuite/20_util/any/requirements.cc: New.
8374	* testsuite/20_util/in_place/requirements.cc: Likewise.
8375	* testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
8376	* testsuite/20_util/optional/in_place.cc: Likewise.
8377	* testsuite/20_util/optional/make_optional.cc: Add tests for
8378	the new overloads of make_optional.
8379
83802016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
8381
8382	Implement P0307R2, Making Optional Greater Equal Again.
8383	* include/experimental/optional (_Has_addressof): Fix the comment.
8384	* include/std/optional (_Has_addressof): Likewise.
8385	(operator=(_Up&&)): Constrain.
8386	(operator=(const optional<_Up>&)): Likewise.
8387	(operator=(optional<_Up>&&)): Likewise.
8388	(__optional_relop_t): New.
8389	(operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8390	(operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8391	Constrain and make transparent.
8392	(operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8393	(operator>(const optional<_Tp>&, const optional<_Tp>&)):
8394	Constrain and make transparent.
8395	(operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8396	(operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8397	(operator==(const optional<_Tp>&, const _Tp&): Constrain.
8398	(operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8399	(operator!=(const optional<_Tp>&, _Tp const&)):
8400	Constrain and make transparent.
8401	(operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8402	(operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8403	(operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8404	(operator>(const optional<_Tp>&, const _Tp&)):
8405	Constrain and make transparent.
8406	(operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8407	(operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8408	(operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8409	(operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8410	(operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8411	* testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8412	* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8413	* testsuite/20_util/optional/relops/1.cc: Likewise.
8414	* testsuite/20_util/optional/relops/2.cc: Likewise.
8415	* testsuite/20_util/optional/relops/3.cc: Likewise.
8416	* testsuite/20_util/optional/relops/4.cc: Likewise.
8417	* testsuite/20_util/optional/requirements.cc: Add tests to verify
8418	that optional's relops are transparent and don't synthesize
8419	operators. Also test that assignment sfinaes.
8420
84212016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8422
8423	PR libstdc++/71856
8424	* include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
8425	* include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
8426	Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
8427	on _GLIBCXX_ASSERTIONS.
8428	* include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
8429	Include <unistd.h> for sleep.
8430	* include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
8431	* include/parallel/merge.h: Likewise.
8432	* include/parallel/multiway_merge.h: Likewise.
8433	* include/parallel/partition.h: Likewise.
8434	* include/parallel/queue.h: Likewise.
8435	* include/parallel/sort.h: Likewise.
8436	* testsuite/25_algorithms/headers/algorithm/
8437	parallel_algorithm_assert.cc: New.
8438
8439	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8440	(replace(__const_iterator, __const_iterator, initializer_list<C>)):
8441	Forward to different overload.
8442
8443	* include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
8444	static.
8445
84462016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8447
8448	Revert "Add non-const overload of std::string::data()".
8449
84502016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
8451
8452	Implement P0307R2, Making Optional Greater Equal Again.
8453	* include/experimental/optional (_Has_addressof): Fix the comment.
8454	* include/std/optional (_Has_addressof): Likewise.
8455	(operator=(_Up&&)): Constrain.
8456	(operator=(const optional<_Up>&)): Likewise.
8457	(operator=(optional<_Up>&&)): Likewise.
8458	(__optional_relop_t): New.
8459	(operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8460	(operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8461	Constrain and make transparent.
8462	(operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8463	(operator>(const optional<_Tp>&, const optional<_Tp>&)):
8464	Constrain and make transparent.
8465	(operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8466	(operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8467	(operator==(const optional<_Tp>&, const _Tp&): Constrain.
8468	(operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8469	(operator!=(const optional<_Tp>&, _Tp const&)):
8470	Constrain and make transparent.
8471	(operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8472	(operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8473	(operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8474	(operator>(const optional<_Tp>&, const _Tp&)):
8475	Constrain and make transparent.
8476	(operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8477	(operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8478	(operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8479	(operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8480	(operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8481	* testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8482	* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8483	* testsuite/20_util/optional/relops/1.cc: Likewise.
8484	* testsuite/20_util/optional/relops/2.cc: Likewise.
8485	* testsuite/20_util/optional/relops/3.cc: Likewise.
8486	* testsuite/20_util/optional/relops/4.cc: Likewise.
8487	* testsuite/20_util/optional/requirements.cc: Add tests to verify
8488	that optional's relops are transparent and don't synthesize
8489	operators. Also test that assignment sfinaes.
8490
84912016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8492
8493	* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
8494	New function.
8495	(_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
8496	instead of _M_data().
8497	(basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
8498	Likewise.
8499	(append(const basic_string&)): Likewise.
8500	(append(const basic_string&, size_type, size_type)): Likewise.
8501	(assign(const basic_string&, size_type, size_type)): Likewise.
8502	(insert(size_type, const basic_string&)): Likewise.
8503	(insert(size_type, const basic_string&, size_type, size_type)):
8504	Likewise.
8505	(replace(size_type, size_type, const basic_string&, size_type,
8506	size_type)): Likewise.
8507	(replace(__const_iterator, __const_iterator, const basic_string&)):
8508	Likewise.
8509	(c_str(), data()): Use c_str() instead of _M_data().
8510	(data()): Add non-const overload as per LWG 2391 and P0272R1.
8511	(compare(const basic_string&)): Use data() instead of _M_data().
8512	[!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
8513	* include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
8514	Pass raw pointers to _S_copy.
8515	(_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
8516	_S_assign.
8517	(find(const _CharT*, size_type, size_type)): Use data instead of
8518	_M_data().
8519	* testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
8520	* testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
8521	* testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
8522
85232016-07-12  Jonathan Wakely  <jwakely@redhat.com>
8524
8525	* libsupc++/new: Remove nothrow sized deletes (LWG 2458).
8526	* doc/xml/manual/intro.xml: Document DR 2458 status.
8527	* doc/html*: Regenerate.
8528
8529	* testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
8530	* testsuite/23_containers/array/tuple_interface/tuple_element.cc:
8531	Only include <array>.
8532	* testsuite/23_containers/array/tuple_interface/tuple_size.cc:
8533	Likewise.
8534	* doc/xml/manual/intro.xml: Document LWG 2212 support.
8535	* doc/html*: Regenerate.
8536
8537	* testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8538	Add testcase from LWG 2164.
8539
85402016-07-11  François Dumont  <fdumont@gcc.gnu.org>
8541
8542	* include/bits/stl_vector.h (push_back(const value_type&)): Forward
8543	to _M_realloc_insert.
8544	(insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8545	(_M_realloc_insert): Declare new function.
8546	(_M_emplace_back_aux): Remove definition.
8547	* include/bits/vector.tcc (emplace_back(_Args...)):
8548	Use _M_realloc_insert.
8549	(insert(const_iterator, const value_type&)): Likewise.
8550	(_M_insert_rval, _M_emplace_aux): Likewise.
8551	(_M_emplace_back_aux): Remove declaration.
8552	(_M_realloc_insert): Define.
8553	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8554	Adjust expected results for emplacing an lvalue with reallocation.
8555
85562016-07-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
8557
8558	Implement std::optional.
8559	* include/Makefile.am: Add optional to exported headers.
8560	* include/Makefile.in: Likewise.
8561	* include/std/optional: New.
8562	* testsuite/20_util/optional/typedefs.cc: Likewise.
8563	* testsuite/20_util/optional/relops/2.cc: Likewise.
8564	* testsuite/20_util/optional/relops/3.cc: Likewise.
8565	* testsuite/20_util/optional/relops/4.cc: Likewise.
8566	* testsuite/20_util/optional/relops/5.cc: Likewise.
8567	* testsuite/20_util/optional/relops/1.cc: Likewise.
8568	* testsuite/20_util/optional/relops/6.cc: Likewise.
8569	* testsuite/20_util/optional/nullopt.cc: Likewise.
8570	* testsuite/20_util/optional/in_place.cc: Likewise.
8571	* testsuite/20_util/optional/make_optional.cc: Likewise.
8572	* testsuite/20_util/optional/assignment/2.cc: Likewise.
8573	* testsuite/20_util/optional/assignment/3.cc: Likewise.
8574	* testsuite/20_util/optional/assignment/4.cc: Likewise.
8575	* testsuite/20_util/optional/assignment/5.cc: Likewise.
8576	* testsuite/20_util/optional/assignment/1.cc: Likewise.
8577	* testsuite/20_util/optional/assignment/6.cc: Likewise.
8578	* testsuite/20_util/optional/cons/value_neg.cc: Likewise.
8579	* testsuite/20_util/optional/cons/default.cc: Likewise.
8580	* testsuite/20_util/optional/cons/move.cc: Likewise.
8581	* testsuite/20_util/optional/cons/value.cc: Likewise.
8582	* testsuite/20_util/optional/cons/copy.cc: Likewise.
8583	* testsuite/20_util/optional/requirements.cc: Likewise.
8584	* testsuite/20_util/optional/observers/2.cc: Likewise.
8585	* testsuite/20_util/optional/observers/3.cc: Likewise.
8586	* testsuite/20_util/optional/observers/4.cc: Likewise.
8587	* testsuite/20_util/optional/observers/5.cc: Likewise.
8588	* testsuite/20_util/optional/observers/1.cc: Likewise.
8589	* testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
8590	* testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
8591	* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8592	* testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
8593	* testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
8594	* testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
8595	* testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
8596	* testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
8597	* testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
8598	* testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
8599	* testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
8600	* testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
8601	* testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
8602	* testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
8603	* testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
8604	* testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
8605	* testsuite/20_util/optional/swap/1.cc: Likewise.
8606
86072016-07-08  Jonathan Wakely  <jwakely@redhat.com>
8608
8609	* testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
8610
86112016-07-07  Jonathan Wakely  <jwakely@redhat.com>
8612
8613	* doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
8614	* doc/html/*: Regenerate.
8615
86162016-07-07  Ville Voutilainen  <ville.voutilainen@gmail.com>
8617
8618	Implement std::any.
8619	* include/Makefile.am: Add any and c++17_warning.h to exported headers.
8620	* include/Makefile.in: Likewise.
8621	* include/std/any: New.
8622	* testsuite/20_util/any/assign/1.cc: Likewise.
8623	* testsuite/20_util/any/assign/2.cc: Likewise.
8624	* testsuite/20_util/any/assign/self.cc: Likewise.
8625	* testsuite/20_util/any/cons/1.cc: Likewise.
8626	* testsuite/20_util/any/cons/2.cc: Likewise.
8627	* testsuite/20_util/any/cons/aligned.cc: Likewise.
8628	* testsuite/20_util/any/cons/nontrivial.cc: Likewise.
8629	* testsuite/20_util/any/misc/any_cast.cc: Likewise.
8630	* testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
8631	* testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
8632	* testsuite/20_util/any/misc/swap.cc: Likewise.
8633	* testsuite/20_util/any/modifiers/1.cc: Likewise.
8634	* testsuite/20_util/any/observers/type.cc: Likewise.
8635	* testsuite/20_util/any/typedefs.cc: Likewise.
8636
86372016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8638
8639	Add a new header for diagnosing the use of C++17 facilities
8640	in pre-C++17 modes.
8641	* include/bits/c++17_warning.h:	New.
8642
86432016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8644
8645	Implement LWG 2451, optional<T> should 'forward' T's
8646	implicit conversions.
8647	* include/experimental/optional (__is_optional_impl, __is_optional):
8648	New.
8649	(optional()): Make constexpr and default.
8650	(optional(_Up&&), optional(const optional<_Up>&),
8651	optional(optional<_Up>&& __t): New.
8652	(operator=(_Up&&)): Constrain.
8653	(operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
8654	* testsuite/experimental/optional/cons/value.cc:
8655	Add tests for the functionality added by LWG 2451.
8656	* testsuite/experimental/optional/cons/value_neg.cc: New.
8657
86582016-07-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8659
8660	Implement LWG 2509,
8661	any_cast doesn't work with rvalue reference targets and cannot
8662	move with a value target.
8663	* include/experimental/any (any(_ValueType&&)): Constrain and
8664	add an overload that doesn't forward.
8665	(any_cast(any&&)): Constrain and add an overload that moves.
8666	* testsuite/experimental/any/misc/any_cast.cc: Add tests for
8667	the functionality added by LWG 2509.
8668
86692016-07-04  François Dumont  <fdumont@gcc.gnu.org>
8670
8671	* testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8672	New test.
8673	* testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
8674	test.
8675
86762016-07-04  Jonathan Wakely  <jwakely@redhat.com>
8677
8678	* include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
8679	Define inline. Forward to _M_emplace_aux.
8680	(insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8681	(_M_insert_rval, _M_emplace_aux): Declare new functions.
8682	(_Temporary_value): New RAII type using allocator to construct/destroy.
8683	(_S_insert_aux_assign): Remove.
8684	(_M_insert_aux): Make non-variadic.
8685	* include/bits/vector.tcc (insert(const_iterator, const value_type&)):
8686	Use _Temporary_value.
8687	(emplace(const_iterator, _Args&&...)): Remove definition.
8688	(_M_insert_rval, _M_emplace_aux): Define.
8689	(_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
8690	(_M_fill_insert): Use _Temporary_value.
8691	* testsuite/23_containers/vector/allocator/construction.cc: New test.
8692	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8693	Adjust expected results for emplacing an lvalue with reallocation.
8694	* testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
8695	expected results to account for construction/destruction of temporary
8696	using allocator.
8697	* testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
8698
86992016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
8700
8701	PR libstdc++/71313
8702	* src/filesystem/ops.cc (remove_all(const path&, error_code&)):
8703	Call remove_all for children of a directory.
8704	* testsuite/experimental/filesystem/operations/create_directories.cc:
8705	Adjust.
8706
87072016-07-02  François Dumont  <fdumont@gcc.gnu.org>
8708
8709	* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
8710	dg-error line numbers.
8711	* testsuite/23_containers/array/tuple_interface/
8712	tuple_element_debug_neg.cc: Likewise.
8713	* testsuite/25_algorithms/lexicographical_compare/debug/
8714	irreflexive_neg.cc: Remove.
8715
87162016-06-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
8717
8718	* testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
8719	than specific target.
8720
87212016-06-27  François Dumont  <fdumont@gcc.gnu.org>
8722
8723	PR libstdc++/71640
8724	* include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
8725	friend declaration.
8726
87272016-06-23  François Dumont  <fdumont@gcc.gnu.org>
8728
8729	* include/debug/array (array<>::swap): Fix noexcept qualificaton for
8730	zero-size array.
8731
87322016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
8733
8734	* configure.host: Remove mep-* support.
8735
87362016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
8737
8738	* configure: Regenerate.
8739	* configure.host: Remove support for knetbsd.
8740	* crossconfig.m4: Likewise.
8741
87422016-06-20  François Dumont  <fdumont@gcc.gnu.org>
8743
8744	PR libstdc++/71181
8745	* include/tr1/hashtable_policy.h
8746	(_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
8747	dereferenceable to avoid check on lower_bound result.
8748	(_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
8749	(_Prime_rehash_policy::_M_need_rehash): Likewise.
8750	* src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
8751	Always return a value greater than input value. Set _M_next_resize to
8752	max value when reaching highest prime number.
8753	* src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
8754	being now useless.
8755	* testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
8756	* testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
8757	(test02): New.
8758	* testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
8759	* testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8760	Fix indentation.
8761
87622016-06-17  Jonathan Wakely  <jwakely@redhat.com>
8763
8764	PR libstdc++/71545
8765	* include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
8766	Remove irreflexive checks.
8767	* include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
8768	binary_search): Likewise.
8769	* testsuite/25_algorithms/equal_range/partitioned.cc: New test.
8770	* testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
8771	* testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
8772	* testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
8773	* testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
8774	Add constructor from array.
8775
87762016-06-16  François Dumont  <fdumont@gcc.gnu.org>
8777
8778	* include/debug/debug.h
8779	(__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
8780	(__glibcxx_requires_subscript): Move...
8781	* include/debug/assertions.h: ...here and add __builtin_expect.
8782	(_GLIBCXX_DEBUG_ONLY): Remove ; value.
8783	* include/bits/stl_deque.h
8784	(std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
8785	(std::deque<>::front()): Add __glibcxx_requires_nonempty check.
8786	(std::deque<>::back()): Likewise.
8787	(std::deque<>::pop_front()): Likewise.
8788	(std::deque<>::pop_back()): Likewise.
8789	(std::deque<>::swap(deque&)): Add allocator check.
8790	* include/bits/stl_vector.h
8791	(std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
8792	(std::vector<>::front()): Add __glibcxx_requires_nonempty check.
8793	(std::vector<>::back()): Likewise.
8794	(std::vector<>::pop_back()): Likewise.
8795	(std::vector<>::swap(vector&)): Add allocator check.
8796
87972016-06-16  Daniel Kruegler  <daniel.kruegler@gmail.com>
8798
8799	Provide swappable traits (p0185r1)
8800	* include/std/type_traits (is_swappable, is_nothrow_swappable,
8801	is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
8802	is_nothrow_swappable_v, is_swappable_with_v,
8803	is_nothrow_swappable_with_v): New.
8804	* include/bits/stl_pair.h: Use it as per p0185r1.
8805	* include/bits/stl_queue.h: Likewise.
8806	* include/bits/stl_stack.h: Likewise.
8807	* include/bits/unique_ptr.h: Likewise.
8808	* include/std/tuple: Likewise.
8809	* include/std/array: Likewise. Fix zero-size member swap.
8810	* include/bits/hashtable.h: Use __and_.
8811	* testsuite/20_util/is_nothrow_swappable/requirements/
8812	explicit_instantiation.cc: Change test options to std=gnu++17.
8813	* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
8814	Likewise.
8815	* testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
8816	* testsuite/20_util/is_swappable/requirements/
8817	explicit_instantiation.cc: Likewise.
8818	* testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
8819	* testsuite/20_util/is_swappable/value.cc: Likewise.
8820	* testsuite/20_util/is_nothrow_swappable/requirements/
8821	explicit_instantiation_ext.cc: New.
8822	* testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
8823	New.
8824	* testsuite/20_util/is_nothrow_swappable/value.h: New.
8825	* testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
8826	* testsuite/20_util/is_nothrow_swappable_with/requirements/
8827	explicit_instantiation.cc: New.
8828	* testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
8829	New.
8830	* testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
8831	* testsuite/20_util/is_swappable/requirements/
8832	explicit_instantiation_ext.cc: New.
8833	* testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
8834	* testsuite/20_util/is_swappable/value.h: New.
8835	* testsuite/20_util/is_swappable/value_ext.cc: New.
8836	* testsuite/20_util/is_swappable_with/requirements/
8837	explicit_instantiation.cc: New.
8838	* testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
8839	* testsuite/20_util/is_swappable_with/value.cc: New.
8840	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
8841	dg-error line numbers.
8842	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
8843	Likewise.
8844
88452016-06-16  Jonathan Wakely  <jwakely@redhat.com>
8846
8847	* include/std/array: Remove trailing whitespace.
8848	* include/std/atomic: Likewise.
8849	* include/std/bitset: Likewise.
8850	* include/std/chrono: Likewise.
8851	* include/std/complex: Likewise.
8852	* include/std/condition_variable: Likewise.
8853	* include/std/fstream: Likewise.
8854	* include/std/functional: Likewise.
8855	* include/std/future: Likewise.
8856	* include/std/iomanip: Likewise.
8857	* include/std/iosfwd: Likewise.
8858	* include/std/istream: Likewise.
8859	* include/std/limits: Likewise.
8860	* include/std/ratio: Likewise.
8861	* include/std/scoped_allocator: Likewise.
8862	* include/std/sstream: Likewise.
8863	* include/std/stdexcept: Likewise.
8864	* include/std/string: Likewise.
8865	* include/std/system_error: Likewise.
8866	* include/std/thread: Likewise.
8867	* include/std/tuple: Likewise.
8868	* include/std/type_traits: Likewise.
8869	* include/std/utility: Likewise.
8870	* include/std/valarray: Likewise.
8871	* include/std/vector: Likewise.
8872
8873	* include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
8874	new overloaded functions.
8875	* include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
8876	to avoid creating a redundant temporary.
8877	* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
8878	test.
8879
88802016-06-15  François Dumont  <fdumont@gcc.gnu.org>
8881
8882	* include/bits/stl_deque.h
8883	(std::deque<>::operator=): Call _M_assign_aux.
8884	(std::deque<>::assign(initializer_list<>)): Likewise.
8885	(std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8886	(std::deque<>::insert(const_iterator, initializer_list<>)):
8887	Call _M_range_insert_aux.
8888	(std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
8889	Likewise.
8890	(std::deque<>::_M_fill_assign): Call _M_fill_insert.
8891	(std::deque<>::_M_move_assign2): Call _M_assign_aux.
8892	* include/bits/deque.tcc
8893	(std::deque<>::operator=): Call _M_range_insert_aux.
8894	(std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
8895	Likewise.
8896	* include/bits/stl_vector.h
8897	(std::vector<>::operator=): Call _M_assign_aux.
8898	(std::vector<>::assign(initializer_list<>)): Likewise.
8899	(std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8900	(std::vector<>::insert(const_iterator, initializer_list<>)):
8901	Call _M_range_insert.
8902	* include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
8903
89042016-06-07  François Dumont  <fdumont@gcc.gnu.org>
8905
8906	* include/std/tuple (_Head_base<>): Default specialization condition at
8907	type declaration.
8908
89092016-06-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8910
8911	Support allocators in tuples of zero size.
8912	* include/std/tuple (tuple<>::tuple(),
8913	tuple<>::tuple(allocator_arg_t, const _Alloc&),
8914	tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
8915	* testsuite/20_util/tuple/cons/allocators.cc: Adjust.
8916
89172016-06-06  Jonathan Wakely  <jwakely@redhat.com>
8918
8919	PR libstdc++/71320
8920	* src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
8921	Add or remove permissions according to perms argument.
8922	* testsuite/experimental/filesystem/operations/permissions.cc: New
8923	test.
8924
89252016-06-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8926
8927	Protect allocator-overloads of tuple-from-tuple constructors
8928	from cases that would create dangling references.
8929	* include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8930	const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
8931	tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
8932	* testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
8933
89342016-05-29  Gerald Pfeifer  <gerald@pfeifer.com>
8935
8936	* doc/xml/manual/backwards_compatibility.xml: Adjust
8937	lists.debian.org link to https.
8938	* doc/html/manual/backwards.html: Regenerate.
8939
89402016-05-27  Jonathan Wakely  <jwakely@redhat.com>
8941
8942	* doc/xml/manual/abi.xml: Adjust URL to use https.
8943	* doc/html/manual/*: Regenerate.
8944
89452016-05-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
8946
8947	PR libstdc++/66338
8948	* include/std/tuple (_TMC): Add a check for _NotSameTuple.
8949	* include/std/tuple (tuple(_UElements&&...)): Remove the separate
8950	check for _NotSameTuple.
8951	* include/std/tuple (_TMCT): New.
8952	* include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
8953	* include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
8954	* include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8955	      const tuple<_UElements...>&)): Likewise.
8956	* include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8957	      tuple<_UElements...>&&)): Likewise.
8958	* testsuite/20_util/tuple/cons/66338.cc: New.
8959
89602016-05-25  Jonathan Wakely  <jwakely@redhat.com>
8961
8962	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
8963	* configure: Regenerate.
8964	* config.h.in: Regenerate.
8965
8966	* include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
8967	* include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
8968	Remove const qualification on function. Replace
8969	_GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
8970	(_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
8971	(_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
8972
89732016-05-24  François Dumont  <fdumont@gcc.gnu.org>
8974
8975	* include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
8976	* include/bits/hashtable_policy.h
8977	(_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
8978	having load factor management.
8979	(_Mask_range_hashing): New.
8980	(__clp2): New.
8981	(_Power2_rehash_policy): New.
8982	(_Inserts<>): Remove last template parameter, _Unique_keys, so that
8983	partial specializations only depend on whether iterators are constant
8984	or not.
8985	* testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
8986	test new hash policy.
8987	* testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
8988	Likewise.
8989	* testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8990	Likewise.
8991	* testsuite/23_containers/unordered_set/insert/hash_policy.cc:
8992	Likewise.
8993	* testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
8994	Likewise.
8995	* testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
8996	New.
8997	* testsuite/performance/23_containers/insert/54075.cc: Add benchmark
8998	using the new hash policy.
8999	* testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
9000
90012016-05-24  Jonathan Wakely  <jwakely@redhat.com>
9002
9003	* include/bits/stl_queue.h (priority_queue::value_compare): Define.
9004
90052016-05-23  François Dumont  <fdumont@gcc.gnu.org>
9006
9007	* include/debug/safe_iterator.h
9008	(_Safe_iterator<>::operator->()): Implement using underlying iterator
9009	operator ->.
9010	* include/debug/safe_local_iterator.h
9011	(_Safe_local_iterator<>::operator->()): Likewise.
9012
90132016-05-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
9014
9015	* testsuite/experimental/memory_resource/1.cc: Add required argument
9016	to dg-require-atomic-builtins.
9017
90182016-05-13  Jonathan Wakely  <jwakely@redhat.com>
9019
9020	PR libstdc++/71073
9021	* include/debug/bitset: Add #pragma GCC system_header.
9022	* include/debug/deque: Likewise.
9023	* include/debug/list: Likewise.
9024	* include/debug/map: Likewise.
9025	* include/debug/set: Likewise.
9026	* include/debug/string: Likewise.
9027	* include/debug/unordered_map: Likewise.
9028	* include/debug/unordered_set: Likewise.
9029	* include/debug/vector: Likewise.
9030	* include/debug/functions.h: Adjust whitespace.
9031
90322016-05-12  Jonathan Wakely  <jwakely@redhat.com>
9033
9034	PR libstdc++/71081
9035	* testsuite/experimental/memory_resource/1.cc: Require atomics.
9036
90372016-05-11  Jonathan Wakely  <jwakely@redhat.com>
9038
9039	PR libstdc++/71049
9040	* src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
9041	exception constructors with __sso_string parameters.
9042
90432016-05-10  Jonathan Wakely  <jwakely@redhat.com>
9044
9045	* include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
9046	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
9047	Test begin and end functions.
9048	* testsuite/experimental/filesystem/iterators/
9049	recursive_directory_iterator.cc: Likewise.
9050
9051	PR libstdc++/71038
9052	* src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
9053	* testsuite/experimental/filesystem/operations/copy_file.cc: New test.
9054
9055	* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
9056	Overload operator* to move from rvalues.
9057
9058	PR libstdc++/71036
9059	* src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
9060	* testsuite/experimental/filesystem/operations/create_directory.cc:
9061	New test.
9062
9063	PR libstdc++/71037
9064	* src/filesystem/ops.cc (canonical(const path&, const path&)): Add
9065	base path to exception.
9066	* testsuite/experimental/filesystem/operations/canonical.cc: Test
9067	paths contained in exception.
9068
9069	* testsuite/experimental/type_erased_allocator/2.cc: Remove unused
9070	using declaration.
9071
9072	PR libstdc++/71005
9073	* include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
9074	New type.
9075	(directory_iterator::operator++(int)): Return proxy.
9076	(recursive_directory_iterator::operator++(int)): Likewise.
9077	* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
9078	Test post-increment.
9079	* testsuite/experimental/filesystem/iterators/
9080	recursive_directory_iterator.cc: Likewise.
9081
90822016-05-09  Jonathan Wakely  <jwakely@redhat.com>
9083
9084	PR libstdc++/71004
9085	* testsuite/experimental/filesystem/iterators/
9086	recursive_directory_iterator.cc: Fix test02 to not call member
9087	functions on invalid iterator, and use VERIFY not assert.
9088
90892016-05-09  Ville Voutilainen  <ville.voutilainen@gmail.com>
9090
9091	Avoid endless run-time recursion for copying single-element
9092	tuples where the element type is by-value constructible
9093	from any type.
9094	* include/std/tuple (_NotSameTuple): New.
9095	* include/std/tuple (tuple(_UElements&&...): Use it.
9096	* testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
9097
90982016-05-09  Jonathan Wakely  <jwakely@redhat.com>
9099
9100	PR libstdc++/71004
9101	* include/experimental/bits/fs_dir.h (recursive_directory_iterator):
9102	Initialize scalar member variables in default constructor.
9103	* testsuite/experimental/filesystem/iterators/
9104	recursive_directory_iterator.cc: Test default construction.
9105
91062016-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
9107
9108	* testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
9109
91102016-05-05  Jonathan Wakely  <jwakely@redhat.com>
9111
9112	* testsuite/experimental/filesystem/path/native/string.cc: Add
9113	dg-require-filesystem-ts directive.
9114
91152016-05-04  Jonathan Wakely  <jwakely@redhat.com>
9116
9117	PR libstdc++/70940
9118	* include/experimental/memory_resource
9119	(__resource_adaptor_imp::do_allocate): Do not default-construct
9120	rebound allocator.
9121	(__resource_adaptor_imp::do_deallocate): Likewise. Use
9122	allocator_traits to get pointer type.
9123	(__null_memory_resource::do_allocate): Remove unused parameters.
9124	(__null_memory_resource::do_deallocate): Likewise.
9125	(__null_memory_resource::do_is_equal): Likewise. Add return statement.
9126	* testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
9127	* testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
9128	move to ...
9129	* testsuite/experimental/memory_resource/1.cc: Here.
9130	* testsuite/experimental/memory_resource/null_memory_resource.cc: New.
9131	* testsuite/experimental/memory_resource/resource_adaptor.cc: New.
9132
91332016-04-29  Chris Gregory  <czipperz@gmail.com>
9134
9135	* config/*: Remove trailing whitespace.
9136	* src/*: Likewise.
9137	* testsuite/tr1/*: Likewise.
9138	* testsuite/util/*: Likewise.
9139
91402016-04-28  Jonathan Wakely  <jwakely@redhat.com>
9141
9142	PR libstdc++/70766
9143	* include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
9144	__addressof.
9145	* include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
9146	Likewise.
9147	* include/std/atomic (atomic<_Tp>): Likewise.
9148	* include/std/shared_mutex (shared_lock): Likewise.
9149	* testsuite/24_iterators/istream_iterator/70766.cc: New test.
9150	* testsuite/24_iterators/ostream_iterator/70766.cc : New test.
9151	* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
9152	* testsuite/29_atomics/atomic/70766.cc: New test.
9153	* testsuite/30_threads/shared_lock/70766.cc: New test.
9154
9155	* include/bits/hashtable_policy.h (__detail::_Insert_base,
9156	__detail::_Insert): Improve comments.
9157
91582016-04-27  Jonathan Wakely  <jwakely@redhat.com>
9159
9160	PR libstdc++/70767
9161	* include/std/limits: Update comments about DRs.
9162	(numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
9163	numeric_limits<const volatile _Tp>): Define unconditionally.
9164
91652016-04-24  Jonathan Wakely  <jwakely@redhat.com>
9166
9167	PR libstdc++/70762
9168	* testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
9169	static counter to return a different path on every call.
9170
91712016-04-22  Tim Shen  <timshen@google.com>
9172
9173	PR libstdc++/70745
9174	* include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
9175	Fix the match_not_bow and match_not_eow behavior.
9176	* testsuite/28_regex/regression.cc: Add testcase.
9177
91782016-04-20  Jonathan Wakely  <jwakely@redhat.com>
9179
9180	PR libstdc++/69703
9181	* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
9182	__codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
9183
91842016-04-19  Jonathan Wakely  <jwakely@redhat.com>
9185
9186	PR libstdc++/69703
9187	* src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
9188	Override endianness bit in mode.
9189	* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
9190	* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
9191	that little_endian mode is ignored.
9192	* testsuite/experimental/filesystem/path/native/string.cc: New test.
9193
9194	PR libstdc++/70609
9195	* src/filesystem/ops.cc (close_fd): New function.
9196	(do_copy_file): Set permissions before copying file contents. Check
9197	result of closing file descriptors. Don't copy streambuf when file
9198	is empty.
9199	(copy(const path&, const path&, copy_options, error_code&)): Use
9200	lstat for source file when copy_symlinks is set.
9201	* testsuite/experimental/filesystem/operations/copy.cc: Test copy().
9202
9203	* include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
9204	operator~ operator&=, operator|=, operator^=): Add noexcept to
9205	overloaded operators for copy_options, perms and directory_options.
9206	* src/filesystem/ops.cc (make_file_type, make_file_status,
9207	is_not_found_errno, file_time): Add noexcept.
9208
92092016-04-19  Edward Smith-Rowland  <3dw4rd@verizon.net>
9210
9211	* include/bits/c++14_warning.h: Do not refer C++14 as experimental.
9212
92132016-04-18  Jonathan Wakely  <jwakely@redhat.com>
9214
9215	PR libstdc++/41759
9216	* include/bits/random.h: Reword static assertion messages to state
9217	positive conditions.
9218	* include/bits/random.tcc: Likewise.
9219	* include/bits/uniform_int_dist.h: Likewise.
9220	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
9221	patterns.
9222
9223	* include/std/function (_Bind, _Bind_result): Remove unused typedefs.
9224
9225	* config/cpu/sh/atomicity.h: Fix typo in comment.
9226
9227	PR libstdc++/70294
9228	* include/std/thread (operator<, operator==): Move definitions to
9229	namespace-scope.
9230	* testsuite/30_threads/thread/id/70294.cc: New test.
9231
9232	* testsuite/18_support/bad_exception/23591_thread-1.c: Add
9233	-Wno-pedantic to dg-options.
9234	* testsuite/20_util/align/2.cc: Use type as operand of alignof.
9235	* testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
9236	to dg-options.
9237	* testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
9238	Remove extra semi-colon.
9239	* testsuite/23_containers/array/tuple_interface/tuple_element.cc:
9240	Always supply second argument to static_assert.
9241	* testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
9242	semi-colon.
9243	* testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
9244	dg-options.
9245	* testsuite/26_numerics/complex/literals/values.cc: Likewise.
9246	* testsuite/29_atomics/atomic/60695.cc: Likewise.
9247	* testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
9248	alignof when operand is an object not a type.
9249	* testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
9250	* testsuite/decimal/make-decimal.cc: Likewise.
9251	* testsuite/experimental/type_traits/value.cc: Always supply second
9252	argument to static_assert.
9253	* testsuite/util/testsuite_common_types.h: Use __extension__ for
9254	__int128 types.
9255
9256	* testsuite/experimental/type_erased_allocator/1.cc: Don't include
9257	internal header.
9258	* testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
9259	* testsuite/experimental/type_erased_allocator/2.cc: Likewise.
9260	* testsuite/experimental/type_erased_allocator/uses_allocator.cc:
9261	Likewise. Add licence and change to compile-only test.
9262
9263	* include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
9264	unused parameter.
9265	* include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
9266
9267	* include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
9268	warnings.
9269
92702016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
9271
9272	* include/bits/specfun.h: Trivial comment misspelling.
9273
92742016-04-14  Jason Merrill  <jason@redhat.com>
9275
9276	Revert Jonathan's empty ABI change from yesterday.
9277
92782016-04-13  Martin Sebor  <msebor@redhat.com>
9279
9280	PR c++/69517
9281	* testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
9282	upper bound is positive.
9283
92842016-04-13  Jonathan Wakely  <jwakely@redhat.com>
9285
9286	* include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
9287	_GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
9288	* include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
9289	of functions taking empty structs by value. Add a template parameter
9290	to overloads without hints. Rename overloads with hints to
9291	_M_emplace_hint.
9292	(_Hashtable::_M_erase(true_type, const_iterator),
9293	_Hashtable::_M_erase(false_type, const_iterator)): Change signatures
9294	by reordering parameters.
9295	* include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
9296	_M_emplace_hint instead of _M_emplace.
9297	* include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
9298	shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
9299	* include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
9300	__shared_ptr): Likewise.
9301	* include/bits/stl_algo.h (replace_if): Likewise.
9302	* include/bits/stl_pair.h (piecewise_construct_t,
9303	piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
9304	* include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
9305	__uses_alloc0): Likewise.
9306	* include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
9307	* testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
9308	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
9309	* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
9310	* testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
9311	* testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
9312	* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
9313
93142016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
9315
9316	Document C++17/TR29124 C++ Special Math Functions.
9317	* include/bits/specfun.h: Add Doxygen markup.
9318
93192016-04-07  Jonathan Wakely  <jwakely@redhat.com>
9320
9321	* testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
9322
93232016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
9324
9325	* src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
9326	* src/Makefile.in: Regenerate.
9327
93282016-04-05  Jonathan Wakely  <jwakely@redhat.com>
9329
9330	PR libstdc++/70554
9331	* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
9332	__atomic_fetch_add for bool.
9333	* configure: Regenerate.
9334
9335	* testsuite/30_threads/thread/70503.cc: Require -static to work.
9336
9337	PR libstdc++/70503
9338	* src/c++11/thread.cc (execute_native_thread_routine,
9339	execute_native_thread_routine_compat): Give internal linkage.
9340	* testsuite/30_threads/thread/70503.cc: New test.
9341
93422016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
9343
9344	PR libstdc++/70437
9345	* include/bits/stl_pair.h (_ConstructiblePair,
9346	_ImplicitlyConvertiblePair, _MoveConstructiblePair,
9347	_ImplicitlyMoveConvertiblePair): Add shortcut conditions
9348	for same-type cases.
9349	* testsuite/20_util/pair/70437.cc: New.
9350
93512016-03-24  Jonathan Wakely  <jwakely@redhat.com>
9352
9353	PR libstdc++/69945
9354	* config/abi/pre/gnu.ver: Add new symbol.
9355	* libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
9356	* testsuite/18_support/free_eh_pool.cc: New test.
9357
93582016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9359
9360	* include/Makefile.am (install-freestanding-headers): Add
9361	concept_check.h and move.h to the installed headers.
9362	* include/Makefile.in: Regenerated.
9363	* include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
9364	freestanding implementations.
9365	* doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
9366	that this macro has no effect for freestanding implementations.
9367	* doc/html/manual/using_macros.html: Likewise.
9368
93692016-02-24  Jonathan Wakely  <jwakely@redhat.com>
9370
9371	PR libstdc++/69939
9372	* include/experimental/tuple (__apply_impl): Qualify get and forward.
9373
93742016-02-23  Jonathan Wakely  <jwakely@redhat.com>
9375
9376	* doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
9377	* doc/html/*: Regenerate.
9378
9379	PR libstdc++/69893
9380	* include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
9381	exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
9382	llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
9383	nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
9384	trunc) [__cplusplus >= 201103L]: Import from namespace std.
9385	(fabs) [__cplusplus < 201103L]: Import from namespace std.
9386	* include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
9387	Likewise.
9388	* testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
9389	namespace before including TR1 headers.
9390	* testsuite/tr1/headers/c++200x/math.cc: New test.
9391
93922016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9393
9394	PR libstdc++/69881
9395	* include/c_global/cstdarg: Undefine __need___va_list.
9396	* include/c_global/cstddef: Undefine all kinds of __need_*.
9397
93982016-02-16  Tim Shen  <timshen@google.com>
9399
9400	PR libstdc++/69794
9401	* include/bits/regex_scanner.h: Add different special character
9402	sets for grep and egrep regex.
9403	* include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
9404	* testsuite/28_regex/regression.cc: Add new testcase.
9405
94062016-02-08  Jonathan Wakely  <jwakely@redhat.com>
9407
9408	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
9409	added 'constexpr' in previous commit.
9410	* configure: Regenerate.
9411
9412	PR libstdc++/48891
9413	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
9414	checks for all targets except *-*-solaris2.* and ensure we find the
9415	libc math.h header not our own.
9416	* configure: Regenerate.
9417
94182016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
9419
9420	* config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
9421	New file.  Copied over from s390-linux-gnu.
9422
94232016-02-04  Jonathan Wakely  <jwakely@redhat.com>
9424
9425	PR libstdc++/69626
9426	* acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
9427	with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
9428	* config.h.in: Regenerate.
9429	* configure: Regenerate.
9430	* testsuite/21_strings/c_strings/char/69626.cc: New.
9431
9432	* doc/html/index.html: Regenerate.
9433
9434	* doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
9435	* doc/xml/manual/spine.xml: Update copyright years and author blurb.
9436	* doc/html/*: Regenerate.
9437
94382016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9439
9440	PR libstdc++/69581
9441	* include/c_compatibility/math.h: Move header guards.
9442	* include/c_compatibility/stdlib.h: Likewise.
9443
94442016-01-29  Jonathan Wakely  <jwakely@redhat.com>
9445
9446	PR libstdc++/69506
9447	* config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9448
94492016-01-28  John David Anglin  <danglin@gcc.gnu.org>
9450
9451	PR libstdc++/69450
9452	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
9453	isinf and isnan functions into two independent checks.  Check on hpux.
9454	* config.h.in: Regenerate.
9455	* configure: Regenerate.
9456	* include/c_global/cmath (isinf(double), isnan(double)): Use
9457	_GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
9458	respectively.
9459
94602016-01-27  Jakub Jelinek  <jakub@redhat.com>
9461
9462	* testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
9463
94642016-01-27  Jonathan Wakely  <jwakely@redhat.com>
9465
9466	PR libstdc++/69295
9467	* testsuite/ext/special_functions/hyperg/check_value.cc: Use
9468	-ffp-contract=off, and -ffloat-store to disable excess precision.
9469	* testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
9470	-ffp-contract=off.
9471
94722016-01-26  Jonathan Wakely  <jwakely@redhat.com>
9473
9474	PR libstdc++/69478
9475	* include/bits/stl_algobase.h (__copy_move<_IsMove, true,
9476	random_access_iterator_tag>): Check is_move_assignable when moving.
9477	(__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
9478	Likewise.
9479	* testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
9480	* testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
9481	* testsuite/25_algorithms/move/69478.cc: New.
9482	* testsuite/25_algorithms/move_backward/69478.cc: new.
9483
94842016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
9485
9486	* include/c_compatibility/stdlib.h: Include wide character related
9487	definitions only when they are available in cstdlib.
9488
94892016-01-25  Jonathan Wakely  <jwakely@redhat.com>
9490
9491	PR libstdc++/69464
9492	* include/Makefile.am: Add new header.
9493	* include/Makefile.in: Regenerate.
9494	* include/bits/random.h (uniform_int_distribution): Move to
9495	bits/uniform_int_dist.h.
9496	* include/bits/random.tcc (uniform_int_distribution::operator(),
9497	uniform_int_distribution::__generate_impl): Likewise.
9498	* include/bits/uniform_int_dist.h: New header.
9499	* include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
9500	<bits/uniform_int_dist.h> instead of <random>.
9501	* testsuite/20_util/specialized_algorithms/uninitialized_copy/
9502	move_iterators/1.cc: Include correct header for uninitialized_copy.
9503	* testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
9504	move_iterators/1.cc: Likewise.
9505	* testsuite/25_algorithms/nth_element/58800.cc: Include correct
9506	header for vector.
9507	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
9508
95092016-01-23  John David Anglin  <danglin@gcc.gnu.org>
9510
9511	PR libstdc++/69446
9512	* config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9513
95142016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
9515
9516	TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
9517	* include/c_compatibility/math.h: Import the TR29124 functions
9518	into the global namespace.
9519	* testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
9520	xfail and make compile-only.
9521	* testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
9522	* testsuite/special_functions/03_beta/compile_2.cc: Ditto.
9523	* testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
9524	* testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
9525	* testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
9526	* testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
9527	* testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
9528	* testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
9529	* testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
9530	* testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
9531	* testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
9532	* testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
9533	* testsuite/special_functions/14_expint/compile_2.cc: Ditto.
9534	* testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
9535	* testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
9536	* testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
9537	* testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
9538	* testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
9539	* testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
9540	* testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
9541
95422016-01-22  Jonathan Wakely  <jwakely@redhat.com>
9543
9544	PR libstdc++/69116
9545	* include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
9546	define result_type for types which can be safely used with valarrays.
9547	* testsuite/26_numerics/valarray/69116.cc: New.
9548
9549	PR libstdc++/69413
9550	* config/os/gnu-linux/os_defines.h: Define
9551	_GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
9552	* include/c_global/cmath (isinf, isnan): Check it.
9553	* doc/xml/manual/internals.xml: Document it.
9554	* doc/html/*: Regenerate.
9555
95562016-01-21  Jonathan Wakely  <jwakely@redhat.com>
9557
9558	PR libstdc++/69406
9559	* include/bits/cpp_type_traits.h: Ensure C++ language linkage.
9560	* include/ext/type_traits.h: Likewise.
9561	* testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
9562	for presence of C headers.
9563	* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
9564	dg-error line number.
9565	* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
9566	* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
9567	* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
9568
95692016-01-20  Torvald Riegel  <triegel@redhat.com>
9570
9571	PR libstdc++/69310
9572	* config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9573
95742016-01-20  Jonathan Wakely  <jwakely@redhat.com>
9575
9576	PR libstdc++/60401
9577	* include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
9578	copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
9579	lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
9580	nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
9581	tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
9582	Add using declarations.
9583	* testsuite/26_numerics/headers/cmath/60401.cc: New.
9584
9585	PR libstdc++/69386
9586	* include/c_global/ccomplex: Ensure C++ language linkage.
9587	* include/c_global/cmath: Likewise.
9588	* include/c_global/cstdlib: Likewise.
9589	* include/c_global/ctgmath: Likewise.
9590	* testsuite/17_intro/headers/c++2011/linkage.cc: New.
9591
95922016-01-19  Jonathan Wakely  <jwakely@redhat.com>
9593
9594	PR libstdc++/14608
9595	PR libstdc++/60401
9596	* include/Makefile.am: Use c_compatibility math.h and stdlib.h for
9597	--enable-cheaders=c_global configs.
9598	* include/Makefile.in: Regenerate.
9599	* include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
9600	test and allow inclusion from C files.
9601	* include/c_compatibility/stdlib.h: Likewise. Support freestanding.
9602	(at_quick_exit, quick_exit): Add using directives.
9603	* include/c_global/cmath: Use #include_next for math.h.
9604	* include/c_global/cstdlib: Use #include_next for stdlib.h.
9605	* testsuite/26_numerics/headers/cmath/14608.cc: New.
9606	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
9607	Remove xfail for most targets.
9608	* testsuite/26_numerics/headers/cstdlib/60401.cc: New.
9609
96102016-01-18  Torvald Riegel  <triegel@redhat.com>
9611
9612	* include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
9613	(_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use	_GLIBCXX_USE_WEAK_REF
9614	and move after its definition.
9615	* config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
9616	* src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
9617	__GXX_WEAK__, and only provide transactional clones if
9618	_GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
9619	functions.
9620
96212016-01-18  Jonathan Wakely  <jwakely@redhat.com>
9622
9623	PR libstdc++/60637
9624	* testsuite/26_numerics/headers/cmath/60637.cc: Add test.
9625
9626	PR libstdc++/69243
9627	* include/std/functional (_Function_base::_M_not_empty_function):
9628	Change overloads for pointers to take arguments by value.
9629	* testsuite/20_util/function/cons/57465.cc: Add tests for
9630	pointer-to-member cases.
9631
9632	PR libstdc++/69340
9633	* src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
9634	Use macros for exception handling and fix unused parameter warning.
9635
96362016-01-17  John David Anglin  <danglin@gcc.gnu.org>
9637
9638	PR libstdc++/68734
9639	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
9640
96412016-01-17  Torvald Riegel  <triegel@redhat.com>
9642
9643	* src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
9644
96452016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
9646
9647	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
9648	__int128 symbols.
9649
96502016-01-15  Jonathan Wakely  <jwakely@redhat.com>
9651
9652	PR libstdc++/69293
9653	* include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
9654	static assertion that type is constructible from the arguments.
9655	* testsuite/20_util/scoped_allocator/69293_neg.cc: New.
9656	* testsuite/20_util/uses_allocator/69293_neg.cc: New.
9657	* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
9658
9659	PR libstdc++/69294
9660	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9661	and isnan on AIX. Quote variables.
9662	* configure: Regenerate.
9663
96642016-01-15  Torvald Riegel  <triegel@redhat.com>
9665
9666	* include/bits/basic_string.h (basic_string): Declare friends.
9667	* include/bits/c++config (_GLIBCXX_TXN_SAFE,
9668	_GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
9669	* include/std/stdexcept (logic_error, domain_error, invalid_argument,
9670	length_error, out_of_range, runtime_error, range_error,
9671	underflow_error, overflow_error): Declare members as transaction-safe.
9672	(logic_error, runtime_error): Declare friend functions.
9673	* libsupc++/exception (exception, bad_exception): Declare members as
9674	transaction-safe.
9675	* src/c++11/cow-stdexcept.cc: Define transactional clones for the
9676	transaction-safe members of exceptions and helper functions.
9677	* libsupc++/eh_exception.cc: Adjust and define transactional clones.
9678	* config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
9679	(CXXABI_1.3.10): New.
9680	* acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
9681	(GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
9682	* configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
9683	* include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
9684	* include/Makefile.in: Regenerate.
9685	* config.h.in: Regenerate.
9686	* configure: Regenerate.
9687	* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
9688
96892016-01-15  Steve Ellcey  <sellcey@imgtec.com>
9690
9691	* include/ext/random.tcc: Use __builtin_isfinite instead of
9692	std::isfinite.
9693
96942016-01-15  Jonathan Wakely  <jwakely@redhat.com>
9695
9696	* include/bits/std_mutex.h: Fix Doxygen @file name.
9697
96982016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
9699	    Jonathan Wakely  <jwakely@redhat.com>
9700	    Florian Goth <CaptainSifff@gmx.de>
9701
9702	Implement TR29124 C++ special Math Functions.
9703	* include/Makefile.am: Add new headers.
9704	* include/Makefile.in: Regenerate.
9705	* include/bits/specfun.h: New.
9706	* include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
9707	* include/tr1/bessel_function.tcc: Ditto.
9708	* include/tr1/beta_function.tcc: Ditto.
9709	* include/tr1/cmath: Ditto.
9710	* include/tr1/ell_integral.tcc: Ditto.
9711	* include/tr1/exp_integral.tcc: Ditto.
9712	* include/tr1/gamma.tcc: Ditto.
9713	* include/tr1/hypergeometric.tcc: Ditto.
9714	* include/tr1/legendre_function.tcc: Ditto.
9715	* include/tr1/modified_bessel_func.tcc: Ditto.
9716	* include/tr1/poly_hermite.tcc: Ditto.
9717	* include/tr1/poly_laguerre.tcc: Ditto.
9718	* include/tr1/riemann_zeta.tcc: Ditto.
9719	* include/tr1/special_function_util.h: Ditto.
9720	* testsuite/ext/special_functions/conf_hyperg: New.
9721	* testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
9722	* testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
9723	* testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
9724	* testsuite/ext/special_functions/hyperg: New.
9725	* testsuite/ext/special_functions/hyperg/check_nan.cc: New.
9726	* testsuite/ext/special_functions/hyperg/check_value.cc: New.
9727	* testsuite/ext/special_functions/hyperg/compile.cc: New.
9728	* testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
9729	* testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
9730	* testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
9731	* testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
9732	* testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
9733	* testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
9734	* testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
9735	* testsuite/special_functions/02_assoc_legendre/compile.cc: New.
9736	* testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
9737	* testsuite/special_functions/03_beta/check_nan.cc: New.
9738	* testsuite/special_functions/03_beta/check_value.cc: New.
9739	* testsuite/special_functions/03_beta/compile.cc: New.
9740	* testsuite/special_functions/03_beta/compile_2.cc: New.
9741	* testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
9742	* testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
9743	* testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
9744	* testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
9745	* testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
9746	* testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
9747	* testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
9748	* testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
9749	* testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
9750	* testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
9751	* testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
9752	* testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
9753	* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
9754	* testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
9755	* testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
9756	* testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
9757	* testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
9758	* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
9759	* testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
9760	* testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
9761	* testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
9762	* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
9763	* testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
9764	* testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
9765	* testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
9766	* testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
9767	* testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
9768	* testsuite/special_functions/10_cyl_neumann/compile.cc: New.
9769	* testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
9770	* testsuite/special_functions/11_ellint_1/check_nan.cc: New.
9771	* testsuite/special_functions/11_ellint_1/check_value.cc: New.
9772	* testsuite/special_functions/11_ellint_1/compile.cc: New.
9773	* testsuite/special_functions/11_ellint_1/compile_2.cc: New.
9774	* testsuite/special_functions/12_ellint_2/check_nan.cc: New.
9775	* testsuite/special_functions/12_ellint_2/check_value.cc: New.
9776	* testsuite/special_functions/12_ellint_2/compile.cc: New.
9777	* testsuite/special_functions/12_ellint_2/compile_2.cc: New.
9778	* testsuite/special_functions/13_ellint_3/check_nan.cc: New.
9779	* testsuite/special_functions/13_ellint_3/check_value.cc: New.
9780	* testsuite/special_functions/13_ellint_3/compile.cc: New.
9781	* testsuite/special_functions/13_ellint_3/compile_2.cc: New.
9782	* testsuite/special_functions/14_expint/check_nan.cc: New.
9783	* testsuite/special_functions/14_expint/check_value.cc: New.
9784	* testsuite/special_functions/14_expint/compile.cc: New.
9785	* testsuite/special_functions/14_expint/compile_2.cc: New.
9786	* testsuite/special_functions/15_hermite/check_nan.cc: New.
9787	* testsuite/special_functions/15_hermite/check_value.cc: New.
9788	* testsuite/special_functions/15_hermite/compile.cc: New.
9789	* testsuite/special_functions/15_hermite/compile_2.cc: New.
9790	* testsuite/special_functions/16_laguerre/check_nan.cc: New.
9791	* testsuite/special_functions/16_laguerre/check_value.cc: New.
9792	* testsuite/special_functions/16_laguerre/compile.cc: New.
9793	* testsuite/special_functions/16_laguerre/compile_2.cc: New.
9794	* testsuite/special_functions/17_legendre/check_nan.cc: New.
9795	* testsuite/special_functions/17_legendre/check_value.cc: New.
9796	* testsuite/special_functions/17_legendre/compile.cc: New.
9797	* testsuite/special_functions/17_legendre/compile_2.cc: New.
9798	* testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
9799	* testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
9800	* testsuite/special_functions/18_riemann_zeta/compile.cc: New.
9801	* testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
9802	* testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
9803	* testsuite/special_functions/19_sph_bessel/check_value.cc: New.
9804	* testsuite/special_functions/19_sph_bessel/compile.cc: New.
9805	* testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
9806	* testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
9807	* testsuite/special_functions/20_sph_legendre/check_value.cc: New.
9808	* testsuite/special_functions/20_sph_legendre/compile.cc: New.
9809	* testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
9810	* testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
9811	* testsuite/special_functions/21_sph_neumann/check_value.cc: New.
9812	* testsuite/special_functions/21_sph_neumann/compile.cc: New.
9813	* testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
9814	* testsuite/util/specfun_testcase.h: New.
9815	* testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
9816	* testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
9817	* testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
9818	* testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
9819	* testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
9820	* testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
9821	* testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
9822
98232016-01-13  Jonathan Wakely  <jwakely@redhat.com>
9824
9825	PR libstdc++/48891
9826	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9827	and isnan functions.
9828	* config.h.in: Regenerate.
9829	* configure: Regenerate.
9830	* include/c_global/cmath (isinf(double), isnan(double))
9831	[_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
9832	* testsuite/26_numerics/headers/cmath/48891.cc: New.
9833
98342016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
9835
9836	PR libstdc++/66006
9837	* configure.host (abi_baseline_pair): Use separate baseline for
9838	Solaris 11+ and Solaris 10 with gld.
9839	* config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
9840	* config/abi/post/solaris2.11/baseline_symbols.txt: New file.
9841	* config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
9842
98432016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
9844
9845	PR libstdc++/68877
9846	* include/std/type_traits: Following N4511, reimplement __is_swappable
9847	and __is_nothrow_swappable. Move __is_swappable to namespace std,
9848	adjust callers. Use __is_nothrow_swappable in swap.
9849	* include/bits/move.h: Use __is_nothrow_swappable in swap.
9850	* testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
9851	__is_swappable related tests.
9852	* testsuite/20_util/is_swappable/value.cc: New.
9853	* testsuite/20_util/is_swappable/requirements/
9854	explicit_instantiation.cc: New.
9855	* testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
9856	* testsuite/25_algorithms/swap/68877.cc: New.
9857
98582016-01-12  Jonathan Wakely  <jwakely@redhat.com>
9859
9860	* testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
9861
9862	PR libstdc++/69005
9863	PR libstdc++/69222
9864	* include/std/functional (function::_Invoke): Remove, use result_of.
9865	(function::_Callable): Replace alias template with class template
9866	and use partial specialization instead of _NotSelf alias template.
9867	(function(_Functor)): Add "not self" constraint so that _Callable is
9868	not used while type is incomplete.
9869	* testsuite/20_util/function/69222.cc: New.
9870
98712016-01-11  Jonathan Wakely  <jwakely@redhat.com>
9872
9873	PR libstdc++/60976
9874	* include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
9875	Define partial specialization.
9876	* testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
9877	destroy members to std::allocator explicit specialization.
9878
98792016-01-08  Jonathan Wakely  <jwakely@redhat.com>
9880
9881	* testsuite/26_numerics/headers/cmath/
9882	c99_classification_macros_c++.cc: Rename to ...
9883	* testsuite/26_numerics/headers/cmath/
9884	c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
9885	* testsuite/26_numerics/headers/cmath/
9886	c99_classification_macros_c++0x.cc: Rename to ...
9887	* testsuite/26_numerics/headers/cmath/
9888	c99_classification_macros_c++11.cc: Here.
9889
9890	PR libstdc++/69190
9891	* include/bits/uses_allocator.h: Add missing include.
9892
98932016-01-07  Jonathan Wakely  <jwakely@redhat.com>
9894
9895	PR libstdc++/69105
9896	PR libstdc++/69106
9897	PR libstdc++/69114
9898	* include/bits/stl_iterator.h (back_insert_iterator,
9899	front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
9900	* include/bits/uses_allocator.h (__use_alloc): Use __addressof.
9901	* include/std/future (__future::base::_State_baseV2::__setter):
9902	Likewise.
9903	* include/std/scoped_allocator (__outermost): Likewise.
9904	* testsuite/20_util/scoped_allocator/69114.cc: New.
9905	* testsuite/20_util/uses_allocator/69114.cc: New.
9906	* testsuite/30_threads/promise/69106.cc: New.
9907
99082016-01-06  Jonathan Wakely  <jwakely@redhat.com>
9909
9910	PR libstdc++/69092
9911	* include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
9912	Remove _GLIBCXX_NOEXCEPT.
9913	testsuite/21_strings/basic_string/cons/char/69092.cc: New.
9914
9915	* include/Makefile.am: Adjust.
9916	* include/Makefile.in: Regenerate.
9917	* include/bits/mutex.h: Rename to bits/std_mutex.h.
9918	* include/std/condition_variable: Adjust include.
9919	* include/std/mutex: Likewise.
9920
99212016-01-04  Jakub Jelinek  <jakub@redhat.com>
9922
9923	Update copyright years.
9924
9925Copyright (C) 2016 Free Software Foundation, Inc.
9926
9927Copying and distribution of this file, with or without modification,
9928are permitted in any medium without royalty provided the copyright
9929notice and this notice are preserved.
9930