* tree.h (wi::fits_to_tree_p): Accept only 0 and 1 for boolean types.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob11ac1062d094d86a28ae9bd44dcc6e6b0544b2d4
1 2016-10-25  Jonathan Wakely  <jwakely@redhat.com>
3         * src/filesystem/ops.cc
4         (last_write_time(const path&, file_time_type, error_code&)): Handle
5         negative times correctly.
6         * testsuite/experimental/filesystem/operations/last_write_time.cc:
7         Test writing file times.
9         * src/filesystem/ops.cc (do_copy_file): Report an error if source or
10         destination is not a regular file (LWG 2712).
11         (equivalent): Fix error handling and result when only one file exists.
12         * testsuite/experimental/filesystem/operations/copy.cc: Remove files
13         created by tests. Test copying directories.
14         * testsuite/experimental/filesystem/operations/copy_file.cc: Remove
15         files created by tests.
16         * testsuite/experimental/filesystem/operations/equivalent.cc: New.
17         * testsuite/experimental/filesystem/operations/is_empty.cc: New.
18         * testsuite/experimental/filesystem/operations/read_symlink.cc: Remove
19         file created by test.
20         * testsuite/experimental/filesystem/operations/remove_all.cc: New.
21         * testsuite/util/testsuite_fs.h (~scoped_file): Only try to remove
22         file if path is non-empty, to support removal by other means.
24 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
26         * src/filesystem/ops.cc (is_empty): Fix error handling.
27         * testsuite/experimental/filesystem/operations/is_empty.cc: New test.
29         PR libstdc++/71337
30         * src/filesystem/ops.cc (temp_directory_path): Pass error_code
31         argument to other filesystem operations.
32         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
33         Add testcase for inaccessible directory.
35         * src/filesystem/dir.cc (open_dir): Return same value for errors
36         whether ignored or not.
37         (_Dir::advance(error_code*, directory_options)): Return false on
38         error.
39         (directory_iterator(const path&, directory_options, error_code*)):
40         Create end iterator on error (LWG 2723).
41         (recursive_directory_iterator(const path&, directory_options,
42         error_code*)): Likewise.
43         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
44         Update expected behaviour on error.
45         * testsuite/experimental/filesystem/iterators/
46         recursive_directory_iterator.cc: Likewise.
48         * src/filesystem/ops.cc (close_fd): Remove.
49         (do_copy_file): Just use close(3) instead of close_fd, to prevent
50         retrying on error.
52         * src/filesystem/ops.cc (do_copy_file): Return an error if either
53         source or destination is not a regular file.
54         (copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
55         resolutions.
56         (read_symlink): Add missing ec.clear().
57         * testsuite/experimental/filesystem/operations/copy.cc: Update
58         expected behaviour for copying directories with create_symlinks.
59         Verify that error_code arguments are cleared if there's no error.
60         * testsuite/experimental/filesystem/operations/read_symlink.cc: New.
62 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
64         Cross-port exception-safety and move fixes of std::any to
65         std::experimental::any.
66         * include/experimental/any (operator=(const any&)):
67         Make strongly exception-safe.
68         (operator=(any&&)): clear() unconditionally in the case where
69         rhs has a value.
70         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
71         * testsuite/experimental/any/assign/2.cc: Adjust.
72         * testsuite/experimental/any/assign/exception.cc: New.
73         * testsuite/experimental/any/cons/2.cc: Adjust.
74         * testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.
76 2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>
78         Cross-port the latest resolution of LWG2756 and some
79         bug-fixes to experimental::optional.
80         PR libstdc++/77288
81         PR libstdc++/77727
82         * include/experimental/optional (_Optional_base):
83         Remove constructors that take a _Tp.
84         (__is_optional_impl, __is_optional): Remove.
85         (__converts_from_optional): New.
86         (optional(_Up&&)): Fix constraints, call base with in_place.
87         (optional(const optional<_Up>&)): Fix constraints, use emplace.
88         (optional(optional<_Up>&&)): Likewise.
89         (operator=(_Up&&)): Fix constraints.
90         (operator=(const optional<_Up>&)): Likewise.
91         (operator=(optional<_Up>&&)): Likewise.
92         (emplace(_Args&&...)): Constrain.
93         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
94         * testsuite/experimental/optional/77288.cc: New.
95         * testsuite/experimental/optional/assignment/5.cc: Adjust.
96         * testsuite/experimental/optional/cons/77727.cc: New.
97         * testsuite/experimental/optional/cons/value.cc: Adjust.
99 2016-10-24  Jonathan Wakely  <jwakely@redhat.com>
101         * include/bits/stl_vector.h (vector::_M_data_ptr, vector::data):
102         Change return type of non-standard C++98 extension to match C++11.
104 2016-10-22  François Dumont  <fdumont@gcc.gnu.org>
106         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_ALGO)
107         (_GLIBCXX_END_NAMESPACE_ALGO): Default to respectively
108         _GLIBCXX_BEGIN_NAMESPACE_VERSION and _GLIBCXX_END_NAMESPACE_VERSION.
109         (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER, _GLIBCXX_END_NAMESPACE_CONTAINER):
110         Likewise.
112 2016-10-22  Jonathan Wakely  <jwakely@redhat.com>
114         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
115         Ignore symlink_nofollow flag if file is not a symlink.
116         * testsuite/experimental/filesystem/operations/permissions.cc: Test
117         symlink_nofollow on non-symlinks.
119 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
121         * include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
122         Replace with symlink_nofollow (LWG 2720).
123         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
124         Handle symlink_nofollow.
125         * testsuite/experimental/filesystem/operations/create_symlink.cc: New
126         test.
127         * testsuite/experimental/filesystem/operations/permissions.cc: Test
128         overload taking error_code.
130         * include/experimental/bits/fs_ops.h
131         (exists(const path&, error_code&)): Clear error if status is known
132         (LWG 2725).
133         (status(const path&, error_code&)): Handle EOVERFLOW.
134         * testsuite/experimental/filesystem/operations/exists.cc: Test
135         overload taking an error_code.
137         * include/experimental/bits/fs_path.h (path::path(string_type&&))
138         (path::operator=(string&&), path::assign(string_type&&)): Define
139         construction and assignment from string_type rvalues (LWG 2707).
141 2016-10-21  Eelis van der Weegen  <eelis@eelis.net>
143         * include/bits/stl_algo.h (__gen_two_uniform_ints): Move logic out
144         of shuffle into new function.
145         (shuffle): Call __gen_two_uniform_ints.
146         (__sample<ForwardIterator, OutputIterator, Cat, Size, URBG>): Use
147         __gen_two_uniform_ints and perform two samples at a time.
149 2016-10-21  Jonathan Wakely  <jwakely@redhat.com>
151         * include/Makefile.am: Add <bits/refwrap.h> and <bits/std_function.h>.
152         Order alphabetically.
153         * include/Makefile.in: Regenerate.
154         * include/bits/refwrap.h: New header.
155         (_Maybe_get_result_type,_Weak_result_type_impl, _Weak_result_type)
156         (_Reference_wrapper_base_impl, _Reference_wrapper_base)
157         (reference_wrapper, ref, cref): Move here from <functional>.
158         * include/bits/shared_ptr_base.h: Include <bits/refwrap.h> and
159         <bits/stl_function.h> instead of <functional>.
160         * include/bits/std_function.h: New header.
161         (_Maybe_unary_or_binary_function, bad_function_call)
162         (__is_location_invariant, _Nocopy_types, _Any_data)
163         (_Simple_type_wrapper, _Function_base, _Function_handler, function):
164         Move here from <functional>.
165         * include/bits/unique_ptr.h: Include <bits/stl_function.h>.
166         * include/std/functional: Include new headers and move components to
167         them.
168         * include/std/future: Include <bits/std_function.h> instead of
169         <functional>.
170         * include/std/mutex: Likewise.
171         * include/std/regex: Likewise.
172         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
173         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
174         * testsuite/20_util/default_delete/void_neg.cc: Likewise.
175         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
176         lines.
177         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
178         * testsuite/30_threads/packaged_task/49668.cc: Include <functional>.
180         * libsupc++/exception_ptr.h (make_exception_ptr): Qualify new.
181         * testsuite/18_support/exception_ptr/make_exception_ptr_2.cc: New
182         test.
184 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
186         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
187         (shared_ptr(auto_ptr&&)): Adjust template parameter lists.
188         * include/bits/shared_ptr.h (__sp_compatible_with)
189         (__sp_is_constructible): New helper traits for shared_ptr.
190         (shared_ptr::_Convertible): Replace with _Constructible.
191         (shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
192         to base class.
193         (shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
194         with _Constructible and _Assignable.
195         (shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
196         instead of _Tp.
197         (operator<): Likewise.
198         (operator>): Define in terms of operator<.
199         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
200         element_type instead of _Tp.
201         (reinterpret_pointer_cast): Define for C++17.
202         (weak_ptr::_Convertible): Replace with _Constructible.
203         (weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
204         to base class.
205         (weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
206         with _Constructible and _Assignable.
207         * include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
208         with _Compatible.
209         (__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
210         (__shared_ptr::_Compatible): New constraint for converting from
211         other types of shared_ptr and weak_ptr.
212         (__shared_ptr::_Assignable): Define in terms of _Compatible.
213         (__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
214         constraints for converting from unique_ptr.
215         (__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
216         template with _SaveConf, _Compatible and _Assignable. Remove
217         __glibcxx_function_requires concept checks. Add static assertion for
218         deleter expression being well-formed.
219         (__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
220         (__shared_ptr::operator*, __shared_ptr::operator->)
221         (__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
222         of _Tp.
223         (operator<): Likewise.
224         (operator>): Define in terms of operator<.
225         (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
226         element_type instead of _Tp.
227         (reinterpret_pointer_cast): Define for C++17.
228         (weak_ptr::_Convertible): Replace with _Compatible.
229         (weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
230         conversions from other types of weak_ptr and shared_ptr.
231         (__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
232         with _Constructible and _Assignable.
233         (__weak_ptr::_M_ptr): Use element_type instead of _Tp.
234         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
235         dg-error pattern.
236         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
237         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
238         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
239         * testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.
241 2016-10-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
243         Do the operator= SFINAE in the return type for optional,
244         not in the template parameters.
245         * include/std/optional (operator=(_Up&&)): Move SFINAE
246         from template parameters to the return type.
247         (operator=(const optional<_Up>&)): Likewise.
248         (operator=(optional<_Up>&&)): Likewise.
250 2016-10-20  Jonathan Wakely  <jwakely@redhat.com>
252         * include/bits/allocator.h: Remove trailing whitespace, tab-indent.
253         * include/ext/new_allocator.h: Likewise.
255         PR libstdc++/78052
256         * include/bits/allocator.h (allocator<void>::construct)
257         (allocator<void>::destroy): Define.
258         * testsuite/20_util/allocator/void.cc: New test.
260         * testsuite/20_util/enable_shared_from_this/56383.cc: Add tests for
261         additional ambiguous cases.
263 2016-10-19  Jonathan Wakely  <jwakely@redhat.com>
265         * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&)): Call
266         _M_enable_shared_from_this_with instead of
267         __enable_shared_from_this_helper.
268         * include/bits/shared_ptr.h (__enable_shared_from_this_helper):
269         Remove overload for std::enable_shared_from_this..
270         (__enable_shared_from_this_base): Define friend function to select a
271         std::enable_shared_from_this base class.
272         * include/bits/shared_ptr_base.h (__enable_shared_from_this_helper):
273         Remove all overloads.
274         (__shared_ptr): Change all relevant constructors to call
275         _M_enable_shared_from_this_with instead of
276         __enable_shared_from_this_helper.
277         (__shared_ptr::__efst_base_t, __shared_ptr::__has_efst_base): Helpers
278         to detect accessible and unambiguous enable_shared_from_this bases.
279         (__shared_ptr::_M_enable_shared_from_this_with): New function to
280         replace __enable_shared_from_this_helper overloads.
281         (__enable_shared_from_this_helper): Remove overload for
282         std::__enable_shared_from_this.
283         (__enable_shared_from_this_base): Define friend function to select a
284         std::__enable_shared_from_this base class.
285         * include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
286         Change relevant constructors to call _M_enable_shared_from_this_with.
287         (experimental::shared_ptr::__efst_base_t)
288         (experimental::shared_ptr::__has_efst_base): Helpers to detect
289         accessible and unambiguous enable_shared_from_this bases.
290         (experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
291         (experimental::__enable_shared_from_this_helper): Remove overload for
292         std::experimental::enable_shared_from_this.
293         (experimental::__expt_enable_shared_from_this_base): Define friend
294         function to select a std::experimental::enable_shared_from_this base.
295         * testsuite/experimental/memory/shared_ptr/cons/
296         enable_shared_from_this.cc: New test.
297         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
298         Adjust expected behaviour for shared_ptr<A[]>.
300         * include/debug/vector (__gnu_debug::vector::emplace_back): Fix return
301         type.
303         * include/backward/auto_ptr.h (dauto_ptr): Correct comment about
304         conversions from auto_ptr<Derived> rvalues to auto_ptr<Base>.
305         * testsuite/20_util/auto_ptr/assign_neg.cc: Remove redundant dg-error
306         directives that only match notes, not errors.
308         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
309         Add tests for valid and invalid conversions.
310         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
311         Likewise.
313         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
314         to new file.
315         * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file.  Fix
316         test for incompatible deleters to not also use incompatible types.
317         Add tests for incompatible array types.
319         * include/experimental/bits/shared_ptr.h
320         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
321         is_convertible for non-array specialization.
322         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
323         constraint for conversions from unique_ptr.
324         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
325         (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
326         (__sp_compatible_v): New variable template for trait.
327         (__sp_is_constructible): New trait to check shared_ptr constraints.
328         (__sp_is_constructible_v): New variable template for trait.
329         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
330         constraint for construction/reset, using __sp_is_constructible_v.
331         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
332         constraint for conversions from unique_ptr.
333         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
334         (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
335         (shared_ptr::_SafeConv): Constraint for checking constructors.
336         (shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
337         (shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
338         (shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
339         (shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
340         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
341         Remove tests using invalid conversions.
342         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
343         New test.
344         * testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
345         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
346         tests using invalid conversions.
347         * testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
348         test.
349         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
350         Remove tests using invalid conversions.
352         PR libstdc++/77990
353         * include/bits/unique_ptr.h (__uniq_ptr_impl): New type to
354         encapsulate implementation details.
355         (unique_ptr::unique_ptr(_Up)): Don't copy deleter object.
356         (unique_ptr::get, unique_ptr::get_deleter, unique_ptr::release):
357         Call member functions of implementation object.
358         (unique_ptr<T[], D>): Likewise.
359         * python/libstdcxx/v6/printers.py (UniquePointerPrinter): Adjust for
360         new implementation.
361         * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Likewise.
362         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
363         lines.
364         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
365         * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
366         * testsuite/20_util/unique_ptr/cons/77990.cc: New test.
368 2016-10-18  Jonathan Wakely  <jwakely@redhat.com>
370         * include/experimental/bits/shared_ptr.h: Fix indentation.
372         * include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
373         Remove const from parameter.
374         (operator<(const shared_ptr<T>&, nullptr_t)): Use correct
375         specialization of std::less.
376         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
377         Test comparison with nullptr and actually call test functions.
379         * include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
380         (__is_nothrow_uses_allocator_constructible_v): Only define for C++14
381         and later.
383 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
385         * testsuite/27_io/basic_filebuf/close/12790-1.cc: Remove 'test'
386         variables.
387         * testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
388         * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Likewise.
389         * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Likewise.
390         * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
391         * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Likewise.
392         * testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
393         * testsuite/27_io/basic_filebuf/close/char/3.cc: Likewise.
394         * testsuite/27_io/basic_filebuf/close/char/4.cc: Likewise.
395         * testsuite/27_io/basic_filebuf/close/char/5.cc: Likewise.
396         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise.
397         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise.
398         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
399         * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise.
400         * testsuite/27_io/basic_filebuf/cons/2020.cc: Likewise.
401         * testsuite/27_io/basic_filebuf/cons/char/1.cc: Likewise.
402         * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
403         * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: Likewise.
404         * testsuite/27_io/basic_filebuf/imbue/12206.cc: Likewise.
405         * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
406         * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
407         * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
408         * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
409         * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
410         * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
411         * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
412         * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
413         * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
414         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
415         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
416         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
417         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
418         * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
419         * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
420         * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
421         * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
422         * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Likewise.
423         * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Likewise.
424         * testsuite/27_io/basic_filebuf/open/12790-1.cc: Likewise.
425         * testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
426         * testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
427         * testsuite/27_io/basic_filebuf/open/char/3.cc: Likewise.
428         * testsuite/27_io/basic_filebuf/open/char/4.cc: Likewise.
429         * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
430         * testsuite/27_io/basic_filebuf/overflow/char/1.cc: Likewise.
431         * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Likewise.
432         * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Likewise.
433         * testsuite/27_io/basic_filebuf/overflow/char/3599.cc: Likewise.
434         * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Likewise.
435         * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Likewise.
436         * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Likewise.
437         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
438         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
439         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
440         * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
441         * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Likewise.
442         * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Likewise.
443         * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Likewise.
444         * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Likewise.
445         * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Likewise.
446         * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Likewise.
447         * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: Likewise.
448         * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Likewise.
449         * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
450         * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Likewise.
451         * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Likewise.
452         * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Likewise.
453         * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
454         * testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
455         * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
456         * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
457         * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
458         * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Likewise.
459         * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: Likewise.
460         * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Likewise.
461         * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Likewise.
462         * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Likewise.
463         * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Likewise.
464         * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
465         * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
466         * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
467         * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Likewise.
468         * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Likewise.
469         * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
470         * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Likewise.
471         * testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: Likewise.
472         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
473         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise.
474         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise.
475         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise.
476         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise.
477         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise.
478         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
479         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Likewise.
480         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
481         * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
482         Likewise.
483         * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
484         * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Likewise.
485         * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Likewise.
486         * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Likewise.
487         * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Likewise.
488         * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
489         * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Likewise.
490         * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Likewise.
491         * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Likewise.
492         * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc: Likewise.
493         * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Likewise.
494         * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Likewise.
495         * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
496         * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Likewise.
497         * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
498         * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Likewise.
499         * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
500         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Likewise.
501         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise.
502         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise.
503         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc: Likewise.
504         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise.
505         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
506         * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
507         Likewise.
508         * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
509         * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Likewise.
510         * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc
511         * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
512         * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
513         * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Likewise.
514         * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Likewise.
515         * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Likewise.
516         * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Likewise.
517         * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Likewise.
518         * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: Likewise.
519         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Likewise.
520         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
521         * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Likewise.
522         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
523         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
524         * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
525         * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Likewise.
526         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
527         * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Likewise.
528         * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Likewise.
529         * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Likewise.
530         * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Likewise.
531         * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Likewise.
532         * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Likewise.
533         * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: Likewise.
534         * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Likewise.
535         * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Likewise.
536         * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
537         * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Likewise.
538         * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Likewise.
539         * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
540         * testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Likewise.
541         * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: Likewise.
542         * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Likewise.
543         * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Likewise.
544         * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: Likewise.
545         * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Likewise.
546         * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Likewise.
547         * testsuite/27_io/basic_filebuf/sputc/char/59427.cc: Likewise.
548         * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Likewise.
549         * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: Likewise.
550         * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Likewise.
551         * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Likewise.
552         * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: Likewise.
553         * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Likewise.
554         * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Likewise.
555         * testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise.
556         * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Likewise.
557         * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Likewise.
558         * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Likewise.
559         * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
560         * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Likewise.
561         * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Likewise.
562         * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
563         * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: Likewise.
564         * testsuite/27_io/basic_filebuf/sync/char/1057.cc: Likewise.
565         * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Likewise.
566         * testsuite/27_io/basic_filebuf/underflow/char/1.cc: Likewise.
567         * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Likewise.
568         * testsuite/27_io/basic_filebuf/underflow/char/3.cc: Likewise.
569         * testsuite/27_io/basic_filebuf/underflow/char/45841.cc: Likewise.
570         * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: Likewise.
571         * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
572         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
573         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
574         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
575         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
576         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: Likewise.
577         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Likewise.
578         * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
579         * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
580         * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
581         * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
582         * testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
583         * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
584         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Likewise.
585         * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
586         * testsuite/27_io/basic_fstream/cons/1.cc: Likewise.
587         * testsuite/27_io/basic_fstream/rdbuf/char/2832.cc: Likewise.
588         * testsuite/27_io/basic_ifstream/cons/2020.cc: Likewise.
589         * testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
590         * testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
591         * testsuite/27_io/basic_ifstream/rdbuf/char/2832.cc: Likewise.
592         * testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
593         * testsuite/27_io/basic_ios/cons/2020.cc: Likewise.
594         * testsuite/27_io/basic_ios/cons/char/1.cc: Likewise.
595         * testsuite/27_io/basic_ios/cons/char/2.cc: Likewise.
596         * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
597         * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
598         * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
599         * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
600         * testsuite/27_io/basic_ios/imbue/14072.cc: Likewise.
601         * testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
602         * testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
603         * testsuite/27_io/basic_istream/cons/3.cc: Likewise.
604         * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Likewise.
605         * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: Likewise.
606         * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
607         Likewise.
608         * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
609         Likewise.
610         * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
611         Likewise.
612         * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
613         Likewise.
614         * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
615         Likewise.
616         * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
617         Likewise.
618         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
619         Likewise.
620         * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
621         Likewise.
622         * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
623         Likewise.
624         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
625         Likewise.
626         * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
627         Likewise.
628         * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
629         Likewise.
630         * testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
631         Likewise.
632         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
633         exceptions_badbit_throw.cc: Likewise.
634         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
635         exceptions_failbit.cc: Likewise.
636         * testsuite/27_io/basic_istream/extractors_arithmetic/char/
637         exceptions_failbit_throw.cc: Likewise.
638         * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
639         Likewise.
640         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
641         Likewise.
642         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/02.cc:
643         Likewise.
644         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/03.cc:
645         Likewise.
646         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/06.cc:
647         Likewise.
648         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
649         Likewise.
650         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/08.cc:
651         Likewise.
652         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
653         Likewise.
654         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
655         Likewise.
656         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/11.cc:
657         Likewise.
658         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
659         Likewise.
660         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
661         Likewise.
662         * testsuite/27_io/basic_istream/extractors_arithmetic/
663         wchar_t/9555-ia.cc: Likewise.
664         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
665         dr696.cc: Likewise.
666         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
667         exceptions_badbit_throw.cc: Likewise.
668         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
669         exceptions_failbit.cc: Likewise.
670         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
671         exceptions_failbit_throw.cc: Likewise.
672         * testsuite/27_io/basic_istream/extractors_character/char/1.cc:
673         Likewise.
674         * testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
675         Likewise.
676         * testsuite/27_io/basic_istream/extractors_character/char/2.cc:
677         Likewise.
678         * testsuite/27_io/basic_istream/extractors_character/char/3.cc:
679         Likewise.
680         * testsuite/27_io/basic_istream/extractors_character/char/4.cc:
681         Likewise.
682         * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
683         Likewise.
684         * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
685         Likewise.
686         * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
687         Likewise.
688         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
689         11095-i.cc: Likewise.
690         * testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc:
691         Likewise.
692         * testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
693         Likewise.
694         * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
695         Likewise.
696         * testsuite/27_io/basic_istream/extractors_character/wchar_t/
697         9555-ic.cc: Likewise.
698         * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
699         * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Likewise.
700         * testsuite/27_io/basic_istream/extractors_other/char/26181.cc:
701         Likewise.
702         * testsuite/27_io/basic_istream/extractors_other/char/3.cc: Likewise.
703         * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
704         Likewise.
705         * testsuite/27_io/basic_istream/extractors_other/char/9424-in.cc:
706         Likewise.
707         * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
708         Likewise.
709         * testsuite/27_io/basic_istream/extractors_other/char/
710         error_failbit.cc: Likewise.
711         * testsuite/27_io/basic_istream/extractors_other/char/
712         exceptions_badbit_throw.cc: Likewise.
713         * testsuite/27_io/basic_istream/extractors_other/char/
714         exceptions_failbit_throw.cc: Likewise.
715         * testsuite/27_io/basic_istream/extractors_other/char/
716         exceptions_null.cc: Likewise.
717         * testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc:
718         Likewise.
719         * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc: Likewise.
720         * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise.
721         * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
722         Likewise.
723         * testsuite/27_io/basic_istream/extractors_other/wchar_t/3.cc: Likewise.
724         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9318-in.cc:
725         Likewise.
726         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9424-in.cc:
727         Likewise.
728         * testsuite/27_io/basic_istream/extractors_other/wchar_t/9555-io.cc:
729         Likewise.
730         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
731         error_failbit.cc: Likewise.
732         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
733         exceptions_badbit_throw.cc: Likewise.
734         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
735         exceptions_failbit_throw.cc: Likewise.
736         * testsuite/27_io/basic_istream/extractors_other/wchar_t/
737         exceptions_null.cc: Likewise.
738         * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
739         * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
740         * testsuite/27_io/basic_istream/get/char/3.cc: Likewise.
741         * testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
742         * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
743         * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
744         * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
745         * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
746         * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
747         * testsuite/27_io/basic_istream/getline/char/4.cc: Likewise.
748         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
749         * testsuite/27_io/basic_istream/getline/char/6.cc: Likewise.
750         * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
751         * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Likewise.
752         * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: Likewise.
753         * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
754         * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
755         * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: Likewise.
756         * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
757         * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
758         * testsuite/27_io/basic_istream/ignore/char/3.cc: Likewise.
759         * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
760         * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
761         * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
762         * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
763         * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
764         * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
765         * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
766         * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
767         * testsuite/27_io/basic_istream/peek/char/12296.cc: Likewise.
768         * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
769         * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
770         * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
771         * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
772         * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
773         * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
774         * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
775         * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
776         * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
777         * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
778         * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
779         * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
780         * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: Likewise.
781         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Likewise.
782         * testsuite/27_io/basic_istream/readsome/char/8258.cc: Likewise.
783         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
784         * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
785         * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
786         * testsuite/27_io/basic_istream/seekg/char/2.cc: Likewise.
787         * testsuite/27_io/basic_istream/seekg/char/26211.cc: Likewise.
788         * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
789         * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
790         * testsuite/27_io/basic_istream/seekg/char/
791         exceptions_badbit_throw.cc: Likewise.
792         * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Likewise.
793         * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Likewise.
794         * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
795         * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
796         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
797         * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
798         * testsuite/27_io/basic_istream/seekg/wchar_t/
799         exceptions_badbit_throw.cc: Likewise.
800         * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
801         * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
802         * testsuite/27_io/basic_istream/sentry/char/1.cc: Likewise.
803         * testsuite/27_io/basic_istream/sentry/char/2.cc: Likewise.
804         * testsuite/27_io/basic_istream/sentry/char/3.cc: Likewise.
805         * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
806         * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
807         * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
808         * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
809         * testsuite/27_io/basic_istream/tellg/char/1.cc: Likewise.
810         * testsuite/27_io/basic_istream/tellg/char/2.cc: Likewise.
811         * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
812         * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
813         * testsuite/27_io/basic_istream/tellg/char/
814         exceptions_badbit_throw.cc: Likewise.
815         * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Likewise.
816         * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Likewise.
817         * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
818         * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
819         * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
820         * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
821         * testsuite/27_io/basic_istream/tellg/wchar_t/
822         exceptions_badbit_throw.cc: Likewise.
823         * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
824         * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
825         * testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
826         * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
827         * testsuite/27_io/basic_istringstream/cons/2020.cc: Likewise.
828         * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Likewise.
829         * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: Likewise.
830         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
831         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
832         * testsuite/27_io/basic_ofstream/cons/2020.cc: Likewise.
833         * testsuite/27_io/basic_ofstream/cons/char/1.cc: Likewise.
834         * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
835         * testsuite/27_io/basic_ofstream/rdbuf/char/2832.cc: Likewise.
836         * testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
837         * testsuite/27_io/basic_ostream/cons/char/9827.cc: Likewise.
838         * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: Likewise.
839         * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
840         * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
841         * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
842         * testsuite/27_io/basic_ostream/ends/char/2.cc: Likewise.
843         * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
844         * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
845         * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
846         * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
847         * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
848         * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
849         * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
850         Likewise.
851         * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
852         * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
853         * testsuite/27_io/basic_ostream/flush/wchar_t/
854         exceptions_badbit_throw.cc: Likewise.
855         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
856         Likewise.
857         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
858         Likewise.
859         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/3.cc:
860         Likewise.
861         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4.cc:
862         Likewise.
863         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
864         Likewise.
865         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/5.cc:
866         Likewise.
867         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
868         Likewise.
869         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
870         Likewise.
871         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
872         Likewise.
873         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
874         exceptions_badbit_throw.cc: Likewise.
875         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
876         exceptions_failbit_throw.cc: Likewise.
877         * testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc:
878         Likewise.
879         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
880         Likewise.
881         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
882         Likewise.
883         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/3.cc:
884         Likewise.
885         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4.cc:
886         Likewise.
887         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
888         Likewise.
889         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/5.cc:
890         Likewise.
891         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
892         Likewise.
893         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
894         Likewise.
895         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
896         9555-oa.cc: Likewise.
897         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
898         exceptions_badbit_throw.cc: Likewise.
899         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
900         exceptions_failbit_throw.cc: Likewise.
901         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
902         Likewise.
903         * testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
904         Likewise.
905         * testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
906         Likewise.
907         * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: Likewise.
908         * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
909         Likewise.
910         * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
911         Likewise.
912         * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: Likewise.
913         * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: Likewise.
914         * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: Likewise.
915         * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: Likewise.
916         * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: Likewise.
917         * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
918         Likewise.
919         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
920         11095-od.cc: Likewise.
921         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
922         11095-oe.cc: Likewise.
923         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
924         11095-of.cc: Likewise.
925         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/2.cc:
926         Likewise.
927         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
928         28277-1.cc: Likewise.
929         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
930         28277-2.cc: Likewise.
931         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
932         28277-3.cc: Likewise.
933         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
934         28277-4.cc: Likewise.
935         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/3.cc:
936         Likewise.
937         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
938         Likewise.
939         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/5.cc:
940         Likewise.
941         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/6.cc:
942         Likewise.
943         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
944         Likewise.
945         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
946         Likewise.
947         * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
948         9555-oc.cc: Likewise.
949         * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
950         * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Likewise.
951         * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Likewise.
952         * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: Likewise.
953         * testsuite/27_io/basic_ostream/inserters_other/char/9318-out.cc:
954         Likewise.
955         * testsuite/27_io/basic_ostream/inserters_other/char/9424-out.cc:
956         Likewise.
957         * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
958         Likewise.
959         * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
960         Likewise.
961         * testsuite/27_io/basic_ostream/inserters_other/char/
962         error_failbit.cc: Likewise.
963         * testsuite/27_io/basic_ostream/inserters_other/char/
964         exceptions_badbit_throw.cc: Likewise.
965         * testsuite/27_io/basic_ostream/inserters_other/char/
966         exceptions_failbit_throw.cc: Likewise.
967         * testsuite/27_io/basic_ostream/inserters_other/char/
968         exceptions_null.cc: Likewise.
969         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise.
970         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/3.cc: Likewise.
971         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/4.cc: Likewise.
972         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/5.cc: Likewise.
973         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
974         9318-out.cc: Likewise.
975         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
976         9424-out.cc: Likewise.
977         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
978         9555-oo.cc: Likewise.
979         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
980         error_code.cc: Likewise.
981         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
982         error_failbit.cc: Likewise.
983         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
984         exceptions_badbit_throw.cc: Likewise.
985         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
986         exceptions_failbit_throw.cc: Likewise.
987         * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
988         exceptions_null.cc: Likewise.
989         * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
990         * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
991         * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Likewise.
992         * testsuite/27_io/basic_ostream/seekp/char/2346-sstream.cc: Likewise.
993         * testsuite/27_io/basic_ostream/seekp/char/
994         exceptions_badbit_throw.cc: Likewise.
995         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise.
996         * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-sstream.cc: Likewise.
997         * testsuite/27_io/basic_ostream/seekp/wchar_t/
998         exceptions_badbit_throw.cc: Likewise.
999         * testsuite/27_io/basic_ostream/sentry/char/1.cc: Likewise.
1000         * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
1001         * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
1002         * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
1003         * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
1004         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
1005         * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
1006         * testsuite/27_io/basic_ostream/tellp/char/
1007         exceptions_badbit_throw.cc: Likewise.
1008         * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
1009         * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
1010         * testsuite/27_io/basic_ostream/tellp/wchar_t/
1011         exceptions_badbit_throw.cc: Likewise.
1012         * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
1013         * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
1014         * testsuite/27_io/basic_ostringstream/cons/2020.cc: Likewise.
1015         * testsuite/27_io/basic_ostringstream/cons/char/3.cc: Likewise.
1016         * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
1017         * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc: Likewise.
1018         * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
1019         * testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
1020         * testsuite/27_io/basic_ostringstream/str/char/2.cc: Likewise.
1021         * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
1022         * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
1023         * testsuite/27_io/basic_streambuf/cons/2020.cc: Likewise.
1024         * testsuite/27_io/basic_streambuf/cons/57394.cc: Likewise.
1025         * testsuite/27_io/basic_streambuf/cons/char/1.cc: Likewise.
1026         * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
1027         * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
1028         * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
1029         * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
1030         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
1031         * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
1032         * testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
1033         * testsuite/27_io/basic_streambuf/in_avail/char/1.cc: Likewise.
1034         * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Likewise.
1035         * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
1036         * testsuite/27_io/basic_streambuf/overflow/char/2.cc: Likewise.
1037         * testsuite/27_io/basic_streambuf/overflow/char/3599.cc: Likewise.
1038         * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
1039         * testsuite/27_io/basic_streambuf/overflow/wchar_t/2.cc: Likewise.
1040         * testsuite/27_io/basic_streambuf/overflow/wchar_t/3599.cc: Likewise.
1041         * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
1042         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
1043         * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
1044         * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
1045         * testsuite/27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
1046         * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
1047         * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
1048         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
1049         * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
1050         * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
1051         * testsuite/27_io/basic_stringbuf/cons/2020.cc: Likewise.
1052         * testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
1053         * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
1054         * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Likewise.
1055         * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
1056         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Likewise.
1057         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
1058         * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Likewise.
1059         * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
1060         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Likewise.
1061         * testsuite/27_io/basic_stringbuf/overflow/char/2.cc: Likewise.
1062         * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: Likewise.
1063         * testsuite/27_io/basic_stringbuf/overflow/char/3599.cc: Likewise.
1064         * testsuite/27_io/basic_stringbuf/overflow/char/9988.cc: Likewise.
1065         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc: Likewise.
1066         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/2.cc: Likewise.
1067         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Likewise.
1068         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/3599.cc: Likewise.
1069         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/9988.cc: Likewise.
1070         * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: Likewise.
1071         * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
1072         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
1073         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
1074         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
1075         * testsuite/27_io/basic_stringbuf/sbumpc/char/9825.cc: Likewise.
1076         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
1077         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/9825.cc: Likewise.
1078         * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
1079         * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: Likewise.
1080         * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: Likewise.
1081         * testsuite/27_io/basic_stringbuf/seekoff/char/2.cc: Likewise.
1082         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
1083         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
1084         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: Likewise.
1085         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/2.cc: Likewise.
1086         * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
1087         * testsuite/27_io/basic_stringbuf/seekpos/char/2.cc: Likewise.
1088         * testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: Likewise.
1089         * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Likewise.
1090         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
1091         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/2.cc: Likewise.
1092         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: Likewise.
1093         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/3.cc: Likewise.
1094         * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Likewise.
1095         * testsuite/27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
1096         * testsuite/27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
1097         * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
1098         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Likewise.
1099         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/2.cc: Likewise.
1100         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/3.cc: Likewise.
1101         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
1102         * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
1103         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
1104         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
1105         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
1106         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
1107         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
1108         * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
1109         * testsuite/27_io/basic_stringbuf/sputbackc/char/9425.cc: Likewise.
1110         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
1111         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc: Likewise.
1112         * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Likewise.
1113         * testsuite/27_io/basic_stringbuf/sputc/char/9404-1.cc: Likewise.
1114         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Likewise.
1115         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/9404-1.cc: Likewise.
1116         * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Likewise.
1117         * testsuite/27_io/basic_stringbuf/sputn/char/9404-2.cc: Likewise.
1118         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Likewise.
1119         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/9404-2.cc: Likewise.
1120         * testsuite/27_io/basic_stringbuf/str/char/1.cc: Likewise.
1121         * testsuite/27_io/basic_stringbuf/str/char/2.cc: Likewise.
1122         * testsuite/27_io/basic_stringbuf/str/char/3.cc: Likewise.
1123         * testsuite/27_io/basic_stringbuf/str/char/3955.cc: Likewise.
1124         * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Likewise.
1125         * testsuite/27_io/basic_stringbuf/str/wchar_t/2.cc: Likewise.
1126         * testsuite/27_io/basic_stringbuf/str/wchar_t/3.cc: Likewise.
1127         * testsuite/27_io/basic_stringbuf/str/wchar_t/3955.cc: Likewise.
1128         * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
1129         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
1130         * testsuite/27_io/basic_stringbuf/sync/char/1057.cc: Likewise.
1131         * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
1132         * testsuite/27_io/basic_stringstream/cons/2020.cc: Likewise.
1133         * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Likewise.
1134         * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: Likewise.
1135         * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
1136         * testsuite/27_io/basic_stringstream/str/char/2.cc: Likewise.
1137         * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
1138         * testsuite/27_io/basic_stringstream/str/char/4.cc: Likewise.
1139         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
1140         * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
1141         * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
1142         * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
1143         * testsuite/27_io/fpos/11450.cc: Likewise.
1144         * testsuite/27_io/fpos/14252.cc: Likewise.
1145         * testsuite/27_io/fpos/14320-1.cc: Likewise.
1146         * testsuite/27_io/fpos/14320-2.cc: Likewise.
1147         * testsuite/27_io/fpos/14320-3.cc: Likewise.
1148         * testsuite/27_io/fpos/14320-4.cc: Likewise.
1149         * testsuite/27_io/fpos/14320-5.cc: Likewise.
1150         * testsuite/27_io/fpos/14775.cc: Likewise.
1151         * testsuite/27_io/fpos/mbstate_t/1.cc: Likewise.
1152         * testsuite/27_io/fpos/mbstate_t/12065.cc: Likewise.
1153         * testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
1154         * testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
1155         * testsuite/27_io/ios_base/callbacks/1.cc: Likewise.
1156         * testsuite/27_io/ios_base/failure/what-1.cc: Likewise.
1157         * testsuite/27_io/ios_base/failure/what-2.cc: Likewise.
1158         * testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
1159         * testsuite/27_io/ios_base/failure/what-big.cc: Likewise.
1160         * testsuite/27_io/ios_base/state/1.cc: Likewise.
1161         * testsuite/27_io/ios_base/storage/1.cc: Likewise.
1162         * testsuite/27_io/ios_base/storage/11584.cc: Likewise.
1163         * testsuite/27_io/ios_base/storage/2.cc: Likewise.
1164         * testsuite/27_io/ios_base/sync_with_stdio/2.cc: Likewise.
1165         * testsuite/27_io/manipulators/adjustfield/char/1.cc: Likewise.
1166         * testsuite/27_io/manipulators/adjustfield/char/2.cc
1167         * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: Likewise.
1168         * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
1169         * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
1170         * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
1171         * testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
1172         * testsuite/27_io/manipulators/extended/get_money/char/51288.cc:
1173         Likewise.
1174         * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
1175         Likewise.
1176         * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
1177         Likewise.
1178         * testsuite/27_io/manipulators/extended/get_time/char/1.cc
1179         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Likewise.
1180         * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: Likewise.
1181         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Likewise.
1182         * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
1183         * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
1184         Likewise.
1185         * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
1186         Likewise.
1187         * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
1188         Likewise.
1189         * testsuite/27_io/manipulators/extended/put_time/char/1.cc: Likewise.
1190         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Likewise.
1191         * testsuite/27_io/manipulators/extended/put_time/wchar_t/1.cc: Likewise.
1192         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Likewise.
1193         * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
1194         * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
1195         * testsuite/27_io/manipulators/standard/char/dr2344.cc: Likewise.
1196         * testsuite/27_io/manipulators/standard/char/quoted.cc: Likewise.
1197         * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
1198         * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
1199         * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: Likewise.
1200         * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: Likewise.
1201         * testsuite/27_io/objects/char/1.cc: Likewise.
1202         * testsuite/27_io/objects/char/10.cc: Likewise.
1203         * testsuite/27_io/objects/char/3045.cc: Likewise.
1204         * testsuite/27_io/objects/char/41037.cc: Likewise.
1205         * testsuite/27_io/objects/char/5.cc: Likewise.
1206         * testsuite/27_io/objects/char/6.cc: Likewise.
1207         * testsuite/27_io/objects/char/6548_xin.cc: Likewise.
1208         * testsuite/27_io/objects/char/6648-1_xin.cc: Likewise.
1209         * testsuite/27_io/objects/char/6648-2_xin.cc: Likewise.
1210         * testsuite/27_io/objects/char/7744_xin.cc: Likewise.
1211         * testsuite/27_io/objects/char/8.cc: Likewise.
1212         * testsuite/27_io/objects/char/9.cc: Likewise.
1213         * testsuite/27_io/objects/char/9661-2_xin.cc: Likewise.
1214         * testsuite/27_io/objects/char/dr455.cc: Likewise.
1215         * testsuite/27_io/objects/wchar_t/1.cc: Likewise.
1216         * testsuite/27_io/objects/wchar_t/10.cc: Likewise.
1217         * testsuite/27_io/objects/wchar_t/11.cc: Likewise.
1218         * testsuite/27_io/objects/wchar_t/12.cc: Likewise.
1219         * testsuite/27_io/objects/wchar_t/13.cc: Likewise.
1220         * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Likewise.
1221         * testsuite/27_io/objects/wchar_t/3045.cc: Likewise.
1222         * testsuite/27_io/objects/wchar_t/41037.cc: Likewise.
1223         * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
1224         * testsuite/27_io/objects/wchar_t/6548_xin.cc: Likewise.
1225         * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: Likewise.
1226         * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: Likewise.
1227         * testsuite/27_io/objects/wchar_t/7744_xin.cc: Likewise.
1228         * testsuite/27_io/objects/wchar_t/8.cc: Likewise.
1229         * testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
1230         * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: Likewise.
1231         * testsuite/27_io/objects/wchar_t/9662.cc: Likewise.
1232         * testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
1233         * testsuite/27_io/types/3.cc: Likewise.
1235 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
1237         PR libstdc++/77994
1238         * include/bits/stl_algo.h (sample): Convert size argument to iterator
1239         difference type.
1240         * include/experimental/algorithm (experimental::sample): Likewise.
1241         * testsuite/25_algorithms/sample/2.cc: New test.
1243 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1245         * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
1246         * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
1248 2016-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
1250         * testsuite/array/capacity/empty.cc: Remove 'test' variables.
1251         * testsuite/array/capacity/max_size.cc: Likewise.
1252         * testsuite/array/capacity/size.cc: Likewise.
1253         * testsuite/array/comparison_operators/equal.cc: Likewise.
1254         * testsuite/array/comparison_operators/greater.cc: Likewise.
1255         * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
1256         * testsuite/array/comparison_operators/less.cc: Likewise.
1257         * testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
1258         * testsuite/array/comparison_operators/not_equal.cc: Likewise.
1259         * testsuite/array/element_access/54388.cc: Likewise.
1260         * testsuite/array/element_access/at_out_of_range.cc: Likewise.
1261         * testsuite/array/element_access/back.cc: Likewise.
1262         * testsuite/array/element_access/data.cc: Likewise.
1263         * testsuite/array/element_access/front.cc: Likewise.
1264         * testsuite/array/iterators/end_is_one_past.cc: Likewise.
1265         * testsuite/array/requirements/contiguous.cc: Likewise.
1266         * testsuite/array/requirements/fill.cc: Likewise.
1267         * testsuite/array/requirements/member_swap.cc: Likewise.
1268         * testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
1269         * testsuite/array/specialized_algorithms/swap.cc: Likewise.
1270         * testsuite/array/tuple_interface/tuple_element.cc: Likewise.
1271         * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
1272         * testsuite/array/tuple_interface/tuple_size.cc: Likewise.
1273         * testsuite/bitset/all/1.cc: Likewise.
1274         * testsuite/bitset/cons/1.cc: Likewise.
1275         * testsuite/bitset/cons/16020.cc: Likewise.
1276         * testsuite/bitset/cons/2.cc: Likewise.
1277         * testsuite/bitset/cons/3.cc: Likewise.
1278         * testsuite/bitset/cons/50268.cc: Likewise.
1279         * testsuite/bitset/cons/6282.cc: Likewise.
1280         * testsuite/bitset/cons/dr1325-2.cc: Likewise.
1281         * testsuite/bitset/cons/dr396.cc: Likewise.
1282         * testsuite/bitset/ext/15361.cc: Likewise.
1283         * testsuite/bitset/input/1.cc: Likewise.
1284         * testsuite/bitset/operations/1.cc: Likewise.
1285         * testsuite/bitset/operations/13838.cc: Likewise.
1286         * testsuite/bitset/operations/2.cc: Likewise.
1287         * testsuite/bitset/test/1.cc: Likewise.
1288         * testsuite/bitset/to_string/1.cc: Likewise.
1289         * testsuite/bitset/to_string/dr396.cc: Likewise.
1290         * testsuite/bitset/to_ullong/1.cc: Likewise.
1291         * testsuite/bitset/to_ulong/1.cc: Likewise.
1292         * testsuite/deque/allocator/copy.cc: Likewise.
1293         * testsuite/deque/allocator/copy_assign.cc: Likewise.
1294         * testsuite/deque/allocator/ext_ptr.cc: Likewise.
1295         * testsuite/deque/allocator/minimal.cc: Likewise.
1296         * testsuite/deque/allocator/move.cc: Likewise.
1297         * testsuite/deque/allocator/move_assign.cc: Likewise.
1298         * testsuite/deque/allocator/swap.cc: Likewise.
1299         * testsuite/deque/capacity/29134-2.cc: Likewise.
1300         * testsuite/deque/capacity/29134.cc: Likewise.
1301         * testsuite/deque/capacity/moveable.cc: Likewise.
1302         * testsuite/deque/capacity/resize_size.cc: Likewise.
1303         * testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
1304         * testsuite/deque/cons/1.cc: Likewise.
1305         * testsuite/deque/cons/2.cc: Likewise.
1306         * testsuite/deque/cons/assign/1.cc: Likewise.
1307         * testsuite/deque/cons/cons_size.cc: Likewise.
1308         * testsuite/deque/cons/moveable.cc: Likewise.
1309         * testsuite/deque/modifiers/erase/1.cc: Likewise.
1310         * testsuite/deque/modifiers/erase/2.cc: Likewise.
1311         * testsuite/deque/modifiers/erase/3.cc: Likewise.
1312         * testsuite/deque/modifiers/erase/moveable.cc: Likewise.
1313         * testsuite/deque/modifiers/moveable.cc: Likewise.
1314         * testsuite/deque/modifiers/push_back/49836.cc: Likewise.
1315         * testsuite/deque/modifiers/push_front/49836.cc: Likewise.
1316         * testsuite/deque/modifiers/swap/1.cc: Likewise.
1317         * testsuite/deque/modifiers/swap/2.cc: Likewise.
1318         * testsuite/deque/modifiers/swap/3.cc: Likewise.
1319         * testsuite/deque/operators/1.cc: Likewise.
1320         * testsuite/deque/operators/2.cc: Likewise.
1321         * testsuite/forward_list/allocator/copy.cc: Likewise.
1322         * testsuite/forward_list/allocator/copy_assign.cc: Likewise.
1323         * testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
1324         * testsuite/forward_list/allocator/minimal.cc: Likewise.
1325         * testsuite/forward_list/allocator/move.cc: Likewise.
1326         * testsuite/forward_list/allocator/move_assign.cc: Likewise.
1327         * testsuite/forward_list/allocator/swap.cc: Likewise.
1328         * testsuite/forward_list/capacity/1.cc: Likewise.
1329         * testsuite/forward_list/capacity/resize_size.cc: Likewise.
1330         * testsuite/forward_list/comparable.cc: Likewise.
1331         * testsuite/forward_list/cons/1.cc: Likewise.
1332         * testsuite/forward_list/cons/2.cc: Likewise.
1333         * testsuite/forward_list/cons/3.cc: Likewise.
1334         * testsuite/forward_list/cons/4.cc: Likewise.
1335         * testsuite/forward_list/cons/5.cc: Likewise.
1336         * testsuite/forward_list/cons/6.cc: Likewise.
1337         * testsuite/forward_list/cons/7.cc: Likewise.
1338         * testsuite/forward_list/cons/8.cc: Likewise.
1339         * testsuite/forward_list/cons/9.cc: Likewise.
1340         * testsuite/forward_list/cons/cons_size.cc: Likewise.
1341         * testsuite/forward_list/cons/moveable.cc: Likewise.
1342         * testsuite/forward_list/debug/clear.cc: Likewise.
1343         * testsuite/forward_list/debug/construct4_neg.cc: Likewise.
1344         * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
1345         * testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
1346         * testsuite/forward_list/debug/move_constructor.cc: Likewise.
1347         * testsuite/forward_list/debug/move_neg.cc: Likewise.
1348         * testsuite/forward_list/debug/splice_after.cc: Likewise.
1349         * testsuite/forward_list/debug/swap.cc: Likewise.
1350         * testsuite/forward_list/modifiers/1.cc: Likewise.
1351         * testsuite/forward_list/modifiers/2.cc: Likewise.
1352         * testsuite/forward_list/modifiers/3.cc: Likewise.
1353         * testsuite/forward_list/modifiers/4.cc: Likewise.
1354         * testsuite/forward_list/modifiers/5.cc: Likewise.
1355         * testsuite/forward_list/modifiers/6.cc: Likewise.
1356         * testsuite/forward_list/operations/1.cc: Likewise.
1357         * testsuite/forward_list/operations/2.cc: Likewise.
1358         * testsuite/forward_list/operations/3.cc: Likewise.
1359         * testsuite/forward_list/operations/4.cc: Likewise.
1360         * testsuite/forward_list/operations/5.cc: Likewise.
1361         * testsuite/forward_list/operations/6.cc: Likewise.
1362         * testsuite/forward_list/operations/7.cc: Likewise.
1363         * testsuite/forward_list/operations/remove_freed.cc: Likewise.
1364         * testsuite/list/61347.cc: Likewise.
1365         * testsuite/list/allocator/copy.cc: Likewise.
1366         * testsuite/list/allocator/copy_assign.cc: Likewise.
1367         * testsuite/list/allocator/minimal.cc: Likewise.
1368         * testsuite/list/allocator/move.cc: Likewise.
1369         * testsuite/list/allocator/move_assign.cc: Likewise.
1370         * testsuite/list/allocator/swap.cc: Likewise.
1371         * testsuite/list/capacity/1.h: Likewise.
1372         * testsuite/list/capacity/29134.cc: Likewise.
1373         * testsuite/list/capacity/resize_size.cc: Likewise.
1374         * testsuite/list/cons/1.h: Likewise.
1375         * testsuite/list/cons/2.h: Likewise.
1376         * testsuite/list/cons/3.h: Likewise.
1377         * testsuite/list/cons/4.h: Likewise.
1378         * testsuite/list/cons/5.h: Likewise.
1379         * testsuite/list/cons/6.h: Likewise.
1380         * testsuite/list/cons/7.h: Likewise.
1381         * testsuite/list/cons/8.h: Likewise.
1382         * testsuite/list/cons/9.h: Likewise.
1383         * testsuite/list/cons/cons_size.cc: Likewise.
1384         * testsuite/list/cons/moveable.h: Likewise.
1385         * testsuite/list/debug/invalidation/1.cc: Likewise.
1386         * testsuite/list/debug/invalidation/2.cc: Likewise.
1387         * testsuite/list/debug/invalidation/3.cc: Likewise.
1388         * testsuite/list/debug/invalidation/4.cc: Likewise.
1389         * testsuite/list/modifiers/1.h: Likewise.
1390         * testsuite/list/modifiers/2.h: Likewise.
1391         * testsuite/list/modifiers/3.h: Likewise.
1392         * testsuite/list/modifiers/insert/25288.h: Likewise.
1393         * testsuite/list/modifiers/swap/1.h: Likewise.
1394         * testsuite/list/modifiers/swap/2.h: Likewise.
1395         * testsuite/list/modifiers/swap/3.h: Likewise.
1396         * testsuite/list/operations/1.h: Likewise.
1397         * testsuite/list/operations/2.h: Likewise.
1398         * testsuite/list/operations/3.h: Likewise.
1399         * testsuite/list/operations/4.h: Likewise.
1400         * testsuite/list/operations/42352.cc: Likewise.
1401         * testsuite/map/allocator/copy.cc: Likewise.
1402         * testsuite/map/allocator/copy_assign.cc: Likewise.
1403         * testsuite/map/allocator/init-list.cc: Likewise.
1404         * testsuite/map/allocator/minimal.cc: Likewise.
1405         * testsuite/map/allocator/move.cc: Likewise.
1406         * testsuite/map/allocator/move_assign.cc: Likewise.
1407         * testsuite/map/allocator/swap.cc: Likewise.
1408         * testsuite/map/capacity/29134.cc: Likewise.
1409         * testsuite/map/cons/moveable.cc: Likewise.
1410         * testsuite/map/debug/construct5_neg.cc: Likewise.
1411         * testsuite/map/debug/move_assign_neg.cc: Likewise.
1412         * testsuite/map/debug/move_neg.cc: Likewise.
1413         * testsuite/map/element_access/1.cc: Likewise.
1414         * testsuite/map/element_access/2.cc: Likewise.
1415         * testsuite/map/element_access/39901.cc: Likewise.
1416         * testsuite/map/init-list.cc: Likewise.
1417         * testsuite/map/modifiers/dr130.cc: Likewise.
1418         * testsuite/map/modifiers/emplace/1.cc: Likewise.
1419         * testsuite/map/modifiers/extract.cc: Likewise.
1420         * testsuite/map/modifiers/insert/1.cc: Likewise.
1421         * testsuite/map/modifiers/insert/16813.cc: Likewise.
1422         * testsuite/map/modifiers/insert/2.cc: Likewise.
1423         * testsuite/map/modifiers/insert/3.cc: Likewise.
1424         * testsuite/map/modifiers/insert/4.cc: Likewise.
1425         * testsuite/map/modifiers/insert/5.cc: Likewise.
1426         * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
1427         * testsuite/map/modifiers/merge.cc: Likewise.
1428         * testsuite/map/modifiers/swap/1.cc: Likewise.
1429         * testsuite/map/modifiers/swap/2.cc: Likewise.
1430         * testsuite/map/modifiers/swap/3.cc: Likewise.
1431         * testsuite/map/modifiers/try_emplace/1.cc: Likewise.
1432         * testsuite/map/operations/1.cc: Likewise.
1433         * testsuite/map/operations/count.cc: Likewise.
1434         * testsuite/map/operators/1_neg.cc: Likewise.
1435         * testsuite/map/operators/2.cc: Likewise.
1436         * testsuite/multimap/allocator/copy.cc: Likewise.
1437         * testsuite/multimap/allocator/copy_assign.cc: Likewise.
1438         * testsuite/multimap/allocator/init-list.cc: Likewise.
1439         * testsuite/multimap/allocator/minimal.cc: Likewise.
1440         * testsuite/multimap/allocator/move.cc: Likewise.
1441         * testsuite/multimap/allocator/move_assign.cc: Likewise.
1442         * testsuite/multimap/allocator/swap.cc: Likewise.
1443         * testsuite/multimap/capacity/29134.cc: Likewise.
1444         * testsuite/multimap/cons/moveable.cc: Likewise.
1445         * testsuite/multimap/debug/construct5_neg.cc: Likewise.
1446         * testsuite/multimap/debug/move_assign_neg.cc: Likewise.
1447         * testsuite/multimap/debug/move_neg.cc: Likewise.
1448         * testsuite/multimap/init-list.cc: Likewise.
1449         * testsuite/multimap/modifiers/dr130.cc: Likewise.
1450         * testsuite/multimap/modifiers/emplace/1.cc: Likewise.
1451         * testsuite/multimap/modifiers/extract.cc: Likewise.
1452         * testsuite/multimap/modifiers/insert/1.cc: Likewise.
1453         * testsuite/multimap/modifiers/insert/2.cc: Likewise.
1454         * testsuite/multimap/modifiers/insert/22102.cc: Likewise.
1455         * testsuite/multimap/modifiers/insert/3.cc: Likewise.
1456         * testsuite/multimap/modifiers/insert/4.cc: Likewise.
1457         * testsuite/multimap/modifiers/merge.cc: Likewise.
1458         * testsuite/multimap/modifiers/swap/1.cc: Likewise.
1459         * testsuite/multimap/modifiers/swap/2.cc: Likewise.
1460         * testsuite/multimap/modifiers/swap/3.cc: Likewise.
1461         * testsuite/multimap/operations/1.cc: Likewise.
1462         * testsuite/multimap/operations/count.cc: Likewise.
1463         * testsuite/multiset/allocator/copy.cc: Likewise.
1464         * testsuite/multiset/allocator/copy_assign.cc: Likewise.
1465         * testsuite/multiset/allocator/init-list.cc: Likewise.
1466         * testsuite/multiset/allocator/minimal.cc: Likewise.
1467         * testsuite/multiset/allocator/move.cc: Likewise.
1468         * testsuite/multiset/allocator/move_assign.cc: Likewise.
1469         * testsuite/multiset/allocator/swap.cc: Likewise.
1470         * testsuite/multiset/capacity/29134.cc: Likewise.
1471         * testsuite/multiset/cons/moveable.cc: Likewise.
1472         * testsuite/multiset/debug/construct5_neg.cc: Likewise.
1473         * testsuite/multiset/debug/invalidation/2.cc: Likewise.
1474         * testsuite/multiset/debug/move_assign_neg.cc: Likewise.
1475         * testsuite/multiset/debug/move_neg.cc: Likewise.
1476         * testsuite/multiset/init-list.cc: Likewise.
1477         * testsuite/multiset/modifiers/dr130.cc: Likewise.
1478         * testsuite/multiset/modifiers/emplace/1.cc: Likewise.
1479         * testsuite/multiset/modifiers/extract.cc: Likewise.
1480         * testsuite/multiset/modifiers/insert/1.cc: Likewise.
1481         * testsuite/multiset/modifiers/insert/2.cc: Likewise.
1482         * testsuite/multiset/modifiers/insert/22102.cc: Likewise.
1483         * testsuite/multiset/modifiers/insert/3.cc: Likewise.
1484         * testsuite/multiset/modifiers/insert/4.cc: Likewise.
1485         * testsuite/multiset/modifiers/merge.cc: Likewise.
1486         * testsuite/multiset/modifiers/swap/1.cc: Likewise.
1487         * testsuite/multiset/modifiers/swap/2.cc: Likewise.
1488         * testsuite/multiset/modifiers/swap/3.cc: Likewise.
1489         * testsuite/multiset/operations/1.cc: Likewise.
1490         * testsuite/multiset/operations/count.cc: Likewise.
1491         * testsuite/priority_queue/moveable.cc: Likewise.
1492         * testsuite/queue/moveable.cc: Likewise.
1493         * testsuite/set/allocator/copy.cc: Likewise.
1494         * testsuite/set/allocator/copy_assign.cc: Likewise.
1495         * testsuite/set/allocator/init-list.cc: Likewise.
1496         * testsuite/set/allocator/minimal.cc: Likewise.
1497         * testsuite/set/allocator/move.cc: Likewise.
1498         * testsuite/set/allocator/move_assign.cc: Likewise.
1499         * testsuite/set/allocator/swap.cc: Likewise.
1500         * testsuite/set/capacity/29134.cc: Likewise.
1501         * testsuite/set/cons/moveable.cc: Likewise.
1502         * testsuite/set/debug/construct5_neg.cc: Likewise.
1503         * testsuite/set/debug/invalidation/2.cc: Likewise.
1504         * testsuite/set/debug/move_assign_neg.cc: Likewise.
1505         * testsuite/set/debug/move_neg.cc: Likewise.
1506         * testsuite/set/init-list.cc: Likewise.
1507         * testsuite/set/modifiers/17948.cc: Likewise.
1508         * testsuite/set/modifiers/dr130.cc: Likewise.
1509         * testsuite/set/modifiers/emplace/1.cc: Likewise.
1510         * testsuite/set/modifiers/extract.cc: Likewise.
1511         * testsuite/set/modifiers/insert/1.cc: Likewise.
1512         * testsuite/set/modifiers/insert/2.cc: Likewise.
1513         * testsuite/set/modifiers/insert/3.cc: Likewise.
1514         * testsuite/set/modifiers/merge.cc: Likewise.
1515         * testsuite/set/modifiers/swap/1.cc: Likewise.
1516         * testsuite/set/modifiers/swap/2.cc: Likewise.
1517         * testsuite/set/modifiers/swap/3.cc: Likewise.
1518         * testsuite/set/operations/1.cc: Likewise.
1519         * testsuite/set/operations/count.cc: Likewise.
1520         * testsuite/set/operators/1_neg.cc: Likewise.
1521         * testsuite/unordered_map/allocator/copy.cc: Likewise.
1522         * testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
1523         * testsuite/unordered_map/allocator/minimal.cc: Likewise.
1524         * testsuite/unordered_map/allocator/move.cc: Likewise.
1525         * testsuite/unordered_map/allocator/move_assign.cc: Likewise.
1526         * testsuite/unordered_map/allocator/swap.cc: Likewise.
1527         * testsuite/unordered_map/cons/moveable.cc: Likewise.
1528         * testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
1529         * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
1530         * testsuite/unordered_map/debug/move_neg.cc: Likewise.
1531         * testsuite/unordered_map/dr761.cc: Likewise.
1532         * testsuite/unordered_map/erase/1.cc: Likewise.
1533         * testsuite/unordered_map/erase/24061-map.cc: Likewise.
1534         * testsuite/unordered_map/erase/54276.cc: Likewise.
1535         * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
1536         * testsuite/unordered_map/init-list.cc: Likewise.
1537         * testsuite/unordered_map/insert/24061-map.cc: Likewise.
1538         * testsuite/unordered_map/insert/57619.C: Likewise.
1539         * testsuite/unordered_map/insert/array_syntax.cc: Likewise.
1540         * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
1541         * testsuite/unordered_map/insert/map_range.cc: Likewise.
1542         * testsuite/unordered_map/insert/map_single.cc: Likewise.
1543         * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
1544         * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
1545         * testsuite/unordered_map/modifiers/61667.cc: Likewise.
1546         * testsuite/unordered_map/modifiers/emplace.cc: Likewise.
1547         * testsuite/unordered_map/modifiers/extract.cc: Likewise.
1548         * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
1549         * testsuite/unordered_map/modifiers/merge.cc: Likewise.
1550         * testsuite/unordered_map/modifiers/reserve.cc: Likewise.
1551         * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
1552         * testsuite/unordered_map/operations/count.cc: Likewise.
1553         * testsuite/unordered_map/operators/1.cc: Likewise.
1554         * testsuite/unordered_map/operators/2.cc: Likewise.
1555         * testsuite/unordered_multimap/allocator/copy.cc: Likewise.
1556         * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
1557         * testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
1558         * testsuite/unordered_multimap/allocator/move.cc: Likewise.
1559         * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
1560         * testsuite/unordered_multimap/allocator/swap.cc: Likewise.
1561         * testsuite/unordered_multimap/cons/moveable.cc: Likewise.
1562         * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
1563         * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
1564         * testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
1565         * testsuite/unordered_multimap/erase/1.cc: Likewise.
1566         * testsuite/unordered_multimap/erase/2.cc: Likewise.
1567         * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
1568         * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
1569         * testsuite/unordered_multimap/erase/54276.cc: Likewise.
1570         * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
1571         * testsuite/unordered_multimap/init-list.cc: Likewise.
1572         * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
1573         * testsuite/unordered_multimap/insert/51866.cc: Likewise.
1574         * testsuite/unordered_multimap/insert/52476.cc: Likewise.
1575         * testsuite/unordered_multimap/insert/53115.cc: Likewise.
1576         * testsuite/unordered_multimap/insert/57619.C: Likewise.
1577         * testsuite/unordered_multimap/insert/hint.cc: Likewise.
1578         * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
1579         * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
1580         * testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
1581         Likewise.
1582         * testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
1583         Likewise.
1584         * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
1585         * testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
1586         * testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
1587         * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
1588         * testsuite/unordered_multimap/operations/count.cc: Likewise.
1589         * testsuite/unordered_multimap/operators/1.cc: Likewise.
1590         * testsuite/unordered_multimap/operators/2.cc: Likewise.
1591         * testsuite/unordered_multiset/allocator/copy.cc: Likewise.
1592         * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
1593         * testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
1594         * testsuite/unordered_multiset/allocator/move.cc: Likewise.
1595         * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
1596         * testsuite/unordered_multiset/allocator/swap.cc: Likewise.
1597         * testsuite/unordered_multiset/cons/copy.cc: Likewise.
1598         * testsuite/unordered_multiset/cons/moveable.cc: Likewise.
1599         * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
1600         * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
1601         * testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
1602         * testsuite/unordered_multiset/erase/1.cc: Likewise.
1603         * testsuite/unordered_multiset/erase/2.cc: Likewise.
1604         * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
1605         * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
1606         * testsuite/unordered_multiset/init-list.cc: Likewise.
1607         * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
1608         * testsuite/unordered_multiset/insert/51866.cc: Likewise.
1609         * testsuite/unordered_multiset/insert/52476.cc: Likewise.
1610         * testsuite/unordered_multiset/insert/53115.cc: Likewise.
1611         * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
1612         * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
1613         * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
1614         * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
1615         * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
1616         * testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
1617         * testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
1618         * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
1619         * testsuite/unordered_multiset/operations/count.cc: Likewise.
1620         * testsuite/unordered_multiset/operators/1.cc: Likewise.
1621         * testsuite/unordered_set/allocator/copy.cc: Likewise.
1622         * testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
1623         * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
1624         * testsuite/unordered_set/allocator/minimal.cc: Likewise.
1625         * testsuite/unordered_set/allocator/move.cc: Likewise.
1626         * testsuite/unordered_set/allocator/move_assign.cc: Likewise.
1627         * testsuite/unordered_set/allocator/swap.cc: Likewise.
1628         * testsuite/unordered_set/buckets/swap.cc: Likewise.
1629         * testsuite/unordered_set/cons/moveable.cc: Likewise.
1630         * testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
1631         * testsuite/unordered_set/debug/debug_functions.cc: Likewise.
1632         * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
1633         * testsuite/unordered_set/debug/move_neg.cc: Likewise.
1634         * testsuite/unordered_set/erase/1.cc: Likewise.
1635         * testsuite/unordered_set/erase/24061-set.cc: Likewise.
1636         * testsuite/unordered_set/hash_policy/26132.cc: Likewise.
1637         * testsuite/unordered_set/hash_policy/71181.cc: Likewise.
1638         * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
1639         * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
1640         * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
1641         * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
1642         * testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
1643         * testsuite/unordered_set/init-list.cc: Likewise.
1644         * testsuite/unordered_set/insert/24061-set.cc: Likewise.
1645         * testsuite/unordered_set/insert/hash_policy.cc: Likewise.
1646         * testsuite/unordered_set/insert/move_range.cc: Likewise.
1647         * testsuite/unordered_set/insert/set_range.cc: Likewise.
1648         * testsuite/unordered_set/insert/set_single.cc: Likewise.
1649         * testsuite/unordered_set/insert/set_single_move.cc: Likewise.
1650         * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
1651         * testsuite/unordered_set/modifiers/emplace.cc: Likewise.
1652         * testsuite/unordered_set/modifiers/extract.cc: Likewise.
1653         * testsuite/unordered_set/modifiers/merge.cc: Likewise.
1654         * testsuite/unordered_set/modifiers/reserve.cc: Likewise.
1655         * testsuite/unordered_set/modifiers/swap.cc: Likewise.
1656         * testsuite/unordered_set/operations/count.cc: Likewise.
1657         * testsuite/unordered_set/operators/1.cc: Likewise.
1658         * testsuite/vector/allocator/copy.cc: Likewise.
1659         * testsuite/vector/allocator/copy_assign.cc: Likewise.
1660         * testsuite/vector/allocator/ext_ptr.cc: Likewise.
1661         * testsuite/vector/allocator/minimal.cc: Likewise.
1662         * testsuite/vector/allocator/move.cc: Likewise.
1663         * testsuite/vector/allocator/move_assign.cc: Likewise.
1664         * testsuite/vector/allocator/swap.cc: Likewise.
1665         * testsuite/vector/bool/6886.cc: Likewise.
1666         * testsuite/vector/bool/72847.cc: Likewise.
1667         * testsuite/vector/bool/allocator/copy.cc: Likewise.
1668         * testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
1669         * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
1670         * testsuite/vector/bool/allocator/move.cc: Likewise.
1671         * testsuite/vector/bool/allocator/move_assign.cc: Likewise.
1672         * testsuite/vector/bool/allocator/swap.cc: Likewise.
1673         * testsuite/vector/bool/capacity/1.cc: Likewise.
1674         * testsuite/vector/bool/capacity/29134.cc: Likewise.
1675         * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
1676         * testsuite/vector/bool/cons/1.cc: Likewise.
1677         * testsuite/vector/bool/cons/2.cc: Likewise.
1678         * testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
1679         * testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
1680         * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
1681         * testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
1682         * testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
1683         * testsuite/vector/bool/swap.cc: Likewise.
1684         * testsuite/vector/capacity/1.cc: Likewise.
1685         * testsuite/vector/capacity/2.cc: Likewise.
1686         * testsuite/vector/capacity/29134-2.cc: Likewise.
1687         * testsuite/vector/capacity/29134.cc: Likewise.
1688         * testsuite/vector/capacity/44190.cc: Likewise.
1689         * testsuite/vector/capacity/8230.cc: Likewise.
1690         * testsuite/vector/capacity/reserve/moveable.cc: Likewise.
1691         * testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
1692         * testsuite/vector/capacity/resize/1.cc: Likewise.
1693         * testsuite/vector/capacity/resize/moveable.cc: Likewise.
1694         * testsuite/vector/capacity/resize/moveable2.cc: Likewise.
1695         * testsuite/vector/capacity/resize/resize_size.cc: Likewise.
1696         * testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
1697         * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
1698         * testsuite/vector/cons/3.cc: Likewise.
1699         * testsuite/vector/cons/4.cc: Likewise.
1700         * testsuite/vector/cons/cons_size.cc: Likewise.
1701         * testsuite/vector/cons/moveable.cc: Likewise.
1702         * testsuite/vector/data_access/1.cc: Likewise.
1703         * testsuite/vector/debug/debug_functions.cc: Likewise.
1704         * testsuite/vector/debug/move_assign_neg.cc: Likewise.
1705         * testsuite/vector/debug/move_neg.cc: Likewise.
1706         * testsuite/vector/debug/multithreaded_swap.cc: Likewise.
1707         * testsuite/vector/element_access/1.cc: Likewise.
1708         * testsuite/vector/ext_pointer/citerators.cc: Likewise.
1709         * testsuite/vector/ext_pointer/data_access.cc: Likewise.
1710         * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
1711         * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
1712         * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
1713         * testsuite/vector/ext_pointer/resize.cc: Likewise.
1714         * testsuite/vector/modifiers/1.cc: Likewise.
1715         * testsuite/vector/modifiers/2.cc: Likewise.
1716         * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
1717         * testsuite/vector/modifiers/erase/1.cc: Likewise.
1718         * testsuite/vector/modifiers/erase/moveable.cc: Likewise.
1719         * testsuite/vector/modifiers/insert/1.cc: Likewise.
1720         * testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
1721         * testsuite/vector/modifiers/moveable.cc: Likewise.
1722         * testsuite/vector/modifiers/moveable2.cc: Likewise.
1723         * testsuite/vector/modifiers/push_back/49836.cc: Likewise.
1724         * testsuite/vector/modifiers/swap/1.cc: Likewise.
1725         * testsuite/vector/modifiers/swap/2.cc: Likewise.
1726         * testsuite/vector/modifiers/swap/3.cc: Likewise.
1727         * testsuite/vector/zero_sized_allocations.cc: Likewise.
1729 2016-10-17  Jonathan Wakely  <jwakely@redhat.com>
1731         PR libstdc++/77998
1732         * include/std/future (__future_base::_Deferred_state)
1733         (__future_base::_Async_state_impl): Use decltype to deduce return
1734         type, instead of _Invoker::result_type.
1735         * include/std/thread (thread::_Invoker::operator()): Likewise.
1736         (thread::_Invoker::result_type): Remove.
1738         PR libstdc++/77987
1739         * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
1740         value to pointer of the correct type to swap, to support conversions
1741         allowed by LWG 2118 / N4089.
1742         * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
1743         incompatible deleters from ...
1744         * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
1745         * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
1746         incompatible pointers to ...
1747         * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
1748         destructor definition to base class. Test for invalid derived-to-base
1749         conversion.
1751         * doc/xml/manual/status_cxx2017.xml: Update status.
1752         * doc/html/*: Regenerate.
1753         * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
1754         Return a reference in C++17 mode.
1755         * include/bits/forward_list.h (forward_list::emplace_front): Likewise.
1756         * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
1757         * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
1758         Likewise.
1759         * include/bits/stl_list.h (list::emplace_front, list::emplace_back):
1760         Likewise.
1761         * include/bits/stl_queue.h (queue::emplace): Likewise.
1762         * include/bits/stl_stack.h (stack::emplace): Likewise.
1763         * include/bits/stl_vector.h (vector::emplace_back): Likewise.
1764         * include/bits/vector.tcc (vector::emplace_back): Likewise.
1765         * include/debug/deque (__gnu_debug::deque::emplace_front)
1766         (__gnu_debug::deque::emplace_back): Likewise.
1767         * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
1768         * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
1769         New.
1770         * testsuite/23_containers/forward_list/modifiers/
1771         emplace_cxx17_return.cc: New.
1772         * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
1773         * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
1774         * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
1775         * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
1776         * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
1777         New.
1779 2016-10-16  Paolo Carlini  <paolo.carlini@oracle.com>
1781         * testsuite/22_locale/classification/isblank.cc: Remove 'test'
1782         variables.
1783         * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
1784         * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
1785         * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
1786         * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
1787         * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
1788         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
1789         * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
1790         * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
1791         * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
1792         * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
1793         * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
1794         * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
1795         * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
1796         * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
1797         * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
1798         * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
1799         * testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
1800         * testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
1801         * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
1802         * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
1803         * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
1804         * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
1805         * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
1806         * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
1807         * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
1808         * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
1809         * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
1810         * testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
1811         * testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
1812         * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
1813         * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
1814         * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
1815         * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
1816         * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
1817         * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
1818         * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
1819         * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
1820         * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
1821         * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
1822         * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
1823         * testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
1824         * testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
1825         * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
1826         * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
1827         * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
1828         * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
1829         * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
1830         * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
1831         * testsuite/22_locale/collate/compare/char/1.cc: Likewise.
1832         * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
1833         * testsuite/22_locale/collate/compare/char/3.cc: Likewise.
1834         * testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
1835         * testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
1836         * testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
1837         * testsuite/22_locale/collate/hash/char/1.cc: Likewise.
1838         * testsuite/22_locale/collate/hash/char/2.cc: Likewise.
1839         * testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
1840         * testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
1841         * testsuite/22_locale/collate/transform/char/2.cc: Likewise.
1842         * testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
1843         * testsuite/22_locale/collate/transform/char/3.cc: Likewise.
1844         * testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
1845         * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
1846         * testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
1847         * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
1848         * testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
1849         * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
1850         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
1851         * testsuite/22_locale/ctype/is/char/3.cc: Likewise.
1852         * testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
1853         * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
1854         * testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
1855         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
1856         * testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
1857         * testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
1858         * testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
1859         * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
1860         * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
1861         * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
1862         * testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
1863         * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
1864         * testsuite/22_locale/ctype/to/char/1.cc: Likewise.
1865         * testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
1866         * testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
1867         * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
1868         * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
1869         * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
1870         * testsuite/22_locale/ctype_base/11844.cc: Likewise.
1871         * testsuite/22_locale/facet/1.cc: Likewise.
1872         * testsuite/22_locale/facet/2.cc: Likewise.
1873         * testsuite/22_locale/facet/25421.cc: Likewise.
1874         * testsuite/22_locale/global_templates/1.cc: Likewise.
1875         * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
1876         Likewise.
1877         * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
1878         Likewise.
1879         * testsuite/22_locale/locale/13630.cc: Likewise.
1880         * testsuite/22_locale/locale/cons/12352.cc: Likewise.
1881         * testsuite/22_locale/locale/cons/12438.cc: Likewise.
1882         * testsuite/22_locale/locale/cons/2.cc: Likewise.
1883         * testsuite/22_locale/locale/cons/29217.cc: Likewise.
1884         * testsuite/22_locale/locale/cons/38365.cc: Likewise.
1885         * testsuite/22_locale/locale/cons/38368.cc: Likewise.
1886         * testsuite/22_locale/locale/cons/4.cc: Likewise.
1887         * testsuite/22_locale/locale/cons/40184.cc: Likewise.
1888         * testsuite/22_locale/locale/cons/5.cc: Likewise.
1889         * testsuite/22_locale/locale/cons/6.cc: Likewise.
1890         * testsuite/22_locale/locale/cons/7.cc: Likewise.
1891         * testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
1892         * testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
1893         * testsuite/22_locale/locale/cons/8.cc: Likewise.
1894         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
1895         * testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
1896         * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
1897         * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
1898         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
1899         * testsuite/22_locale/locale/operations/1.cc: Likewise.
1900         * testsuite/22_locale/locale/operations/2.cc: Likewise.
1901         * testsuite/22_locale/messages/13631.cc: Likewise.
1902         * testsuite/22_locale/messages/members/char/1.cc: Likewise.
1903         * testsuite/22_locale/messages/members/char/2.cc: Likewise.
1904         * testsuite/22_locale/messages/members/char/3.cc: Likewise.
1905         * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
1906         * testsuite/22_locale/money_get/get/char/1.cc: Likewise.
1907         * testsuite/22_locale/money_get/get/char/10.cc: Likewise.
1908         * testsuite/22_locale/money_get/get/char/11.cc: Likewise.
1909         * testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
1910         * testsuite/22_locale/money_get/get/char/12.cc: Likewise.
1911         * testsuite/22_locale/money_get/get/char/13.cc: Likewise.
1912         * testsuite/22_locale/money_get/get/char/14.cc: Likewise.
1913         * testsuite/22_locale/money_get/get/char/15.cc: Likewise.
1914         * testsuite/22_locale/money_get/get/char/16.cc: Likewise.
1915         * testsuite/22_locale/money_get/get/char/17.cc: Likewise.
1916         * testsuite/22_locale/money_get/get/char/18.cc: Likewise.
1917         * testsuite/22_locale/money_get/get/char/19.cc: Likewise.
1918         * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1919         * testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
1920         * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1921         * testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
1922         * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
1923         * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
1924         * testsuite/22_locale/money_get/get/char/5.cc: Likewise.
1925         * testsuite/22_locale/money_get/get/char/6.cc: Likewise.
1926         * testsuite/22_locale/money_get/get/char/7.cc: Likewise.
1927         * testsuite/22_locale/money_get/get/char/8.cc: Likewise.
1928         * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
1929         * testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
1930         * testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
1931         * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
1932         * testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
1933         * testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
1934         * testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
1935         * testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
1936         * testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
1937         * testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
1938         * testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
1939         * testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
1940         * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
1941         * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
1942         * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
1943         * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
1944         * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
1945         * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
1946         * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
1947         * testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
1948         * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
1949         * testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
1950         * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
1951         * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
1952         * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
1953         * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
1954         * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
1955         * testsuite/22_locale/money_put/put/char/4.cc: Likewise.
1956         * testsuite/22_locale/money_put/put/char/5.cc: Likewise.
1957         * testsuite/22_locale/money_put/put/char/6.cc: Likewise.
1958         * testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
1959         * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
1960         * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
1961         * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
1962         * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
1963         * testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
1964         * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
1965         * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
1966         * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
1967         * testsuite/22_locale/moneypunct/40712.cc: Likewise.
1968         * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
1969         * testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
1970         * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
1971         * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
1972         * testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
1973         * testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
1974         * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
1975         * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
1976         * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
1977         * testsuite/22_locale/num_get/get/char/11.cc: Likewise.
1978         * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
1979         * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
1980         * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
1981         * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
1982         * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
1983         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
1984         * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
1985         * testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
1986         * testsuite/22_locale/num_get/get/char/3.cc: Likewise.
1987         * testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
1988         * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
1989         * testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
1990         * testsuite/22_locale/num_get/get/char/4.cc: Likewise.
1991         * testsuite/22_locale/num_get/get/char/5.cc: Likewise.
1992         * testsuite/22_locale/num_get/get/char/6.cc: Likewise.
1993         * testsuite/22_locale/num_get/get/char/7.cc: Likewise.
1994         * testsuite/22_locale/num_get/get/char/8.cc: Likewise.
1995         * testsuite/22_locale/num_get/get/char/9.cc: Likewise.
1996         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
1997         * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
1998         * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
1999         * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
2000         * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
2001         * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
2002         * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
2003         * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
2004         * testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
2005         * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
2006         * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
2007         * testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
2008         * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
2009         * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
2010         * testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
2011         * testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
2012         * testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
2013         * testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
2014         * testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
2015         * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
2016         * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
2017         * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
2018         * testsuite/22_locale/num_put/put/char/10.cc: Likewise.
2019         * testsuite/22_locale/num_put/put/char/11.cc: Likewise.
2020         * testsuite/22_locale/num_put/put/char/12.cc: Likewise.
2021         * testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
2022         * testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
2023         * testsuite/22_locale/num_put/put/char/2.cc: Likewise.
2024         * testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
2025         * testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
2026         * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
2027         * testsuite/22_locale/num_put/put/char/3.cc: Likewise.
2028         * testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
2029         * testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
2030         * testsuite/22_locale/num_put/put/char/4.cc: Likewise.
2031         * testsuite/22_locale/num_put/put/char/5.cc: Likewise.
2032         * testsuite/22_locale/num_put/put/char/6.cc: Likewise.
2033         * testsuite/22_locale/num_put/put/char/7.cc: Likewise.
2034         * testsuite/22_locale/num_put/put/char/8.cc: Likewise.
2035         * testsuite/22_locale/num_put/put/char/9.cc: Likewise.
2036         * testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
2037         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
2038         * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
2039         * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
2040         * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
2041         * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2042         * testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
2043         * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
2044         * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
2045         * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
2046         * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
2047         * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
2048         * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
2049         * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
2050         * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
2051         * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
2052         * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
2053         * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
2054         * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
2055         * testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
2056         * testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
2057         * testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
2058         * testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
2059         * testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
2060         * testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
2061         * testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
2062         * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
2063         * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
2064         * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
2065         * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
2066         * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
2067         * testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
2068         * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
2069         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
2070         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
2071         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
2072         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
2073         * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
2074         * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
2075         * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
2076         * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
2077         * testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
2078         * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
2079         * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
2080         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
2081         * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
2082         * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
2083         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
2084         * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
2085         * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
2086         * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
2087         * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
2088         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
2089         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
2090         * testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
2091         * testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
2092         * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
2093         * testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
2094         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
2095         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
2096         * testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
2097         * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
2098         * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
2099         * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
2100         * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
2101         * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
2102         * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
2103         * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
2104         * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
2105         * testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
2106         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
2107         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
2108         * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
2109         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
2110         * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
2111         * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
2112         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
2113         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
2114         * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
2115         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
2116         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
2117         * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
2118         * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
2119         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
2120         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
2121         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2122         * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
2123         * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
2124         * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
2125         * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
2126         * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
2127         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
2128         * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
2129         * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
2130         * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
2131         * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
2132         * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
2133         * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
2134         * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
2135         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
2136         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
2137         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
2138         * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
2139         * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
2140         * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
2141         * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
2142         * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
2143         * testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
2144         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
2145         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
2146         * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
2147         * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
2148         * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
2149         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
2150         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
2151         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
2152         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
2153         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
2154         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
2155         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
2156         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
2157         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
2158         * testsuite/30_threads/async/42819.cc: Likewise.
2159         * testsuite/30_threads/async/any.cc: Likewise.
2160         * testsuite/30_threads/async/async.cc: Likewise.
2161         * testsuite/30_threads/async/except.cc: Likewise.
2162         * testsuite/30_threads/async/launch.cc: Likewise.
2163         * testsuite/30_threads/async/sync.cc: Likewise.
2164         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2165         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2166         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2167         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2168         * testsuite/30_threads/condition_variable/members/3.cc: Likewise.
2169         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2170         * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2171         * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2172         * testsuite/30_threads/future/members/45133.cc: Likewise.
2173         * testsuite/30_threads/future/members/get.cc: Likewise.
2174         * testsuite/30_threads/future/members/get2.cc: Likewise.
2175         * testsuite/30_threads/future/members/share.cc: Likewise.
2176         * testsuite/30_threads/future/members/valid.cc: Likewise.
2177         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2178         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2179         * testsuite/30_threads/lock/1.cc: Likewise.
2180         * testsuite/30_threads/lock/2.cc: Likewise.
2181         * testsuite/30_threads/lock/3.cc: Likewise.
2182         * testsuite/30_threads/lock/4.cc: Likewise.
2183         * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2184         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2185         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2186         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2187         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2188         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2189         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2190         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2191         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2192         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2193         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2194         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2195         * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2196         * testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
2197         Likewise.
2198         * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2199         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2200         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2201         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2202         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2203         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2204         * testsuite/30_threads/promise/cons/move.cc: Likewise.
2205         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2206         * testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
2207         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2208         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2209         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2210         * testsuite/30_threads/promise/members/swap.cc: Likewise.
2211         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2212         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2213         Likewise.
2214         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2215         * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2216         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2217         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2218         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2219         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2220         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2221         Likewise.
2222         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2223         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2224         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2225         Likewise.
2226         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2227         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2228         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2229         Likewise.
2230         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2231         Likewise.
2232         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2233         Likewise.
2234         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2235         Likewise.
2236         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2237         Likewise.
2238         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2239         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2240         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2241         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2242         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2243         * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2244         * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2245         * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
2246         * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
2247         * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
2248         * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
2249         * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
2250         * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
2251         * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
2252         * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
2253         * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
2254         * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
2255         * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
2256         * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
2257         * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
2258         * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
2259         * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
2260         * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
2261         * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
2262         * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
2263         * testsuite/30_threads/this_thread/1.cc: Likewise.
2264         * testsuite/30_threads/this_thread/2.cc: Likewise.
2265         * testsuite/30_threads/this_thread/3.cc: Likewise.
2266         * testsuite/30_threads/this_thread/4.cc: Likewise.
2267         * testsuite/30_threads/this_thread/60421.cc: Likewise.
2268         * testsuite/30_threads/thread/cons/1.cc: Likewise.
2269         * testsuite/30_threads/thread/cons/2.cc: Likewise.
2270         * testsuite/30_threads/thread/cons/3.cc: Likewise.
2271         * testsuite/30_threads/thread/cons/4.cc: Likewise.
2272         * testsuite/30_threads/thread/cons/5.cc: Likewise.
2273         * testsuite/30_threads/thread/cons/6.cc: Likewise.
2274         * testsuite/30_threads/thread/cons/7.cc: Likewise.
2275         * testsuite/30_threads/thread/cons/8.cc: Likewise.
2276         * testsuite/30_threads/thread/cons/9.cc: Likewise.
2277         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2278         * testsuite/30_threads/thread/members/1.cc: Likewise.
2279         * testsuite/30_threads/thread/members/2.cc: Likewise.
2280         * testsuite/30_threads/thread/members/3.cc: Likewise.
2281         * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
2282         * testsuite/30_threads/thread/swap/1.cc: Likewise.
2283         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2284         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2285         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2286         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2287         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2288         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2289         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2290         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2291         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2292         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2293         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2294         * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
2295         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2296         * testsuite/30_threads/try_lock/1.cc: Likewise.
2297         * testsuite/30_threads/try_lock/2.cc: Likewise.
2298         * testsuite/30_threads/try_lock/3.cc: Likewise.
2299         * testsuite/30_threads/try_lock/4.cc: Likewise.
2300         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2301         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2302         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2303         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2304         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2305         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2306         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2307         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2308         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2309         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2310         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2311         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2312         not_shared.cc: Likewise.
2313         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2314         not_shared2.cc: Likewise.
2315         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2316         not_shared3.cc: Likewise.
2317         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2318         shared.cc: Likewise.
2319         * testsuite/tr1/2_general_utilities/enable_shared_from_this/
2320         still_shared.cc: Likewise.
2321         * testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
2322         Likewise.
2323         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
2324         Likewise.
2325         * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
2326         Likewise.
2327         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2328         auto_ptr_rvalue_neg.cc: Likewise.
2329         * testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
2330         Likewise.
2331         * testsuite/tr1/2_general_utilities/shared_ptr/assign/
2332         shared_ptr_neg.cc: Likewise.
2333         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
2334         Likewise.
2335         * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
2336         Likewise.
2337         * testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
2338         * testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
2339         Likewise.
2340         * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
2341         Likewise.
2342         * testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
2343         Likewise.
2344         * testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
2345         * testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
2346         * testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
2347         * testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
2348         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
2349         Likewise.
2350         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
2351         Likewise.
2352         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
2353         Likewise.
2354         * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
2355         Likewise.
2356         * testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
2357         Likewise.
2358         * testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
2359         Likewise.
2360         * testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
2361         Likewise.
2362         * testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
2363         Likewise.
2364         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2365         default_weaktoshared.cc: Likewise.
2366         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2367         mutex_weaktoshared.cc: Likewise.
2368         * testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
2369         * testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
2370         * testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
2371         * testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
2372         * testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
2373         * testsuite/tr1/3_function_objects/function/1.cc: Likewise.
2374         * testsuite/tr1/3_function_objects/function/2.cc: Likewise.
2375         * testsuite/tr1/3_function_objects/function/3.cc: Likewise.
2376         * testsuite/tr1/3_function_objects/function/4.cc: Likewise.
2377         * testsuite/tr1/3_function_objects/function/5.cc: Likewise.
2378         * testsuite/tr1/3_function_objects/function/6.cc: Likewise.
2379         * testsuite/tr1/3_function_objects/function/7.cc: Likewise.
2380         * testsuite/tr1/3_function_objects/function/8.cc: Likewise.
2381         * testsuite/tr1/3_function_objects/function/9.cc: Likewise.
2382         * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
2383         Likewise.
2384         * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
2385         Likewise.
2386         * testsuite/tr1/3_function_objects/result_of.cc: Likewise.
2387         * testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
2388         * testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
2389         * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
2390         * testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
2391         * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
2392         * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
2393         * testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
2394         * testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
2395         * testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
2396         * testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
2397         Likewise.
2398         * testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
2399         * testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
2400         * testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
2401         Likewise.
2402         * testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
2403         * testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
2404         Likewise.
2405         * testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
2406         Likewise.
2407         * testsuite/tr1/4_metaprogramming/integral_constant/
2408         static_definition.cc: Likewise.
2409         * testsuite/tr1/4_metaprogramming/integral_constant/
2410         true_false_value.cc: Likewise.
2411         * testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
2412         * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
2413         * testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
2414         * testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
2415         * testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
2416         * testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
2417         * testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
2418         * testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
2419         * testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
2420         * testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
2421         * testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
2422         * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
2423         * testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
2424         * testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
2425         * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
2426         * testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
2427         * testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
2428         Likewise.
2429         * testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
2430         Likewise.
2431         * testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
2432         * testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
2433         * testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
2434         * testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
2435         * testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
2436         * testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
2437         * testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
2438         * testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
2439         * testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
2440         * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
2441         * testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
2442         * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
2443         * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
2444         * testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
2445         * testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
2446         * testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
2447         * testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
2448         * testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
2449         * testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
2450         * testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
2451         * testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
2452         * testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
2453         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2454         equal.cc: Likewise.
2455         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2456         not_equal.cc: Likewise.
2457         * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
2458         serialize.cc: Likewise.
2459         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2460         cons/default.cc: Likewise.
2461         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2462         cons/gen1.cc: Likewise.
2463         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2464         operators/equal.cc: Likewise.
2465         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2466         operators/not_equal.cc: Likewise.
2467         * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
2468         operators/serialize.cc: Likewise.
2469         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2470         cons/default.cc: Likewise.
2471         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2472         cons/gen1.cc: Likewise.
2473         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2474         operators/equal.cc: Likewise.
2475         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2476         operators/not_equal.cc: Likewise.
2477         * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
2478         operators/serialize.cc: Likewise.
2479         * testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
2480         * testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
2481         * testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
2482         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
2483         default.cc: Likewise.
2484         * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
2485         token.cc: Likewise.
2486         * testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
2487         * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
2488         * testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
2489         * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
2490         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2491         cons/default.cc: Likewise.
2492         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2493         cons/gen1.cc: Likewise.
2494         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2495         operators/equal.cc: Likewise.
2496         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2497         operators/not_equal.cc: Likewise.
2498         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
2499         operators/serialize.cc: Likewise.
2500         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2501         cons/default.cc: Likewise.
2502         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2503         cons/gen1.cc: Likewise.
2504         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2505         operators/equal.cc: Likewise.
2506         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2507         operators/not_equal.cc: Likewise.
2508         * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
2509         operators/serialize.cc: Likewise.
2510         * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
2511         Likewise.
2512         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
2513         default.cc: Likewise.
2514         * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
2515         range.cc: Likewise.
2516         * testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
2517         default.cc: Likewise.
2518         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2519         equal.cc: Likewise.
2520         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2521         not_equal.cc: Likewise.
2522         * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
2523         serialize.cc: Likewise.
2524         * testsuite/tr1/5_numerical_facilities/special_functions/
2525         08_cyl_bessel_i/check_value.cc: Likewise.
2526         * testsuite/tr1/5_numerical_facilities/special_functions/
2527         08_cyl_bessel_i/pr56216.cc: Likewise.
2528         * testsuite/tr1/5_numerical_facilities/special_functions/
2529         09_cyl_bessel_j/check_value.cc: Likewise.
2530         * testsuite/tr1/5_numerical_facilities/special_functions/
2531         10_cyl_bessel_k/check_value.cc: Likewise.
2532         * testsuite/tr1/5_numerical_facilities/special_functions/
2533         11_cyl_neumann/check_value.cc: Likewise.
2534         * testsuite/tr1/5_numerical_facilities/special_functions/
2535         16_hermite/check_value.cc: Likewise.
2536         * testsuite/tr1/5_numerical_facilities/special_functions/
2537         21_sph_bessel/check_value.cc: Likewise.
2538         * testsuite/tr1/5_numerical_facilities/special_functions/
2539         23_sph_neumann/check_value.cc: Likewise.
2540         * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
2541         * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
2542         * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
2543         * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
2544         Likewise.
2545         * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
2546         Likewise.
2547         * testsuite/tr1/6_containers/array/comparison_operators/
2548         greater_or_equal.cc: Likewise.
2549         * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
2550         Likewise.
2551         * testsuite/tr1/6_containers/array/comparison_operators/
2552         less_or_equal.cc: Likewise.
2553         * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
2554         Likewise.
2555         * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
2556         Likewise.
2557         * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
2558         * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
2559         * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
2560         * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
2561         Likewise.
2562         * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
2563         * testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
2564         * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
2565         Likewise.
2566         * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
2567         Likewise.
2568         * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
2569         Likewise.
2570         * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
2571         * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
2572         Likewise.
2573         * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
2574         Likewise.
2575         * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
2576         * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
2577         *
2578         testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
2579         Likewise.
2580         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
2581         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
2582         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
2583         * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
2584         Likewise.
2585         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
2586         Likewise.
2587         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
2588         * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
2589         * testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
2590         * testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
2591         * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
2592         * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
2593         Likewise.
2594         * testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
2595         * testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
2596         * testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
2597         * testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
2598         Likewise.
2599         * testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
2600         Likewise.
2601         * testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
2602         Likewise.
2603         * testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
2604         Likewise.
2605         * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
2606         * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
2607         * testsuite/tr1/6_containers/unordered_multimap/capacity/
2608         29134-multimap.cc: Likewise.
2609         * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
2610         * testsuite/tr1/6_containers/unordered_multimap/erase/
2611         24061-multimap.cc: Likewise.
2612         * testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
2613         Likewise.
2614         * testsuite/tr1/6_containers/unordered_multimap/insert/
2615         24061-multimap.cc: Likewise.
2616         * testsuite/tr1/6_containers/unordered_multimap/insert/
2617         multimap_range.cc: Likewise.
2618         * testsuite/tr1/6_containers/unordered_multimap/insert/
2619         multimap_single.cc: Likewise.
2620         * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
2621         * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
2622         * testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
2623         * testsuite/tr1/6_containers/unordered_multiset/capacity/
2624         29134-multiset.cc: Likewise.
2625         * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
2626         * testsuite/tr1/6_containers/unordered_multiset/erase/
2627         24061-multiset.cc: Likewise.
2628         * testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
2629         Likewise.
2630         * testsuite/tr1/6_containers/unordered_multiset/insert/
2631         24061-multiset.cc: Likewise.
2632         * testsuite/tr1/6_containers/unordered_multiset/insert/
2633         multiset_range.cc: Likewise.
2634         * testsuite/tr1/6_containers/unordered_multiset/insert/
2635         multiset_single.cc: Likewise.
2636         * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
2637         * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
2638         * testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
2639         * testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
2640         * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
2641         Likewise.
2642         * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
2643         * testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
2644         * testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
2645         * testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
2646         Likewise.
2647         * testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
2648         Likewise.
2649         * testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
2650         Likewise.
2651         * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
2652         * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
2653         * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
2654         * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
2655         default.cc: Likewise.
2656         * testsuite/tr1/7_regular_expressions/regex_traits/char/
2657         translate_nocase.cc: Likewise.
2658         * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
2659         Likewise.
2660         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
2661         translate_nocase.cc: Likewise.
2662         * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
2663         Likewise.
2664         * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
2665         * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
2667 2016-10-16  Ville Voutilainen  <ville.voutilainen@gmail.com>
2669         Make sure the return value of malloc_allocator::allocate
2670         is zero-initialized so that checking it for non-zero works
2671         later.
2672         * include/ext/malloc_allocator.h (malloc_allocator::allocate):
2673         Initialize the return value.
2674         * testsuite/ext/malloc_allocator/sanity.cc: New.
2676 2016-10-14  Eelis van der Weegen  <eelis@eelis.net>
2678         * include/bits/stl_algo.h (shuffle): Extract two random numbers from
2679         each generator invocation when its range is large enough.
2681 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
2683         * testsuite/experimental/algorithm/sample.cc: Qualify calls to
2684         resolve ambiguity between std::sample and std::experimental::sample.
2686         * include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
2687         Simplify forwarding from tuple of references.
2688         (_Maybe_wrap_member_pointer): Remove.
2689         (_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
2690         Use std::__invoke.
2691         (_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
2692         (_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
2693         return type deduction.
2694         (_Bind::operator(), _Bind::operator() const): Use new helpers.
2695         (_Bind::operator() volatile, _Bind::operator() const volatile):
2696         Likewise. Add deprecated attribute for C++17 mode.
2697         (_Bind_result::__call): Use std::__invoke.
2698         (_Bind_result::operator() volatile)
2699         (_Bind_result::operator() const volatile): Add deprecated attribute.
2700         (_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
2701         (_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
2702         (bind, bind<R>): Don't use __maybe_type.
2703         * src/c++11/compatibility-thread-c++0x.cc
2704         (_Maybe_wrap_member_pointer): Define here for compatibility symbols.
2705         * testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
2706         in C++17 mode.
2707         * testsuite/20_util/bind/cv_quals.cc: Likewise.
2708         * testsuite/20_util/bind/cv_quals_2.cc: Likewise.
2710         * include/std/scoped_allocator (scoped_allocator_adaptor): Forward
2711         piecewise construction arguments as tuples of references, to avoid
2712         copies (related to LWG 2511).
2713         * testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
2715 2016-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
2717         * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
2718         * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
2719         * testsuite/26_numerics/complex/13450.cc: Likewise.
2720         * testsuite/26_numerics/complex/50880.cc: Likewise.
2721         * testsuite/26_numerics/complex/c99.cc: Likewise.
2722         * testsuite/26_numerics/complex/cons/48760.cc: Likewise.
2723         * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
2724         * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
2725         * testsuite/26_numerics/complex/dr844.cc: Likewise.
2726         * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
2727         Likewise.
2728         * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
2729         Likewise.
2730         * testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
2731         * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
2732         * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
2733         * testsuite/26_numerics/headers/cmath/
2734         c99_classification_macros_c++11.c: Likewise.c
2735         * testsuite/26_numerics/headers/cmath/
2736         c99_classification_macros_c++98.cc: Likewise.
2737         * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
2738         * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
2739         * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
2740         * testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
2741         * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
2742         * testsuite/26_numerics/inner_product/1.cc: Likewise.
2743         * testsuite/26_numerics/iota/1.cc: Likewise.
2744         * testsuite/26_numerics/partial_sum/1.cc: Likewise.
2745         * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
2746         Likewise.
2747         * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
2748         Likewise.
2749         * testsuite/26_numerics/random/bernoulli_distribution/operators/
2750         equal.cc: Likewise.
2751         * testsuite/26_numerics/random/bernoulli_distribution/operators/
2752         inequal.cc: Likewise.
2753         * testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
2754         Likewise.
2755         * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
2756         Likewise.
2757         * testsuite/26_numerics/random/binomial_distribution/operators/
2758         equal.cc: Likewise.
2759         * testsuite/26_numerics/random/binomial_distribution/operators/
2760         inequal.cc: Likewise.
2761         * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
2762         Likewise.
2763         * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
2764         Likewise.
2765         * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
2766         Likewise.
2767         * testsuite/26_numerics/random/cauchy_distribution/operators/
2768         inequal.cc: Likewise.
2769         * testsuite/26_numerics/random/chi_squared_distribution/cons/
2770         default.cc: Likewise.
2771         * testsuite/26_numerics/random/chi_squared_distribution/cons/
2772         parms.cc: Likewise.
2773         * testsuite/26_numerics/random/chi_squared_distribution/operators/
2774         equal.cc: Likewise.
2775         * testsuite/26_numerics/random/chi_squared_distribution/operators/
2776         inequal.cc: Likewise.
2777         * testsuite/26_numerics/random/default_random_engine.cc: Likewise.
2778         * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
2779         Likewise.
2780         * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
2781         Likewise.
2782         * testsuite/26_numerics/random/discard_block_engine/operators/
2783         inequal.cc: Likewise.
2784         * testsuite/26_numerics/random/discard_block_engine/operators/
2785         serialize.cc: Likewise.
2786         * testsuite/26_numerics/random/discrete_distribution/cons/
2787         default.cc: Likewise.
2788         * testsuite/26_numerics/random/discrete_distribution/cons/
2789         initlist.cc: Likewise.
2790         * testsuite/26_numerics/random/discrete_distribution/cons/
2791         num_xbound_fun.cc: Likewise.
2792         * testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
2793         Likewise.
2794         * testsuite/26_numerics/random/discrete_distribution/operators/
2795         equal.cc: Likewise.
2796         * testsuite/26_numerics/random/discrete_distribution/operators/
2797         inequal.cc: Likewise.
2798         * testsuite/26_numerics/random/exponential_distribution/cons/
2799         default.cc: Likewise.
2800         * testsuite/26_numerics/random/exponential_distribution/cons/
2801         parms.cc: Likewise.
2802         * testsuite/26_numerics/random/exponential_distribution/operators/
2803         equal.cc: Likewise.
2804         * testsuite/26_numerics/random/exponential_distribution/operators/
2805         inequal.cc: Likewise.
2806         * testsuite/26_numerics/random/extreme_value_distribution/cons/
2807         default.cc: Likewise.
2808         * testsuite/26_numerics/random/extreme_value_distribution/cons/
2809         parms.cc: Likewise.
2810         * testsuite/26_numerics/random/extreme_value_distribution/operators/
2811         equal.cc: Likewise.
2812         * testsuite/26_numerics/random/extreme_value_distribution/operators/
2813         inequal.cc: Likewise.
2814         * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
2815         Likewise.
2816         * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
2817         Likewise.
2818         * testsuite/26_numerics/random/fisher_f_distribution/operators/
2819         equal.cc: Likewise.
2820         * testsuite/26_numerics/random/fisher_f_distribution/operators/
2821         inequal.cc: Likewise.
2822         * testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
2823         Likewise.
2824         * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
2825         Likewise.
2826         * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
2827         Likewise.
2828         * testsuite/26_numerics/random/gamma_distribution/operators/
2829         inequal.cc: Likewise.
2830         * testsuite/26_numerics/random/geometric_distribution/cons/
2831         default.cc: Likewise.
2832         * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
2833         Likewise.
2834         * testsuite/26_numerics/random/geometric_distribution/operators/
2835         equal.cc: Likewise.
2836         * testsuite/26_numerics/random/geometric_distribution/operators/
2837         inequal.cc: Likewise.
2838         * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
2839         Likewise.
2840         * testsuite/26_numerics/random/independent_bits_engine/operators/
2841         equal.cc: Likewise.
2842         * testsuite/26_numerics/random/independent_bits_engine/operators/
2843         inequal.cc: Likewise.
2844         * testsuite/26_numerics/random/independent_bits_engine/operators/
2845         serialize.cc: Likewise.
2846         * testsuite/26_numerics/random/knuth_b.cc: Likewise.
2847         * testsuite/26_numerics/random/linear_congruential_engine/cons/
2848         55215.cc: Likewise.
2849         * testsuite/26_numerics/random/linear_congruential_engine/cons/
2850         default.cc: Likewise.
2851         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2852         51795.cc: Likewise.
2853         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2854         equal.cc: Likewise.
2855         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2856         inequal.cc: Likewise.
2857         * testsuite/26_numerics/random/linear_congruential_engine/operators/
2858         serialize.cc: Likewise.
2859         * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
2860         Likewise.
2861         * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
2862         Likewise.
2863         * testsuite/26_numerics/random/lognormal_distribution/operators/
2864         equal.cc: Likewise.
2865         * testsuite/26_numerics/random/lognormal_distribution/operators/
2866         inequal.cc: Likewise.
2867         * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
2868         Likewise.
2869         * testsuite/26_numerics/random/mersenne_twister_engine/cons/
2870         default.cc: Likewise.
2871         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2872         equal.cc: Likewise.
2873         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2874         inequal.cc: Likewise.
2875         * testsuite/26_numerics/random/mersenne_twister_engine/operators/
2876         serialize.cc: Likewise.
2877         * testsuite/26_numerics/random/minstd_rand.cc: Likewise.
2878         * testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
2879         * testsuite/26_numerics/random/mt19937.cc: Likewise.
2880         * testsuite/26_numerics/random/mt19937_64.cc: Likewise.
2881         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
2882         default.cc: Likewise.
2883         * testsuite/26_numerics/random/negative_binomial_distribution/cons/
2884         parms.cc: Likewise.
2885         * testsuite/26_numerics/random/negative_binomial_distribution/
2886         operators/equal.cc: Likewise.
2887         * testsuite/26_numerics/random/negative_binomial_distribution/
2888         operators/inequal.cc: Likewise.
2889         * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
2890         Likewise.
2891         * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
2892         Likewise.
2893         * testsuite/26_numerics/random/normal_distribution/operators/
2894         equal.cc: Likewise.
2895         * testsuite/26_numerics/random/normal_distribution/operators/
2896         inequal.cc: Likewise.
2897         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
2898         default.cc: Likewise.
2899         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
2900         initlist_fun.cc: Likewise.
2901         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
2902         num_xbound_fun.cc: Likewise.
2903         * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
2904         range.cc: Likewise.
2905         * testsuite/26_numerics/random/piecewise_constant_distribution/
2906         operators/equal.cc: Likewise.
2907         * testsuite/26_numerics/random/piecewise_constant_distribution/
2908         operators/inequal.cc: Likewise.
2909         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
2910         default.cc: Likewise.
2911         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
2912         initlist_fun.cc: Likewise.
2913         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
2914         num_xbound_fun.cc: Likewise.
2915         * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
2916         range.cc: Likewise.
2917         * testsuite/26_numerics/random/piecewise_linear_distribution/
2918         operators/equal.cc: Likewise.
2919         * testsuite/26_numerics/random/piecewise_linear_distribution/
2920         operators/inequal.cc: Likewise.
2921         * testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
2922         Likewise.
2923         * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
2924         Likewise.
2925         * testsuite/26_numerics/random/poisson_distribution/operators/
2926         equal.cc: Likewise.
2927         * testsuite/26_numerics/random/poisson_distribution/operators/
2928         inequal.cc: Likewise.
2929         * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
2930         * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
2931         * testsuite/26_numerics/random/ranlux24.cc: Likewise.
2932         * testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
2933         * testsuite/26_numerics/random/ranlux48.cc: Likewise.
2934         * testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
2935         * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
2936         * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
2937         Likewise.
2938         * testsuite/26_numerics/random/shuffle_order_engine/operators/
2939         equal.cc: Likewise.
2940         * testsuite/26_numerics/random/shuffle_order_engine/operators/
2941         inequal.cc: Likewise.
2942         * testsuite/26_numerics/random/shuffle_order_engine/operators/
2943         serialize.cc: Likewise.
2944         * testsuite/26_numerics/random/student_t_distribution/cons/
2945         default.cc: Likewise.
2946         * testsuite/26_numerics/random/student_t_distribution/cons/
2947         parms.cc: Likewise.
2948         * testsuite/26_numerics/random/student_t_distribution/operators/
2949         equal.cc: Likewise.
2950         * testsuite/26_numerics/random/student_t_distribution/operators/
2951         inequal.cc: Likewise.
2952         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
2953         55215.cc: Likewise.
2954         * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
2955         default.cc: Likewise.
2956         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
2957         equal.cc: Likewise.
2958         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
2959         inequal.cc: Likewise.
2960         * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
2961         serialize.cc: Likewise.
2962         * testsuite/26_numerics/random/uniform_int_distribution/cons/
2963         default.cc: Likewise.
2964         * testsuite/26_numerics/random/uniform_int_distribution/cons/
2965         parms.cc: Likewise.
2966         * testsuite/26_numerics/random/uniform_int_distribution/operators/
2967         equal.cc: Likewise.
2968         * testsuite/26_numerics/random/uniform_int_distribution/operators/
2969         inequal.cc: Likewise.
2970         * testsuite/26_numerics/random/uniform_real_distribution/cons/
2971         default.cc: Likewise.
2972         * testsuite/26_numerics/random/uniform_real_distribution/cons/
2973         parms.cc: Likewise.
2974         * testsuite/26_numerics/random/uniform_real_distribution/operators/
2975         equal.cc: Likewise.
2976         * testsuite/26_numerics/random/uniform_real_distribution/operators/
2977         inequal.cc: Likewise.
2978         * testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
2979         Likewise.
2980         * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
2981         Likewise.
2982         * testsuite/26_numerics/random/weibull_distribution/operators/
2983         equal.cc: Likewise.
2984         * testsuite/26_numerics/random/weibull_distribution/operators/
2985         inequal.cc: Likewise.
2986         * testsuite/26_numerics/slice/1.cc: Likewise.
2987         * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
2988         * testsuite/26_numerics/valarray/27867.cc: Likewise.
2989         * testsuite/26_numerics/valarray/28277.cc: Likewise.
2990         * testsuite/26_numerics/valarray/30416.cc: Likewise.
2991         * testsuite/26_numerics/valarray/dr543.cc: Likewise.
2992         * testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
2993         * testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
2994         * testsuite/26_numerics/valarray/dr630-3.C: Likewise.
2995         * testsuite/26_numerics/valarray/init-list.cc: Likewise.
2996         * testsuite/26_numerics/valarray/moveable.cc: Likewise.
2997         * testsuite/26_numerics/valarray/operators.cc: Likewise.
2998         * testsuite/26_numerics/valarray/swap.cc: Likewise.
2999         * testsuite/experimental/deque/erasure.cc: Likewise.
3000         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
3001         Likewise.
3002         * testsuite/experimental/filesystem/iterators/
3003         recursive_directory_iterator.cc: Likewise.
3004         * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
3005         * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
3006         * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
3007         * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
3008         * testsuite/experimental/filesystem/operations/create_directories.cc:
3009         Likewise.
3010         * testsuite/experimental/filesystem/operations/create_directory.cc:
3011         Likewise.
3012         * testsuite/experimental/filesystem/operations/current_path.cc:
3013         Likewise.
3014         * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
3015         * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
3016         * testsuite/experimental/filesystem/operations/last_write_time.cc:
3017         Likewise.
3018         * testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
3019         * testsuite/experimental/filesystem/operations/status.cc: Likewise.
3020         * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
3021         Likewise.
3022         * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
3023         * testsuite/experimental/forward_list/erasure.cc: Likewise.
3024         * testsuite/experimental/list/erasure.cc: Likewise.
3025         * testsuite/experimental/map/erasure.cc: Likewise.
3026         * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
3027         * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
3028         Likewise.
3029         * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
3030         * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
3031         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
3032         * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
3033         Likewise.
3034         * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
3035         * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
3036         Likewise.
3037         * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
3038         Likewise.
3039         * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
3040         Likewise.
3041         * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
3042         * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
3043         * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
3044         * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
3045         Likewise.
3046         * testsuite/experimental/memory/shared_ptr/observers/operators.cc:
3047         Likewise.
3048         * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
3049         Likewise.
3050         * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
3051         Likewise.
3052         * testsuite/experimental/memory_resource/1.cc: Likewise.
3053         * testsuite/experimental/memory_resource/null_memory_resource.cc:
3054         Likewise.
3055         * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
3056         * testsuite/experimental/set/erasure.cc: Likewise.
3057         * testsuite/experimental/string/erasure.cc: Likewise.
3058         * testsuite/experimental/string_view/capacity/1.cc: Likewise.
3059         * testsuite/experimental/string_view/cons/char/1.cc: Likewise.
3060         * testsuite/experimental/string_view/cons/char/2.cc: Likewise.
3061         * testsuite/experimental/string_view/cons/char/3.cc: Likewise.
3062         * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
3063         * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
3064         * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
3065         * testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
3066         * testsuite/experimental/string_view/element_access/char/empty.cc:
3067         Likewise.
3068         * testsuite/experimental/string_view/element_access/char/
3069         front_back.cc: Likewise.
3070         * testsuite/experimental/string_view/element_access/wchar_t/1.cc:
3071         Likewise.
3072         * testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
3073         Likewise.
3074         * testsuite/experimental/string_view/element_access/wchar_t/
3075         front_back.cc: Likewise.
3076         * testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
3077         * testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
3078         * testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
3079         * testsuite/experimental/string_view/inserters/pod/10081-out.cc:
3080         Likewise.
3081         * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
3082         * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
3083         * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
3084         * testsuite/experimental/string_view/modifiers/remove_prefix/char/
3085         1.cc: Likewise.
3086         * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
3087         1.cc: Likewise.
3088         * testsuite/experimental/string_view/modifiers/remove_suffix/char/
3089         1.cc: Likewise.
3090         * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
3091         1.cc: Likewise.
3092         * testsuite/experimental/string_view/operations/compare/char/1.cc:
3093         Likewise.
3094         * testsuite/experimental/string_view/operations/compare/char/
3095         13650.cc: Likewise.
3096         * testsuite/experimental/string_view/operations/compare/wchar_t/
3097         1.cc: Likewise.
3098         * testsuite/experimental/string_view/operations/compare/wchar_t/
3099         13650.cc: Likewise.
3100         * testsuite/experimental/string_view/operations/copy/char/1.cc:
3101         Likewise.
3102         * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
3103         Likewise.
3104         * testsuite/experimental/string_view/operations/data/char/1.cc:
3105         Likewise.
3106         * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
3107         Likewise.
3108         * testsuite/experimental/string_view/operations/find/char/1.cc:
3109         Likewise.
3110         * testsuite/experimental/string_view/operations/find/char/2.cc:
3111         Likewise.
3112         * testsuite/experimental/string_view/operations/find/char/3.cc:
3113         Likewise.
3114         * testsuite/experimental/string_view/operations/find/char/4.cc:
3115         Likewise.
3116         * testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
3117         Likewise.
3118         * testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
3119         Likewise.
3120         * testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
3121         Likewise.
3122         * testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
3123         Likewise.
3124         * testsuite/experimental/string_view/operations/rfind/char/1.cc:
3125         Likewise.
3126         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
3127         Likewise.
3128         * testsuite/experimental/string_view/operations/rfind/char/3.cc:
3129         Likewise.
3130         * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
3131         Likewise.
3132         * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
3133         Likewise.
3134         * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
3135         Likewise.
3136         * testsuite/experimental/string_view/operations/substr/char/1.cc:
3137         Likewise.
3138         * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
3139         Likewise.
3140         * testsuite/experimental/string_view/operations/to_string/1.cc:
3141         Likewise.
3142         * testsuite/experimental/string_view/operators/char/2.cc: Likewise.
3143         * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
3144         * testsuite/experimental/unordered_map/erasure.cc: Likewise.
3145         * testsuite/experimental/unordered_set/erasure.cc: Likewise.
3146         * testsuite/experimental/vector/erasure.cc: Likewise.
3147         * testsuite/ext/array_allocator/1.cc: Likewise.
3148         * testsuite/ext/array_allocator/2.cc: Likewise.
3149         * testsuite/ext/array_allocator/3.cc: Likewise.
3150         * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
3151         * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
3152         * testsuite/ext/codecvt/1.cc: Likewise.
3153         * testsuite/ext/codecvt/char-1.cc: Likewise.
3154         * testsuite/ext/codecvt/char-2.cc: Likewise.
3155         * testsuite/ext/codecvt/wchar_t.cc: Likewise.
3156         * testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
3157         * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
3158         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
3159         * testsuite/ext/ext_pointer/1.cc: Likewise.
3160         * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
3161         * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
3162         * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
3163         * testsuite/ext/mt_allocator/tune-1.cc: Likewise.
3164         * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
3165         * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
3166         * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
3167         * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
3168         * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
3169         * testsuite/ext/pod_char_traits.cc: Likewise.
3170         * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
3171         * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
3172         * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
3173         * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
3174         Likewise.
3175         * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
3176         Likewise.
3177         * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
3178         Likewise.
3179         * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
3180         * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
3181         * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
3182         * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
3183         * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
3184         * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
3185         * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
3186         * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
3187         * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
3188         Likewise.
3189         * testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
3190         Likewise.
3191         * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
3192         Likewise.
3193         * testsuite/ext/random/hypergeometric_distribution/operators/
3194         equal.cc: Likewise.
3195         * testsuite/ext/random/hypergeometric_distribution/operators/
3196         inequal.cc: Likewise.
3197         * testsuite/ext/random/hypergeometric_distribution/operators/
3198         serialize.cc: Likewise.
3199         * testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
3200         * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
3201         * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
3202         * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
3203         * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
3204         * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
3205         * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
3206         * testsuite/ext/random/logistic_distribution/operators/equal.cc:
3207         Likewise.
3208         * testsuite/ext/random/logistic_distribution/operators/inequal.cc:
3209         Likewise.
3210         * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
3211         Likewise.
3212         * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
3213         * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
3214         * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
3215         Likewise.
3216         * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
3217         Likewise.
3218         * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
3219         Likewise.
3220         * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
3221         * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
3222         * testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
3223         Likewise.
3224         * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
3225         Likewise.
3226         * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
3227         * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
3228         * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
3229         * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
3230         Likewise.
3231         * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
3232         Likewise.
3233         * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
3234         * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
3235         * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
3236         * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
3237         * testsuite/ext/random/rice_distribution/operators/serialize.cc:
3238         Likewise.
3239         * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
3240         default.cc: Likewise.
3241         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3242         equal.cc: Likewise.
3243         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3244         inequal.cc: Likewise.
3245         * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
3246         serialize.cc: Likewise.
3247         * testsuite/ext/random/triangular_distribution/cons/default.cc:
3248         Likewise.
3249         * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
3250         * testsuite/ext/random/triangular_distribution/operators/equal.cc:
3251         Likewise.
3252         * testsuite/ext/random/triangular_distribution/operators/inequal.cc:
3253         Likewise.
3254         * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
3255         Likewise.
3256         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3257         equal.cc: Likewise.
3258         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3259         generate.cc: Likewise.
3260         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3261         inequal.cc: Likewise.
3262         * testsuite/ext/random/uniform_on_sphere_distribution/operators/
3263         serialize.cc: Likewise.
3264         * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
3265         * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
3266         * testsuite/ext/random/von_mises_distribution/operators/equal.cc:
3267         Likewise.
3268         * testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
3269         Likewise.
3270         * testsuite/ext/rope/2.cc: Likewise.
3271         * testsuite/ext/rope/3.cc: Likewise.
3272         * testsuite/ext/rope/4.cc: Likewise.
3273         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3274         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
3275         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
3276         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
3277         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
3278         * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
3279         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
3280         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
3281         * testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
3282         * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
3283         * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
3284         * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
3285         * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
3286         * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
3287         * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
3288         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
3289         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
3290         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
3291         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
3292         * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
3293         * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
3294         * testsuite/ext/type_traits/add_unsigned.cc: Likewise.
3295         * testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
3296         * testsuite/ext/vstring/capacity/29134.cc: Likewise.
3297         * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
3298         * testsuite/ext/vstring/cons/58415-1.cc: Likewise.
3299         * testsuite/ext/vstring/cons/moveable.cc: Likewise.
3300         * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
3301         * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
3302         * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
3303         * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
3304         * testsuite/ext/vstring/hash/char/1.cc: Likewise.
3305         * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
3306         * testsuite/ext/vstring/init-list.cc: Likewise.
3307         * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
3308         * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
3309         * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
3310         * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
3311         * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
3312         * testsuite/ext/vstring/operators/1.cc: Likewise.
3313         * testsuite/ext/vstring/operators/2.cc: Likewise.
3315 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3317         PR libstdc++/65122
3318         * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
3319         aligned_alloc for types with extended alignment if available,
3320         otherwise throw bad_alloc if malloc doesn't return a suitable value.
3321         * include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
3322         (bitmap_allocator::deallocate): Use aligned new/delete for types with
3323         extended alignment.
3324         * include/ext/mt_allocator.h (__mt_alloc::allocate)
3325         (__mt_alloc::deallocate): Likewise.
3326         * include/ext/new_allocator.h (new_allocator::allocate)
3327         (new_allocator::deallocate): Likewise.
3328         * include/ext/pool_allocator.h (__pool_alloc::allocate)
3329         (__pool_alloc::deallocate): Likewise.
3330         * testsuite/20_util/allocator/overaligned.cc: New test.
3331         * testsuite/ext/bitmap_allocator/overaligned.cc: New test.
3332         * testsuite/ext/malloc_allocator/overaligned.cc: New test.
3333         * testsuite/ext/mt_allocator/overaligned.cc: New test.
3334         * testsuite/ext/new_allocator/overaligned.cc: New test.
3335         * testsuite/ext/pool_allocator/overaligned.cc: New test.
3337 2016-10-14  Tim Shen  <timshen@google.com>
3339         PR libstdc++/77944
3340         * include/std/variant: Include <bits/funcexcept.h> for __try and
3341         __catch.
3343 2016-10-14  Jonathan Wakely  <jwakely@redhat.com>
3345         * include/std/functional (_Reference_wrapper_base_impl): Remove.
3346         (_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
3347         (_Reference_wrapper_base): Inherit from new helpers.
3349 2016-10-13  Paolo Carlini  <paolo.carlini@oracle.com>
3351         * testsuite/24_iterators/container_access.cc: Remove 'test' variables.
3352         * testsuite/24_iterators/istream_iterator/2.cc: Likewise.
3353         * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
3354         * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
3355         * testsuite/24_iterators/operations/next.cc: Likewise.
3356         * testsuite/24_iterators/operations/prev.cc: Likewise.
3357         * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
3358         * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
3359         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
3360         * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
3361         * testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
3362         * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
3363         * testsuite/25_algorithms/all_of/1.cc: Likewise.
3364         * testsuite/25_algorithms/any_of/1.cc: Likewise.
3365         * testsuite/25_algorithms/binary_search/2.cc: Likewise.
3366         * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
3367         * testsuite/25_algorithms/clamp/1.cc: Likewise.
3368         * testsuite/25_algorithms/clamp/2.cc: Likewise.
3369         * testsuite/25_algorithms/copy/1.cc: Likewise.
3370         * testsuite/25_algorithms/copy/2.cc: Likewise.
3371         * testsuite/25_algorithms/copy/3.cc: Likewise.
3372         * testsuite/25_algorithms/copy/34595.cc: Likewise.
3373         * testsuite/25_algorithms/copy/4.cc: Likewise.
3374         * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
3375         * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
3376         * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
3377         * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
3378         * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
3379         * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
3380         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
3381         Likewise.
3382         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
3383         Likewise.
3384         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
3385         Likewise.
3386         * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
3387         Likewise.
3388         * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
3389         * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
3390         * testsuite/25_algorithms/copy_n/1.cc: Likewise.
3391         * testsuite/25_algorithms/copy_n/2.cc: Likewise.
3392         * testsuite/25_algorithms/copy_n/3.cc: Likewise.
3393         * testsuite/25_algorithms/copy_n/4.cc: Likewise.
3394         * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
3395         * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
3396         * testsuite/25_algorithms/equal_range/2.cc: Likewise.
3397         * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
3398         * testsuite/25_algorithms/fill/1.cc: Likewise.
3399         * testsuite/25_algorithms/fill/2.cc: Likewise.
3400         * testsuite/25_algorithms/fill/3.cc: Likewise.
3401         * testsuite/25_algorithms/fill/4.cc: Likewise.
3402         * testsuite/25_algorithms/fill_n/1.cc: Likewise.
3403         * testsuite/25_algorithms/find/39546.cc: Likewise.
3404         * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
3405         * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
3406         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
3407         Likewise.
3408         * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
3409         Likewise.
3410         * testsuite/25_algorithms/find_if/1.cc: Likewise.
3411         * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
3412         * testsuite/25_algorithms/for_each/1.cc: Likewise.
3413         * testsuite/25_algorithms/heap/1.cc: Likewise.
3414         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
3415         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
3416         * testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
3417         * testsuite/25_algorithms/includes/1.cc: Likewise.
3418         * testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
3419         * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
3420         * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
3421         * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
3422         * testsuite/25_algorithms/is_heap/1.cc: Likewise.
3423         * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
3424         * testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
3425         * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
3426         * testsuite/25_algorithms/is_permutation/2.cc: Likewise.
3427         * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
3428         * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
3429         * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
3430         * testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
3431         * testsuite/25_algorithms/lower_bound/2.cc: Likewise.
3432         * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
3433         * testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
3434         * testsuite/25_algorithms/max/1.cc: Likewise.
3435         * testsuite/25_algorithms/max/2.cc: Likewise.
3436         * testsuite/25_algorithms/max/3.cc: Likewise.
3437         * testsuite/25_algorithms/max/37547.cc: Likewise.
3438         * testsuite/25_algorithms/max/4.cc: Likewise.
3439         * testsuite/25_algorithms/min/1.cc: Likewise.
3440         * testsuite/25_algorithms/min/2.cc: Likewise.
3441         * testsuite/25_algorithms/min/3.cc: Likewise.
3442         * testsuite/25_algorithms/min/37547.cc: Likewise.
3443         * testsuite/25_algorithms/min/4.cc: Likewise.
3444         * testsuite/25_algorithms/minmax/1.cc: Likewise.
3445         * testsuite/25_algorithms/minmax/2.cc: Likewise.
3446         * testsuite/25_algorithms/minmax/3.cc: Likewise.
3447         * testsuite/25_algorithms/minmax/37547.cc: Likewise.
3448         * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
3449         * testsuite/25_algorithms/move/1.cc: Likewise.
3450         * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
3451         * testsuite/25_algorithms/move_backward/1.cc: Likewise.
3452         * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
3453         * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
3454         * testsuite/25_algorithms/none_of/1.cc: Likewise.
3455         * testsuite/25_algorithms/nth_element/1.cc: Likewise.
3456         * testsuite/25_algorithms/nth_element/2.cc: Likewise.
3457         * testsuite/25_algorithms/nth_element/3.cc: Likewise.
3458         * testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
3459         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
3460         * testsuite/25_algorithms/partial_sort/2.cc: Likewise.
3461         * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
3462         Likewise.
3463         * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
3464         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
3465         * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
3466         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
3467         * testsuite/25_algorithms/partition/1.cc: Likewise.
3468         * testsuite/25_algorithms/partition/moveable.cc: Likewise.
3469         * testsuite/25_algorithms/partition_copy/1.cc: Likewise.
3470         * testsuite/25_algorithms/partition_point/1.cc: Likewise.
3471         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
3472         * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
3473         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
3474         * testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
3475         * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
3476         * testsuite/25_algorithms/rotate/1.cc: Likewise.
3477         * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
3478         * testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
3479         * testsuite/25_algorithms/rotate/rotate.cc: Likewise.
3480         * testsuite/25_algorithms/search/1.cc: Likewise.
3481         * testsuite/25_algorithms/search_n/58358.cc: Likewise.
3482         * testsuite/25_algorithms/shuffle/1.cc: Likewise.
3483         * testsuite/25_algorithms/sort/1.cc: Likewise.
3484         * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
3485         * testsuite/25_algorithms/sort/moveable.cc: Likewise.
3486         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
3487         * testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
3488         * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
3489         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
3490         * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
3491         * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
3492         * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
3493         * testsuite/25_algorithms/stable_sort/2.cc: Likewise.
3494         * testsuite/25_algorithms/stable_sort/3.cc: Likewise.
3495         * testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
3496         * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
3497         Likewise.
3498         * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
3499         * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
3500         * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
3501         * testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
3502         * testsuite/25_algorithms/unique/11480.cc: Likewise.
3503         * testsuite/25_algorithms/unique/2.cc: Likewise.
3504         * testsuite/25_algorithms/unique/moveable.cc: Likewise.
3505         * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
3506         * testsuite/25_algorithms/unique_copy/2.cc: Likewise.
3507         * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
3508         * testsuite/25_algorithms/upper_bound/2.cc: Likewise.
3509         * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
3510         * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
3511         * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
3512         Likewise.
3513         * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
3514         Likewise.
3515         * testsuite/28_regex/algorithms/regex_match/basic/
3516         string_range_00_03.cc: Likewise.
3517         * testsuite/28_regex/algorithms/regex_match/basic/
3518         string_range_01_03.cc: Likewise.
3519         * testsuite/28_regex/algorithms/regex_match/basic/
3520         string_range_02_03.cc: Likewise.
3521         * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
3522         Likewise.
3523         * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
3524         Likewise.
3525         * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
3526         Likewise.
3527         * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
3528         Likewise.
3529         * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
3530         Likewise.
3531         * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
3532         Likewise.
3533         * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
3534         Likewise.
3535         * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
3536         Likewise.
3537         * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
3538         Likewise.
3539         * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
3540         * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
3541         Likewise.
3542         * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
3543         Likewise.
3544         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
3545         Likewise.
3546         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
3547         anymatcher.cc: Likewise.
3548         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
3549         Likewise.
3550         * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
3551         Likewise.
3552         * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
3553         Likewise.
3554         * testsuite/28_regex/algorithms/regex_match/extended/
3555         cstring_questionmark.cc: Likewise.
3556         * testsuite/28_regex/algorithms/regex_match/extended/
3557         cstring_range.cc: Likewise.
3558         * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
3559         Likewise.
3560         * testsuite/28_regex/algorithms/regex_match/extended/
3561         string_range_00_03.cc: Likewise.
3562         * testsuite/28_regex/algorithms/regex_match/extended/
3563         string_range_01_03.cc: Likewise.
3564         * testsuite/28_regex/algorithms/regex_match/extended/
3565         string_range_02_03.cc: Likewise.
3566         * testsuite/28_regex/algorithms/regex_match/extended/
3567         wstring_locale.cc: Likewise.
3568         * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
3569         Likewise.
3570         * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
3571         * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
3572         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
3573         Likewise.
3574         * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
3575         Likewise.
3576         * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
3577         * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
3578         * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
3579         Likewise.
3580         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
3581         * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
3582         * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
3583         * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
3584         * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
3585         * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
3586         * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
3587         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
3588         * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
3589         * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
3590         * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
3591         * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
3592         * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
3593         * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
3594         Likewise.
3595         * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
3596         Likewise.
3597         * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
3598         * testsuite/28_regex/basic_regex/ctors/extended/
3599         string_range_01_02_03.cc: Likewise.
3600         * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
3601         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
3602         * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
3603         * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
3604         * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
3605         * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
3606         * testsuite/28_regex/constants/error_type.cc: Likewise.
3607         * testsuite/28_regex/constants/match_flag_type.cc: Likewise.
3608         * testsuite/28_regex/init-list.cc: Likewise.
3609         * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
3610         * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
3611         Likewise.
3612         * testsuite/28_regex/iterators/regex_iterator/char/
3613         string_position_01.cc
3614         * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
3615         Likewise.
3616         * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
3617         default.cc: Likewise.
3618         * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
3619         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
3620         Likewise.
3621         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
3622         Likewise.
3623         * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
3624         * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
3625         Likewise.
3626         * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
3627         default.cc: Likewise.
3628         * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
3629         default.cc: Likewise.
3630         * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
3631         Likewise.
3632         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
3633         string_01.cc: Likewise.
3634         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
3635         wstring_02.cc: Likewise.
3636         * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
3637         * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
3638         * testsuite/28_regex/match_results/format.cc: Likewise.
3639         * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
3640         * testsuite/28_regex/match_results/swap.cc: Likewise.
3641         * testsuite/28_regex/match_results/typedefs.cc: Likewise.
3642         * testsuite/28_regex/regex_error/regex_error.cc: Likewise.
3643         * testsuite/28_regex/regression.cc: Likewise.
3644         * testsuite/28_regex/sub_match/cast_char.cc: Likewise.
3645         * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
3646         * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
3647         * testsuite/28_regex/sub_match/length.cc: Likewise.
3648         * testsuite/28_regex/traits/char/ctor.cc: Likewise.
3649         * testsuite/28_regex/traits/char/isctype.cc: Likewise.
3650         * testsuite/28_regex/traits/char/length.cc: Likewise.
3651         * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
3652         * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
3653         * testsuite/28_regex/traits/char/transform.cc: Likewise.
3654         * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
3655         * testsuite/28_regex/traits/char/translate.cc: Likewise.
3656         * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
3657         * testsuite/28_regex/traits/char/user_defined.cc: Likewise.
3658         * testsuite/28_regex/traits/char/value.cc: Likewise.
3659         * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
3660         * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
3661         * testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
3662         * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
3663         * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
3664         * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
3665         * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
3666         * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
3667         * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
3668         * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
3669         * testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
3670         * testsuite/29_atomics/atomic/60658.cc: Likewise.
3671         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3672         * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
3673         * testsuite/backward/11460.cc: Likewise.
3674         * testsuite/backward/hash_map/1.cc: Likewise.
3675         * testsuite/backward/hash_map/25896.cc: Likewise.
3676         * testsuite/backward/hash_set/1.cc: Likewise.
3677         * testsuite/backward/hash_set/25896.cc: Likewise.
3678         * testsuite/decimal/binary-arith.cc: Likewise.
3679         * testsuite/decimal/comparison.cc: Likewise.
3680         * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
3681         * testsuite/decimal/compound-assignment.cc: Likewise.
3682         * testsuite/decimal/conversion-from-float.cc: Likewise.
3683         * testsuite/decimal/conversion-from-integral.cc: Likewise.
3684         * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
3685         * testsuite/decimal/conversion-to-integral.cc: Likewise.
3686         * testsuite/decimal/ctor.cc: Likewise.
3687         * testsuite/decimal/incdec-memfunc.cc: Likewise.
3688         * testsuite/decimal/incdec.cc: Likewise.
3689         * testsuite/decimal/make-decimal.cc: Likewise.
3690         * testsuite/decimal/pr54036-1.cc: Likewise.
3691         * testsuite/decimal/pr54036-2.cc: Likewise.
3692         * testsuite/decimal/pr54036-3.cc: Likewise.
3693         * testsuite/decimal/unary-arith.cc: Likewise.
3694         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
3695         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
3696         Likewise.
3697         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
3698         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
3699         Likewise.
3700         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
3701         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
3702         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
3703         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
3704         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
3705         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
3706         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
3707         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
3708         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
3709         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
3710         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
3711         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
3712         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
3713         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
3714         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
3715         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
3716         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
3717         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
3718         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
3719         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
3720         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
3721         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
3722         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
3723         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
3724         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
3725         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
3726         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
3727         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
3728         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
3729         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
3730         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
3731         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
3732         * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
3733         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
3734         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
3735         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
3736         * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
3737         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
3738         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
3739         * testsuite/tr2/bases/value.cc: Likewise.
3740         * testsuite/tr2/direct_bases/value.cc: Likewise.
3741         * testsuite/util/debug/checks.h: Likewise.
3742         * testsuite/util/debug/unordered_checks.h: Likewise.
3743         * testsuite/util/testsuite_allocator.h: Likewise.
3744         * testsuite/util/testsuite_api.h: Likewise.
3745         * testsuite/util/testsuite_common_types.h: Likewise.
3746         * testsuite/util/testsuite_random.h: Likewise.
3747         * testsuite/util/testsuite_rvalref.h: Likewise.
3749 2016-10-13  Jonathan Wakely  <jwakely@redhat.com>
3751         * include/bits/shared_ptr_base.h: Include <functional>.
3752         [!__cpp_rtti]: Do not include <typeinfo>.
3753         * include/experimental/array: Do not include <functional>.
3754         * include/experimental/memory: Include <bits/functional_hash.h>
3755         instead of <functional>.
3756         * include/experimental/propagate_const: Include <bits/stl_function.h>,
3757         <bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
3758         * include/experimental/tuple: Do not include <functional>.
3759         * include/std/future: Include <functional>.
3760         * include/std/memory: Do not include <functional>.
3761         * include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
3762         * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
3763         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
3764         missing includes.
3765         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3766         * testsuite/20_util/specialized_algorithms/memory_management_tools/
3767         1.cc: Likewise.
3768         * testsuite/30_threads/call_once/60497.cc: Likewise.
3769         * testsuite/30_threads/lock/2.cc: Likewise.
3770         * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
3771         * testsuite/experimental/algorithm/sample.cc: Likewise.
3772         * testsuite/experimental/array/make_array.cc: Likewise.
3773         * testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
3774         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
3775         Adjust dg-error lines.
3776         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
3777         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
3778         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
3779         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
3780         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
3782         * testsuite/experimental/algorithm/sample.cc: Add missing header.
3784         * include/experimental/propagate_const (element_type): Qualify
3785         declval.
3787         * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
3788         instead of assert.
3790         * include/experiumental/functional (boyer_moore_searcher)
3791         (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
3792         with _GLIBCXX_STD_C.
3793         * include/std/functional: Likewise.
3795         * include/std/chrono (floor): Replace non-constexpr operation.
3796         * testsuite/20_util/duration_cast/rounding.cc: Test conversion to
3797         durations with floating pointer representations.
3799         * src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
3800         (_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
3802         * include/std/functional (_Bind_simple, _Bind_simple_helper)
3803         (__bind_simple): Remove.
3804         * include/std/future: Include <bits/invoke.h> instead of <functional>.
3805         (__future_base::_Task_state::_M_run)
3806         (__future_base::_Task_state::_M_run_delayed): Use lambda expressions
3807         instead of __bind_simple.
3808         (__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
3809         (async): Use thread::__make_invoker instead of __bind_simple.
3810         * include/std/thread: Include <tuple> and <bits/invoke.h> instead of
3811         <functional>.
3812         (thread::_Invoker, thread::__make_invoker): Define helpers to do
3813         INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
3815         * include/std/functional (_Not_fn): Make exception specifications
3816         depend on whether negating the result can throw.
3817         * testsuite/20_util/not_fn/1.cc: Move to ...
3818         * testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
3819         for types that can throw when negated and that cannot be negated.
3821         * include/bits/invoke.h (__invoke): Fix exception-specification.
3822         * include/std/functional (invoke): Likewise.
3823         * testsuite/20_util/function_objects/invoke/1.cc: New test.
3825 2016-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
3827         * testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
3828         __builtin_printf and __builtin_abort.
3829         * testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
3830         * scripts/testsuite_flags.in: Likewise.
3831         * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
3832         * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
3833         * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
3834         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
3835         * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
3836         * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
3837         * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
3838         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
3839         * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
3840         * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
3841         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
3842         Likewise.
3843         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
3844         Likewise.
3845         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3846         Likewise.
3847         * testsuite/27_io/objects/char/7.cc: Likewise.
3848         * testsuite/27_io/objects/char/9661-1.cc: Likewise.
3849         * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
3850         * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
3851         * testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
3852         * testsuite/18_support/bad_alloc/what.cc: Likewise.
3853         * testsuite/18_support/bad_cast/what.cc: Likewise.
3854         * testsuite/18_support/bad_exception/what.cc: Likewise.
3855         * testsuite/18_support/bad_typeid/what.cc: Likewise.
3856         * testsuite/18_support/exception/38732.cc: Likewise.
3857         * testsuite/18_support/exception/what.cc: Likewise.
3858         * testsuite/18_support/exception_ptr/64241.cc: Likewise.
3859         * testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
3860         * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
3861         * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
3862         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
3863         * testsuite/18_support/nested_exception/cons.cc: Likewise.
3864         * testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
3865         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
3866         * testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
3867         * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
3868         * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
3869         * testsuite/18_support/numeric_limits/digits10.cc: Likewise.
3870         * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
3871         * testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
3872         * testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
3873         * testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
3874         * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
3875         * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
3876         * testsuite/18_support/numeric_limits/min_max.cc: Likewise.
3877         * testsuite/18_support/numeric_limits/specialization_default_values.cc:
3878         Likewise.
3879         * testsuite/18_support/type_info/hash_code.cc: Likewise.
3880         * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
3881         * testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
3882         * testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
3883         * testsuite/19_diagnostics/error_category/operators/
3884         not_equal.cc: Likewise.
3885         * testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
3886         * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
3887         * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
3888         * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
3889         * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
3890         * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
3891         * testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
3892         * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
3893         * testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
3894         Likewise.
3895         * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
3896         * testsuite/19_diagnostics/error_condition/operators/equal.cc:
3897         Likewise.
3898         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
3899         Likewise.
3900         * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
3901         * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
3902         * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
3903         * testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
3904         * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
3905         * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
3906         * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
3907         * testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
3908         * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
3909         * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
3910         * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
3911         * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
3912         * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
3913         * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
3914         * testsuite/20_util/addressof/1.cc: Likewise.
3915         * testsuite/20_util/align/1.cc: Likewise.
3916         * testsuite/20_util/align/2.cc: Likewise.
3917         * testsuite/20_util/allocator/1.cc: Likewise.
3918         * testsuite/20_util/allocator/10378.cc: Likewise.
3919         * testsuite/20_util/allocator/8230.cc: Likewise.
3920         * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
3921         Likewise.
3922         * testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
3923         * testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
3924         * testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
3925         * testsuite/20_util/any/assign/exception.cc: Likewise.
3926         * testsuite/20_util/auto_ptr/1.cc: Likewise.
3927         * testsuite/20_util/auto_ptr/2.cc: Likewise.
3928         * testsuite/20_util/auto_ptr/3.cc: Likewise.
3929         * testsuite/20_util/auto_ptr/4.cc: Likewise.
3930         * testsuite/20_util/auto_ptr/5.cc: Likewise.
3931         * testsuite/20_util/auto_ptr/6.cc: Likewise.
3932         * testsuite/20_util/auto_ptr/7.cc: Likewise.
3933         * testsuite/20_util/bind/all_bound.cc: Likewise.
3934         * testsuite/20_util/bind/conv_result.cc: Likewise.
3935         * testsuite/20_util/bind/cv_quals.cc: Likewise.
3936         * testsuite/20_util/bind/cv_quals_2.cc
3937         * testsuite/20_util/bind/nested.cc: Likewise.
3938         * testsuite/20_util/bind/placeholders.cc: Likewise.
3939         * testsuite/20_util/bind/ref.cc: Likewise.
3940         * testsuite/20_util/bind/ref2.cc: Likewise.
3941         * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
3942         * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
3943         * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
3944         * testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
3945         * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
3946         * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
3947         * testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
3948         * testsuite/20_util/duration/cons/1.cc: Likewise.
3949         * testsuite/20_util/duration/cons/2.cc: Likewise.
3950         * testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
3951         * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
3952         * testsuite/20_util/enable_shared_from_this/members/assign.cc:
3953         Likewise.
3954         * testsuite/20_util/exchange/1.cc: Likewise.
3955         * testsuite/20_util/forward/a.cc: Likewise.
3956         * testsuite/20_util/forward/b.cc: Likewise.
3957         * testsuite/20_util/forward/d.cc: Likewise.
3958         * testsuite/20_util/function/1.cc: Likewise.
3959         * testsuite/20_util/function/2.cc: Likewise.
3960         * testsuite/20_util/function/3.cc: Likewise.
3961         * testsuite/20_util/function/4.cc: Likewise.
3962         * testsuite/20_util/function/43397.cc: Likewise.
3963         * testsuite/20_util/function/5.cc: Likewise.
3964         * testsuite/20_util/function/6.cc: Likewise.
3965         * testsuite/20_util/function/7.cc: Likewise.
3966         * testsuite/20_util/function/8.cc: Likewise.
3967         * testsuite/20_util/function/9.cc: Likewise.
3968         * testsuite/20_util/function/assign/move.cc: Likewise.
3969         * testsuite/20_util/function/cons/move.cc: Likewise.
3970         * testsuite/20_util/function_objects/dr660.cc: Likewise.
3971         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
3972         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
3973         * testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
3974         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
3975         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
3976         * testsuite/20_util/hash/operators/size_t.cc: Likewise.
3977         * testsuite/20_util/hash/quality.cc: Likewise.
3978         * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
3979         * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
3980         * testsuite/20_util/is_function/24808.cc: Likewise.
3981         * testsuite/20_util/is_object/24808.cc: Likewise.
3982         * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
3983         * testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
3984         * testsuite/20_util/owner_less/cmp.cc: Likewise.
3985         * testsuite/20_util/pair/1.cc: Likewise.
3986         * testsuite/20_util/pair/2.cc: Likewise.
3987         * testsuite/20_util/pair/3.cc: Likewise.
3988         * testsuite/20_util/pair/4.cc: Likewise.
3989         * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
3990         * testsuite/20_util/pair/moveable.cc: Likewise.
3991         * testsuite/20_util/pair/piecewise.cc: Likewise.
3992         * testsuite/20_util/pair/swap.cc: Likewise.
3993         * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
3994         * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
3995         * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
3996         * testsuite/20_util/ratio/cons/cons1.cc: Likewise.
3997         * testsuite/20_util/ratio/operations/45866.cc: Likewise.
3998         * testsuite/20_util/ratio/operations/47913.cc: Likewise.
3999         * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
4000         * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
4001         * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
4002         * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
4003         * testsuite/20_util/scoped_allocator/1.cc: Likewise.
4004         * testsuite/20_util/scoped_allocator/2.cc: Likewise.
4005         * testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
4006         * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
4007         * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
4008         * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
4009         * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
4010         * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
4011         Likewise.
4012         * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
4013         * testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
4014         * testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
4015         * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
4016         * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
4017         * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
4018         * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
4019         * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
4020         * testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
4021         * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
4022         * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
4023         * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
4024         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
4025         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
4026         Likewise.
4027         * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
4028         Likewise.
4029         * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
4030         * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
4031         * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
4032         * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
4033         * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
4034         * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
4035         * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
4036         * testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
4037         * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
4038         * testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
4039         * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
4040         * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
4041         * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
4042         * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
4043         * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
4044         * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
4045         * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
4046         * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
4047         * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
4048         * testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
4049         * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
4050         * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
4051         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
4052         Likewise.
4053         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4054         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
4055         move_iterators/1.cc: Likewise.
4056         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
4057         move_iterators/1.cc: Likewise.
4058         * testsuite/20_util/temporary_buffer.cc: Likewise.
4059         * testsuite/20_util/time_point/1.cc: Likewise.
4060         * testsuite/20_util/time_point/2.cc: Likewise.
4061         * testsuite/20_util/time_point/3.cc: Likewise.
4062         * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
4063         * testsuite/20_util/tuple/48476.cc: Likewise.
4064         * testsuite/20_util/tuple/comparison_operators/comparisons.cc:
4065         Likewise.
4066         * testsuite/20_util/tuple/cons/allocators.cc: Likewise.
4067         * testsuite/20_util/tuple/cons/assignment.cc: Likewise.
4068         * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
4069         * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
4070         * testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
4071         * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
4072         * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
4073         * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
4074         Likewise.
4075         * testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
4076         * testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
4077         * testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
4078         * testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
4079         * testsuite/20_util/tuple/element_access/get.cc: Likewise.
4080         * testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
4081         * testsuite/20_util/tuple/moveable.cc: Likewise.
4082         * testsuite/20_util/tuple/swap.cc: Likewise.
4083         * testsuite/20_util/tuple/tuple_size.cc: Likewise.
4084         * testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
4085         * testsuite/20_util/typeindex/hash.cc: Likewise.
4086         * testsuite/20_util/typeindex/hash_code.cc: Likewise.
4087         * testsuite/20_util/typeindex/name.cc: Likewise.
4088         * testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
4089         * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
4090         * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
4091         * testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
4092         * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
4093         * testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
4094         * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
4095         * testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
4096         * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
4097         * testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
4098         * testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
4099         * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
4100         * testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
4101         * testsuite/20_util/unique_ptr/specialized_algorithms/
4102         comparisons.cc: Likewise.
4103         * testsuite/20_util/unique_ptr/specialized_algorithms/
4104         comparisons_array.cc: Likewise.
4105         * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
4106         Likewise.
4107         * testsuite/20_util/uses_allocator/construction.cc: Likewise.
4108         * testsuite/20_util/uses_allocator/value.cc: Likewise.
4109         * testsuite/20_util/variant/run.cc: Likewise.
4110         * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
4111         * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
4112         * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
4113         Likewise.
4114         * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
4115         * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
4116         Likewise.
4117         * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
4118         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
4119         Likewise.
4120         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
4121         Likewise.
4122         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
4123         Likewise.
4124         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
4125         Likewise.
4126         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
4127         Likewise.
4128         * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
4129         * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
4130         * testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
4131         * testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
4132         * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
4133         Likewise.
4134         * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
4135         * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
4136         Likewise.
4137         * testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
4138         * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
4139         Likewise.
4140         * testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
4141         * testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
4142         * testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
4143         * testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
4144         * testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
4145         * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
4146         * testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
4147         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
4148         * testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
4149         * testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
4150         * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
4151         * testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
4152         * testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
4153         * testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
4154         * testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
4155         * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
4156         * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
4157         * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
4158         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
4159         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
4160         * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
4161         * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
4162         Likewise.
4163         * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
4164         * testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
4165         * testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
4166         * testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
4167         * testsuite/21_strings/basic_string/element_access/char/58163.cc:
4168         Likewise.
4169         * testsuite/21_strings/basic_string/element_access/char/empty.cc:
4170         Likewise.
4171         * testsuite/21_strings/basic_string/element_access/char/front_back.cc:
4172         Likewise.
4173         * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
4174         Likewise.
4175         * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
4176         Likewise.
4177         * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
4178         Likewise.
4179         * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
4180         Likewise.
4181         * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
4182         Likewise.
4183         * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
4184         Likewise.
4185         * testsuite/21_strings/basic_string/element_access/wchar_t/
4186         front_back.cc: Likewise.
4187         * testsuite/21_strings/basic_string/init-list.cc: Likewise.
4188         * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
4189         Likewise.
4190         * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
4191         Likewise.
4192         * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
4193         Likewise.
4194         * testsuite/21_strings/basic_string/inserters_extractors/char/
4195         28277.cc: Likewise.
4196         * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
4197         Likewise.
4198         * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
4199         Likewise.
4200         * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
4201         Likewise.
4202         * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
4203         Likewise.
4204         * testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
4205         Likewise.
4206         * testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
4207         Likewise.
4208         * testsuite/21_strings/basic_string/inserters_extractors/pod/
4209         10081-in.cc: Likewise.
4210         * testsuite/21_strings/basic_string/inserters_extractors/pod/
4211         10081-out.cc: Likewise.
4212         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
4213         Likewise.
4214         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4215         10.cc: Likewise.
4216         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4217         11.cc: Likewise.
4218         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
4219         28277.cc: Likewise.
4220         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
4221         Likewise.
4222         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
4223         Likewise.
4224         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
4225         Likewise.
4226         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
4227         Likewise.
4228         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
4229         Likewise.
4230         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
4231         Likewise.
4232         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
4233         Likewise.
4234         * testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
4235         Likewise.
4236         * testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
4237         Likewise.
4238         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
4239         Likewise.
4240         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
4241         Likewise.
4242         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
4243         Likewise.
4244         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
4245         Likewise.
4246         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
4247         Likewise.
4248         * testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
4249         Likewise.
4250         * testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
4251         Likewise.
4252         * testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
4253         Likewise.
4254         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
4255         Likewise.
4256         * testsuite/21_strings/basic_string/modifiers/assign/char/
4257         move_assign.cc: Likewise.
4258         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
4259         Likewise.
4260         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
4261         Likewise.
4262         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
4263         Likewise.
4264         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
4265         Likewise.
4266         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
4267         move_assign.cc: Likewise.
4268         * testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
4269         Likewise.
4270         * testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
4271         Likewise.
4272         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
4273         Likewise.
4274         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
4275         Likewise.
4276         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
4277         Likewise.
4278         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
4279         Likewise.
4280         * testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
4281         Likewise.
4282         * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
4283         Likewise.
4284         * testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
4285         Likewise.
4286         * testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
4287         Likewise.
4288         * testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
4289         Likewise.
4290         * testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
4291         Likewise.
4292         * testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
4293         Likewise.
4294         * testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
4295         Likewise.
4296         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
4297         Likewise.
4298         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
4299         Likewise.
4300         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
4301         Likewise.
4302         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
4303         Likewise.
4304         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
4305         Likewise.
4306         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
4307         Likewise.
4308         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
4309         Likewise.
4310         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
4311         Likewise.
4312         * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
4313         Likewise.
4314         * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
4315         Likewise.
4316         * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
4317         Likewise.
4318         * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
4319         Likewise.
4320         * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
4321         Likewise.
4322         * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
4323         Likewise.
4324         * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
4325         Likewise.
4326         * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
4327         Likewise.
4328         * testsuite/21_strings/basic_string/numeric_conversions/char/
4329         stoull.cc: Likewise.
4330         * testsuite/21_strings/basic_string/numeric_conversions/char/
4331         to_string.cc: Likewise.
4332         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4333         dr1261.cc: Likewise.
4334         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4335         stod.cc: Likewise.
4336         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4337         stof.cc: Likewise.
4338         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4339         stoi.cc: Likewise.
4340         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4341         stol.cc: Likewise.
4342         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4343         stold.cc: Likewise.
4344         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4345         stoll.cc: Likewise.
4346         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4347         stoul.cc: Likewise.
4348         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4349         stoull.cc: Likewise.
4350         * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
4351         to_wstring.cc: Likewise.
4352         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
4353         Likewise.
4354         * testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
4355         Likewise.
4356         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
4357         Likewise.
4358         * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
4359         Likewise.
4360         * testsuite/21_strings/basic_string/operations/compare/wchar_t/
4361         13650.cc: Likewise.
4362         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
4363         Likewise.
4364         * testsuite/21_strings/basic_string/operations/data/char/1.cc:
4365         Likewise.
4366         * testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
4367         Likewise.
4368         * testsuite/21_strings/basic_string/operations/find/char/1.cc:
4369         Likewise.
4370         * testsuite/21_strings/basic_string/operations/find/char/2.cc:
4371         Likewise.
4372         * testsuite/21_strings/basic_string/operations/find/char/3.cc:
4373         Likewise.
4374         * testsuite/21_strings/basic_string/operations/find/char/4.cc:
4375         Likewise.
4376         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
4377         Likewise.
4378         * testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
4379         Likewise.
4380         * testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
4381         Likewise.
4382         * testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
4383         Likewise.
4384         * testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
4385         Likewise.
4386         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
4387         Likewise.
4388         * testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
4389         Likewise.
4390         * testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
4391         Likewise.
4392         * testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
4393         Likewise.
4394         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
4395         Likewise.
4396         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
4397         Likewise.
4398         * testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
4399         Likewise.
4400         * testsuite/21_strings/basic_string/operations/substr/char/1.cc:
4401         Likewise.
4402         * testsuite/21_strings/basic_string/operations/substr/wchar_t/
4403         1.cc: Likewise.
4404         * testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
4405         * testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
4406         * testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
4407         * testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
4408         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
4409         * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
4410         * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
4411         * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
4412         * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
4413         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
4414         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
4415         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
4416         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
4417         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
4418         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
4419         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
4420         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
4421         * testsuite/21_strings/basic_string_view/element_access/char/
4422         1.cc: Likewise.
4423         * testsuite/21_strings/basic_string_view/element_access/char/
4424         empty.cc: Likewise.
4425         * testsuite/21_strings/basic_string_view/element_access/char/
4426         front_back.cc: Likewise.
4427         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4428         1.cc: Likewise.
4429         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4430         empty.cc: Likewise.
4431         * testsuite/21_strings/basic_string_view/element_access/wchar_t/
4432         front_back.cc: Likewise.
4433         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
4434         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
4435         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
4436         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
4437         Likewise.
4438         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
4439         Likewise.
4440         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
4441         Likewise.
4442         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
4443         Likewise.
4444         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
4445         char/1.cc: Likewise.
4446         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
4447         wchar_t/1.cc: Likewise.
4448         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
4449         char/1.cc: Likewise.
4450         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
4451         wchar_t/1.cc: Likewise.
4452         * testsuite/21_strings/basic_string_view/operations/compare/char/
4453         1.cc: Likewise.
4454         * testsuite/21_strings/basic_string_view/operations/compare/char/
4455         13650.cc: Likewise.
4456         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
4457         1.cc: Likewise.
4458         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
4459         13650.cc: Likewise.
4460         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
4461         Likewise.
4462         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
4463         Likewise.
4464         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
4465         Likewise.
4466         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
4467         Likewise.
4468         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
4469         Likewise.
4470         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
4471         Likewise.
4472         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
4473         Likewise.
4474         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
4475         Likewise.
4476         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4477         1.cc: Likewise.
4478         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4479         2.cc: Likewise.
4480         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4481         3.cc: Likewise.
4482         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
4483         4.cc: Likewise.
4484         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4485         1.cc: Likewise.
4486         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4487         2.cc: Likewise.
4488         * testsuite/21_strings/basic_string_view/operations/rfind/char/
4489         3.cc: Likewise.
4490         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4491         1.cc: Likewise.
4492         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4493         2.cc: Likewise.
4494         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
4495         3.cc: Likewise.
4496         * testsuite/21_strings/basic_string_view/operations/string_conversion/
4497         1.cc: Likewise.
4498         * testsuite/21_strings/basic_string_view/operations/substr/char/
4499         1.cc: Likewise.
4500         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
4501         1.cc: Likewise.
4502         * testsuite/21_strings/basic_string_view/operators/char/2.cc:
4503         Likewise.
4504         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
4505         Likewise.
4506         * testsuite/21_strings/c_strings/char/1.cc: Likewise.
4507         * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
4508         * testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
4509         * testsuite/21_strings/char_traits/requirements/char/57704.cc:
4510         Likewise.
4511         * testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
4512         * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
4514         * doc/xml/manual/test.xml: Fix typo.
4516 2016-10-12  Jonathan Wakely  <jwakely@redhat.com>
4518         * doc/xml/manual/status_cxx2017.xml: Add std::sample status.
4519         * doc/html/*: Regenerate.
4520         * include/experimental/algorithm (__sample): Move to bits/stl_algo.h
4521         and into namespace std.
4522         * include/bits/stl_algo.h (__sample): Define here. Fix invalid use
4523         of input iterator. Defend against overloaded comma operator.
4524         (sample): Define for C++17.
4525         * testsuite/25_algorithms/sample/1.cc: New test.
4527         * testsuite/util/testsuite_common_types.h
4528         (bitwise_assignment_operators): Use direct-initialization for C++11
4529         and later, to avoid CopyConstructible requirement.
4530         * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
4531         line numbers.
4532         * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
4533         * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
4534         * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
4535         * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
4536         Adjust expected errors and line numbers.
4538         * include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
4539         (call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
4541         * include/bits/stl_uninitialized.h
4542         (__uninitialized_default_novalue_n_1<true>): Add missing return.
4543         * testsuite/20_util/specialized_algorithms/memory_management_tools/
4544         1.cc: Check return values of uninitialized_xxx_n algorithms.
4546         * libsupc++/nested_exception.h (throw_with_nested): Remove return.
4548         * doc/xml/manual/intro.xml: Document LWG 2442 status.
4549         * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
4550         [_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
4551         partial specialization to unpack args and forward to std::invoke.
4552         (call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
4553         instead of __bind_simple and __once_call_impl.
4554         (call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
4555         __bind_simple.
4556         * testsuite/30_threads/call_once/dr2442.cc: New test.
4558 2016-10-11  Jonathan Wakely  <jwakely@redhat.com>
4560         * include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
4561         _M_assign_dispatch directly with correct tag.
4563         * doc/xml/manual/intro.xml: Document LWG 2484 status.
4564         * libsupc++/nested_exception.h (_Throw_with_nested_impl)
4565         (_Throw_with_nested_helper): Remove.
4566         (__throw_with_nested_impl): New overloaded functions to implement
4567         throw_with_nested logic.
4568         (throw_with_nested): Call __throw_with_nested_impl.
4569         (_Rethrow_if_nested_impl): Remove
4570         (__rethrow_if_nested_impl): New overloaded functions to implement
4571         rethrow_if_nested logic.
4572         (rethrow_if_nested): Call __rethrow_if_nested_impl.
4573         * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
4574         problem cases from LWG 2484.
4576         * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
4577         Register printer for std::__cxx11::list.
4578         * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
4579         std::__cxx11::list as well as std::list.
4581         * include/experimental/string_view (basic_string_view::_S_compare):
4582         Remove redundant const from return type.
4583         * include/std/string_view (basic_string_view:_S_compare): Likewise.
4585         * include/bits/std_mutex.h (mutex::native_handle)
4586         (lock_guard(mutex_type&, adopt_lock_t)
4587         (unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
4588         * include/std/mutex (recursive_mutex, timed_mutex)
4589         (recursive_timed_mutex): Likewise.
4591 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
4593         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
4594         Replace <literallayout> with nested <variablelist> elements. Update
4595         some more outdated text.
4596         * doc/html/*: Regenerate.
4598 2016-10-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
4600         Make any's copy assignment operator exception-safe,
4601         don't copy the underlying value when any is moved,
4602         make in_place constructors explicit.
4603         * include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
4604         Make explicit.
4605         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
4606         Likewise.
4607         (operator=(const any&)): Make strongly exception-safe.
4608         (operator=(any&&)): reset() unconditionally in the case where
4609         rhs has a value.
4610         (operator=(_ValueType&&)): Indent the return type.
4611         (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
4612         * testsuite/20_util/any/assign/2.cc: Adjust.
4613         * testsuite/20_util/any/assign/exception.cc: New.
4614         * testsuite/20_util/any/cons/2.cc: Adjust.
4615         * testsuite/20_util/any/cons/explicit.cc: New.
4616         * testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
4618 2016-10-10  Jonathan Wakely  <jwakely@redhat.com>
4620         * doc/xml/manual/appendix_contributing.xml (contrib.organization):
4621         Describe other subdirectories and add markup. Remove outdated
4622         reference to check-script target.
4623         * doc/html/*: Regenerate.
4625         * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
4627         * libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
4628         with noexcept.
4630         * include/std/functional (_Bind_result::__enable_if_void): Use alias
4631         template instead of class template.
4632         (_Bind_result::__disable_if_void): Likewise.
4633         (_Bind_result::__call): Adjust uses of __enable_if_void and
4634         __disable_if_void.
4636         * doc/xml/manual/intro.xml: Document DR 2296 status.
4637         * doc/xml/manual/status_cxx2017.xml: Update status.
4638         * include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
4639         call __builtin_addressof.
4640         (addressof): Add _GLIBCXX17_CONSTEXPR.
4641         * testsuite/20_util/addressof/requirements/constexpr.cc: New test.
4642         * testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
4643         * testsuite/20_util/forward/f_neg.cc: Likewise.
4645         * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
4646         * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
4647         is_always_equal.
4648         * testsuite/util/testsuite_allocator.h
4649         (uneq_allocator::is_always_equal): Define as false_type.
4651         * include/experimental/numeric (gcd, lcm): Make bool arguments
4652         ill-formed.
4653         * include/std/numeric (gcd, lcm): Likewise.
4654         * testsuite/26_numerics/gcd/gcd_neg.cc: New test.
4655         * testsuite/26_numerics/lcm/lcm_neg.cc: New test.
4657         * include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
4658         Add noexcept.
4659         * include/bits/shared_ptr_base.h
4660         (__enable_shared_from_this::weak_from_this): Likewise.
4661         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
4662         Test exception-specification of weak_from_this.
4664 2016-10-07  Jonathan Wakely  <jwakely@redhat.com>
4666         * doc/xml/manual/status_cxx1998.xml: Improve documentation of
4667         implementation-defined properties.
4668         * doc/xml/manual/status_cxx2011.xml: Likewise.
4669         * doc/xml/manual/status_cxx2017.xml: Likewise.
4671         * doc/xml/manual/status_cxx2017.xml: Update status.
4672         * include/std/type_traits (has_unique_object_representations): Define.
4673         * testsuite/20_util/has_unique_object_representations/value.cc: New.
4674         * testsuite/20_util/has_unique_object_representations/requirements/
4675         explicit_instantiation.cc: New.
4676         * testsuite/20_util/has_unique_object_representations/requirements/
4677         typedefs.cc: New.
4679 2016-10-06  Jonathan Wakely  <jwakely@redhat.com>
4681         * doc/xml/manual/status_cxx2011.xml: Update status.
4682         * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
4683         New helpers for recursive OUTERMOST.
4684         (__outermost): Use __outermost_type::_S_outermost.
4685         (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
4686         (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
4687         __outermost_type helper.
4688         (scoped_allocator_adaptor::_Constructible): New alias template.
4689         (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
4690         Constrain template constructors.
4691         * testsuite/20_util/scoped_allocator/3.cc: New test.
4692         * testsuite/20_util/scoped_allocator/outermost.cc: New test.
4694 2016-10-05  Jonathan Wakely  <jwakely@redhat.com>
4696         PR libstdc++/70564
4697         * testsuite/20_util/not_fn/1.cc: Fix test.
4698         * testsuite/experimental/functional/not_fn.cc: Likewise.
4700         PR libstdc++/70101
4701         * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
4702         constructors.
4703         * testsuite/23_containers/priority_queue/allocator.cc: New test.
4705         PR libstdc++/77864
4706         * include/bits/stl_map.h (map::map()): Use nothrow constructibility
4707         of comparison function in conditional noexcept.
4708         * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
4709         * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
4710         * include/bits/stl_set.h (set::set()): Likewise.
4711         * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
4712         New test.
4713         * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
4714         Likewise.
4715         * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
4716         Likewise.
4717         * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
4718         Likewise.
4720         * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
4721         alias declaration.
4723         PR libstdc++/70564
4724         * include/experimental/functional (_Not_fn): Remove.
4725         (not_fn): Use std::_Not_fn.
4726         * include/std/functional (_Not_fn): Add second parameter to
4727         disambiguate copying from initialization by not_fn. Define for C++14.
4728         (not_fn): Add second argument to initialization.
4729         * testsuite/20_util/not_fn/1.cc: Copy call wrapper using
4730         direct-initialization.
4732 2016-10-03  François Dumont  <fdumont@gcc.gnu.org>
4734         * src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
4735         declaration...
4736         * src/c++11/mutex_pool.h: ... here. New.
4737         * src/c++11/debug.cc: Use latter.
4739 2016-10-03  Jonathan Wakely  <jwakely@redhat.com>
4741         * doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
4742         * doc/html/*: Regenerate.
4743         * include/experimental/numeric (__abs): Move to <numeric>.
4744         (gcd, lcm): Use __detail::gcd and __detail::lcm.
4745         * include/std/numeric (__detail::__abs_integral)
4746         (__detail::__gcd, __detail::__lcm): Define.
4747         (gcd, lcm): Define for C++17.
4748         * testsuite/26_numerics/gcd/1.cc: New test.
4749         * testsuite/26_numerics/lcm/1.cc: New test.
4750         * testsuite/experimental/numeric/gcd.cc: Swap contents with ...
4751         * testsuite/experimental/numeric/lcd.cc: ... this.
4753         PR libstdc++/68323
4754         PR libstdc++/77794
4755         * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
4756         __cxa_thread_atexit and __gnu_cxx::__freeres.
4757         * include/Makefile.am: Add <experimental/bits/lfts_config.h>
4758         * include/Makefile.in: Regenerate.
4759         * include.bits/basic_string.h: Fix nesting of versioned namespaces.
4760         * include/bits/c++config: Declare versioned namespaces for literals.
4761         * include/bits/regex.h (basic_regex, match_results): Add workarounds
4762         for PR c++/59256.
4763         * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
4764         * include/std/chrono: Likewise.
4765         * include/std/complex: Likewise.
4766         * include/std/string_view: Likewise.
4767         * include/std/variant: Likewise. Add workaround for PR c++/59256.
4768         * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
4769         * include/experimental/bits/lfts_config.h: Declare versioned
4770         namespaces.
4771         * include/experimental/algorithm: Include
4772         <experimental/bits/lfts_config.h>.
4773         * include/experimental/any: Likewise.
4774         * include/experimental/bits/erase_if.h: Likewise.
4775         * include/experimental/chrono: Likewise.
4776         * include/experimental/functional: Likewise.
4777         * include/experimental/memory_resource: Likewise.
4778         * include/experimental/optional: Likewise.
4779         * include/experimental/propagate_const: Likewise.
4780         * include/experimental/random: Likewise.
4781         * include/experimental/ratio: Likewise.
4782         * include/experimental/system_error: Likewise.
4783         * include/experimental/tuple: Likewise.
4784         * include/experimental/type_traits: Likewise.
4785         * include/experimental/utility: Likewise.
4786         * include/experimental/string_view: Likewise. Fix nesting of
4787         versioned namespaces.
4788         * include/experimental/bits/string_view.tcc: Reopen inline namespace
4789         for non-inline function definitions.
4790         * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
4791         * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
4792         * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
4793         * testsuite/experimental/propagate_const/assignment/move_neg.cc:
4794         Likewise.
4795         * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
4796         * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
4797         * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
4798         * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
4799         * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
4800         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
4802         PR libstdc++/77814
4803         * include/bits/std_abs.h: Use "C++" language linkage.
4804         * testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
4805         the end. Add <stdalign.h>.
4807 2016-10-03  Ville Voutilainen  <ville.voutilainen@gmail.com>
4809         PR libstdc++/77802
4810         * testsuite/20_util/tuple/77802.cc: New.
4812         Revert:
4813         2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
4814         Implement LWG 2729 for tuple.
4815         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
4816         Suppress conditionally.
4817         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
4818         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
4819         (_Tuple_impl(const _Head&)): Constrain.
4820         (_Tuple_impl(_UHead&&)): Likewise.
4821         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
4822         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
4823         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
4824         (operator=(const tuple&)): Enable conditionally.
4825         (operator=(tuple&&)): Suppress conditionally.
4826         (operator=(const tuple<_UElements...>&)): Constrain.
4827         (operator=(tuple<_UElements...>&&)): Likewise.
4828         (operator=(const tuple&)): Enable conditionally (2-param tuple).
4829         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
4830         (operator=(const tuple<_U1, _U2>&)): Constrain.
4831         (operator=(tuple<_U1, _U2>&&)): Likewise.
4832         (operator=(const pair<_U1, _U2>&)): Likewise.
4833         (operator=(pair<_U1, _U2>&&)): Likewise.
4834         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
4835         * testsuite/20_util/tuple/tuple_traits.cc: New.
4837 2016-09-30  Jonathan Wakely  <jwakely@redhat.com>
4839         PR libstdc++/77795
4840         * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
4841         for gets.
4842         * config.h.in: Regenerate.
4843         * configure: Regenerate.
4844         * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
4845         for C++98 and C++11.
4846         * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
4847         * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
4849         * doc/xml/manual/intro.xml: Document LWG 2192 changes.
4850         * doc/html/*: Regenerate.
4851         * include/Makefile.am: Add bits/std_abs.h.
4852         * include/Makefile.in: Regenerate.
4853         * include/bits/std_abs.h: New header defining all required overloads
4854         of std::abs in one place (LWG 2294).
4855         * include/c_global/cmath (abs(double), abs(float), abs(long double)):
4856         Move to bits/std_abs.h.
4857         (abs<_Tp>(_Tp)): Remove.
4858         * include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
4859         Move to bits/std_abs.h.
4860         * testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
4861         * testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
4862         * testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
4863         * testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
4865         PR libstdc++/77801
4866         * include/experimental/numeric: Include <numeric>.
4867         (__abs): Define.
4868         (gcd, lcm): Use __abs instead of std::abs.
4869         * testsuite/experimental/numeric/77801.cc: New test.
4870         * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
4871         * testsuite/experimental/numeric/lcm.cc: Likewise.
4873 2016-09-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
4875         Make optional::reset noexcept, make optional::value
4876         work in constant expressions.
4877         * include/std/optional (_M_get): Make constexpr.
4878         (reset): Make noexcept.
4879         * testsuite/20_util/optional/assignment/7.cc: New.
4880         * testsuite/20_util/optional/observers/6.cc: New.
4882 2016-09-29  Jonathan Wakely  <jwakely@redhat.com>
4884         * include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
4885         outside _GLIBCXX_USE_C99_MATH_TR1 condition.
4887 2016-09-29  Alan Modra  <amodra@gmail.com>
4889         * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
4890         * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
4891         Use LONG_DOUBLE_COMPAT_FLAGS.
4892         * Makefile.in: Regenerate.
4893         * configure: Regenerate.
4894         * doc/Makefile.in: Regenerate.
4895         * include/Makefile.in: Regenerate.
4896         * libsupc++/Makefile.in: Regenerate.
4897         * po/Makefile.in: Regenerate.
4898         * python/Makefile.in: Regenerate.
4899         * src/Makefile.in: Regenerate.
4900         * src/c++11/Makefile.in: Regenerate.
4901         * src/c++98/Makefile.in: Regenerate.
4902         * src/filesystem/Makefile.in: Regenerate.
4903         * testsuite/Makefile.in: Regenerate.
4905 2016-09-28  Jonathan Wakely  <jwakely@redhat.com>
4907         * include/std/chrono (system_clock): Fix typo in comment.
4909         * include/experimental/bits/fs_fwd.h (file_time_type): Simplify
4910         definition.
4911         * src/filesystem/ops.cc (file_time): Take error_code parameter and
4912         check for overflow.
4913         (do_copy_file, last_write_time): Pass error_code in file_time calls.
4914         * testsuite/experimental/filesystem/operations/last_write_time.cc:
4915         New.
4916         * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
4918         PR libstdc++/77686
4919         * include/std/functional (_Any_data): Add may_alias attribute.
4921 2016-09-27  Jonathan Wakely  <jwakely@redhat.com>
4923         * doc/xml/manual/status_cxx2017.xml: Update status.
4924         * doc/html/*: Regenerate.
4925         * include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
4926         * testsuite/20_util/function_objects/searchers.cc: Test feature macro.
4928         * doc/xml/manual/status_cxx2017.xml: Update status.
4929         * include/c_global/cmath (hypot): Add three-dimensional overloads.
4930         * testsuite/26_numerics/headers/cmath/hypot.cc: New.
4932 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
4934         PR libstdc++/77727
4935         * include/std/optional (optional(const optional<_Up>&)):
4936         Default-initialize the base and use emplace.
4937         (optional(optional<_Up>&&)): Likewise.
4938         * testsuite/20_util/optional/cons/77727.cc: New.
4940 2016-09-26  François Dumont  <fdumont@gcc.gnu.org>
4942         * include/debug/safe_base.h
4943         (_Safe_iterator_base::_M_detach_single): Make public.
4945 2016-09-26  Jonathan Wakely  <jwakely@redhat.com>
4947         * include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
4948         redefine macro defined in <bits/stl_iterator.h>.
4950         * include/bits/stl_map.h (map::extract(const_iterator)): Assert that
4951         iterator is not past-the-end.
4952         * include/bits/stl_multimap.h (multimap::extract(const_iterator)):
4953         Likewise.
4954         * include/bits/stl_multiset.h (multiset::extract(const_iterator)):
4955         Likewise.
4956         * include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
4957         * include/bits/unordered_map.h (unordered_map::extract(const_iterator))
4958         (unordered_multimap::extract(const_iterator)): Likewise.
4959         * include/bits/unordered_set.h (unordered_set::extract(const_iterator))
4960         (unordered_multiset::extract(const_iterator)): Likewise.
4962 2016-09-26  Ville Voutilainen  <ville.voutilainen@gmail.com>
4964         PR libstdc++/77717
4965         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
4966         Fix an out-of-bounds access.
4968 2016-09-26  Marek Polacek  <polacek@redhat.com>
4970         PR c/7652
4971         * libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
4973 2016-09-25  François Dumont  <fdumont@gcc.gnu.org>
4975         * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
4976         functional.
4977         (get_safe_base_mutex): Get mutex based on address lowest non nil bits.
4978         * testsuite/23_containers/vector/debug/mutex_association.cc: New.
4980         * include/debug/bitset (bitset::reference::reference(const _Base_ref&,
4981         bitset*)): Remove __unused__ attribute.
4982         * include/debug/safe_base.h (_Safe_iterator_base): Make
4983         _Safe_sequence_base a friend.
4984         (_Safe_iterator_base::_M_attach): Make protected.
4985         (_Safe_iterator_base::_M_attach_single): Likewise.
4986         (_Safe_iterator_base::_M_detach): Likewise.
4987         (_Safe_iterator_base::_M_detach_single): Likewise.
4988         (_Safe_sequence_base): Make _Safe_iterator_base a friend.
4989         (_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
4990         (_Safe_sequence_base::_M_swap): Make protected.
4991         (_Safe_sequence_base::_M_attach): Make private.
4992         (_Safe_sequence_base::_M_attach_single): Likewise.
4993         (_Safe_sequence_base::_M_detach): Likewise.
4994         (_Safe_sequence_base::_M_detach_single): Likewise.
4995         * include/debug/safe_container.h
4996         (_Safe_container::_Safe_container(_Safe_container&&)): Make default.
4997         * include/debug/safe_iterator.h
4998         (_Safe_iterator::operator++()): Name __scoped_lock instance.
4999         * include/debug/safe_iterator.tcc: Remove trailing line.
5000         * include/debug/safe_unordered_base.h
5001         (_Safe_local_iterator_base::_M_attach): Make protected.
5002         (_Safe_local_iterator_base::_M_attach_single): Likewise.
5003         (_Safe_local_iterator_base::_M_detach): Likewise.
5004         (_Safe_local_iterator_base::_M_detach_single): Likewise.
5005         (_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
5006         (_Safe_unordered_container_base::_M_attach_local): Make private.
5007         (_Safe_unordered_container_base::_M_attach_local_single): Likewise.
5008         (_Safe_unordered_container_base::_M_detach_local): Likewise.
5009         (_Safe_unordered_container_base::_M_detach_local_single): Likewise.
5011         * include/parallel/algo.h: Generalize usage of std::__iterator_category.
5012         Adjust whitespaces.
5014 2016-09-23  Jonathan Wakely  <jwakely@redhat.com>
5016         PR libstdc++/56166
5017         PR libstdc++/77582
5018         * include/bits/basic_string.h (basic_string::clear()): Drop reference
5019         and use empty rep.
5020         * include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
5021         Likewise.
5022         * testsuite/21_strings/basic_string/56166.cc: New.
5023         * testsuite/ext/vstring/modifiers/clear/56166.cc: New.
5025         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
5026         (basic_string::erase(size_type, size_type)): Add fast path for
5027         truncating the string, by calling _M_set_length directly.
5028         (basic_string::erase(__const_iterator, __const_iterator)): Likewise.
5029         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
5030         (basic_string::resize(size_type, _CharT)): Likewise.
5032 2016-09-22  Jason Merrill  <jason@redhat.com>
5034         * configure.ac: Define HAVE_MEMALIGN for newlib.
5036 2015-09-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5038         * config/cpu/m68k/atomicity.h: Adjust comment.
5039         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
5040         explicit atomicity_dir setup via configure.host.
5041         * configure.host (rtems-*): Set atomicity_dir.
5042         * configure: Regenerate.
5044 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
5046         Implement C++17 node extraction and insertion (P0083R5)
5047         * doc/xml/manual/status_cxx2017.xml: Document status.
5048         * doc/html/*: Regenerate.
5049         * include/Makefile.am: Add bits/node_handle.h and reorder.
5050         * include/Makefile.in: Regenerate.
5051         * include/bits/hashtable.h (_Hashtable::node_type)
5052         (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
5053         (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
5054         (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
5055         (_Hash_merge_helper): Define primary template.
5056         * include/bits/node_handle.h: New header.
5057         * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
5058         friend.
5059         (map::node_type, map::insert_return_type, map::extract, map::merge)
5060         (map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
5061         Define new members.
5062         (_Rb_tree_merge_helper): Specialize for map.
5063         * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
5064         as friend.
5065         (multimap::node_type, multimap::extract, multimap::merge)
5066         (multimap::insert(node_type&&))
5067         (multimap::insert(const_iterator, node_type&&)): Define.
5068         (_Rb_tree_merge_helper): Specialize for multimap.
5069         * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
5070         as friend.
5071         (multiset::node_type, multiset::extract, multiset::merge)
5072         (multiset::insert(node_type&&))
5073         (multiset::insert(const_iterator, node_type&&)): Define.
5074         * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
5075         friend.
5076         (set::node_type, set::insert_return_type, set::extract, set::merge)
5077         (set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
5078         Define.
5079         (_Rb_tree_merge_helper): Specialize for set.
5080         * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
5081         (_Rb_tree::node_type, _Rb_tree::insert_return_type)
5082         (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
5083         (_Rb_tree::_M_reinsert_node_hint_unique)
5084         (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
5085         (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
5086         (_Rb_tree_merge_helper): Specialize for multiset.
5087         * include/bits/unordered_map.h (unordered_map): Declare
5088         unordered_map<> and unordered_multimap<> as friends.
5089         (unordered_map::node_type, unordered_map::insert_return_type)
5090         (unordered_map::extract, unordered_map::merge)
5091         (unordered_map::insert(node_type&&))
5092         (unordered_map::insert(const_iterator, node_type&&))
5093         (unordered_multimap): Declare _Hash_merge_helper as friend.
5094         (unordered_multimap::node_type, unordered_multimap::extract)
5095         (unordered_multimap::merge, unordered_multimap::insert(node_type&&))
5096         (unordered_multimap::insert(const_iterator, node_type&&)): Define.
5097         (_Hash_merge_helper): Specialize for unordered maps and multimaps.
5098         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
5099         Declare _Hash_merge_helper as friend.
5100         (unordered_set::node_type, unordered_set::insert_return_type)
5101         (unordered_set::extract, unordered_set::merge)
5102         (unordered_set::insert(node_type&&))
5103         (unordered_set::insert(const_iterator, node_type&&)): Define.
5104         (unordered_multiset::node_type, unordered_multiset::extract)
5105         (unordered_multiset::merge, unordered_multiset::insert(node_type&&))
5106         (unordered_multiset::insert(const_iterator, node_type&&)): Define.
5107         (_Hash_merge_helper): Specialize for unordered sets and multisets.
5108         * include/debug/map.h (map): Add using declarations or forwarding
5109         functions for new members.
5110         * include/debug/map.h (multimap): Likewise.
5111         * include/debug/map.h (multiset): Likewise.
5112         * include/debug/map.h (set): Likewise.
5113         * include/debug/unordered_map (unordered_map, unordered_multimap):
5114         Likewise.
5115         * include/debug/unordered_set( unordered_set, unordered_multiset):
5116         Likewise.
5117         * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
5118         helper function.
5119         (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
5120         (StdNodeHandlePrinter): Define printer for node handles.
5121         (build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
5122         * testsuite/23_containers/map/modifiers/extract.cc: New.
5123         * testsuite/23_containers/map/modifiers/merge.cc: New.
5124         * testsuite/23_containers/multimap/modifiers/extract.cc: New.
5125         * testsuite/23_containers/multimap/modifiers/merge.cc: New.
5126         * testsuite/23_containers/multiset/modifiers/extract.cc: New.
5127         * testsuite/23_containers/multiset/modifiers/merge.cc: New.
5128         * testsuite/23_containers/set/modifiers/extract.cc: New.
5129         * testsuite/23_containers/set/modifiers/merge.cc: New.
5130         * testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
5131         * testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
5132         * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
5133         New.
5134         * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
5135         * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
5136         New.
5137         * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
5138         * testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
5139         * testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
5140         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
5141         dg-error lineno.
5142         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
5144 2016-09-22  Ville Voutilainen  <ville.voutilainen@gmail.com>
5146         Fix tests on old arm platforms for optional.
5147         * testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
5149 2016-09-22  Jonathan Wakely  <jwakely@redhat.com>
5151         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
5152         recent change to _Variant_storage.
5153         * testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
5154         reference type.
5156         * include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
5157         std::forward and ::new. Cast pointer to void*.
5158         * include/std/variant (_Variant_storage, _Union, _Variant_base)
5159         (__access, __visit_invoke, variant, visit): Qualify std::forward.
5160         * testsuite/20_util/variant/compile.cc: Test for ADL problems.
5162 2016-09-22  Tim Shen  <timshen@google.com>
5164         * include/std/variant (variant::operator=): Fix assignment
5165         on references.
5166         * testsuite/20_util/variant/compile.cc: Add test.
5168 2016-09-22  Tim Shen  <timshen@google.com>
5170         PR libstdc++/77641
5171         * include/std/variant (_Variant_storage::_Variant_storage):
5172         Change _Variant_storage's union to be default constructible.
5173         * testsuite/20_util/variant/compile.cc: New test.
5175 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5177         PR libstdc++/77288
5178         * include/std/optional (__is_optional_impl, __is_optional): Remove.
5179         (__converts_from_optional, __assigns_from_optional): New.
5180         (optional(_Up&&)): Use is_same instead of __is_optional.
5181         (optional(const optional<_Up>&)): Constrain with
5182         __converts_from_optional.
5183         (optional(optional<_Up>&&)): Likewise.
5184         (operator=(_Up&&)): Use is_same instead of __is_optional, check
5185         is_same and is_scalar.
5186         (operator=(const optional<_Up>&)): Constrain with
5187         __converts_from_optional and __assigns_from_optional.
5188         (operator=(optional<_Up>&&)): Likewise.
5189         * testsuite/20_util/optional/77288.cc: New.
5190         * testsuite/20_util/optional/cons/value.cc: Adjust.
5192 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5194         Implement LWG 2729 for tuple.
5195         * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
5196         Suppress conditionally.
5197         (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
5198         (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
5199         (_Tuple_impl(const _Head&)): Constrain.
5200         (_Tuple_impl(_UHead&&)): Likewise.
5201         (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
5202         (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
5203         (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
5204         (operator=(const tuple&)): Enable conditionally.
5205         (operator=(tuple&&)): Suppress conditionally.
5206         (operator=(const tuple<_UElements...>&)): Constrain.
5207         (operator=(tuple<_UElements...>&&)): Likewise.
5208         (operator=(const tuple&)): Enable conditionally (2-param tuple).
5209         (operator=(tuple&&)): Suppress conditionally (2-param tuple).
5210         (operator=(const tuple<_U1, _U2>&)): Constrain.
5211         (operator=(tuple<_U1, _U2>&&)): Likewise.
5212         (operator=(const pair<_U1, _U2>&)): Likewise.
5213         (operator=(pair<_U1, _U2>&&)): Likewise.
5214         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
5215         * testsuite/20_util/tuple/tuple_traits.cc: New.
5217 2016-09-21  Ville Voutilainen  <ville.voutilainen@gmail.com>
5219         PR libstdc++/77537
5220         Implement LWG 2729 for pair.
5221         * include/bits/stl_pair.h (_PCC): New.
5222         (_ConstructiblePair, _ImplicitlyConvertiblePair):
5223         Turn into static member functions of _PCC.
5224         (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
5225         (_PCCP): New.
5226         (pair(const _T1&, const _T2&)): Adjust.
5227         (_PCCFP): New.
5228         (pair(const pair<_U1, _U2>&)): Adjust.
5229         (pair(_U1&&, const _T2&)): Likewise.
5230         (pair(const _T1&, _U2&&)): Likewise.
5231         (pair(_U1&&, _U2&&)): Likewise.
5232         (pair(pair<_U1, _U2>&&)): Likewise.
5233         (operator=(const pair&)): Make conditionally deleted.
5234         (operator=(pair&&)): Make conditionally suppressed.
5235         (operator=(const pair<_U1, _U2>&)): Constrain.
5236         (operator=(pair<_U1, _U2>&&): Likewise.
5237         * include/std/type_traits (__nonesuch): New.
5238         * testsuite/20_util/pair/traits.cc: New.
5240 2016-09-20  Ville Voutilainen  <ville.voutilainen@gmail.com>
5242         PR libstdc++/77619
5243         * include/bits/stl_construct.h: (_Construct_novalue): New.
5244         (_Destroy_n_aux, _Destroy_n): New.
5245         * include/bits/stl_uninitialized.h: (type_traits):
5246         New include in C++11 mode.
5247         (__uninitialized_default_novalue_1): New.
5248         (__uninitialized_default_novalue_n_1): Likewise.
5249         (__uninitialized_default_novalue): Likewise.
5250         (__uninitialized_default_novalue_n): Likewise.
5251         (__uninitialized_copy_n_pair): Likewise.
5252         (uninitialized_default_construct):
5253         Use __uninitialized_default_novalue.
5254         (uninitialized_default_construct_n):
5255         Use __uninitialized_default_novalue_n.
5256         (uninitialized_value_construct): Use __uninitialized_default.
5257         (uninitialized_value_construct_n): Use __uninitialized_default_n.
5258         (uninitialized_move): Use uninitialized_copy.
5259         (uninitialized_move_n): Use __uninitialized_copy_n_pair.
5260         (destroy_at): Use _Destroy.
5261         (destroy): Likewise.
5262         (destroy_n): Likewise.
5263         * testsuite/20_util/specialized_algorithms/
5264         memory_management_tools/1.cc: Add tests for exceptions,
5265         add tests for trivial cases for construct and move.
5267 2016-09-20  Jonathan Wakely  <jwakely@redhat.com>
5269         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
5270         (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
5272 2016-09-19  Jonathan Wakely  <jwakely@redhat.com>
5274         PR libstdc++/77645
5275         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
5276         (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
5277         division to int to work with Python 3.
5279         * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
5281         * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
5282         display_hint to be set by subclasses.
5283         (StdVariantPrinter): Use array for display_hint. Adjust output to be
5284         more similar to std::any and std::optional output.
5285         (register_type_printers): Add type printers for basic_string_view
5286         typedefs and experimental::any. Adjust type printers for
5287         fundamentals_v1 templates to match fundamentals_v2 and later.
5288         * testsuite/libstdc++-prettyprinters/cxx17.cc: New.
5290         PR libstdc++/77645
5291         * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
5292         argument.
5293         (ListWorkerBase.get_value_from_node): Define new method.
5294         (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
5296 2016-09-17  Jonathan Wakely  <jwakely@redhat.com>
5298         * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
5299         (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
5300         Register for C++17 components in namespace std. Strip inline namespace
5301         from typename.
5303 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5305         * doc/xml/manual/profile_mode.xml: Fix typo.
5306         * doc/html/manual/profile_mode_devel.html: Regenerate.
5308 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5309             Marc Glisse  <marc.glisse@inria.fr>
5311         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
5312         (operator new(size_t, align_val_t)): Replace modulus operator with
5313         mask.
5315 2016-09-16  Jonathan Wakely  <jwakely@redhat.com>
5317         * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
5318         Increase alignment if less than sizeof(void*).
5319         [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
5320         Increase size if not a multiple of alignment.
5322 2016-09-15  Jonathan Wakely  <jwakely@redhat.com>
5324         * doc/xml/manual/debug_mode.xml: Minor editorial fixes.
5325         * doc/html/*: Regenerate.
5327         * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
5328         -Wno-deprecated.
5329         * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
5331 2016-09-14  Marek Polacek  <polacek@redhat.com>
5333         * testsuite/23_containers/vector/debug/insert6_neg.cc: Use
5334         -Wno-deprecated.
5336 2016-09-14  Christophe Lyon  <christophe.lyon@linaro.org>
5338         * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
5339         Move dg-do directive before dg-skip.
5340         * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
5341         Move dg-do directive before dg-require.
5342         * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
5343         * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
5344         * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
5345         * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
5346         * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
5347         * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
5348         * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
5349         * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
5350         * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
5351         * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
5352         * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
5353         * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
5354         * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
5355         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
5356         * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
5357         Likewise.
5358         * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
5359         * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
5360         * testsuite/27_io/objects/char/12048-5.cc: Likewise.
5361         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
5362         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
5364 2016-09-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
5366         Implement P0040R3, Extending memory management tools.
5367         * include/bits/stl_uninitialized.h (utility): New include
5368         in C++17 mode.
5369         (uninitialized_default_construct): New.
5370         (uninitialized_default_construct_n): Likewise.
5371         (uninitialized_value_construct): Likewise.
5372         (uninitialized_value_construct_n): Likewise.
5373         (uninitialized_move): Likewise.
5374         (uninitialized_move_n): Likewise.
5375         (destroy_at, destroy, destroy_n): Likewise.
5376         * testsuite/20_util/specialized_algorithms/memory_management_tools/
5377         1.cc: New.
5379 2016-09-12  Jason Merrill  <jason@redhat.com>
5381         * config/abi/pre/gnu.ver: Use [jmy] for size_t.
5383 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
5385         Implement P0253R1, Fixing a design mistake in the searchers
5386         interface in Library Fundamentals.
5387         * include/std/functional: (utility): New include in C++17 mode.
5388         (default_searcher): Use a pair as return type, adjust the definition.
5389         (boyer_moore_searcher): Likewise.
5390         (boyer_moore_horspool_searcher): Likewise.
5391         * testsuite/20_util/function_objects/searchers.cc: Adjust.
5393 2016-09-12  Ville Voutilainen  <ville.voutilainen@gmail.com>
5395         Implement C++17 string searchers.
5396         * include/std/functional: (unordered_map, vector): New includes
5397         in C++17 mode.
5398         (array, bits/stl_algo.h): Likewise.
5399         (default_searcher, __boyer_moore_map_base): New.
5400         (__boyer_moore_array_base, __is_std_equal_to): Likewise.
5401         (__boyer_moore_base_t, boyer_moore_searcher): Likewise.
5402         (boyer_moore_horspool_searcher, make_default_searcher): Likewise.
5403         (make_boyer_moore_searcher): Likewise.
5404         (make_boyer_moore_horspool_searcher): Likewise.
5405         * testsuite/20_util/function_objects/searchers.cc: New.
5407 2016-09-12  Matthew Wahab  <matthew.wahab@arm.com>
5409         * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
5410         Move dg-do directive before dg-require.
5411         * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
5412         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
5413         Likewise.
5414         * testsuite/22_locale/codecvt/utf8.cc: Likewise.
5415         * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
5416         * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
5417         * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
5418         * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
5419         * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
5420         * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
5421         * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
5422         * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
5423         * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
5424         * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
5425         * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
5426         * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
5427         Likewise.
5428         * testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
5429         Likewise.
5430         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
5431         * testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
5432         * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
5433         Likewise.
5434         * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
5435         Likewise.
5436         * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
5437         Likewise.
5438         * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
5439         Likewise.
5440         * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
5441         Likewise.
5442         * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
5443         Likewise.
5444         * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
5445         Likewise.
5446         * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
5447         Likewise.
5448         * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
5449         Likewise.
5450         * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
5451         Likewise.
5452         * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
5453         Likewise.
5454         * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
5455         Likewise.
5456         * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
5457         Likewise.
5458         * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
5459         Likewise.
5460         * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
5461         Likewise.
5462         * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
5463         Likewise.
5464         * testsuite/23_containers/forward_list/debug/
5465         iterator_self_move_assign_neg.cc: Likewise.
5466         * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
5467         Likewise.
5468         * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
5469         Likewise.
5470         * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
5471         Likewise.
5472         * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
5473         Likewise.
5474         * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
5475         Likewise.
5476         * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
5477         Likewise.
5478         * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
5479         Likewise.
5480         * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
5481         Likewise.
5482         * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
5483         * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
5484         * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
5485         * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
5486         * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
5487         * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
5488         * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
5489         * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
5490         * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
5491         * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
5492         * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
5493         Likewise.
5494         * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
5495         * testsuite/23_containers/map/debug/60499.cc: Likewise.
5496         * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
5497         * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
5498         * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
5499         * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
5500         * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
5501         * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
5502         * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
5503         Likewise.
5504         * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
5505         * testsuite/23_containers/multimap/debug/60499.cc: Likewise.
5506         * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
5507         * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
5508         * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
5509         * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
5510         * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
5511         * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
5512         * testsuite/23_containers/multimap/debug/
5513         iterator_self_move_assign_neg.cc: Likewise.
5514         * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
5515         Likewise.
5516         * testsuite/23_containers/multiset/debug/60499.cc: Likewise.
5517         * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
5518         * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
5519         * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
5520         * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
5521         * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
5522         * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
5523         * testsuite/23_containers/multiset/debug/
5524         iterator_self_move_assign_neg.cc: Likewise.
5525         * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
5526         Likewise.
5527         * testsuite/23_containers/set/debug/60499.cc: Likewise.
5528         * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
5529         * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
5530         * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
5531         * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
5532         * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
5533         * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
5534         * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
5535         Likewise.
5536         * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
5537         * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
5538         * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
5539         * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
5540         * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
5541         Likewise.
5542         * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
5543         * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
5544         * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
5545         Likewise.
5546         * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
5547         Likewise.
5548         * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
5549         Likewise.
5550         * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
5551         * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
5552         * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
5553         * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
5554         * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
5555         * testsuite/23_containers/unordered_map/debug/
5556         invalid_local_iterator_compare_neg.cc: Likewise.
5557         * testsuite/23_containers/unordered_map/debug/
5558         invalid_local_iterator_range_neg.cc: Likewise.
5559         * testsuite/23_containers/unordered_map/debug/
5560         iterator_self_move_assign_neg.cc: Likewise.
5561         * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
5562         Likewise.
5563         * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
5564         Likewise.
5565         * testsuite/23_containers/unordered_map/debug/
5566         use_erased_local_iterator_neg.cc: Likewise.
5567         * testsuite/23_containers/unordered_map/debug/
5568         use_invalid_iterator_neg.cc: Likewise.
5569         * testsuite/23_containers/unordered_map/debug/
5570         use_invalid_local_iterator_neg.cc: Likewise.
5571         * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
5572         * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
5573         Likewise.
5574         * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
5575         Likewise.
5576         * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
5577         Likewise.
5578         * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
5579         Likewise.
5580         * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
5581         Likewise.
5582         * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
5583         Likewise.
5584         * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
5585         Likewise.
5586         * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
5587         Likewise.
5588         * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
5589         Likewise.
5590         * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
5591         Likewise.
5592         * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
5593         Likewise.
5594         * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
5595         Likewise.
5596         * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
5597         Likewise.
5598         * testsuite/23_containers/unordered_multimap/debug/
5599         invalid_local_iterator_compare_neg.cc: Likewise.
5600         * testsuite/23_containers/unordered_multimap/debug/
5601         invalid_local_iterator_range_neg.cc: Likewise.
5602         * testsuite/23_containers/unordered_multimap/debug/
5603         iterator_self_move_assign_neg.cc: Likewise.
5604         * testsuite/23_containers/unordered_multimap/debug/
5605         max_load_factor_neg.cc: Likewise.
5606         * testsuite/23_containers/unordered_multimap/debug/
5607         self_move_assign_neg.cc: Likewise.
5608         * testsuite/23_containers/unordered_multimap/debug/
5609         use_erased_local_iterator_neg.cc: Likewise.
5610         * testsuite/23_containers/unordered_multimap/debug/
5611         use_invalid_iterator_neg.cc: Likewise.
5612         * testsuite/23_containers/unordered_multimap/debug/
5613         use_invalid_local_iterator_neg.cc: Likewise.
5614         * testsuite/23_containers/unordered_multiset/debug/60499.cc:
5615         Likewise.
5616         * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
5617         Likewise.
5618         * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
5619         Likewise.
5620         * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
5621         Likewise.
5622         * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
5623         Likewise.
5624         * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
5625         Likewise.
5626         * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
5627         Likewise.
5628         * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
5629         Likewise.
5630         * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
5631         Likewise.
5632         * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
5633         Likewise.
5634         * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
5635         Likewise.
5636         * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
5637         Likewise.
5638         * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
5639         Likewise.
5640         * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
5641         Likewise.
5642         * testsuite/23_containers/unordered_multiset/debug/
5643         invalid_local_iterator_compare_neg.cc: Likewise.
5644         * testsuite/23_containers/unordered_multiset/debug/
5645         invalid_local_iterator_range_neg.cc: Likewise.
5646         * testsuite/23_containers/unordered_multiset/debug/
5647         iterator_self_move_assign_neg.cc: Likewise.
5648         * testsuite/23_containers/unordered_multiset/debug/
5649         max_load_factor_neg.cc: Likewise.
5650         * testsuite/23_containers/unordered_multiset/debug/
5651         self_move_assign_neg.cc: Likewise.
5652         * testsuite/23_containers/unordered_multiset/debug/
5653         use_erased_local_iterator_neg.cc: Likewise.
5654         * testsuite/23_containers/unordered_multiset/debug/
5655         use_invalid_iterator_neg.cc: Likewise.
5656         * testsuite/23_containers/unordered_multiset/debug/
5657         use_invalid_local_iterator_neg.cc: Likewise.
5658         *  testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
5659         * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
5660         * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
5661         * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
5662         Likewise.
5663         * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
5664         * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
5665         * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
5666         Likewise.
5667         * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
5668         Likewise.
5669         * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
5670         Likewise.
5671         * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
5672         * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
5673         * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
5674         * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
5675         * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
5676         * testsuite/23_containers/unordered_set/debug/
5677         invalid_local_iterator_compare_neg.cc: Likewise.
5678         * testsuite/23_containers/unordered_set/debug/
5679         invalid_local_iterator_range_neg.cc: Likewise.
5680         * testsuite/23_containers/unordered_set/debug/
5681         iterator_self_move_assign_neg.cc: Likewise.
5682         * testsuite/23_containers/unordered_set/debug/
5683         max_load_factor_neg.cc: Likewise.
5684         * testsuite/23_containers/unordered_set/debug/
5685         self_move_assign_neg.cc: Likewise.
5686         * testsuite/23_containers/unordered_set/debug/
5687         use_erased_local_iterator_neg.cc: Likewise.
5688         * testsuite/23_containers/unordered_set/debug/
5689         use_invalid_iterator_neg.cc: Likewise.
5690         * testsuite/23_containers/unordered_set/debug/
5691         use_invalid_local_iterator_neg.cc: Likewise.
5692         * testsuite/23_containers/vector/debug/52433.cc: Likewise.
5693         * testsuite/23_containers/vector/debug/60499.cc: Likewise.
5694         * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
5695         * testsuite/23_containers/vector/debug/
5696         iterator_self_move_assign_neg.cc: Likewise.
5697         * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
5698         Likewise.
5699         * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
5700         * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
5701         * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
5702         * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
5703         * testsuite/29_atomics/atomic/60658.cc: Likewise.
5704         * testsuite/29_atomics/atomic/60695.cc: Likewise.
5705         * testsuite/29_atomics/atomic/62259.cc: Likewise.
5706         * testsuite/29_atomics/atomic/64658.cc: Likewise.
5707         * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
5708         * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
5709         * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
5710         Likewise.
5712 2016-09-11  Jonathan Wakely  <jwakely@redhat.com>
5714         * libsupc++/new_opant.cc: Include exception_defines.h.
5715         * libsupc++/new_opvant.cc: Likewise.
5717 2016-09-09  Jason Merrill  <jason@redhat.com>
5719         Implement P0035R4, C++17 new of over-aligned types.
5720         * libsupc++/new: Declare aligned new/delete operators.
5721         * config/abi/pre/gnu.ver: Export them.
5722         * configure.ac: Check for aligned_alloc, posix_memalign, memalign,
5723         _aligned_malloc.
5724         * libsupc++/new_opa.cc: New.
5725         * libsupc++/new_opant.cc: New.
5726         * libsupc++/new_opva.cc: New.
5727         * libsupc++/new_opva.cc: New.
5728         * libsupc++/del_opa.cc: New.
5729         * libsupc++/del_opant.cc: New.
5730         * libsupc++/del_opsa.cc: New.
5731         * libsupc++/del_opva.cc: New.
5732         * libsupc++/del_opvant.cc: New.
5733         * libsupc++/del_opvsa.cc: New.
5734         * libsupc++/Makefile.am: Build them.
5736 2016-09-05  Tim Shen  <timshen@google.com>
5738         * include/std/variant: include bits/move.h for std::addressof.
5740 2016-09-05  Mikhail Strelnikov  <mikhail.strelnikov@gmail.com>
5742         * include/std/variant (_Variant_storage::_M_storage()): Use
5743         std::addressof instead of operator& to take address.
5745 2016-09-02  Maxim Kuvyrkov  <maxim.kuvyrkov@linaro.org>
5747         * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
5748         setrlimit on both native and cross targets.
5749         * configure: Regenerate.
5751 2016-08-31  Jonathan Wakely  <jwakely@redhat.com>
5753         * include/bits/shared_ptr.h (_Assignable): New alias template.
5754         (shared_ptr::operator=(const shared_ptr<_Tp1>&))
5755         (shared_ptr::operator=(shared_ptr<_Tp1>&&))
5756         (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
5757         _Assignable.
5758         * include/bits/shared_ptr_base.h (_Assignable): New alias template.
5759         (__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
5760         (__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
5761         (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
5762         _Assignable.
5763         (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
5764         (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
5765         _Convertible.
5766         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
5767         match on any line.
5768         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
5769         * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
5770         * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
5771         expected errors. Remove unnecessary code.
5772         * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
5774         * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
5775         comparison object.
5776         * testsuite/23_containers/set/move_comparison.cc: New test.
5778         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5779         New test.
5781 2016-08-30  Ville Voutilainen  <ville.voutilainen@gmail.com>
5783         PR libstdc++/77395
5784         * include/std/type_traits (is_constructible): Forward-declare...
5785         (__is_base_to_derived_ref): ...and use here.
5786         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
5787         * testsuite/20_util/is_constructible/77395.cc: New.
5788         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
5789         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
5790         Likewise.
5791         * testsuite/20_util/tuple/77395.cc: New.
5793 2016-08-30  Uros Bizjak  <ubizjak@gmail.com>
5795         * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
5796         directive above dg-require-namedlocale directive.
5797         * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
5798         * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
5799         * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
5800         * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
5801         * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
5803 2016-08-27  Tim Shen  <timshen@google.com>
5805         PR libstdc++/77356
5806         * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
5807         _M_expression_term): Modify to support dash literal.
5808         * include/bits/regex_scanner.h: Add dash as a token type to make
5809         a different from the mandated dash literal by escaping.
5810         * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
5811         token in bracket expression parsing.
5812         * testsuite/28_regex/regression.cc: Add new testcases.
5814 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5816         PR libstdc++/51960
5817         * doc/xml/manual/intro.xml: Document DR 2127 change.
5818         * doc/html/*: Regenerate.
5819         * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
5820         (operator++(), operator++(int)): Use injected class name.
5821         * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
5823         * testsuite/*: Use { target c++11 } or { target c++14 } instead of
5824         using -std in dg-options.
5826 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5827             Pedro Alves  <palves@redhat.com>
5829         * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
5830         and restore dg-interpreter-batch-mode.
5831         * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
5832         gdb-dg-runtest instead of dg-runtest.
5833         * testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
5835 2016-08-26  Jonathan Wakely  <jwakely@redhat.com>
5837         * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
5838         precise patterns for basic_string constructors.
5839         (GLIBCXX_3.4.23): Export new constructors.
5840         * doc/xml/manual/intro.xml: Document LWG 2583 status.
5841         * doc/html/*: Regenerate.
5842         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
5843         (basic_string(const basic_string&, size_type, const Alloc&)): Add
5844         new constructor for LWG 2583.
5845         (basic_string(const basic_string&, size_type, size_type)): Remove
5846         default argument.
5847         [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
5848         * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
5849         * testsuite/21_strings/basic_string/cons/char/8.cc: New test.
5850         * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
5852 2016-08-24  Aditya Kumar  <hiraditya@msn.com>
5854         * include/bits/algorithmfwd.h: Remove trailing whitespace.
5855         * include/bits/shared_ptr_base.h: Likewise.
5857 2016-08-23  Jonathan Wakely  <jwakely@redhat.com>
5859         * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
5860         * include/profile/array (array): Likewise.
5861         (array::swap): Fix exception specification for zero-sized arrays.
5863         PR libstdc++/77334
5864         * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
5865         (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
5866         * testsuite/23_containers/map/77334.cc: New test.
5868         * doc/xml/manual/using.xml: Remove reference to -pthreads option.
5869         * doc/html/*: Regenerate.
5871         * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
5872         * testsuite/experimental/feat-lib-fund.cc: Likewise.
5874         PR libstdc++/71771
5875         * include/bits/stl_iterator.h
5876         (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
5877         define for C++98 mode.
5878         (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
5879         * testsuite/24_iterators/headers/iterator/synopsis.cc: Use
5880         -std=gnu++98.
5881         * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
5882         * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
5883         * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
5884         * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
5885         difference operator.
5886         * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
5887         difference operator for C++98.
5888         * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
5890         * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
5891         * include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
5892         (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
5893         * include/bits/stl_iterator.h (reverse_iterator, move_iterator)
5894         (__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
5895         Likewise.
5896         * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
5897         _GLIBCXX14_CONSTEXPR.
5898         (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
5899         * include/std/array (array::begin, array::end, array::rbegin)
5900         (array::rend, array::cbegin, array:cend, array::crbegin)
5901         (array::crend, array::operator[], array::at, array::front)
5902         (array::back, array::data): Likewise.
5903         * testsuite/24_iterators/headers/iterator/range_access.cc: Replace
5904         with separate tests for C++11, C++14, and C++17.
5905         * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
5906         * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
5907         * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
5909 2016-08-22  Tim Shen  <timshen@google.com>
5911         Split _M_dfs() into smaller functions.
5912         * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
5913         (_M_handle_subexpr_end, _M_handle_line_begin_assertion)
5914         (_M_handle_line_end_assertion, _M_handle_word_boundary)
5915         (_M_handle_subexpr_lookahead, _M_handle_match)
5916         (_M_handle_backref, _M_handle_accept, _M_handle_alternative):
5917         Add separate function declarations.
5918         * regex_executor.tcc: Split _M_dfs() into multiple handler functions.
5920 2016-08-22  Gleb Natapov  <gleb@scylladb.com>
5922         PR libstdc++/68297
5923         * config/abi/pre/gnu-versioned-namespace.ver: Export
5924         __cxa_init_primary_exception and std::exception_ptr(void*).
5925         * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
5926         export __cxa_init_primary_exception and std::exception_ptr(void*).
5927         * include/Makefile.am: Add new headers.
5928         * include/Makefile.in: Regenerate.
5929         * libsupc++/Makefile.am: Add new headers.
5930         * libsupc++/Makefile.in: Regenerate.
5931         * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
5932         * libsupc++/cxxabi_init_exception.h: New header.
5933         (__cxa_init_primary_exception): Declare.
5934         * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
5935         (__cxa_throw): Use __cxa_init_primary_exception.
5936         * libsupc++/exception (std::exception): Move to ...
5937         * libsupc++/exception.h: New header.
5938         * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
5939         friend declaration.
5940         (__exception_ptr::__dest_thunk): New function template.
5941         (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
5942         Use __cxa_allocate_exception and __cxa_init_primary_exception to
5943         create exception_ptr.
5944         * libsupc++/typeinfo: Include bits/exception.h instead of exception.
5945         * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
5947 2016-08-22  Jonathan Wakely  <jwakely@redhat.com>
5949         * doc/xml/api.xml: Replace hardcoded links for specific versions with
5950         link to docs for all releases.
5951         * doc/html/*: Regenerate.
5953         PR libstdc++/77322
5954         * doc/xml/manual/intro.xml: Document DR 2062 change.
5955         * include/std/functional (function::swap): Add noexcept.
5956         (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
5957         * testsuite/20_util/function/77322.cc: New test.
5959 2016-08-19  Jonathan Wakely  <jwakely@redhat.com>
5961         * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
5962         *-*-solaris* instead of -pthreads.
5963         * testsuite/21_strings/basic_string/pthread4.cc : Likewise.
5964         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
5965         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
5966         * testsuite/23_containers/list/pthread1.cc: Likewise.
5967         * testsuite/23_containers/list/pthread5.cc: Likewise.
5968         * testsuite/23_containers/map/pthread6.cc: Likewise.
5969         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
5970         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
5971         * testsuite/30_threads/shared_mutex/*: Likewise.
5972         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
5973         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
5974         default_weaktoshared.cc: Likewise.
5975         * testsuite/tr1/2_general_utilities/shared_ptr/thread/
5976         mutex_weaktoshared.cc: Likewise.
5977         * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
5978         dg-require-effective-target instead of using -std option.
5979         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
5980         Likewise.
5981         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5982         * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
5983         Likewise.
5984         * testsuite/30_threads/async/*: Likewise.
5985         * testsuite/30_threads/call_once/*: Likewise.
5986         * testsuite/30_threads/condition_variable/*: Likewise.
5987         * testsuite/30_threads/condition_variable_any/*: Likewise.
5988         * testsuite/30_threads/future/*: Likewise.
5989         * testsuite/30_threads/lock/*: Likewise.
5990         * testsuite/30_threads/mutex/*: Likewise.
5991         * testsuite/30_threads/packaged_task/*: Likewise.
5992         * testsuite/30_threads/promise/*: Likewise.
5993         * testsuite/30_threads/recursive_mutex/*: Likewise.
5994         * testsuite/30_threads/recursive_timed_mutex/*: Likewise.
5995         * testsuite/30_threads/shared_future/*: Likewise.
5996         * testsuite/30_threads/shared_lock/*: Likewise.
5997         * testsuite/30_threads/shared_timed_mutex/*: Likewise.
5998         * testsuite/30_threads/this_thread/*: Likewise.
5999         * testsuite/30_threads/thread/*: Likewise.
6000         * testsuite/30_threads/timed_mutex/*: Likewise.
6001         * testsuite/30_threads/try_lock/*: Likewise.
6002         * testsuite/30_threads/unique_lock/*: Likewise.
6004         * doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
6005         * doc/html/*: Regenerate.
6006         * include/experimental/functional (_Not_fn, not_fn): Match C++17
6007         semantics.
6008         * include/std/functional (_Not_fn, not_fn): Define for C++17.
6009         * testsuite/20_util/not_fn/1.cc: New.
6010         * testsuite/experimental/functional/not_fn.cc: Test abstract class.
6011         Remove test for volatile-qualified wrapper.
6013         * include/std/atomic (atomic::is_always_lock_free): Define.
6014         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
6015         * testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
6016         * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
6017         * doc/xml/manual/status_cxx2017.xml: Update status.
6018         * doc/html/*: Regenerate.
6020         * include/experimental/tuple (apply): Qualify call to __apply_impl.
6021         * include/std/tuple (apply): Likewise.
6022         * testsuite/experimental/system_error/value.cc: Fix ambiguities in
6023         C++17 mode.
6024         * testsuite/experimental/tuple/tuple_size.cc: Likewise.
6025         * testsuite/experimental/type_traits/value.cc: Likewise.
6027         * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
6028         and variant.
6029         * doc/html/*: Regenerate.
6031 2016-08-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
6033         Implement the latest proposed resolution of LWG 2756.
6034         * include/std/optional (Optional_base(const _Tp&))
6035         (Optional_base(_Tp&&), using _Base::_Base): Remove.
6036         (optional(nullopt_t)): New.
6037         (optional(_Up&&)): Invoke base directly with in_place
6038         rather than creating a temporary, add default template
6039         argument, change constraints.
6040         (optional(const optional<_Up>&)): Invoke base directly
6041         with in_place, remove unnecessary constraints.
6042         (optional(optional<_Up>&& __t)): Likewise.
6043         (optional(in_place_t, _Args&&...)): New.
6044         (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
6045         (operator=(_Up&&)): Add default template argument, change constraints.
6046         (operator=(const optional<_Up>&)): Put is_same first in the
6047         constraints.
6048         (operator=(optional<_Up>&&)): Likewise.
6049         * testsuite/20_util/optional/assignment/5.cc: Add a test to
6050         verify assignment from something that can't be perfect-forwarded.
6051         * testsuite/20_util/optional/cons/value.cc: Add tests to verify
6052         that a nested optional is disengaged when constructed
6053         from a disengaged element type, and to verify that assignments
6054         from an engaged element type engage the optional.
6056 2016-08-18  Tim Shen  <timshen@google.com>
6058         Implement <variant>
6060         * include/Makefile.am: Add new file std/variant.
6061         * include/Makefile.in: Generated from Makefile.am.
6062         * include/bits/enable_special_members.h: Add a tag type to allow
6063         the construction in non-default constructor.
6064         * include/bits/uses_allocator.h: Add convenience traits to
6065         detect constructibility.
6066         * include/std/variant: Implement <variant>.
6067         * testsuite/20_util/variant/compile.cc: Compile-time tests.
6068         * testsuite/20_util/variant/run.cc: Runtime tests.
6070 2016-08-18  Jonathan Wakely  <jwakely@redhat.com>
6072         * doc/xml/manual/test.xml (test.run.permutations): Expand section.
6073         (test.new_tests): Rewrite section.
6074         (tests.dg.directives): New section.
6075         * doc/html/*: Regenerate.
6077         * doc/xml/manual/test.xml: Improve documentation of test targets.
6078         Document new-abi-baseline, check-debug, and check-parallel targets.
6080         * doc/xml/manual/build_hacking.xml: New section on shared library
6081         versioning.
6083         * doc/xml/manual/build_hacking.xml: Improve markup.
6084         * doc/xml/manual/test.xml: Likewise. Change section title from "Test"
6085         to "Testing".
6086         * doc/xml/faq.xml: Change link text to "Testing".
6088         * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
6089         dg-options directive.
6091 2016-08-17  Jonathan Wakely  <jwakely@redhat.com>
6093         * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
6094         directive and use effective target instead of dg-options.
6096         * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
6097         instead of -std in dg-options.
6098         * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
6099         * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
6100         * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
6101         * testsuite/20_util/hash/quality.cc: Likewise.
6102         * testsuite/25_algorithms/heap/moveable.cc: Likewise.
6103         * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
6104         * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
6105         * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
6106         * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
6107         * testsuite/25_algorithms/sort/random_test.cc: Likewise.
6109         * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
6110         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
6111         * testsuite/27_io/rvalue_streams.cc: Likewise.
6113         * testsuite/26_numerics/complex/literals/types.cc: Add comment.
6115         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
6116         Remove duplicate dg-options directive.
6118         * testsuite/ext/profile/all.cc: Use effective target instead of
6119         -std=gnu++11. Use dg-additional-options instead of repeating options.
6121         * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
6122         -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
6123         instead of dg-excess-errors.
6125         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
6126         test for C++17.
6127         * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
6128         * testsuite/experimental/ratio/value.cc: Likewise.
6129         * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
6130         C++17.
6131         * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
6132         * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
6133         * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
6134         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
6135         * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
6136         * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
6137         * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
6138         * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
6139         * testsuite/tr1/5_numerical_facilities/special_functions/
6140         10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
6141         C++17 compatibility.
6143         * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
6144         expected signatures for C++14 compatibility.
6146         PR libstdc++/77264
6147         * include/bits/basic_string.h (operator=(__sv_type)
6148         (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
6149         (replace(size_type, size_type, __sv_type))
6150         (replace(const_iterator, const_iterator, __sv_type))
6151         (find(__sv_type, size_type), rfind(__sv_type, size_type))
6152         (compare(size_type, size_type, __sv_type)): Reformat.
6153         (_If_sv): Define helper for SFINAE constaints.
6154         (append(const _Tp&, size_type, size_type))
6155         (assign(const _Tp&, size_type, size_type))
6156         (insert(size_type, const _Tp&, size_type, size_type))
6157         (replace(size_type, size_type, const _Tp&, size_type, size_type)):
6158         Use _If_sv.
6159         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
6160         SFINAE constraints.
6161         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
6162         Likewise.
6163         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
6164         Likewise.
6165         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
6166         Likewise.
6167         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
6168         Likewise.
6169         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
6170         Likewise.
6171         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
6172         Likewise.
6173         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
6174         Likewise.
6175         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
6176         Likewise.
6177         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
6178         Likewise.
6179         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
6180         Likewise.
6182 2016-08-16  Jonathan Wakely  <jwakely@redhat.com>
6184         PR libstdc++/72847
6185         * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
6186         pointers to start and end of storage.
6187         * testsuite/23_containers/vector/bool/72847.cc: New test.
6188         * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
6189         _M_finish after deallocating.
6190         (vector<bool>::_M_fill_insert): Likewise.
6191         (vector<bool>::_M_insert_range): Likewise.
6192         (vector<bool>::_M_insert_aux): Likewise.
6194 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
6196         Implement LWG 2744 and LWG 2754.
6197         * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
6198         (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
6199         (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
6200         Likewise.
6201         (emplace(_Args&&...)): Likewise.
6202         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
6203         * include/std/utility: (__is_in_place_type_impl): New.
6204         (__is_in_place_type): Likewise.
6205         * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
6206         emplace.
6207         * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
6208         in_place constructor.
6209         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
6210         * testsuite/20_util/any/requirements.cc: Add a test for
6211         in_place-constructing a non-default-constructible type.
6213 2016-08-15  Ville Voutilainen  <ville.voutilainen@gmail.com>
6215         Add a feature macro for C++17 make_from_tuple.
6216         * include/std/tuple (__cpp_lib_make_from_tuple): New.
6217         (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
6218         Qualify the call to get<>().
6219         * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
6221 2016-08-15  Uros Bizjak  <ubizjak@gmail.com>
6223         * src/filesystem/ops.cc: Always include ostream and
6224         ext/stdio_filebuf.h.
6225         (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
6226         [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
6227         sendfile fails with ENOSYS or EINVAL.
6229 2016-08-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>
6231         PR libstdc++/72840
6232         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
6233         syntax.
6235 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
6237         Implement C++17 make_from_tuple.
6238         * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
6239         * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
6241 2016-08-11  Ville Voutilainen  <ville.voutilainen@gmail.com>
6243         Implement LWG 2758.
6244         * include/bits/basic_string.h
6245         (append(__sv_type, size_type, size_type)): Turn into a template,
6246         change parameter type, constrain, add a conversion to __sv_type
6247         from the dependent parameter type.
6248         (assign(__sv_type, size_type, size_type)): Likewise.
6249         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
6250         (replace(size_type, size_type, __sv_type, size_type, size_type)):
6251         Likewise.
6252         (compare(size_type, size_type,__sv_type, size_type, size_type)):
6253         Likewise.
6254         * testsuite/21_strings/basic_string/lwg2758.cc: New.
6256 2016-08-06  Jonathan Wakely  <jwakely@redhat.com>
6258         * doc/xml/manual/status_cxx2017.xml: Update status table.
6259         * doc/html/manual/status.html: Regenerate.
6261         * testsuite/lib/libstdc++.exp: Fix typo in comment.
6263         PR libstdc++/72820
6264         * include/std/functional (_Function_base::_Base_manager::_M_clone):
6265         Qualify new operator.
6266         * testsuite/20_util/function/cons/72820.cc: New test.
6268         * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
6269         * doc/html/manual/status.html: Regenerate.
6270         * include/Makefile.am: Add new header.
6271         * include/Makefile.in: Regenerate.
6272         * include/bits/invoke.h: New header.
6273         (__invoke): Make constexpr. Add && to types in exception specification.
6274         * include/experimental/tuple (apply, __apply_impl): Fix non-reserved
6275         names. Include <bits/invoke.h> and use std::__invoke.
6276         * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
6277         new header.
6278         (invoke): Add && to types in exception specification.
6279         * include/std/tuple (apply, __apply_impl): Define for C++17.
6280         * testsuite/20_util/tuple/apply/1.cc: New test.
6281         * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
6282         lineno.
6284 2016-08-05  Jonathan Wakely  <jwakely@redhat.com>
6286         * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
6287         * doc/html/manual/status.html: Regenerate.
6289         * include/std/chrono (floor, ceil, round, abs): New for C++17.
6290         * testsuite/20_util/duration_cast/rounding.cc: New test.
6291         * testsuite/20_util/time_point_cast/rounding.cc: New test.
6292         * doc/xml/manual/status_cxx2017.xml: Update status table.
6293         * doc/html/manual/status.html: Regenerate.
6294         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
6295         dg-error lineno.
6296         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
6297         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
6298         * testsuite/20_util/duration/literals/range.cc: Likewise.
6300         * include/std/functional (__callable_functor): Remove.
6301         (_Function_handler::_M_invoke): Use __invoke instead of
6302         __callable_functor or mem_fn.
6303         (function::_Callable): Use lvalue in result_of expression.
6304         (function): Remove TODO comments about allocators.
6305         * testsuite/20_util/function/cons/refqual.cc: New test.
6307 2016-08-04  Jonathan Wakely  <jwakely@redhat.com>
6309         * doc/xml/manual/status_cxx2017.xml: Update status table.
6310         * include/std/functional (__inv_unwrap): Move to <type_traits>.
6311         (__invoke_impl): Remove exception specifications.
6312         (__invoke, invoke): Add exception specifications using
6313         __is_nothrow_callable.
6314         * include/std/type_traits (__inv_unwrap): Move from <functional>.
6315         (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
6316         (__is_callable, __is_nothrow_callable): New traits.
6317         (is_callable, is_callable_v): New C++17 traits.
6318         (is_nothrow_callable, is_nothrow_callable_v): Likewise.
6319         * testsuite/20_util/is_callable/requirements/
6320         explicit_instantiation.cc: New test.
6321         * testsuite/20_util/is_callable/requirements/
6322         explicit_instantiation_ext.cc: New test.
6323         * testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
6324         * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
6325         test.
6326         * testsuite/20_util/is_callable/value.cc: New test.
6327         * testsuite/20_util/is_callable/value_ext.cc: New test.
6328         * testsuite/20_util/is_nothrow_callable/requirements/
6329         explicit_instantiation.cc: New test.
6330         * testsuite/20_util/is_nothrow_callable/requirements/
6331         explicit_instantiation_ext.cc: New test.
6332         * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
6333         New test.
6334         * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
6335         New test.
6336         * testsuite/20_util/is_nothrow_callable/value.cc: New test.
6337         * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
6339         * doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
6340         * doc/html/manual/status.html: Regenerate.
6342         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
6343         effective target not dg-options. Move check for feature-test macro to:
6344         * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
6345         New test.
6347         * include/std/functional (_Unwrap): Rename to __inv_unwrap.
6348         (__invfwd): Adjust.
6349         (__invoke_impl): Remove unused template parameters.
6350         * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
6351         parameter.
6352         * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
6353         and test __invoke extension for C++11.
6355 2016-08-03  Jonathan Wakely  <jwakely@redhat.com>
6357         * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
6358         Define feature-test macro.
6359         * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
6360         for the macro.
6362         * include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
6363         * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
6364         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
6365         * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
6366         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6368         * include/std/utility (as_const): Define.
6369         * testsuite/20_util/as_const/1.cc: New test.
6370         * testsuite/20_util/as_const/rvalue_neg.cc: New test.
6372         * include/bits/shared_ptr.h (owner_less): Add default template
6373         argument.
6374         * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
6375         specialization.
6376         (owner_less<void>): Define specialization.
6377         * include/bits/stl_function.h (__cpp_lib_transparent_operators):
6378         Update value.
6379         * testsuite/20_util/owner_less/void.cc: New test.
6380         * testsuite/experimental/feat-cxx14.cc: Update macro value tested.
6382         * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
6383         Define feature-test macro.
6384         * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
6385         * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
6386         * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
6387         (__cpp_lib_type_trait_variable_templates): Define.
6389         * include/bits/stl_function.h: Remove commented-out macro.
6390         * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
6391         Define feature-test macro.
6392         * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
6394         * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
6395         C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
6396         true.
6397         * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
6398         do #error for C++17.
6399         * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
6400         of __STDCPP_WANT_MATH_SPEC_FUNCS__.
6401         * include/tr1/bessel_function.tcc: Likewise.
6402         * include/tr1/beta_function.tcc: Likewise.
6403         * include/tr1/cmath: Likewise.
6404         * include/tr1/ell_integral.tcc: Likewise.
6405         * include/tr1/exp_integral.tcc: Likewise.
6406         * include/tr1/gamma.tcc: Likewise.
6407         * include/tr1/hypergeometric.tcc: Likewise.
6408         * include/tr1/legendre_function.tcc: Likewise.
6409         * include/tr1/modified_bessel_func.tcc: Likewise.
6410         * include/tr1/poly_hermite.tcc: Likewise.
6411         * include/tr1/poly_laguerre.tcc: Likewise.
6412         * include/tr1/riemann_zeta.tcc: Likewise.
6413         * include/tr1/special_function_util.h: Likewise.
6414         * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
6416         * include/std/type_traits (has_trivial_default_constructor): Remove.
6417         (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
6418         * testsuite/20_util/has_trivial_copy_assign/requirements/
6419         explicit_instantiation.cc: Remove test.
6420         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
6421         line number.
6422         * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
6423         Likewise.
6424         * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
6425         * testsuite/20_util/has_trivial_copy_constructor/requirements/
6426         explicit_instantiation.cc: Likewise.
6427         * testsuite/20_util/has_trivial_copy_constructor/requirements/
6428         typedefs.cc: Likewise.
6429         * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
6430         * testsuite/20_util/has_trivial_default_constructor/requirements/
6431         explicit_instantiation.cc: Likewise.
6432         * testsuite/20_util/has_trivial_default_constructor/requirements/
6433         typedefs.cc: Likewise.
6434         * testsuite/20_util/has_trivial_default_constructor/value.cc:
6435         Likewise.
6436         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
6437         Check has_trivial_default_constructor, has_trivial_copy_constructor,
6438         and has_trivial_copy_assign are not defined.
6439         * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
6440         tests.
6441         * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
6442         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
6443         dg-error line number.
6444         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6445         Likewise.
6447 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
6449         * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
6450         Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
6451         * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
6452         Likewise.
6453         * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
6454         Likewise.
6455         * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
6456         Likewise.
6457         * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
6458         Likewise.
6459         * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
6460         Likewise.
6461         * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
6462         Likewise.
6464         * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
6465         comments.
6467         * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
6468         dg-error to relevant line.
6469         * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
6470         Likewise.
6471         * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
6473         * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
6475         * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
6476         options are present that aren't valid for C.
6477         * testsuite/abi/header_cxxabi.c: Likewise.
6479         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
6480         check_value.cc: Do not add special functions to namespace std in TR1
6481         test.
6483         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
6484         run for C++11 and later.
6485         * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
6486         Likewise.
6487         * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
6488         * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
6489         * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
6490         * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
6491         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
6492         Likewise.
6493         * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
6494         Likewise.
6495         * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
6496         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
6497         Likewise.
6498         * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
6499         Likewise.
6500         * testsuite/special_functions/02_assoc_legendre/check_value.cc:
6501         Likewise.
6502         * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
6503         * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
6504         * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
6505         * testsuite/special_functions/03_beta/check_value.cc: Likewise.
6506         * testsuite/special_functions/03_beta/compile.cc: Likewise.
6507         * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
6508         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
6509         * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
6510         Likewise.
6511         * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
6512         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
6513         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
6514         * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
6515         Likewise.
6516         * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
6517         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
6518         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
6519         * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
6520         Likewise.
6521         * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
6522         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
6523         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
6524         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
6525         Likewise.
6526         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
6527         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
6528         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
6529         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
6530         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
6531         Likewise.
6532         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
6533         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
6534         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
6535         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
6536         Likewise.
6537         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
6538         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
6539         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
6540         * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
6541         * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
6542         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
6543         * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
6544         * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
6545         * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
6546         * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
6547         * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
6548         * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
6549         * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
6550         * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
6551         * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
6552         * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
6553         * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
6554         * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
6555         * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
6556         * testsuite/special_functions/14_expint/check_value.cc: Likewise.
6557         * testsuite/special_functions/14_expint/compile.cc: Likewise.
6558         * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
6559         * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
6560         * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
6561         * testsuite/special_functions/15_hermite/compile.cc: Likewise.
6562         * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
6563         * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
6564         * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
6565         * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
6566         * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
6567         * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
6568         * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
6569         * testsuite/special_functions/17_legendre/compile.cc: Likewise.
6570         * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
6571         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
6572         * testsuite/special_functions/18_riemann_zeta/check_value.cc:
6573         Likewise.
6574         * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
6575         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
6576         * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
6577         * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
6578         * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
6579         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
6580         * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
6581         * testsuite/special_functions/20_sph_legendre/check_value.cc:
6582         Likewise.
6583         * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
6584         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
6585         * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
6586         * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
6587         * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
6588         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
6590         * testsuite/tr1/5_numerical_facilities/special_functions/
6591         08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
6592         of [[gnu::unused]].
6593         * testsuite/tr1/5_numerical_facilities/special_functions/
6594         09_cyl_bessel_j/check_value.cc: Likewise.
6595         * testsuite/tr1/5_numerical_facilities/special_functions/
6596         10_cyl_bessel_k/check_value.cc: Likewise.
6597         * testsuite/tr1/5_numerical_facilities/special_functions/
6598         11_cyl_neumann/check_value.cc: Likewise.
6599         * testsuite/tr1/5_numerical_facilities/special_functions/
6600         21_sph_bessel/check_value.cc: Likewise.
6601         * testsuite/tr1/5_numerical_facilities/special_functions/
6602         23_sph_neumann/check_value.cc: Likewise.
6604 2016-08-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6606         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
6607         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
6608         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
6609         * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
6610         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
6611         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
6613 2016-08-02  Jonathan Wakely  <jwakely@redhat.com>
6615         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
6616         test if -flto used.
6618         * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
6619         additional flags for compiling libtestc++.a objects.
6621 2016-08-01  Jonathan Wakely  <jwakely@redhat.com>
6623         * include/bits/basic_string.h (data() const): Update comment.
6624         (data()): Add non-const overload for C++17.
6625         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
6626         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
6628         * include/bits/basic_string.tcc: Disable explicit instantiation
6629         declarations for C++17.
6631         * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
6632         ignored "xfail" from { dg-do compile { xfail selector } } directive.
6633         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
6634         Likewise.
6635         * testsuite/26_numerics/headers/cmath/
6636         c99_classification_macros_c++11.cc: Likewise.
6637         * testsuite/26_numerics/headers/cmath/
6638         c99_classification_macros_c++98.cc: Likewise.
6639         * testsuite/26_numerics/headers/cmath/
6640         c99_classification_macros_c.cc: Likewise.
6642         * testsuite/backward/hash_set/check_construct_destroy.cc: Account
6643         for different construct/destroy counts in C++98 mode.
6645         * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
6647         * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
6648         later.
6649         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
6650         Likewise.
6652         * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
6653         C++98-compatible initialization for array.
6655         * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
6656         unused header and variable from compile-only test.
6657         * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
6658         * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
6659         * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
6660         * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
6661         Likewise.
6663         * testsuite/experimental/string_view/operations/rfind/char/2.cc:
6664         Remove duplicate dg-options directive.
6666         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
6667         808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
6669         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
6670         linker options from compile-only tests.
6671         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
6672         Likewise.
6674         * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
6675         supported for C++11 and later.
6676         * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
6677         * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
6679 2016-08-01  Uros Bizjak  <ubizjak@gmail.com>
6681         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
6683 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
6685         * testsuite/20_util/conditional/requirements/typedefs.cc: Change to
6686         compile-only test.
6688         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
6689         Ensure test is compiled with optimization.
6691         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6692         Adjust dg-prune-output pattern for error in C++98 mode.
6694         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
6695         run for C++11 or later.
6697         * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
6698         test to not rely on GNU extension (escaped normal characters in POSIX
6699         BRE). Enable tests for other strings which are now supported.
6701         * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
6702         c++11 instead of setting -std=gnu++14.
6704         PR libstdc++/72745
6705         * include/std/array (get): Use positive message for static assertions.
6706         * include/std/functional (_Safe_tuple_element_t): Fix indentation.
6707         * include/std/tuple (tuple_element<I, tuple<>>): Add partial
6708         specialization for invalid indices, with static assertion.
6709         * testsuite/20_util/tuple/element_access/get_neg.cc: New test.
6711         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
6712         dg-error to relevant line.
6713         * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
6714         Likewise.
6715         * testsuite/23_containers/forward_list/requirements/dr438/
6716         assign_neg.cc: Likewise.
6717         * testsuite/23_containers/forward_list/requirements/dr438/
6718         constructor_1_neg.cc: Likewise.
6719         * testsuite/23_containers/forward_list/requirements/dr438/
6720         constructor_2_neg.cc: Likewise.
6721         * testsuite/23_containers/forward_list/requirements/dr438/
6722         insert_neg.cc: Likewise.
6723         * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
6724         Likewise.
6725         * testsuite/26_numerics/random/linear_congruential_engine/
6726         requirements/non_uint_neg.cc: Likewise.
6727         * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
6728         Likewise. Also test for std::atomic_address.
6730 2016-07-31  Ville Voutilainen  <ville.voutilainen@gmail.com>
6732         Add missing variable traits, fix testsuite failures.
6733         * include/bits/uses_allocator.h (uses_allocator_v): New.
6734         * include/std/functional (is_bind_expression_v, is_placeholder_v):
6735         Likewise.
6736         * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
6737         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
6738         * testsuite/20_util/duration/literals/range.cc: Likewise.
6739         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
6740         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
6741         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
6742         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
6743         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6744         Likewise.
6745         * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
6746         * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
6747         New.
6749 2016-07-31  Jonathan Wakely  <jwakely@redhat.com>
6751         * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
6752         not test 128-bit types.
6753         * testsuite/20_util/is_floating_point/value.cc: Likewise.
6754         * testsuite/20_util/is_integral/value.cc: Likewise.
6755         * testsuite/20_util/is_signed/value.cc: Likewise.
6756         * testsuite/20_util/is_unsigned/value.cc: Likewise.
6757         * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
6758         * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
6759         * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
6760         Likewise.
6761         * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
6762         Likewise.
6764         * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
6766 2016-07-29  Ville Voutilainen  <ville.voutilainen@gmail.com>
6768         Implement C++17 variable templates for type traits.
6769         * include/std/chrono (treat_as_floating_point_v): New.
6770         * include/std/ratio (ratio_equal_v, ratio_not_equal_v)
6771         (ratio_less_v, ratio_less_equal_v, ratio_greater_v)
6772         (ratio_greater_equal_v): Likewise.
6773         * include/std/system_error (is_error_code_enum_v)
6774         (is_error_condition_enum_v): Likewise.
6775         * include/std/tuple (tuple_size_v): Likewise.
6776         * type_traits (conjunction_v, disjunction_v, negation_v)
6777         (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
6778         (is_array_v, is_pointer_v, is_lvalue_reference_v)
6779         (is_rvalue_reference_v, is_member_object_pointer_v)
6780         (is_member_function_pointer_v, is_enum_v, is_union_v)
6781         (is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
6782         (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
6783         (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
6784         (is_trivially_copyable_v, is_standard_layout_v)
6785         (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
6786         (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
6787         (is_constructible_v, is_default_constructible_v)
6788         (is_copy_constructible_v, is_move_constructible_v)
6789         (is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
6790         (is_destructible_v, is_trivially_constructible_v)
6791         (is_trivially_default_constructible_v)
6792         (is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
6793         (is_trivially_assignable_v, is_trivially_copy_assignable_v)
6794         (is_trivially_move_assignable_v, is_trivially_destructible_v)
6795         (is_nothrow_constructible_v, is_nothrow_default_constructible_v)
6796         (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
6797         (is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
6798         (is_nothrow_move_assignable_v, is_nothrow_destructible_v)
6799         (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
6800         (is_same_v, is_base_of_v, is_convertible_v): Likewise.
6801         * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
6802         * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
6803         Likewise.
6804         * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
6805         * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
6806         * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
6808 2016-07-29  Andreas Schwab  <schwab@linux-m68k.org>
6810         * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
6811         * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
6812         * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
6814 2016-07-29  Jonathan Wakely  <jwakely@redhat.com>
6816         * doc/xml/manual/abi.xml: Document 6.0.22 library version.
6817         * doc/html/manual/abi.html: Regenerate.
6819         * acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
6820         * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
6821         symbols.
6822         * configure: Regenerate.
6823         * testsuite/util/testsuite_abi.cc: Add new symbol version.
6825         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
6826         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
6827         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
6828         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
6829         Likewise.
6830         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
6831         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
6832         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
6834 2016-07-28  Jonathan Wakely  <jwakely@redhat.com>
6836         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
6837         Adjust dg-prune-output pattern for error in C++98 mode.
6838         * testsuite/23_containers/deque/requirements/dr438/
6839         constructor_1_neg.cc: Likewise.
6840         * testsuite/23_containers/deque/requirements/dr438/
6841         constructor_2_neg.cc: Likewise.
6842         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
6843         Likewise.
6844         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
6845         Likewise.
6846         * testsuite/23_containers/list/requirements/dr438/
6847         constructor_1_neg.cc: Likewise.
6848         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
6849         Likewise.
6850         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
6851         Likewise.
6852         * testsuite/23_containers/vector/requirements/dr438/
6853         constructor_1_neg.cc: Likewise.
6854         * testsuite/23_containers/vector/requirements/dr438/
6855         constructor_2_neg.cc: Likewise.
6856         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
6857         Likewise.
6859         * testsuite/23_containers/vector/check_construct_destroy.cc: Account
6860         for different construct/destroy counts in C++98 mode.
6862         * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
6863         dg-options to dg-additional-options so that default options are used.
6864         * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
6865         Likewise.
6866         * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
6867         * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
6868         Likewise.
6869         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
6870         Use dg-additional-options instead of repeating the common options.
6872         * testsuite/22_locale/conversions/string/1.cc: Remove unintended
6873         dg-do compile directive.
6874         * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
6875         dg-do directive.
6876         * testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
6878 2016-07-28  Ville Voutilainen  <ville.voutilainen@gmail.com>
6880         Implement std::string_view and P0254r2,
6881         Integrating std::string_view and std::string.
6882         * include/Makefile.am: Add string_view and string_view.tcc
6883         to the exported headers.
6884         * include/Makefile.in: Likewise.
6885         * include/bits/basic_string.h: Include <string_view> in C++17 mode.
6886         (__sv_type): New.
6887         (basic_string(__sv_type, const _Alloc&)): Likewise.
6888         (operator=(__sv_type)): Likewise.
6889         (operator __sv_type()): Likewise.
6890         (operator+=(__sv_type)): Likewise.
6891         (append(__sv_type __sv)): Likewise.
6892         (append(__sv_type, size_type, size_type)): Likewise.
6893         (assign(__sv_type)): Likewise.
6894         (assign(__sv_type, size_type, size_type)): Likewise.
6895         (insert(size_type, __sv_type)): Likewise.
6896         (insert(size_type, __sv_type, size_type, size_type)): Likewise.
6897         (replace(size_type, size_type, __sv_type)): Likewise.
6898         (replace(size_type, size_type, __sv_type, size_type, size_type)):
6899         Likewise.
6900         (replace(const_iterator, const_iterator, __sv_type)): Likewise.
6901         (find(__sv_type, size_type)): Likewise.
6902         (rfind(__sv_type, size_type)): Likewise.
6903         (find_first_of(__sv_type, size_type)): Likewise.
6904         (find_last_of(__sv_type, size_type)): Likewise.
6905         (find_first_not_of(__sv_type, size_type)): Likewise.
6906         (find_last_not_of(__sv_type, size_type)): Likewise.
6907         (compare(__sv_type)): Likewise.
6908         (compare(size_type, size_type, __sv_type)): Likewise.
6909         (compare(size_type, size_type, __sv_type, size_type, size_type)):
6910         Likewise.
6911         * include/bits/string_view.tcc: New.
6912         * include/std/string_view: Likewise.
6913         * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
6914         * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
6915         * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
6916         Likewise.
6917         * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
6918         Likewise.
6919         * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
6920         Likewise.
6921         * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
6922         Likewise.
6923         * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
6924         Likewise.
6925         * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
6926         Likewise.
6927         * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
6928         Likewise.
6929         * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
6930         Likewise.
6931         * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
6932         Likewise.
6933         * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
6934         Likewise.
6935         * testsuite/21_strings/basic_string/operations/find/char/5.cc:
6936         Likewise.
6937         * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
6938         Likewise.
6939         * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
6940         * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
6941         * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
6942         * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
6943         * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
6944         * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
6945         * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
6946         * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
6947         * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
6948         * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
6949         Likewise.
6950         * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
6951         Likewise.
6952         * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
6953         Likewise.
6954         * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
6955         Likewise.
6956         * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
6957         Likewise.
6958         * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
6959         Likewise.
6960         * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
6961         Likewise.
6962         * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
6963         Likewise.
6964         * testsuite/21_strings/basic_string_view/include.cc: Likewise.
6965         * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
6966         * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
6967         * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
6968         * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
6969         Likewise.
6970         * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
6971         Likewise.
6972         * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
6973         Likewise.
6974         * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
6975         Likewise.
6976         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
6977         Likewise.
6978         * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
6979         Likewise.
6980         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
6981         Likewise.
6982         * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
6983         Likewise.
6984         * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
6985         Likewise.
6986         * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
6987         Likewise.
6988         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
6989         Likewise.
6990         * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
6991         Likewise.
6992         * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
6993         Likewise.
6994         * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
6995         Likewise.
6996         * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
6997         Likewise.
6998         * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
6999         Likewise.
7000         * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
7001         Likewise.
7002         * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
7003         Likewise.
7004         * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
7005         Likewise.
7006         * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
7007         Likewise.
7008         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
7009         Likewise.
7010         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
7011         Likewise.
7012         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
7013         Likewise.
7014         * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
7015         Likewise.
7016         * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
7017         Likewise.
7018         * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
7019         Likewise.
7020         * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
7021         Likewise.
7022         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
7023         Likewise.
7024         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
7025         Likewise.
7026         * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
7027         Likewise.
7028         * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
7029         Likewise.
7030         * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
7031         Likewise.
7032         * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
7033         Likewise.
7034         * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
7035         * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
7036         Likewise.
7037         * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
7038         Likewise.
7039         * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
7040         Likewise.
7041         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
7042         Likewise.
7043         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
7044         Likewise.
7045         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
7046         Likewise.
7047         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
7048         Likewise.
7049         * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
7050         Likewise.
7051         * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
7052         Likewise.
7053         * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
7054         * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
7056 2016-07-27  Jonathan Wakely  <jwakely@redhat.com>
7058         * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
7060 2016-07-25  Georeth Chow  <georeth2010@gmail.com>
7062         * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
7063         _S_concat enumerator.
7064         * testsuite/ext/rope/6.cc: New test.
7066 2016-07-25  Jonathan Wakely  <jwakely@redhat.com>
7068         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
7069         std::mt19937, std::thread and std::atomic to simplify test.
7070         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
7072 2016-07-22  Jonathan Wakely  <jwakely@redhat.com>
7074         PR libstdc++/71964
7075         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
7076         (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
7077         * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
7078         * testsuite/21_strings/basic_string/allocator/71964.cc: New test.
7079         * testsuite/23_containers/set/allocator/71964.cc: New test.
7081         * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
7082         delete[] instead of delete.
7084 2016-07-21  Jonathan Wakely  <jwakely@redhat.com>
7086         * include/experimental/propagate_const (propagate_const::__t): Rename
7087         to _M_t and remove comment. Qualify std::move and std::forward.
7088         * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
7090         * testsuite/23_containers/vector/zero_sized_allocations.cc:
7091         Define sized deallocation function.
7092         * testsuite/util/testsuite_new_operators.h:
7093         (operator delete(void*, const std::nothrow_t&)): Define nothrow
7094         deallocation function.
7096         * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
7097         reads past the end of strings.
7098         * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
7099         Likewise.
7100         * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
7101         invalid array accesses.
7102         * testsuite/experimental/string_view/operations/compare/char/1.cc:
7103         Fix read past the end of string.
7104         * testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
7106         * testsuite/24_iterators/container_access.cc: Fix missing returns.
7107         * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
7109         * testsuite/18_support/new_delete_placement.cc: Don't allocate (and
7110         leak) memory for arguments to placement delete.
7111         * testsuite/20_util/addressof/1.cc: Don't leak memory.
7112         * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
7113         * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
7114         Likewise.
7116 2016-07-20  Jonathan Wakely  <jwakely@redhat.com>
7118         * doc/xml/manual/intro.xml: Document DR 2684 status.
7119         * doc/html/*: Regenerate.
7121         * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
7122         (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
7123         (atomic_uint64_t): Define (LWG 2441).
7124         * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
7125         lines.
7126         * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
7127         the new types.
7128         * doc/xml/manual/intro.xml: Document DR 2441 status.
7130         * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
7131         to use perfect forwarding (LWG 2328).
7132         * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
7133         * doc/xml/manual/intro.xml: Document DR 2328 status.
7135         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
7136         static objects for catching nullptr as pointer to member types.
7138 2016-07-18  Ville Voutilainen  <ville.voutilainen@gmail.com>
7140         Clean up optional's comments.
7141         * include/std/optional: Remove incorrect section headers
7142         from comments when redundant, replace bare section
7143         headers with more descriptive comments.
7145 2016-07-15  Jonathan Wakely  <jwakely@redhat.com>
7147         * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
7148         * include/bits/move.h: Likewise.
7149         * include/bits/postypes.h: Likewise.
7150         * include/debug/bitset: Likewise.
7151         * include/ext/pb_ds/detail/type_utils.hpp: Likewise.
7152         * include/ext/string_conversions.h: Change C++0x to __cxx11 in
7153         comment.
7154         * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
7155         * testsuite/util/thread/all.h: Likewise.
7157         * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
7158         and adjust comment.
7160         PR c++/58796
7161         * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
7162         nullptr match handlers of pointer type.
7164 2016-07-15  Edward Smith-Rowland  <3dw4rd@verizon.net>
7166         Implement C++17 P0025 clamp.
7167         * include/bits/algorithmfwd.h: Declare clamp overloads.
7168         * include/bits/stl_algo.h: Implement clamp.  Feature __cpp_lib_clamp.
7169         * testsuite/25_algorithms/clamp/1.cc: New test.
7170         * testsuite/25_algorithms/clamp/2.cc: New test.
7171         * testsuite/25_algorithms/clamp/constexpr.cc: New test.
7172         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
7173         1.cc: New test.
7174         * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
7175         pod.cc: New test.
7177 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
7179         Fix the constraints for any's assignment operator template to properly
7180         reject assignment from a non-copyable lvalue.
7181         * include/std/any (operator=(_ValueType&&)): Constrain the decayed
7182         type for is_copy_constructible,
7183         * testsuite/20_util/any/requirements.cc: Add a test for
7184         non-copyable lvalues.
7186 2016-07-14  Jonathan Wakely  <jwakely@redhat.com>
7188         * include/experimental/functional: Include <parallel/algorithm> in
7189         Parallel Mode.
7191         * testsuite/experimental/functional/searchers.cc: Include <algorithm>
7192         for std::search.
7194         PR libstdc++/70716
7195         * include/bits/forward_list.h (forward_list): Update doxygen comments
7196         to reflect allocator propagation semantics. Remove ambiguous
7197         statements about data being lost.
7198         * include/bits/stl_deque.h (deque): Likewise.
7199         * include/bits/stl_list.h (list): Likewise.
7200         * include/bits/stl_map.h (map): Likewise.
7201         * include/bits/stl_multimap.h (multimap): Likewise.
7202         * include/bits/stl_multiset.h (multiset): Likewise.
7203         * include/bits/stl_set.h (set): Likewise.
7204         * include/bits/stl_vector.h (vector): Likewise.
7205         * include/bits/unordered_map.h (unordered_map, unordered_multimap):
7206         Likewise.
7207         * include/bits/unordered_set.h (unordered_set, unordered_multiset):
7208         Likewise.
7210 2016-07-14  Ville Voutilainen  <ville.voutilainen@gmail.com>
7212         Implement P0032R3, Homogeneous interface for variant, any and optional,
7213         for the parts concerning any and optional.
7214         * include/std/any (_Storage()): Make constexpr and have it
7215         initialize _M_ptr.
7216         (any()): Make constexpr.
7217         (any(const any&)): Adjust.
7218         (any(any&&)): Likewise.
7219         (__any_constructible_t): New.
7220         (any(_ValueType&&)): Constrain.
7221         (any(in_place_type_t<_Tp>, _Args&&...)): New.
7222         (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
7223         Likewise.
7224         (~any()): Adjust.
7225         (operator=(const any&)): Likewise.
7226         (operator=(any&&)): Likewise.
7227         (operator=(_ValueType&&)): Constrain.
7228         (emplace(_Args&&...)): New.
7229         (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
7230         (clear()): Remove.
7231         (reset()): New.
7232         (swap(any&)): Adjust.
7233         (empty()): Remove.
7234         (has_value()): New.
7235         (type()): Adjust.
7236         (_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
7237         (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
7238         (make_any(_Args&&...)): Likewise.
7239         (make_any(initializer_list<_Up>, _Args&&...)): Likewise.
7240         * include/std/optional (in_place_t, in_place): Remove.
7241         (bad_optional_access): Add a comment referring to LEWG 72.
7242         (emplace(_Args&&...)): Constrain.
7243         (has_value()): New.
7244         (reset()): Likewise.
7245         (make_optional(_Args&&...)): Likewise.
7246         (make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
7247         * include/std/utility (in_place_tag): New.
7248         (__in_place, __in_place_type, __in_place_index): Likewise.
7249         (in_place_t, in_place_type_t, in_place_index_t): Likewise.
7250         (in_place(__in_place*)): Likewise.
7251         (in_place(__in_place_type<_Tp>*)): Likewise.
7252         (in_place(__in_place_index<_Idx>*)): Likewise.
7253         * testsuite/20_util/any/assign/1.cc: Adjust.
7254         * testsuite/20_util/any/assign/emplace.cc: New.
7255         * testsuite/20_util/any/assign/self.cc: Adjust.
7256         * testsuite/20_util/any/cons/1.cc: Likewise.
7257         * testsuite/20_util/any/cons/in_place.cc: New.
7258         * testsuite/20_util/any/make_any.cc: Likewise.
7259         * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
7260         * testsuite/20_util/any/misc/swap.cc: Likewise.
7261         * testsuite/20_util/any/modifiers/1.cc: Likewise.
7262         * testsuite/20_util/any/requirements.cc: New.
7263         * testsuite/20_util/in_place/requirements.cc: Likewise.
7264         * testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
7265         * testsuite/20_util/optional/in_place.cc: Likewise.
7266         * testsuite/20_util/optional/make_optional.cc: Add tests for
7267         the new overloads of make_optional.
7269 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
7271         Implement P0307R2, Making Optional Greater Equal Again.
7272         * include/experimental/optional (_Has_addressof): Fix the comment.
7273         * include/std/optional (_Has_addressof): Likewise.
7274         (operator=(_Up&&)): Constrain.
7275         (operator=(const optional<_Up>&)): Likewise.
7276         (operator=(optional<_Up>&&)): Likewise.
7277         (__optional_relop_t): New.
7278         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7279         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
7280         Constrain and make transparent.
7281         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7282         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
7283         Constrain and make transparent.
7284         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7285         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7286         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
7287         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
7288         (operator!=(const optional<_Tp>&, _Tp const&)):
7289         Constrain and make transparent.
7290         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
7291         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
7292         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
7293         (operator>(const optional<_Tp>&, const _Tp&)):
7294         Constrain and make transparent.
7295         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
7296         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
7297         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
7298         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
7299         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
7300         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
7301         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7302         * testsuite/20_util/optional/relops/1.cc: Likewise.
7303         * testsuite/20_util/optional/relops/2.cc: Likewise.
7304         * testsuite/20_util/optional/relops/3.cc: Likewise.
7305         * testsuite/20_util/optional/relops/4.cc: Likewise.
7306         * testsuite/20_util/optional/requirements.cc: Add tests to verify
7307         that optional's relops are transparent and don't synthesize
7308         operators. Also test that assignment sfinaes.
7310 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7312         PR libstdc++/71856
7313         * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
7314         * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
7315         Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
7316         on _GLIBCXX_ASSERTIONS.
7317         * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
7318         Include <unistd.h> for sleep.
7319         * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
7320         * include/parallel/merge.h: Likewise.
7321         * include/parallel/multiway_merge.h: Likewise.
7322         * include/parallel/partition.h: Likewise.
7323         * include/parallel/queue.h: Likewise.
7324         * include/parallel/sort.h: Likewise.
7325         * testsuite/25_algorithms/headers/algorithm/
7326         parallel_algorithm_assert.cc: New.
7328         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
7329         (replace(__const_iterator, __const_iterator, initializer_list<C>)):
7330         Forward to different overload.
7332         * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
7333         static.
7335 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7337         Revert "Add non-const overload of std::string::data()".
7339 2016-07-13  Ville Voutilainen  <ville.voutilainen@gmail.com>
7341         Implement P0307R2, Making Optional Greater Equal Again.
7342         * include/experimental/optional (_Has_addressof): Fix the comment.
7343         * include/std/optional (_Has_addressof): Likewise.
7344         (operator=(_Up&&)): Constrain.
7345         (operator=(const optional<_Up>&)): Likewise.
7346         (operator=(optional<_Up>&&)): Likewise.
7347         (__optional_relop_t): New.
7348         (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7349         (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
7350         Constrain and make transparent.
7351         (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
7352         (operator>(const optional<_Tp>&, const optional<_Tp>&)):
7353         Constrain and make transparent.
7354         (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7355         (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
7356         (operator==(const optional<_Tp>&, const _Tp&): Constrain.
7357         (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
7358         (operator!=(const optional<_Tp>&, _Tp const&)):
7359         Constrain and make transparent.
7360         (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
7361         (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
7362         (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
7363         (operator>(const optional<_Tp>&, const _Tp&)):
7364         Constrain and make transparent.
7365         (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
7366         (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
7367         (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
7368         (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
7369         (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
7370         * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
7371         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7372         * testsuite/20_util/optional/relops/1.cc: Likewise.
7373         * testsuite/20_util/optional/relops/2.cc: Likewise.
7374         * testsuite/20_util/optional/relops/3.cc: Likewise.
7375         * testsuite/20_util/optional/relops/4.cc: Likewise.
7376         * testsuite/20_util/optional/requirements.cc: Add tests to verify
7377         that optional's relops are transparent and don't synthesize
7378         operators. Also test that assignment sfinaes.
7380 2016-07-13  Jonathan Wakely  <jwakely@redhat.com>
7382         * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
7383         New function.
7384         (_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
7385         instead of _M_data().
7386         (basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
7387         Likewise.
7388         (append(const basic_string&)): Likewise.
7389         (append(const basic_string&, size_type, size_type)): Likewise.
7390         (assign(const basic_string&, size_type, size_type)): Likewise.
7391         (insert(size_type, const basic_string&)): Likewise.
7392         (insert(size_type, const basic_string&, size_type, size_type)):
7393         Likewise.
7394         (replace(size_type, size_type, const basic_string&, size_type,
7395         size_type)): Likewise.
7396         (replace(__const_iterator, __const_iterator, const basic_string&)):
7397         Likewise.
7398         (c_str(), data()): Use c_str() instead of _M_data().
7399         (data()): Add non-const overload as per LWG 2391 and P0272R1.
7400         (compare(const basic_string&)): Use data() instead of _M_data().
7401         [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
7402         * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
7403         Pass raw pointers to _S_copy.
7404         (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
7405         _S_assign.
7406         (find(const _CharT*, size_type, size_type)): Use data instead of
7407         _M_data().
7408         * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
7409         * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
7410         * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
7412 2016-07-12  Jonathan Wakely  <jwakely@redhat.com>
7414         * libsupc++/new: Remove nothrow sized deletes (LWG 2458).
7415         * doc/xml/manual/intro.xml: Document DR 2458 status.
7416         * doc/html*: Regenerate.
7418         * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
7419         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
7420         Only include <array>.
7421         * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
7422         Likewise.
7423         * doc/xml/manual/intro.xml: Document LWG 2212 support.
7424         * doc/html*: Regenerate.
7426         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
7427         Add testcase from LWG 2164.
7429 2016-07-11  François Dumont  <fdumont@gcc.gnu.org>
7431         * include/bits/stl_vector.h (push_back(const value_type&)): Forward
7432         to _M_realloc_insert.
7433         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
7434         (_M_realloc_insert): Declare new function.
7435         (_M_emplace_back_aux): Remove definition.
7436         * include/bits/vector.tcc (emplace_back(_Args...)):
7437         Use _M_realloc_insert.
7438         (insert(const_iterator, const value_type&)): Likewise.
7439         (_M_insert_rval, _M_emplace_aux): Likewise.
7440         (_M_emplace_back_aux): Remove declaration.
7441         (_M_realloc_insert): Define.
7442         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
7443         Adjust expected results for emplacing an lvalue with reallocation.
7445 2016-07-10  Ville Voutilainen  <ville.voutilainen@gmail.com>
7447         Implement std::optional.
7448         * include/Makefile.am: Add optional to exported headers.
7449         * include/Makefile.in: Likewise.
7450         * include/std/optional: New.
7451         * testsuite/20_util/optional/typedefs.cc: Likewise.
7452         * testsuite/20_util/optional/relops/2.cc: Likewise.
7453         * testsuite/20_util/optional/relops/3.cc: Likewise.
7454         * testsuite/20_util/optional/relops/4.cc: Likewise.
7455         * testsuite/20_util/optional/relops/5.cc: Likewise.
7456         * testsuite/20_util/optional/relops/1.cc: Likewise.
7457         * testsuite/20_util/optional/relops/6.cc: Likewise.
7458         * testsuite/20_util/optional/nullopt.cc: Likewise.
7459         * testsuite/20_util/optional/in_place.cc: Likewise.
7460         * testsuite/20_util/optional/make_optional.cc: Likewise.
7461         * testsuite/20_util/optional/assignment/2.cc: Likewise.
7462         * testsuite/20_util/optional/assignment/3.cc: Likewise.
7463         * testsuite/20_util/optional/assignment/4.cc: Likewise.
7464         * testsuite/20_util/optional/assignment/5.cc: Likewise.
7465         * testsuite/20_util/optional/assignment/1.cc: Likewise.
7466         * testsuite/20_util/optional/assignment/6.cc: Likewise.
7467         * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
7468         * testsuite/20_util/optional/cons/default.cc: Likewise.
7469         * testsuite/20_util/optional/cons/move.cc: Likewise.
7470         * testsuite/20_util/optional/cons/value.cc: Likewise.
7471         * testsuite/20_util/optional/cons/copy.cc: Likewise.
7472         * testsuite/20_util/optional/requirements.cc: Likewise.
7473         * testsuite/20_util/optional/observers/2.cc: Likewise.
7474         * testsuite/20_util/optional/observers/3.cc: Likewise.
7475         * testsuite/20_util/optional/observers/4.cc: Likewise.
7476         * testsuite/20_util/optional/observers/5.cc: Likewise.
7477         * testsuite/20_util/optional/observers/1.cc: Likewise.
7478         * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
7479         * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
7480         * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
7481         * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
7482         * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
7483         * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
7484         * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
7485         * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
7486         * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
7487         * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
7488         * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
7489         * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
7490         * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
7491         * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
7492         * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
7493         * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
7494         * testsuite/20_util/optional/swap/1.cc: Likewise.
7496 2016-07-08  Jonathan Wakely  <jwakely@redhat.com>
7498         * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
7500 2016-07-07  Jonathan Wakely  <jwakely@redhat.com>
7502         * doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
7503         * doc/html/*: Regenerate.
7505 2016-07-07  Ville Voutilainen  <ville.voutilainen@gmail.com>
7507         Implement std::any.
7508         * include/Makefile.am: Add any and c++17_warning.h to exported headers.
7509         * include/Makefile.in: Likewise.
7510         * include/std/any: New.
7511         * testsuite/20_util/any/assign/1.cc: Likewise.
7512         * testsuite/20_util/any/assign/2.cc: Likewise.
7513         * testsuite/20_util/any/assign/self.cc: Likewise.
7514         * testsuite/20_util/any/cons/1.cc: Likewise.
7515         * testsuite/20_util/any/cons/2.cc: Likewise.
7516         * testsuite/20_util/any/cons/aligned.cc: Likewise.
7517         * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
7518         * testsuite/20_util/any/misc/any_cast.cc: Likewise.
7519         * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
7520         * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
7521         * testsuite/20_util/any/misc/swap.cc: Likewise.
7522         * testsuite/20_util/any/modifiers/1.cc: Likewise.
7523         * testsuite/20_util/any/observers/type.cc: Likewise.
7524         * testsuite/20_util/any/typedefs.cc: Likewise.
7526 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7528         Add a new header for diagnosing the use of C++17 facilities
7529         in pre-C++17 modes.
7530         * include/bits/c++17_warning.h: New.
7532 2016-07-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7534         Implement LWG 2451, optional<T> should 'forward' T's
7535         implicit conversions.
7536         * include/experimental/optional (__is_optional_impl, __is_optional):
7537         New.
7538         (optional()): Make constexpr and default.
7539         (optional(_Up&&), optional(const optional<_Up>&),
7540         optional(optional<_Up>&& __t): New.
7541         (operator=(_Up&&)): Constrain.
7542         (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
7543         * testsuite/experimental/optional/cons/value.cc:
7544         Add tests for the functionality added by LWG 2451.
7545         * testsuite/experimental/optional/cons/value_neg.cc: New.
7547 2016-07-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
7549         Implement LWG 2509,
7550         any_cast doesn't work with rvalue reference targets and cannot
7551         move with a value target.
7552         * include/experimental/any (any(_ValueType&&)): Constrain and
7553         add an overload that doesn't forward.
7554         (any_cast(any&&)): Constrain and add an overload that moves.
7555         * testsuite/experimental/any/misc/any_cast.cc: Add tests for
7556         the functionality added by LWG 2509.
7558 2016-07-04  François Dumont  <fdumont@gcc.gnu.org>
7560         * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
7561         New test.
7562         * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
7563         test.
7565 2016-07-04  Jonathan Wakely  <jwakely@redhat.com>
7567         * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
7568         Define inline. Forward to _M_emplace_aux.
7569         (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
7570         (_M_insert_rval, _M_emplace_aux): Declare new functions.
7571         (_Temporary_value): New RAII type using allocator to construct/destroy.
7572         (_S_insert_aux_assign): Remove.
7573         (_M_insert_aux): Make non-variadic.
7574         * include/bits/vector.tcc (insert(const_iterator, const value_type&)):
7575         Use _Temporary_value.
7576         (emplace(const_iterator, _Args&&...)): Remove definition.
7577         (_M_insert_rval, _M_emplace_aux): Define.
7578         (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
7579         (_M_fill_insert): Use _Temporary_value.
7580         * testsuite/23_containers/vector/allocator/construction.cc: New test.
7581         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
7582         Adjust expected results for emplacing an lvalue with reallocation.
7583         * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
7584         expected results to account for construction/destruction of temporary
7585         using allocator.
7586         * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
7588 2016-07-04  Ville Voutilainen  <ville.voutilainen@gmail.com>
7590         PR libstdc++/71313
7591         * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
7592         Call remove_all for children of a directory.
7593         * testsuite/experimental/filesystem/operations/create_directories.cc:
7594         Adjust.
7596 2016-07-02  François Dumont  <fdumont@gcc.gnu.org>
7598         * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
7599         dg-error line numbers.
7600         * testsuite/23_containers/array/tuple_interface/
7601         tuple_element_debug_neg.cc: Likewise.
7602         * testsuite/25_algorithms/lexicographical_compare/debug/
7603         irreflexive_neg.cc: Remove.
7605 2016-06-30  Thomas Preud'homme  <thomas.preudhomme@arm.com>
7607         * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
7608         than specific target.
7610 2016-06-27  François Dumont  <fdumont@gcc.gnu.org>
7612         PR libstdc++/71640
7613         * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
7614         friend declaration.
7616 2016-06-23  François Dumont  <fdumont@gcc.gnu.org>
7618         * include/debug/array (array<>::swap): Fix noexcept qualificaton for
7619         zero-size array.
7621 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
7623         * configure.host: Remove mep-* support.
7625 2016-06-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
7627         * configure: Regenerate.
7628         * configure.host: Remove support for knetbsd.
7629         * crossconfig.m4: Likewise.
7631 2016-06-20  François Dumont  <fdumont@gcc.gnu.org>
7633         PR libstdc++/71181
7634         * include/tr1/hashtable_policy.h
7635         (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
7636         dereferenceable to avoid check on lower_bound result.
7637         (_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
7638         (_Prime_rehash_policy::_M_need_rehash): Likewise.
7639         * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
7640         Always return a value greater than input value. Set _M_next_resize to
7641         max value when reaching highest prime number.
7642         * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
7643         being now useless.
7644         * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
7645         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
7646         (test02): New.
7647         * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
7648         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
7649         Fix indentation.
7651 2016-06-17  Jonathan Wakely  <jwakely@redhat.com>
7653         PR libstdc++/71545
7654         * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
7655         Remove irreflexive checks.
7656         * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
7657         binary_search): Likewise.
7658         * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
7659         * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
7660         * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
7661         * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
7662         * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
7663         Add constructor from array.
7665 2016-06-16  François Dumont  <fdumont@gcc.gnu.org>
7667         * include/debug/debug.h
7668         (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
7669         (__glibcxx_requires_subscript): Move...
7670         * include/debug/assertions.h: ...here and add __builtin_expect.
7671         (_GLIBCXX_DEBUG_ONLY): Remove ; value.
7672         * include/bits/stl_deque.h
7673         (std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
7674         (std::deque<>::front()): Add __glibcxx_requires_nonempty check.
7675         (std::deque<>::back()): Likewise.
7676         (std::deque<>::pop_front()): Likewise.
7677         (std::deque<>::pop_back()): Likewise.
7678         (std::deque<>::swap(deque&)): Add allocator check.
7679         * include/bits/stl_vector.h
7680         (std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
7681         (std::vector<>::front()): Add __glibcxx_requires_nonempty check.
7682         (std::vector<>::back()): Likewise.
7683         (std::vector<>::pop_back()): Likewise.
7684         (std::vector<>::swap(vector&)): Add allocator check.
7686 2016-06-16  Daniel Kruegler  <daniel.kruegler@gmail.com>
7688         Provide swappable traits (p0185r1)
7689         * include/std/type_traits (is_swappable, is_nothrow_swappable,
7690         is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
7691         is_nothrow_swappable_v, is_swappable_with_v,
7692         is_nothrow_swappable_with_v): New.
7693         * include/bits/stl_pair.h: Use it as per p0185r1.
7694         * include/bits/stl_queue.h: Likewise.
7695         * include/bits/stl_stack.h: Likewise.
7696         * include/bits/unique_ptr.h: Likewise.
7697         * include/std/tuple: Likewise.
7698         * include/std/array: Likewise. Fix zero-size member swap.
7699         * include/bits/hashtable.h: Use __and_.
7700         * testsuite/20_util/is_nothrow_swappable/requirements/
7701         explicit_instantiation.cc: Change test options to std=gnu++17.
7702         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
7703         Likewise.
7704         * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
7705         * testsuite/20_util/is_swappable/requirements/
7706         explicit_instantiation.cc: Likewise.
7707         * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
7708         * testsuite/20_util/is_swappable/value.cc: Likewise.
7709         * testsuite/20_util/is_nothrow_swappable/requirements/
7710         explicit_instantiation_ext.cc: New.
7711         * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
7712         New.
7713         * testsuite/20_util/is_nothrow_swappable/value.h: New.
7714         * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
7715         * testsuite/20_util/is_nothrow_swappable_with/requirements/
7716         explicit_instantiation.cc: New.
7717         * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
7718         New.
7719         * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
7720         * testsuite/20_util/is_swappable/requirements/
7721         explicit_instantiation_ext.cc: New.
7722         * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
7723         * testsuite/20_util/is_swappable/value.h: New.
7724         * testsuite/20_util/is_swappable/value_ext.cc: New.
7725         * testsuite/20_util/is_swappable_with/requirements/
7726         explicit_instantiation.cc: New.
7727         * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
7728         * testsuite/20_util/is_swappable_with/value.cc: New.
7729         * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
7730         dg-error line numbers.
7731         * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
7732         Likewise.
7734 2016-06-16  Jonathan Wakely  <jwakely@redhat.com>
7736         * include/std/array: Remove trailing whitespace.
7737         * include/std/atomic: Likewise.
7738         * include/std/bitset: Likewise.
7739         * include/std/chrono: Likewise.
7740         * include/std/complex: Likewise.
7741         * include/std/condition_variable: Likewise.
7742         * include/std/fstream: Likewise.
7743         * include/std/functional: Likewise.
7744         * include/std/future: Likewise.
7745         * include/std/iomanip: Likewise.
7746         * include/std/iosfwd: Likewise.
7747         * include/std/istream: Likewise.
7748         * include/std/limits: Likewise.
7749         * include/std/ratio: Likewise.
7750         * include/std/scoped_allocator: Likewise.
7751         * include/std/sstream: Likewise.
7752         * include/std/stdexcept: Likewise.
7753         * include/std/string: Likewise.
7754         * include/std/system_error: Likewise.
7755         * include/std/thread: Likewise.
7756         * include/std/tuple: Likewise.
7757         * include/std/type_traits: Likewise.
7758         * include/std/utility: Likewise.
7759         * include/std/valarray: Likewise.
7760         * include/std/vector: Likewise.
7762         * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
7763         new overloaded functions.
7764         * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
7765         to avoid creating a redundant temporary.
7766         * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
7767         test.
7769 2016-06-15  François Dumont  <fdumont@gcc.gnu.org>
7771         * include/bits/stl_deque.h
7772         (std::deque<>::operator=): Call _M_assign_aux.
7773         (std::deque<>::assign(initializer_list<>)): Likewise.
7774         (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
7775         (std::deque<>::insert(const_iterator, initializer_list<>)):
7776         Call _M_range_insert_aux.
7777         (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
7778         Likewise.
7779         (std::deque<>::_M_fill_assign): Call _M_fill_insert.
7780         (std::deque<>::_M_move_assign2): Call _M_assign_aux.
7781         * include/bits/deque.tcc
7782         (std::deque<>::operator=): Call _M_range_insert_aux.
7783         (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
7784         Likewise.
7785         * include/bits/stl_vector.h
7786         (std::vector<>::operator=): Call _M_assign_aux.
7787         (std::vector<>::assign(initializer_list<>)): Likewise.
7788         (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
7789         (std::vector<>::insert(const_iterator, initializer_list<>)):
7790         Call _M_range_insert.
7791         * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
7793 2016-06-07  François Dumont  <fdumont@gcc.gnu.org>
7795         * include/std/tuple (_Head_base<>): Default specialization condition at
7796         type declaration.
7798 2016-06-06  Ville Voutilainen  <ville.voutilainen@gmail.com>
7800         Support allocators in tuples of zero size.
7801         * include/std/tuple (tuple<>::tuple(),
7802         tuple<>::tuple(allocator_arg_t, const _Alloc&),
7803         tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
7804         * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
7806 2016-06-06  Jonathan Wakely  <jwakely@redhat.com>
7808         PR libstdc++/71320
7809         * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
7810         Add or remove permissions according to perms argument.
7811         * testsuite/experimental/filesystem/operations/permissions.cc: New
7812         test.
7814 2016-06-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
7816         Protect allocator-overloads of tuple-from-tuple constructors
7817         from cases that would create dangling references.
7818         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7819         const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
7820         tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
7821         * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
7823 2016-05-29  Gerald Pfeifer  <gerald@pfeifer.com>
7825         * doc/xml/manual/backwards_compatibility.xml: Adjust
7826         lists.debian.org link to https.
7827         * doc/html/manual/backwards.html: Regenerate.
7829 2016-05-27  Jonathan Wakely  <jwakely@redhat.com>
7831         * doc/xml/manual/abi.xml: Adjust URL to use https.
7832         * doc/html/manual/*: Regenerate.
7834 2016-05-27  Ville Voutilainen  <ville.voutilainen@gmail.com>
7836         PR libstdc++/66338
7837         * include/std/tuple (_TMC): Add a check for _NotSameTuple.
7838         * include/std/tuple (tuple(_UElements&&...)): Remove the separate
7839         check for _NotSameTuple.
7840         * include/std/tuple (_TMCT): New.
7841         * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
7842         * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
7843         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7844               const tuple<_UElements...>&)): Likewise.
7845         * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
7846               tuple<_UElements...>&&)): Likewise.
7847         * testsuite/20_util/tuple/cons/66338.cc: New.
7849 2016-05-25  Jonathan Wakely  <jwakely@redhat.com>
7851         * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
7852         * configure: Regenerate.
7853         * config.h.in: Regenerate.
7855         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
7856         * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
7857         Remove const qualification on function. Replace
7858         _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
7859         (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
7860         (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
7862 2016-05-24  François Dumont  <fdumont@gcc.gnu.org>
7864         * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
7865         * include/bits/hashtable_policy.h
7866         (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
7867         having load factor management.
7868         (_Mask_range_hashing): New.
7869         (__clp2): New.
7870         (_Power2_rehash_policy): New.
7871         (_Inserts<>): Remove last template parameter, _Unique_keys, so that
7872         partial specializations only depend on whether iterators are constant
7873         or not.
7874         * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
7875         test new hash policy.
7876         * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
7877         Likewise.
7878         * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
7879         Likewise.
7880         * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
7881         Likewise.
7882         * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
7883         Likewise.
7884         * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
7885         New.
7886         * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
7887         using the new hash policy.
7888         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
7890 2016-05-24  Jonathan Wakely  <jwakely@redhat.com>
7892         * include/bits/stl_queue.h (priority_queue::value_compare): Define.
7894 2016-05-23  François Dumont  <fdumont@gcc.gnu.org>
7896         * include/debug/safe_iterator.h
7897         (_Safe_iterator<>::operator->()): Implement using underlying iterator
7898         operator ->.
7899         * include/debug/safe_local_iterator.h
7900         (_Safe_local_iterator<>::operator->()): Likewise.
7902 2016-05-20  Thomas Preud'homme  <thomas.preudhomme@arm.com>
7904         * testsuite/experimental/memory_resource/1.cc: Add required argument
7905         to dg-require-atomic-builtins.
7907 2016-05-13  Jonathan Wakely  <jwakely@redhat.com>
7909         PR libstdc++/71073
7910         * include/debug/bitset: Add #pragma GCC system_header.
7911         * include/debug/deque: Likewise.
7912         * include/debug/list: Likewise.
7913         * include/debug/map: Likewise.
7914         * include/debug/set: Likewise.
7915         * include/debug/string: Likewise.
7916         * include/debug/unordered_map: Likewise.
7917         * include/debug/unordered_set: Likewise.
7918         * include/debug/vector: Likewise.
7919         * include/debug/functions.h: Adjust whitespace.
7921 2016-05-12  Jonathan Wakely  <jwakely@redhat.com>
7923         PR libstdc++/71081
7924         * testsuite/experimental/memory_resource/1.cc: Require atomics.
7926 2016-05-11  Jonathan Wakely  <jwakely@redhat.com>
7928         PR libstdc++/71049
7929         * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
7930         exception constructors with __sso_string parameters.
7932 2016-05-10  Jonathan Wakely  <jwakely@redhat.com>
7934         * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
7935         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
7936         Test begin and end functions.
7937         * testsuite/experimental/filesystem/iterators/
7938         recursive_directory_iterator.cc: Likewise.
7940         PR libstdc++/71038
7941         * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
7942         * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
7944         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
7945         Overload operator* to move from rvalues.
7947         PR libstdc++/71036
7948         * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
7949         * testsuite/experimental/filesystem/operations/create_directory.cc:
7950         New test.
7952         PR libstdc++/71037
7953         * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
7954         base path to exception.
7955         * testsuite/experimental/filesystem/operations/canonical.cc: Test
7956         paths contained in exception.
7958         * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
7959         using declaration.
7961         PR libstdc++/71005
7962         * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
7963         New type.
7964         (directory_iterator::operator++(int)): Return proxy.
7965         (recursive_directory_iterator::operator++(int)): Likewise.
7966         * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
7967         Test post-increment.
7968         * testsuite/experimental/filesystem/iterators/
7969         recursive_directory_iterator.cc: Likewise.
7971 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
7973         PR libstdc++/71004
7974         * testsuite/experimental/filesystem/iterators/
7975         recursive_directory_iterator.cc: Fix test02 to not call member
7976         functions on invalid iterator, and use VERIFY not assert.
7978 2016-05-09  Ville Voutilainen  <ville.voutilainen@gmail.com>
7980         Avoid endless run-time recursion for copying single-element
7981         tuples where the element type is by-value constructible
7982         from any type.
7983         * include/std/tuple (_NotSameTuple): New.
7984         * include/std/tuple (tuple(_UElements&&...): Use it.
7985         * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
7987 2016-05-09  Jonathan Wakely  <jwakely@redhat.com>
7989         PR libstdc++/71004
7990         * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
7991         Initialize scalar member variables in default constructor.
7992         * testsuite/experimental/filesystem/iterators/
7993         recursive_directory_iterator.cc: Test default construction.
7995 2016-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7997         * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
7999 2016-05-05  Jonathan Wakely  <jwakely@redhat.com>
8001         * testsuite/experimental/filesystem/path/native/string.cc: Add
8002         dg-require-filesystem-ts directive.
8004 2016-05-04  Jonathan Wakely  <jwakely@redhat.com>
8006         PR libstdc++/70940
8007         * include/experimental/memory_resource
8008         (__resource_adaptor_imp::do_allocate): Do not default-construct
8009         rebound allocator.
8010         (__resource_adaptor_imp::do_deallocate): Likewise. Use
8011         allocator_traits to get pointer type.
8012         (__null_memory_resource::do_allocate): Remove unused parameters.
8013         (__null_memory_resource::do_deallocate): Likewise.
8014         (__null_memory_resource::do_is_equal): Likewise. Add return statement.
8015         * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
8016         * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
8017         move to ...
8018         * testsuite/experimental/memory_resource/1.cc: Here.
8019         * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
8020         * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
8022 2016-04-29  Chris Gregory  <czipperz@gmail.com>
8024         * config/*: Remove trailing whitespace.
8025         * src/*: Likewise.
8026         * testsuite/tr1/*: Likewise.
8027         * testsuite/util/*: Likewise.
8029 2016-04-28  Jonathan Wakely  <jwakely@redhat.com>
8031         PR libstdc++/70766
8032         * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
8033         __addressof.
8034         * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
8035         Likewise.
8036         * include/std/atomic (atomic<_Tp>): Likewise.
8037         * include/std/shared_mutex (shared_lock): Likewise.
8038         * testsuite/24_iterators/istream_iterator/70766.cc: New test.
8039         * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
8040         * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
8041         * testsuite/29_atomics/atomic/70766.cc: New test.
8042         * testsuite/30_threads/shared_lock/70766.cc: New test.
8044         * include/bits/hashtable_policy.h (__detail::_Insert_base,
8045         __detail::_Insert): Improve comments.
8047 2016-04-27  Jonathan Wakely  <jwakely@redhat.com>
8049         PR libstdc++/70767
8050         * include/std/limits: Update comments about DRs.
8051         (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
8052         numeric_limits<const volatile _Tp>): Define unconditionally.
8054 2016-04-24  Jonathan Wakely  <jwakely@redhat.com>
8056         PR libstdc++/70762
8057         * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
8058         static counter to return a different path on every call.
8060 2016-04-22  Tim Shen  <timshen@google.com>
8062         PR libstdc++/70745
8063         * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
8064         Fix the match_not_bow and match_not_eow behavior.
8065         * testsuite/28_regex/regression.cc: Add testcase.
8067 2016-04-20  Jonathan Wakely  <jwakely@redhat.com>
8069         PR libstdc++/69703
8070         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
8071         __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
8073 2016-04-19  Jonathan Wakely  <jwakely@redhat.com>
8075         PR libstdc++/69703
8076         * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
8077         Override endianness bit in mode.
8078         * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
8079         * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
8080         that little_endian mode is ignored.
8081         * testsuite/experimental/filesystem/path/native/string.cc: New test.
8083         PR libstdc++/70609
8084         * src/filesystem/ops.cc (close_fd): New function.
8085         (do_copy_file): Set permissions before copying file contents. Check
8086         result of closing file descriptors. Don't copy streambuf when file
8087         is empty.
8088         (copy(const path&, const path&, copy_options, error_code&)): Use
8089         lstat for source file when copy_symlinks is set.
8090         * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
8092         * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
8093         operator~ operator&=, operator|=, operator^=): Add noexcept to
8094         overloaded operators for copy_options, perms and directory_options.
8095         * src/filesystem/ops.cc (make_file_type, make_file_status,
8096         is_not_found_errno, file_time): Add noexcept.
8098 2016-04-19  Edward Smith-Rowland  <3dw4rd@verizon.net>
8100         * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
8102 2016-04-18  Jonathan Wakely  <jwakely@redhat.com>
8104         PR libstdc++/41759
8105         * include/bits/random.h: Reword static assertion messages to state
8106         positive conditions.
8107         * include/bits/random.tcc: Likewise.
8108         * include/bits/uniform_int_dist.h: Likewise.
8109         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
8110         patterns.
8112         * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
8114         * config/cpu/sh/atomicity.h: Fix typo in comment.
8116         PR libstdc++/70294
8117         * include/std/thread (operator<, operator==): Move definitions to
8118         namespace-scope.
8119         * testsuite/30_threads/thread/id/70294.cc: New test.
8121         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
8122         -Wno-pedantic to dg-options.
8123         * testsuite/20_util/align/2.cc: Use type as operand of alignof.
8124         * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
8125         to dg-options.
8126         * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
8127         Remove extra semi-colon.
8128         * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
8129         Always supply second argument to static_assert.
8130         * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
8131         semi-colon.
8132         * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
8133         dg-options.
8134         * testsuite/26_numerics/complex/literals/values.cc: Likewise.
8135         * testsuite/29_atomics/atomic/60695.cc: Likewise.
8136         * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
8137         alignof when operand is an object not a type.
8138         * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
8139         * testsuite/decimal/make-decimal.cc: Likewise.
8140         * testsuite/experimental/type_traits/value.cc: Always supply second
8141         argument to static_assert.
8142         * testsuite/util/testsuite_common_types.h: Use __extension__ for
8143         __int128 types.
8145         * testsuite/experimental/type_erased_allocator/1.cc: Don't include
8146         internal header.
8147         * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
8148         * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
8149         * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
8150         Likewise. Add licence and change to compile-only test.
8152         * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
8153         unused parameter.
8154         * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
8156         * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
8157         warnings.
8159 2016-04-17  Edward Smith-Rowland  <3dw4rd@verizon.net>
8161         * include/bits/specfun.h: Trivial comment misspelling.
8163 2016-04-14  Jason Merrill  <jason@redhat.com>
8165         Revert Jonathan's empty ABI change from yesterday.
8167 2016-04-13  Martin Sebor  <msebor@redhat.com>
8169         PR c++/69517
8170         * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
8171         upper bound is positive.
8173 2016-04-13  Jonathan Wakely  <jwakely@redhat.com>
8175         * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
8176         _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
8177         * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
8178         of functions taking empty structs by value. Add a template parameter
8179         to overloads without hints. Rename overloads with hints to
8180         _M_emplace_hint.
8181         (_Hashtable::_M_erase(true_type, const_iterator),
8182         _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
8183         by reordering parameters.
8184         * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
8185         _M_emplace_hint instead of _M_emplace.
8186         * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
8187         shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
8188         * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
8189         __shared_ptr): Likewise.
8190         * include/bits/stl_algo.h (replace_if): Likewise.
8191         * include/bits/stl_pair.h (piecewise_construct_t,
8192         piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
8193         * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
8194         __uses_alloc0): Likewise.
8195         * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
8196         * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
8197         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
8198         * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
8199         * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
8200         * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
8201         * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
8203 2016-04-12  Edward Smith-Rowland  <3dw4rd@verizon.net>
8205         Document C++17/TR29124 C++ Special Math Functions.
8206         * include/bits/specfun.h: Add Doxygen markup.
8208 2016-04-07  Jonathan Wakely  <jwakely@redhat.com>
8210         * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
8212 2016-04-06  Eric Botcazou  <ebotcazou@adacore.com>
8214         * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
8215         * src/Makefile.in: Regenerate.
8217 2016-04-05  Jonathan Wakely  <jwakely@redhat.com>
8219         PR libstdc++/70554
8220         * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
8221         __atomic_fetch_add for bool.
8222         * configure: Regenerate.
8224         * testsuite/30_threads/thread/70503.cc: Require -static to work.
8226         PR libstdc++/70503
8227         * src/c++11/thread.cc (execute_native_thread_routine,
8228         execute_native_thread_routine_compat): Give internal linkage.
8229         * testsuite/30_threads/thread/70503.cc: New test.
8231 2016-04-05  Ville Voutilainen  <ville.voutilainen@gmail.com>
8233         PR libstdc++/70437
8234         * include/bits/stl_pair.h (_ConstructiblePair,
8235         _ImplicitlyConvertiblePair, _MoveConstructiblePair,
8236         _ImplicitlyMoveConvertiblePair): Add shortcut conditions
8237         for same-type cases.
8238         * testsuite/20_util/pair/70437.cc: New.
8240 2016-03-24  Jonathan Wakely  <jwakely@redhat.com>
8242         PR libstdc++/69945
8243         * config/abi/pre/gnu.ver: Add new symbol.
8244         * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
8245         * testsuite/18_support/free_eh_pool.cc: New test.
8247 2016-03-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8249         * include/Makefile.am (install-freestanding-headers): Add
8250         concept_check.h and move.h to the installed headers.
8251         * include/Makefile.in: Regenerated.
8252         * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
8253         freestanding implementations.
8254         * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
8255         that this macro has no effect for freestanding implementations.
8256         * doc/html/manual/using_macros.html: Likewise.
8258 2016-02-24  Jonathan Wakely  <jwakely@redhat.com>
8260         PR libstdc++/69939
8261         * include/experimental/tuple (__apply_impl): Qualify get and forward.
8263 2016-02-23  Jonathan Wakely  <jwakely@redhat.com>
8265         * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
8266         * doc/html/*: Regenerate.
8268         PR libstdc++/69893
8269         * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
8270         exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
8271         llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
8272         nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
8273         trunc) [__cplusplus >= 201103L]: Import from namespace std.
8274         (fabs) [__cplusplus < 201103L]: Import from namespace std.
8275         * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
8276         Likewise.
8277         * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
8278         namespace before including TR1 headers.
8279         * testsuite/tr1/headers/c++200x/math.cc: New test.
8281 2016-02-23  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8283         PR libstdc++/69881
8284         * include/c_global/cstdarg: Undefine __need___va_list.
8285         * include/c_global/cstddef: Undefine all kinds of __need_*.
8287 2016-02-16  Tim Shen  <timshen@google.com>
8289         PR libstdc++/69794
8290         * include/bits/regex_scanner.h: Add different special character
8291         sets for grep and egrep regex.
8292         * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
8293         * testsuite/28_regex/regression.cc: Add new testcase.
8295 2016-02-08  Jonathan Wakely  <jwakely@redhat.com>
8297         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
8298         added 'constexpr' in previous commit.
8299         * configure: Regenerate.
8301         PR libstdc++/48891
8302         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
8303         checks for all targets except *-*-solaris2.* and ensure we find the
8304         libc math.h header not our own.
8305         * configure: Regenerate.
8307 2016-02-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>
8309         * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
8310         New file.  Copied over from s390-linux-gnu.
8312 2016-02-04  Jonathan Wakely  <jwakely@redhat.com>
8314         PR libstdc++/69626
8315         * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
8316         with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
8317         * config.h.in: Regenerate.
8318         * configure: Regenerate.
8319         * testsuite/21_strings/c_strings/char/69626.cc: New.
8321         * doc/html/index.html: Regenerate.
8323         * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
8324         * doc/xml/manual/spine.xml: Update copyright years and author blurb.
8325         * doc/html/*: Regenerate.
8327 2016-02-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
8329         PR libstdc++/69581
8330         * include/c_compatibility/math.h: Move header guards.
8331         * include/c_compatibility/stdlib.h: Likewise.
8333 2016-01-29  Jonathan Wakely  <jwakely@redhat.com>
8335         PR libstdc++/69506
8336         * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8338 2016-01-28  John David Anglin  <danglin@gcc.gnu.org>
8340         PR libstdc++/69450
8341         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
8342         isinf and isnan functions into two independent checks.  Check on hpux.
8343         * config.h.in: Regenerate.
8344         * configure: Regenerate.
8345         * include/c_global/cmath (isinf(double), isnan(double)): Use
8346         _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
8347         respectively.
8349 2016-01-27  Jakub Jelinek  <jakub@redhat.com>
8351         * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
8353 2016-01-27  Jonathan Wakely  <jwakely@redhat.com>
8355         PR libstdc++/69295
8356         * testsuite/ext/special_functions/hyperg/check_value.cc: Use
8357         -ffp-contract=off, and -ffloat-store to disable excess precision.
8358         * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
8359         -ffp-contract=off.
8361 2016-01-26  Jonathan Wakely  <jwakely@redhat.com>
8363         PR libstdc++/69478
8364         * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
8365         random_access_iterator_tag>): Check is_move_assignable when moving.
8366         (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
8367         Likewise.
8368         * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
8369         * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
8370         * testsuite/25_algorithms/move/69478.cc: New.
8371         * testsuite/25_algorithms/move_backward/69478.cc: new.
8373 2016-01-26  Andris Pavenis  <andris.pavenis@iki.fi>
8375         * include/c_compatibility/stdlib.h: Include wide character related
8376         definitions only when they are available in cstdlib.
8378 2016-01-25  Jonathan Wakely  <jwakely@redhat.com>
8380         PR libstdc++/69464
8381         * include/Makefile.am: Add new header.
8382         * include/Makefile.in: Regenerate.
8383         * include/bits/random.h (uniform_int_distribution): Move to
8384         bits/uniform_int_dist.h.
8385         * include/bits/random.tcc (uniform_int_distribution::operator(),
8386         uniform_int_distribution::__generate_impl): Likewise.
8387         * include/bits/uniform_int_dist.h: New header.
8388         * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
8389         <bits/uniform_int_dist.h> instead of <random>.
8390         * testsuite/20_util/specialized_algorithms/uninitialized_copy/
8391         move_iterators/1.cc: Include correct header for uninitialized_copy.
8392         * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
8393         move_iterators/1.cc: Likewise.
8394         * testsuite/25_algorithms/nth_element/58800.cc: Include correct
8395         header for vector.
8396         * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
8398 2016-01-23  John David Anglin  <danglin@gcc.gnu.org>
8400         PR libstdc++/69446
8401         * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8403 2016-01-22  Edward Smith-Rowland  <3dw4rd@verizon.net>
8405         TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
8406         * include/c_compatibility/math.h: Import the TR29124 functions
8407         into the global namespace.
8408         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
8409         xfail and make compile-only.
8410         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
8411         * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
8412         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
8413         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
8414         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
8415         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
8416         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
8417         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
8418         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
8419         * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
8420         * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
8421         * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
8422         * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
8423         * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
8424         * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
8425         * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
8426         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
8427         * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
8428         * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
8429         * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
8431 2016-01-22  Jonathan Wakely  <jwakely@redhat.com>
8433         PR libstdc++/69116
8434         * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
8435         define result_type for types which can be safely used with valarrays.
8436         * testsuite/26_numerics/valarray/69116.cc: New.
8438         PR libstdc++/69413
8439         * config/os/gnu-linux/os_defines.h: Define
8440         _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
8441         * include/c_global/cmath (isinf, isnan): Check it.
8442         * doc/xml/manual/internals.xml: Document it.
8443         * doc/html/*: Regenerate.
8445 2016-01-21  Jonathan Wakely  <jwakely@redhat.com>
8447         PR libstdc++/69406
8448         * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
8449         * include/ext/type_traits.h: Likewise.
8450         * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
8451         for presence of C headers.
8452         * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
8453         dg-error line number.
8454         * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
8455         * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
8456         * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
8458 2016-01-20  Torvald Riegel  <triegel@redhat.com>
8460         PR libstdc++/69310
8461         * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
8463 2016-01-20  Jonathan Wakely  <jwakely@redhat.com>
8465         PR libstdc++/60401
8466         * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
8467         copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
8468         lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
8469         nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
8470         tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
8471         Add using declarations.
8472         * testsuite/26_numerics/headers/cmath/60401.cc: New.
8474         PR libstdc++/69386
8475         * include/c_global/ccomplex: Ensure C++ language linkage.
8476         * include/c_global/cmath: Likewise.
8477         * include/c_global/cstdlib: Likewise.
8478         * include/c_global/ctgmath: Likewise.
8479         * testsuite/17_intro/headers/c++2011/linkage.cc: New.
8481 2016-01-19  Jonathan Wakely  <jwakely@redhat.com>
8483         PR libstdc++/14608
8484         PR libstdc++/60401
8485         * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
8486         --enable-cheaders=c_global configs.
8487         * include/Makefile.in: Regenerate.
8488         * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
8489         test and allow inclusion from C files.
8490         * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
8491         (at_quick_exit, quick_exit): Add using directives.
8492         * include/c_global/cmath: Use #include_next for math.h.
8493         * include/c_global/cstdlib: Use #include_next for stdlib.h.
8494         * testsuite/26_numerics/headers/cmath/14608.cc: New.
8495         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
8496         Remove xfail for most targets.
8497         * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
8499 2016-01-18  Torvald Riegel  <triegel@redhat.com>
8501         * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
8502         (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
8503         and move after its definition.
8504         * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
8505         * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
8506         __GXX_WEAK__, and only provide transactional clones if
8507         _GLIBCXX_USE_WEAK_REF is true.  Don't provide stubs of libitm
8508         functions.
8510 2016-01-18  Jonathan Wakely  <jwakely@redhat.com>
8512         PR libstdc++/60637
8513         * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
8515         PR libstdc++/69243
8516         * include/std/functional (_Function_base::_M_not_empty_function):
8517         Change overloads for pointers to take arguments by value.
8518         * testsuite/20_util/function/cons/57465.cc: Add tests for
8519         pointer-to-member cases.
8521         PR libstdc++/69340
8522         * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
8523         Use macros for exception handling and fix unused parameter warning.
8525 2016-01-17  John David Anglin  <danglin@gcc.gnu.org>
8527         PR libstdc++/68734
8528         * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
8530 2016-01-17  Torvald Riegel  <triegel@redhat.com>
8532         * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
8534 2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
8536         * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
8537         __int128 symbols.
8539 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
8541         PR libstdc++/69293
8542         * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
8543         static assertion that type is constructible from the arguments.
8544         * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
8545         * testsuite/20_util/uses_allocator/69293_neg.cc: New.
8546         * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
8548         PR libstdc++/69294
8549         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
8550         and isnan on AIX. Quote variables.
8551         * configure: Regenerate.
8553 2016-01-15  Torvald Riegel  <triegel@redhat.com>
8555         * include/bits/basic_string.h (basic_string): Declare friends.
8556         * include/bits/c++config (_GLIBCXX_TXN_SAFE,
8557         _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
8558         * include/std/stdexcept (logic_error, domain_error, invalid_argument,
8559         length_error, out_of_range, runtime_error, range_error,
8560         underflow_error, overflow_error): Declare members as transaction-safe.
8561         (logic_error, runtime_error): Declare friend functions.
8562         * libsupc++/exception (exception, bad_exception): Declare members as
8563         transaction-safe.
8564         * src/c++11/cow-stdexcept.cc: Define transactional clones for the
8565         transaction-safe members of exceptions and helper functions.
8566         * libsupc++/eh_exception.cc: Adjust and define transactional clones.
8567         * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
8568         (CXXABI_1.3.10): New.
8569         * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
8570         (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
8571         * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
8572         * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
8573         * include/Makefile.in: Regenerate.
8574         * config.h.in: Regenerate.
8575         * configure: Regenerate.
8576         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
8578 2016-01-15  Steve Ellcey  <sellcey@imgtec.com>
8580         * include/ext/random.tcc: Use __builtin_isfinite instead of
8581         std::isfinite.
8583 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
8585         * include/bits/std_mutex.h: Fix Doxygen @file name.
8587 2016-01-14  Edward Smith-Rowland  <3dw4rd@verizon.net>
8588             Jonathan Wakely  <jwakely@redhat.com>
8589             Florian Goth <CaptainSifff@gmx.de>
8591         Implement TR29124 C++ special Math Functions.
8592         * include/Makefile.am: Add new headers.
8593         * include/Makefile.in: Regenerate.
8594         * include/bits/specfun.h: New.
8595         * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
8596         * include/tr1/bessel_function.tcc: Ditto.
8597         * include/tr1/beta_function.tcc: Ditto.
8598         * include/tr1/cmath: Ditto.
8599         * include/tr1/ell_integral.tcc: Ditto.
8600         * include/tr1/exp_integral.tcc: Ditto.
8601         * include/tr1/gamma.tcc: Ditto.
8602         * include/tr1/hypergeometric.tcc: Ditto.
8603         * include/tr1/legendre_function.tcc: Ditto.
8604         * include/tr1/modified_bessel_func.tcc: Ditto.
8605         * include/tr1/poly_hermite.tcc: Ditto.
8606         * include/tr1/poly_laguerre.tcc: Ditto.
8607         * include/tr1/riemann_zeta.tcc: Ditto.
8608         * include/tr1/special_function_util.h: Ditto.
8609         * testsuite/ext/special_functions/conf_hyperg: New.
8610         * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
8611         * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
8612         * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
8613         * testsuite/ext/special_functions/hyperg: New.
8614         * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
8615         * testsuite/ext/special_functions/hyperg/check_value.cc: New.
8616         * testsuite/ext/special_functions/hyperg/compile.cc: New.
8617         * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
8618         * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
8619         * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
8620         * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
8621         * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
8622         * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
8623         * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
8624         * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
8625         * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
8626         * testsuite/special_functions/03_beta/check_nan.cc: New.
8627         * testsuite/special_functions/03_beta/check_value.cc: New.
8628         * testsuite/special_functions/03_beta/compile.cc: New.
8629         * testsuite/special_functions/03_beta/compile_2.cc: New.
8630         * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
8631         * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
8632         * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
8633         * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
8634         * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
8635         * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
8636         * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
8637         * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
8638         * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
8639         * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
8640         * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
8641         * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
8642         * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
8643         * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
8644         * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
8645         * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
8646         * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
8647         * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
8648         * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
8649         * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
8650         * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
8651         * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
8652         * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
8653         * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
8654         * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
8655         * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
8656         * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
8657         * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
8658         * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
8659         * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
8660         * testsuite/special_functions/11_ellint_1/check_value.cc: New.
8661         * testsuite/special_functions/11_ellint_1/compile.cc: New.
8662         * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
8663         * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
8664         * testsuite/special_functions/12_ellint_2/check_value.cc: New.
8665         * testsuite/special_functions/12_ellint_2/compile.cc: New.
8666         * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
8667         * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
8668         * testsuite/special_functions/13_ellint_3/check_value.cc: New.
8669         * testsuite/special_functions/13_ellint_3/compile.cc: New.
8670         * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
8671         * testsuite/special_functions/14_expint/check_nan.cc: New.
8672         * testsuite/special_functions/14_expint/check_value.cc: New.
8673         * testsuite/special_functions/14_expint/compile.cc: New.
8674         * testsuite/special_functions/14_expint/compile_2.cc: New.
8675         * testsuite/special_functions/15_hermite/check_nan.cc: New.
8676         * testsuite/special_functions/15_hermite/check_value.cc: New.
8677         * testsuite/special_functions/15_hermite/compile.cc: New.
8678         * testsuite/special_functions/15_hermite/compile_2.cc: New.
8679         * testsuite/special_functions/16_laguerre/check_nan.cc: New.
8680         * testsuite/special_functions/16_laguerre/check_value.cc: New.
8681         * testsuite/special_functions/16_laguerre/compile.cc: New.
8682         * testsuite/special_functions/16_laguerre/compile_2.cc: New.
8683         * testsuite/special_functions/17_legendre/check_nan.cc: New.
8684         * testsuite/special_functions/17_legendre/check_value.cc: New.
8685         * testsuite/special_functions/17_legendre/compile.cc: New.
8686         * testsuite/special_functions/17_legendre/compile_2.cc: New.
8687         * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
8688         * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
8689         * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
8690         * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
8691         * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
8692         * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
8693         * testsuite/special_functions/19_sph_bessel/compile.cc: New.
8694         * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
8695         * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
8696         * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
8697         * testsuite/special_functions/20_sph_legendre/compile.cc: New.
8698         * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
8699         * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
8700         * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
8701         * testsuite/special_functions/21_sph_neumann/compile.cc: New.
8702         * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
8703         * testsuite/util/specfun_testcase.h: New.
8704         * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
8705         * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
8706         * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
8707         * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
8708         * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
8709         * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
8710         * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
8712 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
8714         PR libstdc++/48891
8715         * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
8716         and isnan functions.
8717         * config.h.in: Regenerate.
8718         * configure: Regenerate.
8719         * include/c_global/cmath (isinf(double), isnan(double))
8720         [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
8721         * testsuite/26_numerics/headers/cmath/48891.cc: New.
8723 2016-01-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8725         PR libstdc++/66006
8726         * configure.host (abi_baseline_pair): Use separate baseline for
8727         Solaris 11+ and Solaris 10 with gld.
8728         * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
8729         * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
8730         * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
8732 2016-01-12  Daniel Kruegler  <daniel.kruegler@gmail.com>
8734         PR libstdc++/68877
8735         * include/std/type_traits: Following N4511, reimplement __is_swappable
8736         and __is_nothrow_swappable. Move __is_swappable to namespace std,
8737         adjust callers. Use __is_nothrow_swappable in swap.
8738         * include/bits/move.h: Use __is_nothrow_swappable in swap.
8739         * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
8740         __is_swappable related tests.
8741         * testsuite/20_util/is_swappable/value.cc: New.
8742         * testsuite/20_util/is_swappable/requirements/
8743         explicit_instantiation.cc: New.
8744         * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
8745         * testsuite/25_algorithms/swap/68877.cc: New.
8747 2016-01-12  Jonathan Wakely  <jwakely@redhat.com>
8749         * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
8751         PR libstdc++/69005
8752         PR libstdc++/69222
8753         * include/std/functional (function::_Invoke): Remove, use result_of.
8754         (function::_Callable): Replace alias template with class template
8755         and use partial specialization instead of _NotSelf alias template.
8756         (function(_Functor)): Add "not self" constraint so that _Callable is
8757         not used while type is incomplete.
8758         * testsuite/20_util/function/69222.cc: New.
8760 2016-01-11  Jonathan Wakely  <jwakely@redhat.com>
8762         PR libstdc++/60976
8763         * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
8764         Define partial specialization.
8765         * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
8766         destroy members to std::allocator explicit specialization.
8768 2016-01-08  Jonathan Wakely  <jwakely@redhat.com>
8770         * testsuite/26_numerics/headers/cmath/
8771         c99_classification_macros_c++.cc: Rename to ...
8772         * testsuite/26_numerics/headers/cmath/
8773         c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
8774         * testsuite/26_numerics/headers/cmath/
8775         c99_classification_macros_c++0x.cc: Rename to ...
8776         * testsuite/26_numerics/headers/cmath/
8777         c99_classification_macros_c++11.cc: Here.
8779         PR libstdc++/69190
8780         * include/bits/uses_allocator.h: Add missing include.
8782 2016-01-07  Jonathan Wakely  <jwakely@redhat.com>
8784         PR libstdc++/69105
8785         PR libstdc++/69106
8786         PR libstdc++/69114
8787         * include/bits/stl_iterator.h (back_insert_iterator,
8788         front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
8789         * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
8790         * include/std/future (__future::base::_State_baseV2::__setter):
8791         Likewise.
8792         * include/std/scoped_allocator (__outermost): Likewise.
8793         * testsuite/20_util/scoped_allocator/69114.cc: New.
8794         * testsuite/20_util/uses_allocator/69114.cc: New.
8795         * testsuite/30_threads/promise/69106.cc: New.
8797 2016-01-06  Jonathan Wakely  <jwakely@redhat.com>
8799         PR libstdc++/69092
8800         * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
8801         Remove _GLIBCXX_NOEXCEPT.
8802         testsuite/21_strings/basic_string/cons/char/69092.cc: New.
8804         * include/Makefile.am: Adjust.
8805         * include/Makefile.in: Regenerate.
8806         * include/bits/mutex.h: Rename to bits/std_mutex.h.
8807         * include/std/condition_variable: Adjust include.
8808         * include/std/mutex: Likewise.
8810 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
8812         Update copyright years.
8814 Copyright (C) 2016 Free Software Foundation, Inc.
8816 Copying and distribution of this file, with or without modification,
8817 are permitted in any medium without royalty provided the copyright
8818 notice and this notice are preserved.