* g++.dg/debug/dwarf2/ref-3.C: XFAIL AIX.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob71ef4cfa26938efbc7c65fcac652fa9a0f7e53ae
1 2016-10-28  Jonathan Wakely  <jwakely@redhat.com>
3         * include/experimental/bits/fs_path.h (__is_path_src)
4         (_S_range_begin, _S_range_end): Overload to treat string_view as a
5         Source object.
6         (path::operator+=, path::compare): Overload for basic_string_view.
7         * testsuite/experimental/filesystem/path/construct/string_view.cc:
8         New test.
9         * testsuite/experimental/filesystem/path/construct/
10         string_view_cxx17.cc: New test.
12         * include/experimental/bits/fs_path.h
13         (path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
14         iterator's value_type.
15         (path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
16         Do not use operation not supported by input iterators.
17         (path::__is_path_iter_src): Add partial specialization for const
18         encoded character types.
19         * testsuite/experimental/filesystem/path/construct/range.cc: Test
20         construction from input iterators with const value types.
22         * doc/xml/manual/status_cxx2017.xml: Update status.
23         * doc/html/*: Regenerate.
24         * include/std/type_traits (has_unique_object_representations): Guard
25         with __has_builtin check.
26         * libsupc++/new (launder): Define for C++17.
27         * testsuite/18_support/launder/1.cc: New test.
28         * testsuite/18_support/launder/requirements.cc: New test.
29         * testsuite/18_support/launder/requirements_neg.cc: New test.
31 2016-10-27  Uros Bizjak  <ubizjak@gmail.com>
33         PR libstdc++/70975
34         * src/filesystem/ops.cc (do_copy_file) [_GLIBCXX_USE_SENDFILE]:
35         Pass non-null pointer to sendfile for offset argument.
37 2016-10-27  Jonathan Wakely  <jwakely@redhat.com>
39         * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
40         default.cc: Fix effective target selector.
41         * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
42         parms.cc: Likewise.
43         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
44         equal.cc: Likewise.
45         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
46         generate.cc: Likewise.
47         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
48         inequal.cc: Likewise.
49         * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
50         serialize.cc: Likewise.
52         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
53         Use end() function to get end iterator.
54         * testsuite/experimental/filesystem/iterators/pop.cc: Remove printf
55         statements that were present for debugging.
56         * testsuite/experimental/filesystem/iterators/
57         recursive_directory_iterator.cc: Use end() function to get end
58         iterator.
59         * testsuite/experimental/filesystem/operations/last_write_time.cc:
60         Only require file timestamps to be accurate to one second.
62 2016-10-26  François Dumont  <fdumont@gcc.gnu.org>
64         * include/bits/stl_map.h (map()): Make default.
65         * include/bits/stl_multimap.h (multimap()): Likewise.
66         * include/bits/stl_multiset.h (multiset()): Likewise.
67         * include/bits/stl_set.h (set()): Likewise.
68         * include/bits/stl_tree.h (_Rb_tree_impl()): Add conditional noexcept.
69         (_Rb_tree()): Make default.
71 2016-10-26  Bernd Edlinger  <bernd.edlinger@hotmail.de>
73         PR libstdc++/78110
74         * libsupc++/new_opa.cc: Don't include <malloc.h> in a free standing
75         environment.  Declare memalign directly in that case.
77 2016-10-26  Jonathan Wakely  <jwakely@redhat.com>
79         * testsuite/experimental/filesystem/iterators/pop.cc: Remove
80         unreliable dependency on directory order.
82 2016-10-26  Edward Smith-Rowland  <3dw4rd@verizon.net>
84         Implement uniform_inside_sphere_distribution extension.
85         * include/ext/random: Implement uniform_inside_sphere_distribution.
86         * include/ext/random.tcc: Ditto.
87         * testsuite/ext/random/uniform_inside_sphere_distribution/
88         cons/default.cc: New.
89         * testsuite/ext/random/uniform_inside_sphere_distribution/
90         cons/parms.cc: New.
91         * testsuite/ext/random/uniform_inside_sphere_distribution/
92         operators/equal.cc: New.
93         * testsuite/ext/random/uniform_inside_sphere_distribution/
94         operators/generate.cc: New.
95         * testsuite/ext/random/uniform_inside_sphere_distribution/
96         operators/inequal.cc: New.
97         * testsuite/ext/random/uniform_inside_sphere_distribution/
98         operators/serialize.cc: New.
100 2016-10-26  Jonathan Wakely  <jwakely@redhat.com>
102         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
103         Overload pop (LWG 2706).
104         * src/filesystem/dir.cc (recursive_directory_iterator::pop): Define
105         new overload.
106         * testsuite/experimental/filesystem/iterators/pop.cc: New test.
108         * src/filesystem/dir.cc (recursive_directory_iterator::increment):
109         Reset state on error.
110         * testsuite/experimental/filesystem/iterators/
111         recursive_directory_iterator.cc: Check state after increment error.
113         PR libstdc++/78111
114         * src/filesystem/ops.cc (canonical): Set error for non-existent path.
116 2016-10-26  Uros Bizjak  <ubizjak@gmail.com>
118         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
119         for PATH_MAX in realpath test.
120         * configure: Regenerate.
122 2016-10-25  Jonathan Wakely  <jwakely@redhat.com>
124         * src/filesystem/ops.cc
125         (last_write_time(const path&, file_time_type, error_code&)): Handle
126         negative times correctly.
127         * testsuite/experimental/filesystem/operations/last_write_time.cc:
128         Test writing file times.
130         * src/filesystem/ops.cc (do_copy_file): Report an error if source or
131         destination is not a regular file (LWG 2712).
132         (equivalent): Fix error handling and result when only one file exists.
133         * testsuite/experimental/filesystem/operations/copy.cc: Remove files
134         created by tests. Test copying directories.
135         * testsuite/experimental/filesystem/operations/copy_file.cc: Remove
136         files created by tests.
137         * testsuite/experimental/filesystem/operations/equivalent.cc: New.
138         * testsuite/experimental/filesystem/operations/is_empty.cc: New.
139         * testsuite/experimental/filesystem/operations/read_symlink.cc: Remove
140         file created by test.
141         * testsuite/experimental/filesystem/operations/remove_all.cc: New.
142         * testsuite/util/testsuite_fs.h (~scoped_file): Only try to remove
143         file if path is non-empty, to support removal by other means.
145 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
147         * src/filesystem/ops.cc (is_empty): Fix error handling.
148         * testsuite/experimental/filesystem/operations/is_empty.cc: New test.
150         PR libstdc++/71337
151         * src/filesystem/ops.cc (temp_directory_path): Pass error_code
152         argument to other filesystem operations.
153         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
154         Add testcase for inaccessible directory.
156         * src/filesystem/dir.cc (open_dir): Return same value for errors
157         whether ignored or not.
158         (_Dir::advance(error_code*, directory_options)): Return false on
159         error.
160         (directory_iterator(const path&, directory_options, error_code*)):
161         Create end iterator on error (LWG 2723).
162         (recursive_directory_iterator(const path&, directory_options,
163         error_code*)): Likewise.
164         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
165         Update expected behaviour on error.
166         * testsuite/experimental/filesystem/iterators/
167         recursive_directory_iterator.cc: Likewise.
169         * src/filesystem/ops.cc (close_fd): Remove.
170         (do_copy_file): Just use close(3) instead of close_fd, to prevent
171         retrying on error.
173         * src/filesystem/ops.cc (do_copy_file): Return an error if either
174         source or destination is not a regular file.
175         (copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
176         resolutions.
177         (read_symlink): Add missing ec.clear().
178         * testsuite/experimental/filesystem/operations/copy.cc: Update
179         expected behaviour for copying directories with create_symlinks.
180         Verify that error_code arguments are cleared if there's no error.
181         * testsuite/experimental/filesystem/operations/read_symlink.cc: New.
183 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
185         Cross-port exception-safety and move fixes of std::any to
186         std::experimental::any.
187         * include/experimental/any (operator=(const any&)):
188         Make strongly exception-safe.
189         (operator=(any&&)): clear() unconditionally in the case where
190         rhs has a value.
191         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
192         * testsuite/experimental/any/assign/2.cc: Adjust.
193         * testsuite/experimental/any/assign/exception.cc: New.
194         * testsuite/experimental/any/cons/2.cc: Adjust.
195         * testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.
197 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
199         Cross-port the latest resolution of LWG2756 and some
200         bug-fixes to experimental::optional.
201         PR libstdc++/77288
202         PR libstdc++/77727
203         * include/experimental/optional (_Optional_base):
204         Remove constructors that take a _Tp.
205         (__is_optional_impl, __is_optional): Remove.
206         (__converts_from_optional): New.
207         (optional(_Up&&)): Fix constraints, call base with in_place.
208         (optional(const optional<_Up>&)): Fix constraints, use emplace.
209         (optional(optional<_Up>&&)): Likewise.
210         (operator=(_Up&&)): Fix constraints.
211         (operator=(const optional<_Up>&)): Likewise.
212         (operator=(optional<_Up>&&)): Likewise.
213         (emplace(_Args&&...)): Constrain.
214         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
215         * testsuite/experimental/optional/77288.cc: New.
216         * testsuite/experimental/optional/assignment/5.cc: Adjust.
217         * testsuite/experimental/optional/cons/77727.cc: New.
218         * testsuite/experimental/optional/cons/value.cc: Adjust.
220 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
222         * include/bits/stl_vector.h (vector::_M_data_ptr, vector::data):
223         Change return type of non-standard C++98 extension to match C++11.
225 2016-10-22  François Dumont  <fdumont@gcc.gnu.org>
227         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_ALGO)
228         (_GLIBCXX_END_NAMESPACE_ALGO): Default to respectively
229         _GLIBCXX_BEGIN_NAMESPACE_VERSION and _GLIBCXX_END_NAMESPACE_VERSION.
230         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER, _GLIBCXX_END_NAMESPACE_CONTAINER):
231         Likewise.
233 2016-10-22  Jonathan Wakely  <jwakely@redhat.com>
235         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
236         Ignore symlink_nofollow flag if file is not a symlink.
237         * testsuite/experimental/filesystem/operations/permissions.cc: Test
238         symlink_nofollow on non-symlinks.
240 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
242         * include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
243         Replace with symlink_nofollow (LWG 2720).
244         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
245         Handle symlink_nofollow.
246         * testsuite/experimental/filesystem/operations/create_symlink.cc: New
247         test.
248         * testsuite/experimental/filesystem/operations/permissions.cc: Test
249         overload taking error_code.
251         * include/experimental/bits/fs_ops.h
252         (exists(const path&, error_code&)): Clear error if status is known
253         (LWG 2725).
254         (status(const path&, error_code&)): Handle EOVERFLOW.
255         * testsuite/experimental/filesystem/operations/exists.cc: Test
256         overload taking an error_code.
258         * include/experimental/bits/fs_path.h (path::path(string_type&&))
259         (path::operator=(string&&), path::assign(string_type&&)): Define
260         construction and assignment from string_type rvalues (LWG 2707).
262 2016-10-21  Eelis van der Weegen  <eelis@eelis.net>
264         * include/bits/stl_algo.h (__gen_two_uniform_ints): Move logic out
265         of shuffle into new function.
266         (shuffle): Call __gen_two_uniform_ints.
267         (__sample<ForwardIterator, OutputIterator, Cat, Size, URBG>): Use
268         __gen_two_uniform_ints and perform two samples at a time.
270 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
272         * include/Makefile.am: Add <bits/refwrap.h> and <bits/std_function.h>.
273         Order alphabetically.
274         * include/Makefile.in: Regenerate.
275         * include/bits/refwrap.h: New header.
276         (_Maybe_get_result_type,_Weak_result_type_impl, _Weak_result_type)
277         (_Reference_wrapper_base_impl, _Reference_wrapper_base)
278         (reference_wrapper, ref, cref): Move here from <functional>.
279         * include/bits/shared_ptr_base.h: Include <bits/refwrap.h> and
280         <bits/stl_function.h> instead of <functional>.
281         * include/bits/std_function.h: New header.
282         (_Maybe_unary_or_binary_function, bad_function_call)
283         (__is_location_invariant, _Nocopy_types, _Any_data)
284         (_Simple_type_wrapper, _Function_base, _Function_handler, function):
285         Move here from <functional>.
286         * include/bits/unique_ptr.h: Include <bits/stl_function.h>.
287         * include/std/functional: Include new headers and move components to
288         them.
289         * include/std/future: Include <bits/std_function.h> instead of
290         <functional>.
291         * include/std/mutex: Likewise.
292         * include/std/regex: Likewise.
293         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
294         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
295         * testsuite/20_util/default_delete/void_neg.cc: Likewise.
296         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
297         lines.
298         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
299         * testsuite/30_threads/packaged_task/49668.cc: Include <functional>.
301         * libsupc++/exception_ptr.h (make_exception_ptr): Qualify new.
302         * testsuite/18_support/exception_ptr/make_exception_ptr_2.cc: New
303         test.
305 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
307         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
308         (shared_ptr(auto_ptr&&)): Adjust template parameter lists.
309         * include/bits/shared_ptr.h (__sp_compatible_with)
310         (__sp_is_constructible): New helper traits for shared_ptr.
311         (shared_ptr::_Convertible): Replace with _Constructible.
312         (shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
313         to base class.
314         (shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
315         with _Constructible and _Assignable.
316         (shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
317         instead of _Tp.
318         (operator<): Likewise.
319         (operator>): Define in terms of operator<.
320         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
321         element_type instead of _Tp.
322         (reinterpret_pointer_cast): Define for C++17.
323         (weak_ptr::_Convertible): Replace with _Constructible.
324         (weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
325         to base class.
326         (weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
327         with _Constructible and _Assignable.
328         * include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
329         with _Compatible.
330         (__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
331         (__shared_ptr::_Compatible): New constraint for converting from
332         other types of shared_ptr and weak_ptr.
333         (__shared_ptr::_Assignable): Define in terms of _Compatible.
334         (__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
335         constraints for converting from unique_ptr.
336         (__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
337         template with _SaveConf, _Compatible and _Assignable. Remove
338         __glibcxx_function_requires concept checks. Add static assertion for
339         deleter expression being well-formed.
340         (__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
341         (__shared_ptr::operator*, __shared_ptr::operator->)
342         (__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
343         of _Tp.
344         (operator<): Likewise.
345         (operator>): Define in terms of operator<.
346         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
347         element_type instead of _Tp.
348         (reinterpret_pointer_cast): Define for C++17.
349         (weak_ptr::_Convertible): Replace with _Compatible.
350         (weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
351         conversions from other types of weak_ptr and shared_ptr.
352         (__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
353         with _Constructible and _Assignable.
354         (__weak_ptr::_M_ptr): Use element_type instead of _Tp.
355         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
356         dg-error pattern.
357         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
358         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
359         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
360         * testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.
362 2016-10-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
364         Do the operator= SFINAE in the return type for optional,
365         not in the template parameters.
366         * include/std/optional (operator=(_Up&&)): Move SFINAE
367         from template parameters to the return type.
368         (operator=(const optional<_Up>&)): Likewise.
369         (operator=(optional<_Up>&&)): Likewise.
371 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
373         * include/bits/allocator.h: Remove trailing whitespace, tab-indent.
374         * include/ext/new_allocator.h: Likewise.
376         PR libstdc++/78052
377         * include/bits/allocator.h (allocator<void>::construct)
378         (allocator<void>::destroy): Define.
379         * testsuite/20_util/allocator/void.cc: New test.
381         * testsuite/20_util/enable_shared_from_this/56383.cc: Add tests for
382         additional ambiguous cases.
384 2016-10-19  Jonathan Wakely  <jwakely@redhat.com>
386         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&)): Call
387         _M_enable_shared_from_this_with instead of
388         __enable_shared_from_this_helper.
389         * include/bits/shared_ptr.h (__enable_shared_from_this_helper):
390         Remove overload for std::enable_shared_from_this..
391         (__enable_shared_from_this_base): Define friend function to select a
392         std::enable_shared_from_this base class.
393         * include/bits/shared_ptr_base.h (__enable_shared_from_this_helper):
394         Remove all overloads.
395         (__shared_ptr): Change all relevant constructors to call
396         _M_enable_shared_from_this_with instead of
397         __enable_shared_from_this_helper.
398         (__shared_ptr::__efst_base_t, __shared_ptr::__has_efst_base): Helpers
399         to detect accessible and unambiguous enable_shared_from_this bases.
400         (__shared_ptr::_M_enable_shared_from_this_with): New function to
401         replace __enable_shared_from_this_helper overloads.
402         (__enable_shared_from_this_helper): Remove overload for
403         std::__enable_shared_from_this.
404         (__enable_shared_from_this_base): Define friend function to select a
405         std::__enable_shared_from_this base class.
406         * include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
407         Change relevant constructors to call _M_enable_shared_from_this_with.
408         (experimental::shared_ptr::__efst_base_t)
409         (experimental::shared_ptr::__has_efst_base): Helpers to detect
410         accessible and unambiguous enable_shared_from_this bases.
411         (experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
412         (experimental::__enable_shared_from_this_helper): Remove overload for
413         std::experimental::enable_shared_from_this.
414         (experimental::__expt_enable_shared_from_this_base): Define friend
415         function to select a std::experimental::enable_shared_from_this base.
416         * testsuite/experimental/memory/shared_ptr/cons/
417         enable_shared_from_this.cc: New test.
418         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
419         Adjust expected behaviour for shared_ptr<A[]>.
421         * include/debug/vector (__gnu_debug::vector::emplace_back): Fix return
422         type.
424         * include/backward/auto_ptr.h (dauto_ptr): Correct comment about
425         conversions from auto_ptr<Derived> rvalues to auto_ptr<Base>.
426         * testsuite/20_util/auto_ptr/assign_neg.cc: Remove redundant dg-error
427         directives that only match notes, not errors.
429         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
430         Add tests for valid and invalid conversions.
431         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
432         Likewise.
434         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
435         to new file.
436         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file.  Fix
437         test for incompatible deleters to not also use incompatible types.
438         Add tests for incompatible array types.
440         * include/experimental/bits/shared_ptr.h
441         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
442         is_convertible for non-array specialization.
443         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
444         constraint for conversions from unique_ptr.
445         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
446         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
447         (__sp_compatible_v): New variable template for trait.
448         (__sp_is_constructible): New trait to check shared_ptr constraints.
449         (__sp_is_constructible_v): New variable template for trait.
450         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
451         constraint for construction/reset, using __sp_is_constructible_v.
452         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
453         constraint for conversions from unique_ptr.
454         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
455         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
456         (shared_ptr::_SafeConv): Constraint for checking constructors.
457         (shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
458         (shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
459         (shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
460         (shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
461         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
462         Remove tests using invalid conversions.
463         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
464         New test.
465         * testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
466         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
467         tests using invalid conversions.
468         * testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
469         test.
470         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
471         Remove tests using invalid conversions.
473         PR libstdc++/77990
474         * include/bits/unique_ptr.h (__uniq_ptr_impl): New type to
475         encapsulate implementation details.
476         (unique_ptr::unique_ptr(_Up)): Don't copy deleter object.
477         (unique_ptr::get, unique_ptr::get_deleter, unique_ptr::release):
478         Call member functions of implementation object.
479         (unique_ptr<T[], D>): Likewise.
480         * python/libstdcxx/v6/printers.py (UniquePointerPrinter): Adjust for
481         new implementation.
482         * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Likewise.
483         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
484         lines.
485         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
486         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
487         * testsuite/20_util/unique_ptr/cons/77990.cc: New test.
489 2016-10-18  Jonathan Wakely  <jwakely@redhat.com>
491         * include/experimental/bits/shared_ptr.h: Fix indentation.
493         * include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
494         Remove const from parameter.
495         (operator<(const shared_ptr<T>&, nullptr_t)): Use correct
496         specialization of std::less.
497         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
498         Test comparison with nullptr and actually call test functions.
500         * include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
501         (__is_nothrow_uses_allocator_constructible_v): Only define for C++14
502         and later.
504 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
506         * testsuite/27_io/basic_filebuf/close/12790-1.cc: Remove 'test'
507         variables.
508         * testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
509         * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Likewise.
510         * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Likewise.
511         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
512         * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Likewise.
513         * testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
514         * testsuite/27_io/basic_filebuf/close/char/3.cc: Likewise.
515         * testsuite/27_io/basic_filebuf/close/char/4.cc: Likewise.
516         * testsuite/27_io/basic_filebuf/close/char/5.cc: Likewise.
517         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise.
518         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise.
519         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
520         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise.
521         * testsuite/27_io/basic_filebuf/cons/2020.cc: Likewise.
522         * testsuite/27_io/basic_filebuf/cons/char/1.cc: Likewise.
523         * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
524         * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: Likewise.
525         * testsuite/27_io/basic_filebuf/imbue/12206.cc: Likewise.
526         * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
527         * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
528         * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
529         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
530         * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
531         * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
532         * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
533         * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
534         * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
535         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
536         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
537         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
538         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
539         * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
540         * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
541         * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
542         * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
543         * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Likewise.
544         * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Likewise.
545         * testsuite/27_io/basic_filebuf/open/12790-1.cc: Likewise.
546         * testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
547         * testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
548         * testsuite/27_io/basic_filebuf/open/char/3.cc: Likewise.
549         * testsuite/27_io/basic_filebuf/open/char/4.cc: Likewise.
550         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
551         * testsuite/27_io/basic_filebuf/overflow/char/1.cc: Likewise.
552         * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Likewise.
553         * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Likewise.
554         * testsuite/27_io/basic_filebuf/overflow/char/3599.cc: Likewise.
555         * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Likewise.
556         * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Likewise.
557         * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Likewise.
558         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
559         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
560         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
561         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
562         * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Likewise.
563         * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Likewise.
564         * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Likewise.
565         * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Likewise.
566         * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Likewise.
567         * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Likewise.
568         * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: Likewise.
569         * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Likewise.
570         * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
571         * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Likewise.
572         * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Likewise.
573         * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Likewise.
574         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
575         * testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
576         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
577         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
578         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
579         * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Likewise.
580         * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: Likewise.
581         * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Likewise.
582         * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Likewise.
583         * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Likewise.
584         * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Likewise.
585         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
586         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
587         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
588         * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Likewise.
589         * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Likewise.
590         * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
591         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Likewise.
592         * testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: Likewise.
593         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
594         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise.
595         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise.
596         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise.
597         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise.
598         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise.
599         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
600         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Likewise.
601         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
602         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
603         Likewise.
604         * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
605         * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Likewise.
606         * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Likewise.
607         * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Likewise.
608         * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Likewise.
609         * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
610         * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Likewise.
611         * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Likewise.
612         * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Likewise.
613         * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc: Likewise.
614         * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Likewise.
615         * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Likewise.
616         * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
617         * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Likewise.
618         * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
619         * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Likewise.
620         * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
621         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Likewise.
622         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise.
623         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise.
624         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc: Likewise.
625         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise.
626         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
627         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
628         Likewise.
629         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
630         * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Likewise.
631         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc
632         * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
633         * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
634         * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Likewise.
635         * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Likewise.
636         * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Likewise.
637         * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Likewise.
638         * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Likewise.
639         * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: Likewise.
640         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Likewise.
641         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
642         * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Likewise.
643         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
644         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
645         * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
646         * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Likewise.
647         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
648         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Likewise.
649         * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Likewise.
650         * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Likewise.
651         * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Likewise.
652         * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Likewise.
653         * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Likewise.
654         * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: Likewise.
655         * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Likewise.
656         * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Likewise.
657         * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
658         * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Likewise.
659         * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Likewise.
660         * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
661         * testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Likewise.
662         * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: Likewise.
663         * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Likewise.
664         * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Likewise.
665         * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: Likewise.
666         * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Likewise.
667         * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Likewise.
668         * testsuite/27_io/basic_filebuf/sputc/char/59427.cc: Likewise.
669         * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Likewise.
670         * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: Likewise.
671         * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Likewise.
672         * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Likewise.
673         * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: Likewise.
674         * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Likewise.
675         * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Likewise.
676         * testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise.
677         * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Likewise.
678         * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Likewise.
679         * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Likewise.
680         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
681         * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Likewise.
682         * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Likewise.
683         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
684         * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: Likewise.
685         * testsuite/27_io/basic_filebuf/sync/char/1057.cc: Likewise.
686         * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Likewise.
687         * testsuite/27_io/basic_filebuf/underflow/char/1.cc: Likewise.
688         * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Likewise.
689         * testsuite/27_io/basic_filebuf/underflow/char/3.cc: Likewise.
690         * testsuite/27_io/basic_filebuf/underflow/char/45841.cc: Likewise.
691         * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: Likewise.
692         * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
693         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
694         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
695         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
696         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
697         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: Likewise.
698         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Likewise.
699         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
700         * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
701         * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
702         * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
703         * testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
704         * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
705         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Likewise.
706         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
707         * testsuite/27_io/basic_fstream/cons/1.cc: Likewise.
708         * testsuite/27_io/basic_fstream/rdbuf/char/2832.cc: Likewise.
709         * testsuite/27_io/basic_ifstream/cons/2020.cc: Likewise.
710         * testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
711         * testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
712         * testsuite/27_io/basic_ifstream/rdbuf/char/2832.cc: Likewise.
713         * testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
714         * testsuite/27_io/basic_ios/cons/2020.cc: Likewise.
715         * testsuite/27_io/basic_ios/cons/char/1.cc: Likewise.
716         * testsuite/27_io/basic_ios/cons/char/2.cc: Likewise.
717         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
718         * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
719         * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
720         * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
721         * testsuite/27_io/basic_ios/imbue/14072.cc: Likewise.
722         * testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
723         * testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
724         * testsuite/27_io/basic_istream/cons/3.cc: Likewise.
725         * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Likewise.
726         * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: Likewise.
727         * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
728         Likewise.
729         * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
730         Likewise.
731         * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
732         Likewise.
733         * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
734         Likewise.
735         * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
736         Likewise.
737         * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
738         Likewise.
739         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
740         Likewise.
741         * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
742         Likewise.
743         * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
744         Likewise.
745         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
746         Likewise.
747         * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
748         Likewise.
749         * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
750         Likewise.
751         * testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
752         Likewise.
753         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
754         exceptions_badbit_throw.cc: Likewise.
755         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
756         exceptions_failbit.cc: Likewise.
757         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
758         exceptions_failbit_throw.cc: Likewise.
759         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
760         Likewise.
761         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
762         Likewise.
763         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/02.cc:
764         Likewise.
765         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/03.cc:
766         Likewise.
767         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/06.cc:
768         Likewise.
769         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
770         Likewise.
771         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/08.cc:
772         Likewise.
773         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
774         Likewise.
775         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
776         Likewise.
777         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/11.cc:
778         Likewise.
779         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
780         Likewise.
781         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
782         Likewise.
783         * testsuite/27_io/basic_istream/extractors_arithmetic/
784         wchar_t/9555-ia.cc: Likewise.
785         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
786         dr696.cc: Likewise.
787         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
788         exceptions_badbit_throw.cc: Likewise.
789         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
790         exceptions_failbit.cc: Likewise.
791         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
792         exceptions_failbit_throw.cc: Likewise.
793         * testsuite/27_io/basic_istream/extractors_character/char/1.cc:
794         Likewise.
795         * testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
796         Likewise.
797         * testsuite/27_io/basic_istream/extractors_character/char/2.cc:
798         Likewise.
799         * testsuite/27_io/basic_istream/extractors_character/char/3.cc:
800         Likewise.
801         * testsuite/27_io/basic_istream/extractors_character/char/4.cc:
802         Likewise.
803         * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
804         Likewise.
805         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
806         Likewise.
807         * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
808         Likewise.
809         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
810         11095-i.cc: Likewise.
811         * testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc:
812         Likewise.
813         * testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
814         Likewise.
815         * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
816         Likewise.
817         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
818         9555-ic.cc: Likewise.
819         * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
820         * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Likewise.
821         * testsuite/27_io/basic_istream/extractors_other/char/26181.cc:
822         Likewise.
823         * testsuite/27_io/basic_istream/extractors_other/char/3.cc: Likewise.
824         * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
825         Likewise.
826         * testsuite/27_io/basic_istream/extractors_other/char/9424-in.cc:
827         Likewise.
828         * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
829         Likewise.
830         * testsuite/27_io/basic_istream/extractors_other/char/
831         error_failbit.cc: Likewise.
832         * testsuite/27_io/basic_istream/extractors_other/char/
833         exceptions_badbit_throw.cc: Likewise.
834         * testsuite/27_io/basic_istream/extractors_other/char/
835         exceptions_failbit_throw.cc: Likewise.
836         * testsuite/27_io/basic_istream/extractors_other/char/
837         exceptions_null.cc: Likewise.
838         * testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc:
839         Likewise.
840         * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc: Likewise.
841         * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise.
842         * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
843         Likewise.
844         * testsuite/27_io/basic_istream/extractors_other/wchar_t/3.cc: Likewise.
845         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9318-in.cc:
846         Likewise.
847         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9424-in.cc:
848         Likewise.
849         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9555-io.cc:
850         Likewise.
851         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
852         error_failbit.cc: Likewise.
853         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
854         exceptions_badbit_throw.cc: Likewise.
855         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
856         exceptions_failbit_throw.cc: Likewise.
857         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
858         exceptions_null.cc: Likewise.
859         * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
860         * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
861         * testsuite/27_io/basic_istream/get/char/3.cc: Likewise.
862         * testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
863         * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
864         * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
865         * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
866         * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
867         * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
868         * testsuite/27_io/basic_istream/getline/char/4.cc: Likewise.
869         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
870         * testsuite/27_io/basic_istream/getline/char/6.cc: Likewise.
871         * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
872         * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Likewise.
873         * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: Likewise.
874         * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
875         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
876         * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: Likewise.
877         * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
878         * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
879         * testsuite/27_io/basic_istream/ignore/char/3.cc: Likewise.
880         * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
881         * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
882         * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
883         * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
884         * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
885         * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
886         * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
887         * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
888         * testsuite/27_io/basic_istream/peek/char/12296.cc: Likewise.
889         * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
890         * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
891         * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
892         * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
893         * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
894         * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
895         * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
896         * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
897         * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
898         * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
899         * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
900         * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
901         * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: Likewise.
902         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Likewise.
903         * testsuite/27_io/basic_istream/readsome/char/8258.cc: Likewise.
904         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
905         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
906         * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
907         * testsuite/27_io/basic_istream/seekg/char/2.cc: Likewise.
908         * testsuite/27_io/basic_istream/seekg/char/26211.cc: Likewise.
909         * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
910         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
911         * testsuite/27_io/basic_istream/seekg/char/
912         exceptions_badbit_throw.cc: Likewise.
913         * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Likewise.
914         * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Likewise.
915         * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
916         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
917         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
918         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
919         * testsuite/27_io/basic_istream/seekg/wchar_t/
920         exceptions_badbit_throw.cc: Likewise.
921         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
922         * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
923         * testsuite/27_io/basic_istream/sentry/char/1.cc: Likewise.
924         * testsuite/27_io/basic_istream/sentry/char/2.cc: Likewise.
925         * testsuite/27_io/basic_istream/sentry/char/3.cc: Likewise.
926         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
927         * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
928         * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
929         * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
930         * testsuite/27_io/basic_istream/tellg/char/1.cc: Likewise.
931         * testsuite/27_io/basic_istream/tellg/char/2.cc: Likewise.
932         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
933         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
934         * testsuite/27_io/basic_istream/tellg/char/
935         exceptions_badbit_throw.cc: Likewise.
936         * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Likewise.
937         * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Likewise.
938         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
939         * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
940         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
941         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
942         * testsuite/27_io/basic_istream/tellg/wchar_t/
943         exceptions_badbit_throw.cc: Likewise.
944         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
945         * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
946         * testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
947         * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
948         * testsuite/27_io/basic_istringstream/cons/2020.cc: Likewise.
949         * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Likewise.
950         * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: Likewise.
951         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
952         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
953         * testsuite/27_io/basic_ofstream/cons/2020.cc: Likewise.
954         * testsuite/27_io/basic_ofstream/cons/char/1.cc: Likewise.
955         * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
956         * testsuite/27_io/basic_ofstream/rdbuf/char/2832.cc: Likewise.
957         * testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
958         * testsuite/27_io/basic_ostream/cons/char/9827.cc: Likewise.
959         * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: Likewise.
960         * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
961         * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
962         * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
963         * testsuite/27_io/basic_ostream/ends/char/2.cc: Likewise.
964         * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
965         * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
966         * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
967         * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
968         * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
969         * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
970         * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
971         Likewise.
972         * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
973         * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
974         * testsuite/27_io/basic_ostream/flush/wchar_t/
975         exceptions_badbit_throw.cc: Likewise.
976         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
977         Likewise.
978         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
979         Likewise.
980         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/3.cc:
981         Likewise.
982         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4.cc:
983         Likewise.
984         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
985         Likewise.
986         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/5.cc:
987         Likewise.
988         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
989         Likewise.
990         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
991         Likewise.
992         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
993         Likewise.
994         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
995         exceptions_badbit_throw.cc: Likewise.
996         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
997         exceptions_failbit_throw.cc: Likewise.
998         * testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc:
999         Likewise.
1000         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1001         Likewise.
1002         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
1003         Likewise.
1004         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/3.cc:
1005         Likewise.
1006         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4.cc:
1007         Likewise.
1008         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
1009         Likewise.
1010         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/5.cc:
1011         Likewise.
1012         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
1013         Likewise.
1014         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
1015         Likewise.
1016         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1017         9555-oa.cc: Likewise.
1018         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1019         exceptions_badbit_throw.cc: Likewise.
1020         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
1021         exceptions_failbit_throw.cc: Likewise.
1022         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
1023         Likewise.
1024         * testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
1025         Likewise.
1026         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
1027         Likewise.
1028         * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: Likewise.
1029         * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
1030         Likewise.
1031         * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
1032         Likewise.
1033         * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: Likewise.
1034         * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: Likewise.
1035         * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: Likewise.
1036         * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: Likewise.
1037         * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: Likewise.
1038         * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
1039         Likewise.
1040         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1041         11095-od.cc: Likewise.
1042         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1043         11095-oe.cc: Likewise.
1044         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1045         11095-of.cc: Likewise.
1046         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/2.cc:
1047         Likewise.
1048         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1049         28277-1.cc: Likewise.
1050         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1051         28277-2.cc: Likewise.
1052         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1053         28277-3.cc: Likewise.
1054         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1055         28277-4.cc: Likewise.
1056         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/3.cc:
1057         Likewise.
1058         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
1059         Likewise.
1060         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/5.cc:
1061         Likewise.
1062         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/6.cc:
1063         Likewise.
1064         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1065         Likewise.
1066         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1067         Likewise.
1068         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
1069         9555-oc.cc: Likewise.
1070         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
1071         * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Likewise.
1072         * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Likewise.
1073         * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: Likewise.
1074         * testsuite/27_io/basic_ostream/inserters_other/char/9318-out.cc:
1075         Likewise.
1076         * testsuite/27_io/basic_ostream/inserters_other/char/9424-out.cc:
1077         Likewise.
1078         * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
1079         Likewise.
1080         * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
1081         Likewise.
1082         * testsuite/27_io/basic_ostream/inserters_other/char/
1083         error_failbit.cc: Likewise.
1084         * testsuite/27_io/basic_ostream/inserters_other/char/
1085         exceptions_badbit_throw.cc: Likewise.
1086         * testsuite/27_io/basic_ostream/inserters_other/char/
1087         exceptions_failbit_throw.cc: Likewise.
1088         * testsuite/27_io/basic_ostream/inserters_other/char/
1089         exceptions_null.cc: Likewise.
1090         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise.
1091         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/3.cc: Likewise.
1092         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/4.cc: Likewise.
1093         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/5.cc: Likewise.
1094         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1095         9318-out.cc: Likewise.
1096         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1097         9424-out.cc: Likewise.
1098         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1099         9555-oo.cc: Likewise.
1100         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1101         error_code.cc: Likewise.
1102         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1103         error_failbit.cc: Likewise.
1104         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1105         exceptions_badbit_throw.cc: Likewise.
1106         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1107         exceptions_failbit_throw.cc: Likewise.
1108         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
1109         exceptions_null.cc: Likewise.
1110         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
1111         * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
1112         * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Likewise.
1113         * testsuite/27_io/basic_ostream/seekp/char/2346-sstream.cc: Likewise.
1114         * testsuite/27_io/basic_ostream/seekp/char/
1115         exceptions_badbit_throw.cc: Likewise.
1116         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise.
1117         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-sstream.cc: Likewise.
1118         * testsuite/27_io/basic_ostream/seekp/wchar_t/
1119         exceptions_badbit_throw.cc: Likewise.
1120         * testsuite/27_io/basic_ostream/sentry/char/1.cc: Likewise.
1121         * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
1122         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
1123         * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
1124         * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
1125         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
1126         * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
1127         * testsuite/27_io/basic_ostream/tellp/char/
1128         exceptions_badbit_throw.cc: Likewise.
1129         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1130         * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
1131         * testsuite/27_io/basic_ostream/tellp/wchar_t/
1132         exceptions_badbit_throw.cc: Likewise.
1133         * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
1134         * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
1135         * testsuite/27_io/basic_ostringstream/cons/2020.cc: Likewise.
1136         * testsuite/27_io/basic_ostringstream/cons/char/3.cc: Likewise.
1137         * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
1138         * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc: Likewise.
1139         * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
1140         * testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
1141         * testsuite/27_io/basic_ostringstream/str/char/2.cc: Likewise.
1142         * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
1143         * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
1144         * testsuite/27_io/basic_streambuf/cons/2020.cc: Likewise.
1145         * testsuite/27_io/basic_streambuf/cons/57394.cc: Likewise.
1146         * testsuite/27_io/basic_streambuf/cons/char/1.cc: Likewise.
1147         * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
1148         * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
1149         * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
1150         * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
1151         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
1152         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
1153         * testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
1154         * testsuite/27_io/basic_streambuf/in_avail/char/1.cc: Likewise.
1155         * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Likewise.
1156         * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
1157         * testsuite/27_io/basic_streambuf/overflow/char/2.cc: Likewise.
1158         * testsuite/27_io/basic_streambuf/overflow/char/3599.cc: Likewise.
1159         * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
1160         * testsuite/27_io/basic_streambuf/overflow/wchar_t/2.cc: Likewise.
1161         * testsuite/27_io/basic_streambuf/overflow/wchar_t/3599.cc: Likewise.
1162         * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
1163         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
1164         * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
1165         * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
1166         * testsuite/27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
1167         * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
1168         * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
1169         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
1170         * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
1171         * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
1172         * testsuite/27_io/basic_stringbuf/cons/2020.cc: Likewise.
1173         * testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
1174         * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
1175         * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Likewise.
1176         * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
1177         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Likewise.
1178         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
1179         * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Likewise.
1180         * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
1181         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Likewise.
1182         * testsuite/27_io/basic_stringbuf/overflow/char/2.cc: Likewise.
1183         * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: Likewise.
1184         * testsuite/27_io/basic_stringbuf/overflow/char/3599.cc: Likewise.
1185         * testsuite/27_io/basic_stringbuf/overflow/char/9988.cc: Likewise.
1186         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc: Likewise.
1187         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/2.cc: Likewise.
1188         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Likewise.
1189         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/3599.cc: Likewise.
1190         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/9988.cc: Likewise.
1191         * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: Likewise.
1192         * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
1193         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
1194         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
1195         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
1196         * testsuite/27_io/basic_stringbuf/sbumpc/char/9825.cc: Likewise.
1197         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
1198         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/9825.cc: Likewise.
1199         * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
1200         * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: Likewise.
1201         * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: Likewise.
1202         * testsuite/27_io/basic_stringbuf/seekoff/char/2.cc: Likewise.
1203         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
1204         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
1205         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: Likewise.
1206         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/2.cc: Likewise.
1207         * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
1208         * testsuite/27_io/basic_stringbuf/seekpos/char/2.cc: Likewise.
1209         * testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: Likewise.
1210         * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Likewise.
1211         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
1212         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/2.cc: Likewise.
1213         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: Likewise.
1214         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/3.cc: Likewise.
1215         * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Likewise.
1216         * testsuite/27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
1217         * testsuite/27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
1218         * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
1219         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Likewise.
1220         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/2.cc: Likewise.
1221         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/3.cc: Likewise.
1222         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
1223         * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
1224         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
1225         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
1226         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
1227         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
1228         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
1229         * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
1230         * testsuite/27_io/basic_stringbuf/sputbackc/char/9425.cc: Likewise.
1231         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
1232         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc: Likewise.
1233         * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Likewise.
1234         * testsuite/27_io/basic_stringbuf/sputc/char/9404-1.cc: Likewise.
1235         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Likewise.
1236         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/9404-1.cc: Likewise.
1237         * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Likewise.
1238         * testsuite/27_io/basic_stringbuf/sputn/char/9404-2.cc: Likewise.
1239         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Likewise.
1240         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/9404-2.cc: Likewise.
1241         * testsuite/27_io/basic_stringbuf/str/char/1.cc: Likewise.
1242         * testsuite/27_io/basic_stringbuf/str/char/2.cc: Likewise.
1243         * testsuite/27_io/basic_stringbuf/str/char/3.cc: Likewise.
1244         * testsuite/27_io/basic_stringbuf/str/char/3955.cc: Likewise.
1245         * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Likewise.
1246         * testsuite/27_io/basic_stringbuf/str/wchar_t/2.cc: Likewise.
1247         * testsuite/27_io/basic_stringbuf/str/wchar_t/3.cc: Likewise.
1248         * testsuite/27_io/basic_stringbuf/str/wchar_t/3955.cc: Likewise.
1249         * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
1250         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
1251         * testsuite/27_io/basic_stringbuf/sync/char/1057.cc: Likewise.
1252         * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
1253         * testsuite/27_io/basic_stringstream/cons/2020.cc: Likewise.
1254         * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Likewise.
1255         * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: Likewise.
1256         * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
1257         * testsuite/27_io/basic_stringstream/str/char/2.cc: Likewise.
1258         * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
1259         * testsuite/27_io/basic_stringstream/str/char/4.cc: Likewise.
1260         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
1261         * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
1262         * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
1263         * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
1264         * testsuite/27_io/fpos/11450.cc: Likewise.
1265         * testsuite/27_io/fpos/14252.cc: Likewise.
1266         * testsuite/27_io/fpos/14320-1.cc: Likewise.
1267         * testsuite/27_io/fpos/14320-2.cc: Likewise.
1268         * testsuite/27_io/fpos/14320-3.cc: Likewise.
1269         * testsuite/27_io/fpos/14320-4.cc: Likewise.
1270         * testsuite/27_io/fpos/14320-5.cc: Likewise.
1271         * testsuite/27_io/fpos/14775.cc: Likewise.
1272         * testsuite/27_io/fpos/mbstate_t/1.cc: Likewise.
1273         * testsuite/27_io/fpos/mbstate_t/12065.cc: Likewise.
1274         * testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
1275         * testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
1276         * testsuite/27_io/ios_base/callbacks/1.cc: Likewise.
1277         * testsuite/27_io/ios_base/failure/what-1.cc: Likewise.
1278         * testsuite/27_io/ios_base/failure/what-2.cc: Likewise.
1279         * testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
1280         * testsuite/27_io/ios_base/failure/what-big.cc: Likewise.
1281         * testsuite/27_io/ios_base/state/1.cc: Likewise.
1282         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
1283         * testsuite/27_io/ios_base/storage/11584.cc: Likewise.
1284         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1285         * testsuite/27_io/ios_base/sync_with_stdio/2.cc: Likewise.
1286         * testsuite/27_io/manipulators/adjustfield/char/1.cc: Likewise.
1287         * testsuite/27_io/manipulators/adjustfield/char/2.cc
1288         * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: Likewise.
1289         * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
1290         * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
1291         * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
1292         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
1293         * testsuite/27_io/manipulators/extended/get_money/char/51288.cc:
1294         Likewise.
1295         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
1296         Likewise.
1297         * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
1298         Likewise.
1299         * testsuite/27_io/manipulators/extended/get_time/char/1.cc
1300         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Likewise.
1301         * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: Likewise.
1302         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Likewise.
1303         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
1304         * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
1305         Likewise.
1306         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
1307         Likewise.
1308         * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
1309         Likewise.
1310         * testsuite/27_io/manipulators/extended/put_time/char/1.cc: Likewise.
1311         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Likewise.
1312         * testsuite/27_io/manipulators/extended/put_time/wchar_t/1.cc: Likewise.
1313         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Likewise.
1314         * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
1315         * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
1316         * testsuite/27_io/manipulators/standard/char/dr2344.cc: Likewise.
1317         * testsuite/27_io/manipulators/standard/char/quoted.cc: Likewise.
1318         * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
1319         * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
1320         * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: Likewise.
1321         * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: Likewise.
1322         * testsuite/27_io/objects/char/1.cc: Likewise.
1323         * testsuite/27_io/objects/char/10.cc: Likewise.
1324         * testsuite/27_io/objects/char/3045.cc: Likewise.
1325         * testsuite/27_io/objects/char/41037.cc: Likewise.
1326         * testsuite/27_io/objects/char/5.cc: Likewise.
1327         * testsuite/27_io/objects/char/6.cc: Likewise.
1328         * testsuite/27_io/objects/char/6548_xin.cc: Likewise.
1329         * testsuite/27_io/objects/char/6648-1_xin.cc: Likewise.
1330         * testsuite/27_io/objects/char/6648-2_xin.cc: Likewise.
1331         * testsuite/27_io/objects/char/7744_xin.cc: Likewise.
1332         * testsuite/27_io/objects/char/8.cc: Likewise.
1333         * testsuite/27_io/objects/char/9.cc: Likewise.
1334         * testsuite/27_io/objects/char/9661-2_xin.cc: Likewise.
1335         * testsuite/27_io/objects/char/dr455.cc: Likewise.
1336         * testsuite/27_io/objects/wchar_t/1.cc: Likewise.
1337         * testsuite/27_io/objects/wchar_t/10.cc: Likewise.
1338         * testsuite/27_io/objects/wchar_t/11.cc: Likewise.
1339         * testsuite/27_io/objects/wchar_t/12.cc: Likewise.
1340         * testsuite/27_io/objects/wchar_t/13.cc: Likewise.
1341         * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Likewise.
1342         * testsuite/27_io/objects/wchar_t/3045.cc: Likewise.
1343         * testsuite/27_io/objects/wchar_t/41037.cc: Likewise.
1344         * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
1345         * testsuite/27_io/objects/wchar_t/6548_xin.cc: Likewise.
1346         * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: Likewise.
1347         * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: Likewise.
1348         * testsuite/27_io/objects/wchar_t/7744_xin.cc: Likewise.
1349         * testsuite/27_io/objects/wchar_t/8.cc: Likewise.
1350         * testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
1351         * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: Likewise.
1352         * testsuite/27_io/objects/wchar_t/9662.cc: Likewise.
1353         * testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
1354         * testsuite/27_io/types/3.cc: Likewise.
1356 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
1358         PR libstdc++/77994
1359         * include/bits/stl_algo.h (sample): Convert size argument to iterator
1360         difference type.
1361         * include/experimental/algorithm (experimental::sample): Likewise.
1362         * testsuite/25_algorithms/sample/2.cc: New test.
1364 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1366         * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
1367         * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
1369 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1371         * testsuite/array/capacity/empty.cc: Remove 'test' variables.
1372         * testsuite/array/capacity/max_size.cc: Likewise.
1373         * testsuite/array/capacity/size.cc: Likewise.
1374         * testsuite/array/comparison_operators/equal.cc: Likewise.
1375         * testsuite/array/comparison_operators/greater.cc: Likewise.
1376         * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
1377         * testsuite/array/comparison_operators/less.cc: Likewise.
1378         * testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
1379         * testsuite/array/comparison_operators/not_equal.cc: Likewise.
1380         * testsuite/array/element_access/54388.cc: Likewise.
1381         * testsuite/array/element_access/at_out_of_range.cc: Likewise.
1382         * testsuite/array/element_access/back.cc: Likewise.
1383         * testsuite/array/element_access/data.cc: Likewise.
1384         * testsuite/array/element_access/front.cc: Likewise.
1385         * testsuite/array/iterators/end_is_one_past.cc: Likewise.
1386         * testsuite/array/requirements/contiguous.cc: Likewise.
1387         * testsuite/array/requirements/fill.cc: Likewise.
1388         * testsuite/array/requirements/member_swap.cc: Likewise.
1389         * testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
1390         * testsuite/array/specialized_algorithms/swap.cc: Likewise.
1391         * testsuite/array/tuple_interface/tuple_element.cc: Likewise.
1392         * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
1393         * testsuite/array/tuple_interface/tuple_size.cc: Likewise.
1394         * testsuite/bitset/all/1.cc: Likewise.
1395         * testsuite/bitset/cons/1.cc: Likewise.
1396         * testsuite/bitset/cons/16020.cc: Likewise.
1397         * testsuite/bitset/cons/2.cc: Likewise.
1398         * testsuite/bitset/cons/3.cc: Likewise.
1399         * testsuite/bitset/cons/50268.cc: Likewise.
1400         * testsuite/bitset/cons/6282.cc: Likewise.
1401         * testsuite/bitset/cons/dr1325-2.cc: Likewise.
1402         * testsuite/bitset/cons/dr396.cc: Likewise.
1403         * testsuite/bitset/ext/15361.cc: Likewise.
1404         * testsuite/bitset/input/1.cc: Likewise.
1405         * testsuite/bitset/operations/1.cc: Likewise.
1406         * testsuite/bitset/operations/13838.cc: Likewise.
1407         * testsuite/bitset/operations/2.cc: Likewise.
1408         * testsuite/bitset/test/1.cc: Likewise.
1409         * testsuite/bitset/to_string/1.cc: Likewise.
1410         * testsuite/bitset/to_string/dr396.cc: Likewise.
1411         * testsuite/bitset/to_ullong/1.cc: Likewise.
1412         * testsuite/bitset/to_ulong/1.cc: Likewise.
1413         * testsuite/deque/allocator/copy.cc: Likewise.
1414         * testsuite/deque/allocator/copy_assign.cc: Likewise.
1415         * testsuite/deque/allocator/ext_ptr.cc: Likewise.
1416         * testsuite/deque/allocator/minimal.cc: Likewise.
1417         * testsuite/deque/allocator/move.cc: Likewise.
1418         * testsuite/deque/allocator/move_assign.cc: Likewise.
1419         * testsuite/deque/allocator/swap.cc: Likewise.
1420         * testsuite/deque/capacity/29134-2.cc: Likewise.
1421         * testsuite/deque/capacity/29134.cc: Likewise.
1422         * testsuite/deque/capacity/moveable.cc: Likewise.
1423         * testsuite/deque/capacity/resize_size.cc: Likewise.
1424         * testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
1425         * testsuite/deque/cons/1.cc: Likewise.
1426         * testsuite/deque/cons/2.cc: Likewise.
1427         * testsuite/deque/cons/assign/1.cc: Likewise.
1428         * testsuite/deque/cons/cons_size.cc: Likewise.
1429         * testsuite/deque/cons/moveable.cc: Likewise.
1430         * testsuite/deque/modifiers/erase/1.cc: Likewise.
1431         * testsuite/deque/modifiers/erase/2.cc: Likewise.
1432         * testsuite/deque/modifiers/erase/3.cc: Likewise.
1433         * testsuite/deque/modifiers/erase/moveable.cc: Likewise.
1434         * testsuite/deque/modifiers/moveable.cc: Likewise.
1435         * testsuite/deque/modifiers/push_back/49836.cc: Likewise.
1436         * testsuite/deque/modifiers/push_front/49836.cc: Likewise.
1437         * testsuite/deque/modifiers/swap/1.cc: Likewise.
1438         * testsuite/deque/modifiers/swap/2.cc: Likewise.
1439         * testsuite/deque/modifiers/swap/3.cc: Likewise.
1440         * testsuite/deque/operators/1.cc: Likewise.
1441         * testsuite/deque/operators/2.cc: Likewise.
1442         * testsuite/forward_list/allocator/copy.cc: Likewise.
1443         * testsuite/forward_list/allocator/copy_assign.cc: Likewise.
1444         * testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
1445         * testsuite/forward_list/allocator/minimal.cc: Likewise.
1446         * testsuite/forward_list/allocator/move.cc: Likewise.
1447         * testsuite/forward_list/allocator/move_assign.cc: Likewise.
1448         * testsuite/forward_list/allocator/swap.cc: Likewise.
1449         * testsuite/forward_list/capacity/1.cc: Likewise.
1450         * testsuite/forward_list/capacity/resize_size.cc: Likewise.
1451         * testsuite/forward_list/comparable.cc: Likewise.
1452         * testsuite/forward_list/cons/1.cc: Likewise.
1453         * testsuite/forward_list/cons/2.cc: Likewise.
1454         * testsuite/forward_list/cons/3.cc: Likewise.
1455         * testsuite/forward_list/cons/4.cc: Likewise.
1456         * testsuite/forward_list/cons/5.cc: Likewise.
1457         * testsuite/forward_list/cons/6.cc: Likewise.
1458         * testsuite/forward_list/cons/7.cc: Likewise.
1459         * testsuite/forward_list/cons/8.cc: Likewise.
1460         * testsuite/forward_list/cons/9.cc: Likewise.
1461         * testsuite/forward_list/cons/cons_size.cc: Likewise.
1462         * testsuite/forward_list/cons/moveable.cc: Likewise.
1463         * testsuite/forward_list/debug/clear.cc: Likewise.
1464         * testsuite/forward_list/debug/construct4_neg.cc: Likewise.
1465         * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
1466         * testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
1467         * testsuite/forward_list/debug/move_constructor.cc: Likewise.
1468         * testsuite/forward_list/debug/move_neg.cc: Likewise.
1469         * testsuite/forward_list/debug/splice_after.cc: Likewise.
1470         * testsuite/forward_list/debug/swap.cc: Likewise.
1471         * testsuite/forward_list/modifiers/1.cc: Likewise.
1472         * testsuite/forward_list/modifiers/2.cc: Likewise.
1473         * testsuite/forward_list/modifiers/3.cc: Likewise.
1474         * testsuite/forward_list/modifiers/4.cc: Likewise.
1475         * testsuite/forward_list/modifiers/5.cc: Likewise.
1476         * testsuite/forward_list/modifiers/6.cc: Likewise.
1477         * testsuite/forward_list/operations/1.cc: Likewise.
1478         * testsuite/forward_list/operations/2.cc: Likewise.
1479         * testsuite/forward_list/operations/3.cc: Likewise.
1480         * testsuite/forward_list/operations/4.cc: Likewise.
1481         * testsuite/forward_list/operations/5.cc: Likewise.
1482         * testsuite/forward_list/operations/6.cc: Likewise.
1483         * testsuite/forward_list/operations/7.cc: Likewise.
1484         * testsuite/forward_list/operations/remove_freed.cc: Likewise.
1485         * testsuite/list/61347.cc: Likewise.
1486         * testsuite/list/allocator/copy.cc: Likewise.
1487         * testsuite/list/allocator/copy_assign.cc: Likewise.
1488         * testsuite/list/allocator/minimal.cc: Likewise.
1489         * testsuite/list/allocator/move.cc: Likewise.
1490         * testsuite/list/allocator/move_assign.cc: Likewise.
1491         * testsuite/list/allocator/swap.cc: Likewise.
1492         * testsuite/list/capacity/1.h: Likewise.
1493         * testsuite/list/capacity/29134.cc: Likewise.
1494         * testsuite/list/capacity/resize_size.cc: Likewise.
1495         * testsuite/list/cons/1.h: Likewise.
1496         * testsuite/list/cons/2.h: Likewise.
1497         * testsuite/list/cons/3.h: Likewise.
1498         * testsuite/list/cons/4.h: Likewise.
1499         * testsuite/list/cons/5.h: Likewise.
1500         * testsuite/list/cons/6.h: Likewise.
1501         * testsuite/list/cons/7.h: Likewise.
1502         * testsuite/list/cons/8.h: Likewise.
1503         * testsuite/list/cons/9.h: Likewise.
1504         * testsuite/list/cons/cons_size.cc: Likewise.
1505         * testsuite/list/cons/moveable.h: Likewise.
1506         * testsuite/list/debug/invalidation/1.cc: Likewise.
1507         * testsuite/list/debug/invalidation/2.cc: Likewise.
1508         * testsuite/list/debug/invalidation/3.cc: Likewise.
1509         * testsuite/list/debug/invalidation/4.cc: Likewise.
1510         * testsuite/list/modifiers/1.h: Likewise.
1511         * testsuite/list/modifiers/2.h: Likewise.
1512         * testsuite/list/modifiers/3.h: Likewise.
1513         * testsuite/list/modifiers/insert/25288.h: Likewise.
1514         * testsuite/list/modifiers/swap/1.h: Likewise.
1515         * testsuite/list/modifiers/swap/2.h: Likewise.
1516         * testsuite/list/modifiers/swap/3.h: Likewise.
1517         * testsuite/list/operations/1.h: Likewise.
1518         * testsuite/list/operations/2.h: Likewise.
1519         * testsuite/list/operations/3.h: Likewise.
1520         * testsuite/list/operations/4.h: Likewise.
1521         * testsuite/list/operations/42352.cc: Likewise.
1522         * testsuite/map/allocator/copy.cc: Likewise.
1523         * testsuite/map/allocator/copy_assign.cc: Likewise.
1524         * testsuite/map/allocator/init-list.cc: Likewise.
1525         * testsuite/map/allocator/minimal.cc: Likewise.
1526         * testsuite/map/allocator/move.cc: Likewise.
1527         * testsuite/map/allocator/move_assign.cc: Likewise.
1528         * testsuite/map/allocator/swap.cc: Likewise.
1529         * testsuite/map/capacity/29134.cc: Likewise.
1530         * testsuite/map/cons/moveable.cc: Likewise.
1531         * testsuite/map/debug/construct5_neg.cc: Likewise.
1532         * testsuite/map/debug/move_assign_neg.cc: Likewise.
1533         * testsuite/map/debug/move_neg.cc: Likewise.
1534         * testsuite/map/element_access/1.cc: Likewise.
1535         * testsuite/map/element_access/2.cc: Likewise.
1536         * testsuite/map/element_access/39901.cc: Likewise.
1537         * testsuite/map/init-list.cc: Likewise.
1538         * testsuite/map/modifiers/dr130.cc: Likewise.
1539         * testsuite/map/modifiers/emplace/1.cc: Likewise.
1540         * testsuite/map/modifiers/extract.cc: Likewise.
1541         * testsuite/map/modifiers/insert/1.cc: Likewise.
1542         * testsuite/map/modifiers/insert/16813.cc: Likewise.
1543         * testsuite/map/modifiers/insert/2.cc: Likewise.
1544         * testsuite/map/modifiers/insert/3.cc: Likewise.
1545         * testsuite/map/modifiers/insert/4.cc: Likewise.
1546         * testsuite/map/modifiers/insert/5.cc: Likewise.
1547         * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
1548         * testsuite/map/modifiers/merge.cc: Likewise.
1549         * testsuite/map/modifiers/swap/1.cc: Likewise.
1550         * testsuite/map/modifiers/swap/2.cc: Likewise.
1551         * testsuite/map/modifiers/swap/3.cc: Likewise.
1552         * testsuite/map/modifiers/try_emplace/1.cc: Likewise.
1553         * testsuite/map/operations/1.cc: Likewise.
1554         * testsuite/map/operations/count.cc: Likewise.
1555         * testsuite/map/operators/1_neg.cc: Likewise.
1556         * testsuite/map/operators/2.cc: Likewise.
1557         * testsuite/multimap/allocator/copy.cc: Likewise.
1558         * testsuite/multimap/allocator/copy_assign.cc: Likewise.
1559         * testsuite/multimap/allocator/init-list.cc: Likewise.
1560         * testsuite/multimap/allocator/minimal.cc: Likewise.
1561         * testsuite/multimap/allocator/move.cc: Likewise.
1562         * testsuite/multimap/allocator/move_assign.cc: Likewise.
1563         * testsuite/multimap/allocator/swap.cc: Likewise.
1564         * testsuite/multimap/capacity/29134.cc: Likewise.
1565         * testsuite/multimap/cons/moveable.cc: Likewise.
1566         * testsuite/multimap/debug/construct5_neg.cc: Likewise.
1567         * testsuite/multimap/debug/move_assign_neg.cc: Likewise.
1568         * testsuite/multimap/debug/move_neg.cc: Likewise.
1569         * testsuite/multimap/init-list.cc: Likewise.
1570         * testsuite/multimap/modifiers/dr130.cc: Likewise.
1571         * testsuite/multimap/modifiers/emplace/1.cc: Likewise.
1572         * testsuite/multimap/modifiers/extract.cc: Likewise.
1573         * testsuite/multimap/modifiers/insert/1.cc: Likewise.
1574         * testsuite/multimap/modifiers/insert/2.cc: Likewise.
1575         * testsuite/multimap/modifiers/insert/22102.cc: Likewise.
1576         * testsuite/multimap/modifiers/insert/3.cc: Likewise.
1577         * testsuite/multimap/modifiers/insert/4.cc: Likewise.
1578         * testsuite/multimap/modifiers/merge.cc: Likewise.
1579         * testsuite/multimap/modifiers/swap/1.cc: Likewise.
1580         * testsuite/multimap/modifiers/swap/2.cc: Likewise.
1581         * testsuite/multimap/modifiers/swap/3.cc: Likewise.
1582         * testsuite/multimap/operations/1.cc: Likewise.
1583         * testsuite/multimap/operations/count.cc: Likewise.
1584         * testsuite/multiset/allocator/copy.cc: Likewise.
1585         * testsuite/multiset/allocator/copy_assign.cc: Likewise.
1586         * testsuite/multiset/allocator/init-list.cc: Likewise.
1587         * testsuite/multiset/allocator/minimal.cc: Likewise.
1588         * testsuite/multiset/allocator/move.cc: Likewise.
1589         * testsuite/multiset/allocator/move_assign.cc: Likewise.
1590         * testsuite/multiset/allocator/swap.cc: Likewise.
1591         * testsuite/multiset/capacity/29134.cc: Likewise.
1592         * testsuite/multiset/cons/moveable.cc: Likewise.
1593         * testsuite/multiset/debug/construct5_neg.cc: Likewise.
1594         * testsuite/multiset/debug/invalidation/2.cc: Likewise.
1595         * testsuite/multiset/debug/move_assign_neg.cc: Likewise.
1596         * testsuite/multiset/debug/move_neg.cc: Likewise.
1597         * testsuite/multiset/init-list.cc: Likewise.
1598         * testsuite/multiset/modifiers/dr130.cc: Likewise.
1599         * testsuite/multiset/modifiers/emplace/1.cc: Likewise.
1600         * testsuite/multiset/modifiers/extract.cc: Likewise.
1601         * testsuite/multiset/modifiers/insert/1.cc: Likewise.
1602         * testsuite/multiset/modifiers/insert/2.cc: Likewise.
1603         * testsuite/multiset/modifiers/insert/22102.cc: Likewise.
1604         * testsuite/multiset/modifiers/insert/3.cc: Likewise.
1605         * testsuite/multiset/modifiers/insert/4.cc: Likewise.
1606         * testsuite/multiset/modifiers/merge.cc: Likewise.
1607         * testsuite/multiset/modifiers/swap/1.cc: Likewise.
1608         * testsuite/multiset/modifiers/swap/2.cc: Likewise.
1609         * testsuite/multiset/modifiers/swap/3.cc: Likewise.
1610         * testsuite/multiset/operations/1.cc: Likewise.
1611         * testsuite/multiset/operations/count.cc: Likewise.
1612         * testsuite/priority_queue/moveable.cc: Likewise.
1613         * testsuite/queue/moveable.cc: Likewise.
1614         * testsuite/set/allocator/copy.cc: Likewise.
1615         * testsuite/set/allocator/copy_assign.cc: Likewise.
1616         * testsuite/set/allocator/init-list.cc: Likewise.
1617         * testsuite/set/allocator/minimal.cc: Likewise.
1618         * testsuite/set/allocator/move.cc: Likewise.
1619         * testsuite/set/allocator/move_assign.cc: Likewise.
1620         * testsuite/set/allocator/swap.cc: Likewise.
1621         * testsuite/set/capacity/29134.cc: Likewise.
1622         * testsuite/set/cons/moveable.cc: Likewise.
1623         * testsuite/set/debug/construct5_neg.cc: Likewise.
1624         * testsuite/set/debug/invalidation/2.cc: Likewise.
1625         * testsuite/set/debug/move_assign_neg.cc: Likewise.
1626         * testsuite/set/debug/move_neg.cc: Likewise.
1627         * testsuite/set/init-list.cc: Likewise.
1628         * testsuite/set/modifiers/17948.cc: Likewise.
1629         * testsuite/set/modifiers/dr130.cc: Likewise.
1630         * testsuite/set/modifiers/emplace/1.cc: Likewise.
1631         * testsuite/set/modifiers/extract.cc: Likewise.
1632         * testsuite/set/modifiers/insert/1.cc: Likewise.
1633         * testsuite/set/modifiers/insert/2.cc: Likewise.
1634         * testsuite/set/modifiers/insert/3.cc: Likewise.
1635         * testsuite/set/modifiers/merge.cc: Likewise.
1636         * testsuite/set/modifiers/swap/1.cc: Likewise.
1637         * testsuite/set/modifiers/swap/2.cc: Likewise.
1638         * testsuite/set/modifiers/swap/3.cc: Likewise.
1639         * testsuite/set/operations/1.cc: Likewise.
1640         * testsuite/set/operations/count.cc: Likewise.
1641         * testsuite/set/operators/1_neg.cc: Likewise.
1642         * testsuite/unordered_map/allocator/copy.cc: Likewise.
1643         * testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
1644         * testsuite/unordered_map/allocator/minimal.cc: Likewise.
1645         * testsuite/unordered_map/allocator/move.cc: Likewise.
1646         * testsuite/unordered_map/allocator/move_assign.cc: Likewise.
1647         * testsuite/unordered_map/allocator/swap.cc: Likewise.
1648         * testsuite/unordered_map/cons/moveable.cc: Likewise.
1649         * testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
1650         * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
1651         * testsuite/unordered_map/debug/move_neg.cc: Likewise.
1652         * testsuite/unordered_map/dr761.cc: Likewise.
1653         * testsuite/unordered_map/erase/1.cc: Likewise.
1654         * testsuite/unordered_map/erase/24061-map.cc: Likewise.
1655         * testsuite/unordered_map/erase/54276.cc: Likewise.
1656         * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
1657         * testsuite/unordered_map/init-list.cc: Likewise.
1658         * testsuite/unordered_map/insert/24061-map.cc: Likewise.
1659         * testsuite/unordered_map/insert/57619.C: Likewise.
1660         * testsuite/unordered_map/insert/array_syntax.cc: Likewise.
1661         * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
1662         * testsuite/unordered_map/insert/map_range.cc: Likewise.
1663         * testsuite/unordered_map/insert/map_single.cc: Likewise.
1664         * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
1665         * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
1666         * testsuite/unordered_map/modifiers/61667.cc: Likewise.
1667         * testsuite/unordered_map/modifiers/emplace.cc: Likewise.
1668         * testsuite/unordered_map/modifiers/extract.cc: Likewise.
1669         * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
1670         * testsuite/unordered_map/modifiers/merge.cc: Likewise.
1671         * testsuite/unordered_map/modifiers/reserve.cc: Likewise.
1672         * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
1673         * testsuite/unordered_map/operations/count.cc: Likewise.
1674         * testsuite/unordered_map/operators/1.cc: Likewise.
1675         * testsuite/unordered_map/operators/2.cc: Likewise.
1676         * testsuite/unordered_multimap/allocator/copy.cc: Likewise.
1677         * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
1678         * testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
1679         * testsuite/unordered_multimap/allocator/move.cc: Likewise.
1680         * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
1681         * testsuite/unordered_multimap/allocator/swap.cc: Likewise.
1682         * testsuite/unordered_multimap/cons/moveable.cc: Likewise.
1683         * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
1684         * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
1685         * testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
1686         * testsuite/unordered_multimap/erase/1.cc: Likewise.
1687         * testsuite/unordered_multimap/erase/2.cc: Likewise.
1688         * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
1689         * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
1690         * testsuite/unordered_multimap/erase/54276.cc: Likewise.
1691         * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
1692         * testsuite/unordered_multimap/init-list.cc: Likewise.
1693         * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
1694         * testsuite/unordered_multimap/insert/51866.cc: Likewise.
1695         * testsuite/unordered_multimap/insert/52476.cc: Likewise.
1696         * testsuite/unordered_multimap/insert/53115.cc: Likewise.
1697         * testsuite/unordered_multimap/insert/57619.C: Likewise.
1698         * testsuite/unordered_multimap/insert/hint.cc: Likewise.
1699         * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
1700         * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
1701         * testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
1702         Likewise.
1703         * testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
1704         Likewise.
1705         * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
1706         * testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
1707         * testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
1708         * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
1709         * testsuite/unordered_multimap/operations/count.cc: Likewise.
1710         * testsuite/unordered_multimap/operators/1.cc: Likewise.
1711         * testsuite/unordered_multimap/operators/2.cc: Likewise.
1712         * testsuite/unordered_multiset/allocator/copy.cc: Likewise.
1713         * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
1714         * testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
1715         * testsuite/unordered_multiset/allocator/move.cc: Likewise.
1716         * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
1717         * testsuite/unordered_multiset/allocator/swap.cc: Likewise.
1718         * testsuite/unordered_multiset/cons/copy.cc: Likewise.
1719         * testsuite/unordered_multiset/cons/moveable.cc: Likewise.
1720         * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
1721         * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
1722         * testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
1723         * testsuite/unordered_multiset/erase/1.cc: Likewise.
1724         * testsuite/unordered_multiset/erase/2.cc: Likewise.
1725         * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
1726         * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
1727         * testsuite/unordered_multiset/init-list.cc: Likewise.
1728         * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
1729         * testsuite/unordered_multiset/insert/51866.cc: Likewise.
1730         * testsuite/unordered_multiset/insert/52476.cc: Likewise.
1731         * testsuite/unordered_multiset/insert/53115.cc: Likewise.
1732         * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
1733         * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
1734         * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
1735         * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
1736         * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
1737         * testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
1738         * testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
1739         * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
1740         * testsuite/unordered_multiset/operations/count.cc: Likewise.
1741         * testsuite/unordered_multiset/operators/1.cc: Likewise.
1742         * testsuite/unordered_set/allocator/copy.cc: Likewise.
1743         * testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
1744         * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
1745         * testsuite/unordered_set/allocator/minimal.cc: Likewise.
1746         * testsuite/unordered_set/allocator/move.cc: Likewise.
1747         * testsuite/unordered_set/allocator/move_assign.cc: Likewise.
1748         * testsuite/unordered_set/allocator/swap.cc: Likewise.
1749         * testsuite/unordered_set/buckets/swap.cc: Likewise.
1750         * testsuite/unordered_set/cons/moveable.cc: Likewise.
1751         * testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
1752         * testsuite/unordered_set/debug/debug_functions.cc: Likewise.
1753         * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
1754         * testsuite/unordered_set/debug/move_neg.cc: Likewise.
1755         * testsuite/unordered_set/erase/1.cc: Likewise.
1756         * testsuite/unordered_set/erase/24061-set.cc: Likewise.
1757         * testsuite/unordered_set/hash_policy/26132.cc: Likewise.
1758         * testsuite/unordered_set/hash_policy/71181.cc: Likewise.
1759         * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
1760         * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
1761         * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
1762         * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
1763         * testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
1764         * testsuite/unordered_set/init-list.cc: Likewise.
1765         * testsuite/unordered_set/insert/24061-set.cc: Likewise.
1766         * testsuite/unordered_set/insert/hash_policy.cc: Likewise.
1767         * testsuite/unordered_set/insert/move_range.cc: Likewise.
1768         * testsuite/unordered_set/insert/set_range.cc: Likewise.
1769         * testsuite/unordered_set/insert/set_single.cc: Likewise.
1770         * testsuite/unordered_set/insert/set_single_move.cc: Likewise.
1771         * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
1772         * testsuite/unordered_set/modifiers/emplace.cc: Likewise.
1773         * testsuite/unordered_set/modifiers/extract.cc: Likewise.
1774         * testsuite/unordered_set/modifiers/merge.cc: Likewise.
1775         * testsuite/unordered_set/modifiers/reserve.cc: Likewise.
1776         * testsuite/unordered_set/modifiers/swap.cc: Likewise.
1777         * testsuite/unordered_set/operations/count.cc: Likewise.
1778         * testsuite/unordered_set/operators/1.cc: Likewise.
1779         * testsuite/vector/allocator/copy.cc: Likewise.
1780         * testsuite/vector/allocator/copy_assign.cc: Likewise.
1781         * testsuite/vector/allocator/ext_ptr.cc: Likewise.
1782         * testsuite/vector/allocator/minimal.cc: Likewise.
1783         * testsuite/vector/allocator/move.cc: Likewise.
1784         * testsuite/vector/allocator/move_assign.cc: Likewise.
1785         * testsuite/vector/allocator/swap.cc: Likewise.
1786         * testsuite/vector/bool/6886.cc: Likewise.
1787         * testsuite/vector/bool/72847.cc: Likewise.
1788         * testsuite/vector/bool/allocator/copy.cc: Likewise.
1789         * testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
1790         * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
1791         * testsuite/vector/bool/allocator/move.cc: Likewise.
1792         * testsuite/vector/bool/allocator/move_assign.cc: Likewise.
1793         * testsuite/vector/bool/allocator/swap.cc: Likewise.
1794         * testsuite/vector/bool/capacity/1.cc: Likewise.
1795         * testsuite/vector/bool/capacity/29134.cc: Likewise.
1796         * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
1797         * testsuite/vector/bool/cons/1.cc: Likewise.
1798         * testsuite/vector/bool/cons/2.cc: Likewise.
1799         * testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
1800         * testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
1801         * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
1802         * testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
1803         * testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
1804         * testsuite/vector/bool/swap.cc: Likewise.
1805         * testsuite/vector/capacity/1.cc: Likewise.
1806         * testsuite/vector/capacity/2.cc: Likewise.
1807         * testsuite/vector/capacity/29134-2.cc: Likewise.
1808         * testsuite/vector/capacity/29134.cc: Likewise.
1809         * testsuite/vector/capacity/44190.cc: Likewise.
1810         * testsuite/vector/capacity/8230.cc: Likewise.
1811         * testsuite/vector/capacity/reserve/moveable.cc: Likewise.
1812         * testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
1813         * testsuite/vector/capacity/resize/1.cc: Likewise.
1814         * testsuite/vector/capacity/resize/moveable.cc: Likewise.
1815         * testsuite/vector/capacity/resize/moveable2.cc: Likewise.
1816         * testsuite/vector/capacity/resize/resize_size.cc: Likewise.
1817         * testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
1818         * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
1819         * testsuite/vector/cons/3.cc: Likewise.
1820         * testsuite/vector/cons/4.cc: Likewise.
1821         * testsuite/vector/cons/cons_size.cc: Likewise.
1822         * testsuite/vector/cons/moveable.cc: Likewise.
1823         * testsuite/vector/data_access/1.cc: Likewise.
1824         * testsuite/vector/debug/debug_functions.cc: Likewise.
1825         * testsuite/vector/debug/move_assign_neg.cc: Likewise.
1826         * testsuite/vector/debug/move_neg.cc: Likewise.
1827         * testsuite/vector/debug/multithreaded_swap.cc: Likewise.
1828         * testsuite/vector/element_access/1.cc: Likewise.
1829         * testsuite/vector/ext_pointer/citerators.cc: Likewise.
1830         * testsuite/vector/ext_pointer/data_access.cc: Likewise.
1831         * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
1832         * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
1833         * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
1834         * testsuite/vector/ext_pointer/resize.cc: Likewise.
1835         * testsuite/vector/modifiers/1.cc: Likewise.
1836         * testsuite/vector/modifiers/2.cc: Likewise.
1837         * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
1838         * testsuite/vector/modifiers/erase/1.cc: Likewise.
1839         * testsuite/vector/modifiers/erase/moveable.cc: Likewise.
1840         * testsuite/vector/modifiers/insert/1.cc: Likewise.
1841         * testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
1842         * testsuite/vector/modifiers/moveable.cc: Likewise.
1843         * testsuite/vector/modifiers/moveable2.cc: Likewise.
1844         * testsuite/vector/modifiers/push_back/49836.cc: Likewise.
1845         * testsuite/vector/modifiers/swap/1.cc: Likewise.
1846         * testsuite/vector/modifiers/swap/2.cc: Likewise.
1847         * testsuite/vector/modifiers/swap/3.cc: Likewise.
1848         * testsuite/vector/zero_sized_allocations.cc: Likewise.
1850 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
1852         PR libstdc++/77998
1853         * include/std/future (__future_base::_Deferred_state)
1854         (__future_base::_Async_state_impl): Use decltype to deduce return
1855         type, instead of _Invoker::result_type.
1856         * include/std/thread (thread::_Invoker::operator()): Likewise.
1857         (thread::_Invoker::result_type): Remove.
1859         PR libstdc++/77987
1860         * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
1861         value to pointer of the correct type to swap, to support conversions
1862         allowed by LWG 2118 / N4089.
1863         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
1864         incompatible deleters from ...
1865         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
1866         * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
1867         incompatible pointers to ...
1868         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
1869         destructor definition to base class. Test for invalid derived-to-base
1870         conversion.
1872         * doc/xml/manual/status_cxx2017.xml: Update status.
1873         * doc/html/*: Regenerate.
1874         * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
1875         Return a reference in C++17 mode.
1876         * include/bits/forward_list.h (forward_list::emplace_front): Likewise.
1877         * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
1878         * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
1879         Likewise.
1880         * include/bits/stl_list.h (list::emplace_front, list::emplace_back):
1881         Likewise.
1882         * include/bits/stl_queue.h (queue::emplace): Likewise.
1883         * include/bits/stl_stack.h (stack::emplace): Likewise.
1884         * include/bits/stl_vector.h (vector::emplace_back): Likewise.
1885         * include/bits/vector.tcc (vector::emplace_back): Likewise.
1886         * include/debug/deque (__gnu_debug::deque::emplace_front)
1887         (__gnu_debug::deque::emplace_back): Likewise.
1888         * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
1889         * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
1890         New.
1891         * testsuite/23_containers/forward_list/modifiers/
1892         emplace_cxx17_return.cc: New.
1893         * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
1894         * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
1895         * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
1896         * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
1897         * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
1898         New.
1900 2016-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
1902         * testsuite/22_locale/classification/isblank.cc: Remove 'test'
1903         variables.
1904         * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
1905         * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
1906         * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
1907         * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
1908         * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
1909         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
1910         * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
1911         * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
1912         * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
1913         * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
1914         * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
1915         * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
1916         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
1917         * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
1918         * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
1919         * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
1920         * testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
1921         * testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
1922         * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
1923         * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
1924         * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
1925         * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
1926         * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
1927         * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
1928         * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
1929         * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
1930         * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
1931         * testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
1932         * testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
1933         * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
1934         * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
1935         * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
1936         * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
1937         * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
1938         * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
1939         * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
1940         * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
1941         * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
1942         * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
1943         * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
1944         * testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
1945         * testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
1946         * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
1947         * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
1948         * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
1949         * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
1950         * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
1951         * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
1952         * testsuite/22_locale/collate/compare/char/1.cc: Likewise.
1953         * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
1954         * testsuite/22_locale/collate/compare/char/3.cc: Likewise.
1955         * testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
1956         * testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
1957         * testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
1958         * testsuite/22_locale/collate/hash/char/1.cc: Likewise.
1959         * testsuite/22_locale/collate/hash/char/2.cc: Likewise.
1960         * testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
1961         * testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
1962         * testsuite/22_locale/collate/transform/char/2.cc: Likewise.
1963         * testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
1964         * testsuite/22_locale/collate/transform/char/3.cc: Likewise.
1965         * testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
1966         * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
1967         * testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
1968         * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
1969         * testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
1970         * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
1971         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
1972         * testsuite/22_locale/ctype/is/char/3.cc: Likewise.
1973         * testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
1974         * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
1975         * testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
1976         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
1977         * testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
1978         * testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
1979         * testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
1980         * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
1981         * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
1982         * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
1983         * testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
1984         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
1985         * testsuite/22_locale/ctype/to/char/1.cc: Likewise.
1986         * testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
1987         * testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
1988         * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
1989         * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
1990         * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
1991         * testsuite/22_locale/ctype_base/11844.cc: Likewise.
1992         * testsuite/22_locale/facet/1.cc: Likewise.
1993         * testsuite/22_locale/facet/2.cc: Likewise.
1994         * testsuite/22_locale/facet/25421.cc: Likewise.
1995         * testsuite/22_locale/global_templates/1.cc: Likewise.
1996         * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
1997         Likewise.
1998         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
1999         Likewise.
2000         * testsuite/22_locale/locale/13630.cc: Likewise.
2001         * testsuite/22_locale/locale/cons/12352.cc: Likewise.
2002         * testsuite/22_locale/locale/cons/12438.cc: Likewise.
2003         * testsuite/22_locale/locale/cons/2.cc: Likewise.
2004         * testsuite/22_locale/locale/cons/29217.cc: Likewise.
2005         * testsuite/22_locale/locale/cons/38365.cc: Likewise.
2006         * testsuite/22_locale/locale/cons/38368.cc: Likewise.
2007         * testsuite/22_locale/locale/cons/4.cc: Likewise.
2008         * testsuite/22_locale/locale/cons/40184.cc: Likewise.
2009         * testsuite/22_locale/locale/cons/5.cc: Likewise.
2010         * testsuite/22_locale/locale/cons/6.cc: Likewise.
2011         * testsuite/22_locale/locale/cons/7.cc: Likewise.
2012         * testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
2013         * testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
2014         * testsuite/22_locale/locale/cons/8.cc: Likewise.
2015         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
2016         * testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
2017         * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
2018         * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
2019         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
2020         * testsuite/22_locale/locale/operations/1.cc: Likewise.
2021         * testsuite/22_locale/locale/operations/2.cc: Likewise.
2022         * testsuite/22_locale/messages/13631.cc: Likewise.
2023         * testsuite/22_locale/messages/members/char/1.cc: Likewise.
2024         * testsuite/22_locale/messages/members/char/2.cc: Likewise.
2025         * testsuite/22_locale/messages/members/char/3.cc: Likewise.
2026         * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
2027         * testsuite/22_locale/money_get/get/char/1.cc: Likewise.
2028         * testsuite/22_locale/money_get/get/char/10.cc: Likewise.
2029         * testsuite/22_locale/money_get/get/char/11.cc: Likewise.
2030         * testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
2031         * testsuite/22_locale/money_get/get/char/12.cc: Likewise.
2032         * testsuite/22_locale/money_get/get/char/13.cc: Likewise.
2033         * testsuite/22_locale/money_get/get/char/14.cc: Likewise.
2034         * testsuite/22_locale/money_get/get/char/15.cc: Likewise.
2035         * testsuite/22_locale/money_get/get/char/16.cc: Likewise.
2036         * testsuite/22_locale/money_get/get/char/17.cc: Likewise.
2037         * testsuite/22_locale/money_get/get/char/18.cc: Likewise.
2038         * testsuite/22_locale/money_get/get/char/19.cc: Likewise.
2039         * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
2040         * testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
2041         * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
2042         * testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
2043         * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
2044         * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
2045         * testsuite/22_locale/money_get/get/char/5.cc: Likewise.
2046         * testsuite/22_locale/money_get/get/char/6.cc: Likewise.
2047         * testsuite/22_locale/money_get/get/char/7.cc: Likewise.
2048         * testsuite/22_locale/money_get/get/char/8.cc: Likewise.
2049         * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
2050         * testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
2051         * testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
2052         * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
2053         * testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
2054         * testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
2055         * testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
2056         * testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
2057         * testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
2058         * testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
2059         * testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
2060         * testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
2061         * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
2062         * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
2063         * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
2064         * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
2065         * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
2066         * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
2067         * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
2068         * testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
2069         * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
2070         * testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
2071         * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
2072         * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
2073         * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
2074         * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
2075         * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
2076         * testsuite/22_locale/money_put/put/char/4.cc: Likewise.
2077         * testsuite/22_locale/money_put/put/char/5.cc: Likewise.
2078         * testsuite/22_locale/money_put/put/char/6.cc: Likewise.
2079         * testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
2080         * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
2081         * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
2082         * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
2083         * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
2084         * testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
2085         * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
2086         * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
2087         * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
2088         * testsuite/22_locale/moneypunct/40712.cc: Likewise.
2089         * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
2090         * testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
2091         * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
2092         * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
2093         * testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
2094         * testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
2095         * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
2096         * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
2097         * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
2098         * testsuite/22_locale/num_get/get/char/11.cc: Likewise.
2099         * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
2100         * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
2101         * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
2102         * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
2103         * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
2104         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
2105         * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
2106         * testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
2107         * testsuite/22_locale/num_get/get/char/3.cc: Likewise.
2108         * testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
2109         * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
2110         * testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
2111         * testsuite/22_locale/num_get/get/char/4.cc: Likewise.
2112         * testsuite/22_locale/num_get/get/char/5.cc: Likewise.
2113         * testsuite/22_locale/num_get/get/char/6.cc: Likewise.
2114         * testsuite/22_locale/num_get/get/char/7.cc: Likewise.
2115         * testsuite/22_locale/num_get/get/char/8.cc: Likewise.
2116         * testsuite/22_locale/num_get/get/char/9.cc: Likewise.
2117         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
2118         * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
2119         * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
2120         * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
2121         * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
2122         * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
2123         * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
2124         * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
2125         * testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
2126         * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
2127         * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
2128         * testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
2129         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
2130         * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
2131         * testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
2132         * testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
2133         * testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
2134         * testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
2135         * testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
2136         * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
2137         * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
2138         * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
2139         * testsuite/22_locale/num_put/put/char/10.cc: Likewise.
2140         * testsuite/22_locale/num_put/put/char/11.cc: Likewise.
2141         * testsuite/22_locale/num_put/put/char/12.cc: Likewise.
2142         * testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
2143         * testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
2144         * testsuite/22_locale/num_put/put/char/2.cc: Likewise.
2145         * testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
2146         * testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
2147         * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
2148         * testsuite/22_locale/num_put/put/char/3.cc: Likewise.
2149         * testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
2150         * testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
2151         * testsuite/22_locale/num_put/put/char/4.cc: Likewise.
2152         * testsuite/22_locale/num_put/put/char/5.cc: Likewise.
2153         * testsuite/22_locale/num_put/put/char/6.cc: Likewise.
2154         * testsuite/22_locale/num_put/put/char/7.cc: Likewise.
2155         * testsuite/22_locale/num_put/put/char/8.cc: Likewise.
2156         * testsuite/22_locale/num_put/put/char/9.cc: Likewise.
2157         * testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
2158         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
2159         * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
2160         * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
2161         * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
2162         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2163         * testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
2164         * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
2165         * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
2166         * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
2167         * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
2168         * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
2169         * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
2170         * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
2171         * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
2172         * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
2173         * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
2174         * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
2175         * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
2176         * testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
2177         * testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
2178         * testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
2179         * testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
2180         * testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
2181         * testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
2182         * testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
2183         * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
2184         * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
2185         * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
2186         * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
2187         * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
2188         * testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
2189         * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
2190         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
2191         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
2192         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
2193         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
2194         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
2195         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
2196         * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
2197         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
2198         * testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
2199         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
2200         * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
2201         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
2202         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
2203         * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
2204         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
2205         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
2206         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
2207         * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
2208         * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
2209         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
2210         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
2211         * testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
2212         * testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
2213         * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
2214         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
2215         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
2216         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
2217         * testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
2218         * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
2219         * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
2220         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
2221         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
2222         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
2223         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
2224         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
2225         * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
2226         * testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
2227         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
2228         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
2229         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
2230         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
2231         * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
2232         * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
2233         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
2234         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
2235         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
2236         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
2237         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2238         * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
2239         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
2240         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
2241         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
2242         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2243         * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
2244         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
2245         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
2246         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
2247         * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
2248         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
2249         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
2250         * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
2251         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
2252         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
2253         * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
2254         * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
2255         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
2256         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
2257         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
2258         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
2259         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
2260         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
2261         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
2262         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
2263         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
2264         * testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
2265         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
2266         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
2267         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
2268         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
2269         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
2270         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
2271         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
2272         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
2273         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
2274         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
2275         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
2276         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
2277         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
2278         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
2279         * testsuite/30_threads/async/42819.cc: Likewise.
2280         * testsuite/30_threads/async/any.cc: Likewise.
2281         * testsuite/30_threads/async/async.cc: Likewise.
2282         * testsuite/30_threads/async/except.cc: Likewise.
2283         * testsuite/30_threads/async/launch.cc: Likewise.
2284         * testsuite/30_threads/async/sync.cc: Likewise.
2285         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2286         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2287         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2288         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2289         * testsuite/30_threads/condition_variable/members/3.cc: Likewise.
2290         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2291         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2292         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2293         * testsuite/30_threads/future/members/45133.cc: Likewise.
2294         * testsuite/30_threads/future/members/get.cc: Likewise.
2295         * testsuite/30_threads/future/members/get2.cc: Likewise.
2296         * testsuite/30_threads/future/members/share.cc: Likewise.
2297         * testsuite/30_threads/future/members/valid.cc: Likewise.
2298         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2299         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2300         * testsuite/30_threads/lock/1.cc: Likewise.
2301         * testsuite/30_threads/lock/2.cc: Likewise.
2302         * testsuite/30_threads/lock/3.cc: Likewise.
2303         * testsuite/30_threads/lock/4.cc: Likewise.
2304         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2305         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2306         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2307         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2308         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2309         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2310         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2311         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2312         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2313         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2314         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2315         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2316         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2317         * testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
2318         Likewise.
2319         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2320         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2321         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2322         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2323         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2324         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2325         * testsuite/30_threads/promise/cons/move.cc: Likewise.
2326         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2327         * testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
2328         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2329         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2330         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2331         * testsuite/30_threads/promise/members/swap.cc: Likewise.
2332         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2333         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2334         Likewise.
2335         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2336         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2337         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2338         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2339         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2340         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2341         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2342         Likewise.
2343         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2344         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2345         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2346         Likewise.
2347         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2348         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2349         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2350         Likewise.
2351         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2352         Likewise.
2353         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2354         Likewise.
2355         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2356         Likewise.
2357         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2358         Likewise.
2359         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2360         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2361         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2362         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2363         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2364         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2365         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2366         * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
2367         * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
2368         * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
2369         * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
2370         * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
2371         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
2372         * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
2373         * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
2374         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
2375         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
2376         * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
2377         * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
2378         * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
2379         * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
2380         * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
2381         * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
2382         * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
2383         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
2384         * testsuite/30_threads/this_thread/1.cc: Likewise.
2385         * testsuite/30_threads/this_thread/2.cc: Likewise.
2386         * testsuite/30_threads/this_thread/3.cc: Likewise.
2387         * testsuite/30_threads/this_thread/4.cc: Likewise.
2388         * testsuite/30_threads/this_thread/60421.cc: Likewise.
2389         * testsuite/30_threads/thread/cons/1.cc: Likewise.
2390         * testsuite/30_threads/thread/cons/2.cc: Likewise.
2391         * testsuite/30_threads/thread/cons/3.cc: Likewise.
2392         * testsuite/30_threads/thread/cons/4.cc: Likewise.
2393         * testsuite/30_threads/thread/cons/5.cc: Likewise.
2394         * testsuite/30_threads/thread/cons/6.cc: Likewise.
2395         * testsuite/30_threads/thread/cons/7.cc: Likewise.
2396         * testsuite/30_threads/thread/cons/8.cc: Likewise.
2397         * testsuite/30_threads/thread/cons/9.cc: Likewise.
2398         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2399         * testsuite/30_threads/thread/members/1.cc: Likewise.
2400         * testsuite/30_threads/thread/members/2.cc: Likewise.
2401         * testsuite/30_threads/thread/members/3.cc: Likewise.
2402         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
2403         * testsuite/30_threads/thread/swap/1.cc: Likewise.
2404         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2405         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2406         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2407         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2408         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2409         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2410         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2411         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2412         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2413         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2414         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2415         * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
2416         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2417         * testsuite/30_threads/try_lock/1.cc: Likewise.
2418         * testsuite/30_threads/try_lock/2.cc: Likewise.
2419         * testsuite/30_threads/try_lock/3.cc: Likewise.
2420         * testsuite/30_threads/try_lock/4.cc: Likewise.
2421         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2422         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2423         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2424         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2425         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2426         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2427         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2428         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2429         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2430         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2431         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2432         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2433         not_shared.cc: Likewise.
2434         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2435         not_shared2.cc: Likewise.
2436         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2437         not_shared3.cc: Likewise.
2438         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2439         shared.cc: Likewise.
2440         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2441         still_shared.cc: Likewise.
2442         * testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
2443         Likewise.
2444         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
2445         Likewise.
2446         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2447         Likewise.
2448         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2449         auto_ptr_rvalue_neg.cc: Likewise.
2450         * testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
2451         Likewise.
2452         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2453         shared_ptr_neg.cc: Likewise.
2454         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
2455         Likewise.
2456         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2457         Likewise.
2458         * testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
2459         * testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
2460         Likewise.
2461         * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
2462         Likewise.
2463         * testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
2464         Likewise.
2465         * testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
2466         * testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
2467         * testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
2468         * testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
2469         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
2470         Likewise.
2471         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
2472         Likewise.
2473         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
2474         Likewise.
2475         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
2476         Likewise.
2477         * testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
2478         Likewise.
2479         * testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
2480         Likewise.
2481         * testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
2482         Likewise.
2483         * testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
2484         Likewise.
2485         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2486         default_weaktoshared.cc: Likewise.
2487         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2488         mutex_weaktoshared.cc: Likewise.
2489         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
2490         * testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
2491         * testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
2492         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
2493         * testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
2494         * testsuite/tr1/3_function_objects/function/1.cc: Likewise.
2495         * testsuite/tr1/3_function_objects/function/2.cc: Likewise.
2496         * testsuite/tr1/3_function_objects/function/3.cc: Likewise.
2497         * testsuite/tr1/3_function_objects/function/4.cc: Likewise.
2498         * testsuite/tr1/3_function_objects/function/5.cc: Likewise.
2499         * testsuite/tr1/3_function_objects/function/6.cc: Likewise.
2500         * testsuite/tr1/3_function_objects/function/7.cc: Likewise.
2501         * testsuite/tr1/3_function_objects/function/8.cc: Likewise.
2502         * testsuite/tr1/3_function_objects/function/9.cc: Likewise.
2503         * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
2504         Likewise.
2505         * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
2506         Likewise.
2507         * testsuite/tr1/3_function_objects/result_of.cc: Likewise.
2508         * testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
2509         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
2510         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
2511         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
2512         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
2513         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
2514         * testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
2515         * testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
2516         * testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
2517         * testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
2518         Likewise.
2519         * testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
2520         * testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
2521         * testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
2522         Likewise.
2523         * testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
2524         * testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
2525         Likewise.
2526         * testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
2527         Likewise.
2528         * testsuite/tr1/4_metaprogramming/integral_constant/
2529         static_definition.cc: Likewise.
2530         * testsuite/tr1/4_metaprogramming/integral_constant/
2531         true_false_value.cc: Likewise.
2532         * testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
2533         * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
2534         * testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
2535         * testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
2536         * testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
2537         * testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
2538         * testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
2539         * testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
2540         * testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
2541         * testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
2542         * testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
2543         * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
2544         * testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
2545         * testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
2546         * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
2547         * testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
2548         * testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
2549         Likewise.
2550         * testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
2551         Likewise.
2552         * testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
2553         * testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
2554         * testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
2555         * testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
2556         * testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
2557         * testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
2558         * testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
2559         * testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
2560         * testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
2561         * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
2562         * testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
2563         * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
2564         * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
2565         * testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
2566         * testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
2567         * testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
2568         * testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
2569         * testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
2570         * testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
2571         * testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
2572         * testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
2573         * testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
2574         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2575         equal.cc: Likewise.
2576         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2577         not_equal.cc: Likewise.
2578         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2579         serialize.cc: Likewise.
2580         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2581         cons/default.cc: Likewise.
2582         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2583         cons/gen1.cc: Likewise.
2584         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2585         operators/equal.cc: Likewise.
2586         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2587         operators/not_equal.cc: Likewise.
2588         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2589         operators/serialize.cc: Likewise.
2590         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2591         cons/default.cc: Likewise.
2592         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2593         cons/gen1.cc: Likewise.
2594         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2595         operators/equal.cc: Likewise.
2596         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2597         operators/not_equal.cc: Likewise.
2598         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2599         operators/serialize.cc: Likewise.
2600         * testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
2601         * testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
2602         * testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
2603         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
2604         default.cc: Likewise.
2605         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
2606         token.cc: Likewise.
2607         * testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
2608         * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
2609         * testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
2610         * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
2611         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2612         cons/default.cc: Likewise.
2613         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2614         cons/gen1.cc: Likewise.
2615         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2616         operators/equal.cc: Likewise.
2617         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2618         operators/not_equal.cc: Likewise.
2619         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2620         operators/serialize.cc: Likewise.
2621         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2622         cons/default.cc: Likewise.
2623         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2624         cons/gen1.cc: Likewise.
2625         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2626         operators/equal.cc: Likewise.
2627         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2628         operators/not_equal.cc: Likewise.
2629         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2630         operators/serialize.cc: Likewise.
2631         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
2632         Likewise.
2633         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
2634         default.cc: Likewise.
2635         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
2636         range.cc: Likewise.
2637         * testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
2638         default.cc: Likewise.
2639         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2640         equal.cc: Likewise.
2641         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2642         not_equal.cc: Likewise.
2643         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2644         serialize.cc: Likewise.
2645         * testsuite/tr1/5_numerical_facilities/special_functions/
2646         08_cyl_bessel_i/check_value.cc: Likewise.
2647         * testsuite/tr1/5_numerical_facilities/special_functions/
2648         08_cyl_bessel_i/pr56216.cc: Likewise.
2649         * testsuite/tr1/5_numerical_facilities/special_functions/
2650         09_cyl_bessel_j/check_value.cc: Likewise.
2651         * testsuite/tr1/5_numerical_facilities/special_functions/
2652         10_cyl_bessel_k/check_value.cc: Likewise.
2653         * testsuite/tr1/5_numerical_facilities/special_functions/
2654         11_cyl_neumann/check_value.cc: Likewise.
2655         * testsuite/tr1/5_numerical_facilities/special_functions/
2656         16_hermite/check_value.cc: Likewise.
2657         * testsuite/tr1/5_numerical_facilities/special_functions/
2658         21_sph_bessel/check_value.cc: Likewise.
2659         * testsuite/tr1/5_numerical_facilities/special_functions/
2660         23_sph_neumann/check_value.cc: Likewise.
2661         * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
2662         * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
2663         * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
2664         * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
2665         Likewise.
2666         * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
2667         Likewise.
2668         * testsuite/tr1/6_containers/array/comparison_operators/
2669         greater_or_equal.cc: Likewise.
2670         * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
2671         Likewise.
2672         * testsuite/tr1/6_containers/array/comparison_operators/
2673         less_or_equal.cc: Likewise.
2674         * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
2675         Likewise.
2676         * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
2677         Likewise.
2678         * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
2679         * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
2680         * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
2681         * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
2682         Likewise.
2683         * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
2684         * testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
2685         * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
2686         Likewise.
2687         * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
2688         Likewise.
2689         * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
2690         Likewise.
2691         * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
2692         * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
2693         Likewise.
2694         * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
2695         Likewise.
2696         * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
2697         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
2698         *
2699         testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
2700         Likewise.
2701         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
2702         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
2703         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
2704         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
2705         Likewise.
2706         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
2707         Likewise.
2708         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
2709         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
2710         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
2711         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
2712         * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
2713         * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
2714         Likewise.
2715         * testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
2716         * testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
2717         * testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
2718         * testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
2719         Likewise.
2720         * testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
2721         Likewise.
2722         * testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
2723         Likewise.
2724         * testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
2725         Likewise.
2726         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
2727         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
2728         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2729         29134-multimap.cc: Likewise.
2730         * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
2731         * testsuite/tr1/6_containers/unordered_multimap/erase/
2732         24061-multimap.cc: Likewise.
2733         * testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
2734         Likewise.
2735         * testsuite/tr1/6_containers/unordered_multimap/insert/
2736         24061-multimap.cc: Likewise.
2737         * testsuite/tr1/6_containers/unordered_multimap/insert/
2738         multimap_range.cc: Likewise.
2739         * testsuite/tr1/6_containers/unordered_multimap/insert/
2740         multimap_single.cc: Likewise.
2741         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
2742         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
2743         * testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
2744         * testsuite/tr1/6_containers/unordered_multiset/capacity/
2745         29134-multiset.cc: Likewise.
2746         * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
2747         * testsuite/tr1/6_containers/unordered_multiset/erase/
2748         24061-multiset.cc: Likewise.
2749         * testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
2750         Likewise.
2751         * testsuite/tr1/6_containers/unordered_multiset/insert/
2752         24061-multiset.cc: Likewise.
2753         * testsuite/tr1/6_containers/unordered_multiset/insert/
2754         multiset_range.cc: Likewise.
2755         * testsuite/tr1/6_containers/unordered_multiset/insert/
2756         multiset_single.cc: Likewise.
2757         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
2758         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
2759         * testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
2760         * testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
2761         * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
2762         Likewise.
2763         * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
2764         * testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
2765         * testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
2766         * testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
2767         Likewise.
2768         * testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
2769         Likewise.
2770         * testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
2771         Likewise.
2772         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
2773         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
2774         * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
2775         * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
2776         default.cc: Likewise.
2777         * testsuite/tr1/7_regular_expressions/regex_traits/char/
2778         translate_nocase.cc: Likewise.
2779         * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
2780         Likewise.
2781         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
2782         translate_nocase.cc: Likewise.
2783         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
2784         Likewise.
2785         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
2786         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
2788 2016-10-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
2790         Make sure the return value of malloc_allocator::allocate
2791         is zero-initialized so that checking it for non-zero works
2792         later.
2793         * include/ext/malloc_allocator.h (malloc_allocator::allocate):
2794         Initialize the return value.
2795         * testsuite/ext/malloc_allocator/sanity.cc: New.
2797 2016-10-14  Eelis van der Weegen  <eelis@eelis.net>
2799         * include/bits/stl_algo.h (shuffle): Extract two random numbers from
2800         each generator invocation when its range is large enough.
2802 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
2804         * testsuite/experimental/algorithm/sample.cc: Qualify calls to
2805         resolve ambiguity between std::sample and std::experimental::sample.
2807         * include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
2808         Simplify forwarding from tuple of references.
2809         (_Maybe_wrap_member_pointer): Remove.
2810         (_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
2811         Use std::__invoke.
2812         (_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
2813         (_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
2814         return type deduction.
2815         (_Bind::operator(), _Bind::operator() const): Use new helpers.
2816         (_Bind::operator() volatile, _Bind::operator() const volatile):
2817         Likewise. Add deprecated attribute for C++17 mode.
2818         (_Bind_result::__call): Use std::__invoke.
2819         (_Bind_result::operator() volatile)
2820         (_Bind_result::operator() const volatile): Add deprecated attribute.
2821         (_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
2822         (_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
2823         (bind, bind<R>): Don't use __maybe_type.
2824         * src/c++11/compatibility-thread-c++0x.cc
2825         (_Maybe_wrap_member_pointer): Define here for compatibility symbols.
2826         * testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
2827         in C++17 mode.
2828         * testsuite/20_util/bind/cv_quals.cc: Likewise.
2829         * testsuite/20_util/bind/cv_quals_2.cc: Likewise.
2831         * include/std/scoped_allocator (scoped_allocator_adaptor): Forward
2832         piecewise construction arguments as tuples of references, to avoid
2833         copies (related to LWG 2511).
2834         * testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
2836 2016-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
2838         * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
2839         * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
2840         * testsuite/26_numerics/complex/13450.cc: Likewise.
2841         * testsuite/26_numerics/complex/50880.cc: Likewise.
2842         * testsuite/26_numerics/complex/c99.cc: Likewise.
2843         * testsuite/26_numerics/complex/cons/48760.cc: Likewise.
2844         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2845         * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
2846         * testsuite/26_numerics/complex/dr844.cc: Likewise.
2847         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
2848         Likewise.
2849         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
2850         Likewise.
2851         * testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
2852         * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
2853         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2854         * testsuite/26_numerics/headers/cmath/
2855         c99_classification_macros_c++11.c: Likewise.c
2856         * testsuite/26_numerics/headers/cmath/
2857         c99_classification_macros_c++98.cc: Likewise.
2858         * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
2859         * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
2860         * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
2861         * testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
2862         * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
2863         * testsuite/26_numerics/inner_product/1.cc: Likewise.
2864         * testsuite/26_numerics/iota/1.cc: Likewise.
2865         * testsuite/26_numerics/partial_sum/1.cc: Likewise.
2866         * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
2867         Likewise.
2868         * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
2869         Likewise.
2870         * testsuite/26_numerics/random/bernoulli_distribution/operators/
2871         equal.cc: Likewise.
2872         * testsuite/26_numerics/random/bernoulli_distribution/operators/
2873         inequal.cc: Likewise.
2874         * testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
2875         Likewise.
2876         * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
2877         Likewise.
2878         * testsuite/26_numerics/random/binomial_distribution/operators/
2879         equal.cc: Likewise.
2880         * testsuite/26_numerics/random/binomial_distribution/operators/
2881         inequal.cc: Likewise.
2882         * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
2883         Likewise.
2884         * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
2885         Likewise.
2886         * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
2887         Likewise.
2888         * testsuite/26_numerics/random/cauchy_distribution/operators/
2889         inequal.cc: Likewise.
2890         * testsuite/26_numerics/random/chi_squared_distribution/cons/
2891         default.cc: Likewise.
2892         * testsuite/26_numerics/random/chi_squared_distribution/cons/
2893         parms.cc: Likewise.
2894         * testsuite/26_numerics/random/chi_squared_distribution/operators/
2895         equal.cc: Likewise.
2896         * testsuite/26_numerics/random/chi_squared_distribution/operators/
2897         inequal.cc: Likewise.
2898         * testsuite/26_numerics/random/default_random_engine.cc: Likewise.
2899         * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
2900         Likewise.
2901         * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
2902         Likewise.
2903         * testsuite/26_numerics/random/discard_block_engine/operators/
2904         inequal.cc: Likewise.
2905         * testsuite/26_numerics/random/discard_block_engine/operators/
2906         serialize.cc: Likewise.
2907         * testsuite/26_numerics/random/discrete_distribution/cons/
2908         default.cc: Likewise.
2909         * testsuite/26_numerics/random/discrete_distribution/cons/
2910         initlist.cc: Likewise.
2911         * testsuite/26_numerics/random/discrete_distribution/cons/
2912         num_xbound_fun.cc: Likewise.
2913         * testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
2914         Likewise.
2915         * testsuite/26_numerics/random/discrete_distribution/operators/
2916         equal.cc: Likewise.
2917         * testsuite/26_numerics/random/discrete_distribution/operators/
2918         inequal.cc: Likewise.
2919         * testsuite/26_numerics/random/exponential_distribution/cons/
2920         default.cc: Likewise.
2921         * testsuite/26_numerics/random/exponential_distribution/cons/
2922         parms.cc: Likewise.
2923         * testsuite/26_numerics/random/exponential_distribution/operators/
2924         equal.cc: Likewise.
2925         * testsuite/26_numerics/random/exponential_distribution/operators/
2926         inequal.cc: Likewise.
2927         * testsuite/26_numerics/random/extreme_value_distribution/cons/
2928         default.cc: Likewise.
2929         * testsuite/26_numerics/random/extreme_value_distribution/cons/
2930         parms.cc: Likewise.
2931         * testsuite/26_numerics/random/extreme_value_distribution/operators/
2932         equal.cc: Likewise.
2933         * testsuite/26_numerics/random/extreme_value_distribution/operators/
2934         inequal.cc: Likewise.
2935         * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
2936         Likewise.
2937         * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
2938         Likewise.
2939         * testsuite/26_numerics/random/fisher_f_distribution/operators/
2940         equal.cc: Likewise.
2941         * testsuite/26_numerics/random/fisher_f_distribution/operators/
2942         inequal.cc: Likewise.
2943         * testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
2944         Likewise.
2945         * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
2946         Likewise.
2947         * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
2948         Likewise.
2949         * testsuite/26_numerics/random/gamma_distribution/operators/
2950         inequal.cc: Likewise.
2951         * testsuite/26_numerics/random/geometric_distribution/cons/
2952         default.cc: Likewise.
2953         * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
2954         Likewise.
2955         * testsuite/26_numerics/random/geometric_distribution/operators/
2956         equal.cc: Likewise.
2957         * testsuite/26_numerics/random/geometric_distribution/operators/
2958         inequal.cc: Likewise.
2959         * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
2960         Likewise.
2961         * testsuite/26_numerics/random/independent_bits_engine/operators/
2962         equal.cc: Likewise.
2963         * testsuite/26_numerics/random/independent_bits_engine/operators/
2964         inequal.cc: Likewise.
2965         * testsuite/26_numerics/random/independent_bits_engine/operators/
2966         serialize.cc: Likewise.
2967         * testsuite/26_numerics/random/knuth_b.cc: Likewise.
2968         * testsuite/26_numerics/random/linear_congruential_engine/cons/
2969         55215.cc: Likewise.
2970         * testsuite/26_numerics/random/linear_congruential_engine/cons/
2971         default.cc: Likewise.
2972         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2973         51795.cc: Likewise.
2974         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2975         equal.cc: Likewise.
2976         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2977         inequal.cc: Likewise.
2978         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2979         serialize.cc: Likewise.
2980         * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
2981         Likewise.
2982         * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
2983         Likewise.
2984         * testsuite/26_numerics/random/lognormal_distribution/operators/
2985         equal.cc: Likewise.
2986         * testsuite/26_numerics/random/lognormal_distribution/operators/
2987         inequal.cc: Likewise.
2988         * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
2989         Likewise.
2990         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
2991         default.cc: Likewise.
2992         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2993         equal.cc: Likewise.
2994         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2995         inequal.cc: Likewise.
2996         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2997         serialize.cc: Likewise.
2998         * testsuite/26_numerics/random/minstd_rand.cc: Likewise.
2999         * testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
3000         * testsuite/26_numerics/random/mt19937.cc: Likewise.
3001         * testsuite/26_numerics/random/mt19937_64.cc: Likewise.
3002         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3003         default.cc: Likewise.
3004         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3005         parms.cc: Likewise.
3006         * testsuite/26_numerics/random/negative_binomial_distribution/
3007         operators/equal.cc: Likewise.
3008         * testsuite/26_numerics/random/negative_binomial_distribution/
3009         operators/inequal.cc: Likewise.
3010         * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
3011         Likewise.
3012         * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
3013         Likewise.
3014         * testsuite/26_numerics/random/normal_distribution/operators/
3015         equal.cc: Likewise.
3016         * testsuite/26_numerics/random/normal_distribution/operators/
3017         inequal.cc: Likewise.
3018         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3019         default.cc: Likewise.
3020         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3021         initlist_fun.cc: Likewise.
3022         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3023         num_xbound_fun.cc: Likewise.
3024         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
3025         range.cc: Likewise.
3026         * testsuite/26_numerics/random/piecewise_constant_distribution/
3027         operators/equal.cc: Likewise.
3028         * testsuite/26_numerics/random/piecewise_constant_distribution/
3029         operators/inequal.cc: Likewise.
3030         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3031         default.cc: Likewise.
3032         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3033         initlist_fun.cc: Likewise.
3034         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3035         num_xbound_fun.cc: Likewise.
3036         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
3037         range.cc: Likewise.
3038         * testsuite/26_numerics/random/piecewise_linear_distribution/
3039         operators/equal.cc: Likewise.
3040         * testsuite/26_numerics/random/piecewise_linear_distribution/
3041         operators/inequal.cc: Likewise.
3042         * testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
3043         Likewise.
3044         * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
3045         Likewise.
3046         * testsuite/26_numerics/random/poisson_distribution/operators/
3047         equal.cc: Likewise.
3048         * testsuite/26_numerics/random/poisson_distribution/operators/
3049         inequal.cc: Likewise.
3050         * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
3051         * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
3052         * testsuite/26_numerics/random/ranlux24.cc: Likewise.
3053         * testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
3054         * testsuite/26_numerics/random/ranlux48.cc: Likewise.
3055         * testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
3056         * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
3057         * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
3058         Likewise.
3059         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3060         equal.cc: Likewise.
3061         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3062         inequal.cc: Likewise.
3063         * testsuite/26_numerics/random/shuffle_order_engine/operators/
3064         serialize.cc: Likewise.
3065         * testsuite/26_numerics/random/student_t_distribution/cons/
3066         default.cc: Likewise.
3067         * testsuite/26_numerics/random/student_t_distribution/cons/
3068         parms.cc: Likewise.
3069         * testsuite/26_numerics/random/student_t_distribution/operators/
3070         equal.cc: Likewise.
3071         * testsuite/26_numerics/random/student_t_distribution/operators/
3072         inequal.cc: Likewise.
3073         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
3074         55215.cc: Likewise.
3075         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
3076         default.cc: Likewise.
3077         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3078         equal.cc: Likewise.
3079         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3080         inequal.cc: Likewise.
3081         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
3082         serialize.cc: Likewise.
3083         * testsuite/26_numerics/random/uniform_int_distribution/cons/
3084         default.cc: Likewise.
3085         * testsuite/26_numerics/random/uniform_int_distribution/cons/
3086         parms.cc: Likewise.
3087         * testsuite/26_numerics/random/uniform_int_distribution/operators/
3088         equal.cc: Likewise.
3089         * testsuite/26_numerics/random/uniform_int_distribution/operators/
3090         inequal.cc: Likewise.
3091         * testsuite/26_numerics/random/uniform_real_distribution/cons/
3092         default.cc: Likewise.
3093         * testsuite/26_numerics/random/uniform_real_distribution/cons/
3094         parms.cc: Likewise.
3095         * testsuite/26_numerics/random/uniform_real_distribution/operators/
3096         equal.cc: Likewise.
3097         * testsuite/26_numerics/random/uniform_real_distribution/operators/
3098         inequal.cc: Likewise.
3099         * testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
3100         Likewise.
3101         * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
3102         Likewise.
3103         * testsuite/26_numerics/random/weibull_distribution/operators/
3104         equal.cc: Likewise.
3105         * testsuite/26_numerics/random/weibull_distribution/operators/
3106         inequal.cc: Likewise.
3107         * testsuite/26_numerics/slice/1.cc: Likewise.
3108         * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
3109         * testsuite/26_numerics/valarray/27867.cc: Likewise.
3110         * testsuite/26_numerics/valarray/28277.cc: Likewise.
3111         * testsuite/26_numerics/valarray/30416.cc: Likewise.
3112         * testsuite/26_numerics/valarray/dr543.cc: Likewise.
3113         * testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
3114         * testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
3115         * testsuite/26_numerics/valarray/dr630-3.C: Likewise.
3116         * testsuite/26_numerics/valarray/init-list.cc: Likewise.
3117         * testsuite/26_numerics/valarray/moveable.cc: Likewise.
3118         * testsuite/26_numerics/valarray/operators.cc: Likewise.
3119         * testsuite/26_numerics/valarray/swap.cc: Likewise.
3120         * testsuite/experimental/deque/erasure.cc: Likewise.
3121         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
3122         Likewise.
3123         * testsuite/experimental/filesystem/iterators/
3124         recursive_directory_iterator.cc: Likewise.
3125         * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
3126         * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
3127         * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
3128         * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
3129         * testsuite/experimental/filesystem/operations/create_directories.cc:
3130         Likewise.
3131         * testsuite/experimental/filesystem/operations/create_directory.cc:
3132         Likewise.
3133         * testsuite/experimental/filesystem/operations/current_path.cc:
3134         Likewise.
3135         * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
3136         * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
3137         * testsuite/experimental/filesystem/operations/last_write_time.cc:
3138         Likewise.
3139         * testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
3140         * testsuite/experimental/filesystem/operations/status.cc: Likewise.
3141         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
3142         Likewise.
3143         * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
3144         * testsuite/experimental/forward_list/erasure.cc: Likewise.
3145         * testsuite/experimental/list/erasure.cc: Likewise.
3146         * testsuite/experimental/map/erasure.cc: Likewise.
3147         * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
3148         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
3149         Likewise.
3150         * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
3151         * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
3152         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
3153         * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
3154         Likewise.
3155         * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
3156         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
3157         Likewise.
3158         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
3159         Likewise.
3160         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
3161         Likewise.
3162         * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
3163         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
3164         * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
3165         * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
3166         Likewise.
3167         * testsuite/experimental/memory/shared_ptr/observers/operators.cc:
3168         Likewise.
3169         * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
3170         Likewise.
3171         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
3172         Likewise.
3173         * testsuite/experimental/memory_resource/1.cc: Likewise.
3174         * testsuite/experimental/memory_resource/null_memory_resource.cc:
3175         Likewise.
3176         * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
3177         * testsuite/experimental/set/erasure.cc: Likewise.
3178         * testsuite/experimental/string/erasure.cc: Likewise.
3179         * testsuite/experimental/string_view/capacity/1.cc: Likewise.
3180         * testsuite/experimental/string_view/cons/char/1.cc: Likewise.
3181         * testsuite/experimental/string_view/cons/char/2.cc: Likewise.
3182         * testsuite/experimental/string_view/cons/char/3.cc: Likewise.
3183         * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
3184         * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
3185         * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
3186         * testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
3187         * testsuite/experimental/string_view/element_access/char/empty.cc:
3188         Likewise.
3189         * testsuite/experimental/string_view/element_access/char/
3190         front_back.cc: Likewise.
3191         * testsuite/experimental/string_view/element_access/wchar_t/1.cc:
3192         Likewise.
3193         * testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
3194         Likewise.
3195         * testsuite/experimental/string_view/element_access/wchar_t/
3196         front_back.cc: Likewise.
3197         * testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
3198         * testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
3199         * testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
3200         * testsuite/experimental/string_view/inserters/pod/10081-out.cc:
3201         Likewise.
3202         * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
3203         * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
3204         * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
3205         * testsuite/experimental/string_view/modifiers/remove_prefix/char/
3206         1.cc: Likewise.
3207         * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
3208         1.cc: Likewise.
3209         * testsuite/experimental/string_view/modifiers/remove_suffix/char/
3210         1.cc: Likewise.
3211         * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
3212         1.cc: Likewise.
3213         * testsuite/experimental/string_view/operations/compare/char/1.cc:
3214         Likewise.
3215         * testsuite/experimental/string_view/operations/compare/char/
3216         13650.cc: Likewise.
3217         * testsuite/experimental/string_view/operations/compare/wchar_t/
3218         1.cc: Likewise.
3219         * testsuite/experimental/string_view/operations/compare/wchar_t/
3220         13650.cc: Likewise.
3221         * testsuite/experimental/string_view/operations/copy/char/1.cc:
3222         Likewise.
3223         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
3224         Likewise.
3225         * testsuite/experimental/string_view/operations/data/char/1.cc:
3226         Likewise.
3227         * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
3228         Likewise.
3229         * testsuite/experimental/string_view/operations/find/char/1.cc:
3230         Likewise.
3231         * testsuite/experimental/string_view/operations/find/char/2.cc:
3232         Likewise.
3233         * testsuite/experimental/string_view/operations/find/char/3.cc:
3234         Likewise.
3235         * testsuite/experimental/string_view/operations/find/char/4.cc:
3236         Likewise.
3237         * testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
3238         Likewise.
3239         * testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
3240         Likewise.
3241         * testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
3242         Likewise.
3243         * testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
3244         Likewise.
3245         * testsuite/experimental/string_view/operations/rfind/char/1.cc:
3246         Likewise.
3247         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
3248         Likewise.
3249         * testsuite/experimental/string_view/operations/rfind/char/3.cc:
3250         Likewise.
3251         * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
3252         Likewise.
3253         * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
3254         Likewise.
3255         * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
3256         Likewise.
3257         * testsuite/experimental/string_view/operations/substr/char/1.cc:
3258         Likewise.
3259         * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
3260         Likewise.
3261         * testsuite/experimental/string_view/operations/to_string/1.cc:
3262         Likewise.
3263         * testsuite/experimental/string_view/operators/char/2.cc: Likewise.
3264         * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
3265         * testsuite/experimental/unordered_map/erasure.cc: Likewise.
3266         * testsuite/experimental/unordered_set/erasure.cc: Likewise.
3267         * testsuite/experimental/vector/erasure.cc: Likewise.
3268         * testsuite/ext/array_allocator/1.cc: Likewise.
3269         * testsuite/ext/array_allocator/2.cc: Likewise.
3270         * testsuite/ext/array_allocator/3.cc: Likewise.
3271         * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
3272         * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
3273         * testsuite/ext/codecvt/1.cc: Likewise.
3274         * testsuite/ext/codecvt/char-1.cc: Likewise.
3275         * testsuite/ext/codecvt/char-2.cc: Likewise.
3276         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
3277         * testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
3278         * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
3279         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
3280         * testsuite/ext/ext_pointer/1.cc: Likewise.
3281         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
3282         * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
3283         * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
3284         * testsuite/ext/mt_allocator/tune-1.cc: Likewise.
3285         * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
3286         * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
3287         * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
3288         * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
3289         * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
3290         * testsuite/ext/pod_char_traits.cc: Likewise.
3291         * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
3292         * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
3293         * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
3294         * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
3295         Likewise.
3296         * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
3297         Likewise.
3298         * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
3299         Likewise.
3300         * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
3301         * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
3302         * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
3303         * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
3304         * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
3305         * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
3306         * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
3307         * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
3308         * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
3309         Likewise.
3310         * testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
3311         Likewise.
3312         * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
3313         Likewise.
3314         * testsuite/ext/random/hypergeometric_distribution/operators/
3315         equal.cc: Likewise.
3316         * testsuite/ext/random/hypergeometric_distribution/operators/
3317         inequal.cc: Likewise.
3318         * testsuite/ext/random/hypergeometric_distribution/operators/
3319         serialize.cc: Likewise.
3320         * testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
3321         * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
3322         * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
3323         * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
3324         * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
3325         * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
3326         * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
3327         * testsuite/ext/random/logistic_distribution/operators/equal.cc:
3328         Likewise.
3329         * testsuite/ext/random/logistic_distribution/operators/inequal.cc:
3330         Likewise.
3331         * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
3332         Likewise.
3333         * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
3334         * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
3335         * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
3336         Likewise.
3337         * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
3338         Likewise.
3339         * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
3340         Likewise.
3341         * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
3342         * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
3343         * testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
3344         Likewise.
3345         * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
3346         Likewise.
3347         * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
3348         * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
3349         * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
3350         * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
3351         Likewise.
3352         * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
3353         Likewise.
3354         * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
3355         * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
3356         * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
3357         * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
3358         * testsuite/ext/random/rice_distribution/operators/serialize.cc:
3359         Likewise.
3360         * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
3361         default.cc: Likewise.
3362         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3363         equal.cc: Likewise.
3364         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3365         inequal.cc: Likewise.
3366         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3367         serialize.cc: Likewise.
3368         * testsuite/ext/random/triangular_distribution/cons/default.cc:
3369         Likewise.
3370         * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
3371         * testsuite/ext/random/triangular_distribution/operators/equal.cc:
3372         Likewise.
3373         * testsuite/ext/random/triangular_distribution/operators/inequal.cc:
3374         Likewise.
3375         * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
3376         Likewise.
3377         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3378         equal.cc: Likewise.
3379         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3380         generate.cc: Likewise.
3381         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3382         inequal.cc: Likewise.
3383         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3384         serialize.cc: Likewise.
3385         * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
3386         * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
3387         * testsuite/ext/random/von_mises_distribution/operators/equal.cc:
3388         Likewise.
3389         * testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
3390         Likewise.
3391         * testsuite/ext/rope/2.cc: Likewise.
3392         * testsuite/ext/rope/3.cc: Likewise.
3393         * testsuite/ext/rope/4.cc: Likewise.
3394         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3395         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
3396         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
3397         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
3398         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
3399         * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
3400         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
3401         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
3402         * testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
3403         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
3404         * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
3405         * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
3406         * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
3407         * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
3408         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
3409         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
3410         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
3411         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
3412         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
3413         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
3414         * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
3415         * testsuite/ext/type_traits/add_unsigned.cc: Likewise.
3416         * testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
3417         * testsuite/ext/vstring/capacity/29134.cc: Likewise.
3418         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
3419         * testsuite/ext/vstring/cons/58415-1.cc: Likewise.
3420         * testsuite/ext/vstring/cons/moveable.cc: Likewise.
3421         * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
3422         * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
3423         * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
3424         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
3425         * testsuite/ext/vstring/hash/char/1.cc: Likewise.
3426         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
3427         * testsuite/ext/vstring/init-list.cc: Likewise.
3428         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
3429         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
3430         * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
3431         * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
3432         * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
3433         * testsuite/ext/vstring/operators/1.cc: Likewise.
3434         * testsuite/ext/vstring/operators/2.cc: Likewise.
3436 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3438         PR libstdc++/65122
3439         * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
3440         aligned_alloc for types with extended alignment if available,
3441         otherwise throw bad_alloc if malloc doesn't return a suitable value.
3442         * include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
3443         (bitmap_allocator::deallocate): Use aligned new/delete for types with
3444         extended alignment.
3445         * include/ext/mt_allocator.h (__mt_alloc::allocate)
3446         (__mt_alloc::deallocate): Likewise.
3447         * include/ext/new_allocator.h (new_allocator::allocate)
3448         (new_allocator::deallocate): Likewise.
3449         * include/ext/pool_allocator.h (__pool_alloc::allocate)
3450         (__pool_alloc::deallocate): Likewise.
3451         * testsuite/20_util/allocator/overaligned.cc: New test.
3452         * testsuite/ext/bitmap_allocator/overaligned.cc: New test.
3453         * testsuite/ext/malloc_allocator/overaligned.cc: New test.
3454         * testsuite/ext/mt_allocator/overaligned.cc: New test.
3455         * testsuite/ext/new_allocator/overaligned.cc: New test.
3456         * testsuite/ext/pool_allocator/overaligned.cc: New test.
3458 2016-10-14  Tim Shen  <timshen@google.com>
3460         PR libstdc++/77944
3461         * include/std/variant: Include <bits/funcexcept.h> for __try and
3462         __catch.
3464 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3466         * include/std/functional (_Reference_wrapper_base_impl): Remove.
3467         (_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
3468         (_Reference_wrapper_base): Inherit from new helpers.
3470 2016-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
3472         * testsuite/24_iterators/container_access.cc: Remove 'test' variables.
3473         * testsuite/24_iterators/istream_iterator/2.cc: Likewise.
3474         * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
3475         * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
3476         * testsuite/24_iterators/operations/next.cc: Likewise.
3477         * testsuite/24_iterators/operations/prev.cc: Likewise.
3478         * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
3479         * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
3480         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
3481         * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
3482         * testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
3483         * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
3484         * testsuite/25_algorithms/all_of/1.cc: Likewise.
3485         * testsuite/25_algorithms/any_of/1.cc: Likewise.
3486         * testsuite/25_algorithms/binary_search/2.cc: Likewise.
3487         * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
3488         * testsuite/25_algorithms/clamp/1.cc: Likewise.
3489         * testsuite/25_algorithms/clamp/2.cc: Likewise.
3490         * testsuite/25_algorithms/copy/1.cc: Likewise.
3491         * testsuite/25_algorithms/copy/2.cc: Likewise.
3492         * testsuite/25_algorithms/copy/3.cc: Likewise.
3493         * testsuite/25_algorithms/copy/34595.cc: Likewise.
3494         * testsuite/25_algorithms/copy/4.cc: Likewise.
3495         * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
3496         * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
3497         * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
3498         * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
3499         * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
3500         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
3501         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
3502         Likewise.
3503         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
3504         Likewise.
3505         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
3506         Likewise.
3507         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
3508         Likewise.
3509         * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
3510         * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
3511         * testsuite/25_algorithms/copy_n/1.cc: Likewise.
3512         * testsuite/25_algorithms/copy_n/2.cc: Likewise.
3513         * testsuite/25_algorithms/copy_n/3.cc: Likewise.
3514         * testsuite/25_algorithms/copy_n/4.cc: Likewise.
3515         * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
3516         * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
3517         * testsuite/25_algorithms/equal_range/2.cc: Likewise.
3518         * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
3519         * testsuite/25_algorithms/fill/1.cc: Likewise.
3520         * testsuite/25_algorithms/fill/2.cc: Likewise.
3521         * testsuite/25_algorithms/fill/3.cc: Likewise.
3522         * testsuite/25_algorithms/fill/4.cc: Likewise.
3523         * testsuite/25_algorithms/fill_n/1.cc: Likewise.
3524         * testsuite/25_algorithms/find/39546.cc: Likewise.
3525         * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
3526         * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
3527         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
3528         Likewise.
3529         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
3530         Likewise.
3531         * testsuite/25_algorithms/find_if/1.cc: Likewise.
3532         * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
3533         * testsuite/25_algorithms/for_each/1.cc: Likewise.
3534         * testsuite/25_algorithms/heap/1.cc: Likewise.
3535         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
3536         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
3537         * testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
3538         * testsuite/25_algorithms/includes/1.cc: Likewise.
3539         * testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
3540         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
3541         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
3542         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
3543         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
3544         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
3545         * testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
3546         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
3547         * testsuite/25_algorithms/is_permutation/2.cc: Likewise.
3548         * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
3549         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
3550         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
3551         * testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
3552         * testsuite/25_algorithms/lower_bound/2.cc: Likewise.
3553         * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
3554         * testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
3555         * testsuite/25_algorithms/max/1.cc: Likewise.
3556         * testsuite/25_algorithms/max/2.cc: Likewise.
3557         * testsuite/25_algorithms/max/3.cc: Likewise.
3558         * testsuite/25_algorithms/max/37547.cc: Likewise.
3559         * testsuite/25_algorithms/max/4.cc: Likewise.
3560         * testsuite/25_algorithms/min/1.cc: Likewise.
3561         * testsuite/25_algorithms/min/2.cc: Likewise.
3562         * testsuite/25_algorithms/min/3.cc: Likewise.
3563         * testsuite/25_algorithms/min/37547.cc: Likewise.
3564         * testsuite/25_algorithms/min/4.cc: Likewise.
3565         * testsuite/25_algorithms/minmax/1.cc: Likewise.
3566         * testsuite/25_algorithms/minmax/2.cc: Likewise.
3567         * testsuite/25_algorithms/minmax/3.cc: Likewise.
3568         * testsuite/25_algorithms/minmax/37547.cc: Likewise.
3569         * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
3570         * testsuite/25_algorithms/move/1.cc: Likewise.
3571         * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
3572         * testsuite/25_algorithms/move_backward/1.cc: Likewise.
3573         * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
3574         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
3575         * testsuite/25_algorithms/none_of/1.cc: Likewise.
3576         * testsuite/25_algorithms/nth_element/1.cc: Likewise.
3577         * testsuite/25_algorithms/nth_element/2.cc: Likewise.
3578         * testsuite/25_algorithms/nth_element/3.cc: Likewise.
3579         * testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
3580         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
3581         * testsuite/25_algorithms/partial_sort/2.cc: Likewise.
3582         * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
3583         Likewise.
3584         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
3585         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
3586         * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
3587         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
3588         * testsuite/25_algorithms/partition/1.cc: Likewise.
3589         * testsuite/25_algorithms/partition/moveable.cc: Likewise.
3590         * testsuite/25_algorithms/partition_copy/1.cc: Likewise.
3591         * testsuite/25_algorithms/partition_point/1.cc: Likewise.
3592         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
3593         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
3594         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
3595         * testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
3596         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
3597         * testsuite/25_algorithms/rotate/1.cc: Likewise.
3598         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
3599         * testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
3600         * testsuite/25_algorithms/rotate/rotate.cc: Likewise.
3601         * testsuite/25_algorithms/search/1.cc: Likewise.
3602         * testsuite/25_algorithms/search_n/58358.cc: Likewise.
3603         * testsuite/25_algorithms/shuffle/1.cc: Likewise.
3604         * testsuite/25_algorithms/sort/1.cc: Likewise.
3605         * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
3606         * testsuite/25_algorithms/sort/moveable.cc: Likewise.
3607         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
3608         * testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
3609         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
3610         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
3611         * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
3612         * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
3613         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
3614         * testsuite/25_algorithms/stable_sort/2.cc: Likewise.
3615         * testsuite/25_algorithms/stable_sort/3.cc: Likewise.
3616         * testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
3617         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
3618         Likewise.
3619         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
3620         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
3621         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
3622         * testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
3623         * testsuite/25_algorithms/unique/11480.cc: Likewise.
3624         * testsuite/25_algorithms/unique/2.cc: Likewise.
3625         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
3626         * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
3627         * testsuite/25_algorithms/unique_copy/2.cc: Likewise.
3628         * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
3629         * testsuite/25_algorithms/upper_bound/2.cc: Likewise.
3630         * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
3631         * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
3632         * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
3633         Likewise.
3634         * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
3635         Likewise.
3636         * testsuite/28_regex/algorithms/regex_match/basic/
3637         string_range_00_03.cc: Likewise.
3638         * testsuite/28_regex/algorithms/regex_match/basic/
3639         string_range_01_03.cc: Likewise.
3640         * testsuite/28_regex/algorithms/regex_match/basic/
3641         string_range_02_03.cc: Likewise.
3642         * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
3643         Likewise.
3644         * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
3645         Likewise.
3646         * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
3647         Likewise.
3648         * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
3649         Likewise.
3650         * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
3651         Likewise.
3652         * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
3653         Likewise.
3654         * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
3655         Likewise.
3656         * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
3657         Likewise.
3658         * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
3659         Likewise.
3660         * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
3661         * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
3662         Likewise.
3663         * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
3664         Likewise.
3665         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
3666         Likewise.
3667         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
3668         anymatcher.cc: Likewise.
3669         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
3670         Likewise.
3671         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
3672         Likewise.
3673         * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
3674         Likewise.
3675         * testsuite/28_regex/algorithms/regex_match/extended/
3676         cstring_questionmark.cc: Likewise.
3677         * testsuite/28_regex/algorithms/regex_match/extended/
3678         cstring_range.cc: Likewise.
3679         * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
3680         Likewise.
3681         * testsuite/28_regex/algorithms/regex_match/extended/
3682         string_range_00_03.cc: Likewise.
3683         * testsuite/28_regex/algorithms/regex_match/extended/
3684         string_range_01_03.cc: Likewise.
3685         * testsuite/28_regex/algorithms/regex_match/extended/
3686         string_range_02_03.cc: Likewise.
3687         * testsuite/28_regex/algorithms/regex_match/extended/
3688         wstring_locale.cc: Likewise.
3689         * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
3690         Likewise.
3691         * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
3692         * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
3693         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
3694         Likewise.
3695         * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
3696         Likewise.
3697         * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
3698         * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
3699         * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
3700         Likewise.
3701         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
3702         * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
3703         * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
3704         * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
3705         * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
3706         * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
3707         * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
3708         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
3709         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
3710         * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
3711         * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
3712         * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
3713         * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
3714         * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
3715         Likewise.
3716         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
3717         Likewise.
3718         * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
3719         * testsuite/28_regex/basic_regex/ctors/extended/
3720         string_range_01_02_03.cc: Likewise.
3721         * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
3722         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
3723         * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
3724         * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
3725         * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
3726         * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
3727         * testsuite/28_regex/constants/error_type.cc: Likewise.
3728         * testsuite/28_regex/constants/match_flag_type.cc: Likewise.
3729         * testsuite/28_regex/init-list.cc: Likewise.
3730         * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
3731         * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
3732         Likewise.
3733         * testsuite/28_regex/iterators/regex_iterator/char/
3734         string_position_01.cc
3735         * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
3736         Likewise.
3737         * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
3738         default.cc: Likewise.
3739         * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
3740         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
3741         Likewise.
3742         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
3743         Likewise.
3744         * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
3745         * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
3746         Likewise.
3747         * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
3748         default.cc: Likewise.
3749         * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
3750         default.cc: Likewise.
3751         * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
3752         Likewise.
3753         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
3754         string_01.cc: Likewise.
3755         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
3756         wstring_02.cc: Likewise.
3757         * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
3758         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
3759         * testsuite/28_regex/match_results/format.cc: Likewise.
3760         * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
3761         * testsuite/28_regex/match_results/swap.cc: Likewise.
3762         * testsuite/28_regex/match_results/typedefs.cc: Likewise.
3763         * testsuite/28_regex/regex_error/regex_error.cc: Likewise.
3764         * testsuite/28_regex/regression.cc: Likewise.
3765         * testsuite/28_regex/sub_match/cast_char.cc: Likewise.
3766         * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
3767         * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
3768         * testsuite/28_regex/sub_match/length.cc: Likewise.
3769         * testsuite/28_regex/traits/char/ctor.cc: Likewise.
3770         * testsuite/28_regex/traits/char/isctype.cc: Likewise.
3771         * testsuite/28_regex/traits/char/length.cc: Likewise.
3772         * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
3773         * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
3774         * testsuite/28_regex/traits/char/transform.cc: Likewise.
3775         * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
3776         * testsuite/28_regex/traits/char/translate.cc: Likewise.
3777         * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
3778         * testsuite/28_regex/traits/char/user_defined.cc: Likewise.
3779         * testsuite/28_regex/traits/char/value.cc: Likewise.
3780         * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
3781         * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
3782         * testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
3783         * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
3784         * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
3785         * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
3786         * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
3787         * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
3788         * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
3789         * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
3790         * testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
3791         * testsuite/29_atomics/atomic/60658.cc: Likewise.
3792         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3793         * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
3794         * testsuite/backward/11460.cc: Likewise.
3795         * testsuite/backward/hash_map/1.cc: Likewise.
3796         * testsuite/backward/hash_map/25896.cc: Likewise.
3797         * testsuite/backward/hash_set/1.cc: Likewise.
3798         * testsuite/backward/hash_set/25896.cc: Likewise.
3799         * testsuite/decimal/binary-arith.cc: Likewise.
3800         * testsuite/decimal/comparison.cc: Likewise.
3801         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
3802         * testsuite/decimal/compound-assignment.cc: Likewise.
3803         * testsuite/decimal/conversion-from-float.cc: Likewise.
3804         * testsuite/decimal/conversion-from-integral.cc: Likewise.
3805         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
3806         * testsuite/decimal/conversion-to-integral.cc: Likewise.
3807         * testsuite/decimal/ctor.cc: Likewise.
3808         * testsuite/decimal/incdec-memfunc.cc: Likewise.
3809         * testsuite/decimal/incdec.cc: Likewise.
3810         * testsuite/decimal/make-decimal.cc: Likewise.
3811         * testsuite/decimal/pr54036-1.cc: Likewise.
3812         * testsuite/decimal/pr54036-2.cc: Likewise.
3813         * testsuite/decimal/pr54036-3.cc: Likewise.
3814         * testsuite/decimal/unary-arith.cc: Likewise.
3815         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
3816         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
3817         Likewise.
3818         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
3819         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
3820         Likewise.
3821         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
3822         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
3823         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
3824         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
3825         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
3826         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
3827         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
3828         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
3829         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
3830         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
3831         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
3832         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
3833         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
3834         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
3835         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
3836         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
3837         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
3838         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
3839         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
3840         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
3841         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
3842         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
3843         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
3844         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
3845         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
3846         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
3847         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
3848         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
3849         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
3850         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
3851         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
3852         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
3853         * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
3854         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
3855         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
3856         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
3857         * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
3858         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
3859         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
3860         * testsuite/tr2/bases/value.cc: Likewise.
3861         * testsuite/tr2/direct_bases/value.cc: Likewise.
3862         * testsuite/util/debug/checks.h: Likewise.
3863         * testsuite/util/debug/unordered_checks.h: Likewise.
3864         * testsuite/util/testsuite_allocator.h: Likewise.
3865         * testsuite/util/testsuite_api.h: Likewise.
3866         * testsuite/util/testsuite_common_types.h: Likewise.
3867         * testsuite/util/testsuite_random.h: Likewise.
3868         * testsuite/util/testsuite_rvalref.h: Likewise.
3870 2016-10-13  Jonathan Wakely  <jwakely@redhat.com>
3872         * include/bits/shared_ptr_base.h: Include <functional>.
3873         [!__cpp_rtti]: Do not include <typeinfo>.
3874         * include/experimental/array: Do not include <functional>.
3875         * include/experimental/memory: Include <bits/functional_hash.h>
3876         instead of <functional>.
3877         * include/experimental/propagate_const: Include <bits/stl_function.h>,
3878         <bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
3879         * include/experimental/tuple: Do not include <functional>.
3880         * include/std/future: Include <functional>.
3881         * include/std/memory: Do not include <functional>.
3882         * include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
3883         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
3884         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
3885         missing includes.
3886         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3887         * testsuite/20_util/specialized_algorithms/memory_management_tools/
3888         1.cc: Likewise.
3889         * testsuite/30_threads/call_once/60497.cc: Likewise.
3890         * testsuite/30_threads/lock/2.cc: Likewise.
3891         * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
3892         * testsuite/experimental/algorithm/sample.cc: Likewise.
3893         * testsuite/experimental/array/make_array.cc: Likewise.
3894         * testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
3895         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
3896         Adjust dg-error lines.
3897         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
3898         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
3899         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
3900         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
3901         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
3903         * testsuite/experimental/algorithm/sample.cc: Add missing header.
3905         * include/experimental/propagate_const (element_type): Qualify
3906         declval.
3908         * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
3909         instead of assert.
3911         * include/experiumental/functional (boyer_moore_searcher)
3912         (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
3913         with _GLIBCXX_STD_C.
3914         * include/std/functional: Likewise.
3916         * include/std/chrono (floor): Replace non-constexpr operation.
3917         * testsuite/20_util/duration_cast/rounding.cc: Test conversion to
3918         durations with floating pointer representations.
3920         * src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
3921         (_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
3923         * include/std/functional (_Bind_simple, _Bind_simple_helper)
3924         (__bind_simple): Remove.
3925         * include/std/future: Include <bits/invoke.h> instead of <functional>.
3926         (__future_base::_Task_state::_M_run)
3927         (__future_base::_Task_state::_M_run_delayed): Use lambda expressions
3928         instead of __bind_simple.
3929         (__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
3930         (async): Use thread::__make_invoker instead of __bind_simple.
3931         * include/std/thread: Include <tuple> and <bits/invoke.h> instead of
3932         <functional>.
3933         (thread::_Invoker, thread::__make_invoker): Define helpers to do
3934         INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
3936         * include/std/functional (_Not_fn): Make exception specifications
3937         depend on whether negating the result can throw.
3938         * testsuite/20_util/not_fn/1.cc: Move to ...
3939         * testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
3940         for types that can throw when negated and that cannot be negated.
3942         * include/bits/invoke.h (__invoke): Fix exception-specification.
3943         * include/std/functional (invoke): Likewise.
3944         * testsuite/20_util/function_objects/invoke/1.cc: New test.
3946 2016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
3948         * testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
3949         __builtin_printf and __builtin_abort.
3950         * testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
3951         * scripts/testsuite_flags.in: Likewise.
3952         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
3953         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
3954         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
3955         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
3956         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
3957         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
3958         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
3959         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
3960         * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
3961         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
3962         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
3963         Likewise.
3964         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
3965         Likewise.
3966         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3967         Likewise.
3968         * testsuite/27_io/objects/char/7.cc: Likewise.
3969         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
3970         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
3971         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
3972         * testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
3973         * testsuite/18_support/bad_alloc/what.cc: Likewise.
3974         * testsuite/18_support/bad_cast/what.cc: Likewise.
3975         * testsuite/18_support/bad_exception/what.cc: Likewise.
3976         * testsuite/18_support/bad_typeid/what.cc: Likewise.
3977         * testsuite/18_support/exception/38732.cc: Likewise.
3978         * testsuite/18_support/exception/what.cc: Likewise.
3979         * testsuite/18_support/exception_ptr/64241.cc: Likewise.
3980         * testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
3981         * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
3982         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
3983         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
3984         * testsuite/18_support/nested_exception/cons.cc: Likewise.
3985         * testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
3986         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
3987         * testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
3988         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
3989         * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
3990         * testsuite/18_support/numeric_limits/digits10.cc: Likewise.
3991         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
3992         * testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
3993         * testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
3994         * testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
3995         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
3996         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
3997         * testsuite/18_support/numeric_limits/min_max.cc: Likewise.
3998         * testsuite/18_support/numeric_limits/specialization_default_values.cc:
3999         Likewise.
4000         * testsuite/18_support/type_info/hash_code.cc: Likewise.
4001         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
4002         * testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
4003         * testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
4004         * testsuite/19_diagnostics/error_category/operators/
4005         not_equal.cc: Likewise.
4006         * testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
4007         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
4008         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
4009         * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
4010         * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
4011         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
4012         * testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
4013         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
4014         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
4015         Likewise.
4016         * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
4017         * testsuite/19_diagnostics/error_condition/operators/equal.cc:
4018         Likewise.
4019         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
4020         Likewise.
4021         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
4022         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
4023         * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
4024         * testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
4025         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
4026         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
4027         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
4028         * testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
4029         * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
4030         * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
4031         * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
4032         * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
4033         * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
4034         * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
4035         * testsuite/20_util/addressof/1.cc: Likewise.
4036         * testsuite/20_util/align/1.cc: Likewise.
4037         * testsuite/20_util/align/2.cc: Likewise.
4038         * testsuite/20_util/allocator/1.cc: Likewise.
4039         * testsuite/20_util/allocator/10378.cc: Likewise.
4040         * testsuite/20_util/allocator/8230.cc: Likewise.
4041         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
4042         Likewise.
4043         * testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
4044         * testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
4045         * testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
4046         * testsuite/20_util/any/assign/exception.cc: Likewise.
4047         * testsuite/20_util/auto_ptr/1.cc: Likewise.
4048         * testsuite/20_util/auto_ptr/2.cc: Likewise.
4049         * testsuite/20_util/auto_ptr/3.cc: Likewise.
4050         * testsuite/20_util/auto_ptr/4.cc: Likewise.
4051         * testsuite/20_util/auto_ptr/5.cc: Likewise.
4052         * testsuite/20_util/auto_ptr/6.cc: Likewise.
4053         * testsuite/20_util/auto_ptr/7.cc: Likewise.
4054         * testsuite/20_util/bind/all_bound.cc: Likewise.
4055         * testsuite/20_util/bind/conv_result.cc: Likewise.
4056         * testsuite/20_util/bind/cv_quals.cc: Likewise.
4057         * testsuite/20_util/bind/cv_quals_2.cc
4058         * testsuite/20_util/bind/nested.cc: Likewise.
4059         * testsuite/20_util/bind/placeholders.cc: Likewise.
4060         * testsuite/20_util/bind/ref.cc: Likewise.
4061         * testsuite/20_util/bind/ref2.cc: Likewise.
4062         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
4063         * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
4064         * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
4065         * testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
4066         * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
4067         * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
4068         * testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
4069         * testsuite/20_util/duration/cons/1.cc: Likewise.
4070         * testsuite/20_util/duration/cons/2.cc: Likewise.
4071         * testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
4072         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
4073         * testsuite/20_util/enable_shared_from_this/members/assign.cc:
4074         Likewise.
4075         * testsuite/20_util/exchange/1.cc: Likewise.
4076         * testsuite/20_util/forward/a.cc: Likewise.
4077         * testsuite/20_util/forward/b.cc: Likewise.
4078         * testsuite/20_util/forward/d.cc: Likewise.
4079         * testsuite/20_util/function/1.cc: Likewise.
4080         * testsuite/20_util/function/2.cc: Likewise.
4081         * testsuite/20_util/function/3.cc: Likewise.
4082         * testsuite/20_util/function/4.cc: Likewise.
4083         * testsuite/20_util/function/43397.cc: Likewise.
4084         * testsuite/20_util/function/5.cc: Likewise.
4085         * testsuite/20_util/function/6.cc: Likewise.
4086         * testsuite/20_util/function/7.cc: Likewise.
4087         * testsuite/20_util/function/8.cc: Likewise.
4088         * testsuite/20_util/function/9.cc: Likewise.
4089         * testsuite/20_util/function/assign/move.cc: Likewise.
4090         * testsuite/20_util/function/cons/move.cc: Likewise.
4091         * testsuite/20_util/function_objects/dr660.cc: Likewise.
4092         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
4093         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
4094         * testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
4095         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
4096         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
4097         * testsuite/20_util/hash/operators/size_t.cc: Likewise.
4098         * testsuite/20_util/hash/quality.cc: Likewise.
4099         * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
4100         * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
4101         * testsuite/20_util/is_function/24808.cc: Likewise.
4102         * testsuite/20_util/is_object/24808.cc: Likewise.
4103         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
4104         * testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
4105         * testsuite/20_util/owner_less/cmp.cc: Likewise.
4106         * testsuite/20_util/pair/1.cc: Likewise.
4107         * testsuite/20_util/pair/2.cc: Likewise.
4108         * testsuite/20_util/pair/3.cc: Likewise.
4109         * testsuite/20_util/pair/4.cc: Likewise.
4110         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
4111         * testsuite/20_util/pair/moveable.cc: Likewise.
4112         * testsuite/20_util/pair/piecewise.cc: Likewise.
4113         * testsuite/20_util/pair/swap.cc: Likewise.
4114         * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
4115         * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
4116         * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
4117         * testsuite/20_util/ratio/cons/cons1.cc: Likewise.
4118         * testsuite/20_util/ratio/operations/45866.cc: Likewise.
4119         * testsuite/20_util/ratio/operations/47913.cc: Likewise.
4120         * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
4121         * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
4122         * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
4123         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
4124         * testsuite/20_util/scoped_allocator/1.cc: Likewise.
4125         * testsuite/20_util/scoped_allocator/2.cc: Likewise.
4126         * testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
4127         * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
4128         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
4129         * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
4130         * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
4131         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
4132         Likewise.
4133         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
4134         * testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
4135         * testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
4136         * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
4137         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
4138         * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
4139         * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
4140         * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
4141         * testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
4142         * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
4143         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
4144         * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
4145         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
4146         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
4147         Likewise.
4148         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
4149         Likewise.
4150         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
4151         * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
4152         * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
4153         * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
4154         * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
4155         * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
4156         * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
4157         * testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
4158         * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
4159         * testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
4160         * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
4161         * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
4162         * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
4163         * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
4164         * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
4165         * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
4166         * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
4167         * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
4168         * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
4169         * testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
4170         * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
4171         * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
4172         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
4173         Likewise.
4174         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4175         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
4176         move_iterators/1.cc: Likewise.
4177         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
4178         move_iterators/1.cc: Likewise.
4179         * testsuite/20_util/temporary_buffer.cc: Likewise.
4180         * testsuite/20_util/time_point/1.cc: Likewise.
4181         * testsuite/20_util/time_point/2.cc: Likewise.
4182         * testsuite/20_util/time_point/3.cc: Likewise.
4183         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
4184         * testsuite/20_util/tuple/48476.cc: Likewise.
4185         * testsuite/20_util/tuple/comparison_operators/comparisons.cc:
4186         Likewise.
4187         * testsuite/20_util/tuple/cons/allocators.cc: Likewise.
4188         * testsuite/20_util/tuple/cons/assignment.cc: Likewise.
4189         * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
4190         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
4191         * testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
4192         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
4193         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
4194         * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
4195         Likewise.
4196         * testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
4197         * testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
4198         * testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
4199         * testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
4200         * testsuite/20_util/tuple/element_access/get.cc: Likewise.
4201         * testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
4202         * testsuite/20_util/tuple/moveable.cc: Likewise.
4203         * testsuite/20_util/tuple/swap.cc: Likewise.
4204         * testsuite/20_util/tuple/tuple_size.cc: Likewise.
4205         * testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
4206         * testsuite/20_util/typeindex/hash.cc: Likewise.
4207         * testsuite/20_util/typeindex/hash_code.cc: Likewise.
4208         * testsuite/20_util/typeindex/name.cc: Likewise.
4209         * testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
4210         * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
4211         * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
4212         * testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
4213         * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
4214         * testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
4215         * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
4216         * testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
4217         * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
4218         * testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
4219         * testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
4220         * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
4221         * testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
4222         * testsuite/20_util/unique_ptr/specialized_algorithms/
4223         comparisons.cc: Likewise.
4224         * testsuite/20_util/unique_ptr/specialized_algorithms/
4225         comparisons_array.cc: Likewise.
4226         * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
4227         Likewise.
4228         * testsuite/20_util/uses_allocator/construction.cc: Likewise.
4229         * testsuite/20_util/uses_allocator/value.cc: Likewise.
4230         * testsuite/20_util/variant/run.cc: Likewise.
4231         * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
4232         * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
4233         * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
4234         Likewise.
4235         * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
4236         * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
4237         Likewise.
4238         * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
4239         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
4240         Likewise.
4241         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
4242         Likewise.
4243         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
4244         Likewise.
4245         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
4246         Likewise.
4247         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
4248         Likewise.
4249         * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
4250         * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
4251         * testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
4252         * testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
4253         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
4254         Likewise.
4255         * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
4256         * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
4257         Likewise.
4258         * testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
4259         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
4260         Likewise.
4261         * testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
4262         * testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
4263         * testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
4264         * testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
4265         * testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
4266         * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
4267         * testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
4268         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
4269         * testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
4270         * testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
4271         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
4272         * testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
4273         * testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
4274         * testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
4275         * testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
4276         * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
4277         * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
4278         * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
4279         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
4280         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
4281         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
4282         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4283         Likewise.
4284         * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
4285         * testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
4286         * testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
4287         * testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
4288         * testsuite/21_strings/basic_string/element_access/char/58163.cc:
4289         Likewise.
4290         * testsuite/21_strings/basic_string/element_access/char/empty.cc:
4291         Likewise.
4292         * testsuite/21_strings/basic_string/element_access/char/front_back.cc:
4293         Likewise.
4294         * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
4295         Likewise.
4296         * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
4297         Likewise.
4298         * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
4299         Likewise.
4300         * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
4301         Likewise.
4302         * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
4303         Likewise.
4304         * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
4305         Likewise.
4306         * testsuite/21_strings/basic_string/element_access/wchar_t/
4307         front_back.cc: Likewise.
4308         * testsuite/21_strings/basic_string/init-list.cc: Likewise.
4309         * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
4310         Likewise.
4311         * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
4312         Likewise.
4313         * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
4314         Likewise.
4315         * testsuite/21_strings/basic_string/inserters_extractors/char/
4316         28277.cc: Likewise.
4317         * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
4318         Likewise.
4319         * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
4320         Likewise.
4321         * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
4322         Likewise.
4323         * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
4324         Likewise.
4325         * testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
4326         Likewise.
4327         * testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
4328         Likewise.
4329         * testsuite/21_strings/basic_string/inserters_extractors/pod/
4330         10081-in.cc: Likewise.
4331         * testsuite/21_strings/basic_string/inserters_extractors/pod/
4332         10081-out.cc: Likewise.
4333         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
4334         Likewise.
4335         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4336         10.cc: Likewise.
4337         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4338         11.cc: Likewise.
4339         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4340         28277.cc: Likewise.
4341         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
4342         Likewise.
4343         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
4344         Likewise.
4345         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
4346         Likewise.
4347         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
4348         Likewise.
4349         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
4350         Likewise.
4351         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
4352         Likewise.
4353         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
4354         Likewise.
4355         * testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
4356         Likewise.
4357         * testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
4358         Likewise.
4359         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
4360         Likewise.
4361         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
4362         Likewise.
4363         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
4364         Likewise.
4365         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
4366         Likewise.
4367         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
4368         Likewise.
4369         * testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
4370         Likewise.
4371         * testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
4372         Likewise.
4373         * testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
4374         Likewise.
4375         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
4376         Likewise.
4377         * testsuite/21_strings/basic_string/modifiers/assign/char/
4378         move_assign.cc: Likewise.
4379         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
4380         Likewise.
4381         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
4382         Likewise.
4383         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
4384         Likewise.
4385         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
4386         Likewise.
4387         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
4388         move_assign.cc: Likewise.
4389         * testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
4390         Likewise.
4391         * testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
4392         Likewise.
4393         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
4394         Likewise.
4395         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
4396         Likewise.
4397         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
4398         Likewise.
4399         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
4400         Likewise.
4401         * testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
4402         Likewise.
4403         * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
4404         Likewise.
4405         * testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
4406         Likewise.
4407         * testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
4408         Likewise.
4409         * testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
4410         Likewise.
4411         * testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
4412         Likewise.
4413         * testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
4414         Likewise.
4415         * testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
4416         Likewise.
4417         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
4418         Likewise.
4419         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
4420         Likewise.
4421         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
4422         Likewise.
4423         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
4424         Likewise.
4425         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
4426         Likewise.
4427         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
4428         Likewise.
4429         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
4430         Likewise.
4431         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
4432         Likewise.
4433         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
4434         Likewise.
4435         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
4436         Likewise.
4437         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
4438         Likewise.
4439         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
4440         Likewise.
4441         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
4442         Likewise.
4443         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
4444         Likewise.
4445         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
4446         Likewise.
4447         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
4448         Likewise.
4449         * testsuite/21_strings/basic_string/numeric_conversions/char/
4450         stoull.cc: Likewise.
4451         * testsuite/21_strings/basic_string/numeric_conversions/char/
4452         to_string.cc: Likewise.
4453         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4454         dr1261.cc: Likewise.
4455         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4456         stod.cc: Likewise.
4457         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4458         stof.cc: Likewise.
4459         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4460         stoi.cc: Likewise.
4461         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4462         stol.cc: Likewise.
4463         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4464         stold.cc: Likewise.
4465         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4466         stoll.cc: Likewise.
4467         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4468         stoul.cc: Likewise.
4469         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4470         stoull.cc: Likewise.
4471         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4472         to_wstring.cc: Likewise.
4473         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
4474         Likewise.
4475         * testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
4476         Likewise.
4477         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
4478         Likewise.
4479         * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
4480         Likewise.
4481         * testsuite/21_strings/basic_string/operations/compare/wchar_t/
4482         13650.cc: Likewise.
4483         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
4484         Likewise.
4485         * testsuite/21_strings/basic_string/operations/data/char/1.cc:
4486         Likewise.
4487         * testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
4488         Likewise.
4489         * testsuite/21_strings/basic_string/operations/find/char/1.cc:
4490         Likewise.
4491         * testsuite/21_strings/basic_string/operations/find/char/2.cc:
4492         Likewise.
4493         * testsuite/21_strings/basic_string/operations/find/char/3.cc:
4494         Likewise.
4495         * testsuite/21_strings/basic_string/operations/find/char/4.cc:
4496         Likewise.
4497         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
4498         Likewise.
4499         * testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
4500         Likewise.
4501         * testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
4502         Likewise.
4503         * testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
4504         Likewise.
4505         * testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
4506         Likewise.
4507         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
4508         Likewise.
4509         * testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
4510         Likewise.
4511         * testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
4512         Likewise.
4513         * testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
4514         Likewise.
4515         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
4516         Likewise.
4517         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
4518         Likewise.
4519         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
4520         Likewise.
4521         * testsuite/21_strings/basic_string/operations/substr/char/1.cc:
4522         Likewise.
4523         * testsuite/21_strings/basic_string/operations/substr/wchar_t/
4524         1.cc: Likewise.
4525         * testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
4526         * testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
4527         * testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
4528         * testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
4529         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
4530         * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
4531         * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
4532         * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
4533         * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
4534         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
4535         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
4536         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
4537         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
4538         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
4539         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
4540         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
4541         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
4542         * testsuite/21_strings/basic_string_view/element_access/char/
4543         1.cc: Likewise.
4544         * testsuite/21_strings/basic_string_view/element_access/char/
4545         empty.cc: Likewise.
4546         * testsuite/21_strings/basic_string_view/element_access/char/
4547         front_back.cc: Likewise.
4548         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4549         1.cc: Likewise.
4550         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4551         empty.cc: Likewise.
4552         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4553         front_back.cc: Likewise.
4554         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
4555         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
4556         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
4557         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
4558         Likewise.
4559         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
4560         Likewise.
4561         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
4562         Likewise.
4563         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
4564         Likewise.
4565         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
4566         char/1.cc: Likewise.
4567         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
4568         wchar_t/1.cc: Likewise.
4569         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
4570         char/1.cc: Likewise.
4571         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
4572         wchar_t/1.cc: Likewise.
4573         * testsuite/21_strings/basic_string_view/operations/compare/char/
4574         1.cc: Likewise.
4575         * testsuite/21_strings/basic_string_view/operations/compare/char/
4576         13650.cc: Likewise.
4577         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
4578         1.cc: Likewise.
4579         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
4580         13650.cc: Likewise.
4581         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
4582         Likewise.
4583         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
4584         Likewise.
4585         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
4586         Likewise.
4587         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
4588         Likewise.
4589         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
4590         Likewise.
4591         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
4592         Likewise.
4593         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
4594         Likewise.
4595         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
4596         Likewise.
4597         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4598         1.cc: Likewise.
4599         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4600         2.cc: Likewise.
4601         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4602         3.cc: Likewise.
4603         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4604         4.cc: Likewise.
4605         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4606         1.cc: Likewise.
4607         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4608         2.cc: Likewise.
4609         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4610         3.cc: Likewise.
4611         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4612         1.cc: Likewise.
4613         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4614         2.cc: Likewise.
4615         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4616         3.cc: Likewise.
4617         * testsuite/21_strings/basic_string_view/operations/string_conversion/
4618         1.cc: Likewise.
4619         * testsuite/21_strings/basic_string_view/operations/substr/char/
4620         1.cc: Likewise.
4621         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
4622         1.cc: Likewise.
4623         * testsuite/21_strings/basic_string_view/operators/char/2.cc:
4624         Likewise.
4625         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
4626         Likewise.
4627         * testsuite/21_strings/c_strings/char/1.cc: Likewise.
4628         * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
4629         * testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
4630         * testsuite/21_strings/char_traits/requirements/char/57704.cc:
4631         Likewise.
4632         * testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
4633         * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
4635         * doc/xml/manual/test.xml: Fix typo.
4637 2016-10-12  Jonathan Wakely  <jwakely@redhat.com>
4639         * doc/xml/manual/status_cxx2017.xml: Add std::sample status.
4640         * doc/html/*: Regenerate.
4641         * include/experimental/algorithm (__sample): Move to bits/stl_algo.h
4642         and into namespace std.
4643         * include/bits/stl_algo.h (__sample): Define here. Fix invalid use
4644         of input iterator. Defend against overloaded comma operator.
4645         (sample): Define for C++17.
4646         * testsuite/25_algorithms/sample/1.cc: New test.
4648         * testsuite/util/testsuite_common_types.h
4649         (bitwise_assignment_operators): Use direct-initialization for C++11
4650         and later, to avoid CopyConstructible requirement.
4651         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
4652         line numbers.
4653         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4654         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
4655         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
4656         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
4657         Adjust expected errors and line numbers.
4659         * include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
4660         (call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
4662         * include/bits/stl_uninitialized.h
4663         (__uninitialized_default_novalue_n_1<true>): Add missing return.
4664         * testsuite/20_util/specialized_algorithms/memory_management_tools/
4665         1.cc: Check return values of uninitialized_xxx_n algorithms.
4667         * libsupc++/nested_exception.h (throw_with_nested): Remove return.
4669         * doc/xml/manual/intro.xml: Document LWG 2442 status.
4670         * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
4671         [_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
4672         partial specialization to unpack args and forward to std::invoke.
4673         (call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
4674         instead of __bind_simple and __once_call_impl.
4675         (call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
4676         __bind_simple.
4677         * testsuite/30_threads/call_once/dr2442.cc: New test.
4679 2016-10-11  Jonathan Wakely  <jwakely@redhat.com>
4681         * include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
4682         _M_assign_dispatch directly with correct tag.
4684         * doc/xml/manual/intro.xml: Document LWG 2484 status.
4685         * libsupc++/nested_exception.h (_Throw_with_nested_impl)
4686         (_Throw_with_nested_helper): Remove.
4687         (__throw_with_nested_impl): New overloaded functions to implement
4688         throw_with_nested logic.
4689         (throw_with_nested): Call __throw_with_nested_impl.
4690         (_Rethrow_if_nested_impl): Remove
4691         (__rethrow_if_nested_impl): New overloaded functions to implement
4692         rethrow_if_nested logic.
4693         (rethrow_if_nested): Call __rethrow_if_nested_impl.
4694         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
4695         problem cases from LWG 2484.
4697         * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
4698         Register printer for std::__cxx11::list.
4699         * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
4700         std::__cxx11::list as well as std::list.
4702         * include/experimental/string_view (basic_string_view::_S_compare):
4703         Remove redundant const from return type.
4704         * include/std/string_view (basic_string_view:_S_compare): Likewise.
4706         * include/bits/std_mutex.h (mutex::native_handle)
4707         (lock_guard(mutex_type&, adopt_lock_t)
4708         (unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
4709         * include/std/mutex (recursive_mutex, timed_mutex)
4710         (recursive_timed_mutex): Likewise.
4712 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
4714         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
4715         Replace <literallayout> with nested <variablelist> elements. Update
4716         some more outdated text.
4717         * doc/html/*: Regenerate.
4719 2016-10-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
4721         Make any's copy assignment operator exception-safe,
4722         don't copy the underlying value when any is moved,
4723         make in_place constructors explicit.
4724         * include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
4725         Make explicit.
4726         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
4727         Likewise.
4728         (operator=(const any&)): Make strongly exception-safe.
4729         (operator=(any&&)): reset() unconditionally in the case where
4730         rhs has a value.
4731         (operator=(_ValueType&&)): Indent the return type.
4732         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
4733         * testsuite/20_util/any/assign/2.cc: Adjust.
4734         * testsuite/20_util/any/assign/exception.cc: New.
4735         * testsuite/20_util/any/cons/2.cc: Adjust.
4736         * testsuite/20_util/any/cons/explicit.cc: New.
4737         * testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
4739 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
4741         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
4742         Describe other subdirectories and add markup. Remove outdated
4743         reference to check-script target.
4744         * doc/html/*: Regenerate.
4746         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
4748         * libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
4749         with noexcept.
4751         * include/std/functional (_Bind_result::__enable_if_void): Use alias
4752         template instead of class template.
4753         (_Bind_result::__disable_if_void): Likewise.
4754         (_Bind_result::__call): Adjust uses of __enable_if_void and
4755         __disable_if_void.
4757         * doc/xml/manual/intro.xml: Document DR 2296 status.
4758         * doc/xml/manual/status_cxx2017.xml: Update status.
4759         * include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
4760         call __builtin_addressof.
4761         (addressof): Add _GLIBCXX17_CONSTEXPR.
4762         * testsuite/20_util/addressof/requirements/constexpr.cc: New test.
4763         * testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
4764         * testsuite/20_util/forward/f_neg.cc: Likewise.
4766         * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
4767         * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
4768         is_always_equal.
4769         * testsuite/util/testsuite_allocator.h
4770         (uneq_allocator::is_always_equal): Define as false_type.
4772         * include/experimental/numeric (gcd, lcm): Make bool arguments
4773         ill-formed.
4774         * include/std/numeric (gcd, lcm): Likewise.
4775         * testsuite/26_numerics/gcd/gcd_neg.cc: New test.
4776         * testsuite/26_numerics/lcm/lcm_neg.cc: New test.
4778         * include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
4779         Add noexcept.
4780         * include/bits/shared_ptr_base.h
4781         (__enable_shared_from_this::weak_from_this): Likewise.
4782         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
4783         Test exception-specification of weak_from_this.
4785 2016-10-07  Jonathan Wakely  <jwakely@redhat.com>
4787         * doc/xml/manual/status_cxx1998.xml: Improve documentation of
4788         implementation-defined properties.
4789         * doc/xml/manual/status_cxx2011.xml: Likewise.
4790         * doc/xml/manual/status_cxx2017.xml: Likewise.
4792         * doc/xml/manual/status_cxx2017.xml: Update status.
4793         * include/std/type_traits (has_unique_object_representations): Define.
4794         * testsuite/20_util/has_unique_object_representations/value.cc: New.
4795         * testsuite/20_util/has_unique_object_representations/requirements/
4796         explicit_instantiation.cc: New.
4797         * testsuite/20_util/has_unique_object_representations/requirements/
4798         typedefs.cc: New.
4800 2016-10-06  Jonathan Wakely  <jwakely@redhat.com>
4802         * doc/xml/manual/status_cxx2011.xml: Update status.
4803         * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
4804         New helpers for recursive OUTERMOST.
4805         (__outermost): Use __outermost_type::_S_outermost.
4806         (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
4807         (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
4808         __outermost_type helper.
4809         (scoped_allocator_adaptor::_Constructible): New alias template.
4810         (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
4811         Constrain template constructors.
4812         * testsuite/20_util/scoped_allocator/3.cc: New test.
4813         * testsuite/20_util/scoped_allocator/outermost.cc: New test.
4815 2016-10-05  Jonathan Wakely  <jwakely@redhat.com>
4817         PR libstdc++/70564
4818         * testsuite/20_util/not_fn/1.cc: Fix test.
4819         * testsuite/experimental/functional/not_fn.cc: Likewise.
4821         PR libstdc++/70101
4822         * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
4823         constructors.
4824         * testsuite/23_containers/priority_queue/allocator.cc: New test.
4826         PR libstdc++/77864
4827         * include/bits/stl_map.h (map::map()): Use nothrow constructibility
4828         of comparison function in conditional noexcept.
4829         * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
4830         * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
4831         * include/bits/stl_set.h (set::set()): Likewise.
4832         * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
4833         New test.
4834         * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
4835         Likewise.
4836         * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
4837         Likewise.
4838         * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
4839         Likewise.
4841         * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
4842         alias declaration.
4844         PR libstdc++/70564
4845         * include/experimental/functional (_Not_fn): Remove.
4846         (not_fn): Use std::_Not_fn.
4847         * include/std/functional (_Not_fn): Add second parameter to
4848         disambiguate copying from initialization by not_fn. Define for C++14.
4849         (not_fn): Add second argument to initialization.
4850         * testsuite/20_util/not_fn/1.cc: Copy call wrapper using
4851         direct-initialization.
4853 2016-10-03  François Dumont  <fdumont@gcc.gnu.org>
4855         * src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
4856         declaration...
4857         * src/c++11/mutex_pool.h: ... here. New.
4858         * src/c++11/debug.cc: Use latter.
4860 2016-10-03  Jonathan Wakely  <jwakely@redhat.com>
4862         * doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
4863         * doc/html/*: Regenerate.
4864         * include/experimental/numeric (__abs): Move to <numeric>.
4865         (gcd, lcm): Use __detail::gcd and __detail::lcm.
4866         * include/std/numeric (__detail::__abs_integral)
4867         (__detail::__gcd, __detail::__lcm): Define.
4868         (gcd, lcm): Define for C++17.
4869         * testsuite/26_numerics/gcd/1.cc: New test.
4870         * testsuite/26_numerics/lcm/1.cc: New test.
4871         * testsuite/experimental/numeric/gcd.cc: Swap contents with ...
4872         * testsuite/experimental/numeric/lcd.cc: ... this.
4874         PR libstdc++/68323
4875         PR libstdc++/77794
4876         * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
4877         __cxa_thread_atexit and __gnu_cxx::__freeres.
4878         * include/Makefile.am: Add <experimental/bits/lfts_config.h>
4879         * include/Makefile.in: Regenerate.
4880         * include.bits/basic_string.h: Fix nesting of versioned namespaces.
4881         * include/bits/c++config: Declare versioned namespaces for literals.
4882         * include/bits/regex.h (basic_regex, match_results): Add workarounds
4883         for PR c++/59256.
4884         * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
4885         * include/std/chrono: Likewise.
4886         * include/std/complex: Likewise.
4887         * include/std/string_view: Likewise.
4888         * include/std/variant: Likewise. Add workaround for PR c++/59256.
4889         * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
4890         * include/experimental/bits/lfts_config.h: Declare versioned
4891         namespaces.
4892         * include/experimental/algorithm: Include
4893         <experimental/bits/lfts_config.h>.
4894         * include/experimental/any: Likewise.
4895         * include/experimental/bits/erase_if.h: Likewise.
4896         * include/experimental/chrono: Likewise.
4897         * include/experimental/functional: Likewise.
4898         * include/experimental/memory_resource: Likewise.
4899         * include/experimental/optional: Likewise.
4900         * include/experimental/propagate_const: Likewise.
4901         * include/experimental/random: Likewise.
4902         * include/experimental/ratio: Likewise.
4903         * include/experimental/system_error: Likewise.
4904         * include/experimental/tuple: Likewise.
4905         * include/experimental/type_traits: Likewise.
4906         * include/experimental/utility: Likewise.
4907         * include/experimental/string_view: Likewise. Fix nesting of
4908         versioned namespaces.
4909         * include/experimental/bits/string_view.tcc: Reopen inline namespace
4910         for non-inline function definitions.
4911         * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
4912         * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
4913         * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
4914         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
4915         Likewise.
4916         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
4917         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
4918         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
4919         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
4920         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
4921         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
4923         PR libstdc++/77814
4924         * include/bits/std_abs.h: Use "C++" language linkage.
4925         * testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
4926         the end. Add <stdalign.h>.
4928 2016-10-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
4930         PR libstdc++/77802
4931         * testsuite/20_util/tuple/77802.cc: New.
4933         Revert:
4934         2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
4935         Implement LWG 2729 for tuple.
4936         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
4937         Suppress conditionally.
4938         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
4939         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
4940         (_Tuple_impl(const _Head&)): Constrain.
4941         (_Tuple_impl(_UHead&&)): Likewise.
4942         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
4943         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
4944         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
4945         (operator=(const tuple&)): Enable conditionally.
4946         (operator=(tuple&&)): Suppress conditionally.
4947         (operator=(const tuple<_UElements...>&)): Constrain.
4948         (operator=(tuple<_UElements...>&&)): Likewise.
4949         (operator=(const tuple&)): Enable conditionally (2-param tuple).
4950         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
4951         (operator=(const tuple<_U1, _U2>&)): Constrain.
4952         (operator=(tuple<_U1, _U2>&&)): Likewise.
4953         (operator=(const pair<_U1, _U2>&)): Likewise.
4954         (operator=(pair<_U1, _U2>&&)): Likewise.
4955         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
4956         * testsuite/20_util/tuple/tuple_traits.cc: New.
4958 2016-09-30  Jonathan Wakely  <jwakely@redhat.com>
4960         PR libstdc++/77795
4961         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
4962         for gets.
4963         * config.h.in: Regenerate.
4964         * configure: Regenerate.
4965         * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
4966         for C++98 and C++11.
4967         * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
4968         * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
4970         * doc/xml/manual/intro.xml: Document LWG 2192 changes.
4971         * doc/html/*: Regenerate.
4972         * include/Makefile.am: Add bits/std_abs.h.
4973         * include/Makefile.in: Regenerate.
4974         * include/bits/std_abs.h: New header defining all required overloads
4975         of std::abs in one place (LWG 2294).
4976         * include/c_global/cmath (abs(double), abs(float), abs(long double)):
4977         Move to bits/std_abs.h.
4978         (abs<_Tp>(_Tp)): Remove.
4979         * include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
4980         Move to bits/std_abs.h.
4981         * testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
4982         * testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
4983         * testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
4984         * testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
4986         PR libstdc++/77801
4987         * include/experimental/numeric: Include <numeric>.
4988         (__abs): Define.
4989         (gcd, lcm): Use __abs instead of std::abs.
4990         * testsuite/experimental/numeric/77801.cc: New test.
4991         * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
4992         * testsuite/experimental/numeric/lcm.cc: Likewise.
4994 2016-09-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
4996         Make optional::reset noexcept, make optional::value
4997         work in constant expressions.
4998         * include/std/optional (_M_get): Make constexpr.
4999         (reset): Make noexcept.
5000         * testsuite/20_util/optional/assignment/7.cc: New.
5001         * testsuite/20_util/optional/observers/6.cc: New.
5003 2016-09-29  Jonathan Wakely  <jwakely@redhat.com>
5005         * include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
5006         outside _GLIBCXX_USE_C99_MATH_TR1 condition.
5008 2016-09-29  Alan Modra  <amodra@gmail.com>
5010         * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
5011         * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
5012         Use LONG_DOUBLE_COMPAT_FLAGS.
5013         * Makefile.in: Regenerate.
5014         * configure: Regenerate.
5015         * doc/Makefile.in: Regenerate.
5016         * include/Makefile.in: Regenerate.
5017         * libsupc++/Makefile.in: Regenerate.
5018         * po/Makefile.in: Regenerate.
5019         * python/Makefile.in: Regenerate.
5020         * src/Makefile.in: Regenerate.
5021         * src/c++11/Makefile.in: Regenerate.
5022         * src/c++98/Makefile.in: Regenerate.
5023         * src/filesystem/Makefile.in: Regenerate.
5024         * testsuite/Makefile.in: Regenerate.
5026 2016-09-28  Jonathan Wakely  <jwakely@redhat.com>
5028         * include/std/chrono (system_clock): Fix typo in comment.
5030         * include/experimental/bits/fs_fwd.h (file_time_type): Simplify
5031         definition.
5032         * src/filesystem/ops.cc (file_time): Take error_code parameter and
5033         check for overflow.
5034         (do_copy_file, last_write_time): Pass error_code in file_time calls.
5035         * testsuite/experimental/filesystem/operations/last_write_time.cc:
5036         New.
5037         * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
5039         PR libstdc++/77686
5040         * include/std/functional (_Any_data): Add may_alias attribute.
5042 2016-09-27  Jonathan Wakely  <jwakely@redhat.com>
5044         * doc/xml/manual/status_cxx2017.xml: Update status.
5045         * doc/html/*: Regenerate.
5046         * include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
5047         * testsuite/20_util/function_objects/searchers.cc: Test feature macro.
5049         * doc/xml/manual/status_cxx2017.xml: Update status.
5050         * include/c_global/cmath (hypot): Add three-dimensional overloads.
5051         * testsuite/26_numerics/headers/cmath/hypot.cc: New.
5053 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
5055         PR libstdc++/77727
5056         * include/std/optional (optional(const optional<_Up>&)):
5057         Default-initialize the base and use emplace.
5058         (optional(optional<_Up>&&)): Likewise.
5059         * testsuite/20_util/optional/cons/77727.cc: New.
5061 2016-09-26  François Dumont  <fdumont@gcc.gnu.org>
5063         * include/debug/safe_base.h
5064         (_Safe_iterator_base::_M_detach_single): Make public.
5066 2016-09-26  Jonathan Wakely  <jwakely@redhat.com>
5068         * include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
5069         redefine macro defined in <bits/stl_iterator.h>.
5071         * include/bits/stl_map.h (map::extract(const_iterator)): Assert that
5072         iterator is not past-the-end.
5073         * include/bits/stl_multimap.h (multimap::extract(const_iterator)):
5074         Likewise.
5075         * include/bits/stl_multiset.h (multiset::extract(const_iterator)):
5076         Likewise.
5077         * include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
5078         * include/bits/unordered_map.h (unordered_map::extract(const_iterator))
5079         (unordered_multimap::extract(const_iterator)): Likewise.
5080         * include/bits/unordered_set.h (unordered_set::extract(const_iterator))
5081         (unordered_multiset::extract(const_iterator)): Likewise.
5083 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
5085         PR libstdc++/77717
5086         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
5087         Fix an out-of-bounds access.
5089 2016-09-26  Marek Polacek  <polacek@redhat.com>
5091         PR c/7652
5092         * libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
5094 2016-09-25  François Dumont  <fdumont@gcc.gnu.org>
5096         * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
5097         functional.
5098         (get_safe_base_mutex): Get mutex based on address lowest non nil bits.
5099         * testsuite/23_containers/vector/debug/mutex_association.cc: New.
5101         * include/debug/bitset (bitset::reference::reference(const _Base_ref&,
5102         bitset*)): Remove __unused__ attribute.
5103         * include/debug/safe_base.h (_Safe_iterator_base): Make
5104         _Safe_sequence_base a friend.
5105         (_Safe_iterator_base::_M_attach): Make protected.
5106         (_Safe_iterator_base::_M_attach_single): Likewise.
5107         (_Safe_iterator_base::_M_detach): Likewise.
5108         (_Safe_iterator_base::_M_detach_single): Likewise.
5109         (_Safe_sequence_base): Make _Safe_iterator_base a friend.
5110         (_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
5111         (_Safe_sequence_base::_M_swap): Make protected.
5112         (_Safe_sequence_base::_M_attach): Make private.
5113         (_Safe_sequence_base::_M_attach_single): Likewise.
5114         (_Safe_sequence_base::_M_detach): Likewise.
5115         (_Safe_sequence_base::_M_detach_single): Likewise.
5116         * include/debug/safe_container.h
5117         (_Safe_container::_Safe_container(_Safe_container&&)): Make default.
5118         * include/debug/safe_iterator.h
5119         (_Safe_iterator::operator++()): Name __scoped_lock instance.
5120         * include/debug/safe_iterator.tcc: Remove trailing line.
5121         * include/debug/safe_unordered_base.h
5122         (_Safe_local_iterator_base::_M_attach): Make protected.
5123         (_Safe_local_iterator_base::_M_attach_single): Likewise.
5124         (_Safe_local_iterator_base::_M_detach): Likewise.
5125         (_Safe_local_iterator_base::_M_detach_single): Likewise.
5126         (_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
5127         (_Safe_unordered_container_base::_M_attach_local): Make private.
5128         (_Safe_unordered_container_base::_M_attach_local_single): Likewise.
5129         (_Safe_unordered_container_base::_M_detach_local): Likewise.
5130         (_Safe_unordered_container_base::_M_detach_local_single): Likewise.
5132         * include/parallel/algo.h: Generalize usage of std::__iterator_category.
5133         Adjust whitespaces.
5135 2016-09-23  Jonathan Wakely  <jwakely@redhat.com>
5137         PR libstdc++/56166
5138         PR libstdc++/77582
5139         * include/bits/basic_string.h (basic_string::clear()): Drop reference
5140         and use empty rep.
5141         * include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
5142         Likewise.
5143         * testsuite/21_strings/basic_string/56166.cc: New.
5144         * testsuite/ext/vstring/modifiers/clear/56166.cc: New.
5146         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
5147         (basic_string::erase(size_type, size_type)): Add fast path for
5148         truncating the string, by calling _M_set_length directly.
5149         (basic_string::erase(__const_iterator, __const_iterator)): Likewise.
5150         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
5151         (basic_string::resize(size_type, _CharT)): Likewise.
5153 2016-09-22  Jason Merrill  <jason@redhat.com>
5155         * configure.ac: Define HAVE_MEMALIGN for newlib.
5157 2015-09-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5159         * config/cpu/m68k/atomicity.h: Adjust comment.
5160         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
5161         explicit atomicity_dir setup via configure.host.
5162         * configure.host (rtems-*): Set atomicity_dir.
5163         * configure: Regenerate.
5165 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
5167         Implement C++17 node extraction and insertion (P0083R5)
5168         * doc/xml/manual/status_cxx2017.xml: Document status.
5169         * doc/html/*: Regenerate.
5170         * include/Makefile.am: Add bits/node_handle.h and reorder.
5171         * include/Makefile.in: Regenerate.
5172         * include/bits/hashtable.h (_Hashtable::node_type)
5173         (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
5174         (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
5175         (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
5176         (_Hash_merge_helper): Define primary template.
5177         * include/bits/node_handle.h: New header.
5178         * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
5179         friend.
5180         (map::node_type, map::insert_return_type, map::extract, map::merge)
5181         (map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
5182         Define new members.
5183         (_Rb_tree_merge_helper): Specialize for map.
5184         * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
5185         as friend.
5186         (multimap::node_type, multimap::extract, multimap::merge)
5187         (multimap::insert(node_type&&))
5188         (multimap::insert(const_iterator, node_type&&)): Define.
5189         (_Rb_tree_merge_helper): Specialize for multimap.
5190         * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
5191         as friend.
5192         (multiset::node_type, multiset::extract, multiset::merge)
5193         (multiset::insert(node_type&&))
5194         (multiset::insert(const_iterator, node_type&&)): Define.
5195         * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
5196         friend.
5197         (set::node_type, set::insert_return_type, set::extract, set::merge)
5198         (set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
5199         Define.
5200         (_Rb_tree_merge_helper): Specialize for set.
5201         * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
5202         (_Rb_tree::node_type, _Rb_tree::insert_return_type)
5203         (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
5204         (_Rb_tree::_M_reinsert_node_hint_unique)
5205         (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
5206         (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
5207         (_Rb_tree_merge_helper): Specialize for multiset.
5208         * include/bits/unordered_map.h (unordered_map): Declare
5209         unordered_map<> and unordered_multimap<> as friends.
5210         (unordered_map::node_type, unordered_map::insert_return_type)
5211         (unordered_map::extract, unordered_map::merge)
5212         (unordered_map::insert(node_type&&))
5213         (unordered_map::insert(const_iterator, node_type&&))
5214         (unordered_multimap): Declare _Hash_merge_helper as friend.
5215         (unordered_multimap::node_type, unordered_multimap::extract)
5216         (unordered_multimap::merge, unordered_multimap::insert(node_type&&))
5217         (unordered_multimap::insert(const_iterator, node_type&&)): Define.
5218         (_Hash_merge_helper): Specialize for unordered maps and multimaps.
5219         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
5220         Declare _Hash_merge_helper as friend.
5221         (unordered_set::node_type, unordered_set::insert_return_type)
5222         (unordered_set::extract, unordered_set::merge)
5223         (unordered_set::insert(node_type&&))
5224         (unordered_set::insert(const_iterator, node_type&&)): Define.
5225         (unordered_multiset::node_type, unordered_multiset::extract)
5226         (unordered_multiset::merge, unordered_multiset::insert(node_type&&))
5227         (unordered_multiset::insert(const_iterator, node_type&&)): Define.
5228         (_Hash_merge_helper): Specialize for unordered sets and multisets.
5229         * include/debug/map.h (map): Add using declarations or forwarding
5230         functions for new members.
5231         * include/debug/map.h (multimap): Likewise.
5232         * include/debug/map.h (multiset): Likewise.
5233         * include/debug/map.h (set): Likewise.
5234         * include/debug/unordered_map (unordered_map, unordered_multimap):
5235         Likewise.
5236         * include/debug/unordered_set( unordered_set, unordered_multiset):
5237         Likewise.
5238         * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
5239         helper function.
5240         (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
5241         (StdNodeHandlePrinter): Define printer for node handles.
5242         (build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
5243         * testsuite/23_containers/map/modifiers/extract.cc: New.
5244         * testsuite/23_containers/map/modifiers/merge.cc: New.
5245         * testsuite/23_containers/multimap/modifiers/extract.cc: New.
5246         * testsuite/23_containers/multimap/modifiers/merge.cc: New.
5247         * testsuite/23_containers/multiset/modifiers/extract.cc: New.
5248         * testsuite/23_containers/multiset/modifiers/merge.cc: New.
5249         * testsuite/23_containers/set/modifiers/extract.cc: New.
5250         * testsuite/23_containers/set/modifiers/merge.cc: New.
5251         * testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
5252         * testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
5253         * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
5254         New.
5255         * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
5256         * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
5257         New.
5258         * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
5259         * testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
5260         * testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
5261         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
5262         dg-error lineno.
5263         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
5265 2016-09-22  Ville Voutilainen  <ville.voutilainen@gmail.com>
5267         Fix tests on old arm platforms for optional.
5268         * testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
5270 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
5272         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
5273         recent change to _Variant_storage.
5274         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
5275         reference type.
5277         * include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
5278         std::forward and ::new. Cast pointer to void*.
5279         * include/std/variant (_Variant_storage, _Union, _Variant_base)
5280         (__access, __visit_invoke, variant, visit): Qualify std::forward.
5281         * testsuite/20_util/variant/compile.cc: Test for ADL problems.
5283 2016-09-22  Tim Shen  <timshen@google.com>
5285         * include/std/variant (variant::operator=): Fix assignment
5286         on references.
5287         * testsuite/20_util/variant/compile.cc: Add test.
5289 2016-09-22  Tim Shen  <timshen@google.com>
5291         PR libstdc++/77641
5292         * include/std/variant (_Variant_storage::_Variant_storage):
5293         Change _Variant_storage's union to be default constructible.
5294         * testsuite/20_util/variant/compile.cc: New test.
5296 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5298         PR libstdc++/77288
5299         * include/std/optional (__is_optional_impl, __is_optional): Remove.
5300         (__converts_from_optional, __assigns_from_optional): New.
5301         (optional(_Up&&)): Use is_same instead of __is_optional.
5302         (optional(const optional<_Up>&)): Constrain with
5303         __converts_from_optional.
5304         (optional(optional<_Up>&&)): Likewise.
5305         (operator=(_Up&&)): Use is_same instead of __is_optional, check
5306         is_same and is_scalar.
5307         (operator=(const optional<_Up>&)): Constrain with
5308         __converts_from_optional and __assigns_from_optional.
5309         (operator=(optional<_Up>&&)): Likewise.
5310         * testsuite/20_util/optional/77288.cc: New.
5311         * testsuite/20_util/optional/cons/value.cc: Adjust.
5313 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5315         Implement LWG 2729 for tuple.
5316         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
5317         Suppress conditionally.
5318         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
5319         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
5320         (_Tuple_impl(const _Head&)): Constrain.
5321         (_Tuple_impl(_UHead&&)): Likewise.
5322         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
5323         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
5324         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
5325         (operator=(const tuple&)): Enable conditionally.
5326         (operator=(tuple&&)): Suppress conditionally.
5327         (operator=(const tuple<_UElements...>&)): Constrain.
5328         (operator=(tuple<_UElements...>&&)): Likewise.
5329         (operator=(const tuple&)): Enable conditionally (2-param tuple).
5330         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
5331         (operator=(const tuple<_U1, _U2>&)): Constrain.
5332         (operator=(tuple<_U1, _U2>&&)): Likewise.
5333         (operator=(const pair<_U1, _U2>&)): Likewise.
5334         (operator=(pair<_U1, _U2>&&)): Likewise.
5335         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
5336         * testsuite/20_util/tuple/tuple_traits.cc: New.
5338 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5340         PR libstdc++/77537
5341         Implement LWG 2729 for pair.
5342         * include/bits/stl_pair.h (_PCC): New.
5343         (_ConstructiblePair, _ImplicitlyConvertiblePair):
5344         Turn into static member functions of _PCC.
5345         (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
5346         (_PCCP): New.
5347         (pair(const _T1&, const _T2&)): Adjust.
5348         (_PCCFP): New.
5349         (pair(const pair<_U1, _U2>&)): Adjust.
5350         (pair(_U1&&, const _T2&)): Likewise.
5351         (pair(const _T1&, _U2&&)): Likewise.
5352         (pair(_U1&&, _U2&&)): Likewise.
5353         (pair(pair<_U1, _U2>&&)): Likewise.
5354         (operator=(const pair&)): Make conditionally deleted.
5355         (operator=(pair&&)): Make conditionally suppressed.
5356         (operator=(const pair<_U1, _U2>&)): Constrain.
5357         (operator=(pair<_U1, _U2>&&): Likewise.
5358         * include/std/type_traits (__nonesuch): New.
5359         * testsuite/20_util/pair/traits.cc: New.
5361 2016-09-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
5363         PR libstdc++/77619
5364         * include/bits/stl_construct.h: (_Construct_novalue): New.
5365         (_Destroy_n_aux, _Destroy_n): New.
5366         * include/bits/stl_uninitialized.h: (type_traits):
5367         New include in C++11 mode.
5368         (__uninitialized_default_novalue_1): New.
5369         (__uninitialized_default_novalue_n_1): Likewise.
5370         (__uninitialized_default_novalue): Likewise.
5371         (__uninitialized_default_novalue_n): Likewise.
5372         (__uninitialized_copy_n_pair): Likewise.
5373         (uninitialized_default_construct):
5374         Use __uninitialized_default_novalue.
5375         (uninitialized_default_construct_n):
5376         Use __uninitialized_default_novalue_n.
5377         (uninitialized_value_construct): Use __uninitialized_default.
5378         (uninitialized_value_construct_n): Use __uninitialized_default_n.
5379         (uninitialized_move): Use uninitialized_copy.
5380         (uninitialized_move_n): Use __uninitialized_copy_n_pair.
5381         (destroy_at): Use _Destroy.
5382         (destroy): Likewise.
5383         (destroy_n): Likewise.
5384         * testsuite/20_util/specialized_algorithms/
5385         memory_management_tools/1.cc: Add tests for exceptions,
5386         add tests for trivial cases for construct and move.
5388 2016-09-20  Jonathan Wakely  <jwakely@redhat.com>
5390         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
5391         (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
5393 2016-09-19  Jonathan Wakely  <jwakely@redhat.com>
5395         PR libstdc++/77645
5396         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
5397         (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
5398         division to int to work with Python 3.
5400         * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
5402         * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
5403         display_hint to be set by subclasses.
5404         (StdVariantPrinter): Use array for display_hint. Adjust output to be
5405         more similar to std::any and std::optional output.
5406         (register_type_printers): Add type printers for basic_string_view
5407         typedefs and experimental::any. Adjust type printers for
5408         fundamentals_v1 templates to match fundamentals_v2 and later.
5409         * testsuite/libstdc++-prettyprinters/cxx17.cc: New.
5411         PR libstdc++/77645
5412         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
5413         argument.
5414         (ListWorkerBase.get_value_from_node): Define new method.
5415         (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
5417 2016-09-17  Jonathan Wakely  <jwakely@redhat.com>
5419         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
5420         (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
5421         Register for C++17 components in namespace std. Strip inline namespace
5422         from typename.
5424 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5426         * doc/xml/manual/profile_mode.xml: Fix typo.
5427         * doc/html/manual/profile_mode_devel.html: Regenerate.
5429 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5430             Marc Glisse  <marc.glisse@inria.fr>
5432         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
5433         (operator new(size_t, align_val_t)): Replace modulus operator with
5434         mask.
5436 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5438         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
5439         Increase alignment if less than sizeof(void*).
5440         [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
5441         Increase size if not a multiple of alignment.
5443 2016-09-15  Jonathan Wakely  <jwakely@redhat.com>
5445         * doc/xml/manual/debug_mode.xml: Minor editorial fixes.
5446         * doc/html/*: Regenerate.
5448         * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
5449         -Wno-deprecated.
5450         * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
5452 2016-09-14  Marek Polacek  <polacek@redhat.com>
5454         * testsuite/23_containers/vector/debug/insert6_neg.cc: Use
5455         -Wno-deprecated.
5457 2016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>
5459         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
5460         Move dg-do directive before dg-skip.
5461         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
5462         Move dg-do directive before dg-require.
5463         * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
5464         * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
5465         * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
5466         * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
5467         * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
5468         * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
5469         * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
5470         * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
5471         * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
5472         * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
5473         * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
5474         * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
5475         * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
5476         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
5477         * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
5478         Likewise.
5479         * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
5480         * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
5481         * testsuite/27_io/objects/char/12048-5.cc: Likewise.
5482         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
5483         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
5485 2016-09-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
5487         Implement P0040R3, Extending memory management tools.
5488         * include/bits/stl_uninitialized.h (utility): New include
5489         in C++17 mode.
5490         (uninitialized_default_construct): New.
5491         (uninitialized_default_construct_n): Likewise.
5492         (uninitialized_value_construct): Likewise.
5493         (uninitialized_value_construct_n): Likewise.
5494         (uninitialized_move): Likewise.
5495         (uninitialized_move_n): Likewise.
5496         (destroy_at, destroy, destroy_n): Likewise.
5497         * testsuite/20_util/specialized_algorithms/memory_management_tools/
5498         1.cc: New.
5500 2016-09-12  Jason Merrill  <jason@redhat.com>
5502         * config/abi/pre/gnu.ver: Use [jmy] for size_t.
5504 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
5506         Implement P0253R1, Fixing a design mistake in the searchers
5507         interface in Library Fundamentals.
5508         * include/std/functional: (utility): New include in C++17 mode.
5509         (default_searcher): Use a pair as return type, adjust the definition.
5510         (boyer_moore_searcher): Likewise.
5511         (boyer_moore_horspool_searcher): Likewise.
5512         * testsuite/20_util/function_objects/searchers.cc: Adjust.
5514 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
5516         Implement C++17 string searchers.
5517         * include/std/functional: (unordered_map, vector): New includes
5518         in C++17 mode.
5519         (array, bits/stl_algo.h): Likewise.
5520         (default_searcher, __boyer_moore_map_base): New.
5521         (__boyer_moore_array_base, __is_std_equal_to): Likewise.
5522         (__boyer_moore_base_t, boyer_moore_searcher): Likewise.
5523         (boyer_moore_horspool_searcher, make_default_searcher): Likewise.
5524         (make_boyer_moore_searcher): Likewise.
5525         (make_boyer_moore_horspool_searcher): Likewise.
5526         * testsuite/20_util/function_objects/searchers.cc: New.
5528 2016-09-12  Matthew Wahab  <matthew.wahab@arm.com>
5530         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
5531         Move dg-do directive before dg-require.
5532         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
5533         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
5534         Likewise.
5535         * testsuite/22_locale/codecvt/utf8.cc: Likewise.
5536         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
5537         * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
5538         * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
5539         * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
5540         * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
5541         * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
5542         * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
5543         * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
5544         * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
5545         * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
5546         * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
5547         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
5548         Likewise.
5549         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
5550         Likewise.
5551         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
5552         * testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
5553         * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
5554         Likewise.
5555         * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
5556         Likewise.
5557         * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
5558         Likewise.
5559         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
5560         Likewise.
5561         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5562         Likewise.
5563         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5564         Likewise.
5565         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5566         Likewise.
5567         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5568         Likewise.
5569         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5570         Likewise.
5571         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5572         Likewise.
5573         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5574         Likewise.
5575         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5576         Likewise.
5577         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5578         Likewise.
5579         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5580         Likewise.
5581         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5582         Likewise.
5583         * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
5584         Likewise.
5585         * testsuite/23_containers/forward_list/debug/
5586         iterator_self_move_assign_neg.cc: Likewise.
5587         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
5588         Likewise.
5589         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5590         Likewise.
5591         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5592         Likewise.
5593         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5594         Likewise.
5595         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5596         Likewise.
5597         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
5598         Likewise.
5599         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
5600         Likewise.
5601         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
5602         Likewise.
5603         * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
5604         * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
5605         * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
5606         * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
5607         * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
5608         * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
5609         * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
5610         * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
5611         * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
5612         * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
5613         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
5614         Likewise.
5615         * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
5616         * testsuite/23_containers/map/debug/60499.cc: Likewise.
5617         * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
5618         * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
5619         * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
5620         * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
5621         * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
5622         * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
5623         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
5624         Likewise.
5625         * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
5626         * testsuite/23_containers/multimap/debug/60499.cc: Likewise.
5627         * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
5628         * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
5629         * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
5630         * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
5631         * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
5632         * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
5633         * testsuite/23_containers/multimap/debug/
5634         iterator_self_move_assign_neg.cc: Likewise.
5635         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
5636         Likewise.
5637         * testsuite/23_containers/multiset/debug/60499.cc: Likewise.
5638         * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
5639         * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
5640         * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
5641         * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
5642         * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
5643         * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
5644         * testsuite/23_containers/multiset/debug/
5645         iterator_self_move_assign_neg.cc: Likewise.
5646         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
5647         Likewise.
5648         * testsuite/23_containers/set/debug/60499.cc: Likewise.
5649         * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
5650         * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
5651         * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
5652         * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
5653         * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
5654         * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
5655         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
5656         Likewise.
5657         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
5658         * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
5659         * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
5660         * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
5661         * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
5662         Likewise.
5663         * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
5664         * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
5665         * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
5666         Likewise.
5667         * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
5668         Likewise.
5669         * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
5670         Likewise.
5671         * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
5672         * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
5673         * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
5674         * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
5675         * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
5676         * testsuite/23_containers/unordered_map/debug/
5677         invalid_local_iterator_compare_neg.cc: Likewise.
5678         * testsuite/23_containers/unordered_map/debug/
5679         invalid_local_iterator_range_neg.cc: Likewise.
5680         * testsuite/23_containers/unordered_map/debug/
5681         iterator_self_move_assign_neg.cc: Likewise.
5682         * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
5683         Likewise.
5684         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
5685         Likewise.
5686         * testsuite/23_containers/unordered_map/debug/
5687         use_erased_local_iterator_neg.cc: Likewise.
5688         * testsuite/23_containers/unordered_map/debug/
5689         use_invalid_iterator_neg.cc: Likewise.
5690         * testsuite/23_containers/unordered_map/debug/
5691         use_invalid_local_iterator_neg.cc: Likewise.
5692         * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
5693         * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
5694         Likewise.
5695         * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
5696         Likewise.
5697         * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
5698         Likewise.
5699         * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
5700         Likewise.
5701         * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
5702         Likewise.
5703         * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
5704         Likewise.
5705         * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
5706         Likewise.
5707         * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
5708         Likewise.
5709         * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
5710         Likewise.
5711         * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
5712         Likewise.
5713         * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
5714         Likewise.
5715         * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
5716         Likewise.
5717         * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
5718         Likewise.
5719         * testsuite/23_containers/unordered_multimap/debug/
5720         invalid_local_iterator_compare_neg.cc: Likewise.
5721         * testsuite/23_containers/unordered_multimap/debug/
5722         invalid_local_iterator_range_neg.cc: Likewise.
5723         * testsuite/23_containers/unordered_multimap/debug/
5724         iterator_self_move_assign_neg.cc: Likewise.
5725         * testsuite/23_containers/unordered_multimap/debug/
5726         max_load_factor_neg.cc: Likewise.
5727         * testsuite/23_containers/unordered_multimap/debug/
5728         self_move_assign_neg.cc: Likewise.
5729         * testsuite/23_containers/unordered_multimap/debug/
5730         use_erased_local_iterator_neg.cc: Likewise.
5731         * testsuite/23_containers/unordered_multimap/debug/
5732         use_invalid_iterator_neg.cc: Likewise.
5733         * testsuite/23_containers/unordered_multimap/debug/
5734         use_invalid_local_iterator_neg.cc: Likewise.
5735         * testsuite/23_containers/unordered_multiset/debug/60499.cc:
5736         Likewise.
5737         * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
5738         Likewise.
5739         * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
5740         Likewise.
5741         * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
5742         Likewise.
5743         * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
5744         Likewise.
5745         * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
5746         Likewise.
5747         * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
5748         Likewise.
5749         * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
5750         Likewise.
5751         * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
5752         Likewise.
5753         * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
5754         Likewise.
5755         * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
5756         Likewise.
5757         * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
5758         Likewise.
5759         * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
5760         Likewise.
5761         * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
5762         Likewise.
5763         * testsuite/23_containers/unordered_multiset/debug/
5764         invalid_local_iterator_compare_neg.cc: Likewise.
5765         * testsuite/23_containers/unordered_multiset/debug/
5766         invalid_local_iterator_range_neg.cc: Likewise.
5767         * testsuite/23_containers/unordered_multiset/debug/
5768         iterator_self_move_assign_neg.cc: Likewise.
5769         * testsuite/23_containers/unordered_multiset/debug/
5770         max_load_factor_neg.cc: Likewise.
5771         * testsuite/23_containers/unordered_multiset/debug/
5772         self_move_assign_neg.cc: Likewise.
5773         * testsuite/23_containers/unordered_multiset/debug/
5774         use_erased_local_iterator_neg.cc: Likewise.
5775         * testsuite/23_containers/unordered_multiset/debug/
5776         use_invalid_iterator_neg.cc: Likewise.
5777         * testsuite/23_containers/unordered_multiset/debug/
5778         use_invalid_local_iterator_neg.cc: Likewise.
5779         *  testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
5780         * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
5781         * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
5782         * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
5783         Likewise.
5784         * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
5785         * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
5786         * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
5787         Likewise.
5788         * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
5789         Likewise.
5790         * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
5791         Likewise.
5792         * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
5793         * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
5794         * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
5795         * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
5796         * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
5797         * testsuite/23_containers/unordered_set/debug/
5798         invalid_local_iterator_compare_neg.cc: Likewise.
5799         * testsuite/23_containers/unordered_set/debug/
5800         invalid_local_iterator_range_neg.cc: Likewise.
5801         * testsuite/23_containers/unordered_set/debug/
5802         iterator_self_move_assign_neg.cc: Likewise.
5803         * testsuite/23_containers/unordered_set/debug/
5804         max_load_factor_neg.cc: Likewise.
5805         * testsuite/23_containers/unordered_set/debug/
5806         self_move_assign_neg.cc: Likewise.
5807         * testsuite/23_containers/unordered_set/debug/
5808         use_erased_local_iterator_neg.cc: Likewise.
5809         * testsuite/23_containers/unordered_set/debug/
5810         use_invalid_iterator_neg.cc: Likewise.
5811         * testsuite/23_containers/unordered_set/debug/
5812         use_invalid_local_iterator_neg.cc: Likewise.
5813         * testsuite/23_containers/vector/debug/52433.cc: Likewise.
5814         * testsuite/23_containers/vector/debug/60499.cc: Likewise.
5815         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
5816         * testsuite/23_containers/vector/debug/
5817         iterator_self_move_assign_neg.cc: Likewise.
5818         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
5819         Likewise.
5820         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
5821         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
5822         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
5823         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
5824         * testsuite/29_atomics/atomic/60658.cc: Likewise.
5825         * testsuite/29_atomics/atomic/60695.cc: Likewise.
5826         * testsuite/29_atomics/atomic/62259.cc: Likewise.
5827         * testsuite/29_atomics/atomic/64658.cc: Likewise.
5828         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
5829         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
5830         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
5831         Likewise.
5833 2016-09-11  Jonathan Wakely  <jwakely@redhat.com>
5835         * libsupc++/new_opant.cc: Include exception_defines.h.
5836         * libsupc++/new_opvant.cc: Likewise.
5838 2016-09-09  Jason Merrill  <jason@redhat.com>
5840         Implement P0035R4, C++17 new of over-aligned types.
5841         * libsupc++/new: Declare aligned new/delete operators.
5842         * config/abi/pre/gnu.ver: Export them.
5843         * configure.ac: Check for aligned_alloc, posix_memalign, memalign,
5844         _aligned_malloc.
5845         * libsupc++/new_opa.cc: New.
5846         * libsupc++/new_opant.cc: New.
5847         * libsupc++/new_opva.cc: New.
5848         * libsupc++/new_opva.cc: New.
5849         * libsupc++/del_opa.cc: New.
5850         * libsupc++/del_opant.cc: New.
5851         * libsupc++/del_opsa.cc: New.
5852         * libsupc++/del_opva.cc: New.
5853         * libsupc++/del_opvant.cc: New.
5854         * libsupc++/del_opvsa.cc: New.
5855         * libsupc++/Makefile.am: Build them.
5857 2016-09-05  Tim Shen  <timshen@google.com>
5859         * include/std/variant: include bits/move.h for std::addressof.
5861 2016-09-05  Mikhail Strelnikov  <mikhail.strelnikov@gmail.com>
5863         * include/std/variant (_Variant_storage::_M_storage()): Use
5864         std::addressof instead of operator& to take address.
5866 2016-09-02  Maxim Kuvyrkov  <maxim.kuvyrkov@linaro.org>
5868         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
5869         setrlimit on both native and cross targets.
5870         * configure: Regenerate.
5872 2016-08-31  Jonathan Wakely  <jwakely@redhat.com>
5874         * include/bits/shared_ptr.h (_Assignable): New alias template.
5875         (shared_ptr::operator=(const shared_ptr<_Tp1>&))
5876         (shared_ptr::operator=(shared_ptr<_Tp1>&&))
5877         (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
5878         _Assignable.
5879         * include/bits/shared_ptr_base.h (_Assignable): New alias template.
5880         (__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
5881         (__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
5882         (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
5883         _Assignable.
5884         (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
5885         (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
5886         _Convertible.
5887         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
5888         match on any line.
5889         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
5890         * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
5891         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
5892         expected errors. Remove unnecessary code.
5893         * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
5895         * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
5896         comparison object.
5897         * testsuite/23_containers/set/move_comparison.cc: New test.
5899         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5900         New test.
5902 2016-08-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
5904         PR libstdc++/77395
5905         * include/std/type_traits (is_constructible): Forward-declare...
5906         (__is_base_to_derived_ref): ...and use here.
5907         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
5908         * testsuite/20_util/is_constructible/77395.cc: New.
5909         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
5910         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
5911         Likewise.
5912         * testsuite/20_util/tuple/77395.cc: New.
5914 2016-08-30  Uros Bizjak  <ubizjak@gmail.com>
5916         * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
5917         directive above dg-require-namedlocale directive.
5918         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
5919         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
5920         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
5921         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
5922         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
5924 2016-08-27  Tim Shen  <timshen@google.com>
5926         PR libstdc++/77356
5927         * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
5928         _M_expression_term): Modify to support dash literal.
5929         * include/bits/regex_scanner.h: Add dash as a token type to make
5930         a different from the mandated dash literal by escaping.
5931         * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
5932         token in bracket expression parsing.
5933         * testsuite/28_regex/regression.cc: Add new testcases.
5935 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5937         PR libstdc++/51960
5938         * doc/xml/manual/intro.xml: Document DR 2127 change.
5939         * doc/html/*: Regenerate.
5940         * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
5941         (operator++(), operator++(int)): Use injected class name.
5942         * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
5944         * testsuite/*: Use { target c++11 } or { target c++14 } instead of
5945         using -std in dg-options.
5947 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5948             Pedro Alves  <palves@redhat.com>
5950         * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
5951         and restore dg-interpreter-batch-mode.
5952         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
5953         gdb-dg-runtest instead of dg-runtest.
5954         * testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
5956 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5958         * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
5959         precise patterns for basic_string constructors.
5960         (GLIBCXX_3.4.23): Export new constructors.
5961         * doc/xml/manual/intro.xml: Document LWG 2583 status.
5962         * doc/html/*: Regenerate.
5963         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
5964         (basic_string(const basic_string&, size_type, const Alloc&)): Add
5965         new constructor for LWG 2583.
5966         (basic_string(const basic_string&, size_type, size_type)): Remove
5967         default argument.
5968         [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
5969         * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
5970         * testsuite/21_strings/basic_string/cons/char/8.cc: New test.
5971         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
5973 2016-08-24  Aditya Kumar  <hiraditya@msn.com>
5975         * include/bits/algorithmfwd.h: Remove trailing whitespace.
5976         * include/bits/shared_ptr_base.h: Likewise.
5978 2016-08-23  Jonathan Wakely  <jwakely@redhat.com>
5980         * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
5981         * include/profile/array (array): Likewise.
5982         (array::swap): Fix exception specification for zero-sized arrays.
5984         PR libstdc++/77334
5985         * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
5986         (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
5987         * testsuite/23_containers/map/77334.cc: New test.
5989         * doc/xml/manual/using.xml: Remove reference to -pthreads option.
5990         * doc/html/*: Regenerate.
5992         * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
5993         * testsuite/experimental/feat-lib-fund.cc: Likewise.
5995         PR libstdc++/71771
5996         * include/bits/stl_iterator.h
5997         (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
5998         define for C++98 mode.
5999         (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
6000         * testsuite/24_iterators/headers/iterator/synopsis.cc: Use
6001         -std=gnu++98.
6002         * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
6003         * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
6004         * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
6005         * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
6006         difference operator.
6007         * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
6008         difference operator for C++98.
6009         * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
6011         * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
6012         * include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
6013         (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
6014         * include/bits/stl_iterator.h (reverse_iterator, move_iterator)
6015         (__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
6016         Likewise.
6017         * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
6018         _GLIBCXX14_CONSTEXPR.
6019         (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
6020         * include/std/array (array::begin, array::end, array::rbegin)
6021         (array::rend, array::cbegin, array:cend, array::crbegin)
6022         (array::crend, array::operator[], array::at, array::front)
6023         (array::back, array::data): Likewise.
6024         * testsuite/24_iterators/headers/iterator/range_access.cc: Replace
6025         with separate tests for C++11, C++14, and C++17.
6026         * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
6027         * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
6028         * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
6030 2016-08-22  Tim Shen  <timshen@google.com>
6032         Split _M_dfs() into smaller functions.
6033         * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
6034         (_M_handle_subexpr_end, _M_handle_line_begin_assertion)
6035         (_M_handle_line_end_assertion, _M_handle_word_boundary)
6036         (_M_handle_subexpr_lookahead, _M_handle_match)
6037         (_M_handle_backref, _M_handle_accept, _M_handle_alternative):
6038         Add separate function declarations.
6039         * regex_executor.tcc: Split _M_dfs() into multiple handler functions.
6041 2016-08-22  Gleb Natapov  <gleb@scylladb.com>
6043         PR libstdc++/68297
6044         * config/abi/pre/gnu-versioned-namespace.ver: Export
6045         __cxa_init_primary_exception and std::exception_ptr(void*).
6046         * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
6047         export __cxa_init_primary_exception and std::exception_ptr(void*).
6048         * include/Makefile.am: Add new headers.
6049         * include/Makefile.in: Regenerate.
6050         * libsupc++/Makefile.am: Add new headers.
6051         * libsupc++/Makefile.in: Regenerate.
6052         * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
6053         * libsupc++/cxxabi_init_exception.h: New header.
6054         (__cxa_init_primary_exception): Declare.
6055         * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
6056         (__cxa_throw): Use __cxa_init_primary_exception.
6057         * libsupc++/exception (std::exception): Move to ...
6058         * libsupc++/exception.h: New header.
6059         * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
6060         friend declaration.
6061         (__exception_ptr::__dest_thunk): New function template.
6062         (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
6063         Use __cxa_allocate_exception and __cxa_init_primary_exception to
6064         create exception_ptr.
6065         * libsupc++/typeinfo: Include bits/exception.h instead of exception.
6066         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
6068 2016-08-22  Jonathan Wakely  <jwakely@redhat.com>
6070         * doc/xml/api.xml: Replace hardcoded links for specific versions with
6071         link to docs for all releases.
6072         * doc/html/*: Regenerate.
6074         PR libstdc++/77322
6075         * doc/xml/manual/intro.xml: Document DR 2062 change.
6076         * include/std/functional (function::swap): Add noexcept.
6077         (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
6078         * testsuite/20_util/function/77322.cc: New test.
6080 2016-08-19  Jonathan Wakely  <jwakely@redhat.com>
6082         * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
6083         *-*-solaris* instead of -pthreads.
6084         * testsuite/21_strings/basic_string/pthread4.cc : Likewise.
6085         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
6086         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
6087         * testsuite/23_containers/list/pthread1.cc: Likewise.
6088         * testsuite/23_containers/list/pthread5.cc: Likewise.
6089         * testsuite/23_containers/map/pthread6.cc: Likewise.
6090         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
6091         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
6092         * testsuite/30_threads/shared_mutex/*: Likewise.
6093         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
6094         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6095         default_weaktoshared.cc: Likewise.
6096         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
6097         mutex_weaktoshared.cc: Likewise.
6098         * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
6099         dg-require-effective-target instead of using -std option.
6100         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
6101         Likewise.
6102         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
6103         * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
6104         Likewise.
6105         * testsuite/30_threads/async/*: Likewise.
6106         * testsuite/30_threads/call_once/*: Likewise.
6107         * testsuite/30_threads/condition_variable/*: Likewise.
6108         * testsuite/30_threads/condition_variable_any/*: Likewise.
6109         * testsuite/30_threads/future/*: Likewise.
6110         * testsuite/30_threads/lock/*: Likewise.
6111         * testsuite/30_threads/mutex/*: Likewise.
6112         * testsuite/30_threads/packaged_task/*: Likewise.
6113         * testsuite/30_threads/promise/*: Likewise.
6114         * testsuite/30_threads/recursive_mutex/*: Likewise.
6115         * testsuite/30_threads/recursive_timed_mutex/*: Likewise.
6116         * testsuite/30_threads/shared_future/*: Likewise.
6117         * testsuite/30_threads/shared_lock/*: Likewise.
6118         * testsuite/30_threads/shared_timed_mutex/*: Likewise.
6119         * testsuite/30_threads/this_thread/*: Likewise.
6120         * testsuite/30_threads/thread/*: Likewise.
6121         * testsuite/30_threads/timed_mutex/*: Likewise.
6122         * testsuite/30_threads/try_lock/*: Likewise.
6123         * testsuite/30_threads/unique_lock/*: Likewise.
6125         * doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
6126         * doc/html/*: Regenerate.
6127         * include/experimental/functional (_Not_fn, not_fn): Match C++17
6128         semantics.
6129         * include/std/functional (_Not_fn, not_fn): Define for C++17.
6130         * testsuite/20_util/not_fn/1.cc: New.
6131         * testsuite/experimental/functional/not_fn.cc: Test abstract class.
6132         Remove test for volatile-qualified wrapper.
6134         * include/std/atomic (atomic::is_always_lock_free): Define.
6135         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
6136         * testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
6137         * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
6138         * doc/xml/manual/status_cxx2017.xml: Update status.
6139         * doc/html/*: Regenerate.
6141         * include/experimental/tuple (apply): Qualify call to __apply_impl.
6142         * include/std/tuple (apply): Likewise.
6143         * testsuite/experimental/system_error/value.cc: Fix ambiguities in
6144         C++17 mode.
6145         * testsuite/experimental/tuple/tuple_size.cc: Likewise.
6146         * testsuite/experimental/type_traits/value.cc: Likewise.
6148         * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
6149         and variant.
6150         * doc/html/*: Regenerate.
6152 2016-08-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
6154         Implement the latest proposed resolution of LWG 2756.
6155         * include/std/optional (Optional_base(const _Tp&))
6156         (Optional_base(_Tp&&), using _Base::_Base): Remove.
6157         (optional(nullopt_t)): New.
6158         (optional(_Up&&)): Invoke base directly with in_place
6159         rather than creating a temporary, add default template
6160         argument, change constraints.
6161         (optional(const optional<_Up>&)): Invoke base directly
6162         with in_place, remove unnecessary constraints.
6163         (optional(optional<_Up>&& __t)): Likewise.
6164         (optional(in_place_t, _Args&&...)): New.
6165         (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
6166         (operator=(_Up&&)): Add default template argument, change constraints.
6167         (operator=(const optional<_Up>&)): Put is_same first in the
6168         constraints.
6169         (operator=(optional<_Up>&&)): Likewise.
6170         * testsuite/20_util/optional/assignment/5.cc: Add a test to
6171         verify assignment from something that can't be perfect-forwarded.
6172         * testsuite/20_util/optional/cons/value.cc: Add tests to verify
6173         that a nested optional is disengaged when constructed
6174         from a disengaged element type, and to verify that assignments
6175         from an engaged element type engage the optional.
6177 2016-08-18  Tim Shen  <timshen@google.com>
6179         Implement <variant>
6181         * include/Makefile.am: Add new file std/variant.
6182         * include/Makefile.in: Generated from Makefile.am.
6183         * include/bits/enable_special_members.h: Add a tag type to allow
6184         the construction in non-default constructor.
6185         * include/bits/uses_allocator.h: Add convenience traits to
6186         detect constructibility.
6187         * include/std/variant: Implement <variant>.
6188         * testsuite/20_util/variant/compile.cc: Compile-time tests.
6189         * testsuite/20_util/variant/run.cc: Runtime tests.
6191 2016-08-18  Jonathan Wakely  <jwakely@redhat.com>
6193         * doc/xml/manual/test.xml (test.run.permutations): Expand section.
6194         (test.new_tests): Rewrite section.
6195         (tests.dg.directives): New section.
6196         * doc/html/*: Regenerate.
6198         * doc/xml/manual/test.xml: Improve documentation of test targets.
6199         Document new-abi-baseline, check-debug, and check-parallel targets.
6201         * doc/xml/manual/build_hacking.xml: New section on shared library
6202         versioning.
6204         * doc/xml/manual/build_hacking.xml: Improve markup.
6205         * doc/xml/manual/test.xml: Likewise. Change section title from "Test"
6206         to "Testing".
6207         * doc/xml/faq.xml: Change link text to "Testing".
6209         * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
6210         dg-options directive.
6212 2016-08-17  Jonathan Wakely  <jwakely@redhat.com>
6214         * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
6215         directive and use effective target instead of dg-options.
6217         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
6218         instead of -std in dg-options.
6219         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
6220         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
6221         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
6222         * testsuite/20_util/hash/quality.cc: Likewise.
6223         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
6224         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
6225         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
6226         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
6227         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
6228         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
6230         * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
6231         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
6232         * testsuite/27_io/rvalue_streams.cc: Likewise.
6234         * testsuite/26_numerics/complex/literals/types.cc: Add comment.
6236         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
6237         Remove duplicate dg-options directive.
6239         * testsuite/ext/profile/all.cc: Use effective target instead of
6240         -std=gnu++11. Use dg-additional-options instead of repeating options.
6242         * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
6243         -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
6244         instead of dg-excess-errors.
6246         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
6247         test for C++17.
6248         * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
6249         * testsuite/experimental/ratio/value.cc: Likewise.
6250         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
6251         C++17.
6252         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
6253         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
6254         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
6255         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
6256         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
6257         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
6258         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
6259         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
6260         * testsuite/tr1/5_numerical_facilities/special_functions/
6261         10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
6262         C++17 compatibility.
6264         * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
6265         expected signatures for C++14 compatibility.
6267         PR libstdc++/77264
6268         * include/bits/basic_string.h (operator=(__sv_type)
6269         (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
6270         (replace(size_type, size_type, __sv_type))
6271         (replace(const_iterator, const_iterator, __sv_type))
6272         (find(__sv_type, size_type), rfind(__sv_type, size_type))
6273         (compare(size_type, size_type, __sv_type)): Reformat.
6274         (_If_sv): Define helper for SFINAE constaints.
6275         (append(const _Tp&, size_type, size_type))
6276         (assign(const _Tp&, size_type, size_type))
6277         (insert(size_type, const _Tp&, size_type, size_type))
6278         (replace(size_type, size_type, const _Tp&, size_type, size_type)):
6279         Use _If_sv.
6280         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
6281         SFINAE constraints.
6282         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
6283         Likewise.
6284         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
6285         Likewise.
6286         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
6287         Likewise.
6288         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
6289         Likewise.
6290         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
6291         Likewise.
6292         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
6293         Likewise.
6294         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
6295         Likewise.
6296         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
6297         Likewise.
6298         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
6299         Likewise.
6300         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
6301         Likewise.
6303 2016-08-16  Jonathan Wakely  <jwakely@redhat.com>
6305         PR libstdc++/72847
6306         * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
6307         pointers to start and end of storage.
6308         * testsuite/23_containers/vector/bool/72847.cc: New test.
6309         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
6310         _M_finish after deallocating.
6311         (vector<bool>::_M_fill_insert): Likewise.
6312         (vector<bool>::_M_insert_range): Likewise.
6313         (vector<bool>::_M_insert_aux): Likewise.
6315 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
6317         Implement LWG 2744 and LWG 2754.
6318         * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
6319         (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
6320         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
6321         Likewise.
6322         (emplace(_Args&&...)): Likewise.
6323         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
6324         * include/std/utility: (__is_in_place_type_impl): New.
6325         (__is_in_place_type): Likewise.
6326         * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
6327         emplace.
6328         * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
6329         in_place constructor.
6330         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
6331         * testsuite/20_util/any/requirements.cc: Add a test for
6332         in_place-constructing a non-default-constructible type.
6334 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
6336         Add a feature macro for C++17 make_from_tuple.
6337         * include/std/tuple (__cpp_lib_make_from_tuple): New.
6338         (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
6339         Qualify the call to get<>().
6340         * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
6342 2016-08-15  Uros Bizjak  <ubizjak@gmail.com>
6344         * src/filesystem/ops.cc: Always include ostream and
6345         ext/stdio_filebuf.h.
6346         (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
6347         [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
6348         sendfile fails with ENOSYS or EINVAL.
6350 2016-08-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
6352         PR libstdc++/72840
6353         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
6354         syntax.
6356 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
6358         Implement C++17 make_from_tuple.
6359         * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
6360         * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
6362 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
6364         Implement LWG 2758.
6365         * include/bits/basic_string.h
6366         (append(__sv_type, size_type, size_type)): Turn into a template,
6367         change parameter type, constrain, add a conversion to __sv_type
6368         from the dependent parameter type.
6369         (assign(__sv_type, size_type, size_type)): Likewise.
6370         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
6371         (replace(size_type, size_type, __sv_type, size_type, size_type)):
6372         Likewise.
6373         (compare(size_type, size_type,__sv_type, size_type, size_type)):
6374         Likewise.
6375         * testsuite/21_strings/basic_string/lwg2758.cc: New.
6377 2016-08-06  Jonathan Wakely  <jwakely@redhat.com>
6379         * doc/xml/manual/status_cxx2017.xml: Update status table.
6380         * doc/html/manual/status.html: Regenerate.
6382         * testsuite/lib/libstdc++.exp: Fix typo in comment.
6384         PR libstdc++/72820
6385         * include/std/functional (_Function_base::_Base_manager::_M_clone):
6386         Qualify new operator.
6387         * testsuite/20_util/function/cons/72820.cc: New test.
6389         * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
6390         * doc/html/manual/status.html: Regenerate.
6391         * include/Makefile.am: Add new header.
6392         * include/Makefile.in: Regenerate.
6393         * include/bits/invoke.h: New header.
6394         (__invoke): Make constexpr. Add && to types in exception specification.
6395         * include/experimental/tuple (apply, __apply_impl): Fix non-reserved
6396         names. Include <bits/invoke.h> and use std::__invoke.
6397         * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
6398         new header.
6399         (invoke): Add && to types in exception specification.
6400         * include/std/tuple (apply, __apply_impl): Define for C++17.
6401         * testsuite/20_util/tuple/apply/1.cc: New test.
6402         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
6403         lineno.
6405 2016-08-05  Jonathan Wakely  <jwakely@redhat.com>
6407         * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
6408         * doc/html/manual/status.html: Regenerate.
6410         * include/std/chrono (floor, ceil, round, abs): New for C++17.
6411         * testsuite/20_util/duration_cast/rounding.cc: New test.
6412         * testsuite/20_util/time_point_cast/rounding.cc: New test.
6413         * doc/xml/manual/status_cxx2017.xml: Update status table.
6414         * doc/html/manual/status.html: Regenerate.
6415         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
6416         dg-error lineno.
6417         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
6418         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
6419         * testsuite/20_util/duration/literals/range.cc: Likewise.
6421         * include/std/functional (__callable_functor): Remove.
6422         (_Function_handler::_M_invoke): Use __invoke instead of
6423         __callable_functor or mem_fn.
6424         (function::_Callable): Use lvalue in result_of expression.
6425         (function): Remove TODO comments about allocators.
6426         * testsuite/20_util/function/cons/refqual.cc: New test.
6428 2016-08-04  Jonathan Wakely  <jwakely@redhat.com>
6430         * doc/xml/manual/status_cxx2017.xml: Update status table.
6431         * include/std/functional (__inv_unwrap): Move to <type_traits>.
6432         (__invoke_impl): Remove exception specifications.
6433         (__invoke, invoke): Add exception specifications using
6434         __is_nothrow_callable.
6435         * include/std/type_traits (__inv_unwrap): Move from <functional>.
6436         (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
6437         (__is_callable, __is_nothrow_callable): New traits.
6438         (is_callable, is_callable_v): New C++17 traits.
6439         (is_nothrow_callable, is_nothrow_callable_v): Likewise.
6440         * testsuite/20_util/is_callable/requirements/
6441         explicit_instantiation.cc: New test.
6442         * testsuite/20_util/is_callable/requirements/
6443         explicit_instantiation_ext.cc: New test.
6444         * testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
6445         * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
6446         test.
6447         * testsuite/20_util/is_callable/value.cc: New test.
6448         * testsuite/20_util/is_callable/value_ext.cc: New test.
6449         * testsuite/20_util/is_nothrow_callable/requirements/
6450         explicit_instantiation.cc: New test.
6451         * testsuite/20_util/is_nothrow_callable/requirements/
6452         explicit_instantiation_ext.cc: New test.
6453         * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
6454         New test.
6455         * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
6456         New test.
6457         * testsuite/20_util/is_nothrow_callable/value.cc: New test.
6458         * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
6460         * doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
6461         * doc/html/manual/status.html: Regenerate.
6463         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
6464         effective target not dg-options. Move check for feature-test macro to:
6465         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
6466         New test.
6468         * include/std/functional (_Unwrap): Rename to __inv_unwrap.
6469         (__invfwd): Adjust.
6470         (__invoke_impl): Remove unused template parameters.
6471         * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
6472         parameter.
6473         * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
6474         and test __invoke extension for C++11.
6476 2016-08-03  Jonathan Wakely  <jwakely@redhat.com>
6478         * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
6479         Define feature-test macro.
6480         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
6481         for the macro.
6483         * include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
6484         * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
6485         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
6486         * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
6487         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6489         * include/std/utility (as_const): Define.
6490         * testsuite/20_util/as_const/1.cc: New test.
6491         * testsuite/20_util/as_const/rvalue_neg.cc: New test.
6493         * include/bits/shared_ptr.h (owner_less): Add default template
6494         argument.
6495         * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
6496         specialization.
6497         (owner_less<void>): Define specialization.
6498         * include/bits/stl_function.h (__cpp_lib_transparent_operators):
6499         Update value.
6500         * testsuite/20_util/owner_less/void.cc: New test.
6501         * testsuite/experimental/feat-cxx14.cc: Update macro value tested.
6503         * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
6504         Define feature-test macro.
6505         * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
6506         * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
6507         * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
6508         (__cpp_lib_type_trait_variable_templates): Define.
6510         * include/bits/stl_function.h: Remove commented-out macro.
6511         * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
6512         Define feature-test macro.
6513         * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
6515         * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
6516         C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
6517         true.
6518         * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
6519         do #error for C++17.
6520         * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
6521         of __STDCPP_WANT_MATH_SPEC_FUNCS__.
6522         * include/tr1/bessel_function.tcc: Likewise.
6523         * include/tr1/beta_function.tcc: Likewise.
6524         * include/tr1/cmath: Likewise.
6525         * include/tr1/ell_integral.tcc: Likewise.
6526         * include/tr1/exp_integral.tcc: Likewise.
6527         * include/tr1/gamma.tcc: Likewise.
6528         * include/tr1/hypergeometric.tcc: Likewise.
6529         * include/tr1/legendre_function.tcc: Likewise.
6530         * include/tr1/modified_bessel_func.tcc: Likewise.
6531         * include/tr1/poly_hermite.tcc: Likewise.
6532         * include/tr1/poly_laguerre.tcc: Likewise.
6533         * include/tr1/riemann_zeta.tcc: Likewise.
6534         * include/tr1/special_function_util.h: Likewise.
6535         * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
6537         * include/std/type_traits (has_trivial_default_constructor): Remove.
6538         (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
6539         * testsuite/20_util/has_trivial_copy_assign/requirements/
6540         explicit_instantiation.cc: Remove test.
6541         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
6542         line number.
6543         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
6544         Likewise.
6545         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
6546         * testsuite/20_util/has_trivial_copy_constructor/requirements/
6547         explicit_instantiation.cc: Likewise.
6548         * testsuite/20_util/has_trivial_copy_constructor/requirements/
6549         typedefs.cc: Likewise.
6550         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
6551         * testsuite/20_util/has_trivial_default_constructor/requirements/
6552         explicit_instantiation.cc: Likewise.
6553         * testsuite/20_util/has_trivial_default_constructor/requirements/
6554         typedefs.cc: Likewise.
6555         * testsuite/20_util/has_trivial_default_constructor/value.cc:
6556         Likewise.
6557         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
6558         Check has_trivial_default_constructor, has_trivial_copy_constructor,
6559         and has_trivial_copy_assign are not defined.
6560         * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
6561         tests.
6562         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
6563         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
6564         dg-error line number.
6565         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6566         Likewise.
6568 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
6570         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
6571         Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
6572         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
6573         Likewise.
6574         * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
6575         Likewise.
6576         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
6577         Likewise.
6578         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
6579         Likewise.
6580         * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
6581         Likewise.
6582         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
6583         Likewise.
6585         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
6586         comments.
6588         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
6589         dg-error to relevant line.
6590         * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
6591         Likewise.
6592         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
6594         * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
6596         * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
6597         options are present that aren't valid for C.
6598         * testsuite/abi/header_cxxabi.c: Likewise.
6600         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
6601         check_value.cc: Do not add special functions to namespace std in TR1
6602         test.
6604         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
6605         run for C++11 and later.
6606         * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
6607         Likewise.
6608         * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
6609         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
6610         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
6611         * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
6612         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
6613         Likewise.
6614         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
6615         Likewise.
6616         * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
6617         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
6618         Likewise.
6619         * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
6620         Likewise.
6621         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
6622         Likewise.
6623         * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
6624         * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
6625         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
6626         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
6627         * testsuite/special_functions/03_beta/compile.cc: Likewise.
6628         * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
6629         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
6630         * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
6631         Likewise.
6632         * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
6633         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
6634         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
6635         * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
6636         Likewise.
6637         * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
6638         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
6639         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
6640         * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
6641         Likewise.
6642         * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
6643         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
6644         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
6645         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
6646         Likewise.
6647         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
6648         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
6649         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
6650         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
6651         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
6652         Likewise.
6653         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
6654         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
6655         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
6656         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
6657         Likewise.
6658         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
6659         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
6660         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
6661         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
6662         * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
6663         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
6664         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
6665         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
6666         * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
6667         * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
6668         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
6669         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
6670         * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
6671         * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
6672         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
6673         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
6674         * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
6675         * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
6676         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
6677         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
6678         * testsuite/special_functions/14_expint/compile.cc: Likewise.
6679         * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
6680         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
6681         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
6682         * testsuite/special_functions/15_hermite/compile.cc: Likewise.
6683         * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
6684         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
6685         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
6686         * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
6687         * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
6688         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
6689         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
6690         * testsuite/special_functions/17_legendre/compile.cc: Likewise.
6691         * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
6692         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
6693         * testsuite/special_functions/18_riemann_zeta/check_value.cc:
6694         Likewise.
6695         * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
6696         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
6697         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
6698         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
6699         * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
6700         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
6701         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
6702         * testsuite/special_functions/20_sph_legendre/check_value.cc:
6703         Likewise.
6704         * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
6705         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
6706         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
6707         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
6708         * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
6709         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
6711         * testsuite/tr1/5_numerical_facilities/special_functions/
6712         08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
6713         of [[gnu::unused]].
6714         * testsuite/tr1/5_numerical_facilities/special_functions/
6715         09_cyl_bessel_j/check_value.cc: Likewise.
6716         * testsuite/tr1/5_numerical_facilities/special_functions/
6717         10_cyl_bessel_k/check_value.cc: Likewise.
6718         * testsuite/tr1/5_numerical_facilities/special_functions/
6719         11_cyl_neumann/check_value.cc: Likewise.
6720         * testsuite/tr1/5_numerical_facilities/special_functions/
6721         21_sph_bessel/check_value.cc: Likewise.
6722         * testsuite/tr1/5_numerical_facilities/special_functions/
6723         23_sph_neumann/check_value.cc: Likewise.
6725 2016-08-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6727         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
6728         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
6729         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
6730         * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
6731         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
6732         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
6734 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
6736         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
6737         test if -flto used.
6739         * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
6740         additional flags for compiling libtestc++.a objects.
6742 2016-08-01  Jonathan Wakely  <jwakely@redhat.com>
6744         * include/bits/basic_string.h (data() const): Update comment.
6745         (data()): Add non-const overload for C++17.
6746         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
6747         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
6749         * include/bits/basic_string.tcc: Disable explicit instantiation
6750         declarations for C++17.
6752         * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
6753         ignored "xfail" from { dg-do compile { xfail selector } } directive.
6754         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
6755         Likewise.
6756         * testsuite/26_numerics/headers/cmath/
6757         c99_classification_macros_c++11.cc: Likewise.
6758         * testsuite/26_numerics/headers/cmath/
6759         c99_classification_macros_c++98.cc: Likewise.
6760         * testsuite/26_numerics/headers/cmath/
6761         c99_classification_macros_c.cc: Likewise.
6763         * testsuite/backward/hash_set/check_construct_destroy.cc: Account
6764         for different construct/destroy counts in C++98 mode.
6766         * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
6768         * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
6769         later.
6770         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
6771         Likewise.
6773         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
6774         C++98-compatible initialization for array.
6776         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
6777         unused header and variable from compile-only test.
6778         * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
6779         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
6780         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
6781         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
6782         Likewise.
6784         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
6785         Remove duplicate dg-options directive.
6787         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
6788         808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
6790         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
6791         linker options from compile-only tests.
6792         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
6793         Likewise.
6795         * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
6796         supported for C++11 and later.
6797         * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
6798         * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
6800 2016-08-01  Uros Bizjak  <ubizjak@gmail.com>
6802         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
6804 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
6806         * testsuite/20_util/conditional/requirements/typedefs.cc: Change to
6807         compile-only test.
6809         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
6810         Ensure test is compiled with optimization.
6812         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6813         Adjust dg-prune-output pattern for error in C++98 mode.
6815         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
6816         run for C++11 or later.
6818         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
6819         test to not rely on GNU extension (escaped normal characters in POSIX
6820         BRE). Enable tests for other strings which are now supported.
6822         * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
6823         c++11 instead of setting -std=gnu++14.
6825         PR libstdc++/72745
6826         * include/std/array (get): Use positive message for static assertions.
6827         * include/std/functional (_Safe_tuple_element_t): Fix indentation.
6828         * include/std/tuple (tuple_element<I, tuple<>>): Add partial
6829         specialization for invalid indices, with static assertion.
6830         * testsuite/20_util/tuple/element_access/get_neg.cc: New test.
6832         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
6833         dg-error to relevant line.
6834         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
6835         Likewise.
6836         * testsuite/23_containers/forward_list/requirements/dr438/
6837         assign_neg.cc: Likewise.
6838         * testsuite/23_containers/forward_list/requirements/dr438/
6839         constructor_1_neg.cc: Likewise.
6840         * testsuite/23_containers/forward_list/requirements/dr438/
6841         constructor_2_neg.cc: Likewise.
6842         * testsuite/23_containers/forward_list/requirements/dr438/
6843         insert_neg.cc: Likewise.
6844         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
6845         Likewise.
6846         * testsuite/26_numerics/random/linear_congruential_engine/
6847         requirements/non_uint_neg.cc: Likewise.
6848         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
6849         Likewise. Also test for std::atomic_address.
6851 2016-07-31  Ville Voutilainen  <ville.voutilainen@gmail.com>
6853         Add missing variable traits, fix testsuite failures.
6854         * include/bits/uses_allocator.h (uses_allocator_v): New.
6855         * include/std/functional (is_bind_expression_v, is_placeholder_v):
6856         Likewise.
6857         * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
6858         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
6859         * testsuite/20_util/duration/literals/range.cc: Likewise.
6860         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
6861         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
6862         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
6863         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
6864         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6865         Likewise.
6866         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
6867         * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
6868         New.
6870 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
6872         * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
6873         not test 128-bit types.
6874         * testsuite/20_util/is_floating_point/value.cc: Likewise.
6875         * testsuite/20_util/is_integral/value.cc: Likewise.
6876         * testsuite/20_util/is_signed/value.cc: Likewise.
6877         * testsuite/20_util/is_unsigned/value.cc: Likewise.
6878         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
6879         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
6880         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
6881         Likewise.
6882         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
6883         Likewise.
6885         * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
6887 2016-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
6889         Implement C++17 variable templates for type traits.
6890         * include/std/chrono (treat_as_floating_point_v): New.
6891         * include/std/ratio (ratio_equal_v, ratio_not_equal_v)
6892         (ratio_less_v, ratio_less_equal_v, ratio_greater_v)
6893         (ratio_greater_equal_v): Likewise.
6894         * include/std/system_error (is_error_code_enum_v)
6895         (is_error_condition_enum_v): Likewise.
6896         * include/std/tuple (tuple_size_v): Likewise.
6897         * type_traits (conjunction_v, disjunction_v, negation_v)
6898         (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
6899         (is_array_v, is_pointer_v, is_lvalue_reference_v)
6900         (is_rvalue_reference_v, is_member_object_pointer_v)
6901         (is_member_function_pointer_v, is_enum_v, is_union_v)
6902         (is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
6903         (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
6904         (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
6905         (is_trivially_copyable_v, is_standard_layout_v)
6906         (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
6907         (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
6908         (is_constructible_v, is_default_constructible_v)
6909         (is_copy_constructible_v, is_move_constructible_v)
6910         (is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
6911         (is_destructible_v, is_trivially_constructible_v)
6912         (is_trivially_default_constructible_v)
6913         (is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
6914         (is_trivially_assignable_v, is_trivially_copy_assignable_v)
6915         (is_trivially_move_assignable_v, is_trivially_destructible_v)
6916         (is_nothrow_constructible_v, is_nothrow_default_constructible_v)
6917         (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
6918         (is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
6919         (is_nothrow_move_assignable_v, is_nothrow_destructible_v)
6920         (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
6921         (is_same_v, is_base_of_v, is_convertible_v): Likewise.
6922         * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
6923         * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
6924         Likewise.
6925         * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
6926         * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
6927         * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
6929 2016-07-29  Andreas Schwab  <schwab@linux-m68k.org>
6931         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
6932         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
6933         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
6935 2016-07-29  Jonathan Wakely  <jwakely@redhat.com>
6937         * doc/xml/manual/abi.xml: Document 6.0.22 library version.
6938         * doc/html/manual/abi.html: Regenerate.
6940         * acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
6941         * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
6942         symbols.
6943         * configure: Regenerate.
6944         * testsuite/util/testsuite_abi.cc: Add new symbol version.
6946         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
6947         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
6948         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
6949         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
6950         Likewise.
6951         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
6952         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
6953         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
6955 2016-07-28  Jonathan Wakely  <jwakely@redhat.com>
6957         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
6958         Adjust dg-prune-output pattern for error in C++98 mode.
6959         * testsuite/23_containers/deque/requirements/dr438/
6960         constructor_1_neg.cc: Likewise.
6961         * testsuite/23_containers/deque/requirements/dr438/
6962         constructor_2_neg.cc: Likewise.
6963         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
6964         Likewise.
6965         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
6966         Likewise.
6967         * testsuite/23_containers/list/requirements/dr438/
6968         constructor_1_neg.cc: Likewise.
6969         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6970         Likewise.
6971         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
6972         Likewise.
6973         * testsuite/23_containers/vector/requirements/dr438/
6974         constructor_1_neg.cc: Likewise.
6975         * testsuite/23_containers/vector/requirements/dr438/
6976         constructor_2_neg.cc: Likewise.
6977         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
6978         Likewise.
6980         * testsuite/23_containers/vector/check_construct_destroy.cc: Account
6981         for different construct/destroy counts in C++98 mode.
6983         * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
6984         dg-options to dg-additional-options so that default options are used.
6985         * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
6986         Likewise.
6987         * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
6988         * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
6989         Likewise.
6990         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
6991         Use dg-additional-options instead of repeating the common options.
6993         * testsuite/22_locale/conversions/string/1.cc: Remove unintended
6994         dg-do compile directive.
6995         * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
6996         dg-do directive.
6997         * testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
6999 2016-07-28  Ville Voutilainen  <ville.voutilainen@gmail.com>
7001         Implement std::string_view and P0254r2,
7002         Integrating std::string_view and std::string.
7003         * include/Makefile.am: Add string_view and string_view.tcc
7004         to the exported headers.
7005         * include/Makefile.in: Likewise.
7006         * include/bits/basic_string.h: Include <string_view> in C++17 mode.
7007         (__sv_type): New.
7008         (basic_string(__sv_type, const _Alloc&)): Likewise.
7009         (operator=(__sv_type)): Likewise.
7010         (operator __sv_type()): Likewise.
7011         (operator+=(__sv_type)): Likewise.
7012         (append(__sv_type __sv)): Likewise.
7013         (append(__sv_type, size_type, size_type)): Likewise.
7014         (assign(__sv_type)): Likewise.
7015         (assign(__sv_type, size_type, size_type)): Likewise.
7016         (insert(size_type, __sv_type)): Likewise.
7017         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
7018         (replace(size_type, size_type, __sv_type)): Likewise.
7019         (replace(size_type, size_type, __sv_type, size_type, size_type)):
7020         Likewise.
7021         (replace(const_iterator, const_iterator, __sv_type)): Likewise.
7022         (find(__sv_type, size_type)): Likewise.
7023         (rfind(__sv_type, size_type)): Likewise.
7024         (find_first_of(__sv_type, size_type)): Likewise.
7025         (find_last_of(__sv_type, size_type)): Likewise.
7026         (find_first_not_of(__sv_type, size_type)): Likewise.
7027         (find_last_not_of(__sv_type, size_type)): Likewise.
7028         (compare(__sv_type)): Likewise.
7029         (compare(size_type, size_type, __sv_type)): Likewise.
7030         (compare(size_type, size_type, __sv_type, size_type, size_type)):
7031         Likewise.
7032         * include/bits/string_view.tcc: New.
7033         * include/std/string_view: Likewise.
7034         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
7035         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
7036         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
7037         Likewise.
7038         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
7039         Likewise.
7040         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
7041         Likewise.
7042         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
7043         Likewise.
7044         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
7045         Likewise.
7046         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
7047         Likewise.
7048         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7049         Likewise.
7050         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
7051         Likewise.
7052         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
7053         Likewise.
7054         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
7055         Likewise.
7056         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
7057         Likewise.
7058         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
7059         Likewise.
7060         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
7061         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
7062         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
7063         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
7064         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
7065         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
7066         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
7067         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
7068         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
7069         * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
7070         Likewise.
7071         * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
7072         Likewise.
7073         * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
7074         Likewise.
7075         * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
7076         Likewise.
7077         * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
7078         Likewise.
7079         * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
7080         Likewise.
7081         * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
7082         Likewise.
7083         * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
7084         Likewise.
7085         * testsuite/21_strings/basic_string_view/include.cc: Likewise.
7086         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
7087         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
7088         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
7089         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
7090         Likewise.
7091         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
7092         Likewise.
7093         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
7094         Likewise.
7095         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
7096         Likewise.
7097         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
7098         Likewise.
7099         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
7100         Likewise.
7101         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
7102         Likewise.
7103         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
7104         Likewise.
7105         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
7106         Likewise.
7107         * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
7108         Likewise.
7109         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
7110         Likewise.
7111         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
7112         Likewise.
7113         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
7114         Likewise.
7115         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
7116         Likewise.
7117         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
7118         Likewise.
7119         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
7120         Likewise.
7121         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
7122         Likewise.
7123         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
7124         Likewise.
7125         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
7126         Likewise.
7127         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
7128         Likewise.
7129         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
7130         Likewise.
7131         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
7132         Likewise.
7133         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
7134         Likewise.
7135         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
7136         Likewise.
7137         * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
7138         Likewise.
7139         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
7140         Likewise.
7141         * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
7142         Likewise.
7143         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
7144         Likewise.
7145         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
7146         Likewise.
7147         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
7148         Likewise.
7149         * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
7150         Likewise.
7151         * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
7152         Likewise.
7153         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
7154         Likewise.
7155         * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
7156         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
7157         Likewise.
7158         * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
7159         Likewise.
7160         * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
7161         Likewise.
7162         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
7163         Likewise.
7164         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
7165         Likewise.
7166         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
7167         Likewise.
7168         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
7169         Likewise.
7170         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
7171         Likewise.
7172         * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
7173         Likewise.
7174         * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
7175         * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
7177 2016-07-27  Jonathan Wakely  <jwakely@redhat.com>
7179         * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
7181 2016-07-25  Georeth Chow  <georeth2010@gmail.com>
7183         * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
7184         _S_concat enumerator.
7185         * testsuite/ext/rope/6.cc: New test.
7187 2016-07-25  Jonathan Wakely  <jwakely@redhat.com>
7189         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
7190         std::mt19937, std::thread and std::atomic to simplify test.
7191         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
7193 2016-07-22  Jonathan Wakely  <jwakely@redhat.com>
7195         PR libstdc++/71964
7196         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
7197         (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
7198         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
7199         * testsuite/21_strings/basic_string/allocator/71964.cc: New test.
7200         * testsuite/23_containers/set/allocator/71964.cc: New test.
7202         * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
7203         delete[] instead of delete.
7205 2016-07-21  Jonathan Wakely  <jwakely@redhat.com>
7207         * include/experimental/propagate_const (propagate_const::__t): Rename
7208         to _M_t and remove comment. Qualify std::move and std::forward.
7209         * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
7211         * testsuite/23_containers/vector/zero_sized_allocations.cc:
7212         Define sized deallocation function.
7213         * testsuite/util/testsuite_new_operators.h:
7214         (operator delete(void*, const std::nothrow_t&)): Define nothrow
7215         deallocation function.
7217         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
7218         reads past the end of strings.
7219         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
7220         Likewise.
7221         * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
7222         invalid array accesses.
7223         * testsuite/experimental/string_view/operations/compare/char/1.cc:
7224         Fix read past the end of string.
7225         * testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
7227         * testsuite/24_iterators/container_access.cc: Fix missing returns.
7228         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
7230         * testsuite/18_support/new_delete_placement.cc: Don't allocate (and
7231         leak) memory for arguments to placement delete.
7232         * testsuite/20_util/addressof/1.cc: Don't leak memory.
7233         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
7234         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
7235         Likewise.
7237 2016-07-20  Jonathan Wakely  <jwakely@redhat.com>
7239         * doc/xml/manual/intro.xml: Document DR 2684 status.
7240         * doc/html/*: Regenerate.
7242         * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
7243         (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
7244         (atomic_uint64_t): Define (LWG 2441).
7245         * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
7246         lines.
7247         * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
7248         the new types.
7249         * doc/xml/manual/intro.xml: Document DR 2441 status.
7251         * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
7252         to use perfect forwarding (LWG 2328).
7253         * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
7254         * doc/xml/manual/intro.xml: Document DR 2328 status.
7256         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
7257         static objects for catching nullptr as pointer to member types.
7259 2016-07-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
7261         Clean up optional's comments.
7262         * include/std/optional: Remove incorrect section headers
7263         from comments when redundant, replace bare section
7264         headers with more descriptive comments.
7266 2016-07-15  Jonathan Wakely  <jwakely@redhat.com>
7268         * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
7269         * include/bits/move.h: Likewise.
7270         * include/bits/postypes.h: Likewise.
7271         * include/debug/bitset: Likewise.
7272         * include/ext/pb_ds/detail/type_utils.hpp: Likewise.
7273         * include/ext/string_conversions.h: Change C++0x to __cxx11 in
7274         comment.
7275         * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
7276         * testsuite/util/thread/all.h: Likewise.
7278         * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
7279         and adjust comment.
7281         PR c++/58796
7282         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
7283         nullptr match handlers of pointer type.
7285 2016-07-15  Edward Smith-Rowland  <3dw4rd@verizon.net>
7287         Implement C++17 P0025 clamp.
7288         * include/bits/algorithmfwd.h: Declare clamp overloads.
7289         * include/bits/stl_algo.h: Implement clamp.  Feature __cpp_lib_clamp.
7290         * testsuite/25_algorithms/clamp/1.cc: New test.
7291         * testsuite/25_algorithms/clamp/2.cc: New test.
7292         * testsuite/25_algorithms/clamp/constexpr.cc: New test.
7293         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
7294         1.cc: New test.
7295         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
7296         pod.cc: New test.
7298 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
7300         Fix the constraints for any's assignment operator template to properly
7301         reject assignment from a non-copyable lvalue.
7302         * include/std/any (operator=(_ValueType&&)): Constrain the decayed
7303         type for is_copy_constructible,
7304         * testsuite/20_util/any/requirements.cc: Add a test for
7305         non-copyable lvalues.
7307 2016-07-14  Jonathan Wakely  <jwakely@redhat.com>
7309         * include/experimental/functional: Include <parallel/algorithm> in
7310         Parallel Mode.
7312         * testsuite/experimental/functional/searchers.cc: Include <algorithm>
7313         for std::search.
7315         PR libstdc++/70716
7316         * include/bits/forward_list.h (forward_list): Update doxygen comments
7317         to reflect allocator propagation semantics. Remove ambiguous
7318         statements about data being lost.
7319         * include/bits/stl_deque.h (deque): Likewise.
7320         * include/bits/stl_list.h (list): Likewise.
7321         * include/bits/stl_map.h (map): Likewise.
7322         * include/bits/stl_multimap.h (multimap): Likewise.
7323         * include/bits/stl_multiset.h (multiset): Likewise.
7324         * include/bits/stl_set.h (set): Likewise.
7325         * include/bits/stl_vector.h (vector): Likewise.
7326         * include/bits/unordered_map.h (unordered_map, unordered_multimap):
7327         Likewise.
7328         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
7329         Likewise.
7331 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
7333         Implement P0032R3, Homogeneous interface for variant, any and optional,
7334         for the parts concerning any and optional.
7335         * include/std/any (_Storage()): Make constexpr and have it
7336         initialize _M_ptr.
7337         (any()): Make constexpr.
7338         (any(const any&)): Adjust.
7339         (any(any&&)): Likewise.
7340         (__any_constructible_t): New.
7341         (any(_ValueType&&)): Constrain.
7342         (any(in_place_type_t<_Tp>, _Args&&...)): New.
7343         (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
7344         Likewise.
7345         (~any()): Adjust.
7346         (operator=(const any&)): Likewise.
7347         (operator=(any&&)): Likewise.
7348         (operator=(_ValueType&&)): Constrain.
7349         (emplace(_Args&&...)): New.
7350         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
7351         (clear()): Remove.
7352         (reset()): New.
7353         (swap(any&)): Adjust.
7354         (empty()): Remove.
7355         (has_value()): New.
7356         (type()): Adjust.
7357         (_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
7358         (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
7359         (make_any(_Args&&...)): Likewise.
7360         (make_any(initializer_list<_Up>, _Args&&...)): Likewise.
7361         * include/std/optional (in_place_t, in_place): Remove.
7362         (bad_optional_access): Add a comment referring to LEWG 72.
7363         (emplace(_Args&&...)): Constrain.
7364         (has_value()): New.
7365         (reset()): Likewise.
7366         (make_optional(_Args&&...)): Likewise.
7367         (make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
7368         * include/std/utility (in_place_tag): New.
7369         (__in_place, __in_place_type, __in_place_index): Likewise.
7370         (in_place_t, in_place_type_t, in_place_index_t): Likewise.
7371         (in_place(__in_place*)): Likewise.
7372         (in_place(__in_place_type<_Tp>*)): Likewise.
7373         (in_place(__in_place_index<_Idx>*)): Likewise.
7374         * testsuite/20_util/any/assign/1.cc: Adjust.
7375         * testsuite/20_util/any/assign/emplace.cc: New.
7376         * testsuite/20_util/any/assign/self.cc: Adjust.
7377         * testsuite/20_util/any/cons/1.cc: Likewise.
7378         * testsuite/20_util/any/cons/in_place.cc: New.
7379         * testsuite/20_util/any/make_any.cc: Likewise.
7380         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
7381         * testsuite/20_util/any/misc/swap.cc: Likewise.
7382         * testsuite/20_util/any/modifiers/1.cc: Likewise.
7383         * testsuite/20_util/any/requirements.cc: New.
7384         * testsuite/20_util/in_place/requirements.cc: Likewise.
7385         * testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
7386         * testsuite/20_util/optional/in_place.cc: Likewise.
7387         * testsuite/20_util/optional/make_optional.cc: Add tests for
7388         the new overloads of make_optional.
7390 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
7392         Implement P0307R2, Making Optional Greater Equal Again.
7393         * include/experimental/optional (_Has_addressof): Fix the comment.
7394         * include/std/optional (_Has_addressof): Likewise.
7395         (operator=(_Up&&)): Constrain.
7396         (operator=(const optional<_Up>&)): Likewise.
7397         (operator=(optional<_Up>&&)): Likewise.
7398         (__optional_relop_t): New.
7399         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7400         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
7401         Constrain and make transparent.
7402         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7403         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
7404         Constrain and make transparent.
7405         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7406         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7407         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
7408         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
7409         (operator!=(const optional<_Tp>&, _Tp const&)):
7410         Constrain and make transparent.
7411         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
7412         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
7413         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
7414         (operator>(const optional<_Tp>&, const _Tp&)):
7415         Constrain and make transparent.
7416         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
7417         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
7418         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
7419         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
7420         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
7421         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
7422         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7423         * testsuite/20_util/optional/relops/1.cc: Likewise.
7424         * testsuite/20_util/optional/relops/2.cc: Likewise.
7425         * testsuite/20_util/optional/relops/3.cc: Likewise.
7426         * testsuite/20_util/optional/relops/4.cc: Likewise.
7427         * testsuite/20_util/optional/requirements.cc: Add tests to verify
7428         that optional's relops are transparent and don't synthesize
7429         operators. Also test that assignment sfinaes.
7431 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7433         PR libstdc++/71856
7434         * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
7435         * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
7436         Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
7437         on _GLIBCXX_ASSERTIONS.
7438         * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
7439         Include <unistd.h> for sleep.
7440         * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
7441         * include/parallel/merge.h: Likewise.
7442         * include/parallel/multiway_merge.h: Likewise.
7443         * include/parallel/partition.h: Likewise.
7444         * include/parallel/queue.h: Likewise.
7445         * include/parallel/sort.h: Likewise.
7446         * testsuite/25_algorithms/headers/algorithm/
7447         parallel_algorithm_assert.cc: New.
7449         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
7450         (replace(__const_iterator, __const_iterator, initializer_list<C>)):
7451         Forward to different overload.
7453         * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
7454         static.
7456 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7458         Revert "Add non-const overload of std::string::data()".
7460 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
7462         Implement P0307R2, Making Optional Greater Equal Again.
7463         * include/experimental/optional (_Has_addressof): Fix the comment.
7464         * include/std/optional (_Has_addressof): Likewise.
7465         (operator=(_Up&&)): Constrain.
7466         (operator=(const optional<_Up>&)): Likewise.
7467         (operator=(optional<_Up>&&)): Likewise.
7468         (__optional_relop_t): New.
7469         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7470         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
7471         Constrain and make transparent.
7472         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7473         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
7474         Constrain and make transparent.
7475         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7476         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7477         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
7478         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
7479         (operator!=(const optional<_Tp>&, _Tp const&)):
7480         Constrain and make transparent.
7481         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
7482         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
7483         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
7484         (operator>(const optional<_Tp>&, const _Tp&)):
7485         Constrain and make transparent.
7486         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
7487         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
7488         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
7489         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
7490         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
7491         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
7492         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7493         * testsuite/20_util/optional/relops/1.cc: Likewise.
7494         * testsuite/20_util/optional/relops/2.cc: Likewise.
7495         * testsuite/20_util/optional/relops/3.cc: Likewise.
7496         * testsuite/20_util/optional/relops/4.cc: Likewise.
7497         * testsuite/20_util/optional/requirements.cc: Add tests to verify
7498         that optional's relops are transparent and don't synthesize
7499         operators. Also test that assignment sfinaes.
7501 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7503         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
7504         New function.
7505         (_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
7506         instead of _M_data().
7507         (basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
7508         Likewise.
7509         (append(const basic_string&)): Likewise.
7510         (append(const basic_string&, size_type, size_type)): Likewise.
7511         (assign(const basic_string&, size_type, size_type)): Likewise.
7512         (insert(size_type, const basic_string&)): Likewise.
7513         (insert(size_type, const basic_string&, size_type, size_type)):
7514         Likewise.
7515         (replace(size_type, size_type, const basic_string&, size_type,
7516         size_type)): Likewise.
7517         (replace(__const_iterator, __const_iterator, const basic_string&)):
7518         Likewise.
7519         (c_str(), data()): Use c_str() instead of _M_data().
7520         (data()): Add non-const overload as per LWG 2391 and P0272R1.
7521         (compare(const basic_string&)): Use data() instead of _M_data().
7522         [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
7523         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
7524         Pass raw pointers to _S_copy.
7525         (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
7526         _S_assign.
7527         (find(const _CharT*, size_type, size_type)): Use data instead of
7528         _M_data().
7529         * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
7530         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
7531         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
7533 2016-07-12  Jonathan Wakely  <jwakely@redhat.com>
7535         * libsupc++/new: Remove nothrow sized deletes (LWG 2458).
7536         * doc/xml/manual/intro.xml: Document DR 2458 status.
7537         * doc/html*: Regenerate.
7539         * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
7540         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
7541         Only include <array>.
7542         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
7543         Likewise.
7544         * doc/xml/manual/intro.xml: Document LWG 2212 support.
7545         * doc/html*: Regenerate.
7547         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
7548         Add testcase from LWG 2164.
7550 2016-07-11  François Dumont  <fdumont@gcc.gnu.org>
7552         * include/bits/stl_vector.h (push_back(const value_type&)): Forward
7553         to _M_realloc_insert.
7554         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
7555         (_M_realloc_insert): Declare new function.
7556         (_M_emplace_back_aux): Remove definition.
7557         * include/bits/vector.tcc (emplace_back(_Args...)):
7558         Use _M_realloc_insert.
7559         (insert(const_iterator, const value_type&)): Likewise.
7560         (_M_insert_rval, _M_emplace_aux): Likewise.
7561         (_M_emplace_back_aux): Remove declaration.
7562         (_M_realloc_insert): Define.
7563         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
7564         Adjust expected results for emplacing an lvalue with reallocation.
7566 2016-07-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
7568         Implement std::optional.
7569         * include/Makefile.am: Add optional to exported headers.
7570         * include/Makefile.in: Likewise.
7571         * include/std/optional: New.
7572         * testsuite/20_util/optional/typedefs.cc: Likewise.
7573         * testsuite/20_util/optional/relops/2.cc: Likewise.
7574         * testsuite/20_util/optional/relops/3.cc: Likewise.
7575         * testsuite/20_util/optional/relops/4.cc: Likewise.
7576         * testsuite/20_util/optional/relops/5.cc: Likewise.
7577         * testsuite/20_util/optional/relops/1.cc: Likewise.
7578         * testsuite/20_util/optional/relops/6.cc: Likewise.
7579         * testsuite/20_util/optional/nullopt.cc: Likewise.
7580         * testsuite/20_util/optional/in_place.cc: Likewise.
7581         * testsuite/20_util/optional/make_optional.cc: Likewise.
7582         * testsuite/20_util/optional/assignment/2.cc: Likewise.
7583         * testsuite/20_util/optional/assignment/3.cc: Likewise.
7584         * testsuite/20_util/optional/assignment/4.cc: Likewise.
7585         * testsuite/20_util/optional/assignment/5.cc: Likewise.
7586         * testsuite/20_util/optional/assignment/1.cc: Likewise.
7587         * testsuite/20_util/optional/assignment/6.cc: Likewise.
7588         * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
7589         * testsuite/20_util/optional/cons/default.cc: Likewise.
7590         * testsuite/20_util/optional/cons/move.cc: Likewise.
7591         * testsuite/20_util/optional/cons/value.cc: Likewise.
7592         * testsuite/20_util/optional/cons/copy.cc: Likewise.
7593         * testsuite/20_util/optional/requirements.cc: Likewise.
7594         * testsuite/20_util/optional/observers/2.cc: Likewise.
7595         * testsuite/20_util/optional/observers/3.cc: Likewise.
7596         * testsuite/20_util/optional/observers/4.cc: Likewise.
7597         * testsuite/20_util/optional/observers/5.cc: Likewise.
7598         * testsuite/20_util/optional/observers/1.cc: Likewise.
7599         * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
7600         * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
7601         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7602         * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
7603         * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
7604         * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
7605         * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
7606         * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
7607         * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
7608         * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
7609         * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
7610         * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
7611         * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
7612         * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
7613         * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
7614         * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
7615         * testsuite/20_util/optional/swap/1.cc: Likewise.
7617 2016-07-08  Jonathan Wakely  <jwakely@redhat.com>
7619         * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
7621 2016-07-07  Jonathan Wakely  <jwakely@redhat.com>
7623         * doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
7624         * doc/html/*: Regenerate.
7626 2016-07-07  Ville Voutilainen  <ville.voutilainen@gmail.com>
7628         Implement std::any.
7629         * include/Makefile.am: Add any and c++17_warning.h to exported headers.
7630         * include/Makefile.in: Likewise.
7631         * include/std/any: New.
7632         * testsuite/20_util/any/assign/1.cc: Likewise.
7633         * testsuite/20_util/any/assign/2.cc: Likewise.
7634         * testsuite/20_util/any/assign/self.cc: Likewise.
7635         * testsuite/20_util/any/cons/1.cc: Likewise.
7636         * testsuite/20_util/any/cons/2.cc: Likewise.
7637         * testsuite/20_util/any/cons/aligned.cc: Likewise.
7638         * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
7639         * testsuite/20_util/any/misc/any_cast.cc: Likewise.
7640         * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
7641         * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
7642         * testsuite/20_util/any/misc/swap.cc: Likewise.
7643         * testsuite/20_util/any/modifiers/1.cc: Likewise.
7644         * testsuite/20_util/any/observers/type.cc: Likewise.
7645         * testsuite/20_util/any/typedefs.cc: Likewise.
7647 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7649         Add a new header for diagnosing the use of C++17 facilities
7650         in pre-C++17 modes.
7651         * include/bits/c++17_warning.h: New.
7653 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7655         Implement LWG 2451, optional<T> should 'forward' T's
7656         implicit conversions.
7657         * include/experimental/optional (__is_optional_impl, __is_optional):
7658         New.
7659         (optional()): Make constexpr and default.
7660         (optional(_Up&&), optional(const optional<_Up>&),
7661         optional(optional<_Up>&& __t): New.
7662         (operator=(_Up&&)): Constrain.
7663         (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
7664         * testsuite/experimental/optional/cons/value.cc:
7665         Add tests for the functionality added by LWG 2451.
7666         * testsuite/experimental/optional/cons/value_neg.cc: New.
7668 2016-07-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
7670         Implement LWG 2509,
7671         any_cast doesn't work with rvalue reference targets and cannot
7672         move with a value target.
7673         * include/experimental/any (any(_ValueType&&)): Constrain and
7674         add an overload that doesn't forward.
7675         (any_cast(any&&)): Constrain and add an overload that moves.
7676         * testsuite/experimental/any/misc/any_cast.cc: Add tests for
7677         the functionality added by LWG 2509.
7679 2016-07-04  François Dumont  <fdumont@gcc.gnu.org>
7681         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
7682         New test.
7683         * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
7684         test.
7686 2016-07-04  Jonathan Wakely  <jwakely@redhat.com>
7688         * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
7689         Define inline. Forward to _M_emplace_aux.
7690         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
7691         (_M_insert_rval, _M_emplace_aux): Declare new functions.
7692         (_Temporary_value): New RAII type using allocator to construct/destroy.
7693         (_S_insert_aux_assign): Remove.
7694         (_M_insert_aux): Make non-variadic.
7695         * include/bits/vector.tcc (insert(const_iterator, const value_type&)):
7696         Use _Temporary_value.
7697         (emplace(const_iterator, _Args&&...)): Remove definition.
7698         (_M_insert_rval, _M_emplace_aux): Define.
7699         (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
7700         (_M_fill_insert): Use _Temporary_value.
7701         * testsuite/23_containers/vector/allocator/construction.cc: New test.
7702         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
7703         Adjust expected results for emplacing an lvalue with reallocation.
7704         * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
7705         expected results to account for construction/destruction of temporary
7706         using allocator.
7707         * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
7709 2016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
7711         PR libstdc++/71313
7712         * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
7713         Call remove_all for children of a directory.
7714         * testsuite/experimental/filesystem/operations/create_directories.cc:
7715         Adjust.
7717 2016-07-02  François Dumont  <fdumont@gcc.gnu.org>
7719         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
7720         dg-error line numbers.
7721         * testsuite/23_containers/array/tuple_interface/
7722         tuple_element_debug_neg.cc: Likewise.
7723         * testsuite/25_algorithms/lexicographical_compare/debug/
7724         irreflexive_neg.cc: Remove.
7726 2016-06-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
7728         * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
7729         than specific target.
7731 2016-06-27  François Dumont  <fdumont@gcc.gnu.org>
7733         PR libstdc++/71640
7734         * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
7735         friend declaration.
7737 2016-06-23  François Dumont  <fdumont@gcc.gnu.org>
7739         * include/debug/array (array<>::swap): Fix noexcept qualificaton for
7740         zero-size array.
7742 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
7744         * configure.host: Remove mep-* support.
7746 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
7748         * configure: Regenerate.
7749         * configure.host: Remove support for knetbsd.
7750         * crossconfig.m4: Likewise.
7752 2016-06-20  François Dumont  <fdumont@gcc.gnu.org>
7754         PR libstdc++/71181
7755         * include/tr1/hashtable_policy.h
7756         (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
7757         dereferenceable to avoid check on lower_bound result.
7758         (_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
7759         (_Prime_rehash_policy::_M_need_rehash): Likewise.
7760         * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
7761         Always return a value greater than input value. Set _M_next_resize to
7762         max value when reaching highest prime number.
7763         * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
7764         being now useless.
7765         * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
7766         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
7767         (test02): New.
7768         * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
7769         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
7770         Fix indentation.
7772 2016-06-17  Jonathan Wakely  <jwakely@redhat.com>
7774         PR libstdc++/71545
7775         * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
7776         Remove irreflexive checks.
7777         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
7778         binary_search): Likewise.
7779         * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
7780         * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
7781         * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
7782         * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
7783         * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
7784         Add constructor from array.
7786 2016-06-16  François Dumont  <fdumont@gcc.gnu.org>
7788         * include/debug/debug.h
7789         (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
7790         (__glibcxx_requires_subscript): Move...
7791         * include/debug/assertions.h: ...here and add __builtin_expect.
7792         (_GLIBCXX_DEBUG_ONLY): Remove ; value.
7793         * include/bits/stl_deque.h
7794         (std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
7795         (std::deque<>::front()): Add __glibcxx_requires_nonempty check.
7796         (std::deque<>::back()): Likewise.
7797         (std::deque<>::pop_front()): Likewise.
7798         (std::deque<>::pop_back()): Likewise.
7799         (std::deque<>::swap(deque&)): Add allocator check.
7800         * include/bits/stl_vector.h
7801         (std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
7802         (std::vector<>::front()): Add __glibcxx_requires_nonempty check.
7803         (std::vector<>::back()): Likewise.
7804         (std::vector<>::pop_back()): Likewise.
7805         (std::vector<>::swap(vector&)): Add allocator check.
7807 2016-06-16  Daniel Kruegler  <daniel.kruegler@gmail.com>
7809         Provide swappable traits (p0185r1)
7810         * include/std/type_traits (is_swappable, is_nothrow_swappable,
7811         is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
7812         is_nothrow_swappable_v, is_swappable_with_v,
7813         is_nothrow_swappable_with_v): New.
7814         * include/bits/stl_pair.h: Use it as per p0185r1.
7815         * include/bits/stl_queue.h: Likewise.
7816         * include/bits/stl_stack.h: Likewise.
7817         * include/bits/unique_ptr.h: Likewise.
7818         * include/std/tuple: Likewise.
7819         * include/std/array: Likewise. Fix zero-size member swap.
7820         * include/bits/hashtable.h: Use __and_.
7821         * testsuite/20_util/is_nothrow_swappable/requirements/
7822         explicit_instantiation.cc: Change test options to std=gnu++17.
7823         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
7824         Likewise.
7825         * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
7826         * testsuite/20_util/is_swappable/requirements/
7827         explicit_instantiation.cc: Likewise.
7828         * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
7829         * testsuite/20_util/is_swappable/value.cc: Likewise.
7830         * testsuite/20_util/is_nothrow_swappable/requirements/
7831         explicit_instantiation_ext.cc: New.
7832         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
7833         New.
7834         * testsuite/20_util/is_nothrow_swappable/value.h: New.
7835         * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
7836         * testsuite/20_util/is_nothrow_swappable_with/requirements/
7837         explicit_instantiation.cc: New.
7838         * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
7839         New.
7840         * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
7841         * testsuite/20_util/is_swappable/requirements/
7842         explicit_instantiation_ext.cc: New.
7843         * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
7844         * testsuite/20_util/is_swappable/value.h: New.
7845         * testsuite/20_util/is_swappable/value_ext.cc: New.
7846         * testsuite/20_util/is_swappable_with/requirements/
7847         explicit_instantiation.cc: New.
7848         * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
7849         * testsuite/20_util/is_swappable_with/value.cc: New.
7850         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
7851         dg-error line numbers.
7852         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
7853         Likewise.
7855 2016-06-16  Jonathan Wakely  <jwakely@redhat.com>
7857         * include/std/array: Remove trailing whitespace.
7858         * include/std/atomic: Likewise.
7859         * include/std/bitset: Likewise.
7860         * include/std/chrono: Likewise.
7861         * include/std/complex: Likewise.
7862         * include/std/condition_variable: Likewise.
7863         * include/std/fstream: Likewise.
7864         * include/std/functional: Likewise.
7865         * include/std/future: Likewise.
7866         * include/std/iomanip: Likewise.
7867         * include/std/iosfwd: Likewise.
7868         * include/std/istream: Likewise.
7869         * include/std/limits: Likewise.
7870         * include/std/ratio: Likewise.
7871         * include/std/scoped_allocator: Likewise.
7872         * include/std/sstream: Likewise.
7873         * include/std/stdexcept: Likewise.
7874         * include/std/string: Likewise.
7875         * include/std/system_error: Likewise.
7876         * include/std/thread: Likewise.
7877         * include/std/tuple: Likewise.
7878         * include/std/type_traits: Likewise.
7879         * include/std/utility: Likewise.
7880         * include/std/valarray: Likewise.
7881         * include/std/vector: Likewise.
7883         * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
7884         new overloaded functions.
7885         * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
7886         to avoid creating a redundant temporary.
7887         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
7888         test.
7890 2016-06-15  François Dumont  <fdumont@gcc.gnu.org>
7892         * include/bits/stl_deque.h
7893         (std::deque<>::operator=): Call _M_assign_aux.
7894         (std::deque<>::assign(initializer_list<>)): Likewise.
7895         (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
7896         (std::deque<>::insert(const_iterator, initializer_list<>)):
7897         Call _M_range_insert_aux.
7898         (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
7899         Likewise.
7900         (std::deque<>::_M_fill_assign): Call _M_fill_insert.
7901         (std::deque<>::_M_move_assign2): Call _M_assign_aux.
7902         * include/bits/deque.tcc
7903         (std::deque<>::operator=): Call _M_range_insert_aux.
7904         (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
7905         Likewise.
7906         * include/bits/stl_vector.h
7907         (std::vector<>::operator=): Call _M_assign_aux.
7908         (std::vector<>::assign(initializer_list<>)): Likewise.
7909         (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
7910         (std::vector<>::insert(const_iterator, initializer_list<>)):
7911         Call _M_range_insert.
7912         * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
7914 2016-06-07  François Dumont  <fdumont@gcc.gnu.org>
7916         * include/std/tuple (_Head_base<>): Default specialization condition at
7917         type declaration.
7919 2016-06-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7921         Support allocators in tuples of zero size.
7922         * include/std/tuple (tuple<>::tuple(),
7923         tuple<>::tuple(allocator_arg_t, const _Alloc&),
7924         tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
7925         * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
7927 2016-06-06  Jonathan Wakely  <jwakely@redhat.com>
7929         PR libstdc++/71320
7930         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
7931         Add or remove permissions according to perms argument.
7932         * testsuite/experimental/filesystem/operations/permissions.cc: New
7933         test.
7935 2016-06-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
7937         Protect allocator-overloads of tuple-from-tuple constructors
7938         from cases that would create dangling references.
7939         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7940         const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
7941         tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
7942         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
7944 2016-05-29  Gerald Pfeifer  <gerald@pfeifer.com>
7946         * doc/xml/manual/backwards_compatibility.xml: Adjust
7947         lists.debian.org link to https.
7948         * doc/html/manual/backwards.html: Regenerate.
7950 2016-05-27  Jonathan Wakely  <jwakely@redhat.com>
7952         * doc/xml/manual/abi.xml: Adjust URL to use https.
7953         * doc/html/manual/*: Regenerate.
7955 2016-05-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
7957         PR libstdc++/66338
7958         * include/std/tuple (_TMC): Add a check for _NotSameTuple.
7959         * include/std/tuple (tuple(_UElements&&...)): Remove the separate
7960         check for _NotSameTuple.
7961         * include/std/tuple (_TMCT): New.
7962         * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
7963         * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
7964         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7965               const tuple<_UElements...>&)): Likewise.
7966         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7967               tuple<_UElements...>&&)): Likewise.
7968         * testsuite/20_util/tuple/cons/66338.cc: New.
7970 2016-05-25  Jonathan Wakely  <jwakely@redhat.com>
7972         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
7973         * configure: Regenerate.
7974         * config.h.in: Regenerate.
7976         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
7977         * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
7978         Remove const qualification on function. Replace
7979         _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
7980         (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
7981         (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
7983 2016-05-24  François Dumont  <fdumont@gcc.gnu.org>
7985         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
7986         * include/bits/hashtable_policy.h
7987         (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
7988         having load factor management.
7989         (_Mask_range_hashing): New.
7990         (__clp2): New.
7991         (_Power2_rehash_policy): New.
7992         (_Inserts<>): Remove last template parameter, _Unique_keys, so that
7993         partial specializations only depend on whether iterators are constant
7994         or not.
7995         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
7996         test new hash policy.
7997         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
7998         Likewise.
7999         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8000         Likewise.
8001         * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
8002         Likewise.
8003         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
8004         Likewise.
8005         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
8006         New.
8007         * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
8008         using the new hash policy.
8009         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
8011 2016-05-24  Jonathan Wakely  <jwakely@redhat.com>
8013         * include/bits/stl_queue.h (priority_queue::value_compare): Define.
8015 2016-05-23  François Dumont  <fdumont@gcc.gnu.org>
8017         * include/debug/safe_iterator.h
8018         (_Safe_iterator<>::operator->()): Implement using underlying iterator
8019         operator ->.
8020         * include/debug/safe_local_iterator.h
8021         (_Safe_local_iterator<>::operator->()): Likewise.
8023 2016-05-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
8025         * testsuite/experimental/memory_resource/1.cc: Add required argument
8026         to dg-require-atomic-builtins.
8028 2016-05-13  Jonathan Wakely  <jwakely@redhat.com>
8030         PR libstdc++/71073
8031         * include/debug/bitset: Add #pragma GCC system_header.
8032         * include/debug/deque: Likewise.
8033         * include/debug/list: Likewise.
8034         * include/debug/map: Likewise.
8035         * include/debug/set: Likewise.
8036         * include/debug/string: Likewise.
8037         * include/debug/unordered_map: Likewise.
8038         * include/debug/unordered_set: Likewise.
8039         * include/debug/vector: Likewise.
8040         * include/debug/functions.h: Adjust whitespace.
8042 2016-05-12  Jonathan Wakely  <jwakely@redhat.com>
8044         PR libstdc++/71081
8045         * testsuite/experimental/memory_resource/1.cc: Require atomics.
8047 2016-05-11  Jonathan Wakely  <jwakely@redhat.com>
8049         PR libstdc++/71049
8050         * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
8051         exception constructors with __sso_string parameters.
8053 2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
8055         * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
8056         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
8057         Test begin and end functions.
8058         * testsuite/experimental/filesystem/iterators/
8059         recursive_directory_iterator.cc: Likewise.
8061         PR libstdc++/71038
8062         * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
8063         * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
8065         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
8066         Overload operator* to move from rvalues.
8068         PR libstdc++/71036
8069         * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
8070         * testsuite/experimental/filesystem/operations/create_directory.cc:
8071         New test.
8073         PR libstdc++/71037
8074         * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
8075         base path to exception.
8076         * testsuite/experimental/filesystem/operations/canonical.cc: Test
8077         paths contained in exception.
8079         * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
8080         using declaration.
8082         PR libstdc++/71005
8083         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
8084         New type.
8085         (directory_iterator::operator++(int)): Return proxy.
8086         (recursive_directory_iterator::operator++(int)): Likewise.
8087         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
8088         Test post-increment.
8089         * testsuite/experimental/filesystem/iterators/
8090         recursive_directory_iterator.cc: Likewise.
8092 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
8094         PR libstdc++/71004
8095         * testsuite/experimental/filesystem/iterators/
8096         recursive_directory_iterator.cc: Fix test02 to not call member
8097         functions on invalid iterator, and use VERIFY not assert.
8099 2016-05-09  Ville Voutilainen  <ville.voutilainen@gmail.com>
8101         Avoid endless run-time recursion for copying single-element
8102         tuples where the element type is by-value constructible
8103         from any type.
8104         * include/std/tuple (_NotSameTuple): New.
8105         * include/std/tuple (tuple(_UElements&&...): Use it.
8106         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
8108 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
8110         PR libstdc++/71004
8111         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
8112         Initialize scalar member variables in default constructor.
8113         * testsuite/experimental/filesystem/iterators/
8114         recursive_directory_iterator.cc: Test default construction.
8116 2016-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8118         * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
8120 2016-05-05  Jonathan Wakely  <jwakely@redhat.com>
8122         * testsuite/experimental/filesystem/path/native/string.cc: Add
8123         dg-require-filesystem-ts directive.
8125 2016-05-04  Jonathan Wakely  <jwakely@redhat.com>
8127         PR libstdc++/70940
8128         * include/experimental/memory_resource
8129         (__resource_adaptor_imp::do_allocate): Do not default-construct
8130         rebound allocator.
8131         (__resource_adaptor_imp::do_deallocate): Likewise. Use
8132         allocator_traits to get pointer type.
8133         (__null_memory_resource::do_allocate): Remove unused parameters.
8134         (__null_memory_resource::do_deallocate): Likewise.
8135         (__null_memory_resource::do_is_equal): Likewise. Add return statement.
8136         * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
8137         * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
8138         move to ...
8139         * testsuite/experimental/memory_resource/1.cc: Here.
8140         * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
8141         * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
8143 2016-04-29  Chris Gregory  <czipperz@gmail.com>
8145         * config/*: Remove trailing whitespace.
8146         * src/*: Likewise.
8147         * testsuite/tr1/*: Likewise.
8148         * testsuite/util/*: Likewise.
8150 2016-04-28  Jonathan Wakely  <jwakely@redhat.com>
8152         PR libstdc++/70766
8153         * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
8154         __addressof.
8155         * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
8156         Likewise.
8157         * include/std/atomic (atomic<_Tp>): Likewise.
8158         * include/std/shared_mutex (shared_lock): Likewise.
8159         * testsuite/24_iterators/istream_iterator/70766.cc: New test.
8160         * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
8161         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
8162         * testsuite/29_atomics/atomic/70766.cc: New test.
8163         * testsuite/30_threads/shared_lock/70766.cc: New test.
8165         * include/bits/hashtable_policy.h (__detail::_Insert_base,
8166         __detail::_Insert): Improve comments.
8168 2016-04-27  Jonathan Wakely  <jwakely@redhat.com>
8170         PR libstdc++/70767
8171         * include/std/limits: Update comments about DRs.
8172         (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
8173         numeric_limits<const volatile _Tp>): Define unconditionally.
8175 2016-04-24  Jonathan Wakely  <jwakely@redhat.com>
8177         PR libstdc++/70762
8178         * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
8179         static counter to return a different path on every call.
8181 2016-04-22  Tim Shen  <timshen@google.com>
8183         PR libstdc++/70745
8184         * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
8185         Fix the match_not_bow and match_not_eow behavior.
8186         * testsuite/28_regex/regression.cc: Add testcase.
8188 2016-04-20  Jonathan Wakely  <jwakely@redhat.com>
8190         PR libstdc++/69703
8191         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
8192         __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
8194 2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
8196         PR libstdc++/69703
8197         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
8198         Override endianness bit in mode.
8199         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
8200         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
8201         that little_endian mode is ignored.
8202         * testsuite/experimental/filesystem/path/native/string.cc: New test.
8204         PR libstdc++/70609
8205         * src/filesystem/ops.cc (close_fd): New function.
8206         (do_copy_file): Set permissions before copying file contents. Check
8207         result of closing file descriptors. Don't copy streambuf when file
8208         is empty.
8209         (copy(const path&, const path&, copy_options, error_code&)): Use
8210         lstat for source file when copy_symlinks is set.
8211         * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
8213         * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
8214         operator~ operator&=, operator|=, operator^=): Add noexcept to
8215         overloaded operators for copy_options, perms and directory_options.
8216         * src/filesystem/ops.cc (make_file_type, make_file_status,
8217         is_not_found_errno, file_time): Add noexcept.
8219 2016-04-19  Edward Smith-Rowland  <3dw4rd@verizon.net>
8221         * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
8223 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
8225         PR libstdc++/41759
8226         * include/bits/random.h: Reword static assertion messages to state
8227         positive conditions.
8228         * include/bits/random.tcc: Likewise.
8229         * include/bits/uniform_int_dist.h: Likewise.
8230         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
8231         patterns.
8233         * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
8235         * config/cpu/sh/atomicity.h: Fix typo in comment.
8237         PR libstdc++/70294
8238         * include/std/thread (operator<, operator==): Move definitions to
8239         namespace-scope.
8240         * testsuite/30_threads/thread/id/70294.cc: New test.
8242         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
8243         -Wno-pedantic to dg-options.
8244         * testsuite/20_util/align/2.cc: Use type as operand of alignof.
8245         * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
8246         to dg-options.
8247         * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
8248         Remove extra semi-colon.
8249         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
8250         Always supply second argument to static_assert.
8251         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
8252         semi-colon.
8253         * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
8254         dg-options.
8255         * testsuite/26_numerics/complex/literals/values.cc: Likewise.
8256         * testsuite/29_atomics/atomic/60695.cc: Likewise.
8257         * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
8258         alignof when operand is an object not a type.
8259         * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
8260         * testsuite/decimal/make-decimal.cc: Likewise.
8261         * testsuite/experimental/type_traits/value.cc: Always supply second
8262         argument to static_assert.
8263         * testsuite/util/testsuite_common_types.h: Use __extension__ for
8264         __int128 types.
8266         * testsuite/experimental/type_erased_allocator/1.cc: Don't include
8267         internal header.
8268         * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
8269         * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
8270         * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
8271         Likewise. Add licence and change to compile-only test.
8273         * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
8274         unused parameter.
8275         * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
8277         * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
8278         warnings.
8280 2016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
8282         * include/bits/specfun.h: Trivial comment misspelling.
8284 2016-04-14  Jason Merrill  <jason@redhat.com>
8286         Revert Jonathan's empty ABI change from yesterday.
8288 2016-04-13  Martin Sebor  <msebor@redhat.com>
8290         PR c++/69517
8291         * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
8292         upper bound is positive.
8294 2016-04-13  Jonathan Wakely  <jwakely@redhat.com>
8296         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
8297         _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
8298         * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
8299         of functions taking empty structs by value. Add a template parameter
8300         to overloads without hints. Rename overloads with hints to
8301         _M_emplace_hint.
8302         (_Hashtable::_M_erase(true_type, const_iterator),
8303         _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
8304         by reordering parameters.
8305         * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
8306         _M_emplace_hint instead of _M_emplace.
8307         * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
8308         shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
8309         * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
8310         __shared_ptr): Likewise.
8311         * include/bits/stl_algo.h (replace_if): Likewise.
8312         * include/bits/stl_pair.h (piecewise_construct_t,
8313         piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
8314         * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
8315         __uses_alloc0): Likewise.
8316         * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
8317         * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
8318         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
8319         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
8320         * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
8321         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
8322         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
8324 2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
8326         Document C++17/TR29124 C++ Special Math Functions.
8327         * include/bits/specfun.h: Add Doxygen markup.
8329 2016-04-07  Jonathan Wakely  <jwakely@redhat.com>
8331         * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
8333 2016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
8335         * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
8336         * src/Makefile.in: Regenerate.
8338 2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
8340         PR libstdc++/70554
8341         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
8342         __atomic_fetch_add for bool.
8343         * configure: Regenerate.
8345         * testsuite/30_threads/thread/70503.cc: Require -static to work.
8347         PR libstdc++/70503
8348         * src/c++11/thread.cc (execute_native_thread_routine,
8349         execute_native_thread_routine_compat): Give internal linkage.
8350         * testsuite/30_threads/thread/70503.cc: New test.
8352 2016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8354         PR libstdc++/70437
8355         * include/bits/stl_pair.h (_ConstructiblePair,
8356         _ImplicitlyConvertiblePair, _MoveConstructiblePair,
8357         _ImplicitlyMoveConvertiblePair): Add shortcut conditions
8358         for same-type cases.
8359         * testsuite/20_util/pair/70437.cc: New.
8361 2016-03-24  Jonathan Wakely  <jwakely@redhat.com>
8363         PR libstdc++/69945
8364         * config/abi/pre/gnu.ver: Add new symbol.
8365         * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
8366         * testsuite/18_support/free_eh_pool.cc: New test.
8368 2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8370         * include/Makefile.am (install-freestanding-headers): Add
8371         concept_check.h and move.h to the installed headers.
8372         * include/Makefile.in: Regenerated.
8373         * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
8374         freestanding implementations.
8375         * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
8376         that this macro has no effect for freestanding implementations.
8377         * doc/html/manual/using_macros.html: Likewise.
8379 2016-02-24  Jonathan Wakely  <jwakely@redhat.com>
8381         PR libstdc++/69939
8382         * include/experimental/tuple (__apply_impl): Qualify get and forward.
8384 2016-02-23  Jonathan Wakely  <jwakely@redhat.com>
8386         * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
8387         * doc/html/*: Regenerate.
8389         PR libstdc++/69893
8390         * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
8391         exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
8392         llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
8393         nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
8394         trunc) [__cplusplus >= 201103L]: Import from namespace std.
8395         (fabs) [__cplusplus < 201103L]: Import from namespace std.
8396         * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
8397         Likewise.
8398         * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
8399         namespace before including TR1 headers.
8400         * testsuite/tr1/headers/c++200x/math.cc: New test.
8402 2016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8404         PR libstdc++/69881
8405         * include/c_global/cstdarg: Undefine __need___va_list.
8406         * include/c_global/cstddef: Undefine all kinds of __need_*.
8408 2016-02-16  Tim Shen  <timshen@google.com>
8410         PR libstdc++/69794
8411         * include/bits/regex_scanner.h: Add different special character
8412         sets for grep and egrep regex.
8413         * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
8414         * testsuite/28_regex/regression.cc: Add new testcase.
8416 2016-02-08  Jonathan Wakely  <jwakely@redhat.com>
8418         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
8419         added 'constexpr' in previous commit.
8420         * configure: Regenerate.
8422         PR libstdc++/48891
8423         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
8424         checks for all targets except *-*-solaris2.* and ensure we find the
8425         libc math.h header not our own.
8426         * configure: Regenerate.
8428 2016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
8430         * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
8431         New file.  Copied over from s390-linux-gnu.
8433 2016-02-04  Jonathan Wakely  <jwakely@redhat.com>
8435         PR libstdc++/69626
8436         * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
8437         with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
8438         * config.h.in: Regenerate.
8439         * configure: Regenerate.
8440         * testsuite/21_strings/c_strings/char/69626.cc: New.
8442         * doc/html/index.html: Regenerate.
8444         * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
8445         * doc/xml/manual/spine.xml: Update copyright years and author blurb.
8446         * doc/html/*: Regenerate.
8448 2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8450         PR libstdc++/69581
8451         * include/c_compatibility/math.h: Move header guards.
8452         * include/c_compatibility/stdlib.h: Likewise.
8454 2016-01-29  Jonathan Wakely  <jwakely@redhat.com>
8456         PR libstdc++/69506
8457         * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8459 2016-01-28  John David Anglin  <danglin@gcc.gnu.org>
8461         PR libstdc++/69450
8462         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
8463         isinf and isnan functions into two independent checks.  Check on hpux.
8464         * config.h.in: Regenerate.
8465         * configure: Regenerate.
8466         * include/c_global/cmath (isinf(double), isnan(double)): Use
8467         _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
8468         respectively.
8470 2016-01-27  Jakub Jelinek  <jakub@redhat.com>
8472         * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
8474 2016-01-27  Jonathan Wakely  <jwakely@redhat.com>
8476         PR libstdc++/69295
8477         * testsuite/ext/special_functions/hyperg/check_value.cc: Use
8478         -ffp-contract=off, and -ffloat-store to disable excess precision.
8479         * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
8480         -ffp-contract=off.
8482 2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
8484         PR libstdc++/69478
8485         * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
8486         random_access_iterator_tag>): Check is_move_assignable when moving.
8487         (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
8488         Likewise.
8489         * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
8490         * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
8491         * testsuite/25_algorithms/move/69478.cc: New.
8492         * testsuite/25_algorithms/move_backward/69478.cc: new.
8494 2016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
8496         * include/c_compatibility/stdlib.h: Include wide character related
8497         definitions only when they are available in cstdlib.
8499 2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
8501         PR libstdc++/69464
8502         * include/Makefile.am: Add new header.
8503         * include/Makefile.in: Regenerate.
8504         * include/bits/random.h (uniform_int_distribution): Move to
8505         bits/uniform_int_dist.h.
8506         * include/bits/random.tcc (uniform_int_distribution::operator(),
8507         uniform_int_distribution::__generate_impl): Likewise.
8508         * include/bits/uniform_int_dist.h: New header.
8509         * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
8510         <bits/uniform_int_dist.h> instead of <random>.
8511         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
8512         move_iterators/1.cc: Include correct header for uninitialized_copy.
8513         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
8514         move_iterators/1.cc: Likewise.
8515         * testsuite/25_algorithms/nth_element/58800.cc: Include correct
8516         header for vector.
8517         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
8519 2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
8521         PR libstdc++/69446
8522         * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8524 2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
8526         TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
8527         * include/c_compatibility/math.h: Import the TR29124 functions
8528         into the global namespace.
8529         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
8530         xfail and make compile-only.
8531         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
8532         * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
8533         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
8534         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
8535         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
8536         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
8537         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
8538         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
8539         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
8540         * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
8541         * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
8542         * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
8543         * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
8544         * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
8545         * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
8546         * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
8547         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
8548         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
8549         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
8550         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
8552 2016-01-22  Jonathan Wakely  <jwakely@redhat.com>
8554         PR libstdc++/69116
8555         * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
8556         define result_type for types which can be safely used with valarrays.
8557         * testsuite/26_numerics/valarray/69116.cc: New.
8559         PR libstdc++/69413
8560         * config/os/gnu-linux/os_defines.h: Define
8561         _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
8562         * include/c_global/cmath (isinf, isnan): Check it.
8563         * doc/xml/manual/internals.xml: Document it.
8564         * doc/html/*: Regenerate.
8566 2016-01-21  Jonathan Wakely  <jwakely@redhat.com>
8568         PR libstdc++/69406
8569         * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
8570         * include/ext/type_traits.h: Likewise.
8571         * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
8572         for presence of C headers.
8573         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
8574         dg-error line number.
8575         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
8576         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
8577         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
8579 2016-01-20  Torvald Riegel  <triegel@redhat.com>
8581         PR libstdc++/69310
8582         * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8584 2016-01-20  Jonathan Wakely  <jwakely@redhat.com>
8586         PR libstdc++/60401
8587         * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
8588         copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
8589         lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
8590         nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
8591         tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
8592         Add using declarations.
8593         * testsuite/26_numerics/headers/cmath/60401.cc: New.
8595         PR libstdc++/69386
8596         * include/c_global/ccomplex: Ensure C++ language linkage.
8597         * include/c_global/cmath: Likewise.
8598         * include/c_global/cstdlib: Likewise.
8599         * include/c_global/ctgmath: Likewise.
8600         * testsuite/17_intro/headers/c++2011/linkage.cc: New.
8602 2016-01-19  Jonathan Wakely  <jwakely@redhat.com>
8604         PR libstdc++/14608
8605         PR libstdc++/60401
8606         * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
8607         --enable-cheaders=c_global configs.
8608         * include/Makefile.in: Regenerate.
8609         * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
8610         test and allow inclusion from C files.
8611         * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
8612         (at_quick_exit, quick_exit): Add using directives.
8613         * include/c_global/cmath: Use #include_next for math.h.
8614         * include/c_global/cstdlib: Use #include_next for stdlib.h.
8615         * testsuite/26_numerics/headers/cmath/14608.cc: New.
8616         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
8617         Remove xfail for most targets.
8618         * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
8620 2016-01-18  Torvald Riegel  <triegel@redhat.com>
8622         * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
8623         (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
8624         and move after its definition.
8625         * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
8626         * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
8627         __GXX_WEAK__, and only provide transactional clones if
8628         _GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
8629         functions.
8631 2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
8633         PR libstdc++/60637
8634         * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
8636         PR libstdc++/69243
8637         * include/std/functional (_Function_base::_M_not_empty_function):
8638         Change overloads for pointers to take arguments by value.
8639         * testsuite/20_util/function/cons/57465.cc: Add tests for
8640         pointer-to-member cases.
8642         PR libstdc++/69340
8643         * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
8644         Use macros for exception handling and fix unused parameter warning.
8646 2016-01-17  John David Anglin  <danglin@gcc.gnu.org>
8648         PR libstdc++/68734
8649         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
8651 2016-01-17  Torvald Riegel  <triegel@redhat.com>
8653         * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
8655 2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
8657         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
8658         __int128 symbols.
8660 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
8662         PR libstdc++/69293
8663         * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
8664         static assertion that type is constructible from the arguments.
8665         * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
8666         * testsuite/20_util/uses_allocator/69293_neg.cc: New.
8667         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
8669         PR libstdc++/69294
8670         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
8671         and isnan on AIX. Quote variables.
8672         * configure: Regenerate.
8674 2016-01-15  Torvald Riegel  <triegel@redhat.com>
8676         * include/bits/basic_string.h (basic_string): Declare friends.
8677         * include/bits/c++config (_GLIBCXX_TXN_SAFE,
8678         _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
8679         * include/std/stdexcept (logic_error, domain_error, invalid_argument,
8680         length_error, out_of_range, runtime_error, range_error,
8681         underflow_error, overflow_error): Declare members as transaction-safe.
8682         (logic_error, runtime_error): Declare friend functions.
8683         * libsupc++/exception (exception, bad_exception): Declare members as
8684         transaction-safe.
8685         * src/c++11/cow-stdexcept.cc: Define transactional clones for the
8686         transaction-safe members of exceptions and helper functions.
8687         * libsupc++/eh_exception.cc: Adjust and define transactional clones.
8688         * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
8689         (CXXABI_1.3.10): New.
8690         * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
8691         (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
8692         * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
8693         * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
8694         * include/Makefile.in: Regenerate.
8695         * config.h.in: Regenerate.
8696         * configure: Regenerate.
8697         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
8699 2016-01-15  Steve Ellcey  <sellcey@imgtec.com>
8701         * include/ext/random.tcc: Use __builtin_isfinite instead of
8702         std::isfinite.
8704 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
8706         * include/bits/std_mutex.h: Fix Doxygen @file name.
8708 2016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
8709             Jonathan Wakely  <jwakely@redhat.com>
8710             Florian Goth <CaptainSifff@gmx.de>
8712         Implement TR29124 C++ special Math Functions.
8713         * include/Makefile.am: Add new headers.
8714         * include/Makefile.in: Regenerate.
8715         * include/bits/specfun.h: New.
8716         * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
8717         * include/tr1/bessel_function.tcc: Ditto.
8718         * include/tr1/beta_function.tcc: Ditto.
8719         * include/tr1/cmath: Ditto.
8720         * include/tr1/ell_integral.tcc: Ditto.
8721         * include/tr1/exp_integral.tcc: Ditto.
8722         * include/tr1/gamma.tcc: Ditto.
8723         * include/tr1/hypergeometric.tcc: Ditto.
8724         * include/tr1/legendre_function.tcc: Ditto.
8725         * include/tr1/modified_bessel_func.tcc: Ditto.
8726         * include/tr1/poly_hermite.tcc: Ditto.
8727         * include/tr1/poly_laguerre.tcc: Ditto.
8728         * include/tr1/riemann_zeta.tcc: Ditto.
8729         * include/tr1/special_function_util.h: Ditto.
8730         * testsuite/ext/special_functions/conf_hyperg: New.
8731         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
8732         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
8733         * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
8734         * testsuite/ext/special_functions/hyperg: New.
8735         * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
8736         * testsuite/ext/special_functions/hyperg/check_value.cc: New.
8737         * testsuite/ext/special_functions/hyperg/compile.cc: New.
8738         * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
8739         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
8740         * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
8741         * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
8742         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
8743         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
8744         * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
8745         * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
8746         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
8747         * testsuite/special_functions/03_beta/check_nan.cc: New.
8748         * testsuite/special_functions/03_beta/check_value.cc: New.
8749         * testsuite/special_functions/03_beta/compile.cc: New.
8750         * testsuite/special_functions/03_beta/compile_2.cc: New.
8751         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
8752         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
8753         * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
8754         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
8755         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
8756         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
8757         * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
8758         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
8759         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
8760         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
8761         * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
8762         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
8763         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
8764         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
8765         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
8766         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
8767         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
8768         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
8769         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
8770         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
8771         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
8772         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
8773         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
8774         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
8775         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
8776         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
8777         * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
8778         * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
8779         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
8780         * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
8781         * testsuite/special_functions/11_ellint_1/check_value.cc: New.
8782         * testsuite/special_functions/11_ellint_1/compile.cc: New.
8783         * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
8784         * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
8785         * testsuite/special_functions/12_ellint_2/check_value.cc: New.
8786         * testsuite/special_functions/12_ellint_2/compile.cc: New.
8787         * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
8788         * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
8789         * testsuite/special_functions/13_ellint_3/check_value.cc: New.
8790         * testsuite/special_functions/13_ellint_3/compile.cc: New.
8791         * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
8792         * testsuite/special_functions/14_expint/check_nan.cc: New.
8793         * testsuite/special_functions/14_expint/check_value.cc: New.
8794         * testsuite/special_functions/14_expint/compile.cc: New.
8795         * testsuite/special_functions/14_expint/compile_2.cc: New.
8796         * testsuite/special_functions/15_hermite/check_nan.cc: New.
8797         * testsuite/special_functions/15_hermite/check_value.cc: New.
8798         * testsuite/special_functions/15_hermite/compile.cc: New.
8799         * testsuite/special_functions/15_hermite/compile_2.cc: New.
8800         * testsuite/special_functions/16_laguerre/check_nan.cc: New.
8801         * testsuite/special_functions/16_laguerre/check_value.cc: New.
8802         * testsuite/special_functions/16_laguerre/compile.cc: New.
8803         * testsuite/special_functions/16_laguerre/compile_2.cc: New.
8804         * testsuite/special_functions/17_legendre/check_nan.cc: New.
8805         * testsuite/special_functions/17_legendre/check_value.cc: New.
8806         * testsuite/special_functions/17_legendre/compile.cc: New.
8807         * testsuite/special_functions/17_legendre/compile_2.cc: New.
8808         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
8809         * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
8810         * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
8811         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
8812         * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
8813         * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
8814         * testsuite/special_functions/19_sph_bessel/compile.cc: New.
8815         * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
8816         * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
8817         * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
8818         * testsuite/special_functions/20_sph_legendre/compile.cc: New.
8819         * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
8820         * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
8821         * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
8822         * testsuite/special_functions/21_sph_neumann/compile.cc: New.
8823         * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
8824         * testsuite/util/specfun_testcase.h: New.
8825         * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
8826         * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
8827         * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
8828         * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
8829         * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
8830         * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
8831         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
8833 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
8835         PR libstdc++/48891
8836         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
8837         and isnan functions.
8838         * config.h.in: Regenerate.
8839         * configure: Regenerate.
8840         * include/c_global/cmath (isinf(double), isnan(double))
8841         [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
8842         * testsuite/26_numerics/headers/cmath/48891.cc: New.
8844 2016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8846         PR libstdc++/66006
8847         * configure.host (abi_baseline_pair): Use separate baseline for
8848         Solaris 11+ and Solaris 10 with gld.
8849         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
8850         * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
8851         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
8853 2016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
8855         PR libstdc++/68877
8856         * include/std/type_traits: Following N4511, reimplement __is_swappable
8857         and __is_nothrow_swappable. Move __is_swappable to namespace std,
8858         adjust callers. Use __is_nothrow_swappable in swap.
8859         * include/bits/move.h: Use __is_nothrow_swappable in swap.
8860         * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
8861         __is_swappable related tests.
8862         * testsuite/20_util/is_swappable/value.cc: New.
8863         * testsuite/20_util/is_swappable/requirements/
8864         explicit_instantiation.cc: New.
8865         * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
8866         * testsuite/25_algorithms/swap/68877.cc: New.
8868 2016-01-12  Jonathan Wakely  <jwakely@redhat.com>
8870         * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
8872         PR libstdc++/69005
8873         PR libstdc++/69222
8874         * include/std/functional (function::_Invoke): Remove, use result_of.
8875         (function::_Callable): Replace alias template with class template
8876         and use partial specialization instead of _NotSelf alias template.
8877         (function(_Functor)): Add "not self" constraint so that _Callable is
8878         not used while type is incomplete.
8879         * testsuite/20_util/function/69222.cc: New.
8881 2016-01-11  Jonathan Wakely  <jwakely@redhat.com>
8883         PR libstdc++/60976
8884         * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
8885         Define partial specialization.
8886         * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
8887         destroy members to std::allocator explicit specialization.
8889 2016-01-08  Jonathan Wakely  <jwakely@redhat.com>
8891         * testsuite/26_numerics/headers/cmath/
8892         c99_classification_macros_c++.cc: Rename to ...
8893         * testsuite/26_numerics/headers/cmath/
8894         c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
8895         * testsuite/26_numerics/headers/cmath/
8896         c99_classification_macros_c++0x.cc: Rename to ...
8897         * testsuite/26_numerics/headers/cmath/
8898         c99_classification_macros_c++11.cc: Here.
8900         PR libstdc++/69190
8901         * include/bits/uses_allocator.h: Add missing include.
8903 2016-01-07  Jonathan Wakely  <jwakely@redhat.com>
8905         PR libstdc++/69105
8906         PR libstdc++/69106
8907         PR libstdc++/69114
8908         * include/bits/stl_iterator.h (back_insert_iterator,
8909         front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
8910         * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
8911         * include/std/future (__future::base::_State_baseV2::__setter):
8912         Likewise.
8913         * include/std/scoped_allocator (__outermost): Likewise.
8914         * testsuite/20_util/scoped_allocator/69114.cc: New.
8915         * testsuite/20_util/uses_allocator/69114.cc: New.
8916         * testsuite/30_threads/promise/69106.cc: New.
8918 2016-01-06  Jonathan Wakely  <jwakely@redhat.com>
8920         PR libstdc++/69092
8921         * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
8922         Remove _GLIBCXX_NOEXCEPT.
8923         testsuite/21_strings/basic_string/cons/char/69092.cc: New.
8925         * include/Makefile.am: Adjust.
8926         * include/Makefile.in: Regenerate.
8927         * include/bits/mutex.h: Rename to bits/std_mutex.h.
8928         * include/std/condition_variable: Adjust include.
8929         * include/std/mutex: Likewise.
8931 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
8933         Update copyright years.
8935 Copyright (C) 2016 Free Software Foundation, Inc.
8937 Copying and distribution of this file, with or without modification,
8938 are permitted in any medium without royalty provided the copyright
8939 notice and this notice are preserved.