Make printers use singular noun for a single element
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob5d7563f602124f60d266f80f6f25145a3159502c
1 2016-12-14  Jonathan Wakely  <jwakely@redhat.com>
3         * python/libstdcxx/v6/printers.py (num_elements): New function.
4         (StdMapPrinter.to_string, StdSetPrinter.to_string)
5         (StdDequePrinter.to_string, Tr1UnorderedSetPrinter.to_string)
6         (Tr1UnorderedMapPrinter.to_string): Use num_elements.
7         * testsuite/libstdc++-prettyprinters/cxx11.cc: Adjust expected results
8         to use singular noun when there is only one element.
9         * testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
10         * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
11         * testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
12         * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
13         * testsuite/libstdc++-prettyprinters/tr1.cc: Likewise.
15         PR libstdc++/59170
16         * python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter): Use
17         _M_sequence and _M_version to detect invalid iterators.
18         * testsuite/libstdc++-prettyprinters/debug.cc: Test debug mode vector
19         and test invalid iterators.
20         * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: New test.
22 2016-12-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
24         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
25         XFAIL run if newlib_broken_long_double_io.
26         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc:
27         Likewise.
28         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc:
29         Likewise.
30         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
31         Likewise.
33 2016-12-12  Jonathan Wakely  <jwakely@redhat.com>
35         * testsuite/experimental/filesystem/operations/is_empty.cc:
36         Remove stray character at end of dg-do directive.
38         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
39         Remove stray character at end of dg-do directive.
41 2016-12-09  Jonathan Wakely  <jwakely@redhat.com>
43         * include/std/variant: Remove misplaced
44         _GLIBCXX_BEGIN_NAMESPACE_VERSION macro.
46 2016-12-08  David Edelsohn  <dje.gcc@gmail.com>
48         * testsuite/25_algorithms/headers/algorithm/
49         parallel_algorithm_assert2.cc: Move dg-do run first.
51 2016-12-08  Eric Botcazou  <ebotcazou@adacore.com>
53         PR libstdc++/78264
54         * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM): Turn _N into _NE.
55         (_GLIBCXX_NOEXCEPT_QUAL): Likewise.
57 2016-12-08  Jonathan Wakely  <jwakely@redhat.com>
59         * testsuite/experimental/filesystem/path/construct/range.cc: Don't
60         use basic_string::front() when string might be empty.
62         * include/debug/array (swap): Add deleted overload.
63         * include/bits/stl_pair.h (swap): Remove redundant inline keyword
64         from deleted overload.
65         * include/bits/unique_ptr.h (swap): Likewise.
66         * include/std/array (swap): Likewise.
67         * include/std/optional (swap): Likewise.
68         * include/std/tuple (swap): Likewise.
69         * include/std/variant (swap): Likewise.
70         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
71         Adjust dg-error line numbers.
72         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
73         * testsuite/23_containers/array/tuple_interface/
74         tuple_element_debug_neg.cc: Likewise.
75         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
76         Likewise.
78         PR libstdc++/71856
79         * doc/xml/manual/using.xml: Document macro.
80         * include/bits/c++config [_GLIBCXX_DEBUG || _GLIBCXX_PARALLEL]
81         (__glibcxx_assert): Rename to __glibcxx_assert_impl.
82         [_GLIBCXX_DEBUG] (__glibcxx_assert): Expand to __glibcxx_assert_impl.
83         * include/parallel/base.h [_GLIBCXX_PARALLEL_ASSERTIONS]
84         (_GLIBCXX_PARALLEL_ASSERT): Expand to __glibcxx_assert_impl.
85         [!_GLIBCXX_PARALLEL_ASSERTIONS] (_GLIBCXX_PARALLEL_ASSERT): Define as
86         empty.
87         * testsuite/25_algorithms/headers/algorithm/
88         parallel_algorithm_assert2.cc: New test.
90 2016-12-08  Jakub Jelinek  <jakub@redhat.com>
92         * testsuite/util/testsuite_new_operators.h: Include testsuite_hooks.h.
93         (operator new): Use THROW macro.
95 2016-12-07  François Dumont  <fdumont@gcc.gnu.org>
97         * include/bits/stl_tree.h
98         (_Rb_tree<>::_M_copy(_Const_Link_type, _Base_ptr)): Delete.
99         (_Rb_tree<>::_M_copy(const _Rb_tree&, _NodeGen&)): New.
100         (_Rb_tree<>::_M_copy(const _Rb_tree&)): New, use latter.
101         (_Rb_tree<>(const _Rb_tree&): Use latter.
102         (_Rb_tree<>(const _Rb_tree&, const allocator_type&)): Likewise.
103         (_Rb_tree<>::_M_move_data(_Rb_tree&, false_type)): Likewise.
104         (_Rb_tree<>::_M_move_assign(_Rb_tree&, false_type)): Likewise.
105         (_Rb_tree<>::operator=(const _Rb_tree&)): Likewise.
107         * include/bits/stl_map.h (map(const map&)): Make default.
108         (map(map&&)): Likewise.
109         (~map()): Likewise.
110         (operator=(const map&)): Likewise.
111         * include/bits/stl_multimap.h (multimap(const multimap&)): Make default.
112         (multimap(multimap&&)): Likewise.
113         (~multimap()): Likewise.
114         (operator=(const multimap&)): Likewise.
115         * include/bits/stl_set.h (set(const set&)): Make default.
116         (set(set&&)): Likewise.
117         (~set()): Likewise.
118         (operator=(const set&)): Likewise.
119         * include/bits/stl_multiset.h (multiset(const multiset&)): Make default.
120         (multiset(multiset&&)): Likewise.
121         (~multiset()): Likewise.
122         (operator=(const multiset&)): Likewise.
123         * include/bits/stl_tree.h (_Rb_tree_key_compare<>): New.
124         (_Rb_tree_header): New.
125         (_Rb_tree_impl): Inherit from latters.
126         (_Rb_tree_impl()): Make default.
127         (_Rb_tree_impl(const _Rb_tree_impl&)): New.
128         (_Rb_tree<>(const _Rb_tree&): Use latter.
129         (_Rb_tree_impl(_Rb_tree_impl&&)): New, default.
130         (_Rb_tree_impl(const _Key_compare&, const _Node_allocator&)): Delete.
131         (_Rb_tree_impl::_M_reset): Move...
132         (_Rb_tree_header::_M_reset): ...here.
133         (_Rb_tree_impl::_M_initialize): Delete.
134         (_Rb_tree(_Rb_tree&&)): Make default.
135         (_Rb_tree_header::_M_move_data(_Rb_tree_header&)): New.
136         (_Rb_tree<>::_M_move_data(_Rb_tree&, true_type)): Use latter.
137         (_Rb_tree<>(_Rb_tree&&)): Make default.
139 2016-12-07  Jonathan Wakely  <jwakely@redhat.com>
141         * include/experimental/bits/fs_path.h (path::_S_convert): Replace
142         uses of C++14 std::remove_cv_t alias template.
144         * testsuite/28_regex/traits/char/user_defined.cc: Replace uses of
145         C++14 std::exchange function.
147         * testsuite/util/testsuite_hooks.h (THROW): Define.
148         * testsuite/util/replacement_memory_operators.h: Include
149         testsuite_hooks.h and use THROW macro.
150         * testsuite/util/testsuite_tr1.h: Likewise.
151         * testsuite/20_util/allocator/1.cc: Use THROW macro.
152         * testsuite/22_locale/locale/cons/12352.cc: Likewise.
153         * testsuite/23_containers/vector/zero_sized_allocations.cc: Likewise.
154         * testsuite/30_threads/lock_guard/cons/1.cc: Replace dynamic exception
155         specification with noexcept-specifier.
156         * testsuite/ext/pool_allocator/allocate_chunk.cc: Include
157         testsuite_hooks.h and use THROW macro.
158         * testsuite/ext/profile/replace_new.cc: Likewise.
160         * include/ext/bitmap_allocator.h (bitmap_allocator::_S_refill_pool)
161         (bitmap_allocator::_M_allocate_single_object)
162         (bitmap_allocator::_M_get): Use _GLIBCXX_THROW macro.
164         * testsuite/18_support/bad_exception/59392.cc: Disable for C++17.
166         * testsuite/18_support/headers/new/synopsis.cc: Add C++14 and C++17
167         declarations.
168         * testsuite/18_support/headers/new/synopsis_cxx98.cc: New test.
170 2016-12-06  Felipe Magno de Almeida  <felipe@expertisesolutions.com.br>
172         * src/c++11/cow-stdexcept.cc: Add special case for 16 bit pointers.
174         * crossconfig.m4: Add avr target for cross-compilation.
175         * configure: Regenerate.
177 2016-12-06  Jonathan Wakely  <jwakely@redhat.com>
179         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new
180         data member name.
181         * testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test.
183         * include/bits/shared_ptr_base.h
184         (__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion.
186 2016-12-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
188         Constrain optional's __constexpr_addressof in its return type
189         and use a constexpr addressof for optional, if available.
190         * include/experimental/optional (__constexpr_addressof):
191         Constrain in the return type instead of in a template parameter.
192         (_Has_addressof_mem)
193         (_Has_addressof_free, _Has_addressof, __constexpr_addressof):
194         Guard with #ifndef __cpp_lib_addressof_constexpr.
195         (operator->()): Use std::__addressof if it's constexpr.
197 2016-12-06  Tim Shen  <timshen@google.com>
199         * include/std/variant (visit): Make visit constexpr. Also cleanup
200         __get_alternative and __storage, since we don't support reference/void
201         alternatives any more.
202         * testsuite/20_util/variant/compile.cc: Add tests.
204 2016-12-06  Tim Shen  <timshen@google.com>
206         * include/bits/enable_special_members.h: Make
207         _Enable_default_constructor constexpr.
208         * include/std/variant (variant::emplace, variant::swap, std::swap,
209         std::hash): Sfinae on emplace and std::swap; handle __poison_hash bases
210         of duplicated types.
212 2016-12-06  Tim Shen  <timshen@google.com>
214         * include/std/variant (std::get, operator==): Implement constexpr
215         comparison and get<>.
216         * testsuite/20_util/variant/compile.cc: Tests.
218 2016-12-06  Tim Shen  <timshen@google.com>
220         * include/std/variant (__erased_use_alloc_ctor,
221         _Variant_base::_Variant_base, variant::variant): Remove uses-allocator
222         related functions.
223         * testsuite/20_util/variant/compile.cc: Remove related tests.
224         * testsuite/20_util/variant/run.cc: Remove related tests.
226 2016-12-06  Aditya Kumar  <hiraditya@msn.com>
228         * src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
229         noexcept on constructor.
230         (_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.
232 2016-12-06  Jonathan Wakely  <jwakely@redhat.com>
234         * include/bits/basic_string.h (basic_string::find, basic_string::rfind)
235         (basic_string::find_first_of, basic_string::find_last_of)
236         (basic_string::find_first_not_of, basic_string::find_last_not_of):
237         Make all overloads noexcept.
238         (basic_string::compare(const _CharT*)): Make noexcept.
240 2016-12-03  John David Anglin  <danglin@gcc.gnu.org>
242         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Regenerate.
244 2016-12-01  David Edelsohn  <dje.gcc@gmail.com>
246         * testsuite/26_numerics/headers/cmath/hypot.cc: XFAIL on AIX.
248 2016-12-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
250         Implement LWG 2766,
251         Swapping non-swappable types and LWG 2749,
252         swappable traits for variants.
253         * include/bits/move.h (swap(_Tp&, _Tp&)): Constrain
254         with __is_tuple_like.
255         * include/bits/stl_pair.h (swap(pair<_T1, _T2>&, pair<_T1, _T2>&)):
256         Add a deleted overload.
257         * include/bits/unique_ptr.h
258         (swap(unique_ptr<_Tp, _Dp>&, unique_ptr<_Tp, _Dp>&)): Likewise.
259         * include/std/array
260         (swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&)): Likewise.
261         * include/std/optional
262         (swap(optional<_Tp>&, optional<_Tp>&)): Likewise.
263         * include/std/tuple (__is_tuple_like_impl, __is_tuple_like):
264         Move to type_traits.
265         (swap(tuple<_Elements...>&, tuple<_Elements...>&)): Add a deleted
266         overload.
267         * include/std/type_traits (__is_tuple_like_impl, __is_tuple_like):
268         New.
269         (swap(_Tp&, _Tp&)): Constrain with __is_tuple_like.
270         * include/std/utility (__is_tuple_like_impl): Move to type_traits.
271         * include/std/variant
272         (swap(variant<_Types...>&, variant<_Types...>&)):
273         Add a deleted overload.
274         * testsuite/20_util/optional/swap/2.cc: Add tests for disabled
275         swaps.
276         * testsuite/20_util/pair/swap_cxx17.cc: New.
277         * testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
278         * testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
279         Likewise.
280         * testsuite/20_util/variant/compile.cc: Add tests for disabled
281         swaps.
282         * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
283         New.
284         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
285         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
286         Likewise.
288 2016-12-01  Ville Voutilainen  <ville.voutilainen@gmail.com>
290         The convertible_to traits need to use a variadic catch-all for the
291         false-cases.
292         * include/std/istream (__is_convertible_to_basic_istream):
293         Change the parameter of the false-case of __check to a variadic.
294         * include/std/ostream (__is_convertible_to_basic_ostream):
295         Likewise.
297 2016-12-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
299         * crossconfig.m4 (*-linux*): Add link-check for memalign.
300         * configure: Regenerated.
302 2016-12-01  Tim Shen  <timshen@google.com>
304         PR libstdc++/71500
305         * include/bits/regex.h (basic_regex::basic_regex): Use ECMAScript
306         when the syntax is not specified.
307         * include/bits/regex_compiler.h (_RegexTranslator,
308         _RegexTranslatorBase): Partially support icase in ranges.
309         * include/bits/regex_compiler.tcc (_BracketMatcher::_M_apply):
310         Refactor _M_apply to make the control flow easier to follow, and
311         call _M_translator._M_match_range as added previously.
312         * testsuite/28_regex/traits/char/icase.cc: Add new tests.
313         * testsuite/28_regex/traits/char/user_defined.cc: Add new tests.
315 2016-11-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
317         Fix testsuite failures caused by the patch implementing LWG 2534.
318         * include/std/istream (__is_convertible_to_basic_istream):
319         Change the return types of __check, introduce istream_type.
320         (operator>>(_Istream&&, _Tp&&)):
321         Use __is_convertible_to_basic_istream::istream_type as the return type.
322         * include/std/ostream (__is_convertible_to_basic_ostream):
323         Change the return types of __check, introduce ostream_type.
324         (operator>>(_Ostream&&, _Tp&&)):
325         Use __is_convertible_to_basic_ostream::ostream_type as the return type.
327 2016-11-30  Tim Shen  <timshen@google.com>
329         * include/bits/shared_ptr_base.h
330         (__shared_ptr_access<T, L, true, false>::operator*()): Fix assertion.
332 2016-11-30  David Edelsohn  <dje.gcc@gmail.com>
334         * testsuite/18_support/50594.cc: XFAIL on AIX.
335         * testsuite/ext/mt_allocator/check_new.cc: Same.
336         * testsuite/ext/pool_allocator/check_new.cc: Same.
337         * testsuite/27_io/ios_base/storage/11584.cc: Same.
339 2016-11-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
341         Implement LWG 2534, Constrain rvalue stream operators.
342         * include/std/istream (__is_convertible_to_basic_istream): New.
343         (__is_extractable): Likewise.
344         (operator>>(basic_istream<_CharT, _Traits>&&, _Tp&&)):
345         Turn the stream parameter into a template parameter
346         and constrain.
347         * include/std/ostream (__is_convertible_to_basic_ostream): New.
348         (__is_insertable): Likewise.
349         (operator<<(basic_ostream<_CharT, _Traits>&&, const _Tp&)):
350         Turn the stream parameter into a template parameter
351         and constrain.
352         * testsuite/27_io/basic_istream/extractors_other/char/4.cc: New.
353         * testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
354         Likewise.
355         * testsuite/27_io/basic_ostream/inserters_other/char/6.cc: Likewise.
356         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc: Likewise.
358 2016-11-30  Christophe Lyon  <christophe.lyon@linaro.org>
360         * testsuite/experimental/type_erased_allocator/2.cc: Add
361         dg-require-thread-fence.
363 2016-11-29  David Edelsohn  <dje.gcc@gmail.com>
365         PR libstdc++/68838
366         * testsuite/lib/libstdc++.exp (DEFAULT_CXXFLAGS): Add -Wl,-bmaxdata on
367         AIX.
368         * testsuite/23_containers/vector/profile/vector.cc: Remove
369         dg-additional-options.
371 2016-11-26  Tim Shen  <timshen@google.com>
373         PR libstdc++/78441
374         * include/std/variant: Propagate cv qualifications to types returned
375         by variant_alternative.
376         * testsuite/20_util/variant/compile.cc: Tests.
378 2016-11-23  Felix Morgner  <felix.morgner@gmail.com>
379             Jonathan Wakely  <jwakely@redhat.com>
381         PR libstdc++/78490
382         * include/experimental/propagate_const (propagate_const::operator=):
383         Add missing return statements.
384         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
385         Adjust dg-error line numbers.
386         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
388 2016-11-22  Uros Bizjak  <ubizjak@gmail.com>
390         * testsuite/Makefile.am
391         (check-DEJAGNU $(check_DEJAGNU_normal_targets)): Fix detection
392         of -j argument.
393         * testsuite/Makefile.in: Regenereate.
395 2016-11-22  Jonathan Wakely  <jwakely@redhat.com>
397         PR libstdc++/78465
398         * testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
399         with preprocessor conditions.
401 2016-11-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
403         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Update comments.
404         (__CORRECT_ISO_CPP11_MATH_H_PROTO): Rename to ...
405         (__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): ... this.
406         Add test for C++11 <math.h> integral overloads.
407         * configure: Regenerate.
408         * config.h.in: Regenerate.
410         * include/c_global/cmath [__cplusplus >= 201103L]: Reflect
411         __CORRECT_ISO_CPP11_MATH_H_PROTO to
412         __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
413         * include/c_global/cmath [_GLIBCXX_USE_C99_MATH &&
414         !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC && __cplusplus >= 201103L]
415         (std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO_INT.
416         (std::isfinite): Likewise.
417         (std::isinf): Likewise.
418         (std::isnan): Likewise.
419         (std::isnormal): Likewise.
420         (std::signbit): Likewise.
421         (std::isgreater): Likewise.
422         (std::isgreaterequal): Likewise.
423         (std::isless): Likewise.
424         (std::islessequal): Likewise.
425         (std::islessgreater): Likewise.
426         (std::isunordered): Likewise.
427         [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]
428         (std::acosh): Likewise.
429         (std::asinh): Likewise.
430         (std::atanh): Likewise.
431         (std::cbrt): Likewise.
432         (std::copysign): Likewise.
433         (std::erf): Likewise.
434         (std::erfc): Likewise.
435         (std::exp2): Likewise.
436         (std::expm1): Likewise.
437         (std::fdim): Likewise.
438         (std::fma): Likewise.
439         (std::fmax): Likewise.
440         (std::fmin): Likewise.
441         (std::hypot): Likewise.
442         (std::ilogb): Likewise.
443         (std::lgamma): Likewise.
444         (std::llrint): Likewise.
445         (std::llround): Likewise.
446         (std::log1p): Likewise.
447         (std::log2): Likewise.
448         (std::logb): Likewise.
449         (std::lrint): Likewise.
450         (std::lround): Likewise.
451         (std::nearbyint): Likewise.
452         (std::nextafter): Likewise.
453         (std::nexttoward): Likewise.
454         (std::remainder): Likewise.
455         (std::remquo): Likewise.
456         (std::rint): Likewise.
457         (std::round): Likewise.
458         (std::scalbln): Likewise.
459         (std::scalbn): Likewise.
460         (std::tgamma): Likewise.
461         (std::trunc): Likewise.
462         * include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1 && __cplusplus >=
463         201103L]: Reflect __CORRECT_ISO_CPP11_MATH_H_PROTO to
464         __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
466 2016-11-15  Jonathan Wakely  <jwakely@redhat.com>
468         PR libstdc++/59406
469         * include/bits/functional_hash.h: Add comment noting difference from
470         FNV-1a.
471         * include/tr1/functional_hash.h: Likewise.
472         * libsupc++/hash_bytes.cc: Likewise.
474         * include/bits/basic_string.h: Reuse _If_sv alias template for new
475         constructor.
477         * doc/xml/manual/intro.xml: Document LWG 2770 status. Remove entries
478         for 2742 and 2748.
479         * doc/html/*: Regenerate.
480         * include/std/utility (__tuple_size_cv_impl): New helper to safely
481         detect tuple_size<T>::value, as per LWG 2770.
482         (tuple_size<cv T>): Adjust partial specializations to derive from
483         __tuple_size_cv_impl.
484         * testsuite/20_util/tuple/cv_tuple_size.cc: Test SFINAE-friendliness.
486         * testsuite/libstdc++-prettyprinters/cxx17.cc: Adjust test for
487         variant<T&>.
489 2016-11-15  Tim Shen  <timshen@google.com>
491         * include/std/variant: Remove variant<T&>, variant<void>, variant<>
492         support to rebase on the post-Issaquah design.
493         * testsuite/20_util/variant/compile.cc: Likewise.
495 2016-11-15  Matthias Klose  <doko@ubuntu.com>
497         * configure: Regenerate.
499 2016-11-15  Jonathan Wakely  <jwakely@redhat.com>
501         * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Fix license
502         text.
503         * testsuite/20_util/any/assign/emplace.cc: Likewise.
504         * testsuite/20_util/any/cons/in_place.cc: Likewise.
505         * testsuite/20_util/any/make_any.cc: Likewise.
506         * testsuite/20_util/any/requirements.cc: Likewise.
507         * testsuite/20_util/any/typedefs.cc: Likewise.
508         * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
509         * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
510         Likewise.
511         * testsuite/20_util/in_place/requirements.cc: Likewise.
512         * testsuite/20_util/optional/77288.cc: Likewise.
513         * testsuite/20_util/optional/assignment/1.cc: Likewise.
514         * testsuite/20_util/optional/assignment/2.cc: Likewise.
515         * testsuite/20_util/optional/assignment/3.cc: Likewise.
516         * testsuite/20_util/optional/assignment/4.cc: Likewise.
517         * testsuite/20_util/optional/assignment/5.cc: Likewise.
518         * testsuite/20_util/optional/assignment/6.cc: Likewise.
519         * testsuite/20_util/optional/assignment/7.cc: Likewise.
520         * testsuite/20_util/optional/cons/77727.cc: Likewise.
521         * testsuite/20_util/optional/cons/move.cc: Likewise.
522         * testsuite/20_util/optional/cons/value.cc: Likewise.
523         * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
524         * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
525         * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
526         * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
527         * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
528         * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
529         * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
530         * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
531         * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
532         * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
533         * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
534         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
535         * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
536         * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
537         * testsuite/20_util/optional/hash.cc: Likewise.
538         * testsuite/20_util/optional/make_optional.cc: Likewise.
539         * testsuite/20_util/optional/observers/1.cc: Likewise.
540         * testsuite/20_util/optional/observers/2.cc: Likewise.
541         * testsuite/20_util/optional/observers/3.cc: Likewise.
542         * testsuite/20_util/optional/observers/4.cc: Likewise.
543         * testsuite/20_util/optional/observers/5.cc: Likewise.
544         * testsuite/20_util/optional/observers/6.cc: Likewise.
545         * testsuite/20_util/optional/relops/1.cc: Likewise.
546         * testsuite/20_util/optional/relops/2.cc: Likewise.
547         * testsuite/20_util/optional/relops/3.cc: Likewise.
548         * testsuite/20_util/optional/relops/4.cc: Likewise.
549         * testsuite/20_util/optional/relops/5.cc: Likewise.
550         * testsuite/20_util/optional/relops/6.cc: Likewise.
551         * testsuite/20_util/optional/requirements.cc: Likewise.
552         * testsuite/20_util/optional/swap/1.cc: Likewise.
553         * testsuite/20_util/optional/typedefs.cc: Likewise.
554         * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
555         * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
556         * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
557         Likewise.
558         * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
559         * testsuite/20_util/variant/hash.cc: Likewise.
560         * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
561         * testsuite/experimental/any/typedefs.cc: Likewise.
562         * testsuite/experimental/array/make_array.cc: Likewise.
563         * testsuite/experimental/array/neg.cc: Likewise.
564         * testsuite/experimental/chrono/value.cc: Likewise.
565         * testsuite/experimental/deque/erasure.cc: Likewise.
566         * testsuite/experimental/forward_list/erasure.cc: Likewise.
567         * testsuite/experimental/list/erasure.cc: Likewise.
568         * testsuite/experimental/map/erasure.cc: Likewise.
569         * testsuite/experimental/memory/observer_ptr/assignment/assign.cc:
570         Likewise.
571         * testsuite/experimental/memory/observer_ptr/cons/cons.cc: Likewise.
572         * testsuite/experimental/memory/observer_ptr/hash/hash.cc: Likewise.
573         * testsuite/experimental/memory/observer_ptr/make_observer.cc:
574         Likewise.
575         * testsuite/experimental/memory/observer_ptr/relops/relops.cc:
576         Likewise.
577         * testsuite/experimental/memory/observer_ptr/requirements.cc: Likewise.
578         * testsuite/experimental/memory/observer_ptr/swap/swap.cc: Likewise.
579         * testsuite/experimental/memory/observer_ptr/typedefs.cc: Likewise.
580         * testsuite/experimental/optional/77288.cc: Likewise.
581         * testsuite/experimental/optional/assignment/1.cc: Likewise.
582         * testsuite/experimental/optional/assignment/2.cc: Likewise.
583         * testsuite/experimental/optional/assignment/3.cc: Likewise.
584         * testsuite/experimental/optional/assignment/4.cc: Likewise.
585         * testsuite/experimental/optional/assignment/5.cc: Likewise.
586         * testsuite/experimental/optional/assignment/6.cc: Likewise.
587         * testsuite/experimental/optional/cons/77727.cc: Likewise.
588         * testsuite/experimental/optional/cons/move.cc: Likewise.
589         * testsuite/experimental/optional/cons/value.cc: Likewise.
590         * testsuite/experimental/optional/cons/value_neg.cc: Likewise.
591         * testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.
592         * testsuite/experimental/optional/constexpr/make_optional.cc: Likewise.
593         * testsuite/experimental/optional/constexpr/observers/1.cc: Likewise.
594         * testsuite/experimental/optional/constexpr/observers/2.cc: Likewise.
595         * testsuite/experimental/optional/constexpr/observers/3.cc: Likewise.
596         * testsuite/experimental/optional/constexpr/observers/4.cc: Likewise.
597         * testsuite/experimental/optional/constexpr/observers/5.cc: Likewise.
598         * testsuite/experimental/optional/constexpr/relops/1.cc: Likewise.
599         * testsuite/experimental/optional/constexpr/relops/2.cc: Likewise.
600         * testsuite/experimental/optional/constexpr/relops/3.cc: Likewise.
601         * testsuite/experimental/optional/constexpr/relops/4.cc: Likewise.
602         * testsuite/experimental/optional/constexpr/relops/5.cc: Likewise.
603         * testsuite/experimental/optional/constexpr/relops/6.cc: Likewise.
604         * testsuite/experimental/optional/make_optional.cc: Likewise.
605         * testsuite/experimental/optional/observers/1.cc: Likewise.
606         * testsuite/experimental/optional/observers/2.cc: Likewise.
607         * testsuite/experimental/optional/observers/3.cc: Likewise.
608         * testsuite/experimental/optional/observers/4.cc: Likewise.
609         * testsuite/experimental/optional/observers/5.cc: Likewise.
610         * testsuite/experimental/optional/relops/1.cc: Likewise.
611         * testsuite/experimental/optional/relops/2.cc: Likewise.
612         * testsuite/experimental/optional/relops/3.cc: Likewise.
613         * testsuite/experimental/optional/relops/4.cc: Likewise.
614         * testsuite/experimental/optional/relops/5.cc: Likewise.
615         * testsuite/experimental/optional/relops/6.cc: Likewise.
616         * testsuite/experimental/optional/requirements.cc: Likewise.
617         * testsuite/experimental/optional/swap/1.cc: Likewise.
618         * testsuite/experimental/optional/typedefs.cc: Likewise.
619         * testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
620         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
621         Likewise.
622         * testsuite/experimental/propagate_const/cons/move.cc: Likewise.
623         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
624         * testsuite/experimental/propagate_const/hash/1.cc: Likewise.
625         * testsuite/experimental/propagate_const/observers/1.cc: Likewise.
626         * testsuite/experimental/propagate_const/relops/1.cc: Likewise.
627         * testsuite/experimental/propagate_const/requirements1.cc: Likewise.
628         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
629         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
630         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
631         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
632         * testsuite/experimental/propagate_const/swap/1.cc: Likewise.
633         * testsuite/experimental/propagate_const/typedefs.cc: Likewise.
634         * testsuite/experimental/random/randint.cc: Likewise.
635         * testsuite/experimental/ratio/value.cc: Likewise.
636         * testsuite/experimental/set/erasure.cc: Likewise.
637         * testsuite/experimental/string/erasure.cc: Likewise.
638         * testsuite/experimental/string_view/typedefs.cc: Likewise.
639         * testsuite/experimental/system_error/value.cc: Likewise.
640         * testsuite/experimental/tuple/tuple_size.cc: Likewise.
641         * testsuite/experimental/type_traits/value.cc: Likewise.
642         * testsuite/experimental/unordered_map/erasure.cc: Likewise.
643         * testsuite/experimental/unordered_set/erasure.cc: Likewise.
644         * testsuite/experimental/vector/erasure.cc: Likewise.
646         * doc/xml/manual/intro.xml: Document LWG 2742 status.
647         * doc/html/*: Regenerate.
648         * include/bits/basic_string.h
649         (basic_string(const T&, size_type, size_type, const Allocator&)): Add
650         constructor for substring of basic_string_view, as per LWG 2742 but
651         with additional constraint to fix ambiguity.
652         * testsuite/21_strings/basic_string/cons/char/9.cc: New test.
653         * testsuite/21_strings/basic_string/cons/wchar_t/9.cc: New test.
655         * doc/xml/manual/intro.xml: Document LWG 2748 status.
656         * include/std/optional (optional<T>::swap): Use is_nothrow_swappable_v
657         for exception specification.
658         (swap(optional<T>&, optional<T>&)): Disable when T is not swappable.
659         * testsuite/20_util/optional/swap/2.cc: New test.
661 2016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
663         Implement P0513R0, Poisoning the Hash.
664         * include/bits/functional_hash.h (__poison_hash): New.
665         * include/bits/unique_ptr.h
666         (hash<unique_ptr<_Tp, _Dp>>): Derive from __poison_hash.
667         * include/std/optional (hash<optional<_Tp>>): Likewise.
668         * include/std/variant (hash<variant<_Types...>>): Likewise.
669         * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
670         * testsuite/20_util/default_delete/void_neg.cc: Likewise.
671         * testsuite/20_util/optional/hash.cc: New.
672         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
673         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Adjust.
674         * testsuite/20_util/unique_ptr/hash/1.cc: Add tests for
675         poisoned fancy pointer hashes.
676         * testsuite/20_util/variant/hash.cc: New.
678 2016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
680         Implement P0504R0 (Revisiting in-place tag types for
681         any/optional/variant).
682         * include/std/any (any(_ValueType&& __value)): Constrain
683         the __is_in_place_type with the decayed type.
684         (make_any): Adjust to use the new tag type.
685         * include/std/utility (in_place_tag): Remove.
686         (in_place_t): Turn into a non-reference tag type.
687         (__in_place, __in_place_type, __in_place_index): Remove.
688         (in_place): Turn into an inline variable of non-reference
689         tag type.
690         (in_place<_Tp>): Remove.
691         (in_place_index<_Idx>): Remove.
692         (in_place_type_t): New.
693         (in_place_type): Turn into a variable template of non-reference
694         type.
695         (in_place_index_t): New.
696         (in_place_index): Turn into a variable template of non-reference
697         type.
698         * include/std/variant
699         (_Variant_storage(in_place_index_t<_Np>, _Args&&...)): Adjust to
700         use the new tag type.
701         (_Union(in_place_index_t<0>, _Args&&...)): Likewise.
702         (_Union(in_place_index_t<_Np>, _Args&&...)): Likewise.
703         (_Variant_base()): Likewise.
704         (variant(_Tp&&)): Likewise.
705         (variant(in_place_type_t<_Tp>, _Args&&...)): Likewise.
706         (variant(in_place_type_t<_Tp>, initializer_list<_Up>,
707         _Args&&...)): Likewise.
708         (variant(in_place_index_t<_Np>, _Args&&...)): Likewise.
709         (variant(in_place_index_t<_Np>, initializer_list<_Up>,
710         _Args&&...)): Likewise
711         (variant(allocator_arg_t, const _Alloc&)): Likewise.
712         (variant(allocator_arg_t, const _Alloc&, _Tp&&)): Likewise.
713         (variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
714         _Args&&...)): Likewise.
715         (variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
716         initializer_list<_Up>, _Args&&...)): Likewise.
717         (variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
718         _Args&&...)): Likewise.
719         (variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
720         initializer_list<_Up>, _Args&&...)): Likewise.
721         (emplace(_Args&&...)): Likewise.
722         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
723         * testsuite/20_util/any/cons/explicit.cc: Likewise.
724         * testsuite/20_util/any/cons/in_place.cc: Likewise.
725         * testsuite/20_util/any/requirements.cc: Add tests to
726         check that any is not constructible from the new in_place_type_t
727         of any value category.
728         * testsuite/20_util/in_place/requirements.cc: Adjust to
729         use the new tag type.
730         * testsuite/20_util/variant/compile.cc: Likewise.
731         * testsuite/20_util/variant/run.cc: Likewise.
733 2016-11-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
735         Use constexpr addressof in optional, SFINAE housekeeping
736         for any, optional and tuple.
737         * include/std/any (__do_emplace(_Args&&...)): New.
738         (__do_emplace(initializer_list<_Up>, _Args&&...)): Likewise.
739         (__any_constructible): Likewise.
740         (__any_constructible_t): Use __any_constructible.
741         (operator=(_ValueType&&)): SFINAE in the return type.
742         (emplace(_Args&&...)): Likewise.
743         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
744         * include/std/optional (_Has_addressof_mem): Remove.
745         (_Has_addressof_free): Likewise.
746         (_Has_addressof): Likewise.
747         (__constexpr_addressof(_Tp&)): Likewise.
748         (operator->): Use std::__addressof.
749         * include/std/tuple (operator=(const tuple<_UElements...>&)):
750         SFINAE in return type.
751         (operator=(tuple<_UElements...>&&)): Likewise.
752         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
754 2016-11-14  Jonathan Wakely  <jwakely@redhat.com>
756         * include/bits/move.h (addressof(const _Tp&&)): Add deleted overload,
757         as per LWG 2598.
759         * include/std/future (future::share(), future<R&>::share())
760         (future<void>::share()): Add noexcept, as per LWG 2556.
762 2016-11-13  Jonathan Wakely  <jwakely@redhat.com>
764         PR libstdc++/78326
765         * include/experimental/memory_resource (memory_resource::_S_max_align):
766         Change access to protected.
768         * doc/xml/manual/status_cxx2017.xml: Update status.
769         * doc/html/manual/status.html: Regenerate.
770         * include/bits/shared_ptr.h (shared_ptr(unique_ptr<_Yp, _Del>)): Add
771         extension constructor to maintain C++14 behaviour.
772         * include/bits/shared_ptr_base.h (__sp_array_delete): Add new struct.
773         (__shared_count(_Ptr, false_type), __shared_count(_Ptr, true_type)):
774         New constructors.
775         (__sp_compatible_with, __sp_is_constructible): Add specializations
776         for array support.
777         (__sp_is_constructible_arr, __sp_is_constructible_arrN): New helpers.
778         (__shared_ptr_access): New base class for observer member functions.
779         (__shared_ptr::element_type): Use remove_extent.
780         (__shared_ptr::_UniqCompatible): Add __sp_compatible_with check.
781         (__shared_ptr(_Yp*)): Use tag dispatching to call new __shared_count
782         constructor.
783         (__shared_ptr(unique_ptr<_Yp, _Del>)): Add extension constructor.
784         (__shared_ptr::operator*, __shared_ptr::operator->): Remove and
785         inherit from __shared_ptr_access base class.
786         (__shared_ptr::__has_esft_base): Return false for array types.
787         (__weak_ptr::element_type): Use remove_extent.
788         * include/experimental/bits/shared_ptr.h (__libfund_v1): Remove.
789         (__shared_ptr<__libfund_v1<_Tp>>): Remove specializations.
790         (__wak_ptr<__libfund_v1<_Tp>>): Likewise.
791         (experimental::__sp_compatible_v): Redefine using
792         __sp_compatible_with.
793         (experimental::__sp_is_constructible_v): Redefine using
794         __sp_is_constructible.
795         (get_deleter, operator<<): Change argument from __shared_ptr to
796         shared_ptr.
797         * testsuite/20_util/shared_ptr/cons/array.cc: New test.
798         * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Adjust for
799         new behaviour.
800         * testsuite/20_util/shared_ptr/observers/array.cc: Test observers for
801         arrays.
802         * testsuite/20_util/shared_ptr/observers/array_neg.cc: New test.
804 2016-11-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
806         Implement P0403R1, Literal suffixes for basic_string_view.
807         * include/std/string_view
808         (operator""sv(const char*, size_t)): New.
809         (operator""sv(const wchar_t*, size_t)): Likewise.
810         (operator""sv(const char16_t*, size_t)): Likewise.
811         (operator""sv(const char32_t*, size_t)): Likewise.
812         * testsuite/21_strings/basic_string_view/literals/types.cc: New.
813         * testsuite/21_strings/basic_string_view/literals/values.cc: Likewise.
814         * testsuite/experimental/string_view/literals/values.cc: Add
815         tests for literals with embedded NULs.
817 2016-11-12  Jonathan Wakely  <jwakely@redhat.com>
819         * src/filesystem/ops.cc (is_empty): Fix typo in exception message.
821         * include/std/future (future_error): Fix public typo to private.
823 2016-11-11  Jonathan Wakely  <jwakely@redhat.com>
825         * include/std/future (future_error): Make existing constructor
826         private and add constructor from future_errc.
828         * include/bits/shared_ptr.h (hash<shared_ptr<T>>): Use element_type.
829         * include/bits/shared_ptr_base.h (hash<__shared_ptr<T, L>>): Likewise.
831 2016-11-10  François Dumont  <fdumont@gcc.gnu.org>
833         * src/c++11/debug.cc (format_word): Delete.
834         (print_literal): New. Replace call to print_word for literals.
836 2016-11-09  Tim Shen  <timshen@google.com>
838         * include/bits/regex.h (regex_iterator::regex_iterator()):
839         Define end() as _M_pregex == nullptr.
840         * include/bits/regex.tcc (regex_iterator::operator==(),
841         regex_iterator::operator++()): Fix operator==() and operator++() to
842         look at null-ness of _M_pregex on both sides.
843         * testsuite/28_regex/regression.cc: New testcase.
845 2016-11-07  Jason Merrill  <jason@redhat.com>
847         * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM)
848         (_GLIBCXX_NOEXCEPT_QUAL): New.
849         * include/std/type_traits (is_function): Use them.
850         * libsubc++/new (launder): Likewise.
851         * libsupc++/cxxabi.h (__pbase_type_info::__masks): Add
852         __noexcept_mask.
853         * libsupc++/pbase_type_info.cc (__do_catch): Handle function
854         pointer conversion.
856 2016-11-07  François Dumont  <fdumont@gcc.gnu.org>
858         * config/abi/pre/gnu-versioned-namespace.ver: Export C++17 new of
859         over-aligned types symbols.
861 2016-10-28  Jonathan Wakely  <jwakely@redhat.com>
863         * include/experimental/bits/fs_path.h (__is_path_src)
864         (_S_range_begin, _S_range_end): Overload to treat string_view as a
865         Source object.
866         (path::operator+=, path::compare): Overload for basic_string_view.
867         * testsuite/experimental/filesystem/path/construct/string_view.cc:
868         New test.
869         * testsuite/experimental/filesystem/path/construct/
870         string_view_cxx17.cc: New test.
872         * include/experimental/bits/fs_path.h
873         (path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
874         iterator's value_type.
875         (path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
876         Do not use operation not supported by input iterators.
877         (path::__is_path_iter_src): Add partial specialization for const
878         encoded character types.
879         * testsuite/experimental/filesystem/path/construct/range.cc: Test
880         construction from input iterators with const value types.
882         * doc/xml/manual/status_cxx2017.xml: Update status.
883         * doc/html/*: Regenerate.
884         * include/std/type_traits (has_unique_object_representations): Guard
885         with __has_builtin check.
886         * libsupc++/new (launder): Define for C++17.
887         * testsuite/18_support/launder/1.cc: New test.
888         * testsuite/18_support/launder/requirements.cc: New test.
889         * testsuite/18_support/launder/requirements_neg.cc: New test.
891 2016-10-27  Uros Bizjak  <ubizjak@gmail.com>
893         PR libstdc++/70975
894         * src/filesystem/ops.cc (do_copy_file) [_GLIBCXX_USE_SENDFILE]:
895         Pass non-null pointer to sendfile for offset argument.
897 2016-10-27  Jonathan Wakely  <jwakely@redhat.com>
899         * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
900         default.cc: Fix effective target selector.
901         * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
902         parms.cc: Likewise.
903         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
904         equal.cc: Likewise.
905         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
906         generate.cc: Likewise.
907         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
908         inequal.cc: Likewise.
909         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
910         serialize.cc: Likewise.
912         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
913         Use end() function to get end iterator.
914         * testsuite/experimental/filesystem/iterators/pop.cc: Remove printf
915         statements that were present for debugging.
916         * testsuite/experimental/filesystem/iterators/
917         recursive_directory_iterator.cc: Use end() function to get end
918         iterator.
919         * testsuite/experimental/filesystem/operations/last_write_time.cc:
920         Only require file timestamps to be accurate to one second.
922 2016-10-26  François Dumont  <fdumont@gcc.gnu.org>
924         * include/bits/stl_map.h (map()): Make default.
925         * include/bits/stl_multimap.h (multimap()): Likewise.
926         * include/bits/stl_multiset.h (multiset()): Likewise.
927         * include/bits/stl_set.h (set()): Likewise.
928         * include/bits/stl_tree.h (_Rb_tree_impl()): Add conditional noexcept.
929         (_Rb_tree()): Make default.
931 2016-10-26  Bernd Edlinger  <bernd.edlinger@hotmail.de>
933         PR libstdc++/78110
934         * libsupc++/new_opa.cc: Don't include <malloc.h> in a free standing
935         environment.  Declare memalign directly in that case.
937 2016-10-26  Jonathan Wakely  <jwakely@redhat.com>
939         * testsuite/experimental/filesystem/iterators/pop.cc: Remove
940         unreliable dependency on directory order.
942 2016-10-26  Edward Smith-Rowland  <3dw4rd@verizon.net>
944         Implement uniform_inside_sphere_distribution extension.
945         * include/ext/random: Implement uniform_inside_sphere_distribution.
946         * include/ext/random.tcc: Ditto.
947         * testsuite/ext/random/uniform_inside_sphere_distribution/
948         cons/default.cc: New.
949         * testsuite/ext/random/uniform_inside_sphere_distribution/
950         cons/parms.cc: New.
951         * testsuite/ext/random/uniform_inside_sphere_distribution/
952         operators/equal.cc: New.
953         * testsuite/ext/random/uniform_inside_sphere_distribution/
954         operators/generate.cc: New.
955         * testsuite/ext/random/uniform_inside_sphere_distribution/
956         operators/inequal.cc: New.
957         * testsuite/ext/random/uniform_inside_sphere_distribution/
958         operators/serialize.cc: New.
960 2016-10-26  Jonathan Wakely  <jwakely@redhat.com>
962         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
963         Overload pop (LWG 2706).
964         * src/filesystem/dir.cc (recursive_directory_iterator::pop): Define
965         new overload.
966         * testsuite/experimental/filesystem/iterators/pop.cc: New test.
968         * src/filesystem/dir.cc (recursive_directory_iterator::increment):
969         Reset state on error.
970         * testsuite/experimental/filesystem/iterators/
971         recursive_directory_iterator.cc: Check state after increment error.
973         PR libstdc++/78111
974         * src/filesystem/ops.cc (canonical): Set error for non-existent path.
976 2016-10-26  Uros Bizjak  <ubizjak@gmail.com>
978         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
979         for PATH_MAX in realpath test.
980         * configure: Regenerate.
982 2016-10-25  Jonathan Wakely  <jwakely@redhat.com>
984         * src/filesystem/ops.cc
985         (last_write_time(const path&, file_time_type, error_code&)): Handle
986         negative times correctly.
987         * testsuite/experimental/filesystem/operations/last_write_time.cc:
988         Test writing file times.
990         * src/filesystem/ops.cc (do_copy_file): Report an error if source or
991         destination is not a regular file (LWG 2712).
992         (equivalent): Fix error handling and result when only one file exists.
993         * testsuite/experimental/filesystem/operations/copy.cc: Remove files
994         created by tests. Test copying directories.
995         * testsuite/experimental/filesystem/operations/copy_file.cc: Remove
996         files created by tests.
997         * testsuite/experimental/filesystem/operations/equivalent.cc: New.
998         * testsuite/experimental/filesystem/operations/is_empty.cc: New.
999         * testsuite/experimental/filesystem/operations/read_symlink.cc: Remove
1000         file created by test.
1001         * testsuite/experimental/filesystem/operations/remove_all.cc: New.
1002         * testsuite/util/testsuite_fs.h (~scoped_file): Only try to remove
1003         file if path is non-empty, to support removal by other means.
1005 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
1007         * src/filesystem/ops.cc (is_empty): Fix error handling.
1008         * testsuite/experimental/filesystem/operations/is_empty.cc: New test.
1010         PR libstdc++/71337
1011         * src/filesystem/ops.cc (temp_directory_path): Pass error_code
1012         argument to other filesystem operations.
1013         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1014         Add testcase for inaccessible directory.
1016         * src/filesystem/dir.cc (open_dir): Return same value for errors
1017         whether ignored or not.
1018         (_Dir::advance(error_code*, directory_options)): Return false on
1019         error.
1020         (directory_iterator(const path&, directory_options, error_code*)):
1021         Create end iterator on error (LWG 2723).
1022         (recursive_directory_iterator(const path&, directory_options,
1023         error_code*)): Likewise.
1024         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1025         Update expected behaviour on error.
1026         * testsuite/experimental/filesystem/iterators/
1027         recursive_directory_iterator.cc: Likewise.
1029         * src/filesystem/ops.cc (close_fd): Remove.
1030         (do_copy_file): Just use close(3) instead of close_fd, to prevent
1031         retrying on error.
1033         * src/filesystem/ops.cc (do_copy_file): Return an error if either
1034         source or destination is not a regular file.
1035         (copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
1036         resolutions.
1037         (read_symlink): Add missing ec.clear().
1038         * testsuite/experimental/filesystem/operations/copy.cc: Update
1039         expected behaviour for copying directories with create_symlinks.
1040         Verify that error_code arguments are cleared if there's no error.
1041         * testsuite/experimental/filesystem/operations/read_symlink.cc: New.
1043 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
1045         Cross-port exception-safety and move fixes of std::any to
1046         std::experimental::any.
1047         * include/experimental/any (operator=(const any&)):
1048         Make strongly exception-safe.
1049         (operator=(any&&)): clear() unconditionally in the case where
1050         rhs has a value.
1051         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
1052         * testsuite/experimental/any/assign/2.cc: Adjust.
1053         * testsuite/experimental/any/assign/exception.cc: New.
1054         * testsuite/experimental/any/cons/2.cc: Adjust.
1055         * testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.
1057 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
1059         Cross-port the latest resolution of LWG2756 and some
1060         bug-fixes to experimental::optional.
1061         PR libstdc++/77288
1062         PR libstdc++/77727
1063         * include/experimental/optional (_Optional_base):
1064         Remove constructors that take a _Tp.
1065         (__is_optional_impl, __is_optional): Remove.
1066         (__converts_from_optional): New.
1067         (optional(_Up&&)): Fix constraints, call base with in_place.
1068         (optional(const optional<_Up>&)): Fix constraints, use emplace.
1069         (optional(optional<_Up>&&)): Likewise.
1070         (operator=(_Up&&)): Fix constraints.
1071         (operator=(const optional<_Up>&)): Likewise.
1072         (operator=(optional<_Up>&&)): Likewise.
1073         (emplace(_Args&&...)): Constrain.
1074         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
1075         * testsuite/experimental/optional/77288.cc: New.
1076         * testsuite/experimental/optional/assignment/5.cc: Adjust.
1077         * testsuite/experimental/optional/cons/77727.cc: New.
1078         * testsuite/experimental/optional/cons/value.cc: Adjust.
1080 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
1082         * include/bits/stl_vector.h (vector::_M_data_ptr, vector::data):
1083         Change return type of non-standard C++98 extension to match C++11.
1085 2016-10-22  François Dumont  <fdumont@gcc.gnu.org>
1087         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_ALGO)
1088         (_GLIBCXX_END_NAMESPACE_ALGO): Default to respectively
1089         _GLIBCXX_BEGIN_NAMESPACE_VERSION and _GLIBCXX_END_NAMESPACE_VERSION.
1090         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER, _GLIBCXX_END_NAMESPACE_CONTAINER):
1091         Likewise.
1093 2016-10-22  Jonathan Wakely  <jwakely@redhat.com>
1095         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1096         Ignore symlink_nofollow flag if file is not a symlink.
1097         * testsuite/experimental/filesystem/operations/permissions.cc: Test
1098         symlink_nofollow on non-symlinks.
1100 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
1102         * include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
1103         Replace with symlink_nofollow (LWG 2720).
1104         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1105         Handle symlink_nofollow.
1106         * testsuite/experimental/filesystem/operations/create_symlink.cc: New
1107         test.
1108         * testsuite/experimental/filesystem/operations/permissions.cc: Test
1109         overload taking error_code.
1111         * include/experimental/bits/fs_ops.h
1112         (exists(const path&, error_code&)): Clear error if status is known
1113         (LWG 2725).
1114         (status(const path&, error_code&)): Handle EOVERFLOW.
1115         * testsuite/experimental/filesystem/operations/exists.cc: Test
1116         overload taking an error_code.
1118         * include/experimental/bits/fs_path.h (path::path(string_type&&))
1119         (path::operator=(string&&), path::assign(string_type&&)): Define
1120         construction and assignment from string_type rvalues (LWG 2707).
1122 2016-10-21  Eelis van der Weegen  <eelis@eelis.net>
1124         * include/bits/stl_algo.h (__gen_two_uniform_ints): Move logic out
1125         of shuffle into new function.
1126         (shuffle): Call __gen_two_uniform_ints.
1127         (__sample<ForwardIterator, OutputIterator, Cat, Size, URBG>): Use
1128         __gen_two_uniform_ints and perform two samples at a time.
1130 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
1132         * include/Makefile.am: Add <bits/refwrap.h> and <bits/std_function.h>.
1133         Order alphabetically.
1134         * include/Makefile.in: Regenerate.
1135         * include/bits/refwrap.h: New header.
1136         (_Maybe_get_result_type,_Weak_result_type_impl, _Weak_result_type)
1137         (_Reference_wrapper_base_impl, _Reference_wrapper_base)
1138         (reference_wrapper, ref, cref): Move here from <functional>.
1139         * include/bits/shared_ptr_base.h: Include <bits/refwrap.h> and
1140         <bits/stl_function.h> instead of <functional>.
1141         * include/bits/std_function.h: New header.
1142         (_Maybe_unary_or_binary_function, bad_function_call)
1143         (__is_location_invariant, _Nocopy_types, _Any_data)
1144         (_Simple_type_wrapper, _Function_base, _Function_handler, function):
1145         Move here from <functional>.
1146         * include/bits/unique_ptr.h: Include <bits/stl_function.h>.
1147         * include/std/functional: Include new headers and move components to
1148         them.
1149         * include/std/future: Include <bits/std_function.h> instead of
1150         <functional>.
1151         * include/std/mutex: Likewise.
1152         * include/std/regex: Likewise.
1153         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
1154         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
1155         * testsuite/20_util/default_delete/void_neg.cc: Likewise.
1156         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1157         lines.
1158         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
1159         * testsuite/30_threads/packaged_task/49668.cc: Include <functional>.
1161         * libsupc++/exception_ptr.h (make_exception_ptr): Qualify new.
1162         * testsuite/18_support/exception_ptr/make_exception_ptr_2.cc: New
1163         test.
1165 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
1167         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
1168         (shared_ptr(auto_ptr&&)): Adjust template parameter lists.
1169         * include/bits/shared_ptr.h (__sp_compatible_with)
1170         (__sp_is_constructible): New helper traits for shared_ptr.
1171         (shared_ptr::_Convertible): Replace with _Constructible.
1172         (shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
1173         to base class.
1174         (shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
1175         with _Constructible and _Assignable.
1176         (shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
1177         instead of _Tp.
1178         (operator<): Likewise.
1179         (operator>): Define in terms of operator<.
1180         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1181         element_type instead of _Tp.
1182         (reinterpret_pointer_cast): Define for C++17.
1183         (weak_ptr::_Convertible): Replace with _Constructible.
1184         (weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
1185         to base class.
1186         (weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
1187         with _Constructible and _Assignable.
1188         * include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
1189         with _Compatible.
1190         (__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
1191         (__shared_ptr::_Compatible): New constraint for converting from
1192         other types of shared_ptr and weak_ptr.
1193         (__shared_ptr::_Assignable): Define in terms of _Compatible.
1194         (__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
1195         constraints for converting from unique_ptr.
1196         (__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
1197         template with _SaveConf, _Compatible and _Assignable. Remove
1198         __glibcxx_function_requires concept checks. Add static assertion for
1199         deleter expression being well-formed.
1200         (__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
1201         (__shared_ptr::operator*, __shared_ptr::operator->)
1202         (__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
1203         of _Tp.
1204         (operator<): Likewise.
1205         (operator>): Define in terms of operator<.
1206         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1207         element_type instead of _Tp.
1208         (reinterpret_pointer_cast): Define for C++17.
1209         (weak_ptr::_Convertible): Replace with _Compatible.
1210         (weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
1211         conversions from other types of weak_ptr and shared_ptr.
1212         (__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
1213         with _Constructible and _Assignable.
1214         (__weak_ptr::_M_ptr): Use element_type instead of _Tp.
1215         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
1216         dg-error pattern.
1217         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
1218         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
1219         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1220         * testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.
1222 2016-10-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
1224         Do the operator= SFINAE in the return type for optional,
1225         not in the template parameters.
1226         * include/std/optional (operator=(_Up&&)): Move SFINAE
1227         from template parameters to the return type.
1228         (operator=(const optional<_Up>&)): Likewise.
1229         (operator=(optional<_Up>&&)): Likewise.
1231 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
1233         * include/bits/allocator.h: Remove trailing whitespace, tab-indent.
1234         * include/ext/new_allocator.h: Likewise.
1236         PR libstdc++/78052
1237         * include/bits/allocator.h (allocator<void>::construct)
1238         (allocator<void>::destroy): Define.
1239         * testsuite/20_util/allocator/void.cc: New test.
1241         * testsuite/20_util/enable_shared_from_this/56383.cc: Add tests for
1242         additional ambiguous cases.
1244 2016-10-19  Jonathan Wakely  <jwakely@redhat.com>
1246         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&)): Call
1247         _M_enable_shared_from_this_with instead of
1248         __enable_shared_from_this_helper.
1249         * include/bits/shared_ptr.h (__enable_shared_from_this_helper):
1250         Remove overload for std::enable_shared_from_this..
1251         (__enable_shared_from_this_base): Define friend function to select a
1252         std::enable_shared_from_this base class.
1253         * include/bits/shared_ptr_base.h (__enable_shared_from_this_helper):
1254         Remove all overloads.
1255         (__shared_ptr): Change all relevant constructors to call
1256         _M_enable_shared_from_this_with instead of
1257         __enable_shared_from_this_helper.
1258         (__shared_ptr::__efst_base_t, __shared_ptr::__has_efst_base): Helpers
1259         to detect accessible and unambiguous enable_shared_from_this bases.
1260         (__shared_ptr::_M_enable_shared_from_this_with): New function to
1261         replace __enable_shared_from_this_helper overloads.
1262         (__enable_shared_from_this_helper): Remove overload for
1263         std::__enable_shared_from_this.
1264         (__enable_shared_from_this_base): Define friend function to select a
1265         std::__enable_shared_from_this base class.
1266         * include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
1267         Change relevant constructors to call _M_enable_shared_from_this_with.
1268         (experimental::shared_ptr::__efst_base_t)
1269         (experimental::shared_ptr::__has_efst_base): Helpers to detect
1270         accessible and unambiguous enable_shared_from_this bases.
1271         (experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
1272         (experimental::__enable_shared_from_this_helper): Remove overload for
1273         std::experimental::enable_shared_from_this.
1274         (experimental::__expt_enable_shared_from_this_base): Define friend
1275         function to select a std::experimental::enable_shared_from_this base.
1276         * testsuite/experimental/memory/shared_ptr/cons/
1277         enable_shared_from_this.cc: New test.
1278         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1279         Adjust expected behaviour for shared_ptr<A[]>.
1281         * include/debug/vector (__gnu_debug::vector::emplace_back): Fix return
1282         type.
1284         * include/backward/auto_ptr.h (dauto_ptr): Correct comment about
1285         conversions from auto_ptr<Derived> rvalues to auto_ptr<Base>.
1286         * testsuite/20_util/auto_ptr/assign_neg.cc: Remove redundant dg-error
1287         directives that only match notes, not errors.
1289         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1290         Add tests for valid and invalid conversions.
1291         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
1292         Likewise.
1294         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
1295         to new file.
1296         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file.  Fix
1297         test for incompatible deleters to not also use incompatible types.
1298         Add tests for incompatible array types.
1300         * include/experimental/bits/shared_ptr.h
1301         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
1302         is_convertible for non-array specialization.
1303         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
1304         constraint for conversions from unique_ptr.
1305         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
1306         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
1307         (__sp_compatible_v): New variable template for trait.
1308         (__sp_is_constructible): New trait to check shared_ptr constraints.
1309         (__sp_is_constructible_v): New variable template for trait.
1310         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
1311         constraint for construction/reset, using __sp_is_constructible_v.
1312         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
1313         constraint for conversions from unique_ptr.
1314         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
1315         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
1316         (shared_ptr::_SafeConv): Constraint for checking constructors.
1317         (shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
1318         (shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
1319         (shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
1320         (shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
1321         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
1322         Remove tests using invalid conversions.
1323         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
1324         New test.
1325         * testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
1326         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
1327         tests using invalid conversions.
1328         * testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
1329         test.
1330         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
1331         Remove tests using invalid conversions.
1333         PR libstdc++/77990
1334         * include/bits/unique_ptr.h (__uniq_ptr_impl): New type to
1335         encapsulate implementation details.
1336         (unique_ptr::unique_ptr(_Up)): Don't copy deleter object.
1337         (unique_ptr::get, unique_ptr::get_deleter, unique_ptr::release):
1338         Call member functions of implementation object.
1339         (unique_ptr<T[], D>): Likewise.
1340         * python/libstdcxx/v6/printers.py (UniquePointerPrinter): Adjust for
1341         new implementation.
1342         * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Likewise.
1343         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1344         lines.
1345         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
1346         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
1347         * testsuite/20_util/unique_ptr/cons/77990.cc: New test.
1349 2016-10-18  Jonathan Wakely  <jwakely@redhat.com>
1351         * include/experimental/bits/shared_ptr.h: Fix indentation.
1353         * include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
1354         Remove const from parameter.
1355         (operator<(const shared_ptr<T>&, nullptr_t)): Use correct
1356         specialization of std::less.
1357         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
1358         Test comparison with nullptr and actually call test functions.
1360         * include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
1361         (__is_nothrow_uses_allocator_constructible_v): Only define for C++14
1362         and later.
1364 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1366         * testsuite/27_io/basic_filebuf/close/12790-1.cc: Remove 'test'
1367         variables.
1368         * testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
1369         * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Likewise.
1370         * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Likewise.
1371         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
1372         * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Likewise.
1373         * testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
1374         * testsuite/27_io/basic_filebuf/close/char/3.cc: Likewise.
1375         * testsuite/27_io/basic_filebuf/close/char/4.cc: Likewise.
1376         * testsuite/27_io/basic_filebuf/close/char/5.cc: Likewise.
1377         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise.
1378         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise.
1379         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
1380         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise.
1381         * testsuite/27_io/basic_filebuf/cons/2020.cc: Likewise.
1382         * testsuite/27_io/basic_filebuf/cons/char/1.cc: Likewise.
1383         * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
1384         * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: Likewise.
1385         * testsuite/27_io/basic_filebuf/imbue/12206.cc: Likewise.
1386         * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
1387         * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
1388         * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
1389         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
1390         * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
1391         * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
1392         * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
1393         * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
1394         * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
1395         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
1396         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
1397         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
1398         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
1399         * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1400         * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
1401         * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
1402         * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
1403         * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Likewise.
1404         * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Likewise.
1405         * testsuite/27_io/basic_filebuf/open/12790-1.cc: Likewise.
1406         * testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
1407         * testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
1408         * testsuite/27_io/basic_filebuf/open/char/3.cc: Likewise.
1409         * testsuite/27_io/basic_filebuf/open/char/4.cc: Likewise.
1410         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1411         * testsuite/27_io/basic_filebuf/overflow/char/1.cc: Likewise.
1412         * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Likewise.
1413         * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Likewise.
1414         * testsuite/27_io/basic_filebuf/overflow/char/3599.cc: Likewise.
1415         * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Likewise.
1416         * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Likewise.
1417         * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Likewise.
1418         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
1419         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
1420         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
1421         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
1422         * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Likewise.
1423         * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Likewise.
1424         * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Likewise.
1425         * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Likewise.
1426         * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Likewise.
1427         * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Likewise.
1428         * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: Likewise.
1429         * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Likewise.
1430         * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
1431         * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Likewise.
1432         * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Likewise.
1433         * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Likewise.
1434         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
1435         * testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
1436         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
1437         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
1438         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
1439         * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Likewise.
1440         * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: Likewise.
1441         * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Likewise.
1442         * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Likewise.
1443         * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Likewise.
1444         * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Likewise.
1445         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
1446         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
1447         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
1448         * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Likewise.
1449         * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Likewise.
1450         * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
1451         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Likewise.
1452         * testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: Likewise.
1453         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
1454         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise.
1455         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise.
1456         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise.
1457         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise.
1458         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise.
1459         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
1460         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Likewise.
1461         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
1462         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
1463         Likewise.
1464         * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
1465         * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Likewise.
1466         * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Likewise.
1467         * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Likewise.
1468         * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Likewise.
1469         * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
1470         * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Likewise.
1471         * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Likewise.
1472         * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Likewise.
1473         * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc: Likewise.
1474         * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Likewise.
1475         * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Likewise.
1476         * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
1477         * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Likewise.
1478         * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
1479         * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Likewise.
1480         * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
1481         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Likewise.
1482         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise.
1483         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise.
1484         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc: Likewise.
1485         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise.
1486         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
1487         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
1488         Likewise.
1489         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
1490         * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Likewise.
1491         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc
1492         * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
1493         * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1494         * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Likewise.
1495         * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Likewise.
1496         * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Likewise.
1497         * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Likewise.
1498         * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Likewise.
1499         * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: Likewise.
1500         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Likewise.
1501         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
1502         * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Likewise.
1503         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
1504         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
1505         * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
1506         * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Likewise.
1507         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
1508         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Likewise.
1509         * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Likewise.
1510         * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Likewise.
1511         * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Likewise.
1512         * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Likewise.
1513         * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Likewise.
1514         * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: Likewise.
1515         * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Likewise.
1516         * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Likewise.
1517         * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
1518         * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Likewise.
1519         * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Likewise.
1520         * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
1521         * testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Likewise.
1522         * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: Likewise.
1523         * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Likewise.
1524         * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Likewise.
1525         * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: Likewise.
1526         * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Likewise.
1527         * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Likewise.
1528         * testsuite/27_io/basic_filebuf/sputc/char/59427.cc: Likewise.
1529         * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Likewise.
1530         * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: Likewise.
1531         * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Likewise.
1532         * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Likewise.
1533         * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: Likewise.
1534         * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Likewise.
1535         * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Likewise.
1536         * testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise.
1537         * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Likewise.
1538         * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Likewise.
1539         * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Likewise.
1540         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
1541         * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Likewise.
1542         * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Likewise.
1543         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
1544         * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: Likewise.
1545         * testsuite/27_io/basic_filebuf/sync/char/1057.cc: Likewise.
1546         * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Likewise.
1547         * testsuite/27_io/basic_filebuf/underflow/char/1.cc: Likewise.
1548         * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Likewise.
1549         * testsuite/27_io/basic_filebuf/underflow/char/3.cc: Likewise.
1550         * testsuite/27_io/basic_filebuf/underflow/char/45841.cc: Likewise.
1551         * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: Likewise.
1552         * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
1553         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
1554         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
1555         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
1556         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
1557         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: Likewise.
1558         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Likewise.
1559         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
1560         * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
1561         * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
1562         * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
1563         * testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
1564         * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
1565         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Likewise.
1566         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
1567         * testsuite/27_io/basic_fstream/cons/1.cc: Likewise.
1568         * testsuite/27_io/basic_fstream/rdbuf/char/2832.cc: Likewise.
1569         * testsuite/27_io/basic_ifstream/cons/2020.cc: Likewise.
1570         * testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
1571         * testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
1572         * testsuite/27_io/basic_ifstream/rdbuf/char/2832.cc: Likewise.
1573         * testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
1574         * testsuite/27_io/basic_ios/cons/2020.cc: Likewise.
1575         * testsuite/27_io/basic_ios/cons/char/1.cc: Likewise.
1576         * testsuite/27_io/basic_ios/cons/char/2.cc: Likewise.
1577         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
1578         * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
1579         * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
1580         * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
1581         * testsuite/27_io/basic_ios/imbue/14072.cc: Likewise.
1582         * testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
1583         * testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
1584         * testsuite/27_io/basic_istream/cons/3.cc: Likewise.
1585         * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Likewise.
1586         * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: Likewise.
1587         * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1588         Likewise.
1589         * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1590         Likewise.
1591         * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1592         Likewise.
1593         * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1594         Likewise.
1595         * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1596         Likewise.
1597         * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1598         Likewise.
1599         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1600         Likewise.
1601         * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1602         Likewise.
1603         * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1604         Likewise.
1605         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1606         Likewise.
1607         * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1608         Likewise.
1609         * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
1610         Likewise.
1611         * testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
1612         Likewise.
1613         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1614         exceptions_badbit_throw.cc: Likewise.
1615         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1616         exceptions_failbit.cc: Likewise.
1617         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1618         exceptions_failbit_throw.cc: Likewise.
1619         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
1620         Likewise.
1621         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
1622         Likewise.
1623         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/02.cc:
1624         Likewise.
1625         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/03.cc:
1626         Likewise.
1627         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/06.cc:
1628         Likewise.
1629         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
1630         Likewise.
1631         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/08.cc:
1632         Likewise.
1633         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
1634         Likewise.
1635         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
1636         Likewise.
1637         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/11.cc:
1638         Likewise.
1639         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1640         Likewise.
1641         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
1642         Likewise.
1643         * testsuite/27_io/basic_istream/extractors_arithmetic/
1644         wchar_t/9555-ia.cc: Likewise.
1645         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1646         dr696.cc: Likewise.
1647         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1648         exceptions_badbit_throw.cc: Likewise.
1649         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1650         exceptions_failbit.cc: Likewise.
1651         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1652         exceptions_failbit_throw.cc: Likewise.
1653         * testsuite/27_io/basic_istream/extractors_character/char/1.cc:
1654         Likewise.
1655         * testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
1656         Likewise.
1657         * testsuite/27_io/basic_istream/extractors_character/char/2.cc:
1658         Likewise.
1659         * testsuite/27_io/basic_istream/extractors_character/char/3.cc:
1660         Likewise.
1661         * testsuite/27_io/basic_istream/extractors_character/char/4.cc:
1662         Likewise.
1663         * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1664         Likewise.
1665         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
1666         Likewise.
1667         * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
1668         Likewise.
1669         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
1670         11095-i.cc: Likewise.
1671         * testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc:
1672         Likewise.
1673         * testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
1674         Likewise.
1675         * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
1676         Likewise.
1677         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
1678         9555-ic.cc: Likewise.
1679         * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
1680         * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Likewise.
1681         * testsuite/27_io/basic_istream/extractors_other/char/26181.cc:
1682         Likewise.
1683         * testsuite/27_io/basic_istream/extractors_other/char/3.cc: Likewise.
1684         * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
1685         Likewise.
1686         * testsuite/27_io/basic_istream/extractors_other/char/9424-in.cc:
1687         Likewise.
1688         * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
1689         Likewise.
1690         * testsuite/27_io/basic_istream/extractors_other/char/
1691         error_failbit.cc: Likewise.
1692         * testsuite/27_io/basic_istream/extractors_other/char/
1693         exceptions_badbit_throw.cc: Likewise.
1694         * testsuite/27_io/basic_istream/extractors_other/char/
1695         exceptions_failbit_throw.cc: Likewise.
1696         * testsuite/27_io/basic_istream/extractors_other/char/
1697         exceptions_null.cc: Likewise.
1698         * testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc:
1699         Likewise.
1700         * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc: Likewise.
1701         * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise.
1702         * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
1703         Likewise.
1704         * testsuite/27_io/basic_istream/extractors_other/wchar_t/3.cc: Likewise.
1705         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9318-in.cc:
1706         Likewise.
1707         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9424-in.cc:
1708         Likewise.
1709         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9555-io.cc:
1710         Likewise.
1711         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1712         error_failbit.cc: Likewise.
1713         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1714         exceptions_badbit_throw.cc: Likewise.
1715         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1716         exceptions_failbit_throw.cc: Likewise.
1717         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1718         exceptions_null.cc: Likewise.
1719         * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1720         * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1721         * testsuite/27_io/basic_istream/get/char/3.cc: Likewise.
1722         * testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
1723         * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
1724         * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
1725         * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1726         * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1727         * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1728         * testsuite/27_io/basic_istream/getline/char/4.cc: Likewise.
1729         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
1730         * testsuite/27_io/basic_istream/getline/char/6.cc: Likewise.
1731         * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
1732         * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Likewise.
1733         * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: Likewise.
1734         * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
1735         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
1736         * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: Likewise.
1737         * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1738         * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
1739         * testsuite/27_io/basic_istream/ignore/char/3.cc: Likewise.
1740         * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1741         * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1742         * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
1743         * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
1744         * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
1745         * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
1746         * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
1747         * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1748         * testsuite/27_io/basic_istream/peek/char/12296.cc: Likewise.
1749         * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1750         * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
1751         * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
1752         * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
1753         * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1754         * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
1755         * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1756         * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1757         * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1758         * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
1759         * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
1760         * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
1761         * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: Likewise.
1762         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Likewise.
1763         * testsuite/27_io/basic_istream/readsome/char/8258.cc: Likewise.
1764         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
1765         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
1766         * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
1767         * testsuite/27_io/basic_istream/seekg/char/2.cc: Likewise.
1768         * testsuite/27_io/basic_istream/seekg/char/26211.cc: Likewise.
1769         * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1770         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1771         * testsuite/27_io/basic_istream/seekg/char/
1772         exceptions_badbit_throw.cc: Likewise.
1773         * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Likewise.
1774         * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Likewise.
1775         * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
1776         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
1777         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
1778         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
1779         * testsuite/27_io/basic_istream/seekg/wchar_t/
1780         exceptions_badbit_throw.cc: Likewise.
1781         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1782         * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
1783         * testsuite/27_io/basic_istream/sentry/char/1.cc: Likewise.
1784         * testsuite/27_io/basic_istream/sentry/char/2.cc: Likewise.
1785         * testsuite/27_io/basic_istream/sentry/char/3.cc: Likewise.
1786         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
1787         * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
1788         * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
1789         * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
1790         * testsuite/27_io/basic_istream/tellg/char/1.cc: Likewise.
1791         * testsuite/27_io/basic_istream/tellg/char/2.cc: Likewise.
1792         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
1793         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1794         * testsuite/27_io/basic_istream/tellg/char/
1795         exceptions_badbit_throw.cc: Likewise.
1796         * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Likewise.
1797         * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Likewise.
1798         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1799         * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
1800         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
1801         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
1802         * testsuite/27_io/basic_istream/tellg/wchar_t/
1803         exceptions_badbit_throw.cc: Likewise.
1804         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1805         * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
1806         * testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
1807         * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
1808         * testsuite/27_io/basic_istringstream/cons/2020.cc: Likewise.
1809         * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Likewise.
1810         * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: Likewise.
1811         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
1812         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
1813         * testsuite/27_io/basic_ofstream/cons/2020.cc: Likewise.
1814         * testsuite/27_io/basic_ofstream/cons/char/1.cc: Likewise.
1815         * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
1816         * testsuite/27_io/basic_ofstream/rdbuf/char/2832.cc: Likewise.
1817         * testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
1818         * testsuite/27_io/basic_ostream/cons/char/9827.cc: Likewise.
1819         * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: Likewise.
1820         * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
1821         * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
1822         * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
1823         * testsuite/27_io/basic_ostream/ends/char/2.cc: Likewise.
1824         * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
1825         * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
1826         * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
1827         * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
1828         * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1829         * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
1830         * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
1831         Likewise.
1832         * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
1833         * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
1834         * testsuite/27_io/basic_ostream/flush/wchar_t/
1835         exceptions_badbit_throw.cc: Likewise.
1836         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1837         Likewise.
1838         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1839         Likewise.
1840         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/3.cc:
1841         Likewise.
1842         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4.cc:
1843         Likewise.
1844         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
1845         Likewise.
1846         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/5.cc:
1847         Likewise.
1848         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
1849         Likewise.
1850         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
1851         Likewise.
1852         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
1853         Likewise.
1854         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1855         exceptions_badbit_throw.cc: Likewise.
1856         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1857         exceptions_failbit_throw.cc: Likewise.
1858         * testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc:
1859         Likewise.
1860         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1861         Likewise.
1862         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
1863         Likewise.
1864         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/3.cc:
1865         Likewise.
1866         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4.cc:
1867         Likewise.
1868         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
1869         Likewise.
1870         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/5.cc:
1871         Likewise.
1872         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
1873         Likewise.
1874         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
1875         Likewise.
1876         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1877         9555-oa.cc: Likewise.
1878         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1879         exceptions_badbit_throw.cc: Likewise.
1880         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1881         exceptions_failbit_throw.cc: Likewise.
1882         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
1883         Likewise.
1884         * testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
1885         Likewise.
1886         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
1887         Likewise.
1888         * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: Likewise.
1889         * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
1890         Likewise.
1891         * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
1892         Likewise.
1893         * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: Likewise.
1894         * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: Likewise.
1895         * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: Likewise.
1896         * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: Likewise.
1897         * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: Likewise.
1898         * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
1899         Likewise.
1900         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1901         11095-od.cc: Likewise.
1902         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1903         11095-oe.cc: Likewise.
1904         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1905         11095-of.cc: Likewise.
1906         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/2.cc:
1907         Likewise.
1908         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1909         28277-1.cc: Likewise.
1910         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1911         28277-2.cc: Likewise.
1912         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1913         28277-3.cc: Likewise.
1914         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1915         28277-4.cc: Likewise.
1916         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/3.cc:
1917         Likewise.
1918         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
1919         Likewise.
1920         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/5.cc:
1921         Likewise.
1922         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/6.cc:
1923         Likewise.
1924         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1925         Likewise.
1926         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1927         Likewise.
1928         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1929         9555-oc.cc: Likewise.
1930         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
1931         * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Likewise.
1932         * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Likewise.
1933         * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: Likewise.
1934         * testsuite/27_io/basic_ostream/inserters_other/char/9318-out.cc:
1935         Likewise.
1936         * testsuite/27_io/basic_ostream/inserters_other/char/9424-out.cc:
1937         Likewise.
1938         * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
1939         Likewise.
1940         * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
1941         Likewise.
1942         * testsuite/27_io/basic_ostream/inserters_other/char/
1943         error_failbit.cc: Likewise.
1944         * testsuite/27_io/basic_ostream/inserters_other/char/
1945         exceptions_badbit_throw.cc: Likewise.
1946         * testsuite/27_io/basic_ostream/inserters_other/char/
1947         exceptions_failbit_throw.cc: Likewise.
1948         * testsuite/27_io/basic_ostream/inserters_other/char/
1949         exceptions_null.cc: Likewise.
1950         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise.
1951         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/3.cc: Likewise.
1952         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/4.cc: Likewise.
1953         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/5.cc: Likewise.
1954         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1955         9318-out.cc: Likewise.
1956         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1957         9424-out.cc: Likewise.
1958         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1959         9555-oo.cc: Likewise.
1960         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1961         error_code.cc: Likewise.
1962         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1963         error_failbit.cc: Likewise.
1964         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1965         exceptions_badbit_throw.cc: Likewise.
1966         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1967         exceptions_failbit_throw.cc: Likewise.
1968         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1969         exceptions_null.cc: Likewise.
1970         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
1971         * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
1972         * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Likewise.
1973         * testsuite/27_io/basic_ostream/seekp/char/2346-sstream.cc: Likewise.
1974         * testsuite/27_io/basic_ostream/seekp/char/
1975         exceptions_badbit_throw.cc: Likewise.
1976         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise.
1977         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-sstream.cc: Likewise.
1978         * testsuite/27_io/basic_ostream/seekp/wchar_t/
1979         exceptions_badbit_throw.cc: Likewise.
1980         * testsuite/27_io/basic_ostream/sentry/char/1.cc: Likewise.
1981         * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
1982         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
1983         * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
1984         * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
1985         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
1986         * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
1987         * testsuite/27_io/basic_ostream/tellp/char/
1988         exceptions_badbit_throw.cc: Likewise.
1989         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1990         * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
1991         * testsuite/27_io/basic_ostream/tellp/wchar_t/
1992         exceptions_badbit_throw.cc: Likewise.
1993         * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
1994         * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
1995         * testsuite/27_io/basic_ostringstream/cons/2020.cc: Likewise.
1996         * testsuite/27_io/basic_ostringstream/cons/char/3.cc: Likewise.
1997         * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
1998         * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc: Likewise.
1999         * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
2000         * testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
2001         * testsuite/27_io/basic_ostringstream/str/char/2.cc: Likewise.
2002         * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
2003         * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
2004         * testsuite/27_io/basic_streambuf/cons/2020.cc: Likewise.
2005         * testsuite/27_io/basic_streambuf/cons/57394.cc: Likewise.
2006         * testsuite/27_io/basic_streambuf/cons/char/1.cc: Likewise.
2007         * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2008         * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
2009         * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
2010         * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
2011         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
2012         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
2013         * testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
2014         * testsuite/27_io/basic_streambuf/in_avail/char/1.cc: Likewise.
2015         * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Likewise.
2016         * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
2017         * testsuite/27_io/basic_streambuf/overflow/char/2.cc: Likewise.
2018         * testsuite/27_io/basic_streambuf/overflow/char/3599.cc: Likewise.
2019         * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
2020         * testsuite/27_io/basic_streambuf/overflow/wchar_t/2.cc: Likewise.
2021         * testsuite/27_io/basic_streambuf/overflow/wchar_t/3599.cc: Likewise.
2022         * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
2023         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
2024         * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
2025         * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
2026         * testsuite/27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
2027         * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
2028         * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2029         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
2030         * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
2031         * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
2032         * testsuite/27_io/basic_stringbuf/cons/2020.cc: Likewise.
2033         * testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
2034         * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
2035         * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Likewise.
2036         * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
2037         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Likewise.
2038         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
2039         * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Likewise.
2040         * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
2041         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Likewise.
2042         * testsuite/27_io/basic_stringbuf/overflow/char/2.cc: Likewise.
2043         * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: Likewise.
2044         * testsuite/27_io/basic_stringbuf/overflow/char/3599.cc: Likewise.
2045         * testsuite/27_io/basic_stringbuf/overflow/char/9988.cc: Likewise.
2046         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc: Likewise.
2047         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/2.cc: Likewise.
2048         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Likewise.
2049         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/3599.cc: Likewise.
2050         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/9988.cc: Likewise.
2051         * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: Likewise.
2052         * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
2053         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
2054         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
2055         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
2056         * testsuite/27_io/basic_stringbuf/sbumpc/char/9825.cc: Likewise.
2057         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
2058         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/9825.cc: Likewise.
2059         * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
2060         * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: Likewise.
2061         * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: Likewise.
2062         * testsuite/27_io/basic_stringbuf/seekoff/char/2.cc: Likewise.
2063         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
2064         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
2065         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: Likewise.
2066         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/2.cc: Likewise.
2067         * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
2068         * testsuite/27_io/basic_stringbuf/seekpos/char/2.cc: Likewise.
2069         * testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: Likewise.
2070         * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Likewise.
2071         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
2072         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/2.cc: Likewise.
2073         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: Likewise.
2074         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/3.cc: Likewise.
2075         * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Likewise.
2076         * testsuite/27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
2077         * testsuite/27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
2078         * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
2079         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Likewise.
2080         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/2.cc: Likewise.
2081         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/3.cc: Likewise.
2082         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
2083         * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
2084         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
2085         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
2086         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
2087         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
2088         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
2089         * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
2090         * testsuite/27_io/basic_stringbuf/sputbackc/char/9425.cc: Likewise.
2091         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
2092         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc: Likewise.
2093         * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Likewise.
2094         * testsuite/27_io/basic_stringbuf/sputc/char/9404-1.cc: Likewise.
2095         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Likewise.
2096         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/9404-1.cc: Likewise.
2097         * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Likewise.
2098         * testsuite/27_io/basic_stringbuf/sputn/char/9404-2.cc: Likewise.
2099         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Likewise.
2100         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/9404-2.cc: Likewise.
2101         * testsuite/27_io/basic_stringbuf/str/char/1.cc: Likewise.
2102         * testsuite/27_io/basic_stringbuf/str/char/2.cc: Likewise.
2103         * testsuite/27_io/basic_stringbuf/str/char/3.cc: Likewise.
2104         * testsuite/27_io/basic_stringbuf/str/char/3955.cc: Likewise.
2105         * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Likewise.
2106         * testsuite/27_io/basic_stringbuf/str/wchar_t/2.cc: Likewise.
2107         * testsuite/27_io/basic_stringbuf/str/wchar_t/3.cc: Likewise.
2108         * testsuite/27_io/basic_stringbuf/str/wchar_t/3955.cc: Likewise.
2109         * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
2110         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
2111         * testsuite/27_io/basic_stringbuf/sync/char/1057.cc: Likewise.
2112         * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
2113         * testsuite/27_io/basic_stringstream/cons/2020.cc: Likewise.
2114         * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Likewise.
2115         * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: Likewise.
2116         * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
2117         * testsuite/27_io/basic_stringstream/str/char/2.cc: Likewise.
2118         * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
2119         * testsuite/27_io/basic_stringstream/str/char/4.cc: Likewise.
2120         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
2121         * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
2122         * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
2123         * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
2124         * testsuite/27_io/fpos/11450.cc: Likewise.
2125         * testsuite/27_io/fpos/14252.cc: Likewise.
2126         * testsuite/27_io/fpos/14320-1.cc: Likewise.
2127         * testsuite/27_io/fpos/14320-2.cc: Likewise.
2128         * testsuite/27_io/fpos/14320-3.cc: Likewise.
2129         * testsuite/27_io/fpos/14320-4.cc: Likewise.
2130         * testsuite/27_io/fpos/14320-5.cc: Likewise.
2131         * testsuite/27_io/fpos/14775.cc: Likewise.
2132         * testsuite/27_io/fpos/mbstate_t/1.cc: Likewise.
2133         * testsuite/27_io/fpos/mbstate_t/12065.cc: Likewise.
2134         * testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
2135         * testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
2136         * testsuite/27_io/ios_base/callbacks/1.cc: Likewise.
2137         * testsuite/27_io/ios_base/failure/what-1.cc: Likewise.
2138         * testsuite/27_io/ios_base/failure/what-2.cc: Likewise.
2139         * testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
2140         * testsuite/27_io/ios_base/failure/what-big.cc: Likewise.
2141         * testsuite/27_io/ios_base/state/1.cc: Likewise.
2142         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
2143         * testsuite/27_io/ios_base/storage/11584.cc: Likewise.
2144         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
2145         * testsuite/27_io/ios_base/sync_with_stdio/2.cc: Likewise.
2146         * testsuite/27_io/manipulators/adjustfield/char/1.cc: Likewise.
2147         * testsuite/27_io/manipulators/adjustfield/char/2.cc
2148         * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: Likewise.
2149         * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
2150         * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
2151         * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
2152         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
2153         * testsuite/27_io/manipulators/extended/get_money/char/51288.cc:
2154         Likewise.
2155         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
2156         Likewise.
2157         * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
2158         Likewise.
2159         * testsuite/27_io/manipulators/extended/get_time/char/1.cc
2160         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Likewise.
2161         * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: Likewise.
2162         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Likewise.
2163         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
2164         * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
2165         Likewise.
2166         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
2167         Likewise.
2168         * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
2169         Likewise.
2170         * testsuite/27_io/manipulators/extended/put_time/char/1.cc: Likewise.
2171         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Likewise.
2172         * testsuite/27_io/manipulators/extended/put_time/wchar_t/1.cc: Likewise.
2173         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Likewise.
2174         * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
2175         * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
2176         * testsuite/27_io/manipulators/standard/char/dr2344.cc: Likewise.
2177         * testsuite/27_io/manipulators/standard/char/quoted.cc: Likewise.
2178         * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
2179         * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
2180         * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: Likewise.
2181         * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: Likewise.
2182         * testsuite/27_io/objects/char/1.cc: Likewise.
2183         * testsuite/27_io/objects/char/10.cc: Likewise.
2184         * testsuite/27_io/objects/char/3045.cc: Likewise.
2185         * testsuite/27_io/objects/char/41037.cc: Likewise.
2186         * testsuite/27_io/objects/char/5.cc: Likewise.
2187         * testsuite/27_io/objects/char/6.cc: Likewise.
2188         * testsuite/27_io/objects/char/6548_xin.cc: Likewise.
2189         * testsuite/27_io/objects/char/6648-1_xin.cc: Likewise.
2190         * testsuite/27_io/objects/char/6648-2_xin.cc: Likewise.
2191         * testsuite/27_io/objects/char/7744_xin.cc: Likewise.
2192         * testsuite/27_io/objects/char/8.cc: Likewise.
2193         * testsuite/27_io/objects/char/9.cc: Likewise.
2194         * testsuite/27_io/objects/char/9661-2_xin.cc: Likewise.
2195         * testsuite/27_io/objects/char/dr455.cc: Likewise.
2196         * testsuite/27_io/objects/wchar_t/1.cc: Likewise.
2197         * testsuite/27_io/objects/wchar_t/10.cc: Likewise.
2198         * testsuite/27_io/objects/wchar_t/11.cc: Likewise.
2199         * testsuite/27_io/objects/wchar_t/12.cc: Likewise.
2200         * testsuite/27_io/objects/wchar_t/13.cc: Likewise.
2201         * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Likewise.
2202         * testsuite/27_io/objects/wchar_t/3045.cc: Likewise.
2203         * testsuite/27_io/objects/wchar_t/41037.cc: Likewise.
2204         * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
2205         * testsuite/27_io/objects/wchar_t/6548_xin.cc: Likewise.
2206         * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: Likewise.
2207         * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: Likewise.
2208         * testsuite/27_io/objects/wchar_t/7744_xin.cc: Likewise.
2209         * testsuite/27_io/objects/wchar_t/8.cc: Likewise.
2210         * testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
2211         * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: Likewise.
2212         * testsuite/27_io/objects/wchar_t/9662.cc: Likewise.
2213         * testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
2214         * testsuite/27_io/types/3.cc: Likewise.
2216 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
2218         PR libstdc++/77994
2219         * include/bits/stl_algo.h (sample): Convert size argument to iterator
2220         difference type.
2221         * include/experimental/algorithm (experimental::sample): Likewise.
2222         * testsuite/25_algorithms/sample/2.cc: New test.
2224 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2226         * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
2227         * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
2229 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
2231         * testsuite/array/capacity/empty.cc: Remove 'test' variables.
2232         * testsuite/array/capacity/max_size.cc: Likewise.
2233         * testsuite/array/capacity/size.cc: Likewise.
2234         * testsuite/array/comparison_operators/equal.cc: Likewise.
2235         * testsuite/array/comparison_operators/greater.cc: Likewise.
2236         * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
2237         * testsuite/array/comparison_operators/less.cc: Likewise.
2238         * testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
2239         * testsuite/array/comparison_operators/not_equal.cc: Likewise.
2240         * testsuite/array/element_access/54388.cc: Likewise.
2241         * testsuite/array/element_access/at_out_of_range.cc: Likewise.
2242         * testsuite/array/element_access/back.cc: Likewise.
2243         * testsuite/array/element_access/data.cc: Likewise.
2244         * testsuite/array/element_access/front.cc: Likewise.
2245         * testsuite/array/iterators/end_is_one_past.cc: Likewise.
2246         * testsuite/array/requirements/contiguous.cc: Likewise.
2247         * testsuite/array/requirements/fill.cc: Likewise.
2248         * testsuite/array/requirements/member_swap.cc: Likewise.
2249         * testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
2250         * testsuite/array/specialized_algorithms/swap.cc: Likewise.
2251         * testsuite/array/tuple_interface/tuple_element.cc: Likewise.
2252         * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
2253         * testsuite/array/tuple_interface/tuple_size.cc: Likewise.
2254         * testsuite/bitset/all/1.cc: Likewise.
2255         * testsuite/bitset/cons/1.cc: Likewise.
2256         * testsuite/bitset/cons/16020.cc: Likewise.
2257         * testsuite/bitset/cons/2.cc: Likewise.
2258         * testsuite/bitset/cons/3.cc: Likewise.
2259         * testsuite/bitset/cons/50268.cc: Likewise.
2260         * testsuite/bitset/cons/6282.cc: Likewise.
2261         * testsuite/bitset/cons/dr1325-2.cc: Likewise.
2262         * testsuite/bitset/cons/dr396.cc: Likewise.
2263         * testsuite/bitset/ext/15361.cc: Likewise.
2264         * testsuite/bitset/input/1.cc: Likewise.
2265         * testsuite/bitset/operations/1.cc: Likewise.
2266         * testsuite/bitset/operations/13838.cc: Likewise.
2267         * testsuite/bitset/operations/2.cc: Likewise.
2268         * testsuite/bitset/test/1.cc: Likewise.
2269         * testsuite/bitset/to_string/1.cc: Likewise.
2270         * testsuite/bitset/to_string/dr396.cc: Likewise.
2271         * testsuite/bitset/to_ullong/1.cc: Likewise.
2272         * testsuite/bitset/to_ulong/1.cc: Likewise.
2273         * testsuite/deque/allocator/copy.cc: Likewise.
2274         * testsuite/deque/allocator/copy_assign.cc: Likewise.
2275         * testsuite/deque/allocator/ext_ptr.cc: Likewise.
2276         * testsuite/deque/allocator/minimal.cc: Likewise.
2277         * testsuite/deque/allocator/move.cc: Likewise.
2278         * testsuite/deque/allocator/move_assign.cc: Likewise.
2279         * testsuite/deque/allocator/swap.cc: Likewise.
2280         * testsuite/deque/capacity/29134-2.cc: Likewise.
2281         * testsuite/deque/capacity/29134.cc: Likewise.
2282         * testsuite/deque/capacity/moveable.cc: Likewise.
2283         * testsuite/deque/capacity/resize_size.cc: Likewise.
2284         * testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
2285         * testsuite/deque/cons/1.cc: Likewise.
2286         * testsuite/deque/cons/2.cc: Likewise.
2287         * testsuite/deque/cons/assign/1.cc: Likewise.
2288         * testsuite/deque/cons/cons_size.cc: Likewise.
2289         * testsuite/deque/cons/moveable.cc: Likewise.
2290         * testsuite/deque/modifiers/erase/1.cc: Likewise.
2291         * testsuite/deque/modifiers/erase/2.cc: Likewise.
2292         * testsuite/deque/modifiers/erase/3.cc: Likewise.
2293         * testsuite/deque/modifiers/erase/moveable.cc: Likewise.
2294         * testsuite/deque/modifiers/moveable.cc: Likewise.
2295         * testsuite/deque/modifiers/push_back/49836.cc: Likewise.
2296         * testsuite/deque/modifiers/push_front/49836.cc: Likewise.
2297         * testsuite/deque/modifiers/swap/1.cc: Likewise.
2298         * testsuite/deque/modifiers/swap/2.cc: Likewise.
2299         * testsuite/deque/modifiers/swap/3.cc: Likewise.
2300         * testsuite/deque/operators/1.cc: Likewise.
2301         * testsuite/deque/operators/2.cc: Likewise.
2302         * testsuite/forward_list/allocator/copy.cc: Likewise.
2303         * testsuite/forward_list/allocator/copy_assign.cc: Likewise.
2304         * testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
2305         * testsuite/forward_list/allocator/minimal.cc: Likewise.
2306         * testsuite/forward_list/allocator/move.cc: Likewise.
2307         * testsuite/forward_list/allocator/move_assign.cc: Likewise.
2308         * testsuite/forward_list/allocator/swap.cc: Likewise.
2309         * testsuite/forward_list/capacity/1.cc: Likewise.
2310         * testsuite/forward_list/capacity/resize_size.cc: Likewise.
2311         * testsuite/forward_list/comparable.cc: Likewise.
2312         * testsuite/forward_list/cons/1.cc: Likewise.
2313         * testsuite/forward_list/cons/2.cc: Likewise.
2314         * testsuite/forward_list/cons/3.cc: Likewise.
2315         * testsuite/forward_list/cons/4.cc: Likewise.
2316         * testsuite/forward_list/cons/5.cc: Likewise.
2317         * testsuite/forward_list/cons/6.cc: Likewise.
2318         * testsuite/forward_list/cons/7.cc: Likewise.
2319         * testsuite/forward_list/cons/8.cc: Likewise.
2320         * testsuite/forward_list/cons/9.cc: Likewise.
2321         * testsuite/forward_list/cons/cons_size.cc: Likewise.
2322         * testsuite/forward_list/cons/moveable.cc: Likewise.
2323         * testsuite/forward_list/debug/clear.cc: Likewise.
2324         * testsuite/forward_list/debug/construct4_neg.cc: Likewise.
2325         * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
2326         * testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
2327         * testsuite/forward_list/debug/move_constructor.cc: Likewise.
2328         * testsuite/forward_list/debug/move_neg.cc: Likewise.
2329         * testsuite/forward_list/debug/splice_after.cc: Likewise.
2330         * testsuite/forward_list/debug/swap.cc: Likewise.
2331         * testsuite/forward_list/modifiers/1.cc: Likewise.
2332         * testsuite/forward_list/modifiers/2.cc: Likewise.
2333         * testsuite/forward_list/modifiers/3.cc: Likewise.
2334         * testsuite/forward_list/modifiers/4.cc: Likewise.
2335         * testsuite/forward_list/modifiers/5.cc: Likewise.
2336         * testsuite/forward_list/modifiers/6.cc: Likewise.
2337         * testsuite/forward_list/operations/1.cc: Likewise.
2338         * testsuite/forward_list/operations/2.cc: Likewise.
2339         * testsuite/forward_list/operations/3.cc: Likewise.
2340         * testsuite/forward_list/operations/4.cc: Likewise.
2341         * testsuite/forward_list/operations/5.cc: Likewise.
2342         * testsuite/forward_list/operations/6.cc: Likewise.
2343         * testsuite/forward_list/operations/7.cc: Likewise.
2344         * testsuite/forward_list/operations/remove_freed.cc: Likewise.
2345         * testsuite/list/61347.cc: Likewise.
2346         * testsuite/list/allocator/copy.cc: Likewise.
2347         * testsuite/list/allocator/copy_assign.cc: Likewise.
2348         * testsuite/list/allocator/minimal.cc: Likewise.
2349         * testsuite/list/allocator/move.cc: Likewise.
2350         * testsuite/list/allocator/move_assign.cc: Likewise.
2351         * testsuite/list/allocator/swap.cc: Likewise.
2352         * testsuite/list/capacity/1.h: Likewise.
2353         * testsuite/list/capacity/29134.cc: Likewise.
2354         * testsuite/list/capacity/resize_size.cc: Likewise.
2355         * testsuite/list/cons/1.h: Likewise.
2356         * testsuite/list/cons/2.h: Likewise.
2357         * testsuite/list/cons/3.h: Likewise.
2358         * testsuite/list/cons/4.h: Likewise.
2359         * testsuite/list/cons/5.h: Likewise.
2360         * testsuite/list/cons/6.h: Likewise.
2361         * testsuite/list/cons/7.h: Likewise.
2362         * testsuite/list/cons/8.h: Likewise.
2363         * testsuite/list/cons/9.h: Likewise.
2364         * testsuite/list/cons/cons_size.cc: Likewise.
2365         * testsuite/list/cons/moveable.h: Likewise.
2366         * testsuite/list/debug/invalidation/1.cc: Likewise.
2367         * testsuite/list/debug/invalidation/2.cc: Likewise.
2368         * testsuite/list/debug/invalidation/3.cc: Likewise.
2369         * testsuite/list/debug/invalidation/4.cc: Likewise.
2370         * testsuite/list/modifiers/1.h: Likewise.
2371         * testsuite/list/modifiers/2.h: Likewise.
2372         * testsuite/list/modifiers/3.h: Likewise.
2373         * testsuite/list/modifiers/insert/25288.h: Likewise.
2374         * testsuite/list/modifiers/swap/1.h: Likewise.
2375         * testsuite/list/modifiers/swap/2.h: Likewise.
2376         * testsuite/list/modifiers/swap/3.h: Likewise.
2377         * testsuite/list/operations/1.h: Likewise.
2378         * testsuite/list/operations/2.h: Likewise.
2379         * testsuite/list/operations/3.h: Likewise.
2380         * testsuite/list/operations/4.h: Likewise.
2381         * testsuite/list/operations/42352.cc: Likewise.
2382         * testsuite/map/allocator/copy.cc: Likewise.
2383         * testsuite/map/allocator/copy_assign.cc: Likewise.
2384         * testsuite/map/allocator/init-list.cc: Likewise.
2385         * testsuite/map/allocator/minimal.cc: Likewise.
2386         * testsuite/map/allocator/move.cc: Likewise.
2387         * testsuite/map/allocator/move_assign.cc: Likewise.
2388         * testsuite/map/allocator/swap.cc: Likewise.
2389         * testsuite/map/capacity/29134.cc: Likewise.
2390         * testsuite/map/cons/moveable.cc: Likewise.
2391         * testsuite/map/debug/construct5_neg.cc: Likewise.
2392         * testsuite/map/debug/move_assign_neg.cc: Likewise.
2393         * testsuite/map/debug/move_neg.cc: Likewise.
2394         * testsuite/map/element_access/1.cc: Likewise.
2395         * testsuite/map/element_access/2.cc: Likewise.
2396         * testsuite/map/element_access/39901.cc: Likewise.
2397         * testsuite/map/init-list.cc: Likewise.
2398         * testsuite/map/modifiers/dr130.cc: Likewise.
2399         * testsuite/map/modifiers/emplace/1.cc: Likewise.
2400         * testsuite/map/modifiers/extract.cc: Likewise.
2401         * testsuite/map/modifiers/insert/1.cc: Likewise.
2402         * testsuite/map/modifiers/insert/16813.cc: Likewise.
2403         * testsuite/map/modifiers/insert/2.cc: Likewise.
2404         * testsuite/map/modifiers/insert/3.cc: Likewise.
2405         * testsuite/map/modifiers/insert/4.cc: Likewise.
2406         * testsuite/map/modifiers/insert/5.cc: Likewise.
2407         * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
2408         * testsuite/map/modifiers/merge.cc: Likewise.
2409         * testsuite/map/modifiers/swap/1.cc: Likewise.
2410         * testsuite/map/modifiers/swap/2.cc: Likewise.
2411         * testsuite/map/modifiers/swap/3.cc: Likewise.
2412         * testsuite/map/modifiers/try_emplace/1.cc: Likewise.
2413         * testsuite/map/operations/1.cc: Likewise.
2414         * testsuite/map/operations/count.cc: Likewise.
2415         * testsuite/map/operators/1_neg.cc: Likewise.
2416         * testsuite/map/operators/2.cc: Likewise.
2417         * testsuite/multimap/allocator/copy.cc: Likewise.
2418         * testsuite/multimap/allocator/copy_assign.cc: Likewise.
2419         * testsuite/multimap/allocator/init-list.cc: Likewise.
2420         * testsuite/multimap/allocator/minimal.cc: Likewise.
2421         * testsuite/multimap/allocator/move.cc: Likewise.
2422         * testsuite/multimap/allocator/move_assign.cc: Likewise.
2423         * testsuite/multimap/allocator/swap.cc: Likewise.
2424         * testsuite/multimap/capacity/29134.cc: Likewise.
2425         * testsuite/multimap/cons/moveable.cc: Likewise.
2426         * testsuite/multimap/debug/construct5_neg.cc: Likewise.
2427         * testsuite/multimap/debug/move_assign_neg.cc: Likewise.
2428         * testsuite/multimap/debug/move_neg.cc: Likewise.
2429         * testsuite/multimap/init-list.cc: Likewise.
2430         * testsuite/multimap/modifiers/dr130.cc: Likewise.
2431         * testsuite/multimap/modifiers/emplace/1.cc: Likewise.
2432         * testsuite/multimap/modifiers/extract.cc: Likewise.
2433         * testsuite/multimap/modifiers/insert/1.cc: Likewise.
2434         * testsuite/multimap/modifiers/insert/2.cc: Likewise.
2435         * testsuite/multimap/modifiers/insert/22102.cc: Likewise.
2436         * testsuite/multimap/modifiers/insert/3.cc: Likewise.
2437         * testsuite/multimap/modifiers/insert/4.cc: Likewise.
2438         * testsuite/multimap/modifiers/merge.cc: Likewise.
2439         * testsuite/multimap/modifiers/swap/1.cc: Likewise.
2440         * testsuite/multimap/modifiers/swap/2.cc: Likewise.
2441         * testsuite/multimap/modifiers/swap/3.cc: Likewise.
2442         * testsuite/multimap/operations/1.cc: Likewise.
2443         * testsuite/multimap/operations/count.cc: Likewise.
2444         * testsuite/multiset/allocator/copy.cc: Likewise.
2445         * testsuite/multiset/allocator/copy_assign.cc: Likewise.
2446         * testsuite/multiset/allocator/init-list.cc: Likewise.
2447         * testsuite/multiset/allocator/minimal.cc: Likewise.
2448         * testsuite/multiset/allocator/move.cc: Likewise.
2449         * testsuite/multiset/allocator/move_assign.cc: Likewise.
2450         * testsuite/multiset/allocator/swap.cc: Likewise.
2451         * testsuite/multiset/capacity/29134.cc: Likewise.
2452         * testsuite/multiset/cons/moveable.cc: Likewise.
2453         * testsuite/multiset/debug/construct5_neg.cc: Likewise.
2454         * testsuite/multiset/debug/invalidation/2.cc: Likewise.
2455         * testsuite/multiset/debug/move_assign_neg.cc: Likewise.
2456         * testsuite/multiset/debug/move_neg.cc: Likewise.
2457         * testsuite/multiset/init-list.cc: Likewise.
2458         * testsuite/multiset/modifiers/dr130.cc: Likewise.
2459         * testsuite/multiset/modifiers/emplace/1.cc: Likewise.
2460         * testsuite/multiset/modifiers/extract.cc: Likewise.
2461         * testsuite/multiset/modifiers/insert/1.cc: Likewise.
2462         * testsuite/multiset/modifiers/insert/2.cc: Likewise.
2463         * testsuite/multiset/modifiers/insert/22102.cc: Likewise.
2464         * testsuite/multiset/modifiers/insert/3.cc: Likewise.
2465         * testsuite/multiset/modifiers/insert/4.cc: Likewise.
2466         * testsuite/multiset/modifiers/merge.cc: Likewise.
2467         * testsuite/multiset/modifiers/swap/1.cc: Likewise.
2468         * testsuite/multiset/modifiers/swap/2.cc: Likewise.
2469         * testsuite/multiset/modifiers/swap/3.cc: Likewise.
2470         * testsuite/multiset/operations/1.cc: Likewise.
2471         * testsuite/multiset/operations/count.cc: Likewise.
2472         * testsuite/priority_queue/moveable.cc: Likewise.
2473         * testsuite/queue/moveable.cc: Likewise.
2474         * testsuite/set/allocator/copy.cc: Likewise.
2475         * testsuite/set/allocator/copy_assign.cc: Likewise.
2476         * testsuite/set/allocator/init-list.cc: Likewise.
2477         * testsuite/set/allocator/minimal.cc: Likewise.
2478         * testsuite/set/allocator/move.cc: Likewise.
2479         * testsuite/set/allocator/move_assign.cc: Likewise.
2480         * testsuite/set/allocator/swap.cc: Likewise.
2481         * testsuite/set/capacity/29134.cc: Likewise.
2482         * testsuite/set/cons/moveable.cc: Likewise.
2483         * testsuite/set/debug/construct5_neg.cc: Likewise.
2484         * testsuite/set/debug/invalidation/2.cc: Likewise.
2485         * testsuite/set/debug/move_assign_neg.cc: Likewise.
2486         * testsuite/set/debug/move_neg.cc: Likewise.
2487         * testsuite/set/init-list.cc: Likewise.
2488         * testsuite/set/modifiers/17948.cc: Likewise.
2489         * testsuite/set/modifiers/dr130.cc: Likewise.
2490         * testsuite/set/modifiers/emplace/1.cc: Likewise.
2491         * testsuite/set/modifiers/extract.cc: Likewise.
2492         * testsuite/set/modifiers/insert/1.cc: Likewise.
2493         * testsuite/set/modifiers/insert/2.cc: Likewise.
2494         * testsuite/set/modifiers/insert/3.cc: Likewise.
2495         * testsuite/set/modifiers/merge.cc: Likewise.
2496         * testsuite/set/modifiers/swap/1.cc: Likewise.
2497         * testsuite/set/modifiers/swap/2.cc: Likewise.
2498         * testsuite/set/modifiers/swap/3.cc: Likewise.
2499         * testsuite/set/operations/1.cc: Likewise.
2500         * testsuite/set/operations/count.cc: Likewise.
2501         * testsuite/set/operators/1_neg.cc: Likewise.
2502         * testsuite/unordered_map/allocator/copy.cc: Likewise.
2503         * testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
2504         * testsuite/unordered_map/allocator/minimal.cc: Likewise.
2505         * testsuite/unordered_map/allocator/move.cc: Likewise.
2506         * testsuite/unordered_map/allocator/move_assign.cc: Likewise.
2507         * testsuite/unordered_map/allocator/swap.cc: Likewise.
2508         * testsuite/unordered_map/cons/moveable.cc: Likewise.
2509         * testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
2510         * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
2511         * testsuite/unordered_map/debug/move_neg.cc: Likewise.
2512         * testsuite/unordered_map/dr761.cc: Likewise.
2513         * testsuite/unordered_map/erase/1.cc: Likewise.
2514         * testsuite/unordered_map/erase/24061-map.cc: Likewise.
2515         * testsuite/unordered_map/erase/54276.cc: Likewise.
2516         * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
2517         * testsuite/unordered_map/init-list.cc: Likewise.
2518         * testsuite/unordered_map/insert/24061-map.cc: Likewise.
2519         * testsuite/unordered_map/insert/57619.C: Likewise.
2520         * testsuite/unordered_map/insert/array_syntax.cc: Likewise.
2521         * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
2522         * testsuite/unordered_map/insert/map_range.cc: Likewise.
2523         * testsuite/unordered_map/insert/map_single.cc: Likewise.
2524         * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
2525         * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
2526         * testsuite/unordered_map/modifiers/61667.cc: Likewise.
2527         * testsuite/unordered_map/modifiers/emplace.cc: Likewise.
2528         * testsuite/unordered_map/modifiers/extract.cc: Likewise.
2529         * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
2530         * testsuite/unordered_map/modifiers/merge.cc: Likewise.
2531         * testsuite/unordered_map/modifiers/reserve.cc: Likewise.
2532         * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
2533         * testsuite/unordered_map/operations/count.cc: Likewise.
2534         * testsuite/unordered_map/operators/1.cc: Likewise.
2535         * testsuite/unordered_map/operators/2.cc: Likewise.
2536         * testsuite/unordered_multimap/allocator/copy.cc: Likewise.
2537         * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
2538         * testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
2539         * testsuite/unordered_multimap/allocator/move.cc: Likewise.
2540         * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
2541         * testsuite/unordered_multimap/allocator/swap.cc: Likewise.
2542         * testsuite/unordered_multimap/cons/moveable.cc: Likewise.
2543         * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
2544         * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
2545         * testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
2546         * testsuite/unordered_multimap/erase/1.cc: Likewise.
2547         * testsuite/unordered_multimap/erase/2.cc: Likewise.
2548         * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
2549         * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
2550         * testsuite/unordered_multimap/erase/54276.cc: Likewise.
2551         * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
2552         * testsuite/unordered_multimap/init-list.cc: Likewise.
2553         * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
2554         * testsuite/unordered_multimap/insert/51866.cc: Likewise.
2555         * testsuite/unordered_multimap/insert/52476.cc: Likewise.
2556         * testsuite/unordered_multimap/insert/53115.cc: Likewise.
2557         * testsuite/unordered_multimap/insert/57619.C: Likewise.
2558         * testsuite/unordered_multimap/insert/hint.cc: Likewise.
2559         * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
2560         * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
2561         * testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
2562         Likewise.
2563         * testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
2564         Likewise.
2565         * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
2566         * testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
2567         * testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
2568         * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
2569         * testsuite/unordered_multimap/operations/count.cc: Likewise.
2570         * testsuite/unordered_multimap/operators/1.cc: Likewise.
2571         * testsuite/unordered_multimap/operators/2.cc: Likewise.
2572         * testsuite/unordered_multiset/allocator/copy.cc: Likewise.
2573         * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
2574         * testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
2575         * testsuite/unordered_multiset/allocator/move.cc: Likewise.
2576         * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
2577         * testsuite/unordered_multiset/allocator/swap.cc: Likewise.
2578         * testsuite/unordered_multiset/cons/copy.cc: Likewise.
2579         * testsuite/unordered_multiset/cons/moveable.cc: Likewise.
2580         * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
2581         * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
2582         * testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
2583         * testsuite/unordered_multiset/erase/1.cc: Likewise.
2584         * testsuite/unordered_multiset/erase/2.cc: Likewise.
2585         * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
2586         * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
2587         * testsuite/unordered_multiset/init-list.cc: Likewise.
2588         * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
2589         * testsuite/unordered_multiset/insert/51866.cc: Likewise.
2590         * testsuite/unordered_multiset/insert/52476.cc: Likewise.
2591         * testsuite/unordered_multiset/insert/53115.cc: Likewise.
2592         * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
2593         * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
2594         * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
2595         * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
2596         * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
2597         * testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
2598         * testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
2599         * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
2600         * testsuite/unordered_multiset/operations/count.cc: Likewise.
2601         * testsuite/unordered_multiset/operators/1.cc: Likewise.
2602         * testsuite/unordered_set/allocator/copy.cc: Likewise.
2603         * testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
2604         * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
2605         * testsuite/unordered_set/allocator/minimal.cc: Likewise.
2606         * testsuite/unordered_set/allocator/move.cc: Likewise.
2607         * testsuite/unordered_set/allocator/move_assign.cc: Likewise.
2608         * testsuite/unordered_set/allocator/swap.cc: Likewise.
2609         * testsuite/unordered_set/buckets/swap.cc: Likewise.
2610         * testsuite/unordered_set/cons/moveable.cc: Likewise.
2611         * testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
2612         * testsuite/unordered_set/debug/debug_functions.cc: Likewise.
2613         * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
2614         * testsuite/unordered_set/debug/move_neg.cc: Likewise.
2615         * testsuite/unordered_set/erase/1.cc: Likewise.
2616         * testsuite/unordered_set/erase/24061-set.cc: Likewise.
2617         * testsuite/unordered_set/hash_policy/26132.cc: Likewise.
2618         * testsuite/unordered_set/hash_policy/71181.cc: Likewise.
2619         * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
2620         * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
2621         * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
2622         * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
2623         * testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
2624         * testsuite/unordered_set/init-list.cc: Likewise.
2625         * testsuite/unordered_set/insert/24061-set.cc: Likewise.
2626         * testsuite/unordered_set/insert/hash_policy.cc: Likewise.
2627         * testsuite/unordered_set/insert/move_range.cc: Likewise.
2628         * testsuite/unordered_set/insert/set_range.cc: Likewise.
2629         * testsuite/unordered_set/insert/set_single.cc: Likewise.
2630         * testsuite/unordered_set/insert/set_single_move.cc: Likewise.
2631         * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
2632         * testsuite/unordered_set/modifiers/emplace.cc: Likewise.
2633         * testsuite/unordered_set/modifiers/extract.cc: Likewise.
2634         * testsuite/unordered_set/modifiers/merge.cc: Likewise.
2635         * testsuite/unordered_set/modifiers/reserve.cc: Likewise.
2636         * testsuite/unordered_set/modifiers/swap.cc: Likewise.
2637         * testsuite/unordered_set/operations/count.cc: Likewise.
2638         * testsuite/unordered_set/operators/1.cc: Likewise.
2639         * testsuite/vector/allocator/copy.cc: Likewise.
2640         * testsuite/vector/allocator/copy_assign.cc: Likewise.
2641         * testsuite/vector/allocator/ext_ptr.cc: Likewise.
2642         * testsuite/vector/allocator/minimal.cc: Likewise.
2643         * testsuite/vector/allocator/move.cc: Likewise.
2644         * testsuite/vector/allocator/move_assign.cc: Likewise.
2645         * testsuite/vector/allocator/swap.cc: Likewise.
2646         * testsuite/vector/bool/6886.cc: Likewise.
2647         * testsuite/vector/bool/72847.cc: Likewise.
2648         * testsuite/vector/bool/allocator/copy.cc: Likewise.
2649         * testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
2650         * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
2651         * testsuite/vector/bool/allocator/move.cc: Likewise.
2652         * testsuite/vector/bool/allocator/move_assign.cc: Likewise.
2653         * testsuite/vector/bool/allocator/swap.cc: Likewise.
2654         * testsuite/vector/bool/capacity/1.cc: Likewise.
2655         * testsuite/vector/bool/capacity/29134.cc: Likewise.
2656         * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
2657         * testsuite/vector/bool/cons/1.cc: Likewise.
2658         * testsuite/vector/bool/cons/2.cc: Likewise.
2659         * testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
2660         * testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
2661         * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
2662         * testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
2663         * testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
2664         * testsuite/vector/bool/swap.cc: Likewise.
2665         * testsuite/vector/capacity/1.cc: Likewise.
2666         * testsuite/vector/capacity/2.cc: Likewise.
2667         * testsuite/vector/capacity/29134-2.cc: Likewise.
2668         * testsuite/vector/capacity/29134.cc: Likewise.
2669         * testsuite/vector/capacity/44190.cc: Likewise.
2670         * testsuite/vector/capacity/8230.cc: Likewise.
2671         * testsuite/vector/capacity/reserve/moveable.cc: Likewise.
2672         * testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
2673         * testsuite/vector/capacity/resize/1.cc: Likewise.
2674         * testsuite/vector/capacity/resize/moveable.cc: Likewise.
2675         * testsuite/vector/capacity/resize/moveable2.cc: Likewise.
2676         * testsuite/vector/capacity/resize/resize_size.cc: Likewise.
2677         * testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
2678         * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
2679         * testsuite/vector/cons/3.cc: Likewise.
2680         * testsuite/vector/cons/4.cc: Likewise.
2681         * testsuite/vector/cons/cons_size.cc: Likewise.
2682         * testsuite/vector/cons/moveable.cc: Likewise.
2683         * testsuite/vector/data_access/1.cc: Likewise.
2684         * testsuite/vector/debug/debug_functions.cc: Likewise.
2685         * testsuite/vector/debug/move_assign_neg.cc: Likewise.
2686         * testsuite/vector/debug/move_neg.cc: Likewise.
2687         * testsuite/vector/debug/multithreaded_swap.cc: Likewise.
2688         * testsuite/vector/element_access/1.cc: Likewise.
2689         * testsuite/vector/ext_pointer/citerators.cc: Likewise.
2690         * testsuite/vector/ext_pointer/data_access.cc: Likewise.
2691         * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
2692         * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
2693         * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
2694         * testsuite/vector/ext_pointer/resize.cc: Likewise.
2695         * testsuite/vector/modifiers/1.cc: Likewise.
2696         * testsuite/vector/modifiers/2.cc: Likewise.
2697         * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
2698         * testsuite/vector/modifiers/erase/1.cc: Likewise.
2699         * testsuite/vector/modifiers/erase/moveable.cc: Likewise.
2700         * testsuite/vector/modifiers/insert/1.cc: Likewise.
2701         * testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
2702         * testsuite/vector/modifiers/moveable.cc: Likewise.
2703         * testsuite/vector/modifiers/moveable2.cc: Likewise.
2704         * testsuite/vector/modifiers/push_back/49836.cc: Likewise.
2705         * testsuite/vector/modifiers/swap/1.cc: Likewise.
2706         * testsuite/vector/modifiers/swap/2.cc: Likewise.
2707         * testsuite/vector/modifiers/swap/3.cc: Likewise.
2708         * testsuite/vector/zero_sized_allocations.cc: Likewise.
2710 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
2712         PR libstdc++/77998
2713         * include/std/future (__future_base::_Deferred_state)
2714         (__future_base::_Async_state_impl): Use decltype to deduce return
2715         type, instead of _Invoker::result_type.
2716         * include/std/thread (thread::_Invoker::operator()): Likewise.
2717         (thread::_Invoker::result_type): Remove.
2719         PR libstdc++/77987
2720         * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
2721         value to pointer of the correct type to swap, to support conversions
2722         allowed by LWG 2118 / N4089.
2723         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
2724         incompatible deleters from ...
2725         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
2726         * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
2727         incompatible pointers to ...
2728         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
2729         destructor definition to base class. Test for invalid derived-to-base
2730         conversion.
2732         * doc/xml/manual/status_cxx2017.xml: Update status.
2733         * doc/html/*: Regenerate.
2734         * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
2735         Return a reference in C++17 mode.
2736         * include/bits/forward_list.h (forward_list::emplace_front): Likewise.
2737         * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
2738         * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
2739         Likewise.
2740         * include/bits/stl_list.h (list::emplace_front, list::emplace_back):
2741         Likewise.
2742         * include/bits/stl_queue.h (queue::emplace): Likewise.
2743         * include/bits/stl_stack.h (stack::emplace): Likewise.
2744         * include/bits/stl_vector.h (vector::emplace_back): Likewise.
2745         * include/bits/vector.tcc (vector::emplace_back): Likewise.
2746         * include/debug/deque (__gnu_debug::deque::emplace_front)
2747         (__gnu_debug::deque::emplace_back): Likewise.
2748         * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
2749         * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
2750         New.
2751         * testsuite/23_containers/forward_list/modifiers/
2752         emplace_cxx17_return.cc: New.
2753         * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
2754         * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
2755         * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
2756         * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
2757         * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
2758         New.
2760 2016-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
2762         * testsuite/22_locale/classification/isblank.cc: Remove 'test'
2763         variables.
2764         * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
2765         * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
2766         * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
2767         * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
2768         * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
2769         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
2770         * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
2771         * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
2772         * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
2773         * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
2774         * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
2775         * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
2776         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
2777         * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
2778         * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
2779         * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
2780         * testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
2781         * testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
2782         * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
2783         * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
2784         * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
2785         * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
2786         * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
2787         * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
2788         * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
2789         * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
2790         * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
2791         * testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
2792         * testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
2793         * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
2794         * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
2795         * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
2796         * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
2797         * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
2798         * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
2799         * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
2800         * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
2801         * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
2802         * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
2803         * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
2804         * testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
2805         * testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
2806         * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
2807         * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
2808         * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
2809         * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
2810         * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
2811         * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
2812         * testsuite/22_locale/collate/compare/char/1.cc: Likewise.
2813         * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
2814         * testsuite/22_locale/collate/compare/char/3.cc: Likewise.
2815         * testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
2816         * testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
2817         * testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
2818         * testsuite/22_locale/collate/hash/char/1.cc: Likewise.
2819         * testsuite/22_locale/collate/hash/char/2.cc: Likewise.
2820         * testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
2821         * testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
2822         * testsuite/22_locale/collate/transform/char/2.cc: Likewise.
2823         * testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
2824         * testsuite/22_locale/collate/transform/char/3.cc: Likewise.
2825         * testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
2826         * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
2827         * testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
2828         * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
2829         * testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
2830         * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
2831         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
2832         * testsuite/22_locale/ctype/is/char/3.cc: Likewise.
2833         * testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
2834         * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
2835         * testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
2836         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
2837         * testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
2838         * testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
2839         * testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
2840         * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
2841         * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
2842         * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
2843         * testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
2844         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
2845         * testsuite/22_locale/ctype/to/char/1.cc: Likewise.
2846         * testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
2847         * testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
2848         * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
2849         * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
2850         * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
2851         * testsuite/22_locale/ctype_base/11844.cc: Likewise.
2852         * testsuite/22_locale/facet/1.cc: Likewise.
2853         * testsuite/22_locale/facet/2.cc: Likewise.
2854         * testsuite/22_locale/facet/25421.cc: Likewise.
2855         * testsuite/22_locale/global_templates/1.cc: Likewise.
2856         * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
2857         Likewise.
2858         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
2859         Likewise.
2860         * testsuite/22_locale/locale/13630.cc: Likewise.
2861         * testsuite/22_locale/locale/cons/12352.cc: Likewise.
2862         * testsuite/22_locale/locale/cons/12438.cc: Likewise.
2863         * testsuite/22_locale/locale/cons/2.cc: Likewise.
2864         * testsuite/22_locale/locale/cons/29217.cc: Likewise.
2865         * testsuite/22_locale/locale/cons/38365.cc: Likewise.
2866         * testsuite/22_locale/locale/cons/38368.cc: Likewise.
2867         * testsuite/22_locale/locale/cons/4.cc: Likewise.
2868         * testsuite/22_locale/locale/cons/40184.cc: Likewise.
2869         * testsuite/22_locale/locale/cons/5.cc: Likewise.
2870         * testsuite/22_locale/locale/cons/6.cc: Likewise.
2871         * testsuite/22_locale/locale/cons/7.cc: Likewise.
2872         * testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
2873         * testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
2874         * testsuite/22_locale/locale/cons/8.cc: Likewise.
2875         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
2876         * testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
2877         * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
2878         * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
2879         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
2880         * testsuite/22_locale/locale/operations/1.cc: Likewise.
2881         * testsuite/22_locale/locale/operations/2.cc: Likewise.
2882         * testsuite/22_locale/messages/13631.cc: Likewise.
2883         * testsuite/22_locale/messages/members/char/1.cc: Likewise.
2884         * testsuite/22_locale/messages/members/char/2.cc: Likewise.
2885         * testsuite/22_locale/messages/members/char/3.cc: Likewise.
2886         * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
2887         * testsuite/22_locale/money_get/get/char/1.cc: Likewise.
2888         * testsuite/22_locale/money_get/get/char/10.cc: Likewise.
2889         * testsuite/22_locale/money_get/get/char/11.cc: Likewise.
2890         * testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
2891         * testsuite/22_locale/money_get/get/char/12.cc: Likewise.
2892         * testsuite/22_locale/money_get/get/char/13.cc: Likewise.
2893         * testsuite/22_locale/money_get/get/char/14.cc: Likewise.
2894         * testsuite/22_locale/money_get/get/char/15.cc: Likewise.
2895         * testsuite/22_locale/money_get/get/char/16.cc: Likewise.
2896         * testsuite/22_locale/money_get/get/char/17.cc: Likewise.
2897         * testsuite/22_locale/money_get/get/char/18.cc: Likewise.
2898         * testsuite/22_locale/money_get/get/char/19.cc: Likewise.
2899         * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
2900         * testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
2901         * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
2902         * testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
2903         * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
2904         * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
2905         * testsuite/22_locale/money_get/get/char/5.cc: Likewise.
2906         * testsuite/22_locale/money_get/get/char/6.cc: Likewise.
2907         * testsuite/22_locale/money_get/get/char/7.cc: Likewise.
2908         * testsuite/22_locale/money_get/get/char/8.cc: Likewise.
2909         * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
2910         * testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
2911         * testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
2912         * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
2913         * testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
2914         * testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
2915         * testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
2916         * testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
2917         * testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
2918         * testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
2919         * testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
2920         * testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
2921         * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
2922         * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
2923         * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
2924         * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
2925         * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
2926         * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
2927         * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
2928         * testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
2929         * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
2930         * testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
2931         * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
2932         * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
2933         * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
2934         * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
2935         * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
2936         * testsuite/22_locale/money_put/put/char/4.cc: Likewise.
2937         * testsuite/22_locale/money_put/put/char/5.cc: Likewise.
2938         * testsuite/22_locale/money_put/put/char/6.cc: Likewise.
2939         * testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
2940         * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
2941         * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
2942         * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
2943         * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
2944         * testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
2945         * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
2946         * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
2947         * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
2948         * testsuite/22_locale/moneypunct/40712.cc: Likewise.
2949         * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
2950         * testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
2951         * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
2952         * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
2953         * testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
2954         * testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
2955         * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
2956         * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
2957         * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
2958         * testsuite/22_locale/num_get/get/char/11.cc: Likewise.
2959         * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
2960         * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
2961         * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
2962         * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
2963         * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
2964         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
2965         * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
2966         * testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
2967         * testsuite/22_locale/num_get/get/char/3.cc: Likewise.
2968         * testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
2969         * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
2970         * testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
2971         * testsuite/22_locale/num_get/get/char/4.cc: Likewise.
2972         * testsuite/22_locale/num_get/get/char/5.cc: Likewise.
2973         * testsuite/22_locale/num_get/get/char/6.cc: Likewise.
2974         * testsuite/22_locale/num_get/get/char/7.cc: Likewise.
2975         * testsuite/22_locale/num_get/get/char/8.cc: Likewise.
2976         * testsuite/22_locale/num_get/get/char/9.cc: Likewise.
2977         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
2978         * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
2979         * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2980         * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
2981         * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
2982         * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
2983         * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
2984         * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
2985         * testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
2986         * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
2987         * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
2988         * testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
2989         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
2990         * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
2991         * testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
2992         * testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
2993         * testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
2994         * testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
2995         * testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
2996         * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
2997         * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
2998         * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
2999         * testsuite/22_locale/num_put/put/char/10.cc: Likewise.
3000         * testsuite/22_locale/num_put/put/char/11.cc: Likewise.
3001         * testsuite/22_locale/num_put/put/char/12.cc: Likewise.
3002         * testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
3003         * testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
3004         * testsuite/22_locale/num_put/put/char/2.cc: Likewise.
3005         * testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
3006         * testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
3007         * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
3008         * testsuite/22_locale/num_put/put/char/3.cc: Likewise.
3009         * testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
3010         * testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
3011         * testsuite/22_locale/num_put/put/char/4.cc: Likewise.
3012         * testsuite/22_locale/num_put/put/char/5.cc: Likewise.
3013         * testsuite/22_locale/num_put/put/char/6.cc: Likewise.
3014         * testsuite/22_locale/num_put/put/char/7.cc: Likewise.
3015         * testsuite/22_locale/num_put/put/char/8.cc: Likewise.
3016         * testsuite/22_locale/num_put/put/char/9.cc: Likewise.
3017         * testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
3018         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3019         * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
3020         * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
3021         * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
3022         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3023         * testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
3024         * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
3025         * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
3026         * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
3027         * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
3028         * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
3029         * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
3030         * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
3031         * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
3032         * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
3033         * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
3034         * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3035         * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
3036         * testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
3037         * testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
3038         * testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
3039         * testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
3040         * testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
3041         * testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
3042         * testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
3043         * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
3044         * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
3045         * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
3046         * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
3047         * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
3048         * testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
3049         * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
3050         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
3051         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
3052         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
3053         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
3054         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
3055         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
3056         * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
3057         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
3058         * testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
3059         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
3060         * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
3061         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
3062         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
3063         * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
3064         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
3065         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
3066         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
3067         * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
3068         * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
3069         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
3070         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
3071         * testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
3072         * testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
3073         * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
3074         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
3075         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
3076         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
3077         * testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
3078         * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
3079         * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
3080         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
3081         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
3082         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
3083         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
3084         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
3085         * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
3086         * testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
3087         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
3088         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
3089         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
3090         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
3091         * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
3092         * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
3093         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
3094         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
3095         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
3096         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
3097         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3098         * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
3099         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
3100         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
3101         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
3102         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
3103         * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
3104         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
3105         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
3106         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
3107         * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
3108         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
3109         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
3110         * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
3111         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
3112         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
3113         * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
3114         * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
3115         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
3116         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
3117         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
3118         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
3119         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
3120         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
3121         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
3122         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
3123         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
3124         * testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
3125         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
3126         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
3127         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3128         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3129         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3130         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
3131         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
3132         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
3133         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3134         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
3135         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
3136         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
3137         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
3138         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
3139         * testsuite/30_threads/async/42819.cc: Likewise.
3140         * testsuite/30_threads/async/any.cc: Likewise.
3141         * testsuite/30_threads/async/async.cc: Likewise.
3142         * testsuite/30_threads/async/except.cc: Likewise.
3143         * testsuite/30_threads/async/launch.cc: Likewise.
3144         * testsuite/30_threads/async/sync.cc: Likewise.
3145         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3146         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3147         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3148         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3149         * testsuite/30_threads/condition_variable/members/3.cc: Likewise.
3150         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3151         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3152         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3153         * testsuite/30_threads/future/members/45133.cc: Likewise.
3154         * testsuite/30_threads/future/members/get.cc: Likewise.
3155         * testsuite/30_threads/future/members/get2.cc: Likewise.
3156         * testsuite/30_threads/future/members/share.cc: Likewise.
3157         * testsuite/30_threads/future/members/valid.cc: Likewise.
3158         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3159         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3160         * testsuite/30_threads/lock/1.cc: Likewise.
3161         * testsuite/30_threads/lock/2.cc: Likewise.
3162         * testsuite/30_threads/lock/3.cc: Likewise.
3163         * testsuite/30_threads/lock/4.cc: Likewise.
3164         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3165         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3166         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3167         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3168         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3169         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3170         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3171         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3172         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3173         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3174         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3175         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3176         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3177         * testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
3178         Likewise.
3179         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3180         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3181         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3182         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3183         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3184         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3185         * testsuite/30_threads/promise/cons/move.cc: Likewise.
3186         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3187         * testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
3188         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3189         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3190         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3191         * testsuite/30_threads/promise/members/swap.cc: Likewise.
3192         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3193         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3194         Likewise.
3195         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3196         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3197         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3198         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3199         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3200         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3201         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3202         Likewise.
3203         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3204         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3205         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3206         Likewise.
3207         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3208         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3209         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3210         Likewise.
3211         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3212         Likewise.
3213         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3214         Likewise.
3215         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3216         Likewise.
3217         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3218         Likewise.
3219         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3220         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3221         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3222         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3223         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3224         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3225         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3226         * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
3227         * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
3228         * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
3229         * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
3230         * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
3231         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
3232         * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
3233         * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
3234         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
3235         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
3236         * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
3237         * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
3238         * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
3239         * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
3240         * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
3241         * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
3242         * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
3243         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
3244         * testsuite/30_threads/this_thread/1.cc: Likewise.
3245         * testsuite/30_threads/this_thread/2.cc: Likewise.
3246         * testsuite/30_threads/this_thread/3.cc: Likewise.
3247         * testsuite/30_threads/this_thread/4.cc: Likewise.
3248         * testsuite/30_threads/this_thread/60421.cc: Likewise.
3249         * testsuite/30_threads/thread/cons/1.cc: Likewise.
3250         * testsuite/30_threads/thread/cons/2.cc: Likewise.
3251         * testsuite/30_threads/thread/cons/3.cc: Likewise.
3252         * testsuite/30_threads/thread/cons/4.cc: Likewise.
3253         * testsuite/30_threads/thread/cons/5.cc: Likewise.
3254         * testsuite/30_threads/thread/cons/6.cc: Likewise.
3255         * testsuite/30_threads/thread/cons/7.cc: Likewise.
3256         * testsuite/30_threads/thread/cons/8.cc: Likewise.
3257         * testsuite/30_threads/thread/cons/9.cc: Likewise.
3258         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3259         * testsuite/30_threads/thread/members/1.cc: Likewise.
3260         * testsuite/30_threads/thread/members/2.cc: Likewise.
3261         * testsuite/30_threads/thread/members/3.cc: Likewise.
3262         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3263         * testsuite/30_threads/thread/swap/1.cc: Likewise.
3264         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3265         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3266         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3267         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3268         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3269         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3270         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3271         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3272         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3273         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3274         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3275         * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
3276         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3277         * testsuite/30_threads/try_lock/1.cc: Likewise.
3278         * testsuite/30_threads/try_lock/2.cc: Likewise.
3279         * testsuite/30_threads/try_lock/3.cc: Likewise.
3280         * testsuite/30_threads/try_lock/4.cc: Likewise.
3281         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3282         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3283         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3284         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3285         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3286         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3287         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3288         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3289         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3290         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3291         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3292         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3293         not_shared.cc: Likewise.
3294         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3295         not_shared2.cc: Likewise.
3296         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3297         not_shared3.cc: Likewise.
3298         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3299         shared.cc: Likewise.
3300         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3301         still_shared.cc: Likewise.
3302         * testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
3303         Likewise.
3304         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
3305         Likewise.
3306         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
3307         Likewise.
3308         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3309         auto_ptr_rvalue_neg.cc: Likewise.
3310         * testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
3311         Likewise.
3312         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3313         shared_ptr_neg.cc: Likewise.
3314         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
3315         Likewise.
3316         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
3317         Likewise.
3318         * testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
3319         * testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
3320         Likewise.
3321         * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
3322         Likewise.
3323         * testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
3324         Likewise.
3325         * testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
3326         * testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
3327         * testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
3328         * testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
3329         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
3330         Likewise.
3331         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
3332         Likewise.
3333         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
3334         Likewise.
3335         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
3336         Likewise.
3337         * testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
3338         Likewise.
3339         * testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
3340         Likewise.
3341         * testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
3342         Likewise.
3343         * testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
3344         Likewise.
3345         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3346         default_weaktoshared.cc: Likewise.
3347         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3348         mutex_weaktoshared.cc: Likewise.
3349         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
3350         * testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
3351         * testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
3352         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
3353         * testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
3354         * testsuite/tr1/3_function_objects/function/1.cc: Likewise.
3355         * testsuite/tr1/3_function_objects/function/2.cc: Likewise.
3356         * testsuite/tr1/3_function_objects/function/3.cc: Likewise.
3357         * testsuite/tr1/3_function_objects/function/4.cc: Likewise.
3358         * testsuite/tr1/3_function_objects/function/5.cc: Likewise.
3359         * testsuite/tr1/3_function_objects/function/6.cc: Likewise.
3360         * testsuite/tr1/3_function_objects/function/7.cc: Likewise.
3361         * testsuite/tr1/3_function_objects/function/8.cc: Likewise.
3362         * testsuite/tr1/3_function_objects/function/9.cc: Likewise.
3363         * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
3364         Likewise.
3365         * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
3366         Likewise.
3367         * testsuite/tr1/3_function_objects/result_of.cc: Likewise.
3368         * testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
3369         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
3370         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
3371         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
3372         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
3373         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
3374         * testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
3375         * testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
3376         * testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
3377         * testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
3378         Likewise.
3379         * testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
3380         * testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
3381         * testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
3382         Likewise.
3383         * testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
3384         * testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
3385         Likewise.
3386         * testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
3387         Likewise.
3388         * testsuite/tr1/4_metaprogramming/integral_constant/
3389         static_definition.cc: Likewise.
3390         * testsuite/tr1/4_metaprogramming/integral_constant/
3391         true_false_value.cc: Likewise.
3392         * testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
3393         * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
3394         * testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
3395         * testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
3396         * testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
3397         * testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
3398         * testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
3399         * testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
3400         * testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
3401         * testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
3402         * testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
3403         * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
3404         * testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
3405         * testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
3406         * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
3407         * testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
3408         * testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
3409         Likewise.
3410         * testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
3411         Likewise.
3412         * testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
3413         * testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
3414         * testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
3415         * testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
3416         * testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
3417         * testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
3418         * testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
3419         * testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
3420         * testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
3421         * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
3422         * testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
3423         * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
3424         * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
3425         * testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
3426         * testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
3427         * testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
3428         * testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
3429         * testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
3430         * testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
3431         * testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
3432         * testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
3433         * testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
3434         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3435         equal.cc: Likewise.
3436         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3437         not_equal.cc: Likewise.
3438         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3439         serialize.cc: Likewise.
3440         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3441         cons/default.cc: Likewise.
3442         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3443         cons/gen1.cc: Likewise.
3444         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3445         operators/equal.cc: Likewise.
3446         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3447         operators/not_equal.cc: Likewise.
3448         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3449         operators/serialize.cc: Likewise.
3450         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3451         cons/default.cc: Likewise.
3452         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3453         cons/gen1.cc: Likewise.
3454         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3455         operators/equal.cc: Likewise.
3456         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3457         operators/not_equal.cc: Likewise.
3458         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3459         operators/serialize.cc: Likewise.
3460         * testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
3461         * testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
3462         * testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
3463         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3464         default.cc: Likewise.
3465         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3466         token.cc: Likewise.
3467         * testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
3468         * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
3469         * testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
3470         * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
3471         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3472         cons/default.cc: Likewise.
3473         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3474         cons/gen1.cc: Likewise.
3475         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3476         operators/equal.cc: Likewise.
3477         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3478         operators/not_equal.cc: Likewise.
3479         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3480         operators/serialize.cc: Likewise.
3481         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3482         cons/default.cc: Likewise.
3483         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3484         cons/gen1.cc: Likewise.
3485         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3486         operators/equal.cc: Likewise.
3487         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3488         operators/not_equal.cc: Likewise.
3489         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3490         operators/serialize.cc: Likewise.
3491         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
3492         Likewise.
3493         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3494         default.cc: Likewise.
3495         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3496         range.cc: Likewise.
3497         * testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
3498         default.cc: Likewise.
3499         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3500         equal.cc: Likewise.
3501         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3502         not_equal.cc: Likewise.
3503         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3504         serialize.cc: Likewise.
3505         * testsuite/tr1/5_numerical_facilities/special_functions/
3506         08_cyl_bessel_i/check_value.cc: Likewise.
3507         * testsuite/tr1/5_numerical_facilities/special_functions/
3508         08_cyl_bessel_i/pr56216.cc: Likewise.
3509         * testsuite/tr1/5_numerical_facilities/special_functions/
3510         09_cyl_bessel_j/check_value.cc: Likewise.
3511         * testsuite/tr1/5_numerical_facilities/special_functions/
3512         10_cyl_bessel_k/check_value.cc: Likewise.
3513         * testsuite/tr1/5_numerical_facilities/special_functions/
3514         11_cyl_neumann/check_value.cc: Likewise.
3515         * testsuite/tr1/5_numerical_facilities/special_functions/
3516         16_hermite/check_value.cc: Likewise.
3517         * testsuite/tr1/5_numerical_facilities/special_functions/
3518         21_sph_bessel/check_value.cc: Likewise.
3519         * testsuite/tr1/5_numerical_facilities/special_functions/
3520         23_sph_neumann/check_value.cc: Likewise.
3521         * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
3522         * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
3523         * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
3524         * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
3525         Likewise.
3526         * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
3527         Likewise.
3528         * testsuite/tr1/6_containers/array/comparison_operators/
3529         greater_or_equal.cc: Likewise.
3530         * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
3531         Likewise.
3532         * testsuite/tr1/6_containers/array/comparison_operators/
3533         less_or_equal.cc: Likewise.
3534         * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
3535         Likewise.
3536         * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
3537         Likewise.
3538         * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
3539         * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
3540         * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
3541         * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
3542         Likewise.
3543         * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
3544         * testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
3545         * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
3546         Likewise.
3547         * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
3548         Likewise.
3549         * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
3550         Likewise.
3551         * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
3552         * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
3553         Likewise.
3554         * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
3555         Likewise.
3556         * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
3557         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
3558         *
3559         testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
3560         Likewise.
3561         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
3562         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
3563         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
3564         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
3565         Likewise.
3566         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
3567         Likewise.
3568         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
3569         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
3570         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
3571         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
3572         * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
3573         * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
3574         Likewise.
3575         * testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
3576         * testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
3577         * testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
3578         * testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
3579         Likewise.
3580         * testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
3581         Likewise.
3582         * testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
3583         Likewise.
3584         * testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
3585         Likewise.
3586         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
3587         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
3588         * testsuite/tr1/6_containers/unordered_multimap/capacity/
3589         29134-multimap.cc: Likewise.
3590         * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
3591         * testsuite/tr1/6_containers/unordered_multimap/erase/
3592         24061-multimap.cc: Likewise.
3593         * testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
3594         Likewise.
3595         * testsuite/tr1/6_containers/unordered_multimap/insert/
3596         24061-multimap.cc: Likewise.
3597         * testsuite/tr1/6_containers/unordered_multimap/insert/
3598         multimap_range.cc: Likewise.
3599         * testsuite/tr1/6_containers/unordered_multimap/insert/
3600         multimap_single.cc: Likewise.
3601         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
3602         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
3603         * testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
3604         * testsuite/tr1/6_containers/unordered_multiset/capacity/
3605         29134-multiset.cc: Likewise.
3606         * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
3607         * testsuite/tr1/6_containers/unordered_multiset/erase/
3608         24061-multiset.cc: Likewise.
3609         * testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
3610         Likewise.
3611         * testsuite/tr1/6_containers/unordered_multiset/insert/
3612         24061-multiset.cc: Likewise.
3613         * testsuite/tr1/6_containers/unordered_multiset/insert/
3614         multiset_range.cc: Likewise.
3615         * testsuite/tr1/6_containers/unordered_multiset/insert/
3616         multiset_single.cc: Likewise.
3617         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
3618         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
3619         * testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
3620         * testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
3621         * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
3622         Likewise.
3623         * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
3624         * testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
3625         * testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
3626         * testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
3627         Likewise.
3628         * testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
3629         Likewise.
3630         * testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
3631         Likewise.
3632         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
3633         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
3634         * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
3635         * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
3636         default.cc: Likewise.
3637         * testsuite/tr1/7_regular_expressions/regex_traits/char/
3638         translate_nocase.cc: Likewise.
3639         * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
3640         Likewise.
3641         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
3642         translate_nocase.cc: Likewise.
3643         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
3644         Likewise.
3645         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
3646         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
3648 2016-10-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
3650         Make sure the return value of malloc_allocator::allocate
3651         is zero-initialized so that checking it for non-zero works
3652         later.
3653         * include/ext/malloc_allocator.h (malloc_allocator::allocate):
3654         Initialize the return value.
3655         * testsuite/ext/malloc_allocator/sanity.cc: New.
3657 2016-10-14  Eelis van der Weegen  <eelis@eelis.net>
3659         * include/bits/stl_algo.h (shuffle): Extract two random numbers from
3660         each generator invocation when its range is large enough.
3662 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3664         * testsuite/experimental/algorithm/sample.cc: Qualify calls to
3665         resolve ambiguity between std::sample and std::experimental::sample.
3667         * include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
3668         Simplify forwarding from tuple of references.
3669         (_Maybe_wrap_member_pointer): Remove.
3670         (_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
3671         Use std::__invoke.
3672         (_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
3673         (_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
3674         return type deduction.
3675         (_Bind::operator(), _Bind::operator() const): Use new helpers.
3676         (_Bind::operator() volatile, _Bind::operator() const volatile):
3677         Likewise. Add deprecated attribute for C++17 mode.
3678         (_Bind_result::__call): Use std::__invoke.
3679         (_Bind_result::operator() volatile)
3680         (_Bind_result::operator() const volatile): Add deprecated attribute.
3681         (_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
3682         (_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
3683         (bind, bind<R>): Don't use __maybe_type.
3684         * src/c++11/compatibility-thread-c++0x.cc
3685         (_Maybe_wrap_member_pointer): Define here for compatibility symbols.
3686         * testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
3687         in C++17 mode.
3688         * testsuite/20_util/bind/cv_quals.cc: Likewise.
3689         * testsuite/20_util/bind/cv_quals_2.cc: Likewise.
3691         * include/std/scoped_allocator (scoped_allocator_adaptor): Forward
3692         piecewise construction arguments as tuples of references, to avoid
3693         copies (related to LWG 2511).
3694         * testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
3696 2016-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
3698         * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
3699         * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
3700         * testsuite/26_numerics/complex/13450.cc: Likewise.
3701         * testsuite/26_numerics/complex/50880.cc: Likewise.
3702         * testsuite/26_numerics/complex/c99.cc: Likewise.
3703         * testsuite/26_numerics/complex/cons/48760.cc: Likewise.
3704         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3705         * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
3706         * testsuite/26_numerics/complex/dr844.cc: Likewise.
3707         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
3708         Likewise.
3709         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
3710         Likewise.
3711         * testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
3712         * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
3713         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
3714         * testsuite/26_numerics/headers/cmath/
3715         c99_classification_macros_c++11.c: Likewise.c
3716         * testsuite/26_numerics/headers/cmath/
3717         c99_classification_macros_c++98.cc: Likewise.
3718         * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
3719         * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
3720         * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
3721         * testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
3722         * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
3723         * testsuite/26_numerics/inner_product/1.cc: Likewise.
3724         * testsuite/26_numerics/iota/1.cc: Likewise.
3725         * testsuite/26_numerics/partial_sum/1.cc: Likewise.
3726         * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
3727         Likewise.
3728         * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
3729         Likewise.
3730         * testsuite/26_numerics/random/bernoulli_distribution/operators/
3731         equal.cc: Likewise.
3732         * testsuite/26_numerics/random/bernoulli_distribution/operators/
3733         inequal.cc: Likewise.
3734         * testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
3735         Likewise.
3736         * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
3737         Likewise.
3738         * testsuite/26_numerics/random/binomial_distribution/operators/
3739         equal.cc: Likewise.
3740         * testsuite/26_numerics/random/binomial_distribution/operators/
3741         inequal.cc: Likewise.
3742         * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
3743         Likewise.
3744         * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
3745         Likewise.
3746         * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
3747         Likewise.
3748         * testsuite/26_numerics/random/cauchy_distribution/operators/
3749         inequal.cc: Likewise.
3750         * testsuite/26_numerics/random/chi_squared_distribution/cons/
3751         default.cc: Likewise.
3752         * testsuite/26_numerics/random/chi_squared_distribution/cons/
3753         parms.cc: Likewise.
3754         * testsuite/26_numerics/random/chi_squared_distribution/operators/
3755         equal.cc: Likewise.
3756         * testsuite/26_numerics/random/chi_squared_distribution/operators/
3757         inequal.cc: Likewise.
3758         * testsuite/26_numerics/random/default_random_engine.cc: Likewise.
3759         * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
3760         Likewise.
3761         * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
3762         Likewise.
3763         * testsuite/26_numerics/random/discard_block_engine/operators/
3764         inequal.cc: Likewise.
3765         * testsuite/26_numerics/random/discard_block_engine/operators/
3766         serialize.cc: Likewise.
3767         * testsuite/26_numerics/random/discrete_distribution/cons/
3768         default.cc: Likewise.
3769         * testsuite/26_numerics/random/discrete_distribution/cons/
3770         initlist.cc: Likewise.
3771         * testsuite/26_numerics/random/discrete_distribution/cons/
3772         num_xbound_fun.cc: Likewise.
3773         * testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
3774         Likewise.
3775         * testsuite/26_numerics/random/discrete_distribution/operators/
3776         equal.cc: Likewise.
3777         * testsuite/26_numerics/random/discrete_distribution/operators/
3778         inequal.cc: Likewise.
3779         * testsuite/26_numerics/random/exponential_distribution/cons/
3780         default.cc: Likewise.
3781         * testsuite/26_numerics/random/exponential_distribution/cons/
3782         parms.cc: Likewise.
3783         * testsuite/26_numerics/random/exponential_distribution/operators/
3784         equal.cc: Likewise.
3785         * testsuite/26_numerics/random/exponential_distribution/operators/
3786         inequal.cc: Likewise.
3787         * testsuite/26_numerics/random/extreme_value_distribution/cons/
3788         default.cc: Likewise.
3789         * testsuite/26_numerics/random/extreme_value_distribution/cons/
3790         parms.cc: Likewise.
3791         * testsuite/26_numerics/random/extreme_value_distribution/operators/
3792         equal.cc: Likewise.
3793         * testsuite/26_numerics/random/extreme_value_distribution/operators/
3794         inequal.cc: Likewise.
3795         * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
3796         Likewise.
3797         * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
3798         Likewise.
3799         * testsuite/26_numerics/random/fisher_f_distribution/operators/
3800         equal.cc: Likewise.
3801         * testsuite/26_numerics/random/fisher_f_distribution/operators/
3802         inequal.cc: Likewise.
3803         * testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
3804         Likewise.
3805         * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
3806         Likewise.
3807         * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
3808         Likewise.
3809         * testsuite/26_numerics/random/gamma_distribution/operators/
3810         inequal.cc: Likewise.
3811         * testsuite/26_numerics/random/geometric_distribution/cons/
3812         default.cc: Likewise.
3813         * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
3814         Likewise.
3815         * testsuite/26_numerics/random/geometric_distribution/operators/
3816         equal.cc: Likewise.
3817         * testsuite/26_numerics/random/geometric_distribution/operators/
3818         inequal.cc: Likewise.
3819         * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
3820         Likewise.
3821         * testsuite/26_numerics/random/independent_bits_engine/operators/
3822         equal.cc: Likewise.
3823         * testsuite/26_numerics/random/independent_bits_engine/operators/
3824         inequal.cc: Likewise.
3825         * testsuite/26_numerics/random/independent_bits_engine/operators/
3826         serialize.cc: Likewise.
3827         * testsuite/26_numerics/random/knuth_b.cc: Likewise.
3828         * testsuite/26_numerics/random/linear_congruential_engine/cons/
3829         55215.cc: Likewise.
3830         * testsuite/26_numerics/random/linear_congruential_engine/cons/
3831         default.cc: Likewise.
3832         * testsuite/26_numerics/random/linear_congruential_engine/operators/
3833         51795.cc: Likewise.
3834         * testsuite/26_numerics/random/linear_congruential_engine/operators/
3835         equal.cc: Likewise.
3836         * testsuite/26_numerics/random/linear_congruential_engine/operators/
3837         inequal.cc: Likewise.
3838         * testsuite/26_numerics/random/linear_congruential_engine/operators/
3839         serialize.cc: Likewise.
3840         * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
3841         Likewise.
3842         * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
3843         Likewise.
3844         * testsuite/26_numerics/random/lognormal_distribution/operators/
3845         equal.cc: Likewise.
3846         * testsuite/26_numerics/random/lognormal_distribution/operators/
3847         inequal.cc: Likewise.
3848         * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
3849         Likewise.
3850         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
3851         default.cc: Likewise.
3852         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3853         equal.cc: Likewise.
3854         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3855         inequal.cc: Likewise.
3856         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3857         serialize.cc: Likewise.
3858         * testsuite/26_numerics/random/minstd_rand.cc: Likewise.
3859         * testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
3860         * testsuite/26_numerics/random/mt19937.cc: Likewise.
3861         * testsuite/26_numerics/random/mt19937_64.cc: Likewise.
3862         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3863         default.cc: Likewise.
3864         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3865         parms.cc: Likewise.
3866         * testsuite/26_numerics/random/negative_binomial_distribution/
3867         operators/equal.cc: Likewise.
3868         * testsuite/26_numerics/random/negative_binomial_distribution/
3869         operators/inequal.cc: Likewise.
3870         * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
3871         Likewise.
3872         * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
3873         Likewise.
3874         * testsuite/26_numerics/random/normal_distribution/operators/
3875         equal.cc: Likewise.
3876         * testsuite/26_numerics/random/normal_distribution/operators/
3877         inequal.cc: Likewise.
3878         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3879         default.cc: Likewise.
3880         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3881         initlist_fun.cc: Likewise.
3882         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3883         num_xbound_fun.cc: Likewise.
3884         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3885         range.cc: Likewise.
3886         * testsuite/26_numerics/random/piecewise_constant_distribution/
3887         operators/equal.cc: Likewise.
3888         * testsuite/26_numerics/random/piecewise_constant_distribution/
3889         operators/inequal.cc: Likewise.
3890         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3891         default.cc: Likewise.
3892         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3893         initlist_fun.cc: Likewise.
3894         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3895         num_xbound_fun.cc: Likewise.
3896         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3897         range.cc: Likewise.
3898         * testsuite/26_numerics/random/piecewise_linear_distribution/
3899         operators/equal.cc: Likewise.
3900         * testsuite/26_numerics/random/piecewise_linear_distribution/
3901         operators/inequal.cc: Likewise.
3902         * testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
3903         Likewise.
3904         * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
3905         Likewise.
3906         * testsuite/26_numerics/random/poisson_distribution/operators/
3907         equal.cc: Likewise.
3908         * testsuite/26_numerics/random/poisson_distribution/operators/
3909         inequal.cc: Likewise.
3910         * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
3911         * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
3912         * testsuite/26_numerics/random/ranlux24.cc: Likewise.
3913         * testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
3914         * testsuite/26_numerics/random/ranlux48.cc: Likewise.
3915         * testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
3916         * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
3917         * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
3918         Likewise.
3919         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3920         equal.cc: Likewise.
3921         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3922         inequal.cc: Likewise.
3923         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3924         serialize.cc: Likewise.
3925         * testsuite/26_numerics/random/student_t_distribution/cons/
3926         default.cc: Likewise.
3927         * testsuite/26_numerics/random/student_t_distribution/cons/
3928         parms.cc: Likewise.
3929         * testsuite/26_numerics/random/student_t_distribution/operators/
3930         equal.cc: Likewise.
3931         * testsuite/26_numerics/random/student_t_distribution/operators/
3932         inequal.cc: Likewise.
3933         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
3934         55215.cc: Likewise.
3935         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
3936         default.cc: Likewise.
3937         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3938         equal.cc: Likewise.
3939         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3940         inequal.cc: Likewise.
3941         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3942         serialize.cc: Likewise.
3943         * testsuite/26_numerics/random/uniform_int_distribution/cons/
3944         default.cc: Likewise.
3945         * testsuite/26_numerics/random/uniform_int_distribution/cons/
3946         parms.cc: Likewise.
3947         * testsuite/26_numerics/random/uniform_int_distribution/operators/
3948         equal.cc: Likewise.
3949         * testsuite/26_numerics/random/uniform_int_distribution/operators/
3950         inequal.cc: Likewise.
3951         * testsuite/26_numerics/random/uniform_real_distribution/cons/
3952         default.cc: Likewise.
3953         * testsuite/26_numerics/random/uniform_real_distribution/cons/
3954         parms.cc: Likewise.
3955         * testsuite/26_numerics/random/uniform_real_distribution/operators/
3956         equal.cc: Likewise.
3957         * testsuite/26_numerics/random/uniform_real_distribution/operators/
3958         inequal.cc: Likewise.
3959         * testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
3960         Likewise.
3961         * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
3962         Likewise.
3963         * testsuite/26_numerics/random/weibull_distribution/operators/
3964         equal.cc: Likewise.
3965         * testsuite/26_numerics/random/weibull_distribution/operators/
3966         inequal.cc: Likewise.
3967         * testsuite/26_numerics/slice/1.cc: Likewise.
3968         * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
3969         * testsuite/26_numerics/valarray/27867.cc: Likewise.
3970         * testsuite/26_numerics/valarray/28277.cc: Likewise.
3971         * testsuite/26_numerics/valarray/30416.cc: Likewise.
3972         * testsuite/26_numerics/valarray/dr543.cc: Likewise.
3973         * testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
3974         * testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
3975         * testsuite/26_numerics/valarray/dr630-3.C: Likewise.
3976         * testsuite/26_numerics/valarray/init-list.cc: Likewise.
3977         * testsuite/26_numerics/valarray/moveable.cc: Likewise.
3978         * testsuite/26_numerics/valarray/operators.cc: Likewise.
3979         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3980         * testsuite/experimental/deque/erasure.cc: Likewise.
3981         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
3982         Likewise.
3983         * testsuite/experimental/filesystem/iterators/
3984         recursive_directory_iterator.cc: Likewise.
3985         * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
3986         * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
3987         * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
3988         * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
3989         * testsuite/experimental/filesystem/operations/create_directories.cc:
3990         Likewise.
3991         * testsuite/experimental/filesystem/operations/create_directory.cc:
3992         Likewise.
3993         * testsuite/experimental/filesystem/operations/current_path.cc:
3994         Likewise.
3995         * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
3996         * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
3997         * testsuite/experimental/filesystem/operations/last_write_time.cc:
3998         Likewise.
3999         * testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
4000         * testsuite/experimental/filesystem/operations/status.cc: Likewise.
4001         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
4002         Likewise.
4003         * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
4004         * testsuite/experimental/forward_list/erasure.cc: Likewise.
4005         * testsuite/experimental/list/erasure.cc: Likewise.
4006         * testsuite/experimental/map/erasure.cc: Likewise.
4007         * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
4008         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
4009         Likewise.
4010         * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
4011         * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
4012         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
4013         * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
4014         Likewise.
4015         * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
4016         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
4017         Likewise.
4018         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
4019         Likewise.
4020         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
4021         Likewise.
4022         * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
4023         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
4024         * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
4025         * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
4026         Likewise.
4027         * testsuite/experimental/memory/shared_ptr/observers/operators.cc:
4028         Likewise.
4029         * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
4030         Likewise.
4031         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
4032         Likewise.
4033         * testsuite/experimental/memory_resource/1.cc: Likewise.
4034         * testsuite/experimental/memory_resource/null_memory_resource.cc:
4035         Likewise.
4036         * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
4037         * testsuite/experimental/set/erasure.cc: Likewise.
4038         * testsuite/experimental/string/erasure.cc: Likewise.
4039         * testsuite/experimental/string_view/capacity/1.cc: Likewise.
4040         * testsuite/experimental/string_view/cons/char/1.cc: Likewise.
4041         * testsuite/experimental/string_view/cons/char/2.cc: Likewise.
4042         * testsuite/experimental/string_view/cons/char/3.cc: Likewise.
4043         * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
4044         * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
4045         * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
4046         * testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
4047         * testsuite/experimental/string_view/element_access/char/empty.cc:
4048         Likewise.
4049         * testsuite/experimental/string_view/element_access/char/
4050         front_back.cc: Likewise.
4051         * testsuite/experimental/string_view/element_access/wchar_t/1.cc:
4052         Likewise.
4053         * testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
4054         Likewise.
4055         * testsuite/experimental/string_view/element_access/wchar_t/
4056         front_back.cc: Likewise.
4057         * testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
4058         * testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
4059         * testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
4060         * testsuite/experimental/string_view/inserters/pod/10081-out.cc:
4061         Likewise.
4062         * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
4063         * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
4064         * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
4065         * testsuite/experimental/string_view/modifiers/remove_prefix/char/
4066         1.cc: Likewise.
4067         * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
4068         1.cc: Likewise.
4069         * testsuite/experimental/string_view/modifiers/remove_suffix/char/
4070         1.cc: Likewise.
4071         * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
4072         1.cc: Likewise.
4073         * testsuite/experimental/string_view/operations/compare/char/1.cc:
4074         Likewise.
4075         * testsuite/experimental/string_view/operations/compare/char/
4076         13650.cc: Likewise.
4077         * testsuite/experimental/string_view/operations/compare/wchar_t/
4078         1.cc: Likewise.
4079         * testsuite/experimental/string_view/operations/compare/wchar_t/
4080         13650.cc: Likewise.
4081         * testsuite/experimental/string_view/operations/copy/char/1.cc:
4082         Likewise.
4083         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
4084         Likewise.
4085         * testsuite/experimental/string_view/operations/data/char/1.cc:
4086         Likewise.
4087         * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
4088         Likewise.
4089         * testsuite/experimental/string_view/operations/find/char/1.cc:
4090         Likewise.
4091         * testsuite/experimental/string_view/operations/find/char/2.cc:
4092         Likewise.
4093         * testsuite/experimental/string_view/operations/find/char/3.cc:
4094         Likewise.
4095         * testsuite/experimental/string_view/operations/find/char/4.cc:
4096         Likewise.
4097         * testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
4098         Likewise.
4099         * testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
4100         Likewise.
4101         * testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
4102         Likewise.
4103         * testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
4104         Likewise.
4105         * testsuite/experimental/string_view/operations/rfind/char/1.cc:
4106         Likewise.
4107         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
4108         Likewise.
4109         * testsuite/experimental/string_view/operations/rfind/char/3.cc:
4110         Likewise.
4111         * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
4112         Likewise.
4113         * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
4114         Likewise.
4115         * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
4116         Likewise.
4117         * testsuite/experimental/string_view/operations/substr/char/1.cc:
4118         Likewise.
4119         * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
4120         Likewise.
4121         * testsuite/experimental/string_view/operations/to_string/1.cc:
4122         Likewise.
4123         * testsuite/experimental/string_view/operators/char/2.cc: Likewise.
4124         * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
4125         * testsuite/experimental/unordered_map/erasure.cc: Likewise.
4126         * testsuite/experimental/unordered_set/erasure.cc: Likewise.
4127         * testsuite/experimental/vector/erasure.cc: Likewise.
4128         * testsuite/ext/array_allocator/1.cc: Likewise.
4129         * testsuite/ext/array_allocator/2.cc: Likewise.
4130         * testsuite/ext/array_allocator/3.cc: Likewise.
4131         * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
4132         * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
4133         * testsuite/ext/codecvt/1.cc: Likewise.
4134         * testsuite/ext/codecvt/char-1.cc: Likewise.
4135         * testsuite/ext/codecvt/char-2.cc: Likewise.
4136         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
4137         * testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
4138         * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
4139         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
4140         * testsuite/ext/ext_pointer/1.cc: Likewise.
4141         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
4142         * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
4143         * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
4144         * testsuite/ext/mt_allocator/tune-1.cc: Likewise.
4145         * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
4146         * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
4147         * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
4148         * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
4149         * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
4150         * testsuite/ext/pod_char_traits.cc: Likewise.
4151         * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
4152         * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
4153         * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
4154         * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
4155         Likewise.
4156         * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
4157         Likewise.
4158         * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
4159         Likewise.
4160         * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
4161         * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
4162         * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
4163         * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
4164         * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
4165         * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
4166         * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
4167         * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
4168         * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
4169         Likewise.
4170         * testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
4171         Likewise.
4172         * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
4173         Likewise.
4174         * testsuite/ext/random/hypergeometric_distribution/operators/
4175         equal.cc: Likewise.
4176         * testsuite/ext/random/hypergeometric_distribution/operators/
4177         inequal.cc: Likewise.
4178         * testsuite/ext/random/hypergeometric_distribution/operators/
4179         serialize.cc: Likewise.
4180         * testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
4181         * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
4182         * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
4183         * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
4184         * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
4185         * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
4186         * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
4187         * testsuite/ext/random/logistic_distribution/operators/equal.cc:
4188         Likewise.
4189         * testsuite/ext/random/logistic_distribution/operators/inequal.cc:
4190         Likewise.
4191         * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
4192         Likewise.
4193         * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
4194         * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
4195         * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
4196         Likewise.
4197         * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
4198         Likewise.
4199         * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
4200         Likewise.
4201         * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
4202         * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
4203         * testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
4204         Likewise.
4205         * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
4206         Likewise.
4207         * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
4208         * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
4209         * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
4210         * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
4211         Likewise.
4212         * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
4213         Likewise.
4214         * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
4215         * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
4216         * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
4217         * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
4218         * testsuite/ext/random/rice_distribution/operators/serialize.cc:
4219         Likewise.
4220         * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
4221         default.cc: Likewise.
4222         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4223         equal.cc: Likewise.
4224         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4225         inequal.cc: Likewise.
4226         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4227         serialize.cc: Likewise.
4228         * testsuite/ext/random/triangular_distribution/cons/default.cc:
4229         Likewise.
4230         * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
4231         * testsuite/ext/random/triangular_distribution/operators/equal.cc:
4232         Likewise.
4233         * testsuite/ext/random/triangular_distribution/operators/inequal.cc:
4234         Likewise.
4235         * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
4236         Likewise.
4237         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4238         equal.cc: Likewise.
4239         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4240         generate.cc: Likewise.
4241         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4242         inequal.cc: Likewise.
4243         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4244         serialize.cc: Likewise.
4245         * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
4246         * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
4247         * testsuite/ext/random/von_mises_distribution/operators/equal.cc:
4248         Likewise.
4249         * testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
4250         Likewise.
4251         * testsuite/ext/rope/2.cc: Likewise.
4252         * testsuite/ext/rope/3.cc: Likewise.
4253         * testsuite/ext/rope/4.cc: Likewise.
4254         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
4255         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
4256         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
4257         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
4258         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
4259         * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
4260         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
4261         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
4262         * testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
4263         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
4264         * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
4265         * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
4266         * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
4267         * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
4268         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
4269         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
4270         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
4271         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
4272         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
4273         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
4274         * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
4275         * testsuite/ext/type_traits/add_unsigned.cc: Likewise.
4276         * testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
4277         * testsuite/ext/vstring/capacity/29134.cc: Likewise.
4278         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
4279         * testsuite/ext/vstring/cons/58415-1.cc: Likewise.
4280         * testsuite/ext/vstring/cons/moveable.cc: Likewise.
4281         * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
4282         * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
4283         * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
4284         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
4285         * testsuite/ext/vstring/hash/char/1.cc: Likewise.
4286         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4287         * testsuite/ext/vstring/init-list.cc: Likewise.
4288         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
4289         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
4290         * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
4291         * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
4292         * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
4293         * testsuite/ext/vstring/operators/1.cc: Likewise.
4294         * testsuite/ext/vstring/operators/2.cc: Likewise.
4296 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
4298         PR libstdc++/65122
4299         * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
4300         aligned_alloc for types with extended alignment if available,
4301         otherwise throw bad_alloc if malloc doesn't return a suitable value.
4302         * include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
4303         (bitmap_allocator::deallocate): Use aligned new/delete for types with
4304         extended alignment.
4305         * include/ext/mt_allocator.h (__mt_alloc::allocate)
4306         (__mt_alloc::deallocate): Likewise.
4307         * include/ext/new_allocator.h (new_allocator::allocate)
4308         (new_allocator::deallocate): Likewise.
4309         * include/ext/pool_allocator.h (__pool_alloc::allocate)
4310         (__pool_alloc::deallocate): Likewise.
4311         * testsuite/20_util/allocator/overaligned.cc: New test.
4312         * testsuite/ext/bitmap_allocator/overaligned.cc: New test.
4313         * testsuite/ext/malloc_allocator/overaligned.cc: New test.
4314         * testsuite/ext/mt_allocator/overaligned.cc: New test.
4315         * testsuite/ext/new_allocator/overaligned.cc: New test.
4316         * testsuite/ext/pool_allocator/overaligned.cc: New test.
4318 2016-10-14  Tim Shen  <timshen@google.com>
4320         PR libstdc++/77944
4321         * include/std/variant: Include <bits/funcexcept.h> for __try and
4322         __catch.
4324 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
4326         * include/std/functional (_Reference_wrapper_base_impl): Remove.
4327         (_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
4328         (_Reference_wrapper_base): Inherit from new helpers.
4330 2016-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
4332         * testsuite/24_iterators/container_access.cc: Remove 'test' variables.
4333         * testsuite/24_iterators/istream_iterator/2.cc: Likewise.
4334         * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
4335         * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
4336         * testsuite/24_iterators/operations/next.cc: Likewise.
4337         * testsuite/24_iterators/operations/prev.cc: Likewise.
4338         * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
4339         * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
4340         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
4341         * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
4342         * testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
4343         * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
4344         * testsuite/25_algorithms/all_of/1.cc: Likewise.
4345         * testsuite/25_algorithms/any_of/1.cc: Likewise.
4346         * testsuite/25_algorithms/binary_search/2.cc: Likewise.
4347         * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
4348         * testsuite/25_algorithms/clamp/1.cc: Likewise.
4349         * testsuite/25_algorithms/clamp/2.cc: Likewise.
4350         * testsuite/25_algorithms/copy/1.cc: Likewise.
4351         * testsuite/25_algorithms/copy/2.cc: Likewise.
4352         * testsuite/25_algorithms/copy/3.cc: Likewise.
4353         * testsuite/25_algorithms/copy/34595.cc: Likewise.
4354         * testsuite/25_algorithms/copy/4.cc: Likewise.
4355         * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
4356         * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
4357         * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
4358         * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
4359         * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
4360         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
4361         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
4362         Likewise.
4363         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
4364         Likewise.
4365         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
4366         Likewise.
4367         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
4368         Likewise.
4369         * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
4370         * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
4371         * testsuite/25_algorithms/copy_n/1.cc: Likewise.
4372         * testsuite/25_algorithms/copy_n/2.cc: Likewise.
4373         * testsuite/25_algorithms/copy_n/3.cc: Likewise.
4374         * testsuite/25_algorithms/copy_n/4.cc: Likewise.
4375         * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
4376         * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
4377         * testsuite/25_algorithms/equal_range/2.cc: Likewise.
4378         * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
4379         * testsuite/25_algorithms/fill/1.cc: Likewise.
4380         * testsuite/25_algorithms/fill/2.cc: Likewise.
4381         * testsuite/25_algorithms/fill/3.cc: Likewise.
4382         * testsuite/25_algorithms/fill/4.cc: Likewise.
4383         * testsuite/25_algorithms/fill_n/1.cc: Likewise.
4384         * testsuite/25_algorithms/find/39546.cc: Likewise.
4385         * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
4386         * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
4387         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
4388         Likewise.
4389         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
4390         Likewise.
4391         * testsuite/25_algorithms/find_if/1.cc: Likewise.
4392         * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
4393         * testsuite/25_algorithms/for_each/1.cc: Likewise.
4394         * testsuite/25_algorithms/heap/1.cc: Likewise.
4395         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4396         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
4397         * testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
4398         * testsuite/25_algorithms/includes/1.cc: Likewise.
4399         * testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
4400         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
4401         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
4402         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
4403         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
4404         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
4405         * testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
4406         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
4407         * testsuite/25_algorithms/is_permutation/2.cc: Likewise.
4408         * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
4409         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
4410         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
4411         * testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
4412         * testsuite/25_algorithms/lower_bound/2.cc: Likewise.
4413         * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
4414         * testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
4415         * testsuite/25_algorithms/max/1.cc: Likewise.
4416         * testsuite/25_algorithms/max/2.cc: Likewise.
4417         * testsuite/25_algorithms/max/3.cc: Likewise.
4418         * testsuite/25_algorithms/max/37547.cc: Likewise.
4419         * testsuite/25_algorithms/max/4.cc: Likewise.
4420         * testsuite/25_algorithms/min/1.cc: Likewise.
4421         * testsuite/25_algorithms/min/2.cc: Likewise.
4422         * testsuite/25_algorithms/min/3.cc: Likewise.
4423         * testsuite/25_algorithms/min/37547.cc: Likewise.
4424         * testsuite/25_algorithms/min/4.cc: Likewise.
4425         * testsuite/25_algorithms/minmax/1.cc: Likewise.
4426         * testsuite/25_algorithms/minmax/2.cc: Likewise.
4427         * testsuite/25_algorithms/minmax/3.cc: Likewise.
4428         * testsuite/25_algorithms/minmax/37547.cc: Likewise.
4429         * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
4430         * testsuite/25_algorithms/move/1.cc: Likewise.
4431         * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
4432         * testsuite/25_algorithms/move_backward/1.cc: Likewise.
4433         * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
4434         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
4435         * testsuite/25_algorithms/none_of/1.cc: Likewise.
4436         * testsuite/25_algorithms/nth_element/1.cc: Likewise.
4437         * testsuite/25_algorithms/nth_element/2.cc: Likewise.
4438         * testsuite/25_algorithms/nth_element/3.cc: Likewise.
4439         * testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
4440         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
4441         * testsuite/25_algorithms/partial_sort/2.cc: Likewise.
4442         * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
4443         Likewise.
4444         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
4445         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
4446         * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
4447         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
4448         * testsuite/25_algorithms/partition/1.cc: Likewise.
4449         * testsuite/25_algorithms/partition/moveable.cc: Likewise.
4450         * testsuite/25_algorithms/partition_copy/1.cc: Likewise.
4451         * testsuite/25_algorithms/partition_point/1.cc: Likewise.
4452         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
4453         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4454         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
4455         * testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
4456         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
4457         * testsuite/25_algorithms/rotate/1.cc: Likewise.
4458         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4459         * testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
4460         * testsuite/25_algorithms/rotate/rotate.cc: Likewise.
4461         * testsuite/25_algorithms/search/1.cc: Likewise.
4462         * testsuite/25_algorithms/search_n/58358.cc: Likewise.
4463         * testsuite/25_algorithms/shuffle/1.cc: Likewise.
4464         * testsuite/25_algorithms/sort/1.cc: Likewise.
4465         * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
4466         * testsuite/25_algorithms/sort/moveable.cc: Likewise.
4467         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
4468         * testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
4469         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
4470         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
4471         * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
4472         * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
4473         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4474         * testsuite/25_algorithms/stable_sort/2.cc: Likewise.
4475         * testsuite/25_algorithms/stable_sort/3.cc: Likewise.
4476         * testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
4477         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4478         Likewise.
4479         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
4480         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
4481         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
4482         * testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
4483         * testsuite/25_algorithms/unique/11480.cc: Likewise.
4484         * testsuite/25_algorithms/unique/2.cc: Likewise.
4485         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
4486         * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
4487         * testsuite/25_algorithms/unique_copy/2.cc: Likewise.
4488         * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
4489         * testsuite/25_algorithms/upper_bound/2.cc: Likewise.
4490         * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
4491         * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
4492         * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
4493         Likewise.
4494         * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
4495         Likewise.
4496         * testsuite/28_regex/algorithms/regex_match/basic/
4497         string_range_00_03.cc: Likewise.
4498         * testsuite/28_regex/algorithms/regex_match/basic/
4499         string_range_01_03.cc: Likewise.
4500         * testsuite/28_regex/algorithms/regex_match/basic/
4501         string_range_02_03.cc: Likewise.
4502         * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
4503         Likewise.
4504         * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
4505         Likewise.
4506         * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
4507         Likewise.
4508         * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
4509         Likewise.
4510         * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
4511         Likewise.
4512         * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
4513         Likewise.
4514         * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
4515         Likewise.
4516         * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
4517         Likewise.
4518         * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
4519         Likewise.
4520         * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
4521         * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
4522         Likewise.
4523         * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
4524         Likewise.
4525         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
4526         Likewise.
4527         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
4528         anymatcher.cc: Likewise.
4529         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
4530         Likewise.
4531         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
4532         Likewise.
4533         * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
4534         Likewise.
4535         * testsuite/28_regex/algorithms/regex_match/extended/
4536         cstring_questionmark.cc: Likewise.
4537         * testsuite/28_regex/algorithms/regex_match/extended/
4538         cstring_range.cc: Likewise.
4539         * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
4540         Likewise.
4541         * testsuite/28_regex/algorithms/regex_match/extended/
4542         string_range_00_03.cc: Likewise.
4543         * testsuite/28_regex/algorithms/regex_match/extended/
4544         string_range_01_03.cc: Likewise.
4545         * testsuite/28_regex/algorithms/regex_match/extended/
4546         string_range_02_03.cc: Likewise.
4547         * testsuite/28_regex/algorithms/regex_match/extended/
4548         wstring_locale.cc: Likewise.
4549         * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
4550         Likewise.
4551         * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
4552         * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
4553         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
4554         Likewise.
4555         * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
4556         Likewise.
4557         * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
4558         * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
4559         * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
4560         Likewise.
4561         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
4562         * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
4563         * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
4564         * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
4565         * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
4566         * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
4567         * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
4568         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
4569         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
4570         * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
4571         * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
4572         * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
4573         * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
4574         * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
4575         Likewise.
4576         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4577         Likewise.
4578         * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
4579         * testsuite/28_regex/basic_regex/ctors/extended/
4580         string_range_01_02_03.cc: Likewise.
4581         * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
4582         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
4583         * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
4584         * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
4585         * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
4586         * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
4587         * testsuite/28_regex/constants/error_type.cc: Likewise.
4588         * testsuite/28_regex/constants/match_flag_type.cc: Likewise.
4589         * testsuite/28_regex/init-list.cc: Likewise.
4590         * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
4591         * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
4592         Likewise.
4593         * testsuite/28_regex/iterators/regex_iterator/char/
4594         string_position_01.cc
4595         * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
4596         Likewise.
4597         * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
4598         default.cc: Likewise.
4599         * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
4600         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
4601         Likewise.
4602         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
4603         Likewise.
4604         * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
4605         * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
4606         Likewise.
4607         * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
4608         default.cc: Likewise.
4609         * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
4610         default.cc: Likewise.
4611         * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
4612         Likewise.
4613         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4614         string_01.cc: Likewise.
4615         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4616         wstring_02.cc: Likewise.
4617         * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
4618         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4619         * testsuite/28_regex/match_results/format.cc: Likewise.
4620         * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
4621         * testsuite/28_regex/match_results/swap.cc: Likewise.
4622         * testsuite/28_regex/match_results/typedefs.cc: Likewise.
4623         * testsuite/28_regex/regex_error/regex_error.cc: Likewise.
4624         * testsuite/28_regex/regression.cc: Likewise.
4625         * testsuite/28_regex/sub_match/cast_char.cc: Likewise.
4626         * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
4627         * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
4628         * testsuite/28_regex/sub_match/length.cc: Likewise.
4629         * testsuite/28_regex/traits/char/ctor.cc: Likewise.
4630         * testsuite/28_regex/traits/char/isctype.cc: Likewise.
4631         * testsuite/28_regex/traits/char/length.cc: Likewise.
4632         * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
4633         * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
4634         * testsuite/28_regex/traits/char/transform.cc: Likewise.
4635         * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
4636         * testsuite/28_regex/traits/char/translate.cc: Likewise.
4637         * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
4638         * testsuite/28_regex/traits/char/user_defined.cc: Likewise.
4639         * testsuite/28_regex/traits/char/value.cc: Likewise.
4640         * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
4641         * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
4642         * testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
4643         * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
4644         * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
4645         * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
4646         * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
4647         * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
4648         * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
4649         * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
4650         * testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
4651         * testsuite/29_atomics/atomic/60658.cc: Likewise.
4652         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
4653         * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
4654         * testsuite/backward/11460.cc: Likewise.
4655         * testsuite/backward/hash_map/1.cc: Likewise.
4656         * testsuite/backward/hash_map/25896.cc: Likewise.
4657         * testsuite/backward/hash_set/1.cc: Likewise.
4658         * testsuite/backward/hash_set/25896.cc: Likewise.
4659         * testsuite/decimal/binary-arith.cc: Likewise.
4660         * testsuite/decimal/comparison.cc: Likewise.
4661         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
4662         * testsuite/decimal/compound-assignment.cc: Likewise.
4663         * testsuite/decimal/conversion-from-float.cc: Likewise.
4664         * testsuite/decimal/conversion-from-integral.cc: Likewise.
4665         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
4666         * testsuite/decimal/conversion-to-integral.cc: Likewise.
4667         * testsuite/decimal/ctor.cc: Likewise.
4668         * testsuite/decimal/incdec-memfunc.cc: Likewise.
4669         * testsuite/decimal/incdec.cc: Likewise.
4670         * testsuite/decimal/make-decimal.cc: Likewise.
4671         * testsuite/decimal/pr54036-1.cc: Likewise.
4672         * testsuite/decimal/pr54036-2.cc: Likewise.
4673         * testsuite/decimal/pr54036-3.cc: Likewise.
4674         * testsuite/decimal/unary-arith.cc: Likewise.
4675         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
4676         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
4677         Likewise.
4678         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
4679         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
4680         Likewise.
4681         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
4682         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
4683         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
4684         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
4685         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
4686         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
4687         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
4688         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
4689         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
4690         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
4691         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
4692         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
4693         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
4694         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
4695         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
4696         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
4697         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
4698         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
4699         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
4700         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
4701         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
4702         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
4703         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
4704         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
4705         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
4706         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
4707         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
4708         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
4709         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
4710         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
4711         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
4712         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
4713         * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
4714         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
4715         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
4716         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
4717         * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
4718         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
4719         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
4720         * testsuite/tr2/bases/value.cc: Likewise.
4721         * testsuite/tr2/direct_bases/value.cc: Likewise.
4722         * testsuite/util/debug/checks.h: Likewise.
4723         * testsuite/util/debug/unordered_checks.h: Likewise.
4724         * testsuite/util/testsuite_allocator.h: Likewise.
4725         * testsuite/util/testsuite_api.h: Likewise.
4726         * testsuite/util/testsuite_common_types.h: Likewise.
4727         * testsuite/util/testsuite_random.h: Likewise.
4728         * testsuite/util/testsuite_rvalref.h: Likewise.
4730 2016-10-13  Jonathan Wakely  <jwakely@redhat.com>
4732         * include/bits/shared_ptr_base.h: Include <functional>.
4733         [!__cpp_rtti]: Do not include <typeinfo>.
4734         * include/experimental/array: Do not include <functional>.
4735         * include/experimental/memory: Include <bits/functional_hash.h>
4736         instead of <functional>.
4737         * include/experimental/propagate_const: Include <bits/stl_function.h>,
4738         <bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
4739         * include/experimental/tuple: Do not include <functional>.
4740         * include/std/future: Include <functional>.
4741         * include/std/memory: Do not include <functional>.
4742         * include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
4743         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
4744         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
4745         missing includes.
4746         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4747         * testsuite/20_util/specialized_algorithms/memory_management_tools/
4748         1.cc: Likewise.
4749         * testsuite/30_threads/call_once/60497.cc: Likewise.
4750         * testsuite/30_threads/lock/2.cc: Likewise.
4751         * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
4752         * testsuite/experimental/algorithm/sample.cc: Likewise.
4753         * testsuite/experimental/array/make_array.cc: Likewise.
4754         * testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
4755         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
4756         Adjust dg-error lines.
4757         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
4758         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
4759         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
4760         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
4761         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
4763         * testsuite/experimental/algorithm/sample.cc: Add missing header.
4765         * include/experimental/propagate_const (element_type): Qualify
4766         declval.
4768         * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
4769         instead of assert.
4771         * include/experiumental/functional (boyer_moore_searcher)
4772         (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
4773         with _GLIBCXX_STD_C.
4774         * include/std/functional: Likewise.
4776         * include/std/chrono (floor): Replace non-constexpr operation.
4777         * testsuite/20_util/duration_cast/rounding.cc: Test conversion to
4778         durations with floating pointer representations.
4780         * src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
4781         (_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
4783         * include/std/functional (_Bind_simple, _Bind_simple_helper)
4784         (__bind_simple): Remove.
4785         * include/std/future: Include <bits/invoke.h> instead of <functional>.
4786         (__future_base::_Task_state::_M_run)
4787         (__future_base::_Task_state::_M_run_delayed): Use lambda expressions
4788         instead of __bind_simple.
4789         (__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
4790         (async): Use thread::__make_invoker instead of __bind_simple.
4791         * include/std/thread: Include <tuple> and <bits/invoke.h> instead of
4792         <functional>.
4793         (thread::_Invoker, thread::__make_invoker): Define helpers to do
4794         INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
4796         * include/std/functional (_Not_fn): Make exception specifications
4797         depend on whether negating the result can throw.
4798         * testsuite/20_util/not_fn/1.cc: Move to ...
4799         * testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
4800         for types that can throw when negated and that cannot be negated.
4802         * include/bits/invoke.h (__invoke): Fix exception-specification.
4803         * include/std/functional (invoke): Likewise.
4804         * testsuite/20_util/function_objects/invoke/1.cc: New test.
4806 2016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
4808         * testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
4809         __builtin_printf and __builtin_abort.
4810         * testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
4811         * scripts/testsuite_flags.in: Likewise.
4812         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
4813         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
4814         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
4815         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
4816         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
4817         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
4818         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
4819         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
4820         * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
4821         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
4822         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
4823         Likewise.
4824         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
4825         Likewise.
4826         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
4827         Likewise.
4828         * testsuite/27_io/objects/char/7.cc: Likewise.
4829         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
4830         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
4831         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
4832         * testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
4833         * testsuite/18_support/bad_alloc/what.cc: Likewise.
4834         * testsuite/18_support/bad_cast/what.cc: Likewise.
4835         * testsuite/18_support/bad_exception/what.cc: Likewise.
4836         * testsuite/18_support/bad_typeid/what.cc: Likewise.
4837         * testsuite/18_support/exception/38732.cc: Likewise.
4838         * testsuite/18_support/exception/what.cc: Likewise.
4839         * testsuite/18_support/exception_ptr/64241.cc: Likewise.
4840         * testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
4841         * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
4842         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
4843         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
4844         * testsuite/18_support/nested_exception/cons.cc: Likewise.
4845         * testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
4846         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
4847         * testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
4848         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
4849         * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
4850         * testsuite/18_support/numeric_limits/digits10.cc: Likewise.
4851         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
4852         * testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
4853         * testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
4854         * testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
4855         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
4856         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
4857         * testsuite/18_support/numeric_limits/min_max.cc: Likewise.
4858         * testsuite/18_support/numeric_limits/specialization_default_values.cc:
4859         Likewise.
4860         * testsuite/18_support/type_info/hash_code.cc: Likewise.
4861         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
4862         * testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
4863         * testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
4864         * testsuite/19_diagnostics/error_category/operators/
4865         not_equal.cc: Likewise.
4866         * testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
4867         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
4868         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
4869         * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
4870         * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
4871         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
4872         * testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
4873         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
4874         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
4875         Likewise.
4876         * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
4877         * testsuite/19_diagnostics/error_condition/operators/equal.cc:
4878         Likewise.
4879         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
4880         Likewise.
4881         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
4882         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
4883         * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
4884         * testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
4885         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
4886         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
4887         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
4888         * testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
4889         * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
4890         * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
4891         * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
4892         * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
4893         * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
4894         * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
4895         * testsuite/20_util/addressof/1.cc: Likewise.
4896         * testsuite/20_util/align/1.cc: Likewise.
4897         * testsuite/20_util/align/2.cc: Likewise.
4898         * testsuite/20_util/allocator/1.cc: Likewise.
4899         * testsuite/20_util/allocator/10378.cc: Likewise.
4900         * testsuite/20_util/allocator/8230.cc: Likewise.
4901         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
4902         Likewise.
4903         * testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
4904         * testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
4905         * testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
4906         * testsuite/20_util/any/assign/exception.cc: Likewise.
4907         * testsuite/20_util/auto_ptr/1.cc: Likewise.
4908         * testsuite/20_util/auto_ptr/2.cc: Likewise.
4909         * testsuite/20_util/auto_ptr/3.cc: Likewise.
4910         * testsuite/20_util/auto_ptr/4.cc: Likewise.
4911         * testsuite/20_util/auto_ptr/5.cc: Likewise.
4912         * testsuite/20_util/auto_ptr/6.cc: Likewise.
4913         * testsuite/20_util/auto_ptr/7.cc: Likewise.
4914         * testsuite/20_util/bind/all_bound.cc: Likewise.
4915         * testsuite/20_util/bind/conv_result.cc: Likewise.
4916         * testsuite/20_util/bind/cv_quals.cc: Likewise.
4917         * testsuite/20_util/bind/cv_quals_2.cc
4918         * testsuite/20_util/bind/nested.cc: Likewise.
4919         * testsuite/20_util/bind/placeholders.cc: Likewise.
4920         * testsuite/20_util/bind/ref.cc: Likewise.
4921         * testsuite/20_util/bind/ref2.cc: Likewise.
4922         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
4923         * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
4924         * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
4925         * testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
4926         * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
4927         * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
4928         * testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
4929         * testsuite/20_util/duration/cons/1.cc: Likewise.
4930         * testsuite/20_util/duration/cons/2.cc: Likewise.
4931         * testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
4932         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
4933         * testsuite/20_util/enable_shared_from_this/members/assign.cc:
4934         Likewise.
4935         * testsuite/20_util/exchange/1.cc: Likewise.
4936         * testsuite/20_util/forward/a.cc: Likewise.
4937         * testsuite/20_util/forward/b.cc: Likewise.
4938         * testsuite/20_util/forward/d.cc: Likewise.
4939         * testsuite/20_util/function/1.cc: Likewise.
4940         * testsuite/20_util/function/2.cc: Likewise.
4941         * testsuite/20_util/function/3.cc: Likewise.
4942         * testsuite/20_util/function/4.cc: Likewise.
4943         * testsuite/20_util/function/43397.cc: Likewise.
4944         * testsuite/20_util/function/5.cc: Likewise.
4945         * testsuite/20_util/function/6.cc: Likewise.
4946         * testsuite/20_util/function/7.cc: Likewise.
4947         * testsuite/20_util/function/8.cc: Likewise.
4948         * testsuite/20_util/function/9.cc: Likewise.
4949         * testsuite/20_util/function/assign/move.cc: Likewise.
4950         * testsuite/20_util/function/cons/move.cc: Likewise.
4951         * testsuite/20_util/function_objects/dr660.cc: Likewise.
4952         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
4953         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
4954         * testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
4955         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
4956         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
4957         * testsuite/20_util/hash/operators/size_t.cc: Likewise.
4958         * testsuite/20_util/hash/quality.cc: Likewise.
4959         * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
4960         * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
4961         * testsuite/20_util/is_function/24808.cc: Likewise.
4962         * testsuite/20_util/is_object/24808.cc: Likewise.
4963         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
4964         * testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
4965         * testsuite/20_util/owner_less/cmp.cc: Likewise.
4966         * testsuite/20_util/pair/1.cc: Likewise.
4967         * testsuite/20_util/pair/2.cc: Likewise.
4968         * testsuite/20_util/pair/3.cc: Likewise.
4969         * testsuite/20_util/pair/4.cc: Likewise.
4970         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
4971         * testsuite/20_util/pair/moveable.cc: Likewise.
4972         * testsuite/20_util/pair/piecewise.cc: Likewise.
4973         * testsuite/20_util/pair/swap.cc: Likewise.
4974         * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
4975         * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
4976         * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
4977         * testsuite/20_util/ratio/cons/cons1.cc: Likewise.
4978         * testsuite/20_util/ratio/operations/45866.cc: Likewise.
4979         * testsuite/20_util/ratio/operations/47913.cc: Likewise.
4980         * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
4981         * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
4982         * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
4983         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
4984         * testsuite/20_util/scoped_allocator/1.cc: Likewise.
4985         * testsuite/20_util/scoped_allocator/2.cc: Likewise.
4986         * testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
4987         * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
4988         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
4989         * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
4990         * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
4991         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
4992         Likewise.
4993         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
4994         * testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
4995         * testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
4996         * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
4997         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
4998         * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
4999         * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
5000         * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
5001         * testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
5002         * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
5003         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
5004         * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
5005         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
5006         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
5007         Likewise.
5008         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
5009         Likewise.
5010         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
5011         * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
5012         * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
5013         * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
5014         * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
5015         * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
5016         * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
5017         * testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
5018         * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
5019         * testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
5020         * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
5021         * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
5022         * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
5023         * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
5024         * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
5025         * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
5026         * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
5027         * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
5028         * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
5029         * testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
5030         * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
5031         * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
5032         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
5033         Likewise.
5034         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5035         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
5036         move_iterators/1.cc: Likewise.
5037         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
5038         move_iterators/1.cc: Likewise.
5039         * testsuite/20_util/temporary_buffer.cc: Likewise.
5040         * testsuite/20_util/time_point/1.cc: Likewise.
5041         * testsuite/20_util/time_point/2.cc: Likewise.
5042         * testsuite/20_util/time_point/3.cc: Likewise.
5043         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
5044         * testsuite/20_util/tuple/48476.cc: Likewise.
5045         * testsuite/20_util/tuple/comparison_operators/comparisons.cc:
5046         Likewise.
5047         * testsuite/20_util/tuple/cons/allocators.cc: Likewise.
5048         * testsuite/20_util/tuple/cons/assignment.cc: Likewise.
5049         * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
5050         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
5051         * testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
5052         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
5053         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
5054         * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
5055         Likewise.
5056         * testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
5057         * testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
5058         * testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
5059         * testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
5060         * testsuite/20_util/tuple/element_access/get.cc: Likewise.
5061         * testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
5062         * testsuite/20_util/tuple/moveable.cc: Likewise.
5063         * testsuite/20_util/tuple/swap.cc: Likewise.
5064         * testsuite/20_util/tuple/tuple_size.cc: Likewise.
5065         * testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
5066         * testsuite/20_util/typeindex/hash.cc: Likewise.
5067         * testsuite/20_util/typeindex/hash_code.cc: Likewise.
5068         * testsuite/20_util/typeindex/name.cc: Likewise.
5069         * testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
5070         * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
5071         * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
5072         * testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
5073         * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
5074         * testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
5075         * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
5076         * testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
5077         * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
5078         * testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
5079         * testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
5080         * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
5081         * testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
5082         * testsuite/20_util/unique_ptr/specialized_algorithms/
5083         comparisons.cc: Likewise.
5084         * testsuite/20_util/unique_ptr/specialized_algorithms/
5085         comparisons_array.cc: Likewise.
5086         * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
5087         Likewise.
5088         * testsuite/20_util/uses_allocator/construction.cc: Likewise.
5089         * testsuite/20_util/uses_allocator/value.cc: Likewise.
5090         * testsuite/20_util/variant/run.cc: Likewise.
5091         * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
5092         * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
5093         * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
5094         Likewise.
5095         * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
5096         * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
5097         Likewise.
5098         * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
5099         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
5100         Likewise.
5101         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
5102         Likewise.
5103         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
5104         Likewise.
5105         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
5106         Likewise.
5107         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
5108         Likewise.
5109         * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
5110         * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
5111         * testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
5112         * testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
5113         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
5114         Likewise.
5115         * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
5116         * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
5117         Likewise.
5118         * testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
5119         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
5120         Likewise.
5121         * testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
5122         * testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
5123         * testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
5124         * testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
5125         * testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
5126         * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
5127         * testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
5128         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
5129         * testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
5130         * testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
5131         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
5132         * testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
5133         * testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
5134         * testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
5135         * testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
5136         * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
5137         * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
5138         * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
5139         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
5140         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
5141         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
5142         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
5143         Likewise.
5144         * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
5145         * testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
5146         * testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
5147         * testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
5148         * testsuite/21_strings/basic_string/element_access/char/58163.cc:
5149         Likewise.
5150         * testsuite/21_strings/basic_string/element_access/char/empty.cc:
5151         Likewise.
5152         * testsuite/21_strings/basic_string/element_access/char/front_back.cc:
5153         Likewise.
5154         * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
5155         Likewise.
5156         * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
5157         Likewise.
5158         * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
5159         Likewise.
5160         * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
5161         Likewise.
5162         * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
5163         Likewise.
5164         * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
5165         Likewise.
5166         * testsuite/21_strings/basic_string/element_access/wchar_t/
5167         front_back.cc: Likewise.
5168         * testsuite/21_strings/basic_string/init-list.cc: Likewise.
5169         * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
5170         Likewise.
5171         * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
5172         Likewise.
5173         * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
5174         Likewise.
5175         * testsuite/21_strings/basic_string/inserters_extractors/char/
5176         28277.cc: Likewise.
5177         * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
5178         Likewise.
5179         * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
5180         Likewise.
5181         * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
5182         Likewise.
5183         * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
5184         Likewise.
5185         * testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
5186         Likewise.
5187         * testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
5188         Likewise.
5189         * testsuite/21_strings/basic_string/inserters_extractors/pod/
5190         10081-in.cc: Likewise.
5191         * testsuite/21_strings/basic_string/inserters_extractors/pod/
5192         10081-out.cc: Likewise.
5193         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
5194         Likewise.
5195         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5196         10.cc: Likewise.
5197         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5198         11.cc: Likewise.
5199         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5200         28277.cc: Likewise.
5201         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
5202         Likewise.
5203         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
5204         Likewise.
5205         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
5206         Likewise.
5207         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
5208         Likewise.
5209         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
5210         Likewise.
5211         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
5212         Likewise.
5213         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
5214         Likewise.
5215         * testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
5216         Likewise.
5217         * testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
5218         Likewise.
5219         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
5220         Likewise.
5221         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
5222         Likewise.
5223         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
5224         Likewise.
5225         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
5226         Likewise.
5227         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
5228         Likewise.
5229         * testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
5230         Likewise.
5231         * testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
5232         Likewise.
5233         * testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
5234         Likewise.
5235         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
5236         Likewise.
5237         * testsuite/21_strings/basic_string/modifiers/assign/char/
5238         move_assign.cc: Likewise.
5239         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
5240         Likewise.
5241         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
5242         Likewise.
5243         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
5244         Likewise.
5245         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
5246         Likewise.
5247         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
5248         move_assign.cc: Likewise.
5249         * testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
5250         Likewise.
5251         * testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
5252         Likewise.
5253         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
5254         Likewise.
5255         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
5256         Likewise.
5257         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
5258         Likewise.
5259         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
5260         Likewise.
5261         * testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
5262         Likewise.
5263         * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
5264         Likewise.
5265         * testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
5266         Likewise.
5267         * testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
5268         Likewise.
5269         * testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
5270         Likewise.
5271         * testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
5272         Likewise.
5273         * testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
5274         Likewise.
5275         * testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
5276         Likewise.
5277         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
5278         Likewise.
5279         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
5280         Likewise.
5281         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
5282         Likewise.
5283         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
5284         Likewise.
5285         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
5286         Likewise.
5287         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
5288         Likewise.
5289         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
5290         Likewise.
5291         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
5292         Likewise.
5293         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
5294         Likewise.
5295         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
5296         Likewise.
5297         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
5298         Likewise.
5299         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
5300         Likewise.
5301         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
5302         Likewise.
5303         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
5304         Likewise.
5305         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
5306         Likewise.
5307         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
5308         Likewise.
5309         * testsuite/21_strings/basic_string/numeric_conversions/char/
5310         stoull.cc: Likewise.
5311         * testsuite/21_strings/basic_string/numeric_conversions/char/
5312         to_string.cc: Likewise.
5313         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5314         dr1261.cc: Likewise.
5315         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5316         stod.cc: Likewise.
5317         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5318         stof.cc: Likewise.
5319         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5320         stoi.cc: Likewise.
5321         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5322         stol.cc: Likewise.
5323         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5324         stold.cc: Likewise.
5325         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5326         stoll.cc: Likewise.
5327         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5328         stoul.cc: Likewise.
5329         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5330         stoull.cc: Likewise.
5331         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5332         to_wstring.cc: Likewise.
5333         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
5334         Likewise.
5335         * testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
5336         Likewise.
5337         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
5338         Likewise.
5339         * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
5340         Likewise.
5341         * testsuite/21_strings/basic_string/operations/compare/wchar_t/
5342         13650.cc: Likewise.
5343         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
5344         Likewise.
5345         * testsuite/21_strings/basic_string/operations/data/char/1.cc:
5346         Likewise.
5347         * testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
5348         Likewise.
5349         * testsuite/21_strings/basic_string/operations/find/char/1.cc:
5350         Likewise.
5351         * testsuite/21_strings/basic_string/operations/find/char/2.cc:
5352         Likewise.
5353         * testsuite/21_strings/basic_string/operations/find/char/3.cc:
5354         Likewise.
5355         * testsuite/21_strings/basic_string/operations/find/char/4.cc:
5356         Likewise.
5357         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
5358         Likewise.
5359         * testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
5360         Likewise.
5361         * testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
5362         Likewise.
5363         * testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
5364         Likewise.
5365         * testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
5366         Likewise.
5367         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
5368         Likewise.
5369         * testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
5370         Likewise.
5371         * testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
5372         Likewise.
5373         * testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
5374         Likewise.
5375         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
5376         Likewise.
5377         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
5378         Likewise.
5379         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
5380         Likewise.
5381         * testsuite/21_strings/basic_string/operations/substr/char/1.cc:
5382         Likewise.
5383         * testsuite/21_strings/basic_string/operations/substr/wchar_t/
5384         1.cc: Likewise.
5385         * testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
5386         * testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
5387         * testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
5388         * testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
5389         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
5390         * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
5391         * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
5392         * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
5393         * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
5394         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
5395         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
5396         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
5397         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
5398         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
5399         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
5400         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
5401         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
5402         * testsuite/21_strings/basic_string_view/element_access/char/
5403         1.cc: Likewise.
5404         * testsuite/21_strings/basic_string_view/element_access/char/
5405         empty.cc: Likewise.
5406         * testsuite/21_strings/basic_string_view/element_access/char/
5407         front_back.cc: Likewise.
5408         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5409         1.cc: Likewise.
5410         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5411         empty.cc: Likewise.
5412         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5413         front_back.cc: Likewise.
5414         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
5415         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
5416         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
5417         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
5418         Likewise.
5419         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
5420         Likewise.
5421         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
5422         Likewise.
5423         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
5424         Likewise.
5425         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5426         char/1.cc: Likewise.
5427         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5428         wchar_t/1.cc: Likewise.
5429         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5430         char/1.cc: Likewise.
5431         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5432         wchar_t/1.cc: Likewise.
5433         * testsuite/21_strings/basic_string_view/operations/compare/char/
5434         1.cc: Likewise.
5435         * testsuite/21_strings/basic_string_view/operations/compare/char/
5436         13650.cc: Likewise.
5437         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5438         1.cc: Likewise.
5439         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5440         13650.cc: Likewise.
5441         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
5442         Likewise.
5443         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
5444         Likewise.
5445         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
5446         Likewise.
5447         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
5448         Likewise.
5449         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
5450         Likewise.
5451         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
5452         Likewise.
5453         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
5454         Likewise.
5455         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
5456         Likewise.
5457         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5458         1.cc: Likewise.
5459         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5460         2.cc: Likewise.
5461         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5462         3.cc: Likewise.
5463         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5464         4.cc: Likewise.
5465         * testsuite/21_strings/basic_string_view/operations/rfind/char/
5466         1.cc: Likewise.
5467         * testsuite/21_strings/basic_string_view/operations/rfind/char/
5468         2.cc: Likewise.
5469         * testsuite/21_strings/basic_string_view/operations/rfind/char/
5470         3.cc: Likewise.
5471         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5472         1.cc: Likewise.
5473         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5474         2.cc: Likewise.
5475         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5476         3.cc: Likewise.
5477         * testsuite/21_strings/basic_string_view/operations/string_conversion/
5478         1.cc: Likewise.
5479         * testsuite/21_strings/basic_string_view/operations/substr/char/
5480         1.cc: Likewise.
5481         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
5482         1.cc: Likewise.
5483         * testsuite/21_strings/basic_string_view/operators/char/2.cc:
5484         Likewise.
5485         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
5486         Likewise.
5487         * testsuite/21_strings/c_strings/char/1.cc: Likewise.
5488         * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
5489         * testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
5490         * testsuite/21_strings/char_traits/requirements/char/57704.cc:
5491         Likewise.
5492         * testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
5493         * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
5495         * doc/xml/manual/test.xml: Fix typo.
5497 2016-10-12  Jonathan Wakely  <jwakely@redhat.com>
5499         * doc/xml/manual/status_cxx2017.xml: Add std::sample status.
5500         * doc/html/*: Regenerate.
5501         * include/experimental/algorithm (__sample): Move to bits/stl_algo.h
5502         and into namespace std.
5503         * include/bits/stl_algo.h (__sample): Define here. Fix invalid use
5504         of input iterator. Defend against overloaded comma operator.
5505         (sample): Define for C++17.
5506         * testsuite/25_algorithms/sample/1.cc: New test.
5508         * testsuite/util/testsuite_common_types.h
5509         (bitwise_assignment_operators): Use direct-initialization for C++11
5510         and later, to avoid CopyConstructible requirement.
5511         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
5512         line numbers.
5513         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
5514         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
5515         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
5516         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
5517         Adjust expected errors and line numbers.
5519         * include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
5520         (call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
5522         * include/bits/stl_uninitialized.h
5523         (__uninitialized_default_novalue_n_1<true>): Add missing return.
5524         * testsuite/20_util/specialized_algorithms/memory_management_tools/
5525         1.cc: Check return values of uninitialized_xxx_n algorithms.
5527         * libsupc++/nested_exception.h (throw_with_nested): Remove return.
5529         * doc/xml/manual/intro.xml: Document LWG 2442 status.
5530         * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
5531         [_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
5532         partial specialization to unpack args and forward to std::invoke.
5533         (call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
5534         instead of __bind_simple and __once_call_impl.
5535         (call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
5536         __bind_simple.
5537         * testsuite/30_threads/call_once/dr2442.cc: New test.
5539 2016-10-11  Jonathan Wakely  <jwakely@redhat.com>
5541         * include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
5542         _M_assign_dispatch directly with correct tag.
5544         * doc/xml/manual/intro.xml: Document LWG 2484 status.
5545         * libsupc++/nested_exception.h (_Throw_with_nested_impl)
5546         (_Throw_with_nested_helper): Remove.
5547         (__throw_with_nested_impl): New overloaded functions to implement
5548         throw_with_nested logic.
5549         (throw_with_nested): Call __throw_with_nested_impl.
5550         (_Rethrow_if_nested_impl): Remove
5551         (__rethrow_if_nested_impl): New overloaded functions to implement
5552         rethrow_if_nested logic.
5553         (rethrow_if_nested): Call __rethrow_if_nested_impl.
5554         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
5555         problem cases from LWG 2484.
5557         * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
5558         Register printer for std::__cxx11::list.
5559         * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
5560         std::__cxx11::list as well as std::list.
5562         * include/experimental/string_view (basic_string_view::_S_compare):
5563         Remove redundant const from return type.
5564         * include/std/string_view (basic_string_view:_S_compare): Likewise.
5566         * include/bits/std_mutex.h (mutex::native_handle)
5567         (lock_guard(mutex_type&, adopt_lock_t)
5568         (unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
5569         * include/std/mutex (recursive_mutex, timed_mutex)
5570         (recursive_timed_mutex): Likewise.
5572 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
5574         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
5575         Replace <literallayout> with nested <variablelist> elements. Update
5576         some more outdated text.
5577         * doc/html/*: Regenerate.
5579 2016-10-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
5581         Make any's copy assignment operator exception-safe,
5582         don't copy the underlying value when any is moved,
5583         make in_place constructors explicit.
5584         * include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
5585         Make explicit.
5586         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
5587         Likewise.
5588         (operator=(const any&)): Make strongly exception-safe.
5589         (operator=(any&&)): reset() unconditionally in the case where
5590         rhs has a value.
5591         (operator=(_ValueType&&)): Indent the return type.
5592         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
5593         * testsuite/20_util/any/assign/2.cc: Adjust.
5594         * testsuite/20_util/any/assign/exception.cc: New.
5595         * testsuite/20_util/any/cons/2.cc: Adjust.
5596         * testsuite/20_util/any/cons/explicit.cc: New.
5597         * testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
5599 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
5601         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
5602         Describe other subdirectories and add markup. Remove outdated
5603         reference to check-script target.
5604         * doc/html/*: Regenerate.
5606         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
5608         * libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
5609         with noexcept.
5611         * include/std/functional (_Bind_result::__enable_if_void): Use alias
5612         template instead of class template.
5613         (_Bind_result::__disable_if_void): Likewise.
5614         (_Bind_result::__call): Adjust uses of __enable_if_void and
5615         __disable_if_void.
5617         * doc/xml/manual/intro.xml: Document DR 2296 status.
5618         * doc/xml/manual/status_cxx2017.xml: Update status.
5619         * include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
5620         call __builtin_addressof.
5621         (addressof): Add _GLIBCXX17_CONSTEXPR.
5622         * testsuite/20_util/addressof/requirements/constexpr.cc: New test.
5623         * testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
5624         * testsuite/20_util/forward/f_neg.cc: Likewise.
5626         * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
5627         * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
5628         is_always_equal.
5629         * testsuite/util/testsuite_allocator.h
5630         (uneq_allocator::is_always_equal): Define as false_type.
5632         * include/experimental/numeric (gcd, lcm): Make bool arguments
5633         ill-formed.
5634         * include/std/numeric (gcd, lcm): Likewise.
5635         * testsuite/26_numerics/gcd/gcd_neg.cc: New test.
5636         * testsuite/26_numerics/lcm/lcm_neg.cc: New test.
5638         * include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
5639         Add noexcept.
5640         * include/bits/shared_ptr_base.h
5641         (__enable_shared_from_this::weak_from_this): Likewise.
5642         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5643         Test exception-specification of weak_from_this.
5645 2016-10-07  Jonathan Wakely  <jwakely@redhat.com>
5647         * doc/xml/manual/status_cxx1998.xml: Improve documentation of
5648         implementation-defined properties.
5649         * doc/xml/manual/status_cxx2011.xml: Likewise.
5650         * doc/xml/manual/status_cxx2017.xml: Likewise.
5652         * doc/xml/manual/status_cxx2017.xml: Update status.
5653         * include/std/type_traits (has_unique_object_representations): Define.
5654         * testsuite/20_util/has_unique_object_representations/value.cc: New.
5655         * testsuite/20_util/has_unique_object_representations/requirements/
5656         explicit_instantiation.cc: New.
5657         * testsuite/20_util/has_unique_object_representations/requirements/
5658         typedefs.cc: New.
5660 2016-10-06  Jonathan Wakely  <jwakely@redhat.com>
5662         * doc/xml/manual/status_cxx2011.xml: Update status.
5663         * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
5664         New helpers for recursive OUTERMOST.
5665         (__outermost): Use __outermost_type::_S_outermost.
5666         (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
5667         (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
5668         __outermost_type helper.
5669         (scoped_allocator_adaptor::_Constructible): New alias template.
5670         (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
5671         Constrain template constructors.
5672         * testsuite/20_util/scoped_allocator/3.cc: New test.
5673         * testsuite/20_util/scoped_allocator/outermost.cc: New test.
5675 2016-10-05  Jonathan Wakely  <jwakely@redhat.com>
5677         PR libstdc++/70564
5678         * testsuite/20_util/not_fn/1.cc: Fix test.
5679         * testsuite/experimental/functional/not_fn.cc: Likewise.
5681         PR libstdc++/70101
5682         * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
5683         constructors.
5684         * testsuite/23_containers/priority_queue/allocator.cc: New test.
5686         PR libstdc++/77864
5687         * include/bits/stl_map.h (map::map()): Use nothrow constructibility
5688         of comparison function in conditional noexcept.
5689         * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
5690         * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
5691         * include/bits/stl_set.h (set::set()): Likewise.
5692         * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
5693         New test.
5694         * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
5695         Likewise.
5696         * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
5697         Likewise.
5698         * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
5699         Likewise.
5701         * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
5702         alias declaration.
5704         PR libstdc++/70564
5705         * include/experimental/functional (_Not_fn): Remove.
5706         (not_fn): Use std::_Not_fn.
5707         * include/std/functional (_Not_fn): Add second parameter to
5708         disambiguate copying from initialization by not_fn. Define for C++14.
5709         (not_fn): Add second argument to initialization.
5710         * testsuite/20_util/not_fn/1.cc: Copy call wrapper using
5711         direct-initialization.
5713 2016-10-03  François Dumont  <fdumont@gcc.gnu.org>
5715         * src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
5716         declaration...
5717         * src/c++11/mutex_pool.h: ... here. New.
5718         * src/c++11/debug.cc: Use latter.
5720 2016-10-03  Jonathan Wakely  <jwakely@redhat.com>
5722         * doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
5723         * doc/html/*: Regenerate.
5724         * include/experimental/numeric (__abs): Move to <numeric>.
5725         (gcd, lcm): Use __detail::gcd and __detail::lcm.
5726         * include/std/numeric (__detail::__abs_integral)
5727         (__detail::__gcd, __detail::__lcm): Define.
5728         (gcd, lcm): Define for C++17.
5729         * testsuite/26_numerics/gcd/1.cc: New test.
5730         * testsuite/26_numerics/lcm/1.cc: New test.
5731         * testsuite/experimental/numeric/gcd.cc: Swap contents with ...
5732         * testsuite/experimental/numeric/lcd.cc: ... this.
5734         PR libstdc++/68323
5735         PR libstdc++/77794
5736         * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
5737         __cxa_thread_atexit and __gnu_cxx::__freeres.
5738         * include/Makefile.am: Add <experimental/bits/lfts_config.h>
5739         * include/Makefile.in: Regenerate.
5740         * include.bits/basic_string.h: Fix nesting of versioned namespaces.
5741         * include/bits/c++config: Declare versioned namespaces for literals.
5742         * include/bits/regex.h (basic_regex, match_results): Add workarounds
5743         for PR c++/59256.
5744         * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
5745         * include/std/chrono: Likewise.
5746         * include/std/complex: Likewise.
5747         * include/std/string_view: Likewise.
5748         * include/std/variant: Likewise. Add workaround for PR c++/59256.
5749         * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
5750         * include/experimental/bits/lfts_config.h: Declare versioned
5751         namespaces.
5752         * include/experimental/algorithm: Include
5753         <experimental/bits/lfts_config.h>.
5754         * include/experimental/any: Likewise.
5755         * include/experimental/bits/erase_if.h: Likewise.
5756         * include/experimental/chrono: Likewise.
5757         * include/experimental/functional: Likewise.
5758         * include/experimental/memory_resource: Likewise.
5759         * include/experimental/optional: Likewise.
5760         * include/experimental/propagate_const: Likewise.
5761         * include/experimental/random: Likewise.
5762         * include/experimental/ratio: Likewise.
5763         * include/experimental/system_error: Likewise.
5764         * include/experimental/tuple: Likewise.
5765         * include/experimental/type_traits: Likewise.
5766         * include/experimental/utility: Likewise.
5767         * include/experimental/string_view: Likewise. Fix nesting of
5768         versioned namespaces.
5769         * include/experimental/bits/string_view.tcc: Reopen inline namespace
5770         for non-inline function definitions.
5771         * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
5772         * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
5773         * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
5774         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
5775         Likewise.
5776         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
5777         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
5778         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
5779         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
5780         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
5781         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
5783         PR libstdc++/77814
5784         * include/bits/std_abs.h: Use "C++" language linkage.
5785         * testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
5786         the end. Add <stdalign.h>.
5788 2016-10-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
5790         PR libstdc++/77802
5791         * testsuite/20_util/tuple/77802.cc: New.
5793         Revert:
5794         2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5795         Implement LWG 2729 for tuple.
5796         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
5797         Suppress conditionally.
5798         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
5799         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
5800         (_Tuple_impl(const _Head&)): Constrain.
5801         (_Tuple_impl(_UHead&&)): Likewise.
5802         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
5803         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
5804         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
5805         (operator=(const tuple&)): Enable conditionally.
5806         (operator=(tuple&&)): Suppress conditionally.
5807         (operator=(const tuple<_UElements...>&)): Constrain.
5808         (operator=(tuple<_UElements...>&&)): Likewise.
5809         (operator=(const tuple&)): Enable conditionally (2-param tuple).
5810         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
5811         (operator=(const tuple<_U1, _U2>&)): Constrain.
5812         (operator=(tuple<_U1, _U2>&&)): Likewise.
5813         (operator=(const pair<_U1, _U2>&)): Likewise.
5814         (operator=(pair<_U1, _U2>&&)): Likewise.
5815         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
5816         * testsuite/20_util/tuple/tuple_traits.cc: New.
5818 2016-09-30  Jonathan Wakely  <jwakely@redhat.com>
5820         PR libstdc++/77795
5821         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
5822         for gets.
5823         * config.h.in: Regenerate.
5824         * configure: Regenerate.
5825         * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
5826         for C++98 and C++11.
5827         * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
5828         * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
5830         * doc/xml/manual/intro.xml: Document LWG 2192 changes.
5831         * doc/html/*: Regenerate.
5832         * include/Makefile.am: Add bits/std_abs.h.
5833         * include/Makefile.in: Regenerate.
5834         * include/bits/std_abs.h: New header defining all required overloads
5835         of std::abs in one place (LWG 2294).
5836         * include/c_global/cmath (abs(double), abs(float), abs(long double)):
5837         Move to bits/std_abs.h.
5838         (abs<_Tp>(_Tp)): Remove.
5839         * include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
5840         Move to bits/std_abs.h.
5841         * testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
5842         * testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
5843         * testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
5844         * testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
5846         PR libstdc++/77801
5847         * include/experimental/numeric: Include <numeric>.
5848         (__abs): Define.
5849         (gcd, lcm): Use __abs instead of std::abs.
5850         * testsuite/experimental/numeric/77801.cc: New test.
5851         * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
5852         * testsuite/experimental/numeric/lcm.cc: Likewise.
5854 2016-09-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
5856         Make optional::reset noexcept, make optional::value
5857         work in constant expressions.
5858         * include/std/optional (_M_get): Make constexpr.
5859         (reset): Make noexcept.
5860         * testsuite/20_util/optional/assignment/7.cc: New.
5861         * testsuite/20_util/optional/observers/6.cc: New.
5863 2016-09-29  Jonathan Wakely  <jwakely@redhat.com>
5865         * include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
5866         outside _GLIBCXX_USE_C99_MATH_TR1 condition.
5868 2016-09-29  Alan Modra  <amodra@gmail.com>
5870         * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
5871         * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
5872         Use LONG_DOUBLE_COMPAT_FLAGS.
5873         * Makefile.in: Regenerate.
5874         * configure: Regenerate.
5875         * doc/Makefile.in: Regenerate.
5876         * include/Makefile.in: Regenerate.
5877         * libsupc++/Makefile.in: Regenerate.
5878         * po/Makefile.in: Regenerate.
5879         * python/Makefile.in: Regenerate.
5880         * src/Makefile.in: Regenerate.
5881         * src/c++11/Makefile.in: Regenerate.
5882         * src/c++98/Makefile.in: Regenerate.
5883         * src/filesystem/Makefile.in: Regenerate.
5884         * testsuite/Makefile.in: Regenerate.
5886 2016-09-28  Jonathan Wakely  <jwakely@redhat.com>
5888         * include/std/chrono (system_clock): Fix typo in comment.
5890         * include/experimental/bits/fs_fwd.h (file_time_type): Simplify
5891         definition.
5892         * src/filesystem/ops.cc (file_time): Take error_code parameter and
5893         check for overflow.
5894         (do_copy_file, last_write_time): Pass error_code in file_time calls.
5895         * testsuite/experimental/filesystem/operations/last_write_time.cc:
5896         New.
5897         * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
5899         PR libstdc++/77686
5900         * include/std/functional (_Any_data): Add may_alias attribute.
5902 2016-09-27  Jonathan Wakely  <jwakely@redhat.com>
5904         * doc/xml/manual/status_cxx2017.xml: Update status.
5905         * doc/html/*: Regenerate.
5906         * include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
5907         * testsuite/20_util/function_objects/searchers.cc: Test feature macro.
5909         * doc/xml/manual/status_cxx2017.xml: Update status.
5910         * include/c_global/cmath (hypot): Add three-dimensional overloads.
5911         * testsuite/26_numerics/headers/cmath/hypot.cc: New.
5913 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
5915         PR libstdc++/77727
5916         * include/std/optional (optional(const optional<_Up>&)):
5917         Default-initialize the base and use emplace.
5918         (optional(optional<_Up>&&)): Likewise.
5919         * testsuite/20_util/optional/cons/77727.cc: New.
5921 2016-09-26  François Dumont  <fdumont@gcc.gnu.org>
5923         * include/debug/safe_base.h
5924         (_Safe_iterator_base::_M_detach_single): Make public.
5926 2016-09-26  Jonathan Wakely  <jwakely@redhat.com>
5928         * include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
5929         redefine macro defined in <bits/stl_iterator.h>.
5931         * include/bits/stl_map.h (map::extract(const_iterator)): Assert that
5932         iterator is not past-the-end.
5933         * include/bits/stl_multimap.h (multimap::extract(const_iterator)):
5934         Likewise.
5935         * include/bits/stl_multiset.h (multiset::extract(const_iterator)):
5936         Likewise.
5937         * include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
5938         * include/bits/unordered_map.h (unordered_map::extract(const_iterator))
5939         (unordered_multimap::extract(const_iterator)): Likewise.
5940         * include/bits/unordered_set.h (unordered_set::extract(const_iterator))
5941         (unordered_multiset::extract(const_iterator)): Likewise.
5943 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
5945         PR libstdc++/77717
5946         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
5947         Fix an out-of-bounds access.
5949 2016-09-26  Marek Polacek  <polacek@redhat.com>
5951         PR c/7652
5952         * libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
5954 2016-09-25  François Dumont  <fdumont@gcc.gnu.org>
5956         * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
5957         functional.
5958         (get_safe_base_mutex): Get mutex based on address lowest non nil bits.
5959         * testsuite/23_containers/vector/debug/mutex_association.cc: New.
5961         * include/debug/bitset (bitset::reference::reference(const _Base_ref&,
5962         bitset*)): Remove __unused__ attribute.
5963         * include/debug/safe_base.h (_Safe_iterator_base): Make
5964         _Safe_sequence_base a friend.
5965         (_Safe_iterator_base::_M_attach): Make protected.
5966         (_Safe_iterator_base::_M_attach_single): Likewise.
5967         (_Safe_iterator_base::_M_detach): Likewise.
5968         (_Safe_iterator_base::_M_detach_single): Likewise.
5969         (_Safe_sequence_base): Make _Safe_iterator_base a friend.
5970         (_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
5971         (_Safe_sequence_base::_M_swap): Make protected.
5972         (_Safe_sequence_base::_M_attach): Make private.
5973         (_Safe_sequence_base::_M_attach_single): Likewise.
5974         (_Safe_sequence_base::_M_detach): Likewise.
5975         (_Safe_sequence_base::_M_detach_single): Likewise.
5976         * include/debug/safe_container.h
5977         (_Safe_container::_Safe_container(_Safe_container&&)): Make default.
5978         * include/debug/safe_iterator.h
5979         (_Safe_iterator::operator++()): Name __scoped_lock instance.
5980         * include/debug/safe_iterator.tcc: Remove trailing line.
5981         * include/debug/safe_unordered_base.h
5982         (_Safe_local_iterator_base::_M_attach): Make protected.
5983         (_Safe_local_iterator_base::_M_attach_single): Likewise.
5984         (_Safe_local_iterator_base::_M_detach): Likewise.
5985         (_Safe_local_iterator_base::_M_detach_single): Likewise.
5986         (_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
5987         (_Safe_unordered_container_base::_M_attach_local): Make private.
5988         (_Safe_unordered_container_base::_M_attach_local_single): Likewise.
5989         (_Safe_unordered_container_base::_M_detach_local): Likewise.
5990         (_Safe_unordered_container_base::_M_detach_local_single): Likewise.
5992         * include/parallel/algo.h: Generalize usage of std::__iterator_category.
5993         Adjust whitespaces.
5995 2016-09-23  Jonathan Wakely  <jwakely@redhat.com>
5997         PR libstdc++/56166
5998         PR libstdc++/77582
5999         * include/bits/basic_string.h (basic_string::clear()): Drop reference
6000         and use empty rep.
6001         * include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
6002         Likewise.
6003         * testsuite/21_strings/basic_string/56166.cc: New.
6004         * testsuite/ext/vstring/modifiers/clear/56166.cc: New.
6006         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6007         (basic_string::erase(size_type, size_type)): Add fast path for
6008         truncating the string, by calling _M_set_length directly.
6009         (basic_string::erase(__const_iterator, __const_iterator)): Likewise.
6010         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
6011         (basic_string::resize(size_type, _CharT)): Likewise.
6013 2016-09-22  Jason Merrill  <jason@redhat.com>
6015         * configure.ac: Define HAVE_MEMALIGN for newlib.
6017 2015-09-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6019         * config/cpu/m68k/atomicity.h: Adjust comment.
6020         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
6021         explicit atomicity_dir setup via configure.host.
6022         * configure.host (rtems-*): Set atomicity_dir.
6023         * configure: Regenerate.
6025 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
6027         Implement C++17 node extraction and insertion (P0083R5)
6028         * doc/xml/manual/status_cxx2017.xml: Document status.
6029         * doc/html/*: Regenerate.
6030         * include/Makefile.am: Add bits/node_handle.h and reorder.
6031         * include/Makefile.in: Regenerate.
6032         * include/bits/hashtable.h (_Hashtable::node_type)
6033         (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
6034         (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
6035         (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
6036         (_Hash_merge_helper): Define primary template.
6037         * include/bits/node_handle.h: New header.
6038         * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
6039         friend.
6040         (map::node_type, map::insert_return_type, map::extract, map::merge)
6041         (map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
6042         Define new members.
6043         (_Rb_tree_merge_helper): Specialize for map.
6044         * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
6045         as friend.
6046         (multimap::node_type, multimap::extract, multimap::merge)
6047         (multimap::insert(node_type&&))
6048         (multimap::insert(const_iterator, node_type&&)): Define.
6049         (_Rb_tree_merge_helper): Specialize for multimap.
6050         * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
6051         as friend.
6052         (multiset::node_type, multiset::extract, multiset::merge)
6053         (multiset::insert(node_type&&))
6054         (multiset::insert(const_iterator, node_type&&)): Define.
6055         * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
6056         friend.
6057         (set::node_type, set::insert_return_type, set::extract, set::merge)
6058         (set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
6059         Define.
6060         (_Rb_tree_merge_helper): Specialize for set.
6061         * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
6062         (_Rb_tree::node_type, _Rb_tree::insert_return_type)
6063         (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
6064         (_Rb_tree::_M_reinsert_node_hint_unique)
6065         (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
6066         (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
6067         (_Rb_tree_merge_helper): Specialize for multiset.
6068         * include/bits/unordered_map.h (unordered_map): Declare
6069         unordered_map<> and unordered_multimap<> as friends.
6070         (unordered_map::node_type, unordered_map::insert_return_type)
6071         (unordered_map::extract, unordered_map::merge)
6072         (unordered_map::insert(node_type&&))
6073         (unordered_map::insert(const_iterator, node_type&&))
6074         (unordered_multimap): Declare _Hash_merge_helper as friend.
6075         (unordered_multimap::node_type, unordered_multimap::extract)
6076         (unordered_multimap::merge, unordered_multimap::insert(node_type&&))
6077         (unordered_multimap::insert(const_iterator, node_type&&)): Define.
6078         (_Hash_merge_helper): Specialize for unordered maps and multimaps.
6079         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
6080         Declare _Hash_merge_helper as friend.
6081         (unordered_set::node_type, unordered_set::insert_return_type)
6082         (unordered_set::extract, unordered_set::merge)
6083         (unordered_set::insert(node_type&&))
6084         (unordered_set::insert(const_iterator, node_type&&)): Define.
6085         (unordered_multiset::node_type, unordered_multiset::extract)
6086         (unordered_multiset::merge, unordered_multiset::insert(node_type&&))
6087         (unordered_multiset::insert(const_iterator, node_type&&)): Define.
6088         (_Hash_merge_helper): Specialize for unordered sets and multisets.
6089         * include/debug/map.h (map): Add using declarations or forwarding
6090         functions for new members.
6091         * include/debug/map.h (multimap): Likewise.
6092         * include/debug/map.h (multiset): Likewise.
6093         * include/debug/map.h (set): Likewise.
6094         * include/debug/unordered_map (unordered_map, unordered_multimap):
6095         Likewise.
6096         * include/debug/unordered_set( unordered_set, unordered_multiset):
6097         Likewise.
6098         * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
6099         helper function.
6100         (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
6101         (StdNodeHandlePrinter): Define printer for node handles.
6102         (build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
6103         * testsuite/23_containers/map/modifiers/extract.cc: New.
6104         * testsuite/23_containers/map/modifiers/merge.cc: New.
6105         * testsuite/23_containers/multimap/modifiers/extract.cc: New.
6106         * testsuite/23_containers/multimap/modifiers/merge.cc: New.
6107         * testsuite/23_containers/multiset/modifiers/extract.cc: New.
6108         * testsuite/23_containers/multiset/modifiers/merge.cc: New.
6109         * testsuite/23_containers/set/modifiers/extract.cc: New.
6110         * testsuite/23_containers/set/modifiers/merge.cc: New.
6111         * testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
6112         * testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
6113         * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
6114         New.
6115         * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
6116         * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
6117         New.
6118         * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
6119         * testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
6120         * testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
6121         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
6122         dg-error lineno.
6123         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
6125 2016-09-22  Ville Voutilainen  <ville.voutilainen@gmail.com>
6127         Fix tests on old arm platforms for optional.
6128         * testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
6130 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
6132         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
6133         recent change to _Variant_storage.
6134         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
6135         reference type.
6137         * include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
6138         std::forward and ::new. Cast pointer to void*.
6139         * include/std/variant (_Variant_storage, _Union, _Variant_base)
6140         (__access, __visit_invoke, variant, visit): Qualify std::forward.
6141         * testsuite/20_util/variant/compile.cc: Test for ADL problems.
6143 2016-09-22  Tim Shen  <timshen@google.com>
6145         * include/std/variant (variant::operator=): Fix assignment
6146         on references.
6147         * testsuite/20_util/variant/compile.cc: Add test.
6149 2016-09-22  Tim Shen  <timshen@google.com>
6151         PR libstdc++/77641
6152         * include/std/variant (_Variant_storage::_Variant_storage):
6153         Change _Variant_storage's union to be default constructible.
6154         * testsuite/20_util/variant/compile.cc: New test.
6156 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6158         PR libstdc++/77288
6159         * include/std/optional (__is_optional_impl, __is_optional): Remove.
6160         (__converts_from_optional, __assigns_from_optional): New.
6161         (optional(_Up&&)): Use is_same instead of __is_optional.
6162         (optional(const optional<_Up>&)): Constrain with
6163         __converts_from_optional.
6164         (optional(optional<_Up>&&)): Likewise.
6165         (operator=(_Up&&)): Use is_same instead of __is_optional, check
6166         is_same and is_scalar.
6167         (operator=(const optional<_Up>&)): Constrain with
6168         __converts_from_optional and __assigns_from_optional.
6169         (operator=(optional<_Up>&&)): Likewise.
6170         * testsuite/20_util/optional/77288.cc: New.
6171         * testsuite/20_util/optional/cons/value.cc: Adjust.
6173 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6175         Implement LWG 2729 for tuple.
6176         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
6177         Suppress conditionally.
6178         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
6179         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
6180         (_Tuple_impl(const _Head&)): Constrain.
6181         (_Tuple_impl(_UHead&&)): Likewise.
6182         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
6183         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
6184         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
6185         (operator=(const tuple&)): Enable conditionally.
6186         (operator=(tuple&&)): Suppress conditionally.
6187         (operator=(const tuple<_UElements...>&)): Constrain.
6188         (operator=(tuple<_UElements...>&&)): Likewise.
6189         (operator=(const tuple&)): Enable conditionally (2-param tuple).
6190         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
6191         (operator=(const tuple<_U1, _U2>&)): Constrain.
6192         (operator=(tuple<_U1, _U2>&&)): Likewise.
6193         (operator=(const pair<_U1, _U2>&)): Likewise.
6194         (operator=(pair<_U1, _U2>&&)): Likewise.
6195         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
6196         * testsuite/20_util/tuple/tuple_traits.cc: New.
6198 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
6200         PR libstdc++/77537
6201         Implement LWG 2729 for pair.
6202         * include/bits/stl_pair.h (_PCC): New.
6203         (_ConstructiblePair, _ImplicitlyConvertiblePair):
6204         Turn into static member functions of _PCC.
6205         (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
6206         (_PCCP): New.
6207         (pair(const _T1&, const _T2&)): Adjust.
6208         (_PCCFP): New.
6209         (pair(const pair<_U1, _U2>&)): Adjust.
6210         (pair(_U1&&, const _T2&)): Likewise.
6211         (pair(const _T1&, _U2&&)): Likewise.
6212         (pair(_U1&&, _U2&&)): Likewise.
6213         (pair(pair<_U1, _U2>&&)): Likewise.
6214         (operator=(const pair&)): Make conditionally deleted.
6215         (operator=(pair&&)): Make conditionally suppressed.
6216         (operator=(const pair<_U1, _U2>&)): Constrain.
6217         (operator=(pair<_U1, _U2>&&): Likewise.
6218         * include/std/type_traits (__nonesuch): New.
6219         * testsuite/20_util/pair/traits.cc: New.
6221 2016-09-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
6223         PR libstdc++/77619
6224         * include/bits/stl_construct.h: (_Construct_novalue): New.
6225         (_Destroy_n_aux, _Destroy_n): New.
6226         * include/bits/stl_uninitialized.h: (type_traits):
6227         New include in C++11 mode.
6228         (__uninitialized_default_novalue_1): New.
6229         (__uninitialized_default_novalue_n_1): Likewise.
6230         (__uninitialized_default_novalue): Likewise.
6231         (__uninitialized_default_novalue_n): Likewise.
6232         (__uninitialized_copy_n_pair): Likewise.
6233         (uninitialized_default_construct):
6234         Use __uninitialized_default_novalue.
6235         (uninitialized_default_construct_n):
6236         Use __uninitialized_default_novalue_n.
6237         (uninitialized_value_construct): Use __uninitialized_default.
6238         (uninitialized_value_construct_n): Use __uninitialized_default_n.
6239         (uninitialized_move): Use uninitialized_copy.
6240         (uninitialized_move_n): Use __uninitialized_copy_n_pair.
6241         (destroy_at): Use _Destroy.
6242         (destroy): Likewise.
6243         (destroy_n): Likewise.
6244         * testsuite/20_util/specialized_algorithms/
6245         memory_management_tools/1.cc: Add tests for exceptions,
6246         add tests for trivial cases for construct and move.
6248 2016-09-20  Jonathan Wakely  <jwakely@redhat.com>
6250         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6251         (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
6253 2016-09-19  Jonathan Wakely  <jwakely@redhat.com>
6255         PR libstdc++/77645
6256         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6257         (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
6258         division to int to work with Python 3.
6260         * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
6262         * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
6263         display_hint to be set by subclasses.
6264         (StdVariantPrinter): Use array for display_hint. Adjust output to be
6265         more similar to std::any and std::optional output.
6266         (register_type_printers): Add type printers for basic_string_view
6267         typedefs and experimental::any. Adjust type printers for
6268         fundamentals_v1 templates to match fundamentals_v2 and later.
6269         * testsuite/libstdc++-prettyprinters/cxx17.cc: New.
6271         PR libstdc++/77645
6272         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
6273         argument.
6274         (ListWorkerBase.get_value_from_node): Define new method.
6275         (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
6277 2016-09-17  Jonathan Wakely  <jwakely@redhat.com>
6279         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
6280         (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
6281         Register for C++17 components in namespace std. Strip inline namespace
6282         from typename.
6284 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6286         * doc/xml/manual/profile_mode.xml: Fix typo.
6287         * doc/html/manual/profile_mode_devel.html: Regenerate.
6289 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6290             Marc Glisse  <marc.glisse@inria.fr>
6292         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
6293         (operator new(size_t, align_val_t)): Replace modulus operator with
6294         mask.
6296 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
6298         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
6299         Increase alignment if less than sizeof(void*).
6300         [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
6301         Increase size if not a multiple of alignment.
6303 2016-09-15  Jonathan Wakely  <jwakely@redhat.com>
6305         * doc/xml/manual/debug_mode.xml: Minor editorial fixes.
6306         * doc/html/*: Regenerate.
6308         * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
6309         -Wno-deprecated.
6310         * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
6312 2016-09-14  Marek Polacek  <polacek@redhat.com>
6314         * testsuite/23_containers/vector/debug/insert6_neg.cc: Use
6315         -Wno-deprecated.
6317 2016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>
6319         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
6320         Move dg-do directive before dg-skip.
6321         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
6322         Move dg-do directive before dg-require.
6323         * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
6324         * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
6325         * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
6326         * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
6327         * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
6328         * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
6329         * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
6330         * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
6331         * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
6332         * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
6333         * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
6334         * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
6335         * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
6336         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
6337         * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
6338         Likewise.
6339         * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
6340         * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
6341         * testsuite/27_io/objects/char/12048-5.cc: Likewise.
6342         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
6343         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
6345 2016-09-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
6347         Implement P0040R3, Extending memory management tools.
6348         * include/bits/stl_uninitialized.h (utility): New include
6349         in C++17 mode.
6350         (uninitialized_default_construct): New.
6351         (uninitialized_default_construct_n): Likewise.
6352         (uninitialized_value_construct): Likewise.
6353         (uninitialized_value_construct_n): Likewise.
6354         (uninitialized_move): Likewise.
6355         (uninitialized_move_n): Likewise.
6356         (destroy_at, destroy, destroy_n): Likewise.
6357         * testsuite/20_util/specialized_algorithms/memory_management_tools/
6358         1.cc: New.
6360 2016-09-12  Jason Merrill  <jason@redhat.com>
6362         * config/abi/pre/gnu.ver: Use [jmy] for size_t.
6364 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
6366         Implement P0253R1, Fixing a design mistake in the searchers
6367         interface in Library Fundamentals.
6368         * include/std/functional: (utility): New include in C++17 mode.
6369         (default_searcher): Use a pair as return type, adjust the definition.
6370         (boyer_moore_searcher): Likewise.
6371         (boyer_moore_horspool_searcher): Likewise.
6372         * testsuite/20_util/function_objects/searchers.cc: Adjust.
6374 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
6376         Implement C++17 string searchers.
6377         * include/std/functional: (unordered_map, vector): New includes
6378         in C++17 mode.
6379         (array, bits/stl_algo.h): Likewise.
6380         (default_searcher, __boyer_moore_map_base): New.
6381         (__boyer_moore_array_base, __is_std_equal_to): Likewise.
6382         (__boyer_moore_base_t, boyer_moore_searcher): Likewise.
6383         (boyer_moore_horspool_searcher, make_default_searcher): Likewise.
6384         (make_boyer_moore_searcher): Likewise.
6385         (make_boyer_moore_horspool_searcher): Likewise.
6386         * testsuite/20_util/function_objects/searchers.cc: New.
6388 2016-09-12  Matthew Wahab  <matthew.wahab@arm.com>
6390         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
6391         Move dg-do directive before dg-require.
6392         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
6393         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
6394         Likewise.
6395         * testsuite/22_locale/codecvt/utf8.cc: Likewise.
6396         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
6397         * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
6398         * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
6399         * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
6400         * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
6401         * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
6402         * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
6403         * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
6404         * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
6405         * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
6406         * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
6407         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
6408         Likewise.
6409         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
6410         Likewise.
6411         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
6412         * testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
6413         * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
6414         Likewise.
6415         * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
6416         Likewise.
6417         * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
6418         Likewise.
6419         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
6420         Likewise.
6421         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
6422         Likewise.
6423         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
6424         Likewise.
6425         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
6426         Likewise.
6427         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
6428         Likewise.
6429         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
6430         Likewise.
6431         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
6432         Likewise.
6433         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
6434         Likewise.
6435         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
6436         Likewise.
6437         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
6438         Likewise.
6439         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
6440         Likewise.
6441         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
6442         Likewise.
6443         * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
6444         Likewise.
6445         * testsuite/23_containers/forward_list/debug/
6446         iterator_self_move_assign_neg.cc: Likewise.
6447         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
6448         Likewise.
6449         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
6450         Likewise.
6451         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
6452         Likewise.
6453         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
6454         Likewise.
6455         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
6456         Likewise.
6457         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
6458         Likewise.
6459         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
6460         Likewise.
6461         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
6462         Likewise.
6463         * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
6464         * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
6465         * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
6466         * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
6467         * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
6468         * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
6469         * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
6470         * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
6471         * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
6472         * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
6473         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
6474         Likewise.
6475         * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
6476         * testsuite/23_containers/map/debug/60499.cc: Likewise.
6477         * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
6478         * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
6479         * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
6480         * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
6481         * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
6482         * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
6483         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
6484         Likewise.
6485         * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
6486         * testsuite/23_containers/multimap/debug/60499.cc: Likewise.
6487         * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
6488         * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
6489         * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
6490         * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
6491         * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
6492         * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
6493         * testsuite/23_containers/multimap/debug/
6494         iterator_self_move_assign_neg.cc: Likewise.
6495         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
6496         Likewise.
6497         * testsuite/23_containers/multiset/debug/60499.cc: Likewise.
6498         * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
6499         * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
6500         * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
6501         * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
6502         * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
6503         * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
6504         * testsuite/23_containers/multiset/debug/
6505         iterator_self_move_assign_neg.cc: Likewise.
6506         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
6507         Likewise.
6508         * testsuite/23_containers/set/debug/60499.cc: Likewise.
6509         * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
6510         * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
6511         * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
6512         * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
6513         * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
6514         * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
6515         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
6516         Likewise.
6517         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
6518         * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
6519         * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
6520         * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
6521         * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
6522         Likewise.
6523         * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
6524         * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
6525         * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
6526         Likewise.
6527         * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
6528         Likewise.
6529         * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
6530         Likewise.
6531         * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
6532         * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
6533         * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
6534         * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
6535         * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
6536         * testsuite/23_containers/unordered_map/debug/
6537         invalid_local_iterator_compare_neg.cc: Likewise.
6538         * testsuite/23_containers/unordered_map/debug/
6539         invalid_local_iterator_range_neg.cc: Likewise.
6540         * testsuite/23_containers/unordered_map/debug/
6541         iterator_self_move_assign_neg.cc: Likewise.
6542         * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
6543         Likewise.
6544         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
6545         Likewise.
6546         * testsuite/23_containers/unordered_map/debug/
6547         use_erased_local_iterator_neg.cc: Likewise.
6548         * testsuite/23_containers/unordered_map/debug/
6549         use_invalid_iterator_neg.cc: Likewise.
6550         * testsuite/23_containers/unordered_map/debug/
6551         use_invalid_local_iterator_neg.cc: Likewise.
6552         * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
6553         * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
6554         Likewise.
6555         * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
6556         Likewise.
6557         * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
6558         Likewise.
6559         * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
6560         Likewise.
6561         * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
6562         Likewise.
6563         * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
6564         Likewise.
6565         * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
6566         Likewise.
6567         * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
6568         Likewise.
6569         * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
6570         Likewise.
6571         * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
6572         Likewise.
6573         * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
6574         Likewise.
6575         * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
6576         Likewise.
6577         * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
6578         Likewise.
6579         * testsuite/23_containers/unordered_multimap/debug/
6580         invalid_local_iterator_compare_neg.cc: Likewise.
6581         * testsuite/23_containers/unordered_multimap/debug/
6582         invalid_local_iterator_range_neg.cc: Likewise.
6583         * testsuite/23_containers/unordered_multimap/debug/
6584         iterator_self_move_assign_neg.cc: Likewise.
6585         * testsuite/23_containers/unordered_multimap/debug/
6586         max_load_factor_neg.cc: Likewise.
6587         * testsuite/23_containers/unordered_multimap/debug/
6588         self_move_assign_neg.cc: Likewise.
6589         * testsuite/23_containers/unordered_multimap/debug/
6590         use_erased_local_iterator_neg.cc: Likewise.
6591         * testsuite/23_containers/unordered_multimap/debug/
6592         use_invalid_iterator_neg.cc: Likewise.
6593         * testsuite/23_containers/unordered_multimap/debug/
6594         use_invalid_local_iterator_neg.cc: Likewise.
6595         * testsuite/23_containers/unordered_multiset/debug/60499.cc:
6596         Likewise.
6597         * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
6598         Likewise.
6599         * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
6600         Likewise.
6601         * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
6602         Likewise.
6603         * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
6604         Likewise.
6605         * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
6606         Likewise.
6607         * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
6608         Likewise.
6609         * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
6610         Likewise.
6611         * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
6612         Likewise.
6613         * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
6614         Likewise.
6615         * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
6616         Likewise.
6617         * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
6618         Likewise.
6619         * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
6620         Likewise.
6621         * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
6622         Likewise.
6623         * testsuite/23_containers/unordered_multiset/debug/
6624         invalid_local_iterator_compare_neg.cc: Likewise.
6625         * testsuite/23_containers/unordered_multiset/debug/
6626         invalid_local_iterator_range_neg.cc: Likewise.
6627         * testsuite/23_containers/unordered_multiset/debug/
6628         iterator_self_move_assign_neg.cc: Likewise.
6629         * testsuite/23_containers/unordered_multiset/debug/
6630         max_load_factor_neg.cc: Likewise.
6631         * testsuite/23_containers/unordered_multiset/debug/
6632         self_move_assign_neg.cc: Likewise.
6633         * testsuite/23_containers/unordered_multiset/debug/
6634         use_erased_local_iterator_neg.cc: Likewise.
6635         * testsuite/23_containers/unordered_multiset/debug/
6636         use_invalid_iterator_neg.cc: Likewise.
6637         * testsuite/23_containers/unordered_multiset/debug/
6638         use_invalid_local_iterator_neg.cc: Likewise.
6639         *  testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
6640         * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
6641         * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
6642         * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
6643         Likewise.
6644         * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
6645         * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
6646         * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
6647         Likewise.
6648         * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
6649         Likewise.
6650         * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
6651         Likewise.
6652         * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
6653         * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
6654         * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
6655         * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
6656         * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
6657         * testsuite/23_containers/unordered_set/debug/
6658         invalid_local_iterator_compare_neg.cc: Likewise.
6659         * testsuite/23_containers/unordered_set/debug/
6660         invalid_local_iterator_range_neg.cc: Likewise.
6661         * testsuite/23_containers/unordered_set/debug/
6662         iterator_self_move_assign_neg.cc: Likewise.
6663         * testsuite/23_containers/unordered_set/debug/
6664         max_load_factor_neg.cc: Likewise.
6665         * testsuite/23_containers/unordered_set/debug/
6666         self_move_assign_neg.cc: Likewise.
6667         * testsuite/23_containers/unordered_set/debug/
6668         use_erased_local_iterator_neg.cc: Likewise.
6669         * testsuite/23_containers/unordered_set/debug/
6670         use_invalid_iterator_neg.cc: Likewise.
6671         * testsuite/23_containers/unordered_set/debug/
6672         use_invalid_local_iterator_neg.cc: Likewise.
6673         * testsuite/23_containers/vector/debug/52433.cc: Likewise.
6674         * testsuite/23_containers/vector/debug/60499.cc: Likewise.
6675         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
6676         * testsuite/23_containers/vector/debug/
6677         iterator_self_move_assign_neg.cc: Likewise.
6678         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
6679         Likewise.
6680         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
6681         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
6682         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
6683         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
6684         * testsuite/29_atomics/atomic/60658.cc: Likewise.
6685         * testsuite/29_atomics/atomic/60695.cc: Likewise.
6686         * testsuite/29_atomics/atomic/62259.cc: Likewise.
6687         * testsuite/29_atomics/atomic/64658.cc: Likewise.
6688         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
6689         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
6690         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
6691         Likewise.
6693 2016-09-11  Jonathan Wakely  <jwakely@redhat.com>
6695         * libsupc++/new_opant.cc: Include exception_defines.h.
6696         * libsupc++/new_opvant.cc: Likewise.
6698 2016-09-09  Jason Merrill  <jason@redhat.com>
6700         Implement P0035R4, C++17 new of over-aligned types.
6701         * libsupc++/new: Declare aligned new/delete operators.
6702         * config/abi/pre/gnu.ver: Export them.
6703         * configure.ac: Check for aligned_alloc, posix_memalign, memalign,
6704         _aligned_malloc.
6705         * libsupc++/new_opa.cc: New.
6706         * libsupc++/new_opant.cc: New.
6707         * libsupc++/new_opva.cc: New.
6708         * libsupc++/new_opva.cc: New.
6709         * libsupc++/del_opa.cc: New.
6710         * libsupc++/del_opant.cc: New.
6711         * libsupc++/del_opsa.cc: New.
6712         * libsupc++/del_opva.cc: New.
6713         * libsupc++/del_opvant.cc: New.
6714         * libsupc++/del_opvsa.cc: New.
6715         * libsupc++/Makefile.am: Build them.
6717 2016-09-05  Tim Shen  <timshen@google.com>
6719         * include/std/variant: include bits/move.h for std::addressof.
6721 2016-09-05  Mikhail Strelnikov  <mikhail.strelnikov@gmail.com>
6723         * include/std/variant (_Variant_storage::_M_storage()): Use
6724         std::addressof instead of operator& to take address.
6726 2016-09-02  Maxim Kuvyrkov  <maxim.kuvyrkov@linaro.org>
6728         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
6729         setrlimit on both native and cross targets.
6730         * configure: Regenerate.
6732 2016-08-31  Jonathan Wakely  <jwakely@redhat.com>
6734         * include/bits/shared_ptr.h (_Assignable): New alias template.
6735         (shared_ptr::operator=(const shared_ptr<_Tp1>&))
6736         (shared_ptr::operator=(shared_ptr<_Tp1>&&))
6737         (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6738         _Assignable.
6739         * include/bits/shared_ptr_base.h (_Assignable): New alias template.
6740         (__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
6741         (__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
6742         (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6743         _Assignable.
6744         (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
6745         (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
6746         _Convertible.
6747         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
6748         match on any line.
6749         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6750         * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
6751         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
6752         expected errors. Remove unnecessary code.
6753         * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
6755         * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
6756         comparison object.
6757         * testsuite/23_containers/set/move_comparison.cc: New test.
6759         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
6760         New test.
6762 2016-08-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
6764         PR libstdc++/77395
6765         * include/std/type_traits (is_constructible): Forward-declare...
6766         (__is_base_to_derived_ref): ...and use here.
6767         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
6768         * testsuite/20_util/is_constructible/77395.cc: New.
6769         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
6770         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6771         Likewise.
6772         * testsuite/20_util/tuple/77395.cc: New.
6774 2016-08-30  Uros Bizjak  <ubizjak@gmail.com>
6776         * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
6777         directive above dg-require-namedlocale directive.
6778         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
6779         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
6780         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
6781         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
6782         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
6784 2016-08-27  Tim Shen  <timshen@google.com>
6786         PR libstdc++/77356
6787         * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
6788         _M_expression_term): Modify to support dash literal.
6789         * include/bits/regex_scanner.h: Add dash as a token type to make
6790         a different from the mandated dash literal by escaping.
6791         * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
6792         token in bracket expression parsing.
6793         * testsuite/28_regex/regression.cc: Add new testcases.
6795 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6797         PR libstdc++/51960
6798         * doc/xml/manual/intro.xml: Document DR 2127 change.
6799         * doc/html/*: Regenerate.
6800         * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
6801         (operator++(), operator++(int)): Use injected class name.
6802         * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
6804         * testsuite/*: Use { target c++11 } or { target c++14 } instead of
6805         using -std in dg-options.
6807 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6808             Pedro Alves  <palves@redhat.com>
6810         * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
6811         and restore dg-interpreter-batch-mode.
6812         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
6813         gdb-dg-runtest instead of dg-runtest.
6814         * testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
6816 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
6818         * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
6819         precise patterns for basic_string constructors.
6820         (GLIBCXX_3.4.23): Export new constructors.
6821         * doc/xml/manual/intro.xml: Document LWG 2583 status.
6822         * doc/html/*: Regenerate.
6823         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6824         (basic_string(const basic_string&, size_type, const Alloc&)): Add
6825         new constructor for LWG 2583.
6826         (basic_string(const basic_string&, size_type, size_type)): Remove
6827         default argument.
6828         [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
6829         * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
6830         * testsuite/21_strings/basic_string/cons/char/8.cc: New test.
6831         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
6833 2016-08-24  Aditya Kumar  <hiraditya@msn.com>
6835         * include/bits/algorithmfwd.h: Remove trailing whitespace.
6836         * include/bits/shared_ptr_base.h: Likewise.
6838 2016-08-23  Jonathan Wakely  <jwakely@redhat.com>
6840         * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
6841         * include/profile/array (array): Likewise.
6842         (array::swap): Fix exception specification for zero-sized arrays.
6844         PR libstdc++/77334
6845         * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
6846         (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
6847         * testsuite/23_containers/map/77334.cc: New test.
6849         * doc/xml/manual/using.xml: Remove reference to -pthreads option.
6850         * doc/html/*: Regenerate.
6852         * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
6853         * testsuite/experimental/feat-lib-fund.cc: Likewise.
6855         PR libstdc++/71771
6856         * include/bits/stl_iterator.h
6857         (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
6858         define for C++98 mode.
6859         (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
6860         * testsuite/24_iterators/headers/iterator/synopsis.cc: Use
6861         -std=gnu++98.
6862         * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
6863         * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
6864         * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
6865         * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
6866         difference operator.
6867         * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
6868         difference operator for C++98.
6869         * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
6871         * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
6872         * include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
6873         (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
6874         * include/bits/stl_iterator.h (reverse_iterator, move_iterator)
6875         (__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
6876         Likewise.
6877         * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
6878         _GLIBCXX14_CONSTEXPR.
6879         (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
6880         * include/std/array (array::begin, array::end, array::rbegin)
6881         (array::rend, array::cbegin, array:cend, array::crbegin)
6882         (array::crend, array::operator[], array::at, array::front)
6883         (array::back, array::data): Likewise.
6884         * testsuite/24_iterators/headers/iterator/range_access.cc: Replace
6885         with separate tests for C++11, C++14, and C++17.
6886         * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
6887         * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
6888         * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
6890 2016-08-22  Tim Shen  <timshen@google.com>
6892         Split _M_dfs() into smaller functions.
6893         * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
6894         (_M_handle_subexpr_end, _M_handle_line_begin_assertion)
6895         (_M_handle_line_end_assertion, _M_handle_word_boundary)
6896         (_M_handle_subexpr_lookahead, _M_handle_match)
6897         (_M_handle_backref, _M_handle_accept, _M_handle_alternative):
6898         Add separate function declarations.
6899         * regex_executor.tcc: Split _M_dfs() into multiple handler functions.
6901 2016-08-22  Gleb Natapov  <gleb@scylladb.com>
6903         PR libstdc++/68297
6904         * config/abi/pre/gnu-versioned-namespace.ver: Export
6905         __cxa_init_primary_exception and std::exception_ptr(void*).
6906         * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
6907         export __cxa_init_primary_exception and std::exception_ptr(void*).
6908         * include/Makefile.am: Add new headers.
6909         * include/Makefile.in: Regenerate.
6910         * libsupc++/Makefile.am: Add new headers.
6911         * libsupc++/Makefile.in: Regenerate.
6912         * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
6913         * libsupc++/cxxabi_init_exception.h: New header.
6914         (__cxa_init_primary_exception): Declare.
6915         * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
6916         (__cxa_throw): Use __cxa_init_primary_exception.
6917         * libsupc++/exception (std::exception): Move to ...
6918         * libsupc++/exception.h: New header.
6919         * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
6920         friend declaration.
6921         (__exception_ptr::__dest_thunk): New function template.
6922         (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
6923         Use __cxa_allocate_exception and __cxa_init_primary_exception to
6924         create exception_ptr.
6925         * libsupc++/typeinfo: Include bits/exception.h instead of exception.
6926         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
6928 2016-08-22  Jonathan Wakely  <jwakely@redhat.com>
6930         * doc/xml/api.xml: Replace hardcoded links for specific versions with
6931         link to docs for all releases.
6932         * doc/html/*: Regenerate.
6934         PR libstdc++/77322
6935         * doc/xml/manual/intro.xml: Document DR 2062 change.
6936         * include/std/functional (function::swap): Add noexcept.
6937         (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
6938         * testsuite/20_util/function/77322.cc: New test.
6940 2016-08-19  Jonathan Wakely  <jwakely@redhat.com>
6942         * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
6943         *-*-solaris* instead of -pthreads.
6944         * testsuite/21_strings/basic_string/pthread4.cc : Likewise.
6945         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
6946         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
6947         * testsuite/23_containers/list/pthread1.cc: Likewise.
6948         * testsuite/23_containers/list/pthread5.cc: Likewise.
6949         * testsuite/23_containers/map/pthread6.cc: Likewise.
6950         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
6951         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
6952         * testsuite/30_threads/shared_mutex/*: Likewise.
6953         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
6954         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6955         default_weaktoshared.cc: Likewise.
6956         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6957         mutex_weaktoshared.cc: Likewise.
6958         * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
6959         dg-require-effective-target instead of using -std option.
6960         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
6961         Likewise.
6962         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
6963         * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
6964         Likewise.
6965         * testsuite/30_threads/async/*: Likewise.
6966         * testsuite/30_threads/call_once/*: Likewise.
6967         * testsuite/30_threads/condition_variable/*: Likewise.
6968         * testsuite/30_threads/condition_variable_any/*: Likewise.
6969         * testsuite/30_threads/future/*: Likewise.
6970         * testsuite/30_threads/lock/*: Likewise.
6971         * testsuite/30_threads/mutex/*: Likewise.
6972         * testsuite/30_threads/packaged_task/*: Likewise.
6973         * testsuite/30_threads/promise/*: Likewise.
6974         * testsuite/30_threads/recursive_mutex/*: Likewise.
6975         * testsuite/30_threads/recursive_timed_mutex/*: Likewise.
6976         * testsuite/30_threads/shared_future/*: Likewise.
6977         * testsuite/30_threads/shared_lock/*: Likewise.
6978         * testsuite/30_threads/shared_timed_mutex/*: Likewise.
6979         * testsuite/30_threads/this_thread/*: Likewise.
6980         * testsuite/30_threads/thread/*: Likewise.
6981         * testsuite/30_threads/timed_mutex/*: Likewise.
6982         * testsuite/30_threads/try_lock/*: Likewise.
6983         * testsuite/30_threads/unique_lock/*: Likewise.
6985         * doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
6986         * doc/html/*: Regenerate.
6987         * include/experimental/functional (_Not_fn, not_fn): Match C++17
6988         semantics.
6989         * include/std/functional (_Not_fn, not_fn): Define for C++17.
6990         * testsuite/20_util/not_fn/1.cc: New.
6991         * testsuite/experimental/functional/not_fn.cc: Test abstract class.
6992         Remove test for volatile-qualified wrapper.
6994         * include/std/atomic (atomic::is_always_lock_free): Define.
6995         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
6996         * testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
6997         * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
6998         * doc/xml/manual/status_cxx2017.xml: Update status.
6999         * doc/html/*: Regenerate.
7001         * include/experimental/tuple (apply): Qualify call to __apply_impl.
7002         * include/std/tuple (apply): Likewise.
7003         * testsuite/experimental/system_error/value.cc: Fix ambiguities in
7004         C++17 mode.
7005         * testsuite/experimental/tuple/tuple_size.cc: Likewise.
7006         * testsuite/experimental/type_traits/value.cc: Likewise.
7008         * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
7009         and variant.
7010         * doc/html/*: Regenerate.
7012 2016-08-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
7014         Implement the latest proposed resolution of LWG 2756.
7015         * include/std/optional (Optional_base(const _Tp&))
7016         (Optional_base(_Tp&&), using _Base::_Base): Remove.
7017         (optional(nullopt_t)): New.
7018         (optional(_Up&&)): Invoke base directly with in_place
7019         rather than creating a temporary, add default template
7020         argument, change constraints.
7021         (optional(const optional<_Up>&)): Invoke base directly
7022         with in_place, remove unnecessary constraints.
7023         (optional(optional<_Up>&& __t)): Likewise.
7024         (optional(in_place_t, _Args&&...)): New.
7025         (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
7026         (operator=(_Up&&)): Add default template argument, change constraints.
7027         (operator=(const optional<_Up>&)): Put is_same first in the
7028         constraints.
7029         (operator=(optional<_Up>&&)): Likewise.
7030         * testsuite/20_util/optional/assignment/5.cc: Add a test to
7031         verify assignment from something that can't be perfect-forwarded.
7032         * testsuite/20_util/optional/cons/value.cc: Add tests to verify
7033         that a nested optional is disengaged when constructed
7034         from a disengaged element type, and to verify that assignments
7035         from an engaged element type engage the optional.
7037 2016-08-18  Tim Shen  <timshen@google.com>
7039         Implement <variant>
7041         * include/Makefile.am: Add new file std/variant.
7042         * include/Makefile.in: Generated from Makefile.am.
7043         * include/bits/enable_special_members.h: Add a tag type to allow
7044         the construction in non-default constructor.
7045         * include/bits/uses_allocator.h: Add convenience traits to
7046         detect constructibility.
7047         * include/std/variant: Implement <variant>.
7048         * testsuite/20_util/variant/compile.cc: Compile-time tests.
7049         * testsuite/20_util/variant/run.cc: Runtime tests.
7051 2016-08-18  Jonathan Wakely  <jwakely@redhat.com>
7053         * doc/xml/manual/test.xml (test.run.permutations): Expand section.
7054         (test.new_tests): Rewrite section.
7055         (tests.dg.directives): New section.
7056         * doc/html/*: Regenerate.
7058         * doc/xml/manual/test.xml: Improve documentation of test targets.
7059         Document new-abi-baseline, check-debug, and check-parallel targets.
7061         * doc/xml/manual/build_hacking.xml: New section on shared library
7062         versioning.
7064         * doc/xml/manual/build_hacking.xml: Improve markup.
7065         * doc/xml/manual/test.xml: Likewise. Change section title from "Test"
7066         to "Testing".
7067         * doc/xml/faq.xml: Change link text to "Testing".
7069         * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
7070         dg-options directive.
7072 2016-08-17  Jonathan Wakely  <jwakely@redhat.com>
7074         * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
7075         directive and use effective target instead of dg-options.
7077         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
7078         instead of -std in dg-options.
7079         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
7080         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
7081         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
7082         * testsuite/20_util/hash/quality.cc: Likewise.
7083         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
7084         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
7085         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
7086         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
7087         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
7088         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
7090         * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
7091         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
7092         * testsuite/27_io/rvalue_streams.cc: Likewise.
7094         * testsuite/26_numerics/complex/literals/types.cc: Add comment.
7096         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
7097         Remove duplicate dg-options directive.
7099         * testsuite/ext/profile/all.cc: Use effective target instead of
7100         -std=gnu++11. Use dg-additional-options instead of repeating options.
7102         * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
7103         -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
7104         instead of dg-excess-errors.
7106         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
7107         test for C++17.
7108         * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
7109         * testsuite/experimental/ratio/value.cc: Likewise.
7110         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
7111         C++17.
7112         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
7113         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
7114         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
7115         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
7116         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
7117         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
7118         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
7119         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
7120         * testsuite/tr1/5_numerical_facilities/special_functions/
7121         10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
7122         C++17 compatibility.
7124         * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
7125         expected signatures for C++14 compatibility.
7127         PR libstdc++/77264
7128         * include/bits/basic_string.h (operator=(__sv_type)
7129         (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
7130         (replace(size_type, size_type, __sv_type))
7131         (replace(const_iterator, const_iterator, __sv_type))
7132         (find(__sv_type, size_type), rfind(__sv_type, size_type))
7133         (compare(size_type, size_type, __sv_type)): Reformat.
7134         (_If_sv): Define helper for SFINAE constaints.
7135         (append(const _Tp&, size_type, size_type))
7136         (assign(const _Tp&, size_type, size_type))
7137         (insert(size_type, const _Tp&, size_type, size_type))
7138         (replace(size_type, size_type, const _Tp&, size_type, size_type)):
7139         Use _If_sv.
7140         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
7141         SFINAE constraints.
7142         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
7143         Likewise.
7144         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7145         Likewise.
7146         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
7147         Likewise.
7148         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
7149         Likewise.
7150         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
7151         Likewise.
7152         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
7153         Likewise.
7154         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
7155         Likewise.
7156         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7157         Likewise.
7158         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
7159         Likewise.
7160         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
7161         Likewise.
7163 2016-08-16  Jonathan Wakely  <jwakely@redhat.com>
7165         PR libstdc++/72847
7166         * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
7167         pointers to start and end of storage.
7168         * testsuite/23_containers/vector/bool/72847.cc: New test.
7169         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
7170         _M_finish after deallocating.
7171         (vector<bool>::_M_fill_insert): Likewise.
7172         (vector<bool>::_M_insert_range): Likewise.
7173         (vector<bool>::_M_insert_aux): Likewise.
7175 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
7177         Implement LWG 2744 and LWG 2754.
7178         * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
7179         (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
7180         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
7181         Likewise.
7182         (emplace(_Args&&...)): Likewise.
7183         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
7184         * include/std/utility: (__is_in_place_type_impl): New.
7185         (__is_in_place_type): Likewise.
7186         * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
7187         emplace.
7188         * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
7189         in_place constructor.
7190         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
7191         * testsuite/20_util/any/requirements.cc: Add a test for
7192         in_place-constructing a non-default-constructible type.
7194 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
7196         Add a feature macro for C++17 make_from_tuple.
7197         * include/std/tuple (__cpp_lib_make_from_tuple): New.
7198         (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
7199         Qualify the call to get<>().
7200         * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
7202 2016-08-15  Uros Bizjak  <ubizjak@gmail.com>
7204         * src/filesystem/ops.cc: Always include ostream and
7205         ext/stdio_filebuf.h.
7206         (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
7207         [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
7208         sendfile fails with ENOSYS or EINVAL.
7210 2016-08-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
7212         PR libstdc++/72840
7213         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
7214         syntax.
7216 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
7218         Implement C++17 make_from_tuple.
7219         * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
7220         * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
7222 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
7224         Implement LWG 2758.
7225         * include/bits/basic_string.h
7226         (append(__sv_type, size_type, size_type)): Turn into a template,
7227         change parameter type, constrain, add a conversion to __sv_type
7228         from the dependent parameter type.
7229         (assign(__sv_type, size_type, size_type)): Likewise.
7230         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
7231         (replace(size_type, size_type, __sv_type, size_type, size_type)):
7232         Likewise.
7233         (compare(size_type, size_type,__sv_type, size_type, size_type)):
7234         Likewise.
7235         * testsuite/21_strings/basic_string/lwg2758.cc: New.
7237 2016-08-06  Jonathan Wakely  <jwakely@redhat.com>
7239         * doc/xml/manual/status_cxx2017.xml: Update status table.
7240         * doc/html/manual/status.html: Regenerate.
7242         * testsuite/lib/libstdc++.exp: Fix typo in comment.
7244         PR libstdc++/72820
7245         * include/std/functional (_Function_base::_Base_manager::_M_clone):
7246         Qualify new operator.
7247         * testsuite/20_util/function/cons/72820.cc: New test.
7249         * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
7250         * doc/html/manual/status.html: Regenerate.
7251         * include/Makefile.am: Add new header.
7252         * include/Makefile.in: Regenerate.
7253         * include/bits/invoke.h: New header.
7254         (__invoke): Make constexpr. Add && to types in exception specification.
7255         * include/experimental/tuple (apply, __apply_impl): Fix non-reserved
7256         names. Include <bits/invoke.h> and use std::__invoke.
7257         * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
7258         new header.
7259         (invoke): Add && to types in exception specification.
7260         * include/std/tuple (apply, __apply_impl): Define for C++17.
7261         * testsuite/20_util/tuple/apply/1.cc: New test.
7262         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
7263         lineno.
7265 2016-08-05  Jonathan Wakely  <jwakely@redhat.com>
7267         * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
7268         * doc/html/manual/status.html: Regenerate.
7270         * include/std/chrono (floor, ceil, round, abs): New for C++17.
7271         * testsuite/20_util/duration_cast/rounding.cc: New test.
7272         * testsuite/20_util/time_point_cast/rounding.cc: New test.
7273         * doc/xml/manual/status_cxx2017.xml: Update status table.
7274         * doc/html/manual/status.html: Regenerate.
7275         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
7276         dg-error lineno.
7277         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7278         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7279         * testsuite/20_util/duration/literals/range.cc: Likewise.
7281         * include/std/functional (__callable_functor): Remove.
7282         (_Function_handler::_M_invoke): Use __invoke instead of
7283         __callable_functor or mem_fn.
7284         (function::_Callable): Use lvalue in result_of expression.
7285         (function): Remove TODO comments about allocators.
7286         * testsuite/20_util/function/cons/refqual.cc: New test.
7288 2016-08-04  Jonathan Wakely  <jwakely@redhat.com>
7290         * doc/xml/manual/status_cxx2017.xml: Update status table.
7291         * include/std/functional (__inv_unwrap): Move to <type_traits>.
7292         (__invoke_impl): Remove exception specifications.
7293         (__invoke, invoke): Add exception specifications using
7294         __is_nothrow_callable.
7295         * include/std/type_traits (__inv_unwrap): Move from <functional>.
7296         (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
7297         (__is_callable, __is_nothrow_callable): New traits.
7298         (is_callable, is_callable_v): New C++17 traits.
7299         (is_nothrow_callable, is_nothrow_callable_v): Likewise.
7300         * testsuite/20_util/is_callable/requirements/
7301         explicit_instantiation.cc: New test.
7302         * testsuite/20_util/is_callable/requirements/
7303         explicit_instantiation_ext.cc: New test.
7304         * testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
7305         * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
7306         test.
7307         * testsuite/20_util/is_callable/value.cc: New test.
7308         * testsuite/20_util/is_callable/value_ext.cc: New test.
7309         * testsuite/20_util/is_nothrow_callable/requirements/
7310         explicit_instantiation.cc: New test.
7311         * testsuite/20_util/is_nothrow_callable/requirements/
7312         explicit_instantiation_ext.cc: New test.
7313         * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
7314         New test.
7315         * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
7316         New test.
7317         * testsuite/20_util/is_nothrow_callable/value.cc: New test.
7318         * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
7320         * doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
7321         * doc/html/manual/status.html: Regenerate.
7323         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
7324         effective target not dg-options. Move check for feature-test macro to:
7325         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
7326         New test.
7328         * include/std/functional (_Unwrap): Rename to __inv_unwrap.
7329         (__invfwd): Adjust.
7330         (__invoke_impl): Remove unused template parameters.
7331         * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
7332         parameter.
7333         * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
7334         and test __invoke extension for C++11.
7336 2016-08-03  Jonathan Wakely  <jwakely@redhat.com>
7338         * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
7339         Define feature-test macro.
7340         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
7341         for the macro.
7343         * include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
7344         * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
7345         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
7346         * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
7347         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
7349         * include/std/utility (as_const): Define.
7350         * testsuite/20_util/as_const/1.cc: New test.
7351         * testsuite/20_util/as_const/rvalue_neg.cc: New test.
7353         * include/bits/shared_ptr.h (owner_less): Add default template
7354         argument.
7355         * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
7356         specialization.
7357         (owner_less<void>): Define specialization.
7358         * include/bits/stl_function.h (__cpp_lib_transparent_operators):
7359         Update value.
7360         * testsuite/20_util/owner_less/void.cc: New test.
7361         * testsuite/experimental/feat-cxx14.cc: Update macro value tested.
7363         * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
7364         Define feature-test macro.
7365         * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
7366         * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
7367         * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
7368         (__cpp_lib_type_trait_variable_templates): Define.
7370         * include/bits/stl_function.h: Remove commented-out macro.
7371         * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
7372         Define feature-test macro.
7373         * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
7375         * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
7376         C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
7377         true.
7378         * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
7379         do #error for C++17.
7380         * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
7381         of __STDCPP_WANT_MATH_SPEC_FUNCS__.
7382         * include/tr1/bessel_function.tcc: Likewise.
7383         * include/tr1/beta_function.tcc: Likewise.
7384         * include/tr1/cmath: Likewise.
7385         * include/tr1/ell_integral.tcc: Likewise.
7386         * include/tr1/exp_integral.tcc: Likewise.
7387         * include/tr1/gamma.tcc: Likewise.
7388         * include/tr1/hypergeometric.tcc: Likewise.
7389         * include/tr1/legendre_function.tcc: Likewise.
7390         * include/tr1/modified_bessel_func.tcc: Likewise.
7391         * include/tr1/poly_hermite.tcc: Likewise.
7392         * include/tr1/poly_laguerre.tcc: Likewise.
7393         * include/tr1/riemann_zeta.tcc: Likewise.
7394         * include/tr1/special_function_util.h: Likewise.
7395         * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
7397         * include/std/type_traits (has_trivial_default_constructor): Remove.
7398         (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
7399         * testsuite/20_util/has_trivial_copy_assign/requirements/
7400         explicit_instantiation.cc: Remove test.
7401         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
7402         line number.
7403         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
7404         Likewise.
7405         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
7406         * testsuite/20_util/has_trivial_copy_constructor/requirements/
7407         explicit_instantiation.cc: Likewise.
7408         * testsuite/20_util/has_trivial_copy_constructor/requirements/
7409         typedefs.cc: Likewise.
7410         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
7411         * testsuite/20_util/has_trivial_default_constructor/requirements/
7412         explicit_instantiation.cc: Likewise.
7413         * testsuite/20_util/has_trivial_default_constructor/requirements/
7414         typedefs.cc: Likewise.
7415         * testsuite/20_util/has_trivial_default_constructor/value.cc:
7416         Likewise.
7417         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7418         Check has_trivial_default_constructor, has_trivial_copy_constructor,
7419         and has_trivial_copy_assign are not defined.
7420         * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
7421         tests.
7422         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
7423         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
7424         dg-error line number.
7425         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7426         Likewise.
7428 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
7430         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
7431         Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
7432         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
7433         Likewise.
7434         * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
7435         Likewise.
7436         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
7437         Likewise.
7438         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
7439         Likewise.
7440         * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
7441         Likewise.
7442         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
7443         Likewise.
7445         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
7446         comments.
7448         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
7449         dg-error to relevant line.
7450         * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
7451         Likewise.
7452         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
7454         * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
7456         * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
7457         options are present that aren't valid for C.
7458         * testsuite/abi/header_cxxabi.c: Likewise.
7460         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
7461         check_value.cc: Do not add special functions to namespace std in TR1
7462         test.
7464         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
7465         run for C++11 and later.
7466         * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
7467         Likewise.
7468         * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
7469         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
7470         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
7471         * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
7472         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
7473         Likewise.
7474         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
7475         Likewise.
7476         * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
7477         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
7478         Likewise.
7479         * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
7480         Likewise.
7481         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
7482         Likewise.
7483         * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
7484         * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
7485         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
7486         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
7487         * testsuite/special_functions/03_beta/compile.cc: Likewise.
7488         * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
7489         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
7490         * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
7491         Likewise.
7492         * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
7493         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
7494         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
7495         * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
7496         Likewise.
7497         * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
7498         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
7499         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
7500         * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
7501         Likewise.
7502         * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
7503         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
7504         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
7505         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
7506         Likewise.
7507         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
7508         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
7509         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
7510         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
7511         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
7512         Likewise.
7513         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
7514         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
7515         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
7516         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
7517         Likewise.
7518         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
7519         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
7520         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
7521         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
7522         * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
7523         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
7524         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
7525         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
7526         * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
7527         * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
7528         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
7529         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
7530         * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
7531         * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
7532         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
7533         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
7534         * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
7535         * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
7536         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
7537         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
7538         * testsuite/special_functions/14_expint/compile.cc: Likewise.
7539         * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
7540         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
7541         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
7542         * testsuite/special_functions/15_hermite/compile.cc: Likewise.
7543         * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
7544         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
7545         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
7546         * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
7547         * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
7548         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
7549         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
7550         * testsuite/special_functions/17_legendre/compile.cc: Likewise.
7551         * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
7552         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
7553         * testsuite/special_functions/18_riemann_zeta/check_value.cc:
7554         Likewise.
7555         * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
7556         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
7557         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
7558         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
7559         * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
7560         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
7561         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
7562         * testsuite/special_functions/20_sph_legendre/check_value.cc:
7563         Likewise.
7564         * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
7565         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
7566         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
7567         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
7568         * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
7569         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
7571         * testsuite/tr1/5_numerical_facilities/special_functions/
7572         08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
7573         of [[gnu::unused]].
7574         * testsuite/tr1/5_numerical_facilities/special_functions/
7575         09_cyl_bessel_j/check_value.cc: Likewise.
7576         * testsuite/tr1/5_numerical_facilities/special_functions/
7577         10_cyl_bessel_k/check_value.cc: Likewise.
7578         * testsuite/tr1/5_numerical_facilities/special_functions/
7579         11_cyl_neumann/check_value.cc: Likewise.
7580         * testsuite/tr1/5_numerical_facilities/special_functions/
7581         21_sph_bessel/check_value.cc: Likewise.
7582         * testsuite/tr1/5_numerical_facilities/special_functions/
7583         23_sph_neumann/check_value.cc: Likewise.
7585 2016-08-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7587         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
7588         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
7589         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
7590         * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
7591         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
7592         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
7594 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
7596         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
7597         test if -flto used.
7599         * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
7600         additional flags for compiling libtestc++.a objects.
7602 2016-08-01  Jonathan Wakely  <jwakely@redhat.com>
7604         * include/bits/basic_string.h (data() const): Update comment.
7605         (data()): Add non-const overload for C++17.
7606         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
7607         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
7609         * include/bits/basic_string.tcc: Disable explicit instantiation
7610         declarations for C++17.
7612         * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
7613         ignored "xfail" from { dg-do compile { xfail selector } } directive.
7614         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
7615         Likewise.
7616         * testsuite/26_numerics/headers/cmath/
7617         c99_classification_macros_c++11.cc: Likewise.
7618         * testsuite/26_numerics/headers/cmath/
7619         c99_classification_macros_c++98.cc: Likewise.
7620         * testsuite/26_numerics/headers/cmath/
7621         c99_classification_macros_c.cc: Likewise.
7623         * testsuite/backward/hash_set/check_construct_destroy.cc: Account
7624         for different construct/destroy counts in C++98 mode.
7626         * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
7628         * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
7629         later.
7630         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
7631         Likewise.
7633         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
7634         C++98-compatible initialization for array.
7636         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
7637         unused header and variable from compile-only test.
7638         * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
7639         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
7640         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
7641         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
7642         Likewise.
7644         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
7645         Remove duplicate dg-options directive.
7647         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
7648         808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
7650         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
7651         linker options from compile-only tests.
7652         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7653         Likewise.
7655         * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
7656         supported for C++11 and later.
7657         * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
7658         * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
7660 2016-08-01  Uros Bizjak  <ubizjak@gmail.com>
7662         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
7664 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
7666         * testsuite/20_util/conditional/requirements/typedefs.cc: Change to
7667         compile-only test.
7669         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7670         Ensure test is compiled with optimization.
7672         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7673         Adjust dg-prune-output pattern for error in C++98 mode.
7675         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
7676         run for C++11 or later.
7678         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
7679         test to not rely on GNU extension (escaped normal characters in POSIX
7680         BRE). Enable tests for other strings which are now supported.
7682         * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
7683         c++11 instead of setting -std=gnu++14.
7685         PR libstdc++/72745
7686         * include/std/array (get): Use positive message for static assertions.
7687         * include/std/functional (_Safe_tuple_element_t): Fix indentation.
7688         * include/std/tuple (tuple_element<I, tuple<>>): Add partial
7689         specialization for invalid indices, with static assertion.
7690         * testsuite/20_util/tuple/element_access/get_neg.cc: New test.
7692         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
7693         dg-error to relevant line.
7694         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7695         Likewise.
7696         * testsuite/23_containers/forward_list/requirements/dr438/
7697         assign_neg.cc: Likewise.
7698         * testsuite/23_containers/forward_list/requirements/dr438/
7699         constructor_1_neg.cc: Likewise.
7700         * testsuite/23_containers/forward_list/requirements/dr438/
7701         constructor_2_neg.cc: Likewise.
7702         * testsuite/23_containers/forward_list/requirements/dr438/
7703         insert_neg.cc: Likewise.
7704         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
7705         Likewise.
7706         * testsuite/26_numerics/random/linear_congruential_engine/
7707         requirements/non_uint_neg.cc: Likewise.
7708         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
7709         Likewise. Also test for std::atomic_address.
7711 2016-07-31  Ville Voutilainen  <ville.voutilainen@gmail.com>
7713         Add missing variable traits, fix testsuite failures.
7714         * include/bits/uses_allocator.h (uses_allocator_v): New.
7715         * include/std/functional (is_bind_expression_v, is_placeholder_v):
7716         Likewise.
7717         * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
7718         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
7719         * testsuite/20_util/duration/literals/range.cc: Likewise.
7720         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
7721         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7722         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7723         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
7724         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7725         Likewise.
7726         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
7727         * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
7728         New.
7730 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
7732         * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
7733         not test 128-bit types.
7734         * testsuite/20_util/is_floating_point/value.cc: Likewise.
7735         * testsuite/20_util/is_integral/value.cc: Likewise.
7736         * testsuite/20_util/is_signed/value.cc: Likewise.
7737         * testsuite/20_util/is_unsigned/value.cc: Likewise.
7738         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
7739         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
7740         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
7741         Likewise.
7742         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7743         Likewise.
7745         * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
7747 2016-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
7749         Implement C++17 variable templates for type traits.
7750         * include/std/chrono (treat_as_floating_point_v): New.
7751         * include/std/ratio (ratio_equal_v, ratio_not_equal_v)
7752         (ratio_less_v, ratio_less_equal_v, ratio_greater_v)
7753         (ratio_greater_equal_v): Likewise.
7754         * include/std/system_error (is_error_code_enum_v)
7755         (is_error_condition_enum_v): Likewise.
7756         * include/std/tuple (tuple_size_v): Likewise.
7757         * type_traits (conjunction_v, disjunction_v, negation_v)
7758         (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
7759         (is_array_v, is_pointer_v, is_lvalue_reference_v)
7760         (is_rvalue_reference_v, is_member_object_pointer_v)
7761         (is_member_function_pointer_v, is_enum_v, is_union_v)
7762         (is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
7763         (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
7764         (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
7765         (is_trivially_copyable_v, is_standard_layout_v)
7766         (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
7767         (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
7768         (is_constructible_v, is_default_constructible_v)
7769         (is_copy_constructible_v, is_move_constructible_v)
7770         (is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
7771         (is_destructible_v, is_trivially_constructible_v)
7772         (is_trivially_default_constructible_v)
7773         (is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
7774         (is_trivially_assignable_v, is_trivially_copy_assignable_v)
7775         (is_trivially_move_assignable_v, is_trivially_destructible_v)
7776         (is_nothrow_constructible_v, is_nothrow_default_constructible_v)
7777         (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
7778         (is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
7779         (is_nothrow_move_assignable_v, is_nothrow_destructible_v)
7780         (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
7781         (is_same_v, is_base_of_v, is_convertible_v): Likewise.
7782         * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
7783         * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
7784         Likewise.
7785         * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
7786         * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
7787         * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
7789 2016-07-29  Andreas Schwab  <schwab@linux-m68k.org>
7791         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
7792         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
7793         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
7795 2016-07-29  Jonathan Wakely  <jwakely@redhat.com>
7797         * doc/xml/manual/abi.xml: Document 6.0.22 library version.
7798         * doc/html/manual/abi.html: Regenerate.
7800         * acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
7801         * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
7802         symbols.
7803         * configure: Regenerate.
7804         * testsuite/util/testsuite_abi.cc: Add new symbol version.
7806         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
7807         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
7808         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
7809         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
7810         Likewise.
7811         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
7812         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
7813         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
7815 2016-07-28  Jonathan Wakely  <jwakely@redhat.com>
7817         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
7818         Adjust dg-prune-output pattern for error in C++98 mode.
7819         * testsuite/23_containers/deque/requirements/dr438/
7820         constructor_1_neg.cc: Likewise.
7821         * testsuite/23_containers/deque/requirements/dr438/
7822         constructor_2_neg.cc: Likewise.
7823         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
7824         Likewise.
7825         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
7826         Likewise.
7827         * testsuite/23_containers/list/requirements/dr438/
7828         constructor_1_neg.cc: Likewise.
7829         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7830         Likewise.
7831         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
7832         Likewise.
7833         * testsuite/23_containers/vector/requirements/dr438/
7834         constructor_1_neg.cc: Likewise.
7835         * testsuite/23_containers/vector/requirements/dr438/
7836         constructor_2_neg.cc: Likewise.
7837         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
7838         Likewise.
7840         * testsuite/23_containers/vector/check_construct_destroy.cc: Account
7841         for different construct/destroy counts in C++98 mode.
7843         * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
7844         dg-options to dg-additional-options so that default options are used.
7845         * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
7846         Likewise.
7847         * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
7848         * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
7849         Likewise.
7850         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7851         Use dg-additional-options instead of repeating the common options.
7853         * testsuite/22_locale/conversions/string/1.cc: Remove unintended
7854         dg-do compile directive.
7855         * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
7856         dg-do directive.
7857         * testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
7859 2016-07-28  Ville Voutilainen  <ville.voutilainen@gmail.com>
7861         Implement std::string_view and P0254r2,
7862         Integrating std::string_view and std::string.
7863         * include/Makefile.am: Add string_view and string_view.tcc
7864         to the exported headers.
7865         * include/Makefile.in: Likewise.
7866         * include/bits/basic_string.h: Include <string_view> in C++17 mode.
7867         (__sv_type): New.
7868         (basic_string(__sv_type, const _Alloc&)): Likewise.
7869         (operator=(__sv_type)): Likewise.
7870         (operator __sv_type()): Likewise.
7871         (operator+=(__sv_type)): Likewise.
7872         (append(__sv_type __sv)): Likewise.
7873         (append(__sv_type, size_type, size_type)): Likewise.
7874         (assign(__sv_type)): Likewise.
7875         (assign(__sv_type, size_type, size_type)): Likewise.
7876         (insert(size_type, __sv_type)): Likewise.
7877         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
7878         (replace(size_type, size_type, __sv_type)): Likewise.
7879         (replace(size_type, size_type, __sv_type, size_type, size_type)):
7880         Likewise.
7881         (replace(const_iterator, const_iterator, __sv_type)): Likewise.
7882         (find(__sv_type, size_type)): Likewise.
7883         (rfind(__sv_type, size_type)): Likewise.
7884         (find_first_of(__sv_type, size_type)): Likewise.
7885         (find_last_of(__sv_type, size_type)): Likewise.
7886         (find_first_not_of(__sv_type, size_type)): Likewise.
7887         (find_last_not_of(__sv_type, size_type)): Likewise.
7888         (compare(__sv_type)): Likewise.
7889         (compare(size_type, size_type, __sv_type)): Likewise.
7890         (compare(size_type, size_type, __sv_type, size_type, size_type)):
7891         Likewise.
7892         * include/bits/string_view.tcc: New.
7893         * include/std/string_view: Likewise.
7894         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
7895         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
7896         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
7897         Likewise.
7898         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
7899         Likewise.
7900         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
7901         Likewise.
7902         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
7903         Likewise.
7904         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
7905         Likewise.
7906         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
7907         Likewise.
7908         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7909         Likewise.
7910         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
7911         Likewise.
7912         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
7913         Likewise.
7914         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
7915         Likewise.
7916         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
7917         Likewise.
7918         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
7919         Likewise.
7920         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
7921         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
7922         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
7923         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
7924         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
7925         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
7926         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
7927         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
7928         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
7929         * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
7930         Likewise.
7931         * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
7932         Likewise.
7933         * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
7934         Likewise.
7935         * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
7936         Likewise.
7937         * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
7938         Likewise.
7939         * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
7940         Likewise.
7941         * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
7942         Likewise.
7943         * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
7944         Likewise.
7945         * testsuite/21_strings/basic_string_view/include.cc: Likewise.
7946         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
7947         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
7948         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
7949         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
7950         Likewise.
7951         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
7952         Likewise.
7953         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
7954         Likewise.
7955         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
7956         Likewise.
7957         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
7958         Likewise.
7959         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
7960         Likewise.
7961         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
7962         Likewise.
7963         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
7964         Likewise.
7965         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
7966         Likewise.
7967         * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
7968         Likewise.
7969         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
7970         Likewise.
7971         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
7972         Likewise.
7973         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
7974         Likewise.
7975         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
7976         Likewise.
7977         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
7978         Likewise.
7979         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
7980         Likewise.
7981         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
7982         Likewise.
7983         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
7984         Likewise.
7985         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
7986         Likewise.
7987         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
7988         Likewise.
7989         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
7990         Likewise.
7991         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
7992         Likewise.
7993         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
7994         Likewise.
7995         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
7996         Likewise.
7997         * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
7998         Likewise.
7999         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
8000         Likewise.
8001         * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
8002         Likewise.
8003         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
8004         Likewise.
8005         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
8006         Likewise.
8007         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
8008         Likewise.
8009         * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
8010         Likewise.
8011         * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
8012         Likewise.
8013         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
8014         Likewise.
8015         * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
8016         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
8017         Likewise.
8018         * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
8019         Likewise.
8020         * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
8021         Likewise.
8022         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
8023         Likewise.
8024         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
8025         Likewise.
8026         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
8027         Likewise.
8028         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
8029         Likewise.
8030         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
8031         Likewise.
8032         * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
8033         Likewise.
8034         * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
8035         * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
8037 2016-07-27  Jonathan Wakely  <jwakely@redhat.com>
8039         * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
8041 2016-07-25  Georeth Chow  <georeth2010@gmail.com>
8043         * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
8044         _S_concat enumerator.
8045         * testsuite/ext/rope/6.cc: New test.
8047 2016-07-25  Jonathan Wakely  <jwakely@redhat.com>
8049         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
8050         std::mt19937, std::thread and std::atomic to simplify test.
8051         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
8053 2016-07-22  Jonathan Wakely  <jwakely@redhat.com>
8055         PR libstdc++/71964
8056         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8057         (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
8058         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
8059         * testsuite/21_strings/basic_string/allocator/71964.cc: New test.
8060         * testsuite/23_containers/set/allocator/71964.cc: New test.
8062         * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
8063         delete[] instead of delete.
8065 2016-07-21  Jonathan Wakely  <jwakely@redhat.com>
8067         * include/experimental/propagate_const (propagate_const::__t): Rename
8068         to _M_t and remove comment. Qualify std::move and std::forward.
8069         * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
8071         * testsuite/23_containers/vector/zero_sized_allocations.cc:
8072         Define sized deallocation function.
8073         * testsuite/util/testsuite_new_operators.h:
8074         (operator delete(void*, const std::nothrow_t&)): Define nothrow
8075         deallocation function.
8077         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
8078         reads past the end of strings.
8079         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
8080         Likewise.
8081         * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
8082         invalid array accesses.
8083         * testsuite/experimental/string_view/operations/compare/char/1.cc:
8084         Fix read past the end of string.
8085         * testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
8087         * testsuite/24_iterators/container_access.cc: Fix missing returns.
8088         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
8090         * testsuite/18_support/new_delete_placement.cc: Don't allocate (and
8091         leak) memory for arguments to placement delete.
8092         * testsuite/20_util/addressof/1.cc: Don't leak memory.
8093         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
8094         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
8095         Likewise.
8097 2016-07-20  Jonathan Wakely  <jwakely@redhat.com>
8099         * doc/xml/manual/intro.xml: Document DR 2684 status.
8100         * doc/html/*: Regenerate.
8102         * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
8103         (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
8104         (atomic_uint64_t): Define (LWG 2441).
8105         * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
8106         lines.
8107         * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
8108         the new types.
8109         * doc/xml/manual/intro.xml: Document DR 2441 status.
8111         * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
8112         to use perfect forwarding (LWG 2328).
8113         * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
8114         * doc/xml/manual/intro.xml: Document DR 2328 status.
8116         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
8117         static objects for catching nullptr as pointer to member types.
8119 2016-07-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
8121         Clean up optional's comments.
8122         * include/std/optional: Remove incorrect section headers
8123         from comments when redundant, replace bare section
8124         headers with more descriptive comments.
8126 2016-07-15  Jonathan Wakely  <jwakely@redhat.com>
8128         * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
8129         * include/bits/move.h: Likewise.
8130         * include/bits/postypes.h: Likewise.
8131         * include/debug/bitset: Likewise.
8132         * include/ext/pb_ds/detail/type_utils.hpp: Likewise.
8133         * include/ext/string_conversions.h: Change C++0x to __cxx11 in
8134         comment.
8135         * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
8136         * testsuite/util/thread/all.h: Likewise.
8138         * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
8139         and adjust comment.
8141         PR c++/58796
8142         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
8143         nullptr match handlers of pointer type.
8145 2016-07-15  Edward Smith-Rowland  <3dw4rd@verizon.net>
8147         Implement C++17 P0025 clamp.
8148         * include/bits/algorithmfwd.h: Declare clamp overloads.
8149         * include/bits/stl_algo.h: Implement clamp.  Feature __cpp_lib_clamp.
8150         * testsuite/25_algorithms/clamp/1.cc: New test.
8151         * testsuite/25_algorithms/clamp/2.cc: New test.
8152         * testsuite/25_algorithms/clamp/constexpr.cc: New test.
8153         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8154         1.cc: New test.
8155         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8156         pod.cc: New test.
8158 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
8160         Fix the constraints for any's assignment operator template to properly
8161         reject assignment from a non-copyable lvalue.
8162         * include/std/any (operator=(_ValueType&&)): Constrain the decayed
8163         type for is_copy_constructible,
8164         * testsuite/20_util/any/requirements.cc: Add a test for
8165         non-copyable lvalues.
8167 2016-07-14  Jonathan Wakely  <jwakely@redhat.com>
8169         * include/experimental/functional: Include <parallel/algorithm> in
8170         Parallel Mode.
8172         * testsuite/experimental/functional/searchers.cc: Include <algorithm>
8173         for std::search.
8175         PR libstdc++/70716
8176         * include/bits/forward_list.h (forward_list): Update doxygen comments
8177         to reflect allocator propagation semantics. Remove ambiguous
8178         statements about data being lost.
8179         * include/bits/stl_deque.h (deque): Likewise.
8180         * include/bits/stl_list.h (list): Likewise.
8181         * include/bits/stl_map.h (map): Likewise.
8182         * include/bits/stl_multimap.h (multimap): Likewise.
8183         * include/bits/stl_multiset.h (multiset): Likewise.
8184         * include/bits/stl_set.h (set): Likewise.
8185         * include/bits/stl_vector.h (vector): Likewise.
8186         * include/bits/unordered_map.h (unordered_map, unordered_multimap):
8187         Likewise.
8188         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
8189         Likewise.
8191 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
8193         Implement P0032R3, Homogeneous interface for variant, any and optional,
8194         for the parts concerning any and optional.
8195         * include/std/any (_Storage()): Make constexpr and have it
8196         initialize _M_ptr.
8197         (any()): Make constexpr.
8198         (any(const any&)): Adjust.
8199         (any(any&&)): Likewise.
8200         (__any_constructible_t): New.
8201         (any(_ValueType&&)): Constrain.
8202         (any(in_place_type_t<_Tp>, _Args&&...)): New.
8203         (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
8204         Likewise.
8205         (~any()): Adjust.
8206         (operator=(const any&)): Likewise.
8207         (operator=(any&&)): Likewise.
8208         (operator=(_ValueType&&)): Constrain.
8209         (emplace(_Args&&...)): New.
8210         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
8211         (clear()): Remove.
8212         (reset()): New.
8213         (swap(any&)): Adjust.
8214         (empty()): Remove.
8215         (has_value()): New.
8216         (type()): Adjust.
8217         (_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
8218         (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
8219         (make_any(_Args&&...)): Likewise.
8220         (make_any(initializer_list<_Up>, _Args&&...)): Likewise.
8221         * include/std/optional (in_place_t, in_place): Remove.
8222         (bad_optional_access): Add a comment referring to LEWG 72.
8223         (emplace(_Args&&...)): Constrain.
8224         (has_value()): New.
8225         (reset()): Likewise.
8226         (make_optional(_Args&&...)): Likewise.
8227         (make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
8228         * include/std/utility (in_place_tag): New.
8229         (__in_place, __in_place_type, __in_place_index): Likewise.
8230         (in_place_t, in_place_type_t, in_place_index_t): Likewise.
8231         (in_place(__in_place*)): Likewise.
8232         (in_place(__in_place_type<_Tp>*)): Likewise.
8233         (in_place(__in_place_index<_Idx>*)): Likewise.
8234         * testsuite/20_util/any/assign/1.cc: Adjust.
8235         * testsuite/20_util/any/assign/emplace.cc: New.
8236         * testsuite/20_util/any/assign/self.cc: Adjust.
8237         * testsuite/20_util/any/cons/1.cc: Likewise.
8238         * testsuite/20_util/any/cons/in_place.cc: New.
8239         * testsuite/20_util/any/make_any.cc: Likewise.
8240         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
8241         * testsuite/20_util/any/misc/swap.cc: Likewise.
8242         * testsuite/20_util/any/modifiers/1.cc: Likewise.
8243         * testsuite/20_util/any/requirements.cc: New.
8244         * testsuite/20_util/in_place/requirements.cc: Likewise.
8245         * testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
8246         * testsuite/20_util/optional/in_place.cc: Likewise.
8247         * testsuite/20_util/optional/make_optional.cc: Add tests for
8248         the new overloads of make_optional.
8250 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
8252         Implement P0307R2, Making Optional Greater Equal Again.
8253         * include/experimental/optional (_Has_addressof): Fix the comment.
8254         * include/std/optional (_Has_addressof): Likewise.
8255         (operator=(_Up&&)): Constrain.
8256         (operator=(const optional<_Up>&)): Likewise.
8257         (operator=(optional<_Up>&&)): Likewise.
8258         (__optional_relop_t): New.
8259         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8260         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8261         Constrain and make transparent.
8262         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8263         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
8264         Constrain and make transparent.
8265         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8266         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8267         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
8268         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8269         (operator!=(const optional<_Tp>&, _Tp const&)):
8270         Constrain and make transparent.
8271         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8272         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8273         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8274         (operator>(const optional<_Tp>&, const _Tp&)):
8275         Constrain and make transparent.
8276         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8277         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8278         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8279         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8280         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8281         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8282         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8283         * testsuite/20_util/optional/relops/1.cc: Likewise.
8284         * testsuite/20_util/optional/relops/2.cc: Likewise.
8285         * testsuite/20_util/optional/relops/3.cc: Likewise.
8286         * testsuite/20_util/optional/relops/4.cc: Likewise.
8287         * testsuite/20_util/optional/requirements.cc: Add tests to verify
8288         that optional's relops are transparent and don't synthesize
8289         operators. Also test that assignment sfinaes.
8291 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8293         PR libstdc++/71856
8294         * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
8295         * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
8296         Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
8297         on _GLIBCXX_ASSERTIONS.
8298         * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
8299         Include <unistd.h> for sleep.
8300         * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
8301         * include/parallel/merge.h: Likewise.
8302         * include/parallel/multiway_merge.h: Likewise.
8303         * include/parallel/partition.h: Likewise.
8304         * include/parallel/queue.h: Likewise.
8305         * include/parallel/sort.h: Likewise.
8306         * testsuite/25_algorithms/headers/algorithm/
8307         parallel_algorithm_assert.cc: New.
8309         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8310         (replace(__const_iterator, __const_iterator, initializer_list<C>)):
8311         Forward to different overload.
8313         * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
8314         static.
8316 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8318         Revert "Add non-const overload of std::string::data()".
8320 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
8322         Implement P0307R2, Making Optional Greater Equal Again.
8323         * include/experimental/optional (_Has_addressof): Fix the comment.
8324         * include/std/optional (_Has_addressof): Likewise.
8325         (operator=(_Up&&)): Constrain.
8326         (operator=(const optional<_Up>&)): Likewise.
8327         (operator=(optional<_Up>&&)): Likewise.
8328         (__optional_relop_t): New.
8329         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8330         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8331         Constrain and make transparent.
8332         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8333         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
8334         Constrain and make transparent.
8335         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8336         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8337         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
8338         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8339         (operator!=(const optional<_Tp>&, _Tp const&)):
8340         Constrain and make transparent.
8341         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8342         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8343         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8344         (operator>(const optional<_Tp>&, const _Tp&)):
8345         Constrain and make transparent.
8346         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8347         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8348         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8349         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8350         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8351         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8352         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8353         * testsuite/20_util/optional/relops/1.cc: Likewise.
8354         * testsuite/20_util/optional/relops/2.cc: Likewise.
8355         * testsuite/20_util/optional/relops/3.cc: Likewise.
8356         * testsuite/20_util/optional/relops/4.cc: Likewise.
8357         * testsuite/20_util/optional/requirements.cc: Add tests to verify
8358         that optional's relops are transparent and don't synthesize
8359         operators. Also test that assignment sfinaes.
8361 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
8363         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
8364         New function.
8365         (_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
8366         instead of _M_data().
8367         (basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
8368         Likewise.
8369         (append(const basic_string&)): Likewise.
8370         (append(const basic_string&, size_type, size_type)): Likewise.
8371         (assign(const basic_string&, size_type, size_type)): Likewise.
8372         (insert(size_type, const basic_string&)): Likewise.
8373         (insert(size_type, const basic_string&, size_type, size_type)):
8374         Likewise.
8375         (replace(size_type, size_type, const basic_string&, size_type,
8376         size_type)): Likewise.
8377         (replace(__const_iterator, __const_iterator, const basic_string&)):
8378         Likewise.
8379         (c_str(), data()): Use c_str() instead of _M_data().
8380         (data()): Add non-const overload as per LWG 2391 and P0272R1.
8381         (compare(const basic_string&)): Use data() instead of _M_data().
8382         [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
8383         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
8384         Pass raw pointers to _S_copy.
8385         (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
8386         _S_assign.
8387         (find(const _CharT*, size_type, size_type)): Use data instead of
8388         _M_data().
8389         * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
8390         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
8391         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
8393 2016-07-12  Jonathan Wakely  <jwakely@redhat.com>
8395         * libsupc++/new: Remove nothrow sized deletes (LWG 2458).
8396         * doc/xml/manual/intro.xml: Document DR 2458 status.
8397         * doc/html*: Regenerate.
8399         * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
8400         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
8401         Only include <array>.
8402         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
8403         Likewise.
8404         * doc/xml/manual/intro.xml: Document LWG 2212 support.
8405         * doc/html*: Regenerate.
8407         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8408         Add testcase from LWG 2164.
8410 2016-07-11  François Dumont  <fdumont@gcc.gnu.org>
8412         * include/bits/stl_vector.h (push_back(const value_type&)): Forward
8413         to _M_realloc_insert.
8414         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8415         (_M_realloc_insert): Declare new function.
8416         (_M_emplace_back_aux): Remove definition.
8417         * include/bits/vector.tcc (emplace_back(_Args...)):
8418         Use _M_realloc_insert.
8419         (insert(const_iterator, const value_type&)): Likewise.
8420         (_M_insert_rval, _M_emplace_aux): Likewise.
8421         (_M_emplace_back_aux): Remove declaration.
8422         (_M_realloc_insert): Define.
8423         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8424         Adjust expected results for emplacing an lvalue with reallocation.
8426 2016-07-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
8428         Implement std::optional.
8429         * include/Makefile.am: Add optional to exported headers.
8430         * include/Makefile.in: Likewise.
8431         * include/std/optional: New.
8432         * testsuite/20_util/optional/typedefs.cc: Likewise.
8433         * testsuite/20_util/optional/relops/2.cc: Likewise.
8434         * testsuite/20_util/optional/relops/3.cc: Likewise.
8435         * testsuite/20_util/optional/relops/4.cc: Likewise.
8436         * testsuite/20_util/optional/relops/5.cc: Likewise.
8437         * testsuite/20_util/optional/relops/1.cc: Likewise.
8438         * testsuite/20_util/optional/relops/6.cc: Likewise.
8439         * testsuite/20_util/optional/nullopt.cc: Likewise.
8440         * testsuite/20_util/optional/in_place.cc: Likewise.
8441         * testsuite/20_util/optional/make_optional.cc: Likewise.
8442         * testsuite/20_util/optional/assignment/2.cc: Likewise.
8443         * testsuite/20_util/optional/assignment/3.cc: Likewise.
8444         * testsuite/20_util/optional/assignment/4.cc: Likewise.
8445         * testsuite/20_util/optional/assignment/5.cc: Likewise.
8446         * testsuite/20_util/optional/assignment/1.cc: Likewise.
8447         * testsuite/20_util/optional/assignment/6.cc: Likewise.
8448         * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
8449         * testsuite/20_util/optional/cons/default.cc: Likewise.
8450         * testsuite/20_util/optional/cons/move.cc: Likewise.
8451         * testsuite/20_util/optional/cons/value.cc: Likewise.
8452         * testsuite/20_util/optional/cons/copy.cc: Likewise.
8453         * testsuite/20_util/optional/requirements.cc: Likewise.
8454         * testsuite/20_util/optional/observers/2.cc: Likewise.
8455         * testsuite/20_util/optional/observers/3.cc: Likewise.
8456         * testsuite/20_util/optional/observers/4.cc: Likewise.
8457         * testsuite/20_util/optional/observers/5.cc: Likewise.
8458         * testsuite/20_util/optional/observers/1.cc: Likewise.
8459         * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
8460         * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
8461         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8462         * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
8463         * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
8464         * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
8465         * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
8466         * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
8467         * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
8468         * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
8469         * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
8470         * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
8471         * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
8472         * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
8473         * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
8474         * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
8475         * testsuite/20_util/optional/swap/1.cc: Likewise.
8477 2016-07-08  Jonathan Wakely  <jwakely@redhat.com>
8479         * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
8481 2016-07-07  Jonathan Wakely  <jwakely@redhat.com>
8483         * doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
8484         * doc/html/*: Regenerate.
8486 2016-07-07  Ville Voutilainen  <ville.voutilainen@gmail.com>
8488         Implement std::any.
8489         * include/Makefile.am: Add any and c++17_warning.h to exported headers.
8490         * include/Makefile.in: Likewise.
8491         * include/std/any: New.
8492         * testsuite/20_util/any/assign/1.cc: Likewise.
8493         * testsuite/20_util/any/assign/2.cc: Likewise.
8494         * testsuite/20_util/any/assign/self.cc: Likewise.
8495         * testsuite/20_util/any/cons/1.cc: Likewise.
8496         * testsuite/20_util/any/cons/2.cc: Likewise.
8497         * testsuite/20_util/any/cons/aligned.cc: Likewise.
8498         * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
8499         * testsuite/20_util/any/misc/any_cast.cc: Likewise.
8500         * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
8501         * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
8502         * testsuite/20_util/any/misc/swap.cc: Likewise.
8503         * testsuite/20_util/any/modifiers/1.cc: Likewise.
8504         * testsuite/20_util/any/observers/type.cc: Likewise.
8505         * testsuite/20_util/any/typedefs.cc: Likewise.
8507 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8509         Add a new header for diagnosing the use of C++17 facilities
8510         in pre-C++17 modes.
8511         * include/bits/c++17_warning.h: New.
8513 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8515         Implement LWG 2451, optional<T> should 'forward' T's
8516         implicit conversions.
8517         * include/experimental/optional (__is_optional_impl, __is_optional):
8518         New.
8519         (optional()): Make constexpr and default.
8520         (optional(_Up&&), optional(const optional<_Up>&),
8521         optional(optional<_Up>&& __t): New.
8522         (operator=(_Up&&)): Constrain.
8523         (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
8524         * testsuite/experimental/optional/cons/value.cc:
8525         Add tests for the functionality added by LWG 2451.
8526         * testsuite/experimental/optional/cons/value_neg.cc: New.
8528 2016-07-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8530         Implement LWG 2509,
8531         any_cast doesn't work with rvalue reference targets and cannot
8532         move with a value target.
8533         * include/experimental/any (any(_ValueType&&)): Constrain and
8534         add an overload that doesn't forward.
8535         (any_cast(any&&)): Constrain and add an overload that moves.
8536         * testsuite/experimental/any/misc/any_cast.cc: Add tests for
8537         the functionality added by LWG 2509.
8539 2016-07-04  François Dumont  <fdumont@gcc.gnu.org>
8541         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8542         New test.
8543         * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
8544         test.
8546 2016-07-04  Jonathan Wakely  <jwakely@redhat.com>
8548         * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
8549         Define inline. Forward to _M_emplace_aux.
8550         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8551         (_M_insert_rval, _M_emplace_aux): Declare new functions.
8552         (_Temporary_value): New RAII type using allocator to construct/destroy.
8553         (_S_insert_aux_assign): Remove.
8554         (_M_insert_aux): Make non-variadic.
8555         * include/bits/vector.tcc (insert(const_iterator, const value_type&)):
8556         Use _Temporary_value.
8557         (emplace(const_iterator, _Args&&...)): Remove definition.
8558         (_M_insert_rval, _M_emplace_aux): Define.
8559         (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
8560         (_M_fill_insert): Use _Temporary_value.
8561         * testsuite/23_containers/vector/allocator/construction.cc: New test.
8562         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8563         Adjust expected results for emplacing an lvalue with reallocation.
8564         * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
8565         expected results to account for construction/destruction of temporary
8566         using allocator.
8567         * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
8569 2016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
8571         PR libstdc++/71313
8572         * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
8573         Call remove_all for children of a directory.
8574         * testsuite/experimental/filesystem/operations/create_directories.cc:
8575         Adjust.
8577 2016-07-02  François Dumont  <fdumont@gcc.gnu.org>
8579         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
8580         dg-error line numbers.
8581         * testsuite/23_containers/array/tuple_interface/
8582         tuple_element_debug_neg.cc: Likewise.
8583         * testsuite/25_algorithms/lexicographical_compare/debug/
8584         irreflexive_neg.cc: Remove.
8586 2016-06-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
8588         * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
8589         than specific target.
8591 2016-06-27  François Dumont  <fdumont@gcc.gnu.org>
8593         PR libstdc++/71640
8594         * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
8595         friend declaration.
8597 2016-06-23  François Dumont  <fdumont@gcc.gnu.org>
8599         * include/debug/array (array<>::swap): Fix noexcept qualificaton for
8600         zero-size array.
8602 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
8604         * configure.host: Remove mep-* support.
8606 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
8608         * configure: Regenerate.
8609         * configure.host: Remove support for knetbsd.
8610         * crossconfig.m4: Likewise.
8612 2016-06-20  François Dumont  <fdumont@gcc.gnu.org>
8614         PR libstdc++/71181
8615         * include/tr1/hashtable_policy.h
8616         (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
8617         dereferenceable to avoid check on lower_bound result.
8618         (_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
8619         (_Prime_rehash_policy::_M_need_rehash): Likewise.
8620         * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
8621         Always return a value greater than input value. Set _M_next_resize to
8622         max value when reaching highest prime number.
8623         * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
8624         being now useless.
8625         * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
8626         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
8627         (test02): New.
8628         * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
8629         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8630         Fix indentation.
8632 2016-06-17  Jonathan Wakely  <jwakely@redhat.com>
8634         PR libstdc++/71545
8635         * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
8636         Remove irreflexive checks.
8637         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
8638         binary_search): Likewise.
8639         * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
8640         * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
8641         * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
8642         * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
8643         * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
8644         Add constructor from array.
8646 2016-06-16  François Dumont  <fdumont@gcc.gnu.org>
8648         * include/debug/debug.h
8649         (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
8650         (__glibcxx_requires_subscript): Move...
8651         * include/debug/assertions.h: ...here and add __builtin_expect.
8652         (_GLIBCXX_DEBUG_ONLY): Remove ; value.
8653         * include/bits/stl_deque.h
8654         (std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
8655         (std::deque<>::front()): Add __glibcxx_requires_nonempty check.
8656         (std::deque<>::back()): Likewise.
8657         (std::deque<>::pop_front()): Likewise.
8658         (std::deque<>::pop_back()): Likewise.
8659         (std::deque<>::swap(deque&)): Add allocator check.
8660         * include/bits/stl_vector.h
8661         (std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
8662         (std::vector<>::front()): Add __glibcxx_requires_nonempty check.
8663         (std::vector<>::back()): Likewise.
8664         (std::vector<>::pop_back()): Likewise.
8665         (std::vector<>::swap(vector&)): Add allocator check.
8667 2016-06-16  Daniel Kruegler  <daniel.kruegler@gmail.com>
8669         Provide swappable traits (p0185r1)
8670         * include/std/type_traits (is_swappable, is_nothrow_swappable,
8671         is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
8672         is_nothrow_swappable_v, is_swappable_with_v,
8673         is_nothrow_swappable_with_v): New.
8674         * include/bits/stl_pair.h: Use it as per p0185r1.
8675         * include/bits/stl_queue.h: Likewise.
8676         * include/bits/stl_stack.h: Likewise.
8677         * include/bits/unique_ptr.h: Likewise.
8678         * include/std/tuple: Likewise.
8679         * include/std/array: Likewise. Fix zero-size member swap.
8680         * include/bits/hashtable.h: Use __and_.
8681         * testsuite/20_util/is_nothrow_swappable/requirements/
8682         explicit_instantiation.cc: Change test options to std=gnu++17.
8683         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
8684         Likewise.
8685         * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
8686         * testsuite/20_util/is_swappable/requirements/
8687         explicit_instantiation.cc: Likewise.
8688         * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
8689         * testsuite/20_util/is_swappable/value.cc: Likewise.
8690         * testsuite/20_util/is_nothrow_swappable/requirements/
8691         explicit_instantiation_ext.cc: New.
8692         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
8693         New.
8694         * testsuite/20_util/is_nothrow_swappable/value.h: New.
8695         * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
8696         * testsuite/20_util/is_nothrow_swappable_with/requirements/
8697         explicit_instantiation.cc: New.
8698         * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
8699         New.
8700         * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
8701         * testsuite/20_util/is_swappable/requirements/
8702         explicit_instantiation_ext.cc: New.
8703         * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
8704         * testsuite/20_util/is_swappable/value.h: New.
8705         * testsuite/20_util/is_swappable/value_ext.cc: New.
8706         * testsuite/20_util/is_swappable_with/requirements/
8707         explicit_instantiation.cc: New.
8708         * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
8709         * testsuite/20_util/is_swappable_with/value.cc: New.
8710         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
8711         dg-error line numbers.
8712         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
8713         Likewise.
8715 2016-06-16  Jonathan Wakely  <jwakely@redhat.com>
8717         * include/std/array: Remove trailing whitespace.
8718         * include/std/atomic: Likewise.
8719         * include/std/bitset: Likewise.
8720         * include/std/chrono: Likewise.
8721         * include/std/complex: Likewise.
8722         * include/std/condition_variable: Likewise.
8723         * include/std/fstream: Likewise.
8724         * include/std/functional: Likewise.
8725         * include/std/future: Likewise.
8726         * include/std/iomanip: Likewise.
8727         * include/std/iosfwd: Likewise.
8728         * include/std/istream: Likewise.
8729         * include/std/limits: Likewise.
8730         * include/std/ratio: Likewise.
8731         * include/std/scoped_allocator: Likewise.
8732         * include/std/sstream: Likewise.
8733         * include/std/stdexcept: Likewise.
8734         * include/std/string: Likewise.
8735         * include/std/system_error: Likewise.
8736         * include/std/thread: Likewise.
8737         * include/std/tuple: Likewise.
8738         * include/std/type_traits: Likewise.
8739         * include/std/utility: Likewise.
8740         * include/std/valarray: Likewise.
8741         * include/std/vector: Likewise.
8743         * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
8744         new overloaded functions.
8745         * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
8746         to avoid creating a redundant temporary.
8747         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
8748         test.
8750 2016-06-15  François Dumont  <fdumont@gcc.gnu.org>
8752         * include/bits/stl_deque.h
8753         (std::deque<>::operator=): Call _M_assign_aux.
8754         (std::deque<>::assign(initializer_list<>)): Likewise.
8755         (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8756         (std::deque<>::insert(const_iterator, initializer_list<>)):
8757         Call _M_range_insert_aux.
8758         (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
8759         Likewise.
8760         (std::deque<>::_M_fill_assign): Call _M_fill_insert.
8761         (std::deque<>::_M_move_assign2): Call _M_assign_aux.
8762         * include/bits/deque.tcc
8763         (std::deque<>::operator=): Call _M_range_insert_aux.
8764         (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
8765         Likewise.
8766         * include/bits/stl_vector.h
8767         (std::vector<>::operator=): Call _M_assign_aux.
8768         (std::vector<>::assign(initializer_list<>)): Likewise.
8769         (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8770         (std::vector<>::insert(const_iterator, initializer_list<>)):
8771         Call _M_range_insert.
8772         * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
8774 2016-06-07  François Dumont  <fdumont@gcc.gnu.org>
8776         * include/std/tuple (_Head_base<>): Default specialization condition at
8777         type declaration.
8779 2016-06-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
8781         Support allocators in tuples of zero size.
8782         * include/std/tuple (tuple<>::tuple(),
8783         tuple<>::tuple(allocator_arg_t, const _Alloc&),
8784         tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
8785         * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
8787 2016-06-06  Jonathan Wakely  <jwakely@redhat.com>
8789         PR libstdc++/71320
8790         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
8791         Add or remove permissions according to perms argument.
8792         * testsuite/experimental/filesystem/operations/permissions.cc: New
8793         test.
8795 2016-06-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8797         Protect allocator-overloads of tuple-from-tuple constructors
8798         from cases that would create dangling references.
8799         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8800         const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
8801         tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
8802         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
8804 2016-05-29  Gerald Pfeifer  <gerald@pfeifer.com>
8806         * doc/xml/manual/backwards_compatibility.xml: Adjust
8807         lists.debian.org link to https.
8808         * doc/html/manual/backwards.html: Regenerate.
8810 2016-05-27  Jonathan Wakely  <jwakely@redhat.com>
8812         * doc/xml/manual/abi.xml: Adjust URL to use https.
8813         * doc/html/manual/*: Regenerate.
8815 2016-05-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
8817         PR libstdc++/66338
8818         * include/std/tuple (_TMC): Add a check for _NotSameTuple.
8819         * include/std/tuple (tuple(_UElements&&...)): Remove the separate
8820         check for _NotSameTuple.
8821         * include/std/tuple (_TMCT): New.
8822         * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
8823         * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
8824         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8825               const tuple<_UElements...>&)): Likewise.
8826         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8827               tuple<_UElements...>&&)): Likewise.
8828         * testsuite/20_util/tuple/cons/66338.cc: New.
8830 2016-05-25  Jonathan Wakely  <jwakely@redhat.com>
8832         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
8833         * configure: Regenerate.
8834         * config.h.in: Regenerate.
8836         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
8837         * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
8838         Remove const qualification on function. Replace
8839         _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
8840         (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
8841         (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
8843 2016-05-24  François Dumont  <fdumont@gcc.gnu.org>
8845         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
8846         * include/bits/hashtable_policy.h
8847         (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
8848         having load factor management.
8849         (_Mask_range_hashing): New.
8850         (__clp2): New.
8851         (_Power2_rehash_policy): New.
8852         (_Inserts<>): Remove last template parameter, _Unique_keys, so that
8853         partial specializations only depend on whether iterators are constant
8854         or not.
8855         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
8856         test new hash policy.
8857         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
8858         Likewise.
8859         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8860         Likewise.
8861         * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
8862         Likewise.
8863         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
8864         Likewise.
8865         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
8866         New.
8867         * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
8868         using the new hash policy.
8869         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
8871 2016-05-24  Jonathan Wakely  <jwakely@redhat.com>
8873         * include/bits/stl_queue.h (priority_queue::value_compare): Define.
8875 2016-05-23  François Dumont  <fdumont@gcc.gnu.org>
8877         * include/debug/safe_iterator.h
8878         (_Safe_iterator<>::operator->()): Implement using underlying iterator
8879         operator ->.
8880         * include/debug/safe_local_iterator.h
8881         (_Safe_local_iterator<>::operator->()): Likewise.
8883 2016-05-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
8885         * testsuite/experimental/memory_resource/1.cc: Add required argument
8886         to dg-require-atomic-builtins.
8888 2016-05-13  Jonathan Wakely  <jwakely@redhat.com>
8890         PR libstdc++/71073
8891         * include/debug/bitset: Add #pragma GCC system_header.
8892         * include/debug/deque: Likewise.
8893         * include/debug/list: Likewise.
8894         * include/debug/map: Likewise.
8895         * include/debug/set: Likewise.
8896         * include/debug/string: Likewise.
8897         * include/debug/unordered_map: Likewise.
8898         * include/debug/unordered_set: Likewise.
8899         * include/debug/vector: Likewise.
8900         * include/debug/functions.h: Adjust whitespace.
8902 2016-05-12  Jonathan Wakely  <jwakely@redhat.com>
8904         PR libstdc++/71081
8905         * testsuite/experimental/memory_resource/1.cc: Require atomics.
8907 2016-05-11  Jonathan Wakely  <jwakely@redhat.com>
8909         PR libstdc++/71049
8910         * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
8911         exception constructors with __sso_string parameters.
8913 2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
8915         * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
8916         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
8917         Test begin and end functions.
8918         * testsuite/experimental/filesystem/iterators/
8919         recursive_directory_iterator.cc: Likewise.
8921         PR libstdc++/71038
8922         * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
8923         * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
8925         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
8926         Overload operator* to move from rvalues.
8928         PR libstdc++/71036
8929         * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
8930         * testsuite/experimental/filesystem/operations/create_directory.cc:
8931         New test.
8933         PR libstdc++/71037
8934         * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
8935         base path to exception.
8936         * testsuite/experimental/filesystem/operations/canonical.cc: Test
8937         paths contained in exception.
8939         * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
8940         using declaration.
8942         PR libstdc++/71005
8943         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
8944         New type.
8945         (directory_iterator::operator++(int)): Return proxy.
8946         (recursive_directory_iterator::operator++(int)): Likewise.
8947         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
8948         Test post-increment.
8949         * testsuite/experimental/filesystem/iterators/
8950         recursive_directory_iterator.cc: Likewise.
8952 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
8954         PR libstdc++/71004
8955         * testsuite/experimental/filesystem/iterators/
8956         recursive_directory_iterator.cc: Fix test02 to not call member
8957         functions on invalid iterator, and use VERIFY not assert.
8959 2016-05-09  Ville Voutilainen  <ville.voutilainen@gmail.com>
8961         Avoid endless run-time recursion for copying single-element
8962         tuples where the element type is by-value constructible
8963         from any type.
8964         * include/std/tuple (_NotSameTuple): New.
8965         * include/std/tuple (tuple(_UElements&&...): Use it.
8966         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
8968 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
8970         PR libstdc++/71004
8971         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
8972         Initialize scalar member variables in default constructor.
8973         * testsuite/experimental/filesystem/iterators/
8974         recursive_directory_iterator.cc: Test default construction.
8976 2016-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8978         * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
8980 2016-05-05  Jonathan Wakely  <jwakely@redhat.com>
8982         * testsuite/experimental/filesystem/path/native/string.cc: Add
8983         dg-require-filesystem-ts directive.
8985 2016-05-04  Jonathan Wakely  <jwakely@redhat.com>
8987         PR libstdc++/70940
8988         * include/experimental/memory_resource
8989         (__resource_adaptor_imp::do_allocate): Do not default-construct
8990         rebound allocator.
8991         (__resource_adaptor_imp::do_deallocate): Likewise. Use
8992         allocator_traits to get pointer type.
8993         (__null_memory_resource::do_allocate): Remove unused parameters.
8994         (__null_memory_resource::do_deallocate): Likewise.
8995         (__null_memory_resource::do_is_equal): Likewise. Add return statement.
8996         * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
8997         * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
8998         move to ...
8999         * testsuite/experimental/memory_resource/1.cc: Here.
9000         * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
9001         * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
9003 2016-04-29  Chris Gregory  <czipperz@gmail.com>
9005         * config/*: Remove trailing whitespace.
9006         * src/*: Likewise.
9007         * testsuite/tr1/*: Likewise.
9008         * testsuite/util/*: Likewise.
9010 2016-04-28  Jonathan Wakely  <jwakely@redhat.com>
9012         PR libstdc++/70766
9013         * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
9014         __addressof.
9015         * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
9016         Likewise.
9017         * include/std/atomic (atomic<_Tp>): Likewise.
9018         * include/std/shared_mutex (shared_lock): Likewise.
9019         * testsuite/24_iterators/istream_iterator/70766.cc: New test.
9020         * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
9021         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
9022         * testsuite/29_atomics/atomic/70766.cc: New test.
9023         * testsuite/30_threads/shared_lock/70766.cc: New test.
9025         * include/bits/hashtable_policy.h (__detail::_Insert_base,
9026         __detail::_Insert): Improve comments.
9028 2016-04-27  Jonathan Wakely  <jwakely@redhat.com>
9030         PR libstdc++/70767
9031         * include/std/limits: Update comments about DRs.
9032         (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
9033         numeric_limits<const volatile _Tp>): Define unconditionally.
9035 2016-04-24  Jonathan Wakely  <jwakely@redhat.com>
9037         PR libstdc++/70762
9038         * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
9039         static counter to return a different path on every call.
9041 2016-04-22  Tim Shen  <timshen@google.com>
9043         PR libstdc++/70745
9044         * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
9045         Fix the match_not_bow and match_not_eow behavior.
9046         * testsuite/28_regex/regression.cc: Add testcase.
9048 2016-04-20  Jonathan Wakely  <jwakely@redhat.com>
9050         PR libstdc++/69703
9051         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
9052         __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
9054 2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
9056         PR libstdc++/69703
9057         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
9058         Override endianness bit in mode.
9059         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
9060         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
9061         that little_endian mode is ignored.
9062         * testsuite/experimental/filesystem/path/native/string.cc: New test.
9064         PR libstdc++/70609
9065         * src/filesystem/ops.cc (close_fd): New function.
9066         (do_copy_file): Set permissions before copying file contents. Check
9067         result of closing file descriptors. Don't copy streambuf when file
9068         is empty.
9069         (copy(const path&, const path&, copy_options, error_code&)): Use
9070         lstat for source file when copy_symlinks is set.
9071         * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
9073         * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
9074         operator~ operator&=, operator|=, operator^=): Add noexcept to
9075         overloaded operators for copy_options, perms and directory_options.
9076         * src/filesystem/ops.cc (make_file_type, make_file_status,
9077         is_not_found_errno, file_time): Add noexcept.
9079 2016-04-19  Edward Smith-Rowland  <3dw4rd@verizon.net>
9081         * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
9083 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
9085         PR libstdc++/41759
9086         * include/bits/random.h: Reword static assertion messages to state
9087         positive conditions.
9088         * include/bits/random.tcc: Likewise.
9089         * include/bits/uniform_int_dist.h: Likewise.
9090         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
9091         patterns.
9093         * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
9095         * config/cpu/sh/atomicity.h: Fix typo in comment.
9097         PR libstdc++/70294
9098         * include/std/thread (operator<, operator==): Move definitions to
9099         namespace-scope.
9100         * testsuite/30_threads/thread/id/70294.cc: New test.
9102         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
9103         -Wno-pedantic to dg-options.
9104         * testsuite/20_util/align/2.cc: Use type as operand of alignof.
9105         * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
9106         to dg-options.
9107         * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
9108         Remove extra semi-colon.
9109         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
9110         Always supply second argument to static_assert.
9111         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
9112         semi-colon.
9113         * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
9114         dg-options.
9115         * testsuite/26_numerics/complex/literals/values.cc: Likewise.
9116         * testsuite/29_atomics/atomic/60695.cc: Likewise.
9117         * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
9118         alignof when operand is an object not a type.
9119         * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
9120         * testsuite/decimal/make-decimal.cc: Likewise.
9121         * testsuite/experimental/type_traits/value.cc: Always supply second
9122         argument to static_assert.
9123         * testsuite/util/testsuite_common_types.h: Use __extension__ for
9124         __int128 types.
9126         * testsuite/experimental/type_erased_allocator/1.cc: Don't include
9127         internal header.
9128         * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
9129         * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
9130         * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
9131         Likewise. Add licence and change to compile-only test.
9133         * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
9134         unused parameter.
9135         * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
9137         * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
9138         warnings.
9140 2016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
9142         * include/bits/specfun.h: Trivial comment misspelling.
9144 2016-04-14  Jason Merrill  <jason@redhat.com>
9146         Revert Jonathan's empty ABI change from yesterday.
9148 2016-04-13  Martin Sebor  <msebor@redhat.com>
9150         PR c++/69517
9151         * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
9152         upper bound is positive.
9154 2016-04-13  Jonathan Wakely  <jwakely@redhat.com>
9156         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
9157         _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
9158         * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
9159         of functions taking empty structs by value. Add a template parameter
9160         to overloads without hints. Rename overloads with hints to
9161         _M_emplace_hint.
9162         (_Hashtable::_M_erase(true_type, const_iterator),
9163         _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
9164         by reordering parameters.
9165         * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
9166         _M_emplace_hint instead of _M_emplace.
9167         * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
9168         shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
9169         * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
9170         __shared_ptr): Likewise.
9171         * include/bits/stl_algo.h (replace_if): Likewise.
9172         * include/bits/stl_pair.h (piecewise_construct_t,
9173         piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
9174         * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
9175         __uses_alloc0): Likewise.
9176         * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
9177         * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
9178         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
9179         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
9180         * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
9181         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
9182         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
9184 2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
9186         Document C++17/TR29124 C++ Special Math Functions.
9187         * include/bits/specfun.h: Add Doxygen markup.
9189 2016-04-07  Jonathan Wakely  <jwakely@redhat.com>
9191         * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
9193 2016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
9195         * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
9196         * src/Makefile.in: Regenerate.
9198 2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
9200         PR libstdc++/70554
9201         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
9202         __atomic_fetch_add for bool.
9203         * configure: Regenerate.
9205         * testsuite/30_threads/thread/70503.cc: Require -static to work.
9207         PR libstdc++/70503
9208         * src/c++11/thread.cc (execute_native_thread_routine,
9209         execute_native_thread_routine_compat): Give internal linkage.
9210         * testsuite/30_threads/thread/70503.cc: New test.
9212 2016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
9214         PR libstdc++/70437
9215         * include/bits/stl_pair.h (_ConstructiblePair,
9216         _ImplicitlyConvertiblePair, _MoveConstructiblePair,
9217         _ImplicitlyMoveConvertiblePair): Add shortcut conditions
9218         for same-type cases.
9219         * testsuite/20_util/pair/70437.cc: New.
9221 2016-03-24  Jonathan Wakely  <jwakely@redhat.com>
9223         PR libstdc++/69945
9224         * config/abi/pre/gnu.ver: Add new symbol.
9225         * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
9226         * testsuite/18_support/free_eh_pool.cc: New test.
9228 2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9230         * include/Makefile.am (install-freestanding-headers): Add
9231         concept_check.h and move.h to the installed headers.
9232         * include/Makefile.in: Regenerated.
9233         * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
9234         freestanding implementations.
9235         * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
9236         that this macro has no effect for freestanding implementations.
9237         * doc/html/manual/using_macros.html: Likewise.
9239 2016-02-24  Jonathan Wakely  <jwakely@redhat.com>
9241         PR libstdc++/69939
9242         * include/experimental/tuple (__apply_impl): Qualify get and forward.
9244 2016-02-23  Jonathan Wakely  <jwakely@redhat.com>
9246         * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
9247         * doc/html/*: Regenerate.
9249         PR libstdc++/69893
9250         * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
9251         exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
9252         llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
9253         nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
9254         trunc) [__cplusplus >= 201103L]: Import from namespace std.
9255         (fabs) [__cplusplus < 201103L]: Import from namespace std.
9256         * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
9257         Likewise.
9258         * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
9259         namespace before including TR1 headers.
9260         * testsuite/tr1/headers/c++200x/math.cc: New test.
9262 2016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9264         PR libstdc++/69881
9265         * include/c_global/cstdarg: Undefine __need___va_list.
9266         * include/c_global/cstddef: Undefine all kinds of __need_*.
9268 2016-02-16  Tim Shen  <timshen@google.com>
9270         PR libstdc++/69794
9271         * include/bits/regex_scanner.h: Add different special character
9272         sets for grep and egrep regex.
9273         * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
9274         * testsuite/28_regex/regression.cc: Add new testcase.
9276 2016-02-08  Jonathan Wakely  <jwakely@redhat.com>
9278         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
9279         added 'constexpr' in previous commit.
9280         * configure: Regenerate.
9282         PR libstdc++/48891
9283         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
9284         checks for all targets except *-*-solaris2.* and ensure we find the
9285         libc math.h header not our own.
9286         * configure: Regenerate.
9288 2016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
9290         * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
9291         New file.  Copied over from s390-linux-gnu.
9293 2016-02-04  Jonathan Wakely  <jwakely@redhat.com>
9295         PR libstdc++/69626
9296         * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
9297         with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
9298         * config.h.in: Regenerate.
9299         * configure: Regenerate.
9300         * testsuite/21_strings/c_strings/char/69626.cc: New.
9302         * doc/html/index.html: Regenerate.
9304         * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
9305         * doc/xml/manual/spine.xml: Update copyright years and author blurb.
9306         * doc/html/*: Regenerate.
9308 2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
9310         PR libstdc++/69581
9311         * include/c_compatibility/math.h: Move header guards.
9312         * include/c_compatibility/stdlib.h: Likewise.
9314 2016-01-29  Jonathan Wakely  <jwakely@redhat.com>
9316         PR libstdc++/69506
9317         * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9319 2016-01-28  John David Anglin  <danglin@gcc.gnu.org>
9321         PR libstdc++/69450
9322         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
9323         isinf and isnan functions into two independent checks.  Check on hpux.
9324         * config.h.in: Regenerate.
9325         * configure: Regenerate.
9326         * include/c_global/cmath (isinf(double), isnan(double)): Use
9327         _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
9328         respectively.
9330 2016-01-27  Jakub Jelinek  <jakub@redhat.com>
9332         * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
9334 2016-01-27  Jonathan Wakely  <jwakely@redhat.com>
9336         PR libstdc++/69295
9337         * testsuite/ext/special_functions/hyperg/check_value.cc: Use
9338         -ffp-contract=off, and -ffloat-store to disable excess precision.
9339         * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
9340         -ffp-contract=off.
9342 2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
9344         PR libstdc++/69478
9345         * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
9346         random_access_iterator_tag>): Check is_move_assignable when moving.
9347         (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
9348         Likewise.
9349         * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
9350         * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
9351         * testsuite/25_algorithms/move/69478.cc: New.
9352         * testsuite/25_algorithms/move_backward/69478.cc: new.
9354 2016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
9356         * include/c_compatibility/stdlib.h: Include wide character related
9357         definitions only when they are available in cstdlib.
9359 2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
9361         PR libstdc++/69464
9362         * include/Makefile.am: Add new header.
9363         * include/Makefile.in: Regenerate.
9364         * include/bits/random.h (uniform_int_distribution): Move to
9365         bits/uniform_int_dist.h.
9366         * include/bits/random.tcc (uniform_int_distribution::operator(),
9367         uniform_int_distribution::__generate_impl): Likewise.
9368         * include/bits/uniform_int_dist.h: New header.
9369         * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
9370         <bits/uniform_int_dist.h> instead of <random>.
9371         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
9372         move_iterators/1.cc: Include correct header for uninitialized_copy.
9373         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
9374         move_iterators/1.cc: Likewise.
9375         * testsuite/25_algorithms/nth_element/58800.cc: Include correct
9376         header for vector.
9377         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
9379 2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
9381         PR libstdc++/69446
9382         * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9384 2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
9386         TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
9387         * include/c_compatibility/math.h: Import the TR29124 functions
9388         into the global namespace.
9389         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
9390         xfail and make compile-only.
9391         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
9392         * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
9393         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
9394         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
9395         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
9396         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
9397         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
9398         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
9399         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
9400         * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
9401         * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
9402         * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
9403         * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
9404         * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
9405         * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
9406         * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
9407         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
9408         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
9409         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
9410         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
9412 2016-01-22  Jonathan Wakely  <jwakely@redhat.com>
9414         PR libstdc++/69116
9415         * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
9416         define result_type for types which can be safely used with valarrays.
9417         * testsuite/26_numerics/valarray/69116.cc: New.
9419         PR libstdc++/69413
9420         * config/os/gnu-linux/os_defines.h: Define
9421         _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
9422         * include/c_global/cmath (isinf, isnan): Check it.
9423         * doc/xml/manual/internals.xml: Document it.
9424         * doc/html/*: Regenerate.
9426 2016-01-21  Jonathan Wakely  <jwakely@redhat.com>
9428         PR libstdc++/69406
9429         * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
9430         * include/ext/type_traits.h: Likewise.
9431         * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
9432         for presence of C headers.
9433         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
9434         dg-error line number.
9435         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
9436         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
9437         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
9439 2016-01-20  Torvald Riegel  <triegel@redhat.com>
9441         PR libstdc++/69310
9442         * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9444 2016-01-20  Jonathan Wakely  <jwakely@redhat.com>
9446         PR libstdc++/60401
9447         * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
9448         copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
9449         lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
9450         nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
9451         tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
9452         Add using declarations.
9453         * testsuite/26_numerics/headers/cmath/60401.cc: New.
9455         PR libstdc++/69386
9456         * include/c_global/ccomplex: Ensure C++ language linkage.
9457         * include/c_global/cmath: Likewise.
9458         * include/c_global/cstdlib: Likewise.
9459         * include/c_global/ctgmath: Likewise.
9460         * testsuite/17_intro/headers/c++2011/linkage.cc: New.
9462 2016-01-19  Jonathan Wakely  <jwakely@redhat.com>
9464         PR libstdc++/14608
9465         PR libstdc++/60401
9466         * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
9467         --enable-cheaders=c_global configs.
9468         * include/Makefile.in: Regenerate.
9469         * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
9470         test and allow inclusion from C files.
9471         * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
9472         (at_quick_exit, quick_exit): Add using directives.
9473         * include/c_global/cmath: Use #include_next for math.h.
9474         * include/c_global/cstdlib: Use #include_next for stdlib.h.
9475         * testsuite/26_numerics/headers/cmath/14608.cc: New.
9476         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
9477         Remove xfail for most targets.
9478         * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
9480 2016-01-18  Torvald Riegel  <triegel@redhat.com>
9482         * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
9483         (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
9484         and move after its definition.
9485         * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
9486         * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
9487         __GXX_WEAK__, and only provide transactional clones if
9488         _GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
9489         functions.
9491 2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
9493         PR libstdc++/60637
9494         * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
9496         PR libstdc++/69243
9497         * include/std/functional (_Function_base::_M_not_empty_function):
9498         Change overloads for pointers to take arguments by value.
9499         * testsuite/20_util/function/cons/57465.cc: Add tests for
9500         pointer-to-member cases.
9502         PR libstdc++/69340
9503         * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
9504         Use macros for exception handling and fix unused parameter warning.
9506 2016-01-17  John David Anglin  <danglin@gcc.gnu.org>
9508         PR libstdc++/68734
9509         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
9511 2016-01-17  Torvald Riegel  <triegel@redhat.com>
9513         * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
9515 2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
9517         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
9518         __int128 symbols.
9520 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
9522         PR libstdc++/69293
9523         * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
9524         static assertion that type is constructible from the arguments.
9525         * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
9526         * testsuite/20_util/uses_allocator/69293_neg.cc: New.
9527         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
9529         PR libstdc++/69294
9530         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9531         and isnan on AIX. Quote variables.
9532         * configure: Regenerate.
9534 2016-01-15  Torvald Riegel  <triegel@redhat.com>
9536         * include/bits/basic_string.h (basic_string): Declare friends.
9537         * include/bits/c++config (_GLIBCXX_TXN_SAFE,
9538         _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
9539         * include/std/stdexcept (logic_error, domain_error, invalid_argument,
9540         length_error, out_of_range, runtime_error, range_error,
9541         underflow_error, overflow_error): Declare members as transaction-safe.
9542         (logic_error, runtime_error): Declare friend functions.
9543         * libsupc++/exception (exception, bad_exception): Declare members as
9544         transaction-safe.
9545         * src/c++11/cow-stdexcept.cc: Define transactional clones for the
9546         transaction-safe members of exceptions and helper functions.
9547         * libsupc++/eh_exception.cc: Adjust and define transactional clones.
9548         * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
9549         (CXXABI_1.3.10): New.
9550         * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
9551         (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
9552         * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
9553         * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
9554         * include/Makefile.in: Regenerate.
9555         * config.h.in: Regenerate.
9556         * configure: Regenerate.
9557         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
9559 2016-01-15  Steve Ellcey  <sellcey@imgtec.com>
9561         * include/ext/random.tcc: Use __builtin_isfinite instead of
9562         std::isfinite.
9564 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
9566         * include/bits/std_mutex.h: Fix Doxygen @file name.
9568 2016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
9569             Jonathan Wakely  <jwakely@redhat.com>
9570             Florian Goth <CaptainSifff@gmx.de>
9572         Implement TR29124 C++ special Math Functions.
9573         * include/Makefile.am: Add new headers.
9574         * include/Makefile.in: Regenerate.
9575         * include/bits/specfun.h: New.
9576         * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
9577         * include/tr1/bessel_function.tcc: Ditto.
9578         * include/tr1/beta_function.tcc: Ditto.
9579         * include/tr1/cmath: Ditto.
9580         * include/tr1/ell_integral.tcc: Ditto.
9581         * include/tr1/exp_integral.tcc: Ditto.
9582         * include/tr1/gamma.tcc: Ditto.
9583         * include/tr1/hypergeometric.tcc: Ditto.
9584         * include/tr1/legendre_function.tcc: Ditto.
9585         * include/tr1/modified_bessel_func.tcc: Ditto.
9586         * include/tr1/poly_hermite.tcc: Ditto.
9587         * include/tr1/poly_laguerre.tcc: Ditto.
9588         * include/tr1/riemann_zeta.tcc: Ditto.
9589         * include/tr1/special_function_util.h: Ditto.
9590         * testsuite/ext/special_functions/conf_hyperg: New.
9591         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
9592         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
9593         * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
9594         * testsuite/ext/special_functions/hyperg: New.
9595         * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
9596         * testsuite/ext/special_functions/hyperg/check_value.cc: New.
9597         * testsuite/ext/special_functions/hyperg/compile.cc: New.
9598         * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
9599         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
9600         * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
9601         * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
9602         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
9603         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
9604         * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
9605         * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
9606         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
9607         * testsuite/special_functions/03_beta/check_nan.cc: New.
9608         * testsuite/special_functions/03_beta/check_value.cc: New.
9609         * testsuite/special_functions/03_beta/compile.cc: New.
9610         * testsuite/special_functions/03_beta/compile_2.cc: New.
9611         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
9612         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
9613         * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
9614         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
9615         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
9616         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
9617         * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
9618         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
9619         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
9620         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
9621         * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
9622         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
9623         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
9624         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
9625         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
9626         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
9627         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
9628         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
9629         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
9630         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
9631         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
9632         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
9633         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
9634         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
9635         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
9636         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
9637         * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
9638         * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
9639         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
9640         * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
9641         * testsuite/special_functions/11_ellint_1/check_value.cc: New.
9642         * testsuite/special_functions/11_ellint_1/compile.cc: New.
9643         * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
9644         * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
9645         * testsuite/special_functions/12_ellint_2/check_value.cc: New.
9646         * testsuite/special_functions/12_ellint_2/compile.cc: New.
9647         * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
9648         * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
9649         * testsuite/special_functions/13_ellint_3/check_value.cc: New.
9650         * testsuite/special_functions/13_ellint_3/compile.cc: New.
9651         * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
9652         * testsuite/special_functions/14_expint/check_nan.cc: New.
9653         * testsuite/special_functions/14_expint/check_value.cc: New.
9654         * testsuite/special_functions/14_expint/compile.cc: New.
9655         * testsuite/special_functions/14_expint/compile_2.cc: New.
9656         * testsuite/special_functions/15_hermite/check_nan.cc: New.
9657         * testsuite/special_functions/15_hermite/check_value.cc: New.
9658         * testsuite/special_functions/15_hermite/compile.cc: New.
9659         * testsuite/special_functions/15_hermite/compile_2.cc: New.
9660         * testsuite/special_functions/16_laguerre/check_nan.cc: New.
9661         * testsuite/special_functions/16_laguerre/check_value.cc: New.
9662         * testsuite/special_functions/16_laguerre/compile.cc: New.
9663         * testsuite/special_functions/16_laguerre/compile_2.cc: New.
9664         * testsuite/special_functions/17_legendre/check_nan.cc: New.
9665         * testsuite/special_functions/17_legendre/check_value.cc: New.
9666         * testsuite/special_functions/17_legendre/compile.cc: New.
9667         * testsuite/special_functions/17_legendre/compile_2.cc: New.
9668         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
9669         * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
9670         * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
9671         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
9672         * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
9673         * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
9674         * testsuite/special_functions/19_sph_bessel/compile.cc: New.
9675         * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
9676         * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
9677         * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
9678         * testsuite/special_functions/20_sph_legendre/compile.cc: New.
9679         * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
9680         * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
9681         * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
9682         * testsuite/special_functions/21_sph_neumann/compile.cc: New.
9683         * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
9684         * testsuite/util/specfun_testcase.h: New.
9685         * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
9686         * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
9687         * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
9688         * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
9689         * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
9690         * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
9691         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
9693 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
9695         PR libstdc++/48891
9696         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9697         and isnan functions.
9698         * config.h.in: Regenerate.
9699         * configure: Regenerate.
9700         * include/c_global/cmath (isinf(double), isnan(double))
9701         [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
9702         * testsuite/26_numerics/headers/cmath/48891.cc: New.
9704 2016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
9706         PR libstdc++/66006
9707         * configure.host (abi_baseline_pair): Use separate baseline for
9708         Solaris 11+ and Solaris 10 with gld.
9709         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
9710         * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
9711         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
9713 2016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
9715         PR libstdc++/68877
9716         * include/std/type_traits: Following N4511, reimplement __is_swappable
9717         and __is_nothrow_swappable. Move __is_swappable to namespace std,
9718         adjust callers. Use __is_nothrow_swappable in swap.
9719         * include/bits/move.h: Use __is_nothrow_swappable in swap.
9720         * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
9721         __is_swappable related tests.
9722         * testsuite/20_util/is_swappable/value.cc: New.
9723         * testsuite/20_util/is_swappable/requirements/
9724         explicit_instantiation.cc: New.
9725         * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
9726         * testsuite/25_algorithms/swap/68877.cc: New.
9728 2016-01-12  Jonathan Wakely  <jwakely@redhat.com>
9730         * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
9732         PR libstdc++/69005
9733         PR libstdc++/69222
9734         * include/std/functional (function::_Invoke): Remove, use result_of.
9735         (function::_Callable): Replace alias template with class template
9736         and use partial specialization instead of _NotSelf alias template.
9737         (function(_Functor)): Add "not self" constraint so that _Callable is
9738         not used while type is incomplete.
9739         * testsuite/20_util/function/69222.cc: New.
9741 2016-01-11  Jonathan Wakely  <jwakely@redhat.com>
9743         PR libstdc++/60976
9744         * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
9745         Define partial specialization.
9746         * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
9747         destroy members to std::allocator explicit specialization.
9749 2016-01-08  Jonathan Wakely  <jwakely@redhat.com>
9751         * testsuite/26_numerics/headers/cmath/
9752         c99_classification_macros_c++.cc: Rename to ...
9753         * testsuite/26_numerics/headers/cmath/
9754         c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
9755         * testsuite/26_numerics/headers/cmath/
9756         c99_classification_macros_c++0x.cc: Rename to ...
9757         * testsuite/26_numerics/headers/cmath/
9758         c99_classification_macros_c++11.cc: Here.
9760         PR libstdc++/69190
9761         * include/bits/uses_allocator.h: Add missing include.
9763 2016-01-07  Jonathan Wakely  <jwakely@redhat.com>
9765         PR libstdc++/69105
9766         PR libstdc++/69106
9767         PR libstdc++/69114
9768         * include/bits/stl_iterator.h (back_insert_iterator,
9769         front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
9770         * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
9771         * include/std/future (__future::base::_State_baseV2::__setter):
9772         Likewise.
9773         * include/std/scoped_allocator (__outermost): Likewise.
9774         * testsuite/20_util/scoped_allocator/69114.cc: New.
9775         * testsuite/20_util/uses_allocator/69114.cc: New.
9776         * testsuite/30_threads/promise/69106.cc: New.
9778 2016-01-06  Jonathan Wakely  <jwakely@redhat.com>
9780         PR libstdc++/69092
9781         * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
9782         Remove _GLIBCXX_NOEXCEPT.
9783         testsuite/21_strings/basic_string/cons/char/69092.cc: New.
9785         * include/Makefile.am: Adjust.
9786         * include/Makefile.in: Regenerate.
9787         * include/bits/mutex.h: Rename to bits/std_mutex.h.
9788         * include/std/condition_variable: Adjust include.
9789         * include/std/mutex: Likewise.
9791 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
9793         Update copyright years.
9795 Copyright (C) 2016 Free Software Foundation, Inc.
9797 Copying and distribution of this file, with or without modification,
9798 are permitted in any medium without royalty provided the copyright
9799 notice and this notice are preserved.