]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog-2016
testsuite: fix analyzer C++ failures on Solaris [PR111475]
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog-2016
CommitLineData
cbe34bb5
JJ
12016-12-29 Ville Voutilainen <ville.voutilainen@gmail.com>
2
3 Implement LWG 2842, in_place_t check for optional::optional(U&&)
4 should decay U.
5 * include/std/optional (_Optional_base(in_place_t, _Args&&...)):
6 Constrain.
7 (_Optional_base(in_place_t, initializer_list<_Up>, _Args&&...)):
8 Turn the int-pack constraint hack into a saner bool.
9 (_Optional_base<_Tp, false>::_Optional_base(in_place_t, _Args&&...)):
10 Constrain.
11 (_Optional_base<_Tp, false>::_Optional_base(in_place_t,
12 initializer_list<_Up>, _Args&&...)):
13 Turn the int-pack constraint hack into a saner bool.
14 (optional(_Up&&)): Constrain against in_place_t.
15 (optional(in_place_t, _Args&&...)): Constrain.
16 (constexpr optional(in_place_t, initializer_list<_Up>, _Args&&...)):
17 Turn the int-pack constraint hack into a saner bool.
18 * testsuite/20_util/optional/cons/value_neg.cc: Add a test for
19 a type that is constructible from in_place.
20
212016-12-24 François Dumont <fdumont@gcc.gnu.org>
22
23 * include/ext/random.tcc: Fix usage of _OutputIteratorConcept.
24
252016-12-21 Jason Merrill <jason@redhat.com>
26
27 * testsuite/util/testsuite_tr1.h (test_property): Don't define both
28 variadic and non-variadic overloads.
29
302016-12-21 Jonathan Wakely <jwakely@redhat.com>
31
32 PR libstdc++/71444
33 * config/os/mingw32-w64/error_constants.h
34 (address_family_not_supported, address_in_use, address_not_available)
35 (already_connected, connection_aborted, connection_already_in_progress)
36 connection_refused, connection_reset, cross_device_link)
37 (destination_address_required, host_unreachable, message_size)
38 (network_down, network_reset, network_unreachable, no_buffer_space)
39 (no_protocol_option, not_a_socket, not_connected, operation_canceled)
40 (operation_in_progress, operation_not_supported, protocol_error)
41 (protocol_not_supported, too_many_links, too_many_symbolic_link_levels)
42 (value_too_large, wrong_protocol_type): Define.
43 (bad_message, identifier_removed, no_link, no_message_available)
44 (no_message, no_stream_resources, not_a_stream, owner_dead)
45 (state_not_recoverable, stream_timeout, text_file_busy): Define
46 conditionally.
47 * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
48 Guard test for no_message with _GLIBCXX_HAVE_ENOMSG.
49
502016-12-19 Ville Voutilainen <ville.voutilainen@gmail.com>
51
52 Make the perfect-forwarding constructor of a two-element tuple
53 sfinae away when the first argument is an allocator_arg.
54 * include/std/tuple (tuple(_U1&&, _U2&&)): Constrain.
55 * testsuite/20_util/tuple/cons/allocator_with_any.cc: New.
56 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
57
582016-12-16 Jonathan Wakely <jwakely@redhat.com>
59
60 * include/bits/stl_map.h (map::erase(iterator)): Add Doxygen markup
61 to reuse documentation for erase(const_iterator) overload.
62 * include/bits/stl_multimap.h (multimap::erase(iterator)): Likewise.
63
64 * include/bits/stl_tree.h (_Rb_tree::_M_erase_aux(const_iterator)):
65 Add assertion for undefined argument.
66 (_Rb_tree::_M_erase_aux(const_iterator, const_iterator)): Call
67 _M_erase_aux directly instead of through erase.
68 (_Rb_tree::_M_erase_aux(const Key&)): Likewise.
69 * testsuite/23_containers/map/modifiers/erase/end_neg.cc: New test.
70
712016-12-16 Ville Voutilainen <ville.voutilainen@gmail.com>
72
73 Implement LWG 2769, Redundant const in the return type of
74 any_cast(const any&).
75 * include/std/any (_AnyCast): New.
76 (any_cast(const any&)): Use it and add an explicit cast for return.
77 (any_cast(any&)): Likewise.
78 (any_cast(any&&)): Likewise.
79 * testsuite/20_util/any/misc/any_cast.cc: Add a test for a type
80 that has an explicit copy constructor.
81 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
82
832016-12-15 Jonathan Wakely <jwakely@redhat.com>
84
85 PR libstdc++/59170
86 * python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
87 (StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
88 (StdRbtreeIteratorPrinter.to_string)
89 (StdDequeIteratorPrinter.to_string): Add check for value-initialized
90 iterators.
91 * testsuite/libstdc++-prettyprinters/simple.cc: Test them.
92 * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
93
94 PR libstdc++/59161
95 * python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
96 (StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
97 (StdRbtreeIteratorPrinter.to_string, StdDequeIteratorPrinter.to_string)
98 (StdDebugIteratorPrinter.to_string): Return string instead of
99 gdb.Value.
100 * testsuite/libstdc++-prettyprinters/59161.cc: New test.
101
102 * python/libstdcxx/v6/printers.py (UniquePointerPrinter.to_string):
103 Remove redundant parentheses.
104 (RbtreeIterator, StdRbtreeIteratorPrinter): Add docstrings.
105 (StdForwardListPrinter.to_string): Remove redundant parentheses.
106 (StdExpOptionalPrinter.to_string): Use string formatting instead of
107 concatenation.
108 (StdVariantPrinter.to_string, StdNodeHandlePrinter.to_string)
109 (TemplateTypePrinter): Adjust whitespace.
110
111 * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker.__init__): Use
112 correct element type for unique_ptr<T[]>.
113 (UniquePtrGetWorker._supports, UniquePtrDerefWorker._supports): New
114 functions to disable unsupported operators for unique_ptr<T[]>.
115 (UniquePtrSubscriptWorker): New worker for operator[].
116 (UniquePtrMethodsMatcher.__init__): Register UniquePtrSubscriptWorker.
117 (UniquePtrMethodsMatcher.match): Call _supports on the chosen worker.
118 (SharedPtrGetWorker, SharedPtrDerefWorker, SharedPtrSubscriptWorker)
119 (SharedPtrUseCountWorker, SharedPtrUniqueWorker): New workers.
120 (SharedPtrMethodsMatcher): New matcher for shared_ptr.
121 (register_libstdcxx_xmethods): Register SharedPtrMethodsMatcher.
122 * testsuite/libstdc++-xmethods/unique_ptr.cc: Test arrays.
123 * testsuite/libstdc++-xmethods/shared_ptr.cc: New test.
124
1252016-12-14 François Dumont <fdumont@gcc.gnu.org>
126
127 * include/bits/stl_tree.h
128 (_Rb_tree_impl(const _Key_compare&, const _Node_allocator&): Restore
129 before C++11 mode.
130
1312016-12-14 Jonathan Wakely <jwakely@redhat.com>
132
133 * python/libstdcxx/v6/printers.py (num_elements): New function.
134 (StdMapPrinter.to_string, StdSetPrinter.to_string)
135 (StdDequePrinter.to_string, Tr1UnorderedSetPrinter.to_string)
136 (Tr1UnorderedMapPrinter.to_string): Use num_elements.
137 * testsuite/libstdc++-prettyprinters/cxx11.cc: Adjust expected results
138 to use singular noun when there is only one element.
139 * testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
140 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
141 * testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
142 * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
143 * testsuite/libstdc++-prettyprinters/tr1.cc: Likewise.
144
145 PR libstdc++/59170
146 * python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter): Use
147 _M_sequence and _M_version to detect invalid iterators.
148 * testsuite/libstdc++-prettyprinters/debug.cc: Test debug mode vector
149 and test invalid iterators.
150 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: New test.
151
1522016-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
153
154 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
155 XFAIL run if newlib_broken_long_double_io.
156 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc:
157 Likewise.
158 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stold.cc:
159 Likewise.
160 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
161 Likewise.
162
1632016-12-12 Jonathan Wakely <jwakely@redhat.com>
164
165 * testsuite/experimental/filesystem/operations/is_empty.cc:
166 Remove stray character at end of dg-do directive.
167
168 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
169 Remove stray character at end of dg-do directive.
170
1712016-12-09 Jonathan Wakely <jwakely@redhat.com>
172
173 * include/std/variant: Remove misplaced
174 _GLIBCXX_BEGIN_NAMESPACE_VERSION macro.
175
1762016-12-08 David Edelsohn <dje.gcc@gmail.com>
177
178 * testsuite/25_algorithms/headers/algorithm/
179 parallel_algorithm_assert2.cc: Move dg-do run first.
180
1812016-12-08 Eric Botcazou <ebotcazou@adacore.com>
182
183 PR libstdc++/78264
184 * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM): Turn _N into _NE.
185 (_GLIBCXX_NOEXCEPT_QUAL): Likewise.
186
1872016-12-08 Jonathan Wakely <jwakely@redhat.com>
188
189 * testsuite/experimental/filesystem/path/construct/range.cc: Don't
190 use basic_string::front() when string might be empty.
191
192 * include/debug/array (swap): Add deleted overload.
193 * include/bits/stl_pair.h (swap): Remove redundant inline keyword
194 from deleted overload.
195 * include/bits/unique_ptr.h (swap): Likewise.
196 * include/std/array (swap): Likewise.
197 * include/std/optional (swap): Likewise.
198 * include/std/tuple (swap): Likewise.
199 * include/std/variant (swap): Likewise.
200 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
201 Adjust dg-error line numbers.
202 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
203 * testsuite/23_containers/array/tuple_interface/
204 tuple_element_debug_neg.cc: Likewise.
205 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
206 Likewise.
207
208 PR libstdc++/71856
209 * doc/xml/manual/using.xml: Document macro.
210 * include/bits/c++config [_GLIBCXX_DEBUG || _GLIBCXX_PARALLEL]
211 (__glibcxx_assert): Rename to __glibcxx_assert_impl.
212 [_GLIBCXX_DEBUG] (__glibcxx_assert): Expand to __glibcxx_assert_impl.
213 * include/parallel/base.h [_GLIBCXX_PARALLEL_ASSERTIONS]
214 (_GLIBCXX_PARALLEL_ASSERT): Expand to __glibcxx_assert_impl.
215 [!_GLIBCXX_PARALLEL_ASSERTIONS] (_GLIBCXX_PARALLEL_ASSERT): Define as
216 empty.
217 * testsuite/25_algorithms/headers/algorithm/
218 parallel_algorithm_assert2.cc: New test.
219
2202016-12-08 Jakub Jelinek <jakub@redhat.com>
221
222 * testsuite/util/testsuite_new_operators.h: Include testsuite_hooks.h.
223 (operator new): Use THROW macro.
224
2252016-12-07 François Dumont <fdumont@gcc.gnu.org>
226
227 * include/bits/stl_tree.h
228 (_Rb_tree<>::_M_copy(_Const_Link_type, _Base_ptr)): Delete.
229 (_Rb_tree<>::_M_copy(const _Rb_tree&, _NodeGen&)): New.
230 (_Rb_tree<>::_M_copy(const _Rb_tree&)): New, use latter.
231 (_Rb_tree<>(const _Rb_tree&): Use latter.
232 (_Rb_tree<>(const _Rb_tree&, const allocator_type&)): Likewise.
233 (_Rb_tree<>::_M_move_data(_Rb_tree&, false_type)): Likewise.
234 (_Rb_tree<>::_M_move_assign(_Rb_tree&, false_type)): Likewise.
235 (_Rb_tree<>::operator=(const _Rb_tree&)): Likewise.
236
237 * include/bits/stl_map.h (map(const map&)): Make default.
238 (map(map&&)): Likewise.
239 (~map()): Likewise.
240 (operator=(const map&)): Likewise.
241 * include/bits/stl_multimap.h (multimap(const multimap&)): Make default.
242 (multimap(multimap&&)): Likewise.
243 (~multimap()): Likewise.
244 (operator=(const multimap&)): Likewise.
245 * include/bits/stl_set.h (set(const set&)): Make default.
246 (set(set&&)): Likewise.
247 (~set()): Likewise.
248 (operator=(const set&)): Likewise.
249 * include/bits/stl_multiset.h (multiset(const multiset&)): Make default.
250 (multiset(multiset&&)): Likewise.
251 (~multiset()): Likewise.
252 (operator=(const multiset&)): Likewise.
253 * include/bits/stl_tree.h (_Rb_tree_key_compare<>): New.
254 (_Rb_tree_header): New.
255 (_Rb_tree_impl): Inherit from latters.
256 (_Rb_tree_impl()): Make default.
257 (_Rb_tree_impl(const _Rb_tree_impl&)): New.
258 (_Rb_tree<>(const _Rb_tree&): Use latter.
259 (_Rb_tree_impl(_Rb_tree_impl&&)): New, default.
260 (_Rb_tree_impl(const _Key_compare&, const _Node_allocator&)): Delete.
261 (_Rb_tree_impl::_M_reset): Move...
262 (_Rb_tree_header::_M_reset): ...here.
263 (_Rb_tree_impl::_M_initialize): Delete.
264 (_Rb_tree(_Rb_tree&&)): Make default.
265 (_Rb_tree_header::_M_move_data(_Rb_tree_header&)): New.
266 (_Rb_tree<>::_M_move_data(_Rb_tree&, true_type)): Use latter.
267 (_Rb_tree<>(_Rb_tree&&)): Make default.
268
2692016-12-07 Jonathan Wakely <jwakely@redhat.com>
270
271 * include/experimental/bits/fs_path.h (path::_S_convert): Replace
272 uses of C++14 std::remove_cv_t alias template.
273
274 * testsuite/28_regex/traits/char/user_defined.cc: Replace uses of
275 C++14 std::exchange function.
276
277 * testsuite/util/testsuite_hooks.h (THROW): Define.
278 * testsuite/util/replacement_memory_operators.h: Include
279 testsuite_hooks.h and use THROW macro.
280 * testsuite/util/testsuite_tr1.h: Likewise.
281 * testsuite/20_util/allocator/1.cc: Use THROW macro.
282 * testsuite/22_locale/locale/cons/12352.cc: Likewise.
283 * testsuite/23_containers/vector/zero_sized_allocations.cc: Likewise.
284 * testsuite/30_threads/lock_guard/cons/1.cc: Replace dynamic exception
285 specification with noexcept-specifier.
286 * testsuite/ext/pool_allocator/allocate_chunk.cc: Include
287 testsuite_hooks.h and use THROW macro.
288 * testsuite/ext/profile/replace_new.cc: Likewise.
289
290 * include/ext/bitmap_allocator.h (bitmap_allocator::_S_refill_pool)
291 (bitmap_allocator::_M_allocate_single_object)
292 (bitmap_allocator::_M_get): Use _GLIBCXX_THROW macro.
293
294 * testsuite/18_support/bad_exception/59392.cc: Disable for C++17.
295
296 * testsuite/18_support/headers/new/synopsis.cc: Add C++14 and C++17
297 declarations.
298 * testsuite/18_support/headers/new/synopsis_cxx98.cc: New test.
299
3002016-12-06 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
301
302 * src/c++11/cow-stdexcept.cc: Add special case for 16 bit pointers.
303
304 * crossconfig.m4: Add avr target for cross-compilation.
305 * configure: Regenerate.
306
3072016-12-06 Jonathan Wakely <jwakely@redhat.com>
308
309 * python/libstdcxx/v6/printers.py (StdVariantPrinter): Update for new
310 data member name.
311 * testsuite/libstdc++-prettyprinters/cxx17.cc: Remove redundant test.
312
313 * include/bits/shared_ptr_base.h
314 (__shared_ptr_access<T, L, false, true>::operator->()): Fix assertion.
315
3162016-12-06 Ville Voutilainen <ville.voutilainen@gmail.com>
317
318 Constrain optional's __constexpr_addressof in its return type
319 and use a constexpr addressof for optional, if available.
320 * include/experimental/optional (__constexpr_addressof):
321 Constrain in the return type instead of in a template parameter.
322 (_Has_addressof_mem)
323 (_Has_addressof_free, _Has_addressof, __constexpr_addressof):
324 Guard with #ifndef __cpp_lib_addressof_constexpr.
325 (operator->()): Use std::__addressof if it's constexpr.
326
3272016-12-06 Tim Shen <timshen@google.com>
328
329 * include/std/variant (visit): Make visit constexpr. Also cleanup
330 __get_alternative and __storage, since we don't support reference/void
331 alternatives any more.
332 * testsuite/20_util/variant/compile.cc: Add tests.
333
3342016-12-06 Tim Shen <timshen@google.com>
335
336 * include/bits/enable_special_members.h: Make
337 _Enable_default_constructor constexpr.
338 * include/std/variant (variant::emplace, variant::swap, std::swap,
339 std::hash): Sfinae on emplace and std::swap; handle __poison_hash bases
340 of duplicated types.
341
3422016-12-06 Tim Shen <timshen@google.com>
343
344 * include/std/variant (std::get, operator==): Implement constexpr
345 comparison and get<>.
346 * testsuite/20_util/variant/compile.cc: Tests.
347
3482016-12-06 Tim Shen <timshen@google.com>
349
350 * include/std/variant (__erased_use_alloc_ctor,
351 _Variant_base::_Variant_base, variant::variant): Remove uses-allocator
352 related functions.
353 * testsuite/20_util/variant/compile.cc: Remove related tests.
354 * testsuite/20_util/variant/run.cc: Remove related tests.
355
3562016-12-06 Aditya Kumar <hiraditya@msn.com>
357
358 * src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
359 noexcept on constructor.
360 (_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.
361
3622016-12-06 Jonathan Wakely <jwakely@redhat.com>
363
364 * include/bits/basic_string.h (basic_string::find, basic_string::rfind)
365 (basic_string::find_first_of, basic_string::find_last_of)
366 (basic_string::find_first_not_of, basic_string::find_last_not_of):
367 Make all overloads noexcept.
368 (basic_string::compare(const _CharT*)): Make noexcept.
369
3702016-12-03 John David Anglin <danglin@gcc.gnu.org>
371
372 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Regenerate.
373
3742016-12-01 David Edelsohn <dje.gcc@gmail.com>
375
376 * testsuite/26_numerics/headers/cmath/hypot.cc: XFAIL on AIX.
377
3782016-12-01 Ville Voutilainen <ville.voutilainen@gmail.com>
379
380 Implement LWG 2766,
381 Swapping non-swappable types and LWG 2749,
382 swappable traits for variants.
383 * include/bits/move.h (swap(_Tp&, _Tp&)): Constrain
384 with __is_tuple_like.
385 * include/bits/stl_pair.h (swap(pair<_T1, _T2>&, pair<_T1, _T2>&)):
386 Add a deleted overload.
387 * include/bits/unique_ptr.h
388 (swap(unique_ptr<_Tp, _Dp>&, unique_ptr<_Tp, _Dp>&)): Likewise.
389 * include/std/array
390 (swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&)): Likewise.
391 * include/std/optional
392 (swap(optional<_Tp>&, optional<_Tp>&)): Likewise.
393 * include/std/tuple (__is_tuple_like_impl, __is_tuple_like):
394 Move to type_traits.
395 (swap(tuple<_Elements...>&, tuple<_Elements...>&)): Add a deleted
396 overload.
397 * include/std/type_traits (__is_tuple_like_impl, __is_tuple_like):
398 New.
399 (swap(_Tp&, _Tp&)): Constrain with __is_tuple_like.
400 * include/std/utility (__is_tuple_like_impl): Move to type_traits.
401 * include/std/variant
402 (swap(variant<_Types...>&, variant<_Types...>&)):
403 Add a deleted overload.
404 * testsuite/20_util/optional/swap/2.cc: Add tests for disabled
405 swaps.
406 * testsuite/20_util/pair/swap_cxx17.cc: New.
407 * testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
408 * testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
409 Likewise.
410 * testsuite/20_util/variant/compile.cc: Add tests for disabled
411 swaps.
412 * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
413 New.
414 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
415 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
416 Likewise.
417
4182016-12-01 Ville Voutilainen <ville.voutilainen@gmail.com>
419
420 The convertible_to traits need to use a variadic catch-all for the
421 false-cases.
422 * include/std/istream (__is_convertible_to_basic_istream):
423 Change the parameter of the false-case of __check to a variadic.
424 * include/std/ostream (__is_convertible_to_basic_ostream):
425 Likewise.
426
4272016-12-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
428
429 * crossconfig.m4 (*-linux*): Add link-check for memalign.
430 * configure: Regenerated.
431
4322016-12-01 Tim Shen <timshen@google.com>
433
434 PR libstdc++/71500
435 * include/bits/regex.h (basic_regex::basic_regex): Use ECMAScript
436 when the syntax is not specified.
437 * include/bits/regex_compiler.h (_RegexTranslator,
438 _RegexTranslatorBase): Partially support icase in ranges.
439 * include/bits/regex_compiler.tcc (_BracketMatcher::_M_apply):
440 Refactor _M_apply to make the control flow easier to follow, and
441 call _M_translator._M_match_range as added previously.
442 * testsuite/28_regex/traits/char/icase.cc: Add new tests.
443 * testsuite/28_regex/traits/char/user_defined.cc: Add new tests.
444
4452016-11-30 Ville Voutilainen <ville.voutilainen@gmail.com>
446
447 Fix testsuite failures caused by the patch implementing LWG 2534.
448 * include/std/istream (__is_convertible_to_basic_istream):
449 Change the return types of __check, introduce istream_type.
450 (operator>>(_Istream&&, _Tp&&)):
451 Use __is_convertible_to_basic_istream::istream_type as the return type.
452 * include/std/ostream (__is_convertible_to_basic_ostream):
453 Change the return types of __check, introduce ostream_type.
454 (operator>>(_Ostream&&, _Tp&&)):
455 Use __is_convertible_to_basic_ostream::ostream_type as the return type.
456
4572016-11-30 Tim Shen <timshen@google.com>
458
459 * include/bits/shared_ptr_base.h
460 (__shared_ptr_access<T, L, true, false>::operator*()): Fix assertion.
461
4622016-11-30 David Edelsohn <dje.gcc@gmail.com>
463
464 * testsuite/18_support/50594.cc: XFAIL on AIX.
465 * testsuite/ext/mt_allocator/check_new.cc: Same.
466 * testsuite/ext/pool_allocator/check_new.cc: Same.
467 * testsuite/27_io/ios_base/storage/11584.cc: Same.
468
4692016-11-30 Ville Voutilainen <ville.voutilainen@gmail.com>
470
471 Implement LWG 2534, Constrain rvalue stream operators.
472 * include/std/istream (__is_convertible_to_basic_istream): New.
473 (__is_extractable): Likewise.
474 (operator>>(basic_istream<_CharT, _Traits>&&, _Tp&&)):
475 Turn the stream parameter into a template parameter
476 and constrain.
477 * include/std/ostream (__is_convertible_to_basic_ostream): New.
478 (__is_insertable): Likewise.
479 (operator<<(basic_ostream<_CharT, _Traits>&&, const _Tp&)):
480 Turn the stream parameter into a template parameter
481 and constrain.
482 * testsuite/27_io/basic_istream/extractors_other/char/4.cc: New.
483 * testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
484 Likewise.
485 * testsuite/27_io/basic_ostream/inserters_other/char/6.cc: Likewise.
486 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc: Likewise.
487
4882016-11-30 Christophe Lyon <christophe.lyon@linaro.org>
489
490 * testsuite/experimental/type_erased_allocator/2.cc: Add
491 dg-require-thread-fence.
492
4932016-11-29 David Edelsohn <dje.gcc@gmail.com>
494
495 PR libstdc++/68838
496 * testsuite/lib/libstdc++.exp (DEFAULT_CXXFLAGS): Add -Wl,-bmaxdata on
497 AIX.
498 * testsuite/23_containers/vector/profile/vector.cc: Remove
499 dg-additional-options.
500
5012016-11-26 Tim Shen <timshen@google.com>
502
503 PR libstdc++/78441
504 * include/std/variant: Propagate cv qualifications to types returned
505 by variant_alternative.
506 * testsuite/20_util/variant/compile.cc: Tests.
507
5082016-11-23 Felix Morgner <felix.morgner@gmail.com>
509 Jonathan Wakely <jwakely@redhat.com>
510
511 PR libstdc++/78490
512 * include/experimental/propagate_const (propagate_const::operator=):
513 Add missing return statements.
514 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
515 Adjust dg-error line numbers.
516 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
517
5182016-11-22 Uros Bizjak <ubizjak@gmail.com>
519
520 * testsuite/Makefile.am
521 (check-DEJAGNU $(check_DEJAGNU_normal_targets)): Fix detection
522 of -j argument.
523 * testsuite/Makefile.in: Regenereate.
524
5252016-11-22 Jonathan Wakely <jwakely@redhat.com>
526
527 PR libstdc++/78465
528 * testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
529 with preprocessor conditions.
530
5312016-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
532
533 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Update comments.
534 (__CORRECT_ISO_CPP11_MATH_H_PROTO): Rename to ...
535 (__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): ... this.
536 Add test for C++11 <math.h> integral overloads.
537 * configure: Regenerate.
538 * config.h.in: Regenerate.
539
540 * include/c_global/cmath [__cplusplus >= 201103L]: Reflect
541 __CORRECT_ISO_CPP11_MATH_H_PROTO to
542 __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
543 * include/c_global/cmath [_GLIBCXX_USE_C99_MATH &&
544 !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC && __cplusplus >= 201103L]
545 (std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO_INT.
546 (std::isfinite): Likewise.
547 (std::isinf): Likewise.
548 (std::isnan): Likewise.
549 (std::isnormal): Likewise.
550 (std::signbit): Likewise.
551 (std::isgreater): Likewise.
552 (std::isgreaterequal): Likewise.
553 (std::isless): Likewise.
554 (std::islessequal): Likewise.
555 (std::islessgreater): Likewise.
556 (std::isunordered): Likewise.
557 [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]
558 (std::acosh): Likewise.
559 (std::asinh): Likewise.
560 (std::atanh): Likewise.
561 (std::cbrt): Likewise.
562 (std::copysign): Likewise.
563 (std::erf): Likewise.
564 (std::erfc): Likewise.
565 (std::exp2): Likewise.
566 (std::expm1): Likewise.
567 (std::fdim): Likewise.
568 (std::fma): Likewise.
569 (std::fmax): Likewise.
570 (std::fmin): Likewise.
571 (std::hypot): Likewise.
572 (std::ilogb): Likewise.
573 (std::lgamma): Likewise.
574 (std::llrint): Likewise.
575 (std::llround): Likewise.
576 (std::log1p): Likewise.
577 (std::log2): Likewise.
578 (std::logb): Likewise.
579 (std::lrint): Likewise.
580 (std::lround): Likewise.
581 (std::nearbyint): Likewise.
582 (std::nextafter): Likewise.
583 (std::nexttoward): Likewise.
584 (std::remainder): Likewise.
585 (std::remquo): Likewise.
586 (std::rint): Likewise.
587 (std::round): Likewise.
588 (std::scalbln): Likewise.
589 (std::scalbn): Likewise.
590 (std::tgamma): Likewise.
591 (std::trunc): Likewise.
592 * include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1 && __cplusplus >=
593 201103L]: Reflect __CORRECT_ISO_CPP11_MATH_H_PROTO to
594 __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
595
5962016-11-15 Jonathan Wakely <jwakely@redhat.com>
597
598 PR libstdc++/59406
599 * include/bits/functional_hash.h: Add comment noting difference from
600 FNV-1a.
601 * include/tr1/functional_hash.h: Likewise.
602 * libsupc++/hash_bytes.cc: Likewise.
603
604 * include/bits/basic_string.h: Reuse _If_sv alias template for new
605 constructor.
606
607 * doc/xml/manual/intro.xml: Document LWG 2770 status. Remove entries
608 for 2742 and 2748.
609 * doc/html/*: Regenerate.
610 * include/std/utility (__tuple_size_cv_impl): New helper to safely
611 detect tuple_size<T>::value, as per LWG 2770.
612 (tuple_size<cv T>): Adjust partial specializations to derive from
613 __tuple_size_cv_impl.
614 * testsuite/20_util/tuple/cv_tuple_size.cc: Test SFINAE-friendliness.
615
616 * testsuite/libstdc++-prettyprinters/cxx17.cc: Adjust test for
617 variant<T&>.
618
6192016-11-15 Tim Shen <timshen@google.com>
620
621 * include/std/variant: Remove variant<T&>, variant<void>, variant<>
622 support to rebase on the post-Issaquah design.
623 * testsuite/20_util/variant/compile.cc: Likewise.
624
6252016-11-15 Matthias Klose <doko@ubuntu.com>
626
627 * configure: Regenerate.
628
6292016-11-15 Jonathan Wakely <jwakely@redhat.com>
630
631 * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Fix license
632 text.
633 * testsuite/20_util/any/assign/emplace.cc: Likewise.
634 * testsuite/20_util/any/cons/in_place.cc: Likewise.
635 * testsuite/20_util/any/make_any.cc: Likewise.
636 * testsuite/20_util/any/requirements.cc: Likewise.
637 * testsuite/20_util/any/typedefs.cc: Likewise.
638 * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
639 * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
640 Likewise.
641 * testsuite/20_util/in_place/requirements.cc: Likewise.
642 * testsuite/20_util/optional/77288.cc: Likewise.
643 * testsuite/20_util/optional/assignment/1.cc: Likewise.
644 * testsuite/20_util/optional/assignment/2.cc: Likewise.
645 * testsuite/20_util/optional/assignment/3.cc: Likewise.
646 * testsuite/20_util/optional/assignment/4.cc: Likewise.
647 * testsuite/20_util/optional/assignment/5.cc: Likewise.
648 * testsuite/20_util/optional/assignment/6.cc: Likewise.
649 * testsuite/20_util/optional/assignment/7.cc: Likewise.
650 * testsuite/20_util/optional/cons/77727.cc: Likewise.
651 * testsuite/20_util/optional/cons/move.cc: Likewise.
652 * testsuite/20_util/optional/cons/value.cc: Likewise.
653 * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
654 * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
655 * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
656 * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
657 * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
658 * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
659 * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
660 * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
661 * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
662 * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
663 * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
664 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
665 * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
666 * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
667 * testsuite/20_util/optional/hash.cc: Likewise.
668 * testsuite/20_util/optional/make_optional.cc: Likewise.
669 * testsuite/20_util/optional/observers/1.cc: Likewise.
670 * testsuite/20_util/optional/observers/2.cc: Likewise.
671 * testsuite/20_util/optional/observers/3.cc: Likewise.
672 * testsuite/20_util/optional/observers/4.cc: Likewise.
673 * testsuite/20_util/optional/observers/5.cc: Likewise.
674 * testsuite/20_util/optional/observers/6.cc: Likewise.
675 * testsuite/20_util/optional/relops/1.cc: Likewise.
676 * testsuite/20_util/optional/relops/2.cc: Likewise.
677 * testsuite/20_util/optional/relops/3.cc: Likewise.
678 * testsuite/20_util/optional/relops/4.cc: Likewise.
679 * testsuite/20_util/optional/relops/5.cc: Likewise.
680 * testsuite/20_util/optional/relops/6.cc: Likewise.
681 * testsuite/20_util/optional/requirements.cc: Likewise.
682 * testsuite/20_util/optional/swap/1.cc: Likewise.
683 * testsuite/20_util/optional/typedefs.cc: Likewise.
684 * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
685 * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
686 * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
687 Likewise.
688 * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
689 * testsuite/20_util/variant/hash.cc: Likewise.
690 * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
691 * testsuite/experimental/any/typedefs.cc: Likewise.
692 * testsuite/experimental/array/make_array.cc: Likewise.
693 * testsuite/experimental/array/neg.cc: Likewise.
694 * testsuite/experimental/chrono/value.cc: Likewise.
695 * testsuite/experimental/deque/erasure.cc: Likewise.
696 * testsuite/experimental/forward_list/erasure.cc: Likewise.
697 * testsuite/experimental/list/erasure.cc: Likewise.
698 * testsuite/experimental/map/erasure.cc: Likewise.
699 * testsuite/experimental/memory/observer_ptr/assignment/assign.cc:
700 Likewise.
701 * testsuite/experimental/memory/observer_ptr/cons/cons.cc: Likewise.
702 * testsuite/experimental/memory/observer_ptr/hash/hash.cc: Likewise.
703 * testsuite/experimental/memory/observer_ptr/make_observer.cc:
704 Likewise.
705 * testsuite/experimental/memory/observer_ptr/relops/relops.cc:
706 Likewise.
707 * testsuite/experimental/memory/observer_ptr/requirements.cc: Likewise.
708 * testsuite/experimental/memory/observer_ptr/swap/swap.cc: Likewise.
709 * testsuite/experimental/memory/observer_ptr/typedefs.cc: Likewise.
710 * testsuite/experimental/optional/77288.cc: Likewise.
711 * testsuite/experimental/optional/assignment/1.cc: Likewise.
712 * testsuite/experimental/optional/assignment/2.cc: Likewise.
713 * testsuite/experimental/optional/assignment/3.cc: Likewise.
714 * testsuite/experimental/optional/assignment/4.cc: Likewise.
715 * testsuite/experimental/optional/assignment/5.cc: Likewise.
716 * testsuite/experimental/optional/assignment/6.cc: Likewise.
717 * testsuite/experimental/optional/cons/77727.cc: Likewise.
718 * testsuite/experimental/optional/cons/move.cc: Likewise.
719 * testsuite/experimental/optional/cons/value.cc: Likewise.
720 * testsuite/experimental/optional/cons/value_neg.cc: Likewise.
721 * testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.
722 * testsuite/experimental/optional/constexpr/make_optional.cc: Likewise.
723 * testsuite/experimental/optional/constexpr/observers/1.cc: Likewise.
724 * testsuite/experimental/optional/constexpr/observers/2.cc: Likewise.
725 * testsuite/experimental/optional/constexpr/observers/3.cc: Likewise.
726 * testsuite/experimental/optional/constexpr/observers/4.cc: Likewise.
727 * testsuite/experimental/optional/constexpr/observers/5.cc: Likewise.
728 * testsuite/experimental/optional/constexpr/relops/1.cc: Likewise.
729 * testsuite/experimental/optional/constexpr/relops/2.cc: Likewise.
730 * testsuite/experimental/optional/constexpr/relops/3.cc: Likewise.
731 * testsuite/experimental/optional/constexpr/relops/4.cc: Likewise.
732 * testsuite/experimental/optional/constexpr/relops/5.cc: Likewise.
733 * testsuite/experimental/optional/constexpr/relops/6.cc: Likewise.
734 * testsuite/experimental/optional/make_optional.cc: Likewise.
735 * testsuite/experimental/optional/observers/1.cc: Likewise.
736 * testsuite/experimental/optional/observers/2.cc: Likewise.
737 * testsuite/experimental/optional/observers/3.cc: Likewise.
738 * testsuite/experimental/optional/observers/4.cc: Likewise.
739 * testsuite/experimental/optional/observers/5.cc: Likewise.
740 * testsuite/experimental/optional/relops/1.cc: Likewise.
741 * testsuite/experimental/optional/relops/2.cc: Likewise.
742 * testsuite/experimental/optional/relops/3.cc: Likewise.
743 * testsuite/experimental/optional/relops/4.cc: Likewise.
744 * testsuite/experimental/optional/relops/5.cc: Likewise.
745 * testsuite/experimental/optional/relops/6.cc: Likewise.
746 * testsuite/experimental/optional/requirements.cc: Likewise.
747 * testsuite/experimental/optional/swap/1.cc: Likewise.
748 * testsuite/experimental/optional/typedefs.cc: Likewise.
749 * testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
750 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
751 Likewise.
752 * testsuite/experimental/propagate_const/cons/move.cc: Likewise.
753 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
754 * testsuite/experimental/propagate_const/hash/1.cc: Likewise.
755 * testsuite/experimental/propagate_const/observers/1.cc: Likewise.
756 * testsuite/experimental/propagate_const/relops/1.cc: Likewise.
757 * testsuite/experimental/propagate_const/requirements1.cc: Likewise.
758 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
759 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
760 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
761 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
762 * testsuite/experimental/propagate_const/swap/1.cc: Likewise.
763 * testsuite/experimental/propagate_const/typedefs.cc: Likewise.
764 * testsuite/experimental/random/randint.cc: Likewise.
765 * testsuite/experimental/ratio/value.cc: Likewise.
766 * testsuite/experimental/set/erasure.cc: Likewise.
767 * testsuite/experimental/string/erasure.cc: Likewise.
768 * testsuite/experimental/string_view/typedefs.cc: Likewise.
769 * testsuite/experimental/system_error/value.cc: Likewise.
770 * testsuite/experimental/tuple/tuple_size.cc: Likewise.
771 * testsuite/experimental/type_traits/value.cc: Likewise.
772 * testsuite/experimental/unordered_map/erasure.cc: Likewise.
773 * testsuite/experimental/unordered_set/erasure.cc: Likewise.
774 * testsuite/experimental/vector/erasure.cc: Likewise.
775
776 * doc/xml/manual/intro.xml: Document LWG 2742 status.
777 * doc/html/*: Regenerate.
778 * include/bits/basic_string.h
779 (basic_string(const T&, size_type, size_type, const Allocator&)): Add
780 constructor for substring of basic_string_view, as per LWG 2742 but
781 with additional constraint to fix ambiguity.
782 * testsuite/21_strings/basic_string/cons/char/9.cc: New test.
783 * testsuite/21_strings/basic_string/cons/wchar_t/9.cc: New test.
784
785 * doc/xml/manual/intro.xml: Document LWG 2748 status.
786 * include/std/optional (optional<T>::swap): Use is_nothrow_swappable_v
787 for exception specification.
788 (swap(optional<T>&, optional<T>&)): Disable when T is not swappable.
789 * testsuite/20_util/optional/swap/2.cc: New test.
790
7912016-11-14 Ville Voutilainen <ville.voutilainen@gmail.com>
792
793 Implement P0513R0, Poisoning the Hash.
794 * include/bits/functional_hash.h (__poison_hash): New.
795 * include/bits/unique_ptr.h
796 (hash<unique_ptr<_Tp, _Dp>>): Derive from __poison_hash.
797 * include/std/optional (hash<optional<_Tp>>): Likewise.
798 * include/std/variant (hash<variant<_Types...>>): Likewise.
799 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
800 * testsuite/20_util/default_delete/void_neg.cc: Likewise.
801 * testsuite/20_util/optional/hash.cc: New.
802 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
803 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Adjust.
804 * testsuite/20_util/unique_ptr/hash/1.cc: Add tests for
805 poisoned fancy pointer hashes.
806 * testsuite/20_util/variant/hash.cc: New.
807
8082016-11-14 Ville Voutilainen <ville.voutilainen@gmail.com>
809
810 Implement P0504R0 (Revisiting in-place tag types for
811 any/optional/variant).
812 * include/std/any (any(_ValueType&& __value)): Constrain
813 the __is_in_place_type with the decayed type.
814 (make_any): Adjust to use the new tag type.
815 * include/std/utility (in_place_tag): Remove.
816 (in_place_t): Turn into a non-reference tag type.
817 (__in_place, __in_place_type, __in_place_index): Remove.
818 (in_place): Turn into an inline variable of non-reference
819 tag type.
820 (in_place<_Tp>): Remove.
821 (in_place_index<_Idx>): Remove.
822 (in_place_type_t): New.
823 (in_place_type): Turn into a variable template of non-reference
824 type.
825 (in_place_index_t): New.
826 (in_place_index): Turn into a variable template of non-reference
827 type.
828 * include/std/variant
829 (_Variant_storage(in_place_index_t<_Np>, _Args&&...)): Adjust to
830 use the new tag type.
831 (_Union(in_place_index_t<0>, _Args&&...)): Likewise.
832 (_Union(in_place_index_t<_Np>, _Args&&...)): Likewise.
833 (_Variant_base()): Likewise.
834 (variant(_Tp&&)): Likewise.
835 (variant(in_place_type_t<_Tp>, _Args&&...)): Likewise.
836 (variant(in_place_type_t<_Tp>, initializer_list<_Up>,
837 _Args&&...)): Likewise.
838 (variant(in_place_index_t<_Np>, _Args&&...)): Likewise.
839 (variant(in_place_index_t<_Np>, initializer_list<_Up>,
840 _Args&&...)): Likewise
841 (variant(allocator_arg_t, const _Alloc&)): Likewise.
842 (variant(allocator_arg_t, const _Alloc&, _Tp&&)): Likewise.
843 (variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
844 _Args&&...)): Likewise.
845 (variant(allocator_arg_t, const _Alloc&, in_place_type_t<_Tp>,
846 initializer_list<_Up>, _Args&&...)): Likewise.
847 (variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
848 _Args&&...)): Likewise.
849 (variant(allocator_arg_t, const _Alloc&, in_place_index_t<_Np>,
850 initializer_list<_Up>, _Args&&...)): Likewise.
851 (emplace(_Args&&...)): Likewise.
852 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
853 * testsuite/20_util/any/cons/explicit.cc: Likewise.
854 * testsuite/20_util/any/cons/in_place.cc: Likewise.
855 * testsuite/20_util/any/requirements.cc: Add tests to
856 check that any is not constructible from the new in_place_type_t
857 of any value category.
858 * testsuite/20_util/in_place/requirements.cc: Adjust to
859 use the new tag type.
860 * testsuite/20_util/variant/compile.cc: Likewise.
861 * testsuite/20_util/variant/run.cc: Likewise.
862
8632016-11-14 Ville Voutilainen <ville.voutilainen@gmail.com>
864
865 Use constexpr addressof in optional, SFINAE housekeeping
866 for any, optional and tuple.
867 * include/std/any (__do_emplace(_Args&&...)): New.
868 (__do_emplace(initializer_list<_Up>, _Args&&...)): Likewise.
869 (__any_constructible): Likewise.
870 (__any_constructible_t): Use __any_constructible.
871 (operator=(_ValueType&&)): SFINAE in the return type.
872 (emplace(_Args&&...)): Likewise.
873 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
874 * include/std/optional (_Has_addressof_mem): Remove.
875 (_Has_addressof_free): Likewise.
876 (_Has_addressof): Likewise.
877 (__constexpr_addressof(_Tp&)): Likewise.
878 (operator->): Use std::__addressof.
879 * include/std/tuple (operator=(const tuple<_UElements...>&)):
880 SFINAE in return type.
881 (operator=(tuple<_UElements...>&&)): Likewise.
882 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
883
8842016-11-14 Jonathan Wakely <jwakely@redhat.com>
885
886 * include/bits/move.h (addressof(const _Tp&&)): Add deleted overload,
887 as per LWG 2598.
888
889 * include/std/future (future::share(), future<R&>::share())
890 (future<void>::share()): Add noexcept, as per LWG 2556.
891
8922016-11-13 Jonathan Wakely <jwakely@redhat.com>
893
894 PR libstdc++/78326
895 * include/experimental/memory_resource (memory_resource::_S_max_align):
896 Change access to protected.
897
898 * doc/xml/manual/status_cxx2017.xml: Update status.
899 * doc/html/manual/status.html: Regenerate.
900 * include/bits/shared_ptr.h (shared_ptr(unique_ptr<_Yp, _Del>)): Add
901 extension constructor to maintain C++14 behaviour.
902 * include/bits/shared_ptr_base.h (__sp_array_delete): Add new struct.
903 (__shared_count(_Ptr, false_type), __shared_count(_Ptr, true_type)):
904 New constructors.
905 (__sp_compatible_with, __sp_is_constructible): Add specializations
906 for array support.
907 (__sp_is_constructible_arr, __sp_is_constructible_arrN): New helpers.
908 (__shared_ptr_access): New base class for observer member functions.
909 (__shared_ptr::element_type): Use remove_extent.
910 (__shared_ptr::_UniqCompatible): Add __sp_compatible_with check.
911 (__shared_ptr(_Yp*)): Use tag dispatching to call new __shared_count
912 constructor.
913 (__shared_ptr(unique_ptr<_Yp, _Del>)): Add extension constructor.
914 (__shared_ptr::operator*, __shared_ptr::operator->): Remove and
915 inherit from __shared_ptr_access base class.
916 (__shared_ptr::__has_esft_base): Return false for array types.
917 (__weak_ptr::element_type): Use remove_extent.
918 * include/experimental/bits/shared_ptr.h (__libfund_v1): Remove.
919 (__shared_ptr<__libfund_v1<_Tp>>): Remove specializations.
920 (__wak_ptr<__libfund_v1<_Tp>>): Likewise.
921 (experimental::__sp_compatible_v): Redefine using
922 __sp_compatible_with.
923 (experimental::__sp_is_constructible_v): Redefine using
924 __sp_is_constructible.
925 (get_deleter, operator<<): Change argument from __shared_ptr to
926 shared_ptr.
927 * testsuite/20_util/shared_ptr/cons/array.cc: New test.
928 * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Adjust for
929 new behaviour.
930 * testsuite/20_util/shared_ptr/observers/array.cc: Test observers for
931 arrays.
932 * testsuite/20_util/shared_ptr/observers/array_neg.cc: New test.
933
9342016-11-13 Ville Voutilainen <ville.voutilainen@gmail.com>
935
936 Implement P0403R1, Literal suffixes for basic_string_view.
937 * include/std/string_view
938 (operator""sv(const char*, size_t)): New.
939 (operator""sv(const wchar_t*, size_t)): Likewise.
940 (operator""sv(const char16_t*, size_t)): Likewise.
941 (operator""sv(const char32_t*, size_t)): Likewise.
942 * testsuite/21_strings/basic_string_view/literals/types.cc: New.
943 * testsuite/21_strings/basic_string_view/literals/values.cc: Likewise.
944 * testsuite/experimental/string_view/literals/values.cc: Add
945 tests for literals with embedded NULs.
946
9472016-11-12 Jonathan Wakely <jwakely@redhat.com>
948
949 * src/filesystem/ops.cc (is_empty): Fix typo in exception message.
950
951 * include/std/future (future_error): Fix public typo to private.
952
9532016-11-11 Jonathan Wakely <jwakely@redhat.com>
954
955 * include/std/future (future_error): Make existing constructor
956 private and add constructor from future_errc.
957
958 * include/bits/shared_ptr.h (hash<shared_ptr<T>>): Use element_type.
959 * include/bits/shared_ptr_base.h (hash<__shared_ptr<T, L>>): Likewise.
960
9612016-11-10 François Dumont <fdumont@gcc.gnu.org>
962
963 * src/c++11/debug.cc (format_word): Delete.
964 (print_literal): New. Replace call to print_word for literals.
965
9662016-11-09 Tim Shen <timshen@google.com>
967
968 * include/bits/regex.h (regex_iterator::regex_iterator()):
969 Define end() as _M_pregex == nullptr.
970 * include/bits/regex.tcc (regex_iterator::operator==(),
971 regex_iterator::operator++()): Fix operator==() and operator++() to
972 look at null-ness of _M_pregex on both sides.
973 * testsuite/28_regex/regression.cc: New testcase.
974
9752016-11-07 Jason Merrill <jason@redhat.com>
976
977 * include/bits/c++config (_GLIBCXX_NOEXCEPT_PARM)
978 (_GLIBCXX_NOEXCEPT_QUAL): New.
979 * include/std/type_traits (is_function): Use them.
980 * libsubc++/new (launder): Likewise.
981 * libsupc++/cxxabi.h (__pbase_type_info::__masks): Add
982 __noexcept_mask.
983 * libsupc++/pbase_type_info.cc (__do_catch): Handle function
984 pointer conversion.
985
9862016-11-07 François Dumont <fdumont@gcc.gnu.org>
987
988 * config/abi/pre/gnu-versioned-namespace.ver: Export C++17 new of
989 over-aligned types symbols.
990
9912016-10-28 Jonathan Wakely <jwakely@redhat.com>
992
993 * include/experimental/bits/fs_path.h (__is_path_src)
994 (_S_range_begin, _S_range_end): Overload to treat string_view as a
995 Source object.
996 (path::operator+=, path::compare): Overload for basic_string_view.
997 * testsuite/experimental/filesystem/path/construct/string_view.cc:
998 New test.
999 * testsuite/experimental/filesystem/path/construct/
1000 string_view_cxx17.cc: New test.
1001
1002 * include/experimental/bits/fs_path.h
1003 (path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
1004 iterator's value_type.
1005 (path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
1006 Do not use operation not supported by input iterators.
1007 (path::__is_path_iter_src): Add partial specialization for const
1008 encoded character types.
1009 * testsuite/experimental/filesystem/path/construct/range.cc: Test
1010 construction from input iterators with const value types.
1011
1012 * doc/xml/manual/status_cxx2017.xml: Update status.
1013 * doc/html/*: Regenerate.
1014 * include/std/type_traits (has_unique_object_representations): Guard
1015 with __has_builtin check.
1016 * libsupc++/new (launder): Define for C++17.
1017 * testsuite/18_support/launder/1.cc: New test.
1018 * testsuite/18_support/launder/requirements.cc: New test.
1019 * testsuite/18_support/launder/requirements_neg.cc: New test.
1020
10212016-10-27 Uros Bizjak <ubizjak@gmail.com>
1022
1023 PR libstdc++/70975
1024 * src/filesystem/ops.cc (do_copy_file) [_GLIBCXX_USE_SENDFILE]:
1025 Pass non-null pointer to sendfile for offset argument.
1026
10272016-10-27 Jonathan Wakely <jwakely@redhat.com>
1028
1029 * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
1030 default.cc: Fix effective target selector.
1031 * testsuite/ext/random/uniform_inside_sphere_distribution/cons/
1032 parms.cc: Likewise.
1033 * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1034 equal.cc: Likewise.
1035 * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1036 generate.cc: Likewise.
1037 * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1038 inequal.cc: Likewise.
1039 * testsuite/ext/random/uniform_inside_sphere_distribution/operators/
1040 serialize.cc: Likewise.
1041
1042 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1043 Use end() function to get end iterator.
1044 * testsuite/experimental/filesystem/iterators/pop.cc: Remove printf
1045 statements that were present for debugging.
1046 * testsuite/experimental/filesystem/iterators/
1047 recursive_directory_iterator.cc: Use end() function to get end
1048 iterator.
1049 * testsuite/experimental/filesystem/operations/last_write_time.cc:
1050 Only require file timestamps to be accurate to one second.
1051
10522016-10-26 François Dumont <fdumont@gcc.gnu.org>
1053
1054 * include/bits/stl_map.h (map()): Make default.
1055 * include/bits/stl_multimap.h (multimap()): Likewise.
1056 * include/bits/stl_multiset.h (multiset()): Likewise.
1057 * include/bits/stl_set.h (set()): Likewise.
1058 * include/bits/stl_tree.h (_Rb_tree_impl()): Add conditional noexcept.
1059 (_Rb_tree()): Make default.
1060
10612016-10-26 Bernd Edlinger <bernd.edlinger@hotmail.de>
1062
1063 PR libstdc++/78110
1064 * libsupc++/new_opa.cc: Don't include <malloc.h> in a free standing
1065 environment. Declare memalign directly in that case.
1066
10672016-10-26 Jonathan Wakely <jwakely@redhat.com>
1068
1069 * testsuite/experimental/filesystem/iterators/pop.cc: Remove
1070 unreliable dependency on directory order.
1071
10722016-10-26 Edward Smith-Rowland <3dw4rd@verizon.net>
1073
1074 Implement uniform_inside_sphere_distribution extension.
1075 * include/ext/random: Implement uniform_inside_sphere_distribution.
1076 * include/ext/random.tcc: Ditto.
1077 * testsuite/ext/random/uniform_inside_sphere_distribution/
1078 cons/default.cc: New.
1079 * testsuite/ext/random/uniform_inside_sphere_distribution/
1080 cons/parms.cc: New.
1081 * testsuite/ext/random/uniform_inside_sphere_distribution/
1082 operators/equal.cc: New.
1083 * testsuite/ext/random/uniform_inside_sphere_distribution/
1084 operators/generate.cc: New.
1085 * testsuite/ext/random/uniform_inside_sphere_distribution/
1086 operators/inequal.cc: New.
1087 * testsuite/ext/random/uniform_inside_sphere_distribution/
1088 operators/serialize.cc: New.
1089
10902016-10-26 Jonathan Wakely <jwakely@redhat.com>
1091
1092 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
1093 Overload pop (LWG 2706).
1094 * src/filesystem/dir.cc (recursive_directory_iterator::pop): Define
1095 new overload.
1096 * testsuite/experimental/filesystem/iterators/pop.cc: New test.
1097
1098 * src/filesystem/dir.cc (recursive_directory_iterator::increment):
1099 Reset state on error.
1100 * testsuite/experimental/filesystem/iterators/
1101 recursive_directory_iterator.cc: Check state after increment error.
1102
1103 PR libstdc++/78111
1104 * src/filesystem/ops.cc (canonical): Set error for non-existent path.
1105
11062016-10-26 Uros Bizjak <ubizjak@gmail.com>
1107
1108 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
1109 for PATH_MAX in realpath test.
1110 * configure: Regenerate.
1111
11122016-10-25 Jonathan Wakely <jwakely@redhat.com>
1113
1114 * src/filesystem/ops.cc
1115 (last_write_time(const path&, file_time_type, error_code&)): Handle
1116 negative times correctly.
1117 * testsuite/experimental/filesystem/operations/last_write_time.cc:
1118 Test writing file times.
1119
1120 * src/filesystem/ops.cc (do_copy_file): Report an error if source or
1121 destination is not a regular file (LWG 2712).
1122 (equivalent): Fix error handling and result when only one file exists.
1123 * testsuite/experimental/filesystem/operations/copy.cc: Remove files
1124 created by tests. Test copying directories.
1125 * testsuite/experimental/filesystem/operations/copy_file.cc: Remove
1126 files created by tests.
1127 * testsuite/experimental/filesystem/operations/equivalent.cc: New.
1128 * testsuite/experimental/filesystem/operations/is_empty.cc: New.
1129 * testsuite/experimental/filesystem/operations/read_symlink.cc: Remove
1130 file created by test.
1131 * testsuite/experimental/filesystem/operations/remove_all.cc: New.
1132 * testsuite/util/testsuite_fs.h (~scoped_file): Only try to remove
1133 file if path is non-empty, to support removal by other means.
1134
11352016-10-24 Jonathan Wakely <jwakely@redhat.com>
1136
1137 * src/filesystem/ops.cc (is_empty): Fix error handling.
1138 * testsuite/experimental/filesystem/operations/is_empty.cc: New test.
1139
1140 PR libstdc++/71337
1141 * src/filesystem/ops.cc (temp_directory_path): Pass error_code
1142 argument to other filesystem operations.
1143 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1144 Add testcase for inaccessible directory.
1145
1146 * src/filesystem/dir.cc (open_dir): Return same value for errors
1147 whether ignored or not.
1148 (_Dir::advance(error_code*, directory_options)): Return false on
1149 error.
1150 (directory_iterator(const path&, directory_options, error_code*)):
1151 Create end iterator on error (LWG 2723).
1152 (recursive_directory_iterator(const path&, directory_options,
1153 error_code*)): Likewise.
1154 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1155 Update expected behaviour on error.
1156 * testsuite/experimental/filesystem/iterators/
1157 recursive_directory_iterator.cc: Likewise.
1158
1159 * src/filesystem/ops.cc (close_fd): Remove.
1160 (do_copy_file): Just use close(3) instead of close_fd, to prevent
1161 retrying on error.
1162
1163 * src/filesystem/ops.cc (do_copy_file): Return an error if either
1164 source or destination is not a regular file.
1165 (copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
1166 resolutions.
1167 (read_symlink): Add missing ec.clear().
1168 * testsuite/experimental/filesystem/operations/copy.cc: Update
1169 expected behaviour for copying directories with create_symlinks.
1170 Verify that error_code arguments are cleared if there's no error.
1171 * testsuite/experimental/filesystem/operations/read_symlink.cc: New.
1172
11732016-10-24 Ville Voutilainen <ville.voutilainen@gmail.com>
1174
1175 Cross-port exception-safety and move fixes of std::any to
1176 std::experimental::any.
1177 * include/experimental/any (operator=(const any&)):
1178 Make strongly exception-safe.
1179 (operator=(any&&)): clear() unconditionally in the case where
1180 rhs has a value.
1181 (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
1182 * testsuite/experimental/any/assign/2.cc: Adjust.
1183 * testsuite/experimental/any/assign/exception.cc: New.
1184 * testsuite/experimental/any/cons/2.cc: Adjust.
1185 * testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.
1186
11872016-10-24 Ville Voutilainen <ville.voutilainen@gmail.com>
1188
1189 Cross-port the latest resolution of LWG2756 and some
1190 bug-fixes to experimental::optional.
1191 PR libstdc++/77288
1192 PR libstdc++/77727
1193 * include/experimental/optional (_Optional_base):
1194 Remove constructors that take a _Tp.
1195 (__is_optional_impl, __is_optional): Remove.
1196 (__converts_from_optional): New.
1197 (optional(_Up&&)): Fix constraints, call base with in_place.
1198 (optional(const optional<_Up>&)): Fix constraints, use emplace.
1199 (optional(optional<_Up>&&)): Likewise.
1200 (operator=(_Up&&)): Fix constraints.
1201 (operator=(const optional<_Up>&)): Likewise.
1202 (operator=(optional<_Up>&&)): Likewise.
1203 (emplace(_Args&&...)): Constrain.
1204 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
1205 * testsuite/experimental/optional/77288.cc: New.
1206 * testsuite/experimental/optional/assignment/5.cc: Adjust.
1207 * testsuite/experimental/optional/cons/77727.cc: New.
1208 * testsuite/experimental/optional/cons/value.cc: Adjust.
1209
12102016-10-24 Jonathan Wakely <jwakely@redhat.com>
1211
1212 * include/bits/stl_vector.h (vector::_M_data_ptr, vector::data):
1213 Change return type of non-standard C++98 extension to match C++11.
1214
12152016-10-22 François Dumont <fdumont@gcc.gnu.org>
1216
1217 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_ALGO)
1218 (_GLIBCXX_END_NAMESPACE_ALGO): Default to respectively
1219 _GLIBCXX_BEGIN_NAMESPACE_VERSION and _GLIBCXX_END_NAMESPACE_VERSION.
1220 (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER, _GLIBCXX_END_NAMESPACE_CONTAINER):
1221 Likewise.
1222
12232016-10-22 Jonathan Wakely <jwakely@redhat.com>
1224
1225 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1226 Ignore symlink_nofollow flag if file is not a symlink.
1227 * testsuite/experimental/filesystem/operations/permissions.cc: Test
1228 symlink_nofollow on non-symlinks.
1229
12302016-10-21 Jonathan Wakely <jwakely@redhat.com>
1231
1232 * include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
1233 Replace with symlink_nofollow (LWG 2720).
1234 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
1235 Handle symlink_nofollow.
1236 * testsuite/experimental/filesystem/operations/create_symlink.cc: New
1237 test.
1238 * testsuite/experimental/filesystem/operations/permissions.cc: Test
1239 overload taking error_code.
1240
1241 * include/experimental/bits/fs_ops.h
1242 (exists(const path&, error_code&)): Clear error if status is known
1243 (LWG 2725).
1244 (status(const path&, error_code&)): Handle EOVERFLOW.
1245 * testsuite/experimental/filesystem/operations/exists.cc: Test
1246 overload taking an error_code.
1247
1248 * include/experimental/bits/fs_path.h (path::path(string_type&&))
1249 (path::operator=(string&&), path::assign(string_type&&)): Define
1250 construction and assignment from string_type rvalues (LWG 2707).
1251
12522016-10-21 Eelis van der Weegen <eelis@eelis.net>
1253
1254 * include/bits/stl_algo.h (__gen_two_uniform_ints): Move logic out
1255 of shuffle into new function.
1256 (shuffle): Call __gen_two_uniform_ints.
1257 (__sample<ForwardIterator, OutputIterator, Cat, Size, URBG>): Use
1258 __gen_two_uniform_ints and perform two samples at a time.
1259
12602016-10-21 Jonathan Wakely <jwakely@redhat.com>
1261
1262 * include/Makefile.am: Add <bits/refwrap.h> and <bits/std_function.h>.
1263 Order alphabetically.
1264 * include/Makefile.in: Regenerate.
1265 * include/bits/refwrap.h: New header.
1266 (_Maybe_get_result_type,_Weak_result_type_impl, _Weak_result_type)
1267 (_Reference_wrapper_base_impl, _Reference_wrapper_base)
1268 (reference_wrapper, ref, cref): Move here from <functional>.
1269 * include/bits/shared_ptr_base.h: Include <bits/refwrap.h> and
1270 <bits/stl_function.h> instead of <functional>.
1271 * include/bits/std_function.h: New header.
1272 (_Maybe_unary_or_binary_function, bad_function_call)
1273 (__is_location_invariant, _Nocopy_types, _Any_data)
1274 (_Simple_type_wrapper, _Function_base, _Function_handler, function):
1275 Move here from <functional>.
1276 * include/bits/unique_ptr.h: Include <bits/stl_function.h>.
1277 * include/std/functional: Include new headers and move components to
1278 them.
1279 * include/std/future: Include <bits/std_function.h> instead of
1280 <functional>.
1281 * include/std/mutex: Likewise.
1282 * include/std/regex: Likewise.
1283 * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
1284 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
1285 * testsuite/20_util/default_delete/void_neg.cc: Likewise.
1286 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1287 lines.
1288 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
1289 * testsuite/30_threads/packaged_task/49668.cc: Include <functional>.
1290
1291 * libsupc++/exception_ptr.h (make_exception_ptr): Qualify new.
1292 * testsuite/18_support/exception_ptr/make_exception_ptr_2.cc: New
1293 test.
1294
12952016-10-20 Jonathan Wakely <jwakely@redhat.com>
1296
1297 * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&))
1298 (shared_ptr(auto_ptr&&)): Adjust template parameter lists.
1299 * include/bits/shared_ptr.h (__sp_compatible_with)
1300 (__sp_is_constructible): New helper traits for shared_ptr.
1301 (shared_ptr::_Convertible): Replace with _Constructible.
1302 (shared_ptr::_Constructible, shared_ptr::_Assignable): Forward checks
1303 to base class.
1304 (shared_ptr::shared_ptr, shared_ptr::operator=): Constrain template
1305 with _Constructible and _Assignable.
1306 (shared_ptr::shared_ptr(shared_ptr<_Tp1>, _Tp*)): Use element_type
1307 instead of _Tp.
1308 (operator<): Likewise.
1309 (operator>): Define in terms of operator<.
1310 (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1311 element_type instead of _Tp.
1312 (reinterpret_pointer_cast): Define for C++17.
1313 (weak_ptr::_Convertible): Replace with _Constructible.
1314 (weak_ptr::_Constructible, weak_ptr::_Assignable): Forward checks
1315 to base class.
1316 (weak_ptr::weak_ptr, weak_ptr::operator=): Constrain templates
1317 with _Constructible and _Assignable.
1318 * include/bits/shared_ptr_base.h (__shared_ptr::_Convertible): Replace
1319 with _Compatible.
1320 (__shared_ptr::_SafeConv): New constraint for incoming raw pointers.
1321 (__shared_ptr::_Compatible): New constraint for converting from
1322 other types of shared_ptr and weak_ptr.
1323 (__shared_ptr::_Assignable): Define in terms of _Compatible.
1324 (__shared_ptr::_UniqCompatible, __shared_ptr::_UniqAssignable): New
1325 constraints for converting from unique_ptr.
1326 (__shared_ptr::__shared_ptr, __shared_ptr::operator=): Constrain
1327 template with _SaveConf, _Compatible and _Assignable. Remove
1328 __glibcxx_function_requires concept checks. Add static assertion for
1329 deleter expression being well-formed.
1330 (__shared_ptr::__shared_ptr(__shared_ptr<_Tp1>, _Tp*))
1331 (__shared_ptr::operator*, __shared_ptr::operator->)
1332 (__shared_ptr::get, __shared_ptr::_M_ptr): Use element_type instead
1333 of _Tp.
1334 (operator<): Likewise.
1335 (operator>): Define in terms of operator<.
1336 (static_pointer_cast, const_pointer_cast, dynamic_pointer_cast): Use
1337 element_type instead of _Tp.
1338 (reinterpret_pointer_cast): Define for C++17.
1339 (weak_ptr::_Convertible): Replace with _Compatible.
1340 (weak_ptr::_Compatible, weak_ptr::_Assignable): New constraints for
1341 conversions from other types of weak_ptr and shared_ptr.
1342 (__weak_ptr::__weak_ptr, __weak_ptr::operator=): Constrain templates
1343 with _Constructible and _Assignable.
1344 (__weak_ptr::_M_ptr): Use element_type instead of _Tp.
1345 * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Adjust
1346 dg-error pattern.
1347 * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Test conversions.
1348 * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
1349 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1350 * testsuite/20_util/shared_ptr/casts/reinterpret.cc: New test.
1351
13522016-10-20 Ville Voutilainen <ville.voutilainen@gmail.com>
1353
1354 Do the operator= SFINAE in the return type for optional,
1355 not in the template parameters.
1356 * include/std/optional (operator=(_Up&&)): Move SFINAE
1357 from template parameters to the return type.
1358 (operator=(const optional<_Up>&)): Likewise.
1359 (operator=(optional<_Up>&&)): Likewise.
1360
13612016-10-20 Jonathan Wakely <jwakely@redhat.com>
1362
1363 * include/bits/allocator.h: Remove trailing whitespace, tab-indent.
1364 * include/ext/new_allocator.h: Likewise.
1365
1366 PR libstdc++/78052
1367 * include/bits/allocator.h (allocator<void>::construct)
1368 (allocator<void>::destroy): Define.
1369 * testsuite/20_util/allocator/void.cc: New test.
1370
1371 * testsuite/20_util/enable_shared_from_this/56383.cc: Add tests for
1372 additional ambiguous cases.
1373
13742016-10-19 Jonathan Wakely <jwakely@redhat.com>
1375
1376 * include/backward/auto_ptr.h (__shared_ptr(auto_ptr&&)): Call
1377 _M_enable_shared_from_this_with instead of
1378 __enable_shared_from_this_helper.
1379 * include/bits/shared_ptr.h (__enable_shared_from_this_helper):
1380 Remove overload for std::enable_shared_from_this..
1381 (__enable_shared_from_this_base): Define friend function to select a
1382 std::enable_shared_from_this base class.
1383 * include/bits/shared_ptr_base.h (__enable_shared_from_this_helper):
1384 Remove all overloads.
1385 (__shared_ptr): Change all relevant constructors to call
1386 _M_enable_shared_from_this_with instead of
1387 __enable_shared_from_this_helper.
1388 (__shared_ptr::__efst_base_t, __shared_ptr::__has_efst_base): Helpers
1389 to detect accessible and unambiguous enable_shared_from_this bases.
1390 (__shared_ptr::_M_enable_shared_from_this_with): New function to
1391 replace __enable_shared_from_this_helper overloads.
1392 (__enable_shared_from_this_helper): Remove overload for
1393 std::__enable_shared_from_this.
1394 (__enable_shared_from_this_base): Define friend function to select a
1395 std::__enable_shared_from_this base class.
1396 * include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
1397 Change relevant constructors to call _M_enable_shared_from_this_with.
1398 (experimental::shared_ptr::__efst_base_t)
1399 (experimental::shared_ptr::__has_efst_base): Helpers to detect
1400 accessible and unambiguous enable_shared_from_this bases.
1401 (experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
1402 (experimental::__enable_shared_from_this_helper): Remove overload for
1403 std::experimental::enable_shared_from_this.
1404 (experimental::__expt_enable_shared_from_this_base): Define friend
1405 function to select a std::experimental::enable_shared_from_this base.
1406 * testsuite/experimental/memory/shared_ptr/cons/
1407 enable_shared_from_this.cc: New test.
1408 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1409 Adjust expected behaviour for shared_ptr<A[]>.
1410
1411 * include/debug/vector (__gnu_debug::vector::emplace_back): Fix return
1412 type.
1413
1414 * include/backward/auto_ptr.h (dauto_ptr): Correct comment about
1415 conversions from auto_ptr<Derived> rvalues to auto_ptr<Base>.
1416 * testsuite/20_util/auto_ptr/assign_neg.cc: Remove redundant dg-error
1417 directives that only match notes, not errors.
1418
1419 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1420 Add tests for valid and invalid conversions.
1421 * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
1422 Likewise.
1423
1424 * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
1425 to new file.
1426 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file. Fix
1427 test for incompatible deleters to not also use incompatible types.
1428 Add tests for incompatible array types.
1429
1430 * include/experimental/bits/shared_ptr.h
1431 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
1432 is_convertible for non-array specialization.
1433 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
1434 constraint for conversions from unique_ptr.
1435 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
1436 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
1437 (__sp_compatible_v): New variable template for trait.
1438 (__sp_is_constructible): New trait to check shared_ptr constraints.
1439 (__sp_is_constructible_v): New variable template for trait.
1440 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
1441 constraint for construction/reset, using __sp_is_constructible_v.
1442 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
1443 constraint for conversions from unique_ptr.
1444 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
1445 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
1446 (shared_ptr::_SafeConv): Constraint for checking constructors.
1447 (shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
1448 (shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
1449 (shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
1450 (shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
1451 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
1452 Remove tests using invalid conversions.
1453 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
1454 New test.
1455 * testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
1456 * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
1457 tests using invalid conversions.
1458 * testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
1459 test.
1460 * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
1461 Remove tests using invalid conversions.
1462
1463 PR libstdc++/77990
1464 * include/bits/unique_ptr.h (__uniq_ptr_impl): New type to
1465 encapsulate implementation details.
1466 (unique_ptr::unique_ptr(_Up)): Don't copy deleter object.
1467 (unique_ptr::get, unique_ptr::get_deleter, unique_ptr::release):
1468 Call member functions of implementation object.
1469 (unique_ptr<T[], D>): Likewise.
1470 * python/libstdcxx/v6/printers.py (UniquePointerPrinter): Adjust for
1471 new implementation.
1472 * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Likewise.
1473 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1474 lines.
1475 * testsuite/20_util/unique_ptr/assign/cv_qual.cc: Likewise.
1476 * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Likewise.
1477 * testsuite/20_util/unique_ptr/cons/77990.cc: New test.
1478
14792016-10-18 Jonathan Wakely <jwakely@redhat.com>
1480
1481 * include/experimental/bits/shared_ptr.h: Fix indentation.
1482
1483 * include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
1484 Remove const from parameter.
1485 (operator<(const shared_ptr<T>&, nullptr_t)): Use correct
1486 specialization of std::less.
1487 * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
1488 Test comparison with nullptr and actually call test functions.
1489
1490 * include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
1491 (__is_nothrow_uses_allocator_constructible_v): Only define for C++14
1492 and later.
1493
14942016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
1495
1496 * testsuite/27_io/basic_filebuf/close/12790-1.cc: Remove 'test'
1497 variables.
1498 * testsuite/27_io/basic_filebuf/close/char/1.cc: Likewise.
1499 * testsuite/27_io/basic_filebuf/close/char/12790-1.cc: Likewise.
1500 * testsuite/27_io/basic_filebuf/close/char/12790-2.cc: Likewise.
1501 * testsuite/27_io/basic_filebuf/close/char/12790-3.cc: Likewise.
1502 * testsuite/27_io/basic_filebuf/close/char/12790-4.cc: Likewise.
1503 * testsuite/27_io/basic_filebuf/close/char/2.cc: Likewise.
1504 * testsuite/27_io/basic_filebuf/close/char/3.cc: Likewise.
1505 * testsuite/27_io/basic_filebuf/close/char/4.cc: Likewise.
1506 * testsuite/27_io/basic_filebuf/close/char/5.cc: Likewise.
1507 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc: Likewise.
1508 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc: Likewise.
1509 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc: Likewise.
1510 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc: Likewise.
1511 * testsuite/27_io/basic_filebuf/cons/2020.cc: Likewise.
1512 * testsuite/27_io/basic_filebuf/cons/char/1.cc: Likewise.
1513 * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
1514 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: Likewise.
1515 * testsuite/27_io/basic_filebuf/imbue/12206.cc: Likewise.
1516 * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.
1517 * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
1518 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
1519 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
1520 * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
1521 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise.
1522 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
1523 * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.
1524 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
1525 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.
1526 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise.
1527 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise.
1528 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise.
1529 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1530 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
1531 * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.
1532 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
1533 * testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: Likewise.
1534 * testsuite/27_io/basic_filebuf/is_open/char/1.cc: Likewise.
1535 * testsuite/27_io/basic_filebuf/open/12790-1.cc: Likewise.
1536 * testsuite/27_io/basic_filebuf/open/char/1.cc: Likewise.
1537 * testsuite/27_io/basic_filebuf/open/char/2.cc: Likewise.
1538 * testsuite/27_io/basic_filebuf/open/char/3.cc: Likewise.
1539 * testsuite/27_io/basic_filebuf/open/char/4.cc: Likewise.
1540 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1541 * testsuite/27_io/basic_filebuf/overflow/char/1.cc: Likewise.
1542 * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Likewise.
1543 * testsuite/27_io/basic_filebuf/overflow/char/2.cc: Likewise.
1544 * testsuite/27_io/basic_filebuf/overflow/char/3599.cc: Likewise.
1545 * testsuite/27_io/basic_filebuf/overflow/char/9169.cc: Likewise.
1546 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Likewise.
1547 * testsuite/27_io/basic_filebuf/overflow/char/9988.cc: Likewise.
1548 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.
1549 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc: Likewise.
1550 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc: Likewise.
1551 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc: Likewise.
1552 * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: Likewise.
1553 * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: Likewise.
1554 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Likewise.
1555 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Likewise.
1556 * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: Likewise.
1557 * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: Likewise.
1558 * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: Likewise.
1559 * testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc: Likewise.
1560 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
1561 * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Likewise.
1562 * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Likewise.
1563 * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Likewise.
1564 * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Likewise.
1565 * testsuite/27_io/basic_filebuf/seekoff/45628-2.cc: Likewise.
1566 * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Likewise.
1567 * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Likewise.
1568 * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Likewise.
1569 * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: Likewise.
1570 * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: Likewise.
1571 * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc: Likewise.
1572 * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc: Likewise.
1573 * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc: Likewise.
1574 * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc: Likewise.
1575 * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Likewise.
1576 * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
1577 * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Likewise.
1578 * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Likewise.
1579 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Likewise.
1580 * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
1581 * testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Likewise.
1582 * testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: Likewise.
1583 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
1584 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: Likewise.
1585 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc: Likewise.
1586 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc: Likewise.
1587 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc: Likewise.
1588 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc: Likewise.
1589 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.
1590 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Likewise.
1591 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
1592 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
1593 Likewise.
1594 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
1595 * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Likewise.
1596 * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Likewise.
1597 * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Likewise.
1598 * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Likewise.
1599 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
1600 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Likewise.
1601 * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc: Likewise.
1602 * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc: Likewise.
1603 * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc: Likewise.
1604 * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc: Likewise.
1605 * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Likewise.
1606 * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
1607 * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Likewise.
1608 * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
1609 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Likewise.
1610 * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
1611 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Likewise.
1612 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc: Likewise.
1613 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc: Likewise.
1614 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc: Likewise.
1615 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc: Likewise.
1616 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
1617 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
1618 Likewise.
1619 * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Likewise.
1620 * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: Likewise.
1621 * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc
1622 * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
1623 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1624 * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: Likewise.
1625 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Likewise.
1626 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Likewise.
1627 * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: Likewise.
1628 * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: Likewise.
1629 * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: Likewise.
1630 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Likewise.
1631 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
1632 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Likewise.
1633 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
1634 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
1635 * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: Likewise.
1636 * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: Likewise.
1637 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Likewise.
1638 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Likewise.
1639 * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: Likewise.
1640 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Likewise.
1641 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Likewise.
1642 * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: Likewise.
1643 * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: Likewise.
1644 * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: Likewise.
1645 * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: Likewise.
1646 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Likewise.
1647 * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Likewise.
1648 * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: Likewise.
1649 * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Likewise.
1650 * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: Likewise.
1651 * testsuite/27_io/basic_filebuf/sputbackc/char/9425.cc: Likewise.
1652 * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: Likewise.
1653 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Likewise.
1654 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Likewise.
1655 * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: Likewise.
1656 * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: Likewise.
1657 * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: Likewise.
1658 * testsuite/27_io/basic_filebuf/sputc/char/59427.cc: Likewise.
1659 * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Likewise.
1660 * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: Likewise.
1661 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Likewise.
1662 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Likewise.
1663 * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: Likewise.
1664 * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: Likewise.
1665 * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: Likewise.
1666 * testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise.
1667 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Likewise.
1668 * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Likewise.
1669 * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: Likewise.
1670 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Likewise.
1671 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Likewise.
1672 * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: Likewise.
1673 * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: Likewise.
1674 * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: Likewise.
1675 * testsuite/27_io/basic_filebuf/sync/char/1057.cc: Likewise.
1676 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Likewise.
1677 * testsuite/27_io/basic_filebuf/underflow/char/1.cc: Likewise.
1678 * testsuite/27_io/basic_filebuf/underflow/char/2.cc: Likewise.
1679 * testsuite/27_io/basic_filebuf/underflow/char/3.cc: Likewise.
1680 * testsuite/27_io/basic_filebuf/underflow/char/45841.cc: Likewise.
1681 * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: Likewise.
1682 * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
1683 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.
1684 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.
1685 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.
1686 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.
1687 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: Likewise.
1688 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: Likewise.
1689 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
1690 * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
1691 * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
1692 * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
1693 * testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
1694 * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
1695 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Likewise.
1696 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.
1697 * testsuite/27_io/basic_fstream/cons/1.cc: Likewise.
1698 * testsuite/27_io/basic_fstream/rdbuf/char/2832.cc: Likewise.
1699 * testsuite/27_io/basic_ifstream/cons/2020.cc: Likewise.
1700 * testsuite/27_io/basic_ifstream/cons/char/1.cc: Likewise.
1701 * testsuite/27_io/basic_ifstream/open/char/1.cc: Likewise.
1702 * testsuite/27_io/basic_ifstream/rdbuf/char/2832.cc: Likewise.
1703 * testsuite/27_io/basic_ios/clear/char/1.cc: Likewise.
1704 * testsuite/27_io/basic_ios/cons/2020.cc: Likewise.
1705 * testsuite/27_io/basic_ios/cons/char/1.cc: Likewise.
1706 * testsuite/27_io/basic_ios/cons/char/2.cc: Likewise.
1707 * testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
1708 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Likewise.
1709 * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.
1710 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
1711 * testsuite/27_io/basic_ios/imbue/14072.cc: Likewise.
1712 * testsuite/27_io/basic_ios/locales/char/1.cc: Likewise.
1713 * testsuite/27_io/basic_iostream/cons/2020.cc: Likewise.
1714 * testsuite/27_io/basic_istream/cons/3.cc: Likewise.
1715 * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Likewise.
1716 * testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: Likewise.
1717 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1718 Likewise.
1719 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1720 Likewise.
1721 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1722 Likewise.
1723 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1724 Likewise.
1725 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1726 Likewise.
1727 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1728 Likewise.
1729 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1730 Likewise.
1731 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1732 Likewise.
1733 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1734 Likewise.
1735 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1736 Likewise.
1737 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1738 Likewise.
1739 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
1740 Likewise.
1741 * testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
1742 Likewise.
1743 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1744 exceptions_badbit_throw.cc: Likewise.
1745 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1746 exceptions_failbit.cc: Likewise.
1747 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1748 exceptions_failbit_throw.cc: Likewise.
1749 * testsuite/27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc:
1750 Likewise.
1751 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
1752 Likewise.
1753 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/02.cc:
1754 Likewise.
1755 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/03.cc:
1756 Likewise.
1757 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/06.cc:
1758 Likewise.
1759 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
1760 Likewise.
1761 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/08.cc:
1762 Likewise.
1763 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
1764 Likewise.
1765 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
1766 Likewise.
1767 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/11.cc:
1768 Likewise.
1769 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1770 Likewise.
1771 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
1772 Likewise.
1773 * testsuite/27_io/basic_istream/extractors_arithmetic/
1774 wchar_t/9555-ia.cc: Likewise.
1775 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1776 dr696.cc: Likewise.
1777 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1778 exceptions_badbit_throw.cc: Likewise.
1779 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1780 exceptions_failbit.cc: Likewise.
1781 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
1782 exceptions_failbit_throw.cc: Likewise.
1783 * testsuite/27_io/basic_istream/extractors_character/char/1.cc:
1784 Likewise.
1785 * testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
1786 Likewise.
1787 * testsuite/27_io/basic_istream/extractors_character/char/2.cc:
1788 Likewise.
1789 * testsuite/27_io/basic_istream/extractors_character/char/3.cc:
1790 Likewise.
1791 * testsuite/27_io/basic_istream/extractors_character/char/4.cc:
1792 Likewise.
1793 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1794 Likewise.
1795 * testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
1796 Likewise.
1797 * testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
1798 Likewise.
1799 * testsuite/27_io/basic_istream/extractors_character/wchar_t/
1800 11095-i.cc: Likewise.
1801 * testsuite/27_io/basic_istream/extractors_character/wchar_t/2.cc:
1802 Likewise.
1803 * testsuite/27_io/basic_istream/extractors_character/wchar_t/3.cc:
1804 Likewise.
1805 * testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
1806 Likewise.
1807 * testsuite/27_io/basic_istream/extractors_character/wchar_t/
1808 9555-ic.cc: Likewise.
1809 * testsuite/27_io/basic_istream/extractors_other/char/1.cc: Likewise.
1810 * testsuite/27_io/basic_istream/extractors_other/char/2.cc: Likewise.
1811 * testsuite/27_io/basic_istream/extractors_other/char/26181.cc:
1812 Likewise.
1813 * testsuite/27_io/basic_istream/extractors_other/char/3.cc: Likewise.
1814 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
1815 Likewise.
1816 * testsuite/27_io/basic_istream/extractors_other/char/9424-in.cc:
1817 Likewise.
1818 * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
1819 Likewise.
1820 * testsuite/27_io/basic_istream/extractors_other/char/
1821 error_failbit.cc: Likewise.
1822 * testsuite/27_io/basic_istream/extractors_other/char/
1823 exceptions_badbit_throw.cc: Likewise.
1824 * testsuite/27_io/basic_istream/extractors_other/char/
1825 exceptions_failbit_throw.cc: Likewise.
1826 * testsuite/27_io/basic_istream/extractors_other/char/
1827 exceptions_null.cc: Likewise.
1828 * testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc:
1829 Likewise.
1830 * testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc: Likewise.
1831 * testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc: Likewise.
1832 * testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
1833 Likewise.
1834 * testsuite/27_io/basic_istream/extractors_other/wchar_t/3.cc: Likewise.
1835 * testsuite/27_io/basic_istream/extractors_other/wchar_t/9318-in.cc:
1836 Likewise.
1837 * testsuite/27_io/basic_istream/extractors_other/wchar_t/9424-in.cc:
1838 Likewise.
1839 * testsuite/27_io/basic_istream/extractors_other/wchar_t/9555-io.cc:
1840 Likewise.
1841 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1842 error_failbit.cc: Likewise.
1843 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1844 exceptions_badbit_throw.cc: Likewise.
1845 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1846 exceptions_failbit_throw.cc: Likewise.
1847 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
1848 exceptions_null.cc: Likewise.
1849 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1850 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1851 * testsuite/27_io/basic_istream/get/char/3.cc: Likewise.
1852 * testsuite/27_io/basic_istream/get/wchar_t/1.cc: Likewise.
1853 * testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
1854 * testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
1855 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1856 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1857 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1858 * testsuite/27_io/basic_istream/getline/char/4.cc: Likewise.
1859 * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
1860 * testsuite/27_io/basic_istream/getline/char/6.cc: Likewise.
1861 * testsuite/27_io/basic_istream/getline/wchar_t/1.cc: Likewise.
1862 * testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Likewise.
1863 * testsuite/27_io/basic_istream/getline/wchar_t/3.cc: Likewise.
1864 * testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
1865 * testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Likewise.
1866 * testsuite/27_io/basic_istream/getline/wchar_t/6.cc: Likewise.
1867 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1868 * testsuite/27_io/basic_istream/ignore/char/2.cc: Likewise.
1869 * testsuite/27_io/basic_istream/ignore/char/3.cc: Likewise.
1870 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1871 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1872 * testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
1873 * testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
1874 * testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
1875 * testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
1876 * testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
1877 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1878 * testsuite/27_io/basic_istream/peek/char/12296.cc: Likewise.
1879 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1880 * testsuite/27_io/basic_istream/peek/wchar_t/1.cc: Likewise.
1881 * testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
1882 * testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
1883 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1884 * testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
1885 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1886 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1887 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1888 * testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
1889 * testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
1890 * testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
1891 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc: Likewise.
1892 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Likewise.
1893 * testsuite/27_io/basic_istream/readsome/char/8258.cc: Likewise.
1894 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
1895 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
1896 * testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
1897 * testsuite/27_io/basic_istream/seekg/char/2.cc: Likewise.
1898 * testsuite/27_io/basic_istream/seekg/char/26211.cc: Likewise.
1899 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1900 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1901 * testsuite/27_io/basic_istream/seekg/char/
1902 exceptions_badbit_throw.cc: Likewise.
1903 * testsuite/27_io/basic_istream/seekg/char/fstream.cc: Likewise.
1904 * testsuite/27_io/basic_istream/seekg/char/sstream.cc: Likewise.
1905 * testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
1906 * testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
1907 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
1908 * testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
1909 * testsuite/27_io/basic_istream/seekg/wchar_t/
1910 exceptions_badbit_throw.cc: Likewise.
1911 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
1912 * testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
1913 * testsuite/27_io/basic_istream/sentry/char/1.cc: Likewise.
1914 * testsuite/27_io/basic_istream/sentry/char/2.cc: Likewise.
1915 * testsuite/27_io/basic_istream/sentry/char/3.cc: Likewise.
1916 * testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
1917 * testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
1918 * testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
1919 * testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
1920 * testsuite/27_io/basic_istream/tellg/char/1.cc: Likewise.
1921 * testsuite/27_io/basic_istream/tellg/char/2.cc: Likewise.
1922 * testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
1923 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1924 * testsuite/27_io/basic_istream/tellg/char/
1925 exceptions_badbit_throw.cc: Likewise.
1926 * testsuite/27_io/basic_istream/tellg/char/fstream.cc: Likewise.
1927 * testsuite/27_io/basic_istream/tellg/char/sstream.cc: Likewise.
1928 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
1929 * testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
1930 * testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
1931 * testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
1932 * testsuite/27_io/basic_istream/tellg/wchar_t/
1933 exceptions_badbit_throw.cc: Likewise.
1934 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
1935 * testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
1936 * testsuite/27_io/basic_istream/ws/char/1.cc: Likewise.
1937 * testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
1938 * testsuite/27_io/basic_istringstream/cons/2020.cc: Likewise.
1939 * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Likewise.
1940 * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: Likewise.
1941 * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
1942 * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
1943 * testsuite/27_io/basic_ofstream/cons/2020.cc: Likewise.
1944 * testsuite/27_io/basic_ofstream/cons/char/1.cc: Likewise.
1945 * testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.
1946 * testsuite/27_io/basic_ofstream/rdbuf/char/2832.cc: Likewise.
1947 * testsuite/27_io/basic_ostream/cons/2020.cc: Likewise.
1948 * testsuite/27_io/basic_ostream/cons/char/9827.cc: Likewise.
1949 * testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: Likewise.
1950 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
1951 * testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
1952 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
1953 * testsuite/27_io/basic_ostream/ends/char/2.cc: Likewise.
1954 * testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
1955 * testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
1956 * testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
1957 * testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
1958 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1959 * testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
1960 * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
1961 Likewise.
1962 * testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
1963 * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
1964 * testsuite/27_io/basic_ostream/flush/wchar_t/
1965 exceptions_badbit_throw.cc: Likewise.
1966 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1967 Likewise.
1968 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1969 Likewise.
1970 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/3.cc:
1971 Likewise.
1972 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4.cc:
1973 Likewise.
1974 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/4402.cc:
1975 Likewise.
1976 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/5.cc:
1977 Likewise.
1978 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
1979 Likewise.
1980 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
1981 Likewise.
1982 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
1983 Likewise.
1984 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1985 exceptions_badbit_throw.cc: Likewise.
1986 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1987 exceptions_failbit_throw.cc: Likewise.
1988 * testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc:
1989 Likewise.
1990 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1991 Likewise.
1992 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
1993 Likewise.
1994 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/3.cc:
1995 Likewise.
1996 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4.cc:
1997 Likewise.
1998 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc:
1999 Likewise.
2000 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/5.cc:
2001 Likewise.
2002 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
2003 Likewise.
2004 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
2005 Likewise.
2006 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2007 9555-oa.cc: Likewise.
2008 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2009 exceptions_badbit_throw.cc: Likewise.
2010 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/
2011 exceptions_failbit_throw.cc: Likewise.
2012 * testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
2013 Likewise.
2014 * testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
2015 Likewise.
2016 * testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
2017 Likewise.
2018 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc: Likewise.
2019 * testsuite/27_io/basic_ostream/inserters_character/char/28277-3.cc:
2020 Likewise.
2021 * testsuite/27_io/basic_ostream/inserters_character/char/28277-4.cc:
2022 Likewise.
2023 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc: Likewise.
2024 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc: Likewise.
2025 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc: Likewise.
2026 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc: Likewise.
2027 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc: Likewise.
2028 * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
2029 Likewise.
2030 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2031 11095-od.cc: Likewise.
2032 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2033 11095-oe.cc: Likewise.
2034 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2035 11095-of.cc: Likewise.
2036 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/2.cc:
2037 Likewise.
2038 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2039 28277-1.cc: Likewise.
2040 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2041 28277-2.cc: Likewise.
2042 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2043 28277-3.cc: Likewise.
2044 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2045 28277-4.cc: Likewise.
2046 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/3.cc:
2047 Likewise.
2048 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/4.cc:
2049 Likewise.
2050 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/5.cc:
2051 Likewise.
2052 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/6.cc:
2053 Likewise.
2054 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
2055 Likewise.
2056 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
2057 Likewise.
2058 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
2059 9555-oc.cc: Likewise.
2060 * testsuite/27_io/basic_ostream/inserters_other/char/1.cc: Likewise.
2061 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Likewise.
2062 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Likewise.
2063 * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: Likewise.
2064 * testsuite/27_io/basic_ostream/inserters_other/char/9318-out.cc:
2065 Likewise.
2066 * testsuite/27_io/basic_ostream/inserters_other/char/9424-out.cc:
2067 Likewise.
2068 * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
2069 Likewise.
2070 * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
2071 Likewise.
2072 * testsuite/27_io/basic_ostream/inserters_other/char/
2073 error_failbit.cc: Likewise.
2074 * testsuite/27_io/basic_ostream/inserters_other/char/
2075 exceptions_badbit_throw.cc: Likewise.
2076 * testsuite/27_io/basic_ostream/inserters_other/char/
2077 exceptions_failbit_throw.cc: Likewise.
2078 * testsuite/27_io/basic_ostream/inserters_other/char/
2079 exceptions_null.cc: Likewise.
2080 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/1.cc: Likewise.
2081 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/3.cc: Likewise.
2082 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/4.cc: Likewise.
2083 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/5.cc: Likewise.
2084 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2085 9318-out.cc: Likewise.
2086 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2087 9424-out.cc: Likewise.
2088 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2089 9555-oo.cc: Likewise.
2090 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2091 error_code.cc: Likewise.
2092 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2093 error_failbit.cc: Likewise.
2094 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2095 exceptions_badbit_throw.cc: Likewise.
2096 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2097 exceptions_failbit_throw.cc: Likewise.
2098 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
2099 exceptions_null.cc: Likewise.
2100 * testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
2101 * testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
2102 * testsuite/27_io/basic_ostream/seekp/char/2346-fstream.cc: Likewise.
2103 * testsuite/27_io/basic_ostream/seekp/char/2346-sstream.cc: Likewise.
2104 * testsuite/27_io/basic_ostream/seekp/char/
2105 exceptions_badbit_throw.cc: Likewise.
2106 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise.
2107 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-sstream.cc: Likewise.
2108 * testsuite/27_io/basic_ostream/seekp/wchar_t/
2109 exceptions_badbit_throw.cc: Likewise.
2110 * testsuite/27_io/basic_ostream/sentry/char/1.cc: Likewise.
2111 * testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
2112 * testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
2113 * testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
2114 * testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
2115 * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
2116 * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
2117 * testsuite/27_io/basic_ostream/tellp/char/
2118 exceptions_badbit_throw.cc: Likewise.
2119 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
2120 * testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
2121 * testsuite/27_io/basic_ostream/tellp/wchar_t/
2122 exceptions_badbit_throw.cc: Likewise.
2123 * testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.
2124 * testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.
2125 * testsuite/27_io/basic_ostringstream/cons/2020.cc: Likewise.
2126 * testsuite/27_io/basic_ostringstream/cons/char/3.cc: Likewise.
2127 * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
2128 * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc: Likewise.
2129 * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
2130 * testsuite/27_io/basic_ostringstream/str/char/1.cc: Likewise.
2131 * testsuite/27_io/basic_ostringstream/str/char/2.cc: Likewise.
2132 * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
2133 * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
2134 * testsuite/27_io/basic_streambuf/cons/2020.cc: Likewise.
2135 * testsuite/27_io/basic_streambuf/cons/57394.cc: Likewise.
2136 * testsuite/27_io/basic_streambuf/cons/char/1.cc: Likewise.
2137 * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2138 * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
2139 * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
2140 * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.
2141 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.
2142 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.
2143 * testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise.
2144 * testsuite/27_io/basic_streambuf/in_avail/char/1.cc: Likewise.
2145 * testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Likewise.
2146 * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
2147 * testsuite/27_io/basic_streambuf/overflow/char/2.cc: Likewise.
2148 * testsuite/27_io/basic_streambuf/overflow/char/3599.cc: Likewise.
2149 * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc: Likewise.
2150 * testsuite/27_io/basic_streambuf/overflow/wchar_t/2.cc: Likewise.
2151 * testsuite/27_io/basic_streambuf/overflow/wchar_t/3599.cc: Likewise.
2152 * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
2153 * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
2154 * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
2155 * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
2156 * testsuite/27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
2157 * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
2158 * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2159 * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
2160 * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
2161 * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
2162 * testsuite/27_io/basic_stringbuf/cons/2020.cc: Likewise.
2163 * testsuite/27_io/basic_stringbuf/cons/char/1.cc: Likewise.
2164 * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
2165 * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Likewise.
2166 * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.
2167 * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Likewise.
2168 * testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
2169 * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Likewise.
2170 * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
2171 * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Likewise.
2172 * testsuite/27_io/basic_stringbuf/overflow/char/2.cc: Likewise.
2173 * testsuite/27_io/basic_stringbuf/overflow/char/26250.cc: Likewise.
2174 * testsuite/27_io/basic_stringbuf/overflow/char/3599.cc: Likewise.
2175 * testsuite/27_io/basic_stringbuf/overflow/char/9988.cc: Likewise.
2176 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc: Likewise.
2177 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/2.cc: Likewise.
2178 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/26250.cc: Likewise.
2179 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/3599.cc: Likewise.
2180 * testsuite/27_io/basic_stringbuf/overflow/wchar_t/9988.cc: Likewise.
2181 * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: Likewise.
2182 * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
2183 * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
2184 * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
2185 * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Likewise.
2186 * testsuite/27_io/basic_stringbuf/sbumpc/char/9825.cc: Likewise.
2187 * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Likewise.
2188 * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/9825.cc: Likewise.
2189 * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Likewise.
2190 * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: Likewise.
2191 * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: Likewise.
2192 * testsuite/27_io/basic_stringbuf/seekoff/char/2.cc: Likewise.
2193 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
2194 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
2195 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: Likewise.
2196 * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/2.cc: Likewise.
2197 * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
2198 * testsuite/27_io/basic_stringbuf/seekpos/char/2.cc: Likewise.
2199 * testsuite/27_io/basic_stringbuf/seekpos/char/29354.cc: Likewise.
2200 * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Likewise.
2201 * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
2202 * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/2.cc: Likewise.
2203 * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/29354.cc: Likewise.
2204 * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/3.cc: Likewise.
2205 * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Likewise.
2206 * testsuite/27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
2207 * testsuite/27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
2208 * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
2209 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Likewise.
2210 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/2.cc: Likewise.
2211 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/3.cc: Likewise.
2212 * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
2213 * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Likewise.
2214 * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
2215 * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Likewise.
2216 * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
2217 * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Likewise.
2218 * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
2219 * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Likewise.
2220 * testsuite/27_io/basic_stringbuf/sputbackc/char/9425.cc: Likewise.
2221 * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise.
2222 * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc: Likewise.
2223 * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Likewise.
2224 * testsuite/27_io/basic_stringbuf/sputc/char/9404-1.cc: Likewise.
2225 * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Likewise.
2226 * testsuite/27_io/basic_stringbuf/sputc/wchar_t/9404-1.cc: Likewise.
2227 * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Likewise.
2228 * testsuite/27_io/basic_stringbuf/sputn/char/9404-2.cc: Likewise.
2229 * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Likewise.
2230 * testsuite/27_io/basic_stringbuf/sputn/wchar_t/9404-2.cc: Likewise.
2231 * testsuite/27_io/basic_stringbuf/str/char/1.cc: Likewise.
2232 * testsuite/27_io/basic_stringbuf/str/char/2.cc: Likewise.
2233 * testsuite/27_io/basic_stringbuf/str/char/3.cc: Likewise.
2234 * testsuite/27_io/basic_stringbuf/str/char/3955.cc: Likewise.
2235 * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Likewise.
2236 * testsuite/27_io/basic_stringbuf/str/wchar_t/2.cc: Likewise.
2237 * testsuite/27_io/basic_stringbuf/str/wchar_t/3.cc: Likewise.
2238 * testsuite/27_io/basic_stringbuf/str/wchar_t/3955.cc: Likewise.
2239 * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise.
2240 * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
2241 * testsuite/27_io/basic_stringbuf/sync/char/1057.cc: Likewise.
2242 * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
2243 * testsuite/27_io/basic_stringstream/cons/2020.cc: Likewise.
2244 * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Likewise.
2245 * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: Likewise.
2246 * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
2247 * testsuite/27_io/basic_stringstream/str/char/2.cc: Likewise.
2248 * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
2249 * testsuite/27_io/basic_stringstream/str/char/4.cc: Likewise.
2250 * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
2251 * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
2252 * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
2253 * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
2254 * testsuite/27_io/fpos/11450.cc: Likewise.
2255 * testsuite/27_io/fpos/14252.cc: Likewise.
2256 * testsuite/27_io/fpos/14320-1.cc: Likewise.
2257 * testsuite/27_io/fpos/14320-2.cc: Likewise.
2258 * testsuite/27_io/fpos/14320-3.cc: Likewise.
2259 * testsuite/27_io/fpos/14320-4.cc: Likewise.
2260 * testsuite/27_io/fpos/14320-5.cc: Likewise.
2261 * testsuite/27_io/fpos/14775.cc: Likewise.
2262 * testsuite/27_io/fpos/mbstate_t/1.cc: Likewise.
2263 * testsuite/27_io/fpos/mbstate_t/12065.cc: Likewise.
2264 * testsuite/27_io/fpos/mbstate_t/2.cc: Likewise.
2265 * testsuite/27_io/fpos/mbstate_t/3.cc: Likewise.
2266 * testsuite/27_io/ios_base/callbacks/1.cc: Likewise.
2267 * testsuite/27_io/ios_base/failure/what-1.cc: Likewise.
2268 * testsuite/27_io/ios_base/failure/what-2.cc: Likewise.
2269 * testsuite/27_io/ios_base/failure/what-3.cc: Likewise.
2270 * testsuite/27_io/ios_base/failure/what-big.cc: Likewise.
2271 * testsuite/27_io/ios_base/state/1.cc: Likewise.
2272 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
2273 * testsuite/27_io/ios_base/storage/11584.cc: Likewise.
2274 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
2275 * testsuite/27_io/ios_base/sync_with_stdio/2.cc: Likewise.
2276 * testsuite/27_io/manipulators/adjustfield/char/1.cc: Likewise.
2277 * testsuite/27_io/manipulators/adjustfield/char/2.cc
2278 * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: Likewise.
2279 * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
2280 * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
2281 * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
2282 * testsuite/27_io/manipulators/extended/get_money/char/1.cc: Likewise.
2283 * testsuite/27_io/manipulators/extended/get_money/char/51288.cc:
2284 Likewise.
2285 * testsuite/27_io/manipulators/extended/get_money/wchar_t/1.cc:
2286 Likewise.
2287 * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
2288 Likewise.
2289 * testsuite/27_io/manipulators/extended/get_time/char/1.cc
2290 * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Likewise.
2291 * testsuite/27_io/manipulators/extended/get_time/wchar_t/1.cc: Likewise.
2292 * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Likewise.
2293 * testsuite/27_io/manipulators/extended/put_money/char/1.cc: Likewise.
2294 * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
2295 Likewise.
2296 * testsuite/27_io/manipulators/extended/put_money/wchar_t/1.cc:
2297 Likewise.
2298 * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
2299 Likewise.
2300 * testsuite/27_io/manipulators/extended/put_time/char/1.cc: Likewise.
2301 * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Likewise.
2302 * testsuite/27_io/manipulators/extended/put_time/wchar_t/1.cc: Likewise.
2303 * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Likewise.
2304 * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
2305 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
2306 * testsuite/27_io/manipulators/standard/char/dr2344.cc: Likewise.
2307 * testsuite/27_io/manipulators/standard/char/quoted.cc: Likewise.
2308 * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
2309 * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
2310 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: Likewise.
2311 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: Likewise.
2312 * testsuite/27_io/objects/char/1.cc: Likewise.
2313 * testsuite/27_io/objects/char/10.cc: Likewise.
2314 * testsuite/27_io/objects/char/3045.cc: Likewise.
2315 * testsuite/27_io/objects/char/41037.cc: Likewise.
2316 * testsuite/27_io/objects/char/5.cc: Likewise.
2317 * testsuite/27_io/objects/char/6.cc: Likewise.
2318 * testsuite/27_io/objects/char/6548_xin.cc: Likewise.
2319 * testsuite/27_io/objects/char/6648-1_xin.cc: Likewise.
2320 * testsuite/27_io/objects/char/6648-2_xin.cc: Likewise.
2321 * testsuite/27_io/objects/char/7744_xin.cc: Likewise.
2322 * testsuite/27_io/objects/char/8.cc: Likewise.
2323 * testsuite/27_io/objects/char/9.cc: Likewise.
2324 * testsuite/27_io/objects/char/9661-2_xin.cc: Likewise.
2325 * testsuite/27_io/objects/char/dr455.cc: Likewise.
2326 * testsuite/27_io/objects/wchar_t/1.cc: Likewise.
2327 * testsuite/27_io/objects/wchar_t/10.cc: Likewise.
2328 * testsuite/27_io/objects/wchar_t/11.cc: Likewise.
2329 * testsuite/27_io/objects/wchar_t/12.cc: Likewise.
2330 * testsuite/27_io/objects/wchar_t/13.cc: Likewise.
2331 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Likewise.
2332 * testsuite/27_io/objects/wchar_t/3045.cc: Likewise.
2333 * testsuite/27_io/objects/wchar_t/41037.cc: Likewise.
2334 * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
2335 * testsuite/27_io/objects/wchar_t/6548_xin.cc: Likewise.
2336 * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: Likewise.
2337 * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: Likewise.
2338 * testsuite/27_io/objects/wchar_t/7744_xin.cc: Likewise.
2339 * testsuite/27_io/objects/wchar_t/8.cc: Likewise.
2340 * testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
2341 * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: Likewise.
2342 * testsuite/27_io/objects/wchar_t/9662.cc: Likewise.
2343 * testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
2344 * testsuite/27_io/types/3.cc: Likewise.
2345
23462016-10-17 Jonathan Wakely <jwakely@redhat.com>
2347
2348 PR libstdc++/77994
2349 * include/bits/stl_algo.h (sample): Convert size argument to iterator
2350 difference type.
2351 * include/experimental/algorithm (experimental::sample): Likewise.
2352 * testsuite/25_algorithms/sample/2.cc: New test.
2353
23542016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2355
2356 * testsuite/unordered_map/insert/57619.C: Rename to 57619.cc.
2357 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
2358
23592016-10-17 Paolo Carlini <paolo.carlini@oracle.com>
2360
2361 * testsuite/array/capacity/empty.cc: Remove 'test' variables.
2362 * testsuite/array/capacity/max_size.cc: Likewise.
2363 * testsuite/array/capacity/size.cc: Likewise.
2364 * testsuite/array/comparison_operators/equal.cc: Likewise.
2365 * testsuite/array/comparison_operators/greater.cc: Likewise.
2366 * testsuite/array/comparison_operators/greater_or_equal.cc: Likewise.
2367 * testsuite/array/comparison_operators/less.cc: Likewise.
2368 * testsuite/array/comparison_operators/less_or_equal.cc: Likewise.
2369 * testsuite/array/comparison_operators/not_equal.cc: Likewise.
2370 * testsuite/array/element_access/54388.cc: Likewise.
2371 * testsuite/array/element_access/at_out_of_range.cc: Likewise.
2372 * testsuite/array/element_access/back.cc: Likewise.
2373 * testsuite/array/element_access/data.cc: Likewise.
2374 * testsuite/array/element_access/front.cc: Likewise.
2375 * testsuite/array/iterators/end_is_one_past.cc: Likewise.
2376 * testsuite/array/requirements/contiguous.cc: Likewise.
2377 * testsuite/array/requirements/fill.cc: Likewise.
2378 * testsuite/array/requirements/member_swap.cc: Likewise.
2379 * testsuite/array/requirements/zero_sized_arrays.cc: Likewise.
2380 * testsuite/array/specialized_algorithms/swap.cc: Likewise.
2381 * testsuite/array/tuple_interface/tuple_element.cc: Likewise.
2382 * testsuite/array/tuple_interface/tuple_element_cpp14.cc: Likewise.
2383 * testsuite/array/tuple_interface/tuple_size.cc: Likewise.
2384 * testsuite/bitset/all/1.cc: Likewise.
2385 * testsuite/bitset/cons/1.cc: Likewise.
2386 * testsuite/bitset/cons/16020.cc: Likewise.
2387 * testsuite/bitset/cons/2.cc: Likewise.
2388 * testsuite/bitset/cons/3.cc: Likewise.
2389 * testsuite/bitset/cons/50268.cc: Likewise.
2390 * testsuite/bitset/cons/6282.cc: Likewise.
2391 * testsuite/bitset/cons/dr1325-2.cc: Likewise.
2392 * testsuite/bitset/cons/dr396.cc: Likewise.
2393 * testsuite/bitset/ext/15361.cc: Likewise.
2394 * testsuite/bitset/input/1.cc: Likewise.
2395 * testsuite/bitset/operations/1.cc: Likewise.
2396 * testsuite/bitset/operations/13838.cc: Likewise.
2397 * testsuite/bitset/operations/2.cc: Likewise.
2398 * testsuite/bitset/test/1.cc: Likewise.
2399 * testsuite/bitset/to_string/1.cc: Likewise.
2400 * testsuite/bitset/to_string/dr396.cc: Likewise.
2401 * testsuite/bitset/to_ullong/1.cc: Likewise.
2402 * testsuite/bitset/to_ulong/1.cc: Likewise.
2403 * testsuite/deque/allocator/copy.cc: Likewise.
2404 * testsuite/deque/allocator/copy_assign.cc: Likewise.
2405 * testsuite/deque/allocator/ext_ptr.cc: Likewise.
2406 * testsuite/deque/allocator/minimal.cc: Likewise.
2407 * testsuite/deque/allocator/move.cc: Likewise.
2408 * testsuite/deque/allocator/move_assign.cc: Likewise.
2409 * testsuite/deque/allocator/swap.cc: Likewise.
2410 * testsuite/deque/capacity/29134-2.cc: Likewise.
2411 * testsuite/deque/capacity/29134.cc: Likewise.
2412 * testsuite/deque/capacity/moveable.cc: Likewise.
2413 * testsuite/deque/capacity/resize_size.cc: Likewise.
2414 * testsuite/deque/capacity/shrink_to_fit.cc: Likewise.
2415 * testsuite/deque/cons/1.cc: Likewise.
2416 * testsuite/deque/cons/2.cc: Likewise.
2417 * testsuite/deque/cons/assign/1.cc: Likewise.
2418 * testsuite/deque/cons/cons_size.cc: Likewise.
2419 * testsuite/deque/cons/moveable.cc: Likewise.
2420 * testsuite/deque/modifiers/erase/1.cc: Likewise.
2421 * testsuite/deque/modifiers/erase/2.cc: Likewise.
2422 * testsuite/deque/modifiers/erase/3.cc: Likewise.
2423 * testsuite/deque/modifiers/erase/moveable.cc: Likewise.
2424 * testsuite/deque/modifiers/moveable.cc: Likewise.
2425 * testsuite/deque/modifiers/push_back/49836.cc: Likewise.
2426 * testsuite/deque/modifiers/push_front/49836.cc: Likewise.
2427 * testsuite/deque/modifiers/swap/1.cc: Likewise.
2428 * testsuite/deque/modifiers/swap/2.cc: Likewise.
2429 * testsuite/deque/modifiers/swap/3.cc: Likewise.
2430 * testsuite/deque/operators/1.cc: Likewise.
2431 * testsuite/deque/operators/2.cc: Likewise.
2432 * testsuite/forward_list/allocator/copy.cc: Likewise.
2433 * testsuite/forward_list/allocator/copy_assign.cc: Likewise.
2434 * testsuite/forward_list/allocator/ext_ptr.cc: Likewise.
2435 * testsuite/forward_list/allocator/minimal.cc: Likewise.
2436 * testsuite/forward_list/allocator/move.cc: Likewise.
2437 * testsuite/forward_list/allocator/move_assign.cc: Likewise.
2438 * testsuite/forward_list/allocator/swap.cc: Likewise.
2439 * testsuite/forward_list/capacity/1.cc: Likewise.
2440 * testsuite/forward_list/capacity/resize_size.cc: Likewise.
2441 * testsuite/forward_list/comparable.cc: Likewise.
2442 * testsuite/forward_list/cons/1.cc: Likewise.
2443 * testsuite/forward_list/cons/2.cc: Likewise.
2444 * testsuite/forward_list/cons/3.cc: Likewise.
2445 * testsuite/forward_list/cons/4.cc: Likewise.
2446 * testsuite/forward_list/cons/5.cc: Likewise.
2447 * testsuite/forward_list/cons/6.cc: Likewise.
2448 * testsuite/forward_list/cons/7.cc: Likewise.
2449 * testsuite/forward_list/cons/8.cc: Likewise.
2450 * testsuite/forward_list/cons/9.cc: Likewise.
2451 * testsuite/forward_list/cons/cons_size.cc: Likewise.
2452 * testsuite/forward_list/cons/moveable.cc: Likewise.
2453 * testsuite/forward_list/debug/clear.cc: Likewise.
2454 * testsuite/forward_list/debug/construct4_neg.cc: Likewise.
2455 * testsuite/forward_list/debug/erase_after1_neg.cc: Likewise.
2456 * testsuite/forward_list/debug/move_assign_neg.cc: Likewise.
2457 * testsuite/forward_list/debug/move_constructor.cc: Likewise.
2458 * testsuite/forward_list/debug/move_neg.cc: Likewise.
2459 * testsuite/forward_list/debug/splice_after.cc: Likewise.
2460 * testsuite/forward_list/debug/swap.cc: Likewise.
2461 * testsuite/forward_list/modifiers/1.cc: Likewise.
2462 * testsuite/forward_list/modifiers/2.cc: Likewise.
2463 * testsuite/forward_list/modifiers/3.cc: Likewise.
2464 * testsuite/forward_list/modifiers/4.cc: Likewise.
2465 * testsuite/forward_list/modifiers/5.cc: Likewise.
2466 * testsuite/forward_list/modifiers/6.cc: Likewise.
2467 * testsuite/forward_list/operations/1.cc: Likewise.
2468 * testsuite/forward_list/operations/2.cc: Likewise.
2469 * testsuite/forward_list/operations/3.cc: Likewise.
2470 * testsuite/forward_list/operations/4.cc: Likewise.
2471 * testsuite/forward_list/operations/5.cc: Likewise.
2472 * testsuite/forward_list/operations/6.cc: Likewise.
2473 * testsuite/forward_list/operations/7.cc: Likewise.
2474 * testsuite/forward_list/operations/remove_freed.cc: Likewise.
2475 * testsuite/list/61347.cc: Likewise.
2476 * testsuite/list/allocator/copy.cc: Likewise.
2477 * testsuite/list/allocator/copy_assign.cc: Likewise.
2478 * testsuite/list/allocator/minimal.cc: Likewise.
2479 * testsuite/list/allocator/move.cc: Likewise.
2480 * testsuite/list/allocator/move_assign.cc: Likewise.
2481 * testsuite/list/allocator/swap.cc: Likewise.
2482 * testsuite/list/capacity/1.h: Likewise.
2483 * testsuite/list/capacity/29134.cc: Likewise.
2484 * testsuite/list/capacity/resize_size.cc: Likewise.
2485 * testsuite/list/cons/1.h: Likewise.
2486 * testsuite/list/cons/2.h: Likewise.
2487 * testsuite/list/cons/3.h: Likewise.
2488 * testsuite/list/cons/4.h: Likewise.
2489 * testsuite/list/cons/5.h: Likewise.
2490 * testsuite/list/cons/6.h: Likewise.
2491 * testsuite/list/cons/7.h: Likewise.
2492 * testsuite/list/cons/8.h: Likewise.
2493 * testsuite/list/cons/9.h: Likewise.
2494 * testsuite/list/cons/cons_size.cc: Likewise.
2495 * testsuite/list/cons/moveable.h: Likewise.
2496 * testsuite/list/debug/invalidation/1.cc: Likewise.
2497 * testsuite/list/debug/invalidation/2.cc: Likewise.
2498 * testsuite/list/debug/invalidation/3.cc: Likewise.
2499 * testsuite/list/debug/invalidation/4.cc: Likewise.
2500 * testsuite/list/modifiers/1.h: Likewise.
2501 * testsuite/list/modifiers/2.h: Likewise.
2502 * testsuite/list/modifiers/3.h: Likewise.
2503 * testsuite/list/modifiers/insert/25288.h: Likewise.
2504 * testsuite/list/modifiers/swap/1.h: Likewise.
2505 * testsuite/list/modifiers/swap/2.h: Likewise.
2506 * testsuite/list/modifiers/swap/3.h: Likewise.
2507 * testsuite/list/operations/1.h: Likewise.
2508 * testsuite/list/operations/2.h: Likewise.
2509 * testsuite/list/operations/3.h: Likewise.
2510 * testsuite/list/operations/4.h: Likewise.
2511 * testsuite/list/operations/42352.cc: Likewise.
2512 * testsuite/map/allocator/copy.cc: Likewise.
2513 * testsuite/map/allocator/copy_assign.cc: Likewise.
2514 * testsuite/map/allocator/init-list.cc: Likewise.
2515 * testsuite/map/allocator/minimal.cc: Likewise.
2516 * testsuite/map/allocator/move.cc: Likewise.
2517 * testsuite/map/allocator/move_assign.cc: Likewise.
2518 * testsuite/map/allocator/swap.cc: Likewise.
2519 * testsuite/map/capacity/29134.cc: Likewise.
2520 * testsuite/map/cons/moveable.cc: Likewise.
2521 * testsuite/map/debug/construct5_neg.cc: Likewise.
2522 * testsuite/map/debug/move_assign_neg.cc: Likewise.
2523 * testsuite/map/debug/move_neg.cc: Likewise.
2524 * testsuite/map/element_access/1.cc: Likewise.
2525 * testsuite/map/element_access/2.cc: Likewise.
2526 * testsuite/map/element_access/39901.cc: Likewise.
2527 * testsuite/map/init-list.cc: Likewise.
2528 * testsuite/map/modifiers/dr130.cc: Likewise.
2529 * testsuite/map/modifiers/emplace/1.cc: Likewise.
2530 * testsuite/map/modifiers/extract.cc: Likewise.
2531 * testsuite/map/modifiers/insert/1.cc: Likewise.
2532 * testsuite/map/modifiers/insert/16813.cc: Likewise.
2533 * testsuite/map/modifiers/insert/2.cc: Likewise.
2534 * testsuite/map/modifiers/insert/3.cc: Likewise.
2535 * testsuite/map/modifiers/insert/4.cc: Likewise.
2536 * testsuite/map/modifiers/insert/5.cc: Likewise.
2537 * testsuite/map/modifiers/insert_or_assign/1.cc: Likewise.
2538 * testsuite/map/modifiers/merge.cc: Likewise.
2539 * testsuite/map/modifiers/swap/1.cc: Likewise.
2540 * testsuite/map/modifiers/swap/2.cc: Likewise.
2541 * testsuite/map/modifiers/swap/3.cc: Likewise.
2542 * testsuite/map/modifiers/try_emplace/1.cc: Likewise.
2543 * testsuite/map/operations/1.cc: Likewise.
2544 * testsuite/map/operations/count.cc: Likewise.
2545 * testsuite/map/operators/1_neg.cc: Likewise.
2546 * testsuite/map/operators/2.cc: Likewise.
2547 * testsuite/multimap/allocator/copy.cc: Likewise.
2548 * testsuite/multimap/allocator/copy_assign.cc: Likewise.
2549 * testsuite/multimap/allocator/init-list.cc: Likewise.
2550 * testsuite/multimap/allocator/minimal.cc: Likewise.
2551 * testsuite/multimap/allocator/move.cc: Likewise.
2552 * testsuite/multimap/allocator/move_assign.cc: Likewise.
2553 * testsuite/multimap/allocator/swap.cc: Likewise.
2554 * testsuite/multimap/capacity/29134.cc: Likewise.
2555 * testsuite/multimap/cons/moveable.cc: Likewise.
2556 * testsuite/multimap/debug/construct5_neg.cc: Likewise.
2557 * testsuite/multimap/debug/move_assign_neg.cc: Likewise.
2558 * testsuite/multimap/debug/move_neg.cc: Likewise.
2559 * testsuite/multimap/init-list.cc: Likewise.
2560 * testsuite/multimap/modifiers/dr130.cc: Likewise.
2561 * testsuite/multimap/modifiers/emplace/1.cc: Likewise.
2562 * testsuite/multimap/modifiers/extract.cc: Likewise.
2563 * testsuite/multimap/modifiers/insert/1.cc: Likewise.
2564 * testsuite/multimap/modifiers/insert/2.cc: Likewise.
2565 * testsuite/multimap/modifiers/insert/22102.cc: Likewise.
2566 * testsuite/multimap/modifiers/insert/3.cc: Likewise.
2567 * testsuite/multimap/modifiers/insert/4.cc: Likewise.
2568 * testsuite/multimap/modifiers/merge.cc: Likewise.
2569 * testsuite/multimap/modifiers/swap/1.cc: Likewise.
2570 * testsuite/multimap/modifiers/swap/2.cc: Likewise.
2571 * testsuite/multimap/modifiers/swap/3.cc: Likewise.
2572 * testsuite/multimap/operations/1.cc: Likewise.
2573 * testsuite/multimap/operations/count.cc: Likewise.
2574 * testsuite/multiset/allocator/copy.cc: Likewise.
2575 * testsuite/multiset/allocator/copy_assign.cc: Likewise.
2576 * testsuite/multiset/allocator/init-list.cc: Likewise.
2577 * testsuite/multiset/allocator/minimal.cc: Likewise.
2578 * testsuite/multiset/allocator/move.cc: Likewise.
2579 * testsuite/multiset/allocator/move_assign.cc: Likewise.
2580 * testsuite/multiset/allocator/swap.cc: Likewise.
2581 * testsuite/multiset/capacity/29134.cc: Likewise.
2582 * testsuite/multiset/cons/moveable.cc: Likewise.
2583 * testsuite/multiset/debug/construct5_neg.cc: Likewise.
2584 * testsuite/multiset/debug/invalidation/2.cc: Likewise.
2585 * testsuite/multiset/debug/move_assign_neg.cc: Likewise.
2586 * testsuite/multiset/debug/move_neg.cc: Likewise.
2587 * testsuite/multiset/init-list.cc: Likewise.
2588 * testsuite/multiset/modifiers/dr130.cc: Likewise.
2589 * testsuite/multiset/modifiers/emplace/1.cc: Likewise.
2590 * testsuite/multiset/modifiers/extract.cc: Likewise.
2591 * testsuite/multiset/modifiers/insert/1.cc: Likewise.
2592 * testsuite/multiset/modifiers/insert/2.cc: Likewise.
2593 * testsuite/multiset/modifiers/insert/22102.cc: Likewise.
2594 * testsuite/multiset/modifiers/insert/3.cc: Likewise.
2595 * testsuite/multiset/modifiers/insert/4.cc: Likewise.
2596 * testsuite/multiset/modifiers/merge.cc: Likewise.
2597 * testsuite/multiset/modifiers/swap/1.cc: Likewise.
2598 * testsuite/multiset/modifiers/swap/2.cc: Likewise.
2599 * testsuite/multiset/modifiers/swap/3.cc: Likewise.
2600 * testsuite/multiset/operations/1.cc: Likewise.
2601 * testsuite/multiset/operations/count.cc: Likewise.
2602 * testsuite/priority_queue/moveable.cc: Likewise.
2603 * testsuite/queue/moveable.cc: Likewise.
2604 * testsuite/set/allocator/copy.cc: Likewise.
2605 * testsuite/set/allocator/copy_assign.cc: Likewise.
2606 * testsuite/set/allocator/init-list.cc: Likewise.
2607 * testsuite/set/allocator/minimal.cc: Likewise.
2608 * testsuite/set/allocator/move.cc: Likewise.
2609 * testsuite/set/allocator/move_assign.cc: Likewise.
2610 * testsuite/set/allocator/swap.cc: Likewise.
2611 * testsuite/set/capacity/29134.cc: Likewise.
2612 * testsuite/set/cons/moveable.cc: Likewise.
2613 * testsuite/set/debug/construct5_neg.cc: Likewise.
2614 * testsuite/set/debug/invalidation/2.cc: Likewise.
2615 * testsuite/set/debug/move_assign_neg.cc: Likewise.
2616 * testsuite/set/debug/move_neg.cc: Likewise.
2617 * testsuite/set/init-list.cc: Likewise.
2618 * testsuite/set/modifiers/17948.cc: Likewise.
2619 * testsuite/set/modifiers/dr130.cc: Likewise.
2620 * testsuite/set/modifiers/emplace/1.cc: Likewise.
2621 * testsuite/set/modifiers/extract.cc: Likewise.
2622 * testsuite/set/modifiers/insert/1.cc: Likewise.
2623 * testsuite/set/modifiers/insert/2.cc: Likewise.
2624 * testsuite/set/modifiers/insert/3.cc: Likewise.
2625 * testsuite/set/modifiers/merge.cc: Likewise.
2626 * testsuite/set/modifiers/swap/1.cc: Likewise.
2627 * testsuite/set/modifiers/swap/2.cc: Likewise.
2628 * testsuite/set/modifiers/swap/3.cc: Likewise.
2629 * testsuite/set/operations/1.cc: Likewise.
2630 * testsuite/set/operations/count.cc: Likewise.
2631 * testsuite/set/operators/1_neg.cc: Likewise.
2632 * testsuite/unordered_map/allocator/copy.cc: Likewise.
2633 * testsuite/unordered_map/allocator/copy_assign.cc: Likewise.
2634 * testsuite/unordered_map/allocator/minimal.cc: Likewise.
2635 * testsuite/unordered_map/allocator/move.cc: Likewise.
2636 * testsuite/unordered_map/allocator/move_assign.cc: Likewise.
2637 * testsuite/unordered_map/allocator/swap.cc: Likewise.
2638 * testsuite/unordered_map/cons/moveable.cc: Likewise.
2639 * testsuite/unordered_map/debug/construct5_neg.cc: Likewise.
2640 * testsuite/unordered_map/debug/move_assign_neg.cc: Likewise.
2641 * testsuite/unordered_map/debug/move_neg.cc: Likewise.
2642 * testsuite/unordered_map/dr761.cc: Likewise.
2643 * testsuite/unordered_map/erase/1.cc: Likewise.
2644 * testsuite/unordered_map/erase/24061-map.cc: Likewise.
2645 * testsuite/unordered_map/erase/54276.cc: Likewise.
2646 * testsuite/unordered_map/hash_policy/dr1189.cc: Likewise.
2647 * testsuite/unordered_map/init-list.cc: Likewise.
2648 * testsuite/unordered_map/insert/24061-map.cc: Likewise.
2649 * testsuite/unordered_map/insert/57619.C: Likewise.
2650 * testsuite/unordered_map/insert/array_syntax.cc: Likewise.
2651 * testsuite/unordered_map/insert/array_syntax_move.cc: Likewise.
2652 * testsuite/unordered_map/insert/map_range.cc: Likewise.
2653 * testsuite/unordered_map/insert/map_single.cc: Likewise.
2654 * testsuite/unordered_map/insert/map_single_move-1.cc: Likewise.
2655 * testsuite/unordered_map/insert/map_single_move-2.cc: Likewise.
2656 * testsuite/unordered_map/modifiers/61667.cc: Likewise.
2657 * testsuite/unordered_map/modifiers/emplace.cc: Likewise.
2658 * testsuite/unordered_map/modifiers/extract.cc: Likewise.
2659 * testsuite/unordered_map/modifiers/insert_or_assign.cc: Likewise.
2660 * testsuite/unordered_map/modifiers/merge.cc: Likewise.
2661 * testsuite/unordered_map/modifiers/reserve.cc: Likewise.
2662 * testsuite/unordered_map/modifiers/try_emplace.cc: Likewise.
2663 * testsuite/unordered_map/operations/count.cc: Likewise.
2664 * testsuite/unordered_map/operators/1.cc: Likewise.
2665 * testsuite/unordered_map/operators/2.cc: Likewise.
2666 * testsuite/unordered_multimap/allocator/copy.cc: Likewise.
2667 * testsuite/unordered_multimap/allocator/copy_assign.cc: Likewise.
2668 * testsuite/unordered_multimap/allocator/minimal.cc: Likewise.
2669 * testsuite/unordered_multimap/allocator/move.cc: Likewise.
2670 * testsuite/unordered_multimap/allocator/move_assign.cc: Likewise.
2671 * testsuite/unordered_multimap/allocator/swap.cc: Likewise.
2672 * testsuite/unordered_multimap/cons/moveable.cc: Likewise.
2673 * testsuite/unordered_multimap/debug/construct5_neg.cc: Likewise.
2674 * testsuite/unordered_multimap/debug/move_assign_neg.cc: Likewise.
2675 * testsuite/unordered_multimap/debug/move_neg.cc: Likewise.
2676 * testsuite/unordered_multimap/erase/1.cc: Likewise.
2677 * testsuite/unordered_multimap/erase/2.cc: Likewise.
2678 * testsuite/unordered_multimap/erase/24061-multimap.cc: Likewise.
2679 * testsuite/unordered_multimap/erase/51845-multimap.cc: Likewise.
2680 * testsuite/unordered_multimap/erase/54276.cc: Likewise.
2681 * testsuite/unordered_multimap/hash_policy/dr1189.cc: Likewise.
2682 * testsuite/unordered_multimap/init-list.cc: Likewise.
2683 * testsuite/unordered_multimap/insert/24061-multimap.cc: Likewise.
2684 * testsuite/unordered_multimap/insert/51866.cc: Likewise.
2685 * testsuite/unordered_multimap/insert/52476.cc: Likewise.
2686 * testsuite/unordered_multimap/insert/53115.cc: Likewise.
2687 * testsuite/unordered_multimap/insert/57619.C: Likewise.
2688 * testsuite/unordered_multimap/insert/hint.cc: Likewise.
2689 * testsuite/unordered_multimap/insert/multimap_range.cc: Likewise.
2690 * testsuite/unordered_multimap/insert/multimap_single.cc: Likewise.
2691 * testsuite/unordered_multimap/insert/multimap_single_move-1.cc:
2692 Likewise.
2693 * testsuite/unordered_multimap/insert/multimap_single_move-2.cc:
2694 Likewise.
2695 * testsuite/unordered_multimap/modifiers/emplace.cc: Likewise.
2696 * testsuite/unordered_multimap/modifiers/extract.cc: Likewise.
2697 * testsuite/unordered_multimap/modifiers/merge.cc: Likewise.
2698 * testsuite/unordered_multimap/modifiers/reserve.cc: Likewise.
2699 * testsuite/unordered_multimap/operations/count.cc: Likewise.
2700 * testsuite/unordered_multimap/operators/1.cc: Likewise.
2701 * testsuite/unordered_multimap/operators/2.cc: Likewise.
2702 * testsuite/unordered_multiset/allocator/copy.cc: Likewise.
2703 * testsuite/unordered_multiset/allocator/copy_assign.cc: Likewise.
2704 * testsuite/unordered_multiset/allocator/minimal.cc: Likewise.
2705 * testsuite/unordered_multiset/allocator/move.cc: Likewise.
2706 * testsuite/unordered_multiset/allocator/move_assign.cc: Likewise.
2707 * testsuite/unordered_multiset/allocator/swap.cc: Likewise.
2708 * testsuite/unordered_multiset/cons/copy.cc: Likewise.
2709 * testsuite/unordered_multiset/cons/moveable.cc: Likewise.
2710 * testsuite/unordered_multiset/debug/construct5_neg.cc: Likewise.
2711 * testsuite/unordered_multiset/debug/move_assign_neg.cc: Likewise.
2712 * testsuite/unordered_multiset/debug/move_neg.cc: Likewise.
2713 * testsuite/unordered_multiset/erase/1.cc: Likewise.
2714 * testsuite/unordered_multiset/erase/2.cc: Likewise.
2715 * testsuite/unordered_multiset/erase/24061-multiset.cc: Likewise.
2716 * testsuite/unordered_multiset/hash_policy/dr1189.cc: Likewise.
2717 * testsuite/unordered_multiset/init-list.cc: Likewise.
2718 * testsuite/unordered_multiset/insert/24061-multiset.cc: Likewise.
2719 * testsuite/unordered_multiset/insert/51866.cc: Likewise.
2720 * testsuite/unordered_multiset/insert/52476.cc: Likewise.
2721 * testsuite/unordered_multiset/insert/53115.cc: Likewise.
2722 * testsuite/unordered_multiset/insert/hash_policy.cc: Likewise.
2723 * testsuite/unordered_multiset/insert/multiset_range.cc: Likewise.
2724 * testsuite/unordered_multiset/insert/multiset_single.cc: Likewise.
2725 * testsuite/unordered_multiset/insert/multiset_single_move.cc: Likewise.
2726 * testsuite/unordered_multiset/modifiers/emplace.cc: Likewise.
2727 * testsuite/unordered_multiset/modifiers/extract.cc: Likewise.
2728 * testsuite/unordered_multiset/modifiers/merge.cc: Likewise.
2729 * testsuite/unordered_multiset/modifiers/reserve.cc: Likewise.
2730 * testsuite/unordered_multiset/operations/count.cc: Likewise.
2731 * testsuite/unordered_multiset/operators/1.cc: Likewise.
2732 * testsuite/unordered_set/allocator/copy.cc: Likewise.
2733 * testsuite/unordered_set/allocator/copy_assign.cc: Likewise.
2734 * testsuite/unordered_set/allocator/ext_ptr.cc: Likewise.
2735 * testsuite/unordered_set/allocator/minimal.cc: Likewise.
2736 * testsuite/unordered_set/allocator/move.cc: Likewise.
2737 * testsuite/unordered_set/allocator/move_assign.cc: Likewise.
2738 * testsuite/unordered_set/allocator/swap.cc: Likewise.
2739 * testsuite/unordered_set/buckets/swap.cc: Likewise.
2740 * testsuite/unordered_set/cons/moveable.cc: Likewise.
2741 * testsuite/unordered_set/debug/construct5_neg.cc: Likewise.
2742 * testsuite/unordered_set/debug/debug_functions.cc: Likewise.
2743 * testsuite/unordered_set/debug/move_assign_neg.cc: Likewise.
2744 * testsuite/unordered_set/debug/move_neg.cc: Likewise.
2745 * testsuite/unordered_set/erase/1.cc: Likewise.
2746 * testsuite/unordered_set/erase/24061-set.cc: Likewise.
2747 * testsuite/unordered_set/hash_policy/26132.cc: Likewise.
2748 * testsuite/unordered_set/hash_policy/71181.cc: Likewise.
2749 * testsuite/unordered_set/hash_policy/dr1189.cc: Likewise.
2750 * testsuite/unordered_set/hash_policy/load_factor.cc: Likewise.
2751 * testsuite/unordered_set/hash_policy/power2_rehash.cc: Likewise.
2752 * testsuite/unordered_set/hash_policy/prime_rehash.cc: Likewise.
2753 * testsuite/unordered_set/hash_policy/rehash.cc: Likewise.
2754 * testsuite/unordered_set/init-list.cc: Likewise.
2755 * testsuite/unordered_set/insert/24061-set.cc: Likewise.
2756 * testsuite/unordered_set/insert/hash_policy.cc: Likewise.
2757 * testsuite/unordered_set/insert/move_range.cc: Likewise.
2758 * testsuite/unordered_set/insert/set_range.cc: Likewise.
2759 * testsuite/unordered_set/insert/set_single.cc: Likewise.
2760 * testsuite/unordered_set/insert/set_single_move.cc: Likewise.
2761 * testsuite/unordered_set/max_load_factor/robustness.cc: Likewise.
2762 * testsuite/unordered_set/modifiers/emplace.cc: Likewise.
2763 * testsuite/unordered_set/modifiers/extract.cc: Likewise.
2764 * testsuite/unordered_set/modifiers/merge.cc: Likewise.
2765 * testsuite/unordered_set/modifiers/reserve.cc: Likewise.
2766 * testsuite/unordered_set/modifiers/swap.cc: Likewise.
2767 * testsuite/unordered_set/operations/count.cc: Likewise.
2768 * testsuite/unordered_set/operators/1.cc: Likewise.
2769 * testsuite/vector/allocator/copy.cc: Likewise.
2770 * testsuite/vector/allocator/copy_assign.cc: Likewise.
2771 * testsuite/vector/allocator/ext_ptr.cc: Likewise.
2772 * testsuite/vector/allocator/minimal.cc: Likewise.
2773 * testsuite/vector/allocator/move.cc: Likewise.
2774 * testsuite/vector/allocator/move_assign.cc: Likewise.
2775 * testsuite/vector/allocator/swap.cc: Likewise.
2776 * testsuite/vector/bool/6886.cc: Likewise.
2777 * testsuite/vector/bool/72847.cc: Likewise.
2778 * testsuite/vector/bool/allocator/copy.cc: Likewise.
2779 * testsuite/vector/bool/allocator/copy_assign.cc: Likewise.
2780 * testsuite/vector/bool/allocator/ext_ptr.cc: Likewise.
2781 * testsuite/vector/bool/allocator/move.cc: Likewise.
2782 * testsuite/vector/bool/allocator/move_assign.cc: Likewise.
2783 * testsuite/vector/bool/allocator/swap.cc: Likewise.
2784 * testsuite/vector/bool/capacity/1.cc: Likewise.
2785 * testsuite/vector/bool/capacity/29134.cc: Likewise.
2786 * testsuite/vector/bool/capacity/shrink_to_fit.cc: Likewise.
2787 * testsuite/vector/bool/cons/1.cc: Likewise.
2788 * testsuite/vector/bool/cons/2.cc: Likewise.
2789 * testsuite/vector/bool/modifiers/erase/1.cc: Likewise.
2790 * testsuite/vector/bool/modifiers/insert/1.cc: Likewise.
2791 * testsuite/vector/bool/modifiers/insert/31370.cc: Likewise.
2792 * testsuite/vector/bool/modifiers/swap/1.cc: Likewise.
2793 * testsuite/vector/bool/modifiers/swap/2.cc: Likewise.
2794 * testsuite/vector/bool/swap.cc: Likewise.
2795 * testsuite/vector/capacity/1.cc: Likewise.
2796 * testsuite/vector/capacity/2.cc: Likewise.
2797 * testsuite/vector/capacity/29134-2.cc: Likewise.
2798 * testsuite/vector/capacity/29134.cc: Likewise.
2799 * testsuite/vector/capacity/44190.cc: Likewise.
2800 * testsuite/vector/capacity/8230.cc: Likewise.
2801 * testsuite/vector/capacity/reserve/moveable.cc: Likewise.
2802 * testsuite/vector/capacity/reserve/moveable2.cc: Likewise.
2803 * testsuite/vector/capacity/resize/1.cc: Likewise.
2804 * testsuite/vector/capacity/resize/moveable.cc: Likewise.
2805 * testsuite/vector/capacity/resize/moveable2.cc: Likewise.
2806 * testsuite/vector/capacity/resize/resize_size.cc: Likewise.
2807 * testsuite/vector/capacity/shrink_to_fit.cc: Likewise.
2808 * testsuite/vector/capacity/shrink_to_fit2.cc: Likewise.
2809 * testsuite/vector/cons/3.cc: Likewise.
2810 * testsuite/vector/cons/4.cc: Likewise.
2811 * testsuite/vector/cons/cons_size.cc: Likewise.
2812 * testsuite/vector/cons/moveable.cc: Likewise.
2813 * testsuite/vector/data_access/1.cc: Likewise.
2814 * testsuite/vector/debug/debug_functions.cc: Likewise.
2815 * testsuite/vector/debug/move_assign_neg.cc: Likewise.
2816 * testsuite/vector/debug/move_neg.cc: Likewise.
2817 * testsuite/vector/debug/multithreaded_swap.cc: Likewise.
2818 * testsuite/vector/element_access/1.cc: Likewise.
2819 * testsuite/vector/ext_pointer/citerators.cc: Likewise.
2820 * testsuite/vector/ext_pointer/data_access.cc: Likewise.
2821 * testsuite/vector/ext_pointer/modifiers/element.cc: Likewise.
2822 * testsuite/vector/ext_pointer/modifiers/erase.cc: Likewise.
2823 * testsuite/vector/ext_pointer/modifiers/insert.cc: Likewise.
2824 * testsuite/vector/ext_pointer/resize.cc: Likewise.
2825 * testsuite/vector/modifiers/1.cc: Likewise.
2826 * testsuite/vector/modifiers/2.cc: Likewise.
2827 * testsuite/vector/modifiers/emplace/self_emplace.cc: Likewise.
2828 * testsuite/vector/modifiers/erase/1.cc: Likewise.
2829 * testsuite/vector/modifiers/erase/moveable.cc: Likewise.
2830 * testsuite/vector/modifiers/insert/1.cc: Likewise.
2831 * testsuite/vector/modifiers/insert/self_insert.cc: Likewise.
2832 * testsuite/vector/modifiers/moveable.cc: Likewise.
2833 * testsuite/vector/modifiers/moveable2.cc: Likewise.
2834 * testsuite/vector/modifiers/push_back/49836.cc: Likewise.
2835 * testsuite/vector/modifiers/swap/1.cc: Likewise.
2836 * testsuite/vector/modifiers/swap/2.cc: Likewise.
2837 * testsuite/vector/modifiers/swap/3.cc: Likewise.
2838 * testsuite/vector/zero_sized_allocations.cc: Likewise.
2839
28402016-10-17 Jonathan Wakely <jwakely@redhat.com>
2841
2842 PR libstdc++/77998
2843 * include/std/future (__future_base::_Deferred_state)
2844 (__future_base::_Async_state_impl): Use decltype to deduce return
2845 type, instead of _Invoker::result_type.
2846 * include/std/thread (thread::_Invoker::operator()): Likewise.
2847 (thread::_Invoker::result_type): Remove.
2848
2849 PR libstdc++/77987
2850 * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
2851 value to pointer of the correct type to swap, to support conversions
2852 allowed by LWG 2118 / N4089.
2853 * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
2854 incompatible deleters from ...
2855 * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
2856 * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
2857 incompatible pointers to ...
2858 * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
2859 destructor definition to base class. Test for invalid derived-to-base
2860 conversion.
2861
2862 * doc/xml/manual/status_cxx2017.xml: Update status.
2863 * doc/html/*: Regenerate.
2864 * include/bits/deque.tcc (deque::emplace_front, deque::emplace_back):
2865 Return a reference in C++17 mode.
2866 * include/bits/forward_list.h (forward_list::emplace_front): Likewise.
2867 * include/bits/stl_bvector.h (vector<bool>::emplace_back): Likewise.
2868 * include/bits/stl_deque.h (deque::emplace_front, deque::emplace_back):
2869 Likewise.
2870 * include/bits/stl_list.h (list::emplace_front, list::emplace_back):
2871 Likewise.
2872 * include/bits/stl_queue.h (queue::emplace): Likewise.
2873 * include/bits/stl_stack.h (stack::emplace): Likewise.
2874 * include/bits/stl_vector.h (vector::emplace_back): Likewise.
2875 * include/bits/vector.tcc (vector::emplace_back): Likewise.
2876 * include/debug/deque (__gnu_debug::deque::emplace_front)
2877 (__gnu_debug::deque::emplace_back): Likewise.
2878 * include/debug/vector (__gnu_debug::vector::emplace_back): Likewise.
2879 * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
2880 New.
2881 * testsuite/23_containers/forward_list/modifiers/
2882 emplace_cxx17_return.cc: New.
2883 * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc: New.
2884 * testsuite/23_containers/queue/members/emplace_cxx17_return.cc: New.
2885 * testsuite/23_containers/stack/members/emplace_cxx17_return.cc: New.
2886 * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc: New.
2887 * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
2888 New.
2889
28902016-10-16 Paolo Carlini <paolo.carlini@oracle.com>
2891
2892 * testsuite/22_locale/classification/isblank.cc: Remove 'test'
2893 variables.
2894 * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
2895 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Likewise.
2896 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
2897 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
2898 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
2899 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Likewise.
2900 * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
2901 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc: Likewise.
2902 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
2903 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
2904 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
2905 * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
2906 * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Likewise.
2907 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
2908 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
2909 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
2910 * testsuite/22_locale/codecvt/in/wchar_t/5.cc: Likewise.
2911 * testsuite/22_locale/codecvt/in/wchar_t/6.cc: Likewise.
2912 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise.
2913 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
2914 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
2915 * testsuite/22_locale/codecvt/length/char/1.cc: Likewise.
2916 * testsuite/22_locale/codecvt/length/char/2.cc: Likewise.
2917 * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Likewise.
2918 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.
2919 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.
2920 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
2921 * testsuite/22_locale/codecvt/length/wchar_t/5.cc: Likewise.
2922 * testsuite/22_locale/codecvt/length/wchar_t/6.cc: Likewise.
2923 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.
2924 * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
2925 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Likewise.
2926 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.
2927 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.
2928 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.
2929 * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
2930 * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Likewise.
2931 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.
2932 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.
2933 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
2934 * testsuite/22_locale/codecvt/out/wchar_t/5.cc: Likewise.
2935 * testsuite/22_locale/codecvt/out/wchar_t/6.cc: Likewise.
2936 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.
2937 * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
2938 * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
2939 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
2940 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
2941 * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
2942 * testsuite/22_locale/collate/compare/char/1.cc: Likewise.
2943 * testsuite/22_locale/collate/compare/char/2.cc: Likewise.
2944 * testsuite/22_locale/collate/compare/char/3.cc: Likewise.
2945 * testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.
2946 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.
2947 * testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.
2948 * testsuite/22_locale/collate/hash/char/1.cc: Likewise.
2949 * testsuite/22_locale/collate/hash/char/2.cc: Likewise.
2950 * testsuite/22_locale/collate/hash/wchar_t/1.cc: Likewise.
2951 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.
2952 * testsuite/22_locale/collate/transform/char/2.cc: Likewise.
2953 * testsuite/22_locale/collate/transform/char/28277.cc: Likewise.
2954 * testsuite/22_locale/collate/transform/char/3.cc: Likewise.
2955 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise.
2956 * testsuite/22_locale/collate/transform/wchar_t/28277.cc: Likewise.
2957 * testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise.
2958 * testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
2959 * testsuite/22_locale/ctype/cons/char/1.cc: Likewise.
2960 * testsuite/22_locale/ctype/is/char/1.cc: Likewise.
2961 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
2962 * testsuite/22_locale/ctype/is/char/3.cc: Likewise.
2963 * testsuite/22_locale/ctype/is/char/9858.cc: Likewise.
2964 * testsuite/22_locale/ctype/is/wchar_t/1.cc: Likewise.
2965 * testsuite/22_locale/ctype/is/wchar_t/11740.cc: Likewise.
2966 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
2967 * testsuite/22_locale/ctype/narrow/char/1.cc: Likewise.
2968 * testsuite/22_locale/ctype/narrow/char/19955.cc: Likewise.
2969 * testsuite/22_locale/ctype/narrow/char/2.cc: Likewise.
2970 * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Likewise.
2971 * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Likewise.
2972 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise.
2973 * testsuite/22_locale/ctype/scan/char/1.cc: Likewise.
2974 * testsuite/22_locale/ctype/scan/wchar_t/1.cc: Likewise.
2975 * testsuite/22_locale/ctype/to/char/1.cc: Likewise.
2976 * testsuite/22_locale/ctype/to/wchar_t/1.cc: Likewise.
2977 * testsuite/22_locale/ctype/widen/char/1.cc: Likewise.
2978 * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Likewise.
2979 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.
2980 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.
2981 * testsuite/22_locale/ctype_base/11844.cc: Likewise.
2982 * testsuite/22_locale/facet/1.cc: Likewise.
2983 * testsuite/22_locale/facet/2.cc: Likewise.
2984 * testsuite/22_locale/facet/25421.cc: Likewise.
2985 * testsuite/22_locale/global_templates/1.cc: Likewise.
2986 * testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
2987 Likewise.
2988 * testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
2989 Likewise.
2990 * testsuite/22_locale/locale/13630.cc: Likewise.
2991 * testsuite/22_locale/locale/cons/12352.cc: Likewise.
2992 * testsuite/22_locale/locale/cons/12438.cc: Likewise.
2993 * testsuite/22_locale/locale/cons/2.cc: Likewise.
2994 * testsuite/22_locale/locale/cons/29217.cc: Likewise.
2995 * testsuite/22_locale/locale/cons/38365.cc: Likewise.
2996 * testsuite/22_locale/locale/cons/38368.cc: Likewise.
2997 * testsuite/22_locale/locale/cons/4.cc: Likewise.
2998 * testsuite/22_locale/locale/cons/40184.cc: Likewise.
2999 * testsuite/22_locale/locale/cons/5.cc: Likewise.
3000 * testsuite/22_locale/locale/cons/6.cc: Likewise.
3001 * testsuite/22_locale/locale/cons/7.cc: Likewise.
3002 * testsuite/22_locale/locale/cons/7222-c.cc: Likewise.
3003 * testsuite/22_locale/locale/cons/7222-env.cc: Likewise.
3004 * testsuite/22_locale/locale/cons/8.cc: Likewise.
3005 * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
3006 * testsuite/22_locale/locale/global_locale_objects/1.cc: Likewise.
3007 * testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.
3008 * testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
3009 * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
3010 * testsuite/22_locale/locale/operations/1.cc: Likewise.
3011 * testsuite/22_locale/locale/operations/2.cc: Likewise.
3012 * testsuite/22_locale/messages/13631.cc: Likewise.
3013 * testsuite/22_locale/messages/members/char/1.cc: Likewise.
3014 * testsuite/22_locale/messages/members/char/2.cc: Likewise.
3015 * testsuite/22_locale/messages/members/char/3.cc: Likewise.
3016 * testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.
3017 * testsuite/22_locale/money_get/get/char/1.cc: Likewise.
3018 * testsuite/22_locale/money_get/get/char/10.cc: Likewise.
3019 * testsuite/22_locale/money_get/get/char/11.cc: Likewise.
3020 * testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
3021 * testsuite/22_locale/money_get/get/char/12.cc: Likewise.
3022 * testsuite/22_locale/money_get/get/char/13.cc: Likewise.
3023 * testsuite/22_locale/money_get/get/char/14.cc: Likewise.
3024 * testsuite/22_locale/money_get/get/char/15.cc: Likewise.
3025 * testsuite/22_locale/money_get/get/char/16.cc: Likewise.
3026 * testsuite/22_locale/money_get/get/char/17.cc: Likewise.
3027 * testsuite/22_locale/money_get/get/char/18.cc: Likewise.
3028 * testsuite/22_locale/money_get/get/char/19.cc: Likewise.
3029 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
3030 * testsuite/22_locale/money_get/get/char/22131.cc: Likewise.
3031 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
3032 * testsuite/22_locale/money_get/get/char/38399.cc: Likewise.
3033 * testsuite/22_locale/money_get/get/char/39168.cc: Likewise.
3034 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
3035 * testsuite/22_locale/money_get/get/char/5.cc: Likewise.
3036 * testsuite/22_locale/money_get/get/char/6.cc: Likewise.
3037 * testsuite/22_locale/money_get/get/char/7.cc: Likewise.
3038 * testsuite/22_locale/money_get/get/char/8.cc: Likewise.
3039 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
3040 * testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.
3041 * testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.
3042 * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
3043 * testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.
3044 * testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.
3045 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Likewise.
3046 * testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.
3047 * testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.
3048 * testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.
3049 * testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.
3050 * testsuite/22_locale/money_get/get/wchar_t/19.cc: Likewise.
3051 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
3052 * testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
3053 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
3054 * testsuite/22_locale/money_get/get/wchar_t/38399.cc: Likewise.
3055 * testsuite/22_locale/money_get/get/wchar_t/39168.cc: Likewise.
3056 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
3057 * testsuite/22_locale/money_get/get/wchar_t/5.cc: Likewise.
3058 * testsuite/22_locale/money_get/get/wchar_t/6.cc: Likewise.
3059 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
3060 * testsuite/22_locale/money_get/get/wchar_t/8.cc: Likewise.
3061 * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
3062 * testsuite/22_locale/money_put/put/char/12971.cc: Likewise.
3063 * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
3064 * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
3065 * testsuite/22_locale/money_put/put/char/39168.cc: Likewise.
3066 * testsuite/22_locale/money_put/put/char/4.cc: Likewise.
3067 * testsuite/22_locale/money_put/put/char/5.cc: Likewise.
3068 * testsuite/22_locale/money_put/put/char/6.cc: Likewise.
3069 * testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.
3070 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
3071 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
3072 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
3073 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
3074 * testsuite/22_locale/money_put/put/wchar_t/39168.cc: Likewise.
3075 * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
3076 * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
3077 * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
3078 * testsuite/22_locale/moneypunct/40712.cc: Likewise.
3079 * testsuite/22_locale/moneypunct/members/char/1.cc: Likewise.
3080 * testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
3081 * testsuite/22_locale/moneypunct/members/wchar_t/1.cc: Likewise.
3082 * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.
3083 * testsuite/22_locale/moneypunct/requirements/false/intl.cc: Likewise.
3084 * testsuite/22_locale/moneypunct/requirements/true/intl.cc: Likewise.
3085 * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
3086 * testsuite/22_locale/num_get/get/char/1.cc: Likewise.
3087 * testsuite/22_locale/num_get/get/char/10.cc: Likewise.
3088 * testsuite/22_locale/num_get/get/char/11.cc: Likewise.
3089 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
3090 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
3091 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
3092 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
3093 * testsuite/22_locale/num_get/get/char/16.cc: Likewise.
3094 * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
3095 * testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
3096 * testsuite/22_locale/num_get/get/char/23953.cc: Likewise.
3097 * testsuite/22_locale/num_get/get/char/3.cc: Likewise.
3098 * testsuite/22_locale/num_get/get/char/37958.cc: Likewise.
3099 * testsuite/22_locale/num_get/get/char/39168.cc: Likewise.
3100 * testsuite/22_locale/num_get/get/char/39802.cc: Likewise.
3101 * testsuite/22_locale/num_get/get/char/4.cc: Likewise.
3102 * testsuite/22_locale/num_get/get/char/5.cc: Likewise.
3103 * testsuite/22_locale/num_get/get/char/6.cc: Likewise.
3104 * testsuite/22_locale/num_get/get/char/7.cc: Likewise.
3105 * testsuite/22_locale/num_get/get/char/8.cc: Likewise.
3106 * testsuite/22_locale/num_get/get/char/9.cc: Likewise.
3107 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
3108 * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
3109 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
3110 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
3111 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
3112 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
3113 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
3114 * testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
3115 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Likewise.
3116 * testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
3117 * testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
3118 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.
3119 * testsuite/22_locale/num_get/get/wchar_t/37958.cc: Likewise.
3120 * testsuite/22_locale/num_get/get/wchar_t/39168.cc: Likewise.
3121 * testsuite/22_locale/num_get/get/wchar_t/39802.cc: Likewise.
3122 * testsuite/22_locale/num_get/get/wchar_t/4.cc: Likewise.
3123 * testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.
3124 * testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.
3125 * testsuite/22_locale/num_get/get/wchar_t/7.cc: Likewise.
3126 * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
3127 * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
3128 * testsuite/22_locale/num_put/put/char/1.cc: Likewise.
3129 * testsuite/22_locale/num_put/put/char/10.cc: Likewise.
3130 * testsuite/22_locale/num_put/put/char/11.cc: Likewise.
3131 * testsuite/22_locale/num_put/put/char/12.cc: Likewise.
3132 * testsuite/22_locale/num_put/put/char/14220.cc: Likewise.
3133 * testsuite/22_locale/num_put/put/char/15565.cc: Likewise.
3134 * testsuite/22_locale/num_put/put/char/2.cc: Likewise.
3135 * testsuite/22_locale/num_put/put/char/20909.cc: Likewise.
3136 * testsuite/22_locale/num_put/put/char/20914.cc: Likewise.
3137 * testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
3138 * testsuite/22_locale/num_put/put/char/3.cc: Likewise.
3139 * testsuite/22_locale/num_put/put/char/38196.cc: Likewise.
3140 * testsuite/22_locale/num_put/put/char/38210.cc: Likewise.
3141 * testsuite/22_locale/num_put/put/char/4.cc: Likewise.
3142 * testsuite/22_locale/num_put/put/char/5.cc: Likewise.
3143 * testsuite/22_locale/num_put/put/char/6.cc: Likewise.
3144 * testsuite/22_locale/num_put/put/char/7.cc: Likewise.
3145 * testsuite/22_locale/num_put/put/char/8.cc: Likewise.
3146 * testsuite/22_locale/num_put/put/char/9.cc: Likewise.
3147 * testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise.
3148 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
3149 * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
3150 * testsuite/22_locale/num_put/put/wchar_t/11.cc: Likewise.
3151 * testsuite/22_locale/num_put/put/wchar_t/12.cc: Likewise.
3152 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3153 * testsuite/22_locale/num_put/put/wchar_t/15565.cc: Likewise.
3154 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
3155 * testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.
3156 * testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.
3157 * testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.
3158 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
3159 * testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.
3160 * testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.
3161 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
3162 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
3163 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
3164 * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3165 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
3166 * testsuite/22_locale/num_put/put/wchar_t/9.cc: Likewise.
3167 * testsuite/22_locale/numpunct/members/char/1.cc: Likewise.
3168 * testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
3169 * testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
3170 * testsuite/22_locale/numpunct/members/char/cache_1.cc: Likewise.
3171 * testsuite/22_locale/numpunct/members/char/cache_2.cc: Likewise.
3172 * testsuite/22_locale/numpunct/members/pod/1.cc: Likewise.
3173 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Likewise.
3174 * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.
3175 * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: Likewise.
3176 * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: Likewise.
3177 * testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.
3178 * testsuite/22_locale/time_get/date_order/char/1.cc: Likewise.
3179 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Likewise.
3180 * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
3181 * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
3182 * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
3183 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
3184 * testsuite/22_locale/time_get/get_date/char/1.cc: Likewise.
3185 * testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
3186 * testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
3187 * testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.
3188 * testsuite/22_locale/time_get/get_date/char/26701.cc: Likewise.
3189 * testsuite/22_locale/time_get/get_date/char/3.cc: Likewise.
3190 * testsuite/22_locale/time_get/get_date/char/5.cc: Likewise.
3191 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
3192 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise.
3193 * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
3194 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.
3195 * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
3196 * testsuite/22_locale/time_get/get_date/wchar_t/3.cc: Likewise.
3197 * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.
3198 * testsuite/22_locale/time_get/get_date/wchar_t/5.cc: Likewise.
3199 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
3200 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.
3201 * testsuite/22_locale/time_get/get_monthname/char/3.cc: Likewise.
3202 * testsuite/22_locale/time_get/get_monthname/char/4.cc: Likewise.
3203 * testsuite/22_locale/time_get/get_monthname/char/5.cc: Likewise.
3204 * testsuite/22_locale/time_get/get_monthname/char/6.cc: Likewise.
3205 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
3206 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
3207 * testsuite/22_locale/time_get/get_monthname/wchar_t/3.cc: Likewise.
3208 * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: Likewise.
3209 * testsuite/22_locale/time_get/get_monthname/wchar_t/5.cc: Likewise.
3210 * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
3211 * testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
3212 * testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
3213 * testsuite/22_locale/time_get/get_time/char/3.cc: Likewise.
3214 * testsuite/22_locale/time_get/get_time/char/4.cc: Likewise.
3215 * testsuite/22_locale/time_get/get_time/char/5.cc: Likewise.
3216 * testsuite/22_locale/time_get/get_time/char/6.cc: Likewise.
3217 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
3218 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
3219 * testsuite/22_locale/time_get/get_time/wchar_t/3.cc: Likewise.
3220 * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
3221 * testsuite/22_locale/time_get/get_time/wchar_t/5.cc: Likewise.
3222 * testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
3223 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
3224 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
3225 * testsuite/22_locale/time_get/get_weekday/char/3.cc: Likewise.
3226 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Likewise.
3227 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3228 * testsuite/22_locale/time_get/get_weekday/char/5.cc: Likewise.
3229 * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
3230 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
3231 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
3232 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
3233 * testsuite/22_locale/time_get/get_weekday/wchar_t/5.cc: Likewise.
3234 * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
3235 * testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
3236 * testsuite/22_locale/time_get/get_year/char/3.cc: Likewise.
3237 * testsuite/22_locale/time_get/get_year/char/5.cc: Likewise.
3238 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
3239 * testsuite/22_locale/time_get/get_year/wchar_t/3.cc: Likewise.
3240 * testsuite/22_locale/time_get/get_year/wchar_t/5.cc: Likewise.
3241 * testsuite/22_locale/time_put/put/char/1.cc: Likewise.
3242 * testsuite/22_locale/time_put/put/char/10.cc: Likewise.
3243 * testsuite/22_locale/time_put/put/char/12439_1.cc: Likewise.
3244 * testsuite/22_locale/time_put/put/char/12439_3.cc: Likewise.
3245 * testsuite/22_locale/time_put/put/char/17038.cc: Likewise.
3246 * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
3247 * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
3248 * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
3249 * testsuite/22_locale/time_put/put/char/5.cc: Likewise.
3250 * testsuite/22_locale/time_put/put/char/6.cc: Likewise.
3251 * testsuite/22_locale/time_put/put/char/7.cc: Likewise.
3252 * testsuite/22_locale/time_put/put/char/8.cc: Likewise.
3253 * testsuite/22_locale/time_put/put/char/9.cc: Likewise.
3254 * testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.
3255 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
3256 * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
3257 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3258 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3259 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3260 * testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
3261 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
3262 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
3263 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
3264 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
3265 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
3266 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
3267 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
3268 * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
3269 * testsuite/30_threads/async/42819.cc: Likewise.
3270 * testsuite/30_threads/async/any.cc: Likewise.
3271 * testsuite/30_threads/async/async.cc: Likewise.
3272 * testsuite/30_threads/async/except.cc: Likewise.
3273 * testsuite/30_threads/async/launch.cc: Likewise.
3274 * testsuite/30_threads/async/sync.cc: Likewise.
3275 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3276 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3277 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3278 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3279 * testsuite/30_threads/condition_variable/members/3.cc: Likewise.
3280 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3281 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3282 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3283 * testsuite/30_threads/future/members/45133.cc: Likewise.
3284 * testsuite/30_threads/future/members/get.cc: Likewise.
3285 * testsuite/30_threads/future/members/get2.cc: Likewise.
3286 * testsuite/30_threads/future/members/share.cc: Likewise.
3287 * testsuite/30_threads/future/members/valid.cc: Likewise.
3288 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3289 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3290 * testsuite/30_threads/lock/1.cc: Likewise.
3291 * testsuite/30_threads/lock/2.cc: Likewise.
3292 * testsuite/30_threads/lock/3.cc: Likewise.
3293 * testsuite/30_threads/lock/4.cc: Likewise.
3294 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3295 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3296 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3297 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3298 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3299 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3300 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3301 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3302 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3303 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3304 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3305 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3306 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3307 * testsuite/30_threads/packaged_task/members/at_thread_exit.cc:
3308 Likewise.
3309 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3310 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3311 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3312 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3313 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3314 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3315 * testsuite/30_threads/promise/cons/move.cc: Likewise.
3316 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3317 * testsuite/30_threads/promise/members/at_thread_exit.cc: Likewise.
3318 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3319 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3320 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3321 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3322 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3323 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3324 Likewise.
3325 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3326 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3327 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3328 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3329 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3330 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3331 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3332 Likewise.
3333 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3334 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3335 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3336 Likewise.
3337 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3338 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3339 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3340 Likewise.
3341 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3342 Likewise.
3343 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3344 Likewise.
3345 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3346 Likewise.
3347 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3348 Likewise.
3349 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3350 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3351 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3352 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3353 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3354 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3355 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3356 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
3357 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
3358 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
3359 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
3360 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
3361 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
3362 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
3363 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
3364 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
3365 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
3366 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
3367 * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
3368 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
3369 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
3370 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
3371 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc: Likewise.
3372 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
3373 * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: Likewise.
3374 * testsuite/30_threads/this_thread/1.cc: Likewise.
3375 * testsuite/30_threads/this_thread/2.cc: Likewise.
3376 * testsuite/30_threads/this_thread/3.cc: Likewise.
3377 * testsuite/30_threads/this_thread/4.cc: Likewise.
3378 * testsuite/30_threads/this_thread/60421.cc: Likewise.
3379 * testsuite/30_threads/thread/cons/1.cc: Likewise.
3380 * testsuite/30_threads/thread/cons/2.cc: Likewise.
3381 * testsuite/30_threads/thread/cons/3.cc: Likewise.
3382 * testsuite/30_threads/thread/cons/4.cc: Likewise.
3383 * testsuite/30_threads/thread/cons/5.cc: Likewise.
3384 * testsuite/30_threads/thread/cons/6.cc: Likewise.
3385 * testsuite/30_threads/thread/cons/7.cc: Likewise.
3386 * testsuite/30_threads/thread/cons/8.cc: Likewise.
3387 * testsuite/30_threads/thread/cons/9.cc: Likewise.
3388 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3389 * testsuite/30_threads/thread/members/1.cc: Likewise.
3390 * testsuite/30_threads/thread/members/2.cc: Likewise.
3391 * testsuite/30_threads/thread/members/3.cc: Likewise.
3392 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3393 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3394 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3395 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3396 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3397 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3398 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3399 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3400 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3401 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3402 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3403 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3404 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3405 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
3406 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3407 * testsuite/30_threads/try_lock/1.cc: Likewise.
3408 * testsuite/30_threads/try_lock/2.cc: Likewise.
3409 * testsuite/30_threads/try_lock/3.cc: Likewise.
3410 * testsuite/30_threads/try_lock/4.cc: Likewise.
3411 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3412 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3413 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3414 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3415 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3416 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3417 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3418 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3419 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3420 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3421 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3422 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3423 not_shared.cc: Likewise.
3424 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3425 not_shared2.cc: Likewise.
3426 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3427 not_shared3.cc: Likewise.
3428 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3429 shared.cc: Likewise.
3430 * testsuite/tr1/2_general_utilities/enable_shared_from_this/
3431 still_shared.cc: Likewise.
3432 * testsuite/tr1/2_general_utilities/shared_ptr/assign/assign.cc:
3433 Likewise.
3434 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
3435 Likewise.
3436 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
3437 Likewise.
3438 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3439 auto_ptr_rvalue_neg.cc: Likewise.
3440 * testsuite/tr1/2_general_utilities/shared_ptr/assign/shared_ptr.cc:
3441 Likewise.
3442 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3443 shared_ptr_neg.cc: Likewise.
3444 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
3445 Likewise.
3446 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
3447 Likewise.
3448 * testsuite/tr1/2_general_utilities/shared_ptr/cons/copy.cc: Likewise.
3449 * testsuite/tr1/2_general_utilities/shared_ptr/cons/default.cc:
3450 Likewise.
3451 * testsuite/tr1/2_general_utilities/shared_ptr/cons/pointer.cc:
3452 Likewise.
3453 * testsuite/tr1/2_general_utilities/shared_ptr/cons/weak_ptr.cc:
3454 Likewise.
3455 * testsuite/tr1/2_general_utilities/shared_ptr/dest/dest.cc: Likewise.
3456 * testsuite/tr1/2_general_utilities/shared_ptr/misc/24595.cc: Likewise.
3457 * testsuite/tr1/2_general_utilities/shared_ptr/misc/io.cc: Likewise.
3458 * testsuite/tr1/2_general_utilities/shared_ptr/misc/swap.cc: Likewise.
3459 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset.cc:
3460 Likewise.
3461 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
3462 Likewise.
3463 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap.cc:
3464 Likewise.
3465 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/swap_neg.cc:
3466 Likewise.
3467 * testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
3468 Likewise.
3469 * testsuite/tr1/2_general_utilities/shared_ptr/observers/get.cc:
3470 Likewise.
3471 * testsuite/tr1/2_general_utilities/shared_ptr/observers/unique.cc:
3472 Likewise.
3473 * testsuite/tr1/2_general_utilities/shared_ptr/observers/use_count.cc:
3474 Likewise.
3475 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3476 default_weaktoshared.cc: Likewise.
3477 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3478 mutex_weaktoshared.cc: Likewise.
3479 * testsuite/tr1/3_function_objects/bind/all_bound.cc: Likewise.
3480 * testsuite/tr1/3_function_objects/bind/mixed.cc: Likewise.
3481 * testsuite/tr1/3_function_objects/bind/nested.cc: Likewise.
3482 * testsuite/tr1/3_function_objects/bind/placeholders.cc: Likewise.
3483 * testsuite/tr1/3_function_objects/bind/ref.cc: Likewise.
3484 * testsuite/tr1/3_function_objects/function/1.cc: Likewise.
3485 * testsuite/tr1/3_function_objects/function/2.cc: Likewise.
3486 * testsuite/tr1/3_function_objects/function/3.cc: Likewise.
3487 * testsuite/tr1/3_function_objects/function/4.cc: Likewise.
3488 * testsuite/tr1/3_function_objects/function/5.cc: Likewise.
3489 * testsuite/tr1/3_function_objects/function/6.cc: Likewise.
3490 * testsuite/tr1/3_function_objects/function/7.cc: Likewise.
3491 * testsuite/tr1/3_function_objects/function/8.cc: Likewise.
3492 * testsuite/tr1/3_function_objects/function/9.cc: Likewise.
3493 * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
3494 Likewise.
3495 * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
3496 Likewise.
3497 * testsuite/tr1/3_function_objects/result_of.cc: Likewise.
3498 * testsuite/tr1/4_metaprogramming/add_const/value.cc: Likewise.
3499 * testsuite/tr1/4_metaprogramming/add_cv/value.cc: Likewise.
3500 * testsuite/tr1/4_metaprogramming/add_pointer/value.cc: Likewise.
3501 * testsuite/tr1/4_metaprogramming/add_reference/value.cc: Likewise.
3502 * testsuite/tr1/4_metaprogramming/add_volatile/value.cc: Likewise.
3503 * testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: Likewise.
3504 * testsuite/tr1/4_metaprogramming/alignment_of/value.cc: Likewise.
3505 * testsuite/tr1/4_metaprogramming/extent/value.cc: Likewise.
3506 * testsuite/tr1/4_metaprogramming/has_nothrow_assign/value.cc: Likewise.
3507 * testsuite/tr1/4_metaprogramming/has_nothrow_constructor/value.cc:
3508 Likewise.
3509 * testsuite/tr1/4_metaprogramming/has_nothrow_copy/value.cc: Likewise.
3510 * testsuite/tr1/4_metaprogramming/has_trivial_assign/value.cc: Likewise.
3511 * testsuite/tr1/4_metaprogramming/has_trivial_constructor/value.cc:
3512 Likewise.
3513 * testsuite/tr1/4_metaprogramming/has_trivial_copy/value.cc: Likewise.
3514 * testsuite/tr1/4_metaprogramming/has_trivial_destructor/value.cc:
3515 Likewise.
3516 * testsuite/tr1/4_metaprogramming/has_virtual_destructor/value.cc:
3517 Likewise.
3518 * testsuite/tr1/4_metaprogramming/integral_constant/
3519 static_definition.cc: Likewise.
3520 * testsuite/tr1/4_metaprogramming/integral_constant/
3521 true_false_value.cc: Likewise.
3522 * testsuite/tr1/4_metaprogramming/is_abstract/value.cc: Likewise.
3523 * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc: Likewise.
3524 * testsuite/tr1/4_metaprogramming/is_array/value.cc: Likewise.
3525 * testsuite/tr1/4_metaprogramming/is_base_of/value.cc: Likewise.
3526 * testsuite/tr1/4_metaprogramming/is_class/value.cc: Likewise.
3527 * testsuite/tr1/4_metaprogramming/is_compound/value.cc: Likewise.
3528 * testsuite/tr1/4_metaprogramming/is_const/value.cc: Likewise.
3529 * testsuite/tr1/4_metaprogramming/is_convertible/value.cc: Likewise.
3530 * testsuite/tr1/4_metaprogramming/is_empty/value.cc: Likewise.
3531 * testsuite/tr1/4_metaprogramming/is_enum/24808.cc: Likewise.
3532 * testsuite/tr1/4_metaprogramming/is_enum/value.cc: Likewise.
3533 * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc: Likewise.
3534 * testsuite/tr1/4_metaprogramming/is_function/24808.cc: Likewise.
3535 * testsuite/tr1/4_metaprogramming/is_function/value.cc: Likewise.
3536 * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc: Likewise.
3537 * testsuite/tr1/4_metaprogramming/is_integral/value.cc: Likewise.
3538 * testsuite/tr1/4_metaprogramming/is_member_function_pointer/value.cc:
3539 Likewise.
3540 * testsuite/tr1/4_metaprogramming/is_member_object_pointer/value.cc:
3541 Likewise.
3542 * testsuite/tr1/4_metaprogramming/is_member_pointer/value.cc: Likewise.
3543 * testsuite/tr1/4_metaprogramming/is_object/24808.cc: Likewise.
3544 * testsuite/tr1/4_metaprogramming/is_object/value.cc: Likewise.
3545 * testsuite/tr1/4_metaprogramming/is_pod/value.cc: Likewise.
3546 * testsuite/tr1/4_metaprogramming/is_pointer/value.cc: Likewise.
3547 * testsuite/tr1/4_metaprogramming/is_polymorphic/value.cc: Likewise.
3548 * testsuite/tr1/4_metaprogramming/is_reference/value.cc: Likewise.
3549 * testsuite/tr1/4_metaprogramming/is_same/value.cc: Likewise.
3550 * testsuite/tr1/4_metaprogramming/is_scalar/value.cc: Likewise.
3551 * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
3552 * testsuite/tr1/4_metaprogramming/is_union/value.cc: Likewise.
3553 * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc: Likewise.
3554 * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
3555 * testsuite/tr1/4_metaprogramming/is_volatile/value.cc: Likewise.
3556 * testsuite/tr1/4_metaprogramming/rank/value.cc: Likewise.
3557 * testsuite/tr1/4_metaprogramming/remove_all_extents/value.cc: Likewise.
3558 * testsuite/tr1/4_metaprogramming/remove_const/value.cc: Likewise.
3559 * testsuite/tr1/4_metaprogramming/remove_cv/value.cc: Likewise.
3560 * testsuite/tr1/4_metaprogramming/remove_extent/value.cc: Likewise.
3561 * testsuite/tr1/4_metaprogramming/remove_pointer/value.cc: Likewise.
3562 * testsuite/tr1/4_metaprogramming/remove_reference/value.cc: Likewise.
3563 * testsuite/tr1/4_metaprogramming/remove_volatile/value.cc: Likewise.
3564 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3565 equal.cc: Likewise.
3566 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3567 not_equal.cc: Likewise.
3568 * testsuite/tr1/5_numerical_facilities/random/discard_block/operators/
3569 serialize.cc: Likewise.
3570 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3571 cons/default.cc: Likewise.
3572 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3573 cons/gen1.cc: Likewise.
3574 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3575 operators/equal.cc: Likewise.
3576 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3577 operators/not_equal.cc: Likewise.
3578 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
3579 operators/serialize.cc: Likewise.
3580 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3581 cons/default.cc: Likewise.
3582 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3583 cons/gen1.cc: Likewise.
3584 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3585 operators/equal.cc: Likewise.
3586 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3587 operators/not_equal.cc: Likewise.
3588 * testsuite/tr1/5_numerical_facilities/random/mersenne_twister/
3589 operators/serialize.cc: Likewise.
3590 * testsuite/tr1/5_numerical_facilities/random/minstd_rand.cc: Likewise.
3591 * testsuite/tr1/5_numerical_facilities/random/minstd_rand0.cc: Likewise.
3592 * testsuite/tr1/5_numerical_facilities/random/mt19937.cc: Likewise.
3593 * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3594 default.cc: Likewise.
3595 * testsuite/tr1/5_numerical_facilities/random/random_device/cons/
3596 token.cc: Likewise.
3597 * testsuite/tr1/5_numerical_facilities/random/ranlux3.cc: Likewise.
3598 * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc: Likewise.
3599 * testsuite/tr1/5_numerical_facilities/random/ranlux4.cc: Likewise.
3600 * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc
3601 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3602 cons/default.cc: Likewise.
3603 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3604 cons/gen1.cc: Likewise.
3605 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3606 operators/equal.cc: Likewise.
3607 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3608 operators/not_equal.cc: Likewise.
3609 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/
3610 operators/serialize.cc: Likewise.
3611 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3612 cons/default.cc: Likewise.
3613 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3614 cons/gen1.cc: Likewise.
3615 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3616 operators/equal.cc: Likewise.
3617 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3618 operators/not_equal.cc: Likewise.
3619 * testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/
3620 operators/serialize.cc: Likewise.
3621 * testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
3622 Likewise.
3623 * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3624 default.cc: Likewise.
3625 * testsuite/tr1/5_numerical_facilities/random/uniform_int/cons/
3626 range.cc: Likewise.
3627 * testsuite/tr1/5_numerical_facilities/random/xor_combine/cons/
3628 default.cc: Likewise.
3629 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3630 equal.cc: Likewise.
3631 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3632 not_equal.cc: Likewise.
3633 * testsuite/tr1/5_numerical_facilities/random/xor_combine/operators/
3634 serialize.cc: Likewise.
3635 * testsuite/tr1/5_numerical_facilities/special_functions/
3636 08_cyl_bessel_i/check_value.cc: Likewise.
3637 * testsuite/tr1/5_numerical_facilities/special_functions/
3638 08_cyl_bessel_i/pr56216.cc: Likewise.
3639 * testsuite/tr1/5_numerical_facilities/special_functions/
3640 09_cyl_bessel_j/check_value.cc: Likewise.
3641 * testsuite/tr1/5_numerical_facilities/special_functions/
3642 10_cyl_bessel_k/check_value.cc: Likewise.
3643 * testsuite/tr1/5_numerical_facilities/special_functions/
3644 11_cyl_neumann/check_value.cc: Likewise.
3645 * testsuite/tr1/5_numerical_facilities/special_functions/
3646 16_hermite/check_value.cc: Likewise.
3647 * testsuite/tr1/5_numerical_facilities/special_functions/
3648 21_sph_bessel/check_value.cc: Likewise.
3649 * testsuite/tr1/5_numerical_facilities/special_functions/
3650 23_sph_neumann/check_value.cc: Likewise.
3651 * testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
3652 * testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
3653 * testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
3654 * testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
3655 Likewise.
3656 * testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
3657 Likewise.
3658 * testsuite/tr1/6_containers/array/comparison_operators/
3659 greater_or_equal.cc: Likewise.
3660 * testsuite/tr1/6_containers/array/comparison_operators/less.cc:
3661 Likewise.
3662 * testsuite/tr1/6_containers/array/comparison_operators/
3663 less_or_equal.cc: Likewise.
3664 * testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
3665 Likewise.
3666 * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
3667 Likewise.
3668 * testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
3669 * testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
3670 * testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
3671 * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
3672 Likewise.
3673 * testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
3674 * testsuite/tr1/6_containers/array/requirements/contiguous.cc: Likewise.
3675 * testsuite/tr1/6_containers/array/requirements/member_swap.cc:
3676 Likewise.
3677 * testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
3678 Likewise.
3679 * testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
3680 Likewise.
3681 * testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
3682 * testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
3683 Likewise.
3684 * testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
3685 Likewise.
3686 * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
3687 * testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
3688 *
3689 testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
3690 Likewise.
3691 * testsuite/tr1/6_containers/tuple/cons/assignment.cc: Likewise.
3692 * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
3693 * testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
3694 * testsuite/tr1/6_containers/tuple/creation_functions/23978.cc:
3695 Likewise.
3696 * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
3697 Likewise.
3698 * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Likewise.
3699 * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Likewise.
3700 * testsuite/tr1/6_containers/tuple/element_access/get.cc: Likewise.
3701 * testsuite/tr1/6_containers/tuple/tuple_size.cc: Likewise.
3702 * testsuite/tr1/6_containers/unordered_map/24064.cc: Likewise.
3703 * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
3704 Likewise.
3705 * testsuite/tr1/6_containers/unordered_map/erase/1.cc: Likewise.
3706 * testsuite/tr1/6_containers/unordered_map/erase/24061-map.cc: Likewise.
3707 * testsuite/tr1/6_containers/unordered_map/find/map1.cc: Likewise.
3708 * testsuite/tr1/6_containers/unordered_map/insert/24061-map.cc:
3709 Likewise.
3710 * testsuite/tr1/6_containers/unordered_map/insert/array_syntax.cc:
3711 Likewise.
3712 * testsuite/tr1/6_containers/unordered_map/insert/map_range.cc:
3713 Likewise.
3714 * testsuite/tr1/6_containers/unordered_map/insert/map_single.cc:
3715 Likewise.
3716 * testsuite/tr1/6_containers/unordered_map/swap/1.cc: Likewise.
3717 * testsuite/tr1/6_containers/unordered_map/swap/2.cc: Likewise.
3718 * testsuite/tr1/6_containers/unordered_multimap/capacity/
3719 29134-multimap.cc: Likewise.
3720 * testsuite/tr1/6_containers/unordered_multimap/erase/1.cc: Likewise.
3721 * testsuite/tr1/6_containers/unordered_multimap/erase/
3722 24061-multimap.cc: Likewise.
3723 * testsuite/tr1/6_containers/unordered_multimap/find/multimap1.cc:
3724 Likewise.
3725 * testsuite/tr1/6_containers/unordered_multimap/insert/
3726 24061-multimap.cc: Likewise.
3727 * testsuite/tr1/6_containers/unordered_multimap/insert/
3728 multimap_range.cc: Likewise.
3729 * testsuite/tr1/6_containers/unordered_multimap/insert/
3730 multimap_single.cc: Likewise.
3731 * testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Likewise.
3732 * testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Likewise.
3733 * testsuite/tr1/6_containers/unordered_multiset/24054.cc: Likewise.
3734 * testsuite/tr1/6_containers/unordered_multiset/capacity/
3735 29134-multiset.cc: Likewise.
3736 * testsuite/tr1/6_containers/unordered_multiset/erase/1.cc: Likewise.
3737 * testsuite/tr1/6_containers/unordered_multiset/erase/
3738 24061-multiset.cc: Likewise.
3739 * testsuite/tr1/6_containers/unordered_multiset/find/multiset1.cc:
3740 Likewise.
3741 * testsuite/tr1/6_containers/unordered_multiset/insert/
3742 24061-multiset.cc: Likewise.
3743 * testsuite/tr1/6_containers/unordered_multiset/insert/
3744 multiset_range.cc: Likewise.
3745 * testsuite/tr1/6_containers/unordered_multiset/insert/
3746 multiset_single.cc: Likewise.
3747 * testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Likewise.
3748 * testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Likewise.
3749 * testsuite/tr1/6_containers/unordered_set/23465.cc: Likewise.
3750 * testsuite/tr1/6_containers/unordered_set/26132.cc: Likewise.
3751 * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
3752 Likewise.
3753 * testsuite/tr1/6_containers/unordered_set/erase/1.cc: Likewise.
3754 * testsuite/tr1/6_containers/unordered_set/erase/24061-set.cc: Likewise.
3755 * testsuite/tr1/6_containers/unordered_set/find/set1.cc: Likewise.
3756 * testsuite/tr1/6_containers/unordered_set/insert/24061-set.cc:
3757 Likewise.
3758 * testsuite/tr1/6_containers/unordered_set/insert/set_range.cc:
3759 Likewise.
3760 * testsuite/tr1/6_containers/unordered_set/insert/set_single.cc:
3761 Likewise.
3762 * testsuite/tr1/6_containers/unordered_set/swap/1.cc: Likewise.
3763 * testsuite/tr1/6_containers/unordered_set/swap/2.cc: Likewise.
3764 * testsuite/tr1/6_containers/utility/pair.cc: Likewise.
3765 * testsuite/tr1/7_regular_expressions/match_results/ctors/char/
3766 default.cc: Likewise.
3767 * testsuite/tr1/7_regular_expressions/regex_traits/char/
3768 translate_nocase.cc: Likewise.
3769 * testsuite/tr1/7_regular_expressions/regex_traits/char/value.cc:
3770 Likewise.
3771 * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/
3772 translate_nocase.cc: Likewise.
3773 * testsuite/tr1/7_regular_expressions/regex_traits/wchar_t/value.cc:
3774 Likewise.
3775 * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
3776 * testsuite/tr1/8_c_compatibility/complex/overloads_int.cc: Likewise.
3777
37782016-10-16 Ville Voutilainen <ville.voutilainen@gmail.com>
3779
3780 Make sure the return value of malloc_allocator::allocate
3781 is zero-initialized so that checking it for non-zero works
3782 later.
3783 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
3784 Initialize the return value.
3785 * testsuite/ext/malloc_allocator/sanity.cc: New.
3786
37872016-10-14 Eelis van der Weegen <eelis@eelis.net>
3788
3789 * include/bits/stl_algo.h (shuffle): Extract two random numbers from
3790 each generator invocation when its range is large enough.
3791
37922016-10-14 Jonathan Wakely <jwakely@redhat.com>
3793
3794 * testsuite/experimental/algorithm/sample.cc: Qualify calls to
3795 resolve ambiguity between std::sample and std::experimental::sample.
3796
3797 * include/std/functional (_Mu<A, false, true>, _Mu<A, true, false>):
3798 Simplify forwarding from tuple of references.
3799 (_Maybe_wrap_member_pointer): Remove.
3800 (_Bind::__call, _Bind::__call_c, _Bind::__call_v, _Bind::__call_c_v):
3801 Use std::__invoke.
3802 (_Bind::_Mu_type, _Bind::_Res_type_impl, _Bind::_Res_type)
3803 (_Bind::__dependent, _Bind::_Res_type_cv): New helpers to simplify
3804 return type deduction.
3805 (_Bind::operator(), _Bind::operator() const): Use new helpers.
3806 (_Bind::operator() volatile, _Bind::operator() const volatile):
3807 Likewise. Add deprecated attribute for C++17 mode.
3808 (_Bind_result::__call): Use std::__invoke.
3809 (_Bind_result::operator() volatile)
3810 (_Bind_result::operator() const volatile): Add deprecated attribute.
3811 (_Bind_helper::__maybe_type, _Bindres_helper::__maybe_type): Remove.
3812 (_Bind_helper, _Bindres_helper): Don't use _Maybe_wrap_member_pointer.
3813 (bind, bind<R>): Don't use __maybe_type.
3814 * src/c++11/compatibility-thread-c++0x.cc
3815 (_Maybe_wrap_member_pointer): Define here for compatibility symbols.
3816 * testsuite/20_util/bind/68912.cc: Don't test volatile-qualification
3817 in C++17 mode.
3818 * testsuite/20_util/bind/cv_quals.cc: Likewise.
3819 * testsuite/20_util/bind/cv_quals_2.cc: Likewise.
3820
3821 * include/std/scoped_allocator (scoped_allocator_adaptor): Forward
3822 piecewise construction arguments as tuples of references, to avoid
3823 copies (related to LWG 2511).
3824 * testsuite/20_util/scoped_allocator/construct_pair.cc: New test.
3825
38262016-10-14 Paolo Carlini <paolo.carlini@oracle.com>
3827
3828 * testsuite/26_numerics/accumulate/1.cc: Remove 'test' variables.
3829 * testsuite/26_numerics/adjacent_difference/1.cc: Likewise.
3830 * testsuite/26_numerics/complex/13450.cc: Likewise.
3831 * testsuite/26_numerics/complex/50880.cc: Likewise.
3832 * testsuite/26_numerics/complex/c99.cc: Likewise.
3833 * testsuite/26_numerics/complex/cons/48760.cc: Likewise.
3834 * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
3835 * testsuite/26_numerics/complex/dr781_dr1137.cc: Likewise.
3836 * testsuite/26_numerics/complex/dr844.cc: Likewise.
3837 * testsuite/26_numerics/complex/inserters_extractors/char/1.cc:
3838 Likewise.
3839 * testsuite/26_numerics/complex/inserters_extractors/wchar_t/1.cc:
3840 Likewise.
3841 * testsuite/26_numerics/complex/value_operations/1.cc: Likewise.
3842 * testsuite/26_numerics/complex/value_operations/dr387.cc: Likewise.
3843 * testsuite/26_numerics/headers/cmath/19322.cc: Likewise.
3844 * testsuite/26_numerics/headers/cmath/
3845 c99_classification_macros_c++11.c: Likewise.c
3846 * testsuite/26_numerics/headers/cmath/
3847 c99_classification_macros_c++98.cc: Likewise.
3848 * testsuite/26_numerics/headers/cmath/c_math.cc: Likewise.
3849 * testsuite/26_numerics/headers/cmath/dr550.cc: Likewise.
3850 * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
3851 * testsuite/26_numerics/headers/cmath/powi.cc: Likewise.
3852 * testsuite/26_numerics/headers/cstdlib/13943.cc: Likewise.
3853 * testsuite/26_numerics/inner_product/1.cc: Likewise.
3854 * testsuite/26_numerics/iota/1.cc: Likewise.
3855 * testsuite/26_numerics/partial_sum/1.cc: Likewise.
3856 * testsuite/26_numerics/random/bernoulli_distribution/cons/default.cc:
3857 Likewise.
3858 * testsuite/26_numerics/random/bernoulli_distribution/cons/parms.cc:
3859 Likewise.
3860 * testsuite/26_numerics/random/bernoulli_distribution/operators/
3861 equal.cc: Likewise.
3862 * testsuite/26_numerics/random/bernoulli_distribution/operators/
3863 inequal.cc: Likewise.
3864 * testsuite/26_numerics/random/binomial_distribution/cons/default.cc:
3865 Likewise.
3866 * testsuite/26_numerics/random/binomial_distribution/cons/parms.cc:
3867 Likewise.
3868 * testsuite/26_numerics/random/binomial_distribution/operators/
3869 equal.cc: Likewise.
3870 * testsuite/26_numerics/random/binomial_distribution/operators/
3871 inequal.cc: Likewise.
3872 * testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
3873 Likewise.
3874 * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
3875 Likewise.
3876 * testsuite/26_numerics/random/cauchy_distribution/operators/equal.cc:
3877 Likewise.
3878 * testsuite/26_numerics/random/cauchy_distribution/operators/
3879 inequal.cc: Likewise.
3880 * testsuite/26_numerics/random/chi_squared_distribution/cons/
3881 default.cc: Likewise.
3882 * testsuite/26_numerics/random/chi_squared_distribution/cons/
3883 parms.cc: Likewise.
3884 * testsuite/26_numerics/random/chi_squared_distribution/operators/
3885 equal.cc: Likewise.
3886 * testsuite/26_numerics/random/chi_squared_distribution/operators/
3887 inequal.cc: Likewise.
3888 * testsuite/26_numerics/random/default_random_engine.cc: Likewise.
3889 * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
3890 Likewise.
3891 * testsuite/26_numerics/random/discard_block_engine/operators/equal.cc:
3892 Likewise.
3893 * testsuite/26_numerics/random/discard_block_engine/operators/
3894 inequal.cc: Likewise.
3895 * testsuite/26_numerics/random/discard_block_engine/operators/
3896 serialize.cc: Likewise.
3897 * testsuite/26_numerics/random/discrete_distribution/cons/
3898 default.cc: Likewise.
3899 * testsuite/26_numerics/random/discrete_distribution/cons/
3900 initlist.cc: Likewise.
3901 * testsuite/26_numerics/random/discrete_distribution/cons/
3902 num_xbound_fun.cc: Likewise.
3903 * testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
3904 Likewise.
3905 * testsuite/26_numerics/random/discrete_distribution/operators/
3906 equal.cc: Likewise.
3907 * testsuite/26_numerics/random/discrete_distribution/operators/
3908 inequal.cc: Likewise.
3909 * testsuite/26_numerics/random/exponential_distribution/cons/
3910 default.cc: Likewise.
3911 * testsuite/26_numerics/random/exponential_distribution/cons/
3912 parms.cc: Likewise.
3913 * testsuite/26_numerics/random/exponential_distribution/operators/
3914 equal.cc: Likewise.
3915 * testsuite/26_numerics/random/exponential_distribution/operators/
3916 inequal.cc: Likewise.
3917 * testsuite/26_numerics/random/extreme_value_distribution/cons/
3918 default.cc: Likewise.
3919 * testsuite/26_numerics/random/extreme_value_distribution/cons/
3920 parms.cc: Likewise.
3921 * testsuite/26_numerics/random/extreme_value_distribution/operators/
3922 equal.cc: Likewise.
3923 * testsuite/26_numerics/random/extreme_value_distribution/operators/
3924 inequal.cc: Likewise.
3925 * testsuite/26_numerics/random/fisher_f_distribution/cons/default.cc:
3926 Likewise.
3927 * testsuite/26_numerics/random/fisher_f_distribution/cons/parms.cc:
3928 Likewise.
3929 * testsuite/26_numerics/random/fisher_f_distribution/operators/
3930 equal.cc: Likewise.
3931 * testsuite/26_numerics/random/fisher_f_distribution/operators/
3932 inequal.cc: Likewise.
3933 * testsuite/26_numerics/random/gamma_distribution/cons/default.cc:
3934 Likewise.
3935 * testsuite/26_numerics/random/gamma_distribution/cons/parms.cc:
3936 Likewise.
3937 * testsuite/26_numerics/random/gamma_distribution/operators/equal.cc:
3938 Likewise.
3939 * testsuite/26_numerics/random/gamma_distribution/operators/
3940 inequal.cc: Likewise.
3941 * testsuite/26_numerics/random/geometric_distribution/cons/
3942 default.cc: Likewise.
3943 * testsuite/26_numerics/random/geometric_distribution/cons/parms.cc:
3944 Likewise.
3945 * testsuite/26_numerics/random/geometric_distribution/operators/
3946 equal.cc: Likewise.
3947 * testsuite/26_numerics/random/geometric_distribution/operators/
3948 inequal.cc: Likewise.
3949 * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
3950 Likewise.
3951 * testsuite/26_numerics/random/independent_bits_engine/operators/
3952 equal.cc: Likewise.
3953 * testsuite/26_numerics/random/independent_bits_engine/operators/
3954 inequal.cc: Likewise.
3955 * testsuite/26_numerics/random/independent_bits_engine/operators/
3956 serialize.cc: Likewise.
3957 * testsuite/26_numerics/random/knuth_b.cc: Likewise.
3958 * testsuite/26_numerics/random/linear_congruential_engine/cons/
3959 55215.cc: Likewise.
3960 * testsuite/26_numerics/random/linear_congruential_engine/cons/
3961 default.cc: Likewise.
3962 * testsuite/26_numerics/random/linear_congruential_engine/operators/
3963 51795.cc: Likewise.
3964 * testsuite/26_numerics/random/linear_congruential_engine/operators/
3965 equal.cc: Likewise.
3966 * testsuite/26_numerics/random/linear_congruential_engine/operators/
3967 inequal.cc: Likewise.
3968 * testsuite/26_numerics/random/linear_congruential_engine/operators/
3969 serialize.cc: Likewise.
3970 * testsuite/26_numerics/random/lognormal_distribution/cons/default.cc:
3971 Likewise.
3972 * testsuite/26_numerics/random/lognormal_distribution/cons/parms.cc:
3973 Likewise.
3974 * testsuite/26_numerics/random/lognormal_distribution/operators/
3975 equal.cc: Likewise.
3976 * testsuite/26_numerics/random/lognormal_distribution/operators/
3977 inequal.cc: Likewise.
3978 * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
3979 Likewise.
3980 * testsuite/26_numerics/random/mersenne_twister_engine/cons/
3981 default.cc: Likewise.
3982 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3983 equal.cc: Likewise.
3984 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3985 inequal.cc: Likewise.
3986 * testsuite/26_numerics/random/mersenne_twister_engine/operators/
3987 serialize.cc: Likewise.
3988 * testsuite/26_numerics/random/minstd_rand.cc: Likewise.
3989 * testsuite/26_numerics/random/minstd_rand0.cc: Likewise.
3990 * testsuite/26_numerics/random/mt19937.cc: Likewise.
3991 * testsuite/26_numerics/random/mt19937_64.cc: Likewise.
3992 * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3993 default.cc: Likewise.
3994 * testsuite/26_numerics/random/negative_binomial_distribution/cons/
3995 parms.cc: Likewise.
3996 * testsuite/26_numerics/random/negative_binomial_distribution/
3997 operators/equal.cc: Likewise.
3998 * testsuite/26_numerics/random/negative_binomial_distribution/
3999 operators/inequal.cc: Likewise.
4000 * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
4001 Likewise.
4002 * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
4003 Likewise.
4004 * testsuite/26_numerics/random/normal_distribution/operators/
4005 equal.cc: Likewise.
4006 * testsuite/26_numerics/random/normal_distribution/operators/
4007 inequal.cc: Likewise.
4008 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4009 default.cc: Likewise.
4010 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4011 initlist_fun.cc: Likewise.
4012 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4013 num_xbound_fun.cc: Likewise.
4014 * testsuite/26_numerics/random/piecewise_constant_distribution/cons/
4015 range.cc: Likewise.
4016 * testsuite/26_numerics/random/piecewise_constant_distribution/
4017 operators/equal.cc: Likewise.
4018 * testsuite/26_numerics/random/piecewise_constant_distribution/
4019 operators/inequal.cc: Likewise.
4020 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4021 default.cc: Likewise.
4022 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4023 initlist_fun.cc: Likewise.
4024 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4025 num_xbound_fun.cc: Likewise.
4026 * testsuite/26_numerics/random/piecewise_linear_distribution/cons/
4027 range.cc: Likewise.
4028 * testsuite/26_numerics/random/piecewise_linear_distribution/
4029 operators/equal.cc: Likewise.
4030 * testsuite/26_numerics/random/piecewise_linear_distribution/
4031 operators/inequal.cc: Likewise.
4032 * testsuite/26_numerics/random/poisson_distribution/cons/default.cc:
4033 Likewise.
4034 * testsuite/26_numerics/random/poisson_distribution/cons/parms.cc:
4035 Likewise.
4036 * testsuite/26_numerics/random/poisson_distribution/operators/
4037 equal.cc: Likewise.
4038 * testsuite/26_numerics/random/poisson_distribution/operators/
4039 inequal.cc: Likewise.
4040 * testsuite/26_numerics/random/random_device/cons/default.cc: Likewise.
4041 * testsuite/26_numerics/random/random_device/cons/token.cc: Likewise.
4042 * testsuite/26_numerics/random/ranlux24.cc: Likewise.
4043 * testsuite/26_numerics/random/ranlux24_base.cc: Likewise.
4044 * testsuite/26_numerics/random/ranlux48.cc: Likewise.
4045 * testsuite/26_numerics/random/ranlux48_base.cc: Likewise.
4046 * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Likewise.
4047 * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
4048 Likewise.
4049 * testsuite/26_numerics/random/shuffle_order_engine/operators/
4050 equal.cc: Likewise.
4051 * testsuite/26_numerics/random/shuffle_order_engine/operators/
4052 inequal.cc: Likewise.
4053 * testsuite/26_numerics/random/shuffle_order_engine/operators/
4054 serialize.cc: Likewise.
4055 * testsuite/26_numerics/random/student_t_distribution/cons/
4056 default.cc: Likewise.
4057 * testsuite/26_numerics/random/student_t_distribution/cons/
4058 parms.cc: Likewise.
4059 * testsuite/26_numerics/random/student_t_distribution/operators/
4060 equal.cc: Likewise.
4061 * testsuite/26_numerics/random/student_t_distribution/operators/
4062 inequal.cc: Likewise.
4063 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
4064 55215.cc: Likewise.
4065 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
4066 default.cc: Likewise.
4067 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4068 equal.cc: Likewise.
4069 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4070 inequal.cc: Likewise.
4071 * testsuite/26_numerics/random/subtract_with_carry_engine/operators/
4072 serialize.cc: Likewise.
4073 * testsuite/26_numerics/random/uniform_int_distribution/cons/
4074 default.cc: Likewise.
4075 * testsuite/26_numerics/random/uniform_int_distribution/cons/
4076 parms.cc: Likewise.
4077 * testsuite/26_numerics/random/uniform_int_distribution/operators/
4078 equal.cc: Likewise.
4079 * testsuite/26_numerics/random/uniform_int_distribution/operators/
4080 inequal.cc: Likewise.
4081 * testsuite/26_numerics/random/uniform_real_distribution/cons/
4082 default.cc: Likewise.
4083 * testsuite/26_numerics/random/uniform_real_distribution/cons/
4084 parms.cc: Likewise.
4085 * testsuite/26_numerics/random/uniform_real_distribution/operators/
4086 equal.cc: Likewise.
4087 * testsuite/26_numerics/random/uniform_real_distribution/operators/
4088 inequal.cc: Likewise.
4089 * testsuite/26_numerics/random/weibull_distribution/cons/default.cc:
4090 Likewise.
4091 * testsuite/26_numerics/random/weibull_distribution/cons/parms.cc:
4092 Likewise.
4093 * testsuite/26_numerics/random/weibull_distribution/operators/
4094 equal.cc: Likewise.
4095 * testsuite/26_numerics/random/weibull_distribution/operators/
4096 inequal.cc: Likewise.
4097 * testsuite/26_numerics/slice/1.cc: Likewise.
4098 * testsuite/26_numerics/slice_array/array_assignment.cc: Likewise.
4099 * testsuite/26_numerics/valarray/27867.cc: Likewise.
4100 * testsuite/26_numerics/valarray/28277.cc: Likewise.
4101 * testsuite/26_numerics/valarray/30416.cc: Likewise.
4102 * testsuite/26_numerics/valarray/dr543.cc: Likewise.
4103 * testsuite/26_numerics/valarray/dr630-1.cc: Likewise.
4104 * testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
4105 * testsuite/26_numerics/valarray/dr630-3.C: Likewise.
4106 * testsuite/26_numerics/valarray/init-list.cc: Likewise.
4107 * testsuite/26_numerics/valarray/moveable.cc: Likewise.
4108 * testsuite/26_numerics/valarray/operators.cc: Likewise.
4109 * testsuite/26_numerics/valarray/swap.cc: Likewise.
4110 * testsuite/experimental/deque/erasure.cc: Likewise.
4111 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
4112 Likewise.
4113 * testsuite/experimental/filesystem/iterators/
4114 recursive_directory_iterator.cc: Likewise.
4115 * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
4116 * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
4117 * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
4118 * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
4119 * testsuite/experimental/filesystem/operations/create_directories.cc:
4120 Likewise.
4121 * testsuite/experimental/filesystem/operations/create_directory.cc:
4122 Likewise.
4123 * testsuite/experimental/filesystem/operations/current_path.cc:
4124 Likewise.
4125 * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
4126 * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
4127 * testsuite/experimental/filesystem/operations/last_write_time.cc:
4128 Likewise.
4129 * testsuite/experimental/filesystem/operations/permissions.cc: Likewise.
4130 * testsuite/experimental/filesystem/operations/status.cc: Likewise.
4131 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
4132 Likewise.
4133 * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
4134 * testsuite/experimental/forward_list/erasure.cc: Likewise.
4135 * testsuite/experimental/list/erasure.cc: Likewise.
4136 * testsuite/experimental/map/erasure.cc: Likewise.
4137 * testsuite/experimental/memory/shared_ptr/assign/assign.cc: Likewise.
4138 * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
4139 Likewise.
4140 * testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc: Likewise.
4141 * testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc: Likewise.
4142 * testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc: Likewise.
4143 * testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
4144 Likewise.
4145 * testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc: Likewise.
4146 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
4147 Likewise.
4148 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
4149 Likewise.
4150 * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
4151 Likewise.
4152 * testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
4153 * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Likewise.
4154 * testsuite/experimental/memory/shared_ptr/modifiers/swap.cc: Likewise.
4155 * testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
4156 Likewise.
4157 * testsuite/experimental/memory/shared_ptr/observers/operators.cc:
4158 Likewise.
4159 * testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
4160 Likewise.
4161 * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
4162 Likewise.
4163 * testsuite/experimental/memory_resource/1.cc: Likewise.
4164 * testsuite/experimental/memory_resource/null_memory_resource.cc:
4165 Likewise.
4166 * testsuite/experimental/memory_resource/resource_adaptor.cc: Likewise.
4167 * testsuite/experimental/set/erasure.cc: Likewise.
4168 * testsuite/experimental/string/erasure.cc: Likewise.
4169 * testsuite/experimental/string_view/capacity/1.cc: Likewise.
4170 * testsuite/experimental/string_view/cons/char/1.cc: Likewise.
4171 * testsuite/experimental/string_view/cons/char/2.cc: Likewise.
4172 * testsuite/experimental/string_view/cons/char/3.cc: Likewise.
4173 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
4174 * testsuite/experimental/string_view/cons/wchar_t/2.cc: Likewise.
4175 * testsuite/experimental/string_view/cons/wchar_t/3.cc: Likewise.
4176 * testsuite/experimental/string_view/element_access/char/1.cc: Likewise.
4177 * testsuite/experimental/string_view/element_access/char/empty.cc:
4178 Likewise.
4179 * testsuite/experimental/string_view/element_access/char/
4180 front_back.cc: Likewise.
4181 * testsuite/experimental/string_view/element_access/wchar_t/1.cc:
4182 Likewise.
4183 * testsuite/experimental/string_view/element_access/wchar_t/empty.cc:
4184 Likewise.
4185 * testsuite/experimental/string_view/element_access/wchar_t/
4186 front_back.cc: Likewise.
4187 * testsuite/experimental/string_view/inserters/char/1.cc: Likewise.
4188 * testsuite/experimental/string_view/inserters/char/2.cc: Likewise.
4189 * testsuite/experimental/string_view/inserters/char/3.cc: Likewise.
4190 * testsuite/experimental/string_view/inserters/pod/10081-out.cc:
4191 Likewise.
4192 * testsuite/experimental/string_view/inserters/wchar_t/1.cc: Likewise.
4193 * testsuite/experimental/string_view/inserters/wchar_t/2.cc: Likewise.
4194 * testsuite/experimental/string_view/inserters/wchar_t/3.cc: Likewise.
4195 * testsuite/experimental/string_view/modifiers/remove_prefix/char/
4196 1.cc: Likewise.
4197 * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
4198 1.cc: Likewise.
4199 * testsuite/experimental/string_view/modifiers/remove_suffix/char/
4200 1.cc: Likewise.
4201 * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
4202 1.cc: Likewise.
4203 * testsuite/experimental/string_view/operations/compare/char/1.cc:
4204 Likewise.
4205 * testsuite/experimental/string_view/operations/compare/char/
4206 13650.cc: Likewise.
4207 * testsuite/experimental/string_view/operations/compare/wchar_t/
4208 1.cc: Likewise.
4209 * testsuite/experimental/string_view/operations/compare/wchar_t/
4210 13650.cc: Likewise.
4211 * testsuite/experimental/string_view/operations/copy/char/1.cc:
4212 Likewise.
4213 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
4214 Likewise.
4215 * testsuite/experimental/string_view/operations/data/char/1.cc:
4216 Likewise.
4217 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
4218 Likewise.
4219 * testsuite/experimental/string_view/operations/find/char/1.cc:
4220 Likewise.
4221 * testsuite/experimental/string_view/operations/find/char/2.cc:
4222 Likewise.
4223 * testsuite/experimental/string_view/operations/find/char/3.cc:
4224 Likewise.
4225 * testsuite/experimental/string_view/operations/find/char/4.cc:
4226 Likewise.
4227 * testsuite/experimental/string_view/operations/find/wchar_t/1.cc:
4228 Likewise.
4229 * testsuite/experimental/string_view/operations/find/wchar_t/2.cc:
4230 Likewise.
4231 * testsuite/experimental/string_view/operations/find/wchar_t/3.cc:
4232 Likewise.
4233 * testsuite/experimental/string_view/operations/find/wchar_t/4.cc:
4234 Likewise.
4235 * testsuite/experimental/string_view/operations/rfind/char/1.cc:
4236 Likewise.
4237 * testsuite/experimental/string_view/operations/rfind/char/2.cc:
4238 Likewise.
4239 * testsuite/experimental/string_view/operations/rfind/char/3.cc:
4240 Likewise.
4241 * testsuite/experimental/string_view/operations/rfind/wchar_t/1.cc:
4242 Likewise.
4243 * testsuite/experimental/string_view/operations/rfind/wchar_t/2.cc:
4244 Likewise.
4245 * testsuite/experimental/string_view/operations/rfind/wchar_t/3.cc:
4246 Likewise.
4247 * testsuite/experimental/string_view/operations/substr/char/1.cc:
4248 Likewise.
4249 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
4250 Likewise.
4251 * testsuite/experimental/string_view/operations/to_string/1.cc:
4252 Likewise.
4253 * testsuite/experimental/string_view/operators/char/2.cc: Likewise.
4254 * testsuite/experimental/string_view/operators/wchar_t/2.cc: Likewise.
4255 * testsuite/experimental/unordered_map/erasure.cc: Likewise.
4256 * testsuite/experimental/unordered_set/erasure.cc: Likewise.
4257 * testsuite/experimental/vector/erasure.cc: Likewise.
4258 * testsuite/ext/array_allocator/1.cc: Likewise.
4259 * testsuite/ext/array_allocator/2.cc: Likewise.
4260 * testsuite/ext/array_allocator/3.cc: Likewise.
4261 * testsuite/ext/array_allocator/variadic_construct.cc: Likewise.
4262 * testsuite/ext/bitmap_allocator/variadic_construct.cc: Likewise.
4263 * testsuite/ext/codecvt/1.cc: Likewise.
4264 * testsuite/ext/codecvt/char-1.cc: Likewise.
4265 * testsuite/ext/codecvt/char-2.cc: Likewise.
4266 * testsuite/ext/codecvt/wchar_t.cc: Likewise.
4267 * testsuite/ext/enc_filebuf/char/13189.cc: Likewise.
4268 * testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
4269 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
4270 * testsuite/ext/ext_pointer/1.cc: Likewise.
4271 * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
4272 * testsuite/ext/malloc_allocator/variadic_construct.cc: Likewise.
4273 * testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: Likewise.
4274 * testsuite/ext/mt_allocator/tune-1.cc: Likewise.
4275 * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
4276 * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
4277 * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
4278 * testsuite/ext/mt_allocator/variadic_construct.cc: Likewise.
4279 * testsuite/ext/new_allocator/variadic_construct.cc: Likewise.
4280 * testsuite/ext/pod_char_traits.cc: Likewise.
4281 * testsuite/ext/pool_allocator/variadic_construct.cc: Likewise.
4282 * testsuite/ext/random/arcsine_distribution/cons/default.cc: Likewise.
4283 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: Likewise.
4284 * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
4285 Likewise.
4286 * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
4287 Likewise.
4288 * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
4289 Likewise.
4290 * testsuite/ext/random/beta_distribution/cons/default.cc: Likewise.
4291 * testsuite/ext/random/beta_distribution/cons/parms.cc: Likewise.
4292 * testsuite/ext/random/beta_distribution/operators/equal.cc: Likewise.
4293 * testsuite/ext/random/beta_distribution/operators/inequal.cc: Likewise.
4294 * testsuite/ext/random/hoyt_distribution/cons/default.cc: Likewise.
4295 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
4296 * testsuite/ext/random/hoyt_distribution/operators/equal.cc: Likewise.
4297 * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: Likewise.
4298 * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
4299 Likewise.
4300 * testsuite/ext/random/hypergeometric_distribution/cons/default.cc:
4301 Likewise.
4302 * testsuite/ext/random/hypergeometric_distribution/cons/parms.cc:
4303 Likewise.
4304 * testsuite/ext/random/hypergeometric_distribution/operators/
4305 equal.cc: Likewise.
4306 * testsuite/ext/random/hypergeometric_distribution/operators/
4307 inequal.cc: Likewise.
4308 * testsuite/ext/random/hypergeometric_distribution/operators/
4309 serialize.cc: Likewise.
4310 * testsuite/ext/random/k_distribution/cons/default.cc: Likewise.
4311 * testsuite/ext/random/k_distribution/cons/parms.cc: Likewise.
4312 * testsuite/ext/random/k_distribution/operators/equal.cc: Likewise.
4313 * testsuite/ext/random/k_distribution/operators/inequal.cc: Likewise.
4314 * testsuite/ext/random/k_distribution/operators/serialize.cc: Likewise.
4315 * testsuite/ext/random/logistic_distribution/cons/default.cc: Likewise.
4316 * testsuite/ext/random/logistic_distribution/cons/parms.cc: Likewise.
4317 * testsuite/ext/random/logistic_distribution/operators/equal.cc:
4318 Likewise.
4319 * testsuite/ext/random/logistic_distribution/operators/inequal.cc:
4320 Likewise.
4321 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
4322 Likewise.
4323 * testsuite/ext/random/nakagami_distribution/cons/default.cc: Likewise.
4324 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: Likewise.
4325 * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
4326 Likewise.
4327 * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
4328 Likewise.
4329 * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
4330 Likewise.
4331 * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
4332 * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
4333 * testsuite/ext/random/normal_mv_distribution/operators/equal.cc:
4334 Likewise.
4335 * testsuite/ext/random/normal_mv_distribution/operators/inequal.cc:
4336 Likewise.
4337 * testsuite/ext/random/pareto_distribution/cons/default.cc: Likewise.
4338 * testsuite/ext/random/pareto_distribution/cons/parms.cc: Likewise.
4339 * testsuite/ext/random/pareto_distribution/operators/equal.cc: Likewise.
4340 * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
4341 Likewise.
4342 * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
4343 Likewise.
4344 * testsuite/ext/random/rice_distribution/cons/default.cc: Likewise.
4345 * testsuite/ext/random/rice_distribution/cons/parms.cc: Likewise.
4346 * testsuite/ext/random/rice_distribution/operators/equal.cc: Likewise.
4347 * testsuite/ext/random/rice_distribution/operators/inequal.cc: Likewise.
4348 * testsuite/ext/random/rice_distribution/operators/serialize.cc:
4349 Likewise.
4350 * testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
4351 default.cc: Likewise.
4352 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4353 equal.cc: Likewise.
4354 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4355 inequal.cc: Likewise.
4356 * testsuite/ext/random/simd_fast_mersenne_twister_engine/operators/
4357 serialize.cc: Likewise.
4358 * testsuite/ext/random/triangular_distribution/cons/default.cc:
4359 Likewise.
4360 * testsuite/ext/random/triangular_distribution/cons/parms.cc: Likewise.
4361 * testsuite/ext/random/triangular_distribution/operators/equal.cc:
4362 Likewise.
4363 * testsuite/ext/random/triangular_distribution/operators/inequal.cc:
4364 Likewise.
4365 * testsuite/ext/random/uniform_on_sphere_distribution/cons/default.cc:
4366 Likewise.
4367 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4368 equal.cc: Likewise.
4369 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4370 generate.cc: Likewise.
4371 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4372 inequal.cc: Likewise.
4373 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
4374 serialize.cc: Likewise.
4375 * testsuite/ext/random/von_mises_distribution/cons/default.cc: Likewise.
4376 * testsuite/ext/random/von_mises_distribution/cons/parms.cc: Likewise.
4377 * testsuite/ext/random/von_mises_distribution/operators/equal.cc:
4378 Likewise.
4379 * testsuite/ext/random/von_mises_distribution/operators/inequal.cc:
4380 Likewise.
4381 * testsuite/ext/rope/2.cc: Likewise.
4382 * testsuite/ext/rope/3.cc: Likewise.
4383 * testsuite/ext/rope/4.cc: Likewise.
4384 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
4385 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
4386 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: Likewise.
4387 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
4388 * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
4389 * testsuite/ext/stdio_filebuf/char/10063-1.cc: Likewise.
4390 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
4391 * testsuite/ext/stdio_filebuf/char/10063-3.cc: Likewise.
4392 * testsuite/ext/stdio_filebuf/char/2.cc: Likewise.
4393 * testsuite/ext/stdio_sync_filebuf/char/1.cc: Likewise.
4394 * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: Likewise.
4395 * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: Likewise.
4396 * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: Likewise.
4397 * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: Likewise.
4398 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
4399 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
4400 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: Likewise.
4401 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: Likewise.
4402 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: Likewise.
4403 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: Likewise.
4404 * testsuite/ext/throw_allocator/variadic_construct.cc: Likewise.
4405 * testsuite/ext/type_traits/add_unsigned.cc: Likewise.
4406 * testsuite/ext/type_traits/remove_unsigned.cc: Likewise.
4407 * testsuite/ext/vstring/capacity/29134.cc: Likewise.
4408 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
4409 * testsuite/ext/vstring/cons/58415-1.cc: Likewise.
4410 * testsuite/ext/vstring/cons/moveable.cc: Likewise.
4411 * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
4412 * testsuite/ext/vstring/element_access/char/front_back.cc: Likewise.
4413 * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
4414 * testsuite/ext/vstring/element_access/wchar_t/front_back.cc: Likewise.
4415 * testsuite/ext/vstring/hash/char/1.cc: Likewise.
4416 * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
4417 * testsuite/ext/vstring/init-list.cc: Likewise.
4418 * testsuite/ext/vstring/inserters_extractors/char/28277.cc: Likewise.
4419 * testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: Likewise.
4420 * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Likewise.
4421 * testsuite/ext/vstring/modifiers/pop_back/char/1.cc: Likewise.
4422 * testsuite/ext/vstring/modifiers/pop_back/wchar_t/1.cc: Likewise.
4423 * testsuite/ext/vstring/operators/1.cc: Likewise.
4424 * testsuite/ext/vstring/operators/2.cc: Likewise.
4425
44262016-10-14 Jonathan Wakely <jwakely@redhat.com>
4427
4428 PR libstdc++/65122
4429 * include/ext/malloc_allocator.h (malloc_allocator::allocate): Use
4430 aligned_alloc for types with extended alignment if available,
4431 otherwise throw bad_alloc if malloc doesn't return a suitable value.
4432 * include/ext/bitmap_allocator.h (bitmap_allocator::allocate)
4433 (bitmap_allocator::deallocate): Use aligned new/delete for types with
4434 extended alignment.
4435 * include/ext/mt_allocator.h (__mt_alloc::allocate)
4436 (__mt_alloc::deallocate): Likewise.
4437 * include/ext/new_allocator.h (new_allocator::allocate)
4438 (new_allocator::deallocate): Likewise.
4439 * include/ext/pool_allocator.h (__pool_alloc::allocate)
4440 (__pool_alloc::deallocate): Likewise.
4441 * testsuite/20_util/allocator/overaligned.cc: New test.
4442 * testsuite/ext/bitmap_allocator/overaligned.cc: New test.
4443 * testsuite/ext/malloc_allocator/overaligned.cc: New test.
4444 * testsuite/ext/mt_allocator/overaligned.cc: New test.
4445 * testsuite/ext/new_allocator/overaligned.cc: New test.
4446 * testsuite/ext/pool_allocator/overaligned.cc: New test.
4447
44482016-10-14 Tim Shen <timshen@google.com>
4449
4450 PR libstdc++/77944
4451 * include/std/variant: Include <bits/funcexcept.h> for __try and
4452 __catch.
4453
44542016-10-14 Jonathan Wakely <jwakely@redhat.com>
4455
4456 * include/std/functional (_Reference_wrapper_base_impl): Remove.
4457 (_Refwrap_base_arg1, _Refwrap_base_arg2): New helpers using __void_t.
4458 (_Reference_wrapper_base): Inherit from new helpers.
4459
44602016-10-13 Paolo Carlini <paolo.carlini@oracle.com>
4461
4462 * testsuite/24_iterators/container_access.cc: Remove 'test' variables.
4463 * testsuite/24_iterators/istream_iterator/2.cc: Likewise.
4464 * testsuite/24_iterators/istreambuf_iterator/2.cc: Likewise.
4465 * testsuite/24_iterators/istreambuf_iterator/2627.cc: Likewise.
4466 * testsuite/24_iterators/operations/next.cc: Likewise.
4467 * testsuite/24_iterators/operations/prev.cc: Likewise.
4468 * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
4469 * testsuite/24_iterators/random_access_iterator/26020.cc: Likewise.
4470 * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
4471 * testsuite/24_iterators/reverse_iterator/11729.cc: Likewise.
4472 * testsuite/24_iterators/reverse_iterator/3.cc: Likewise.
4473 * testsuite/25_algorithms/adjacent_find/vectorbool.cc: Likewise.
4474 * testsuite/25_algorithms/all_of/1.cc: Likewise.
4475 * testsuite/25_algorithms/any_of/1.cc: Likewise.
4476 * testsuite/25_algorithms/binary_search/2.cc: Likewise.
4477 * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
4478 * testsuite/25_algorithms/clamp/1.cc: Likewise.
4479 * testsuite/25_algorithms/clamp/2.cc: Likewise.
4480 * testsuite/25_algorithms/copy/1.cc: Likewise.
4481 * testsuite/25_algorithms/copy/2.cc: Likewise.
4482 * testsuite/25_algorithms/copy/3.cc: Likewise.
4483 * testsuite/25_algorithms/copy/34595.cc: Likewise.
4484 * testsuite/25_algorithms/copy/4.cc: Likewise.
4485 * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
4486 * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
4487 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
4488 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
4489 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
4490 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
4491 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
4492 Likewise.
4493 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
4494 Likewise.
4495 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
4496 Likewise.
4497 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
4498 Likewise.
4499 * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
4500 * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
4501 * testsuite/25_algorithms/copy_n/1.cc: Likewise.
4502 * testsuite/25_algorithms/copy_n/2.cc: Likewise.
4503 * testsuite/25_algorithms/copy_n/3.cc: Likewise.
4504 * testsuite/25_algorithms/copy_n/4.cc: Likewise.
4505 * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
4506 * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
4507 * testsuite/25_algorithms/equal_range/2.cc: Likewise.
4508 * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
4509 * testsuite/25_algorithms/fill/1.cc: Likewise.
4510 * testsuite/25_algorithms/fill/2.cc: Likewise.
4511 * testsuite/25_algorithms/fill/3.cc: Likewise.
4512 * testsuite/25_algorithms/fill/4.cc: Likewise.
4513 * testsuite/25_algorithms/fill_n/1.cc: Likewise.
4514 * testsuite/25_algorithms/find/39546.cc: Likewise.
4515 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: Likewise.
4516 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Likewise.
4517 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
4518 Likewise.
4519 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
4520 Likewise.
4521 * testsuite/25_algorithms/find_if/1.cc: Likewise.
4522 * testsuite/25_algorithms/find_if_not/1.cc: Likewise.
4523 * testsuite/25_algorithms/for_each/1.cc: Likewise.
4524 * testsuite/25_algorithms/heap/1.cc: Likewise.
4525 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
4526 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
4527 * testsuite/25_algorithms/heap/vectorbool.cc: Likewise.
4528 * testsuite/25_algorithms/includes/1.cc: Likewise.
4529 * testsuite/25_algorithms/inplace_merge/1.cc: Likewise.
4530 * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
4531 * testsuite/25_algorithms/inplace_merge/moveable.cc: Likewise.
4532 * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
4533 * testsuite/25_algorithms/is_heap/1.cc: Likewise.
4534 * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
4535 * testsuite/25_algorithms/is_partitioned/1.cc: Likewise.
4536 * testsuite/25_algorithms/is_permutation/1.cc: Likewise.
4537 * testsuite/25_algorithms/is_permutation/2.cc: Likewise.
4538 * testsuite/25_algorithms/is_permutation/vectorbool.cc: Likewise.
4539 * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
4540 * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
4541 * testsuite/25_algorithms/iter_swap/20577.cc: Likewise.
4542 * testsuite/25_algorithms/lower_bound/2.cc: Likewise.
4543 * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
4544 * testsuite/25_algorithms/make_heap/complexity.cc: Likewise.
4545 * testsuite/25_algorithms/max/1.cc: Likewise.
4546 * testsuite/25_algorithms/max/2.cc: Likewise.
4547 * testsuite/25_algorithms/max/3.cc: Likewise.
4548 * testsuite/25_algorithms/max/37547.cc: Likewise.
4549 * testsuite/25_algorithms/max/4.cc: Likewise.
4550 * testsuite/25_algorithms/min/1.cc: Likewise.
4551 * testsuite/25_algorithms/min/2.cc: Likewise.
4552 * testsuite/25_algorithms/min/3.cc: Likewise.
4553 * testsuite/25_algorithms/min/37547.cc: Likewise.
4554 * testsuite/25_algorithms/min/4.cc: Likewise.
4555 * testsuite/25_algorithms/minmax/1.cc: Likewise.
4556 * testsuite/25_algorithms/minmax/2.cc: Likewise.
4557 * testsuite/25_algorithms/minmax/3.cc: Likewise.
4558 * testsuite/25_algorithms/minmax/37547.cc: Likewise.
4559 * testsuite/25_algorithms/minmax_element/1.cc: Likewise.
4560 * testsuite/25_algorithms/move/1.cc: Likewise.
4561 * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
4562 * testsuite/25_algorithms/move_backward/1.cc: Likewise.
4563 * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
4564 * testsuite/25_algorithms/next_permutation/moveable.cc: Likewise.
4565 * testsuite/25_algorithms/none_of/1.cc: Likewise.
4566 * testsuite/25_algorithms/nth_element/1.cc: Likewise.
4567 * testsuite/25_algorithms/nth_element/2.cc: Likewise.
4568 * testsuite/25_algorithms/nth_element/3.cc: Likewise.
4569 * testsuite/25_algorithms/nth_element/moveable.cc: Likewise.
4570 * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
4571 * testsuite/25_algorithms/partial_sort/2.cc: Likewise.
4572 * testsuite/25_algorithms/partial_sort/check_compare_by_value.cc:
4573 Likewise.
4574 * testsuite/25_algorithms/partial_sort/moveable.cc: Likewise.
4575 * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
4576 * testsuite/25_algorithms/partial_sort_copy/2.cc: Likewise.
4577 * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
4578 * testsuite/25_algorithms/partition/1.cc: Likewise.
4579 * testsuite/25_algorithms/partition/moveable.cc: Likewise.
4580 * testsuite/25_algorithms/partition_copy/1.cc: Likewise.
4581 * testsuite/25_algorithms/partition_point/1.cc: Likewise.
4582 * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
4583 * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
4584 * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
4585 * testsuite/25_algorithms/random_shuffle/1.cc: Likewise.
4586 * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
4587 * testsuite/25_algorithms/rotate/1.cc: Likewise.
4588 * testsuite/25_algorithms/rotate/moveable.cc: Likewise.
4589 * testsuite/25_algorithms/rotate/moveable2.cc: Likewise.
4590 * testsuite/25_algorithms/rotate/rotate.cc: Likewise.
4591 * testsuite/25_algorithms/search/1.cc: Likewise.
4592 * testsuite/25_algorithms/search_n/58358.cc: Likewise.
4593 * testsuite/25_algorithms/shuffle/1.cc: Likewise.
4594 * testsuite/25_algorithms/sort/1.cc: Likewise.
4595 * testsuite/25_algorithms/sort/check_compare_by_value.cc: Likewise.
4596 * testsuite/25_algorithms/sort/moveable.cc: Likewise.
4597 * testsuite/25_algorithms/sort/random_test.cc: Likewise.
4598 * testsuite/25_algorithms/sort/vectorbool.cc: Likewise.
4599 * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise.
4600 * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
4601 * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
4602 * testsuite/25_algorithms/stable_partition/mem_check.cc: Likewise.
4603 * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
4604 * testsuite/25_algorithms/stable_sort/2.cc: Likewise.
4605 * testsuite/25_algorithms/stable_sort/3.cc: Likewise.
4606 * testsuite/25_algorithms/stable_sort/49559.cc: Likewise.
4607 * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc:
4608 Likewise.
4609 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
4610 * testsuite/25_algorithms/stable_sort/moveable.cc: Likewise.
4611 * testsuite/25_algorithms/stable_sort/moveable2.cc: Likewise.
4612 * testsuite/25_algorithms/swap_ranges/1.cc: Likewise.
4613 * testsuite/25_algorithms/unique/11480.cc: Likewise.
4614 * testsuite/25_algorithms/unique/2.cc: Likewise.
4615 * testsuite/25_algorithms/unique/moveable.cc: Likewise.
4616 * testsuite/25_algorithms/unique_copy/1.cc: Likewise.
4617 * testsuite/25_algorithms/unique_copy/2.cc: Likewise.
4618 * testsuite/25_algorithms/unique_copy/26133.cc: Likewise.
4619 * testsuite/25_algorithms/upper_bound/2.cc: Likewise.
4620 * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
4621 * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: Likewise.
4622 * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc:
4623 Likewise.
4624 * testsuite/28_regex/algorithms/regex_match/basic/string_01.cc:
4625 Likewise.
4626 * testsuite/28_regex/algorithms/regex_match/basic/
4627 string_range_00_03.cc: Likewise.
4628 * testsuite/28_regex/algorithms/regex_match/basic/
4629 string_range_01_03.cc: Likewise.
4630 * testsuite/28_regex/algorithms/regex_match/basic/
4631 string_range_02_03.cc: Likewise.
4632 * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
4633 Likewise.
4634 * testsuite/28_regex/algorithms/regex_match/ecma/char/53622.cc:
4635 Likewise.
4636 * testsuite/28_regex/algorithms/regex_match/ecma/char/57173.cc:
4637 Likewise.
4638 * testsuite/28_regex/algorithms/regex_match/ecma/char/58576.cc:
4639 Likewise.
4640 * testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
4641 Likewise.
4642 * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
4643 Likewise.
4644 * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
4645 Likewise.
4646 * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
4647 Likewise.
4648 * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
4649 Likewise.
4650 * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: Likewise.
4651 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
4652 Likewise.
4653 * testsuite/28_regex/algorithms/regex_match/ecma/char/ungreedy.cc:
4654 Likewise.
4655 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
4656 Likewise.
4657 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/
4658 anymatcher.cc: Likewise.
4659 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
4660 Likewise.
4661 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
4662 Likewise.
4663 * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
4664 Likewise.
4665 * testsuite/28_regex/algorithms/regex_match/extended/
4666 cstring_questionmark.cc: Likewise.
4667 * testsuite/28_regex/algorithms/regex_match/extended/
4668 cstring_range.cc: Likewise.
4669 * testsuite/28_regex/algorithms/regex_match/extended/string_any.cc:
4670 Likewise.
4671 * testsuite/28_regex/algorithms/regex_match/extended/
4672 string_range_00_03.cc: Likewise.
4673 * testsuite/28_regex/algorithms/regex_match/extended/
4674 string_range_01_03.cc: Likewise.
4675 * testsuite/28_regex/algorithms/regex_match/extended/
4676 string_range_02_03.cc: Likewise.
4677 * testsuite/28_regex/algorithms/regex_match/extended/
4678 wstring_locale.cc: Likewise.
4679 * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
4680 Likewise.
4681 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Likewise.
4682 * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
4683 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
4684 Likewise.
4685 * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
4686 Likewise.
4687 * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: Likewise.
4688 * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: Likewise.
4689 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
4690 Likewise.
4691 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
4692 * testsuite/28_regex/basic_regex/assign/char/cstring_op.cc: Likewise.
4693 * testsuite/28_regex/basic_regex/assign/char/moveable.cc: Likewise.
4694 * testsuite/28_regex/basic_regex/assign/char/pstring.cc: Likewise.
4695 * testsuite/28_regex/basic_regex/assign/char/range.cc: Likewise.
4696 * testsuite/28_regex/basic_regex/assign/char/string.cc: Likewise.
4697 * testsuite/28_regex/basic_regex/assign/char/string_op.cc: Likewise.
4698 * testsuite/28_regex/basic_regex/assign/wchar_t/cstring.cc: Likewise.
4699 * testsuite/28_regex/basic_regex/assign/wchar_t/cstring_op.cc: Likewise.
4700 * testsuite/28_regex/basic_regex/assign/wchar_t/pstring.cc: Likewise.
4701 * testsuite/28_regex/basic_regex/assign/wchar_t/range.cc: Likewise.
4702 * testsuite/28_regex/basic_regex/assign/wchar_t/string.cc: Likewise.
4703 * testsuite/28_regex/basic_regex/assign/wchar_t/string_op.cc: Likewise.
4704 * testsuite/28_regex/basic_regex/ctors/basic/pstring_wchar_t.cc:
4705 Likewise.
4706 * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc:
4707 Likewise.
4708 * testsuite/28_regex/basic_regex/ctors/extended/cstring.cc: Likewise.
4709 * testsuite/28_regex/basic_regex/ctors/extended/
4710 string_range_01_02_03.cc: Likewise.
4711 * testsuite/28_regex/basic_regex/ctors/move_char.cc: Likewise.
4712 * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
4713 * testsuite/28_regex/basic_regex/ctors/wchar_t/cstring.cc: Likewise.
4714 * testsuite/28_regex/basic_regex/ctors/wchar_t/default.cc: Likewise.
4715 * testsuite/28_regex/basic_regex/ctors/wchar_t/range.cc: Likewise.
4716 * testsuite/28_regex/basic_regex/imbue/string.cc: Likewise.
4717 * testsuite/28_regex/constants/error_type.cc: Likewise.
4718 * testsuite/28_regex/constants/match_flag_type.cc: Likewise.
4719 * testsuite/28_regex/init-list.cc: Likewise.
4720 * testsuite/28_regex/iterators/regex_iterator/char/64140.cc: Likewise.
4721 * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
4722 Likewise.
4723 * testsuite/28_regex/iterators/regex_iterator/char/
4724 string_position_01.cc
4725 * testsuite/28_regex/iterators/regex_iterator/ctors/char/default.cc:
4726 Likewise.
4727 * testsuite/28_regex/iterators/regex_iterator/ctors/wchar_t/
4728 default.cc: Likewise.
4729 * testsuite/28_regex/iterators/regex_iterator/typedefs.cc: Likewise.
4730 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
4731 Likewise.
4732 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
4733 Likewise.
4734 * testsuite/28_regex/iterators/regex_token_iterator/64303.cc: Likewise.
4735 * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
4736 Likewise.
4737 * testsuite/28_regex/iterators/regex_token_iterator/ctors/char/
4738 default.cc: Likewise.
4739 * testsuite/28_regex/iterators/regex_token_iterator/ctors/wchar_t/
4740 default.cc: Likewise.
4741 * testsuite/28_regex/iterators/regex_token_iterator/typedefs.cc:
4742 Likewise.
4743 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4744 string_01.cc: Likewise.
4745 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
4746 wstring_02.cc: Likewise.
4747 * testsuite/28_regex/match_results/ctors/char/default.cc: Likewise.
4748 * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
4749 * testsuite/28_regex/match_results/format.cc: Likewise.
4750 * testsuite/28_regex/match_results/out_of_range_submatches.cc: Likewise.
4751 * testsuite/28_regex/match_results/swap.cc: Likewise.
4752 * testsuite/28_regex/match_results/typedefs.cc: Likewise.
4753 * testsuite/28_regex/regex_error/regex_error.cc: Likewise.
4754 * testsuite/28_regex/regression.cc: Likewise.
4755 * testsuite/28_regex/sub_match/cast_char.cc: Likewise.
4756 * testsuite/28_regex/sub_match/cast_wchar_t.cc: Likewise.
4757 * testsuite/28_regex/sub_match/embedded_zeros_cmp.cc: Likewise.
4758 * testsuite/28_regex/sub_match/length.cc: Likewise.
4759 * testsuite/28_regex/traits/char/ctor.cc: Likewise.
4760 * testsuite/28_regex/traits/char/isctype.cc: Likewise.
4761 * testsuite/28_regex/traits/char/length.cc: Likewise.
4762 * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
4763 * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
4764 * testsuite/28_regex/traits/char/transform.cc: Likewise.
4765 * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
4766 * testsuite/28_regex/traits/char/translate.cc: Likewise.
4767 * testsuite/28_regex/traits/char/translate_nocase.cc: Likewise.
4768 * testsuite/28_regex/traits/char/user_defined.cc: Likewise.
4769 * testsuite/28_regex/traits/char/value.cc: Likewise.
4770 * testsuite/28_regex/traits/wchar_t/ctor.cc: Likewise.
4771 * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
4772 * testsuite/28_regex/traits/wchar_t/length.cc: Likewise.
4773 * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: Likewise.
4774 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
4775 * testsuite/28_regex/traits/wchar_t/transform.cc: Likewise.
4776 * testsuite/28_regex/traits/wchar_t/transform_primary.cc: Likewise.
4777 * testsuite/28_regex/traits/wchar_t/translate.cc: Likewise.
4778 * testsuite/28_regex/traits/wchar_t/translate_nocase.cc: Likewise.
4779 * testsuite/28_regex/traits/wchar_t/user_defined.cc: Likewise.
4780 * testsuite/28_regex/traits/wchar_t/value.cc: Likewise.
4781 * testsuite/29_atomics/atomic/60658.cc: Likewise.
4782 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
4783 * testsuite/29_atomics/atomic_flag/clear/1.cc: Likewise.
4784 * testsuite/backward/11460.cc: Likewise.
4785 * testsuite/backward/hash_map/1.cc: Likewise.
4786 * testsuite/backward/hash_map/25896.cc: Likewise.
4787 * testsuite/backward/hash_set/1.cc: Likewise.
4788 * testsuite/backward/hash_set/25896.cc: Likewise.
4789 * testsuite/decimal/binary-arith.cc: Likewise.
4790 * testsuite/decimal/comparison.cc: Likewise.
4791 * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
4792 * testsuite/decimal/compound-assignment.cc: Likewise.
4793 * testsuite/decimal/conversion-from-float.cc: Likewise.
4794 * testsuite/decimal/conversion-from-integral.cc: Likewise.
4795 * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
4796 * testsuite/decimal/conversion-to-integral.cc: Likewise.
4797 * testsuite/decimal/ctor.cc: Likewise.
4798 * testsuite/decimal/incdec-memfunc.cc: Likewise.
4799 * testsuite/decimal/incdec.cc: Likewise.
4800 * testsuite/decimal/make-decimal.cc: Likewise.
4801 * testsuite/decimal/pr54036-1.cc: Likewise.
4802 * testsuite/decimal/pr54036-2.cc: Likewise.
4803 * testsuite/decimal/pr54036-3.cc: Likewise.
4804 * testsuite/decimal/unary-arith.cc: Likewise.
4805 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: Likewise.
4806 * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
4807 Likewise.
4808 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: Likewise.
4809 * testsuite/special_functions/02_assoc_legendre/check_value.cc:
4810 Likewise.
4811 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
4812 * testsuite/special_functions/03_beta/check_value.cc: Likewise.
4813 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
4814 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: Likewise.
4815 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
4816 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: Likewise.
4817 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
4818 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: Likewise.
4819 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
4820 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Likewise.
4821 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
4822 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
4823 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Likewise.
4824 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
4825 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Likewise.
4826 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
4827 * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
4828 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
4829 * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
4830 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
4831 * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
4832 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
4833 * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
4834 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
4835 * testsuite/special_functions/14_expint/check_value.cc: Likewise.
4836 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
4837 * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
4838 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
4839 * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
4840 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
4841 * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
4842 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
4843 * testsuite/special_functions/18_riemann_zeta/check_value.cc: Likewise.
4844 * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
4845 * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
4846 * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
4847 * testsuite/special_functions/20_sph_legendre/check_value.cc: Likewise.
4848 * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
4849 * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
4850 * testsuite/tr2/bases/value.cc: Likewise.
4851 * testsuite/tr2/direct_bases/value.cc: Likewise.
4852 * testsuite/util/debug/checks.h: Likewise.
4853 * testsuite/util/debug/unordered_checks.h: Likewise.
4854 * testsuite/util/testsuite_allocator.h: Likewise.
4855 * testsuite/util/testsuite_api.h: Likewise.
4856 * testsuite/util/testsuite_common_types.h: Likewise.
4857 * testsuite/util/testsuite_random.h: Likewise.
4858 * testsuite/util/testsuite_rvalref.h: Likewise.
4859
48602016-10-13 Jonathan Wakely <jwakely@redhat.com>
4861
4862 * include/bits/shared_ptr_base.h: Include <functional>.
4863 [!__cpp_rtti]: Do not include <typeinfo>.
4864 * include/experimental/array: Do not include <functional>.
4865 * include/experimental/memory: Include <bits/functional_hash.h>
4866 instead of <functional>.
4867 * include/experimental/propagate_const: Include <bits/stl_function.h>,
4868 <bits/functional_hash.h>, and <bits/move.h> instead of <functional>.
4869 * include/experimental/tuple: Do not include <functional>.
4870 * include/std/future: Include <functional>.
4871 * include/std/memory: Do not include <functional>.
4872 * include/std/mutex: [_GLIBCXX_HAVE_TLS]: Likewise.
4873 * src/c++11/compatibility-thread-c++0x.cc: Include <functional>.
4874 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
4875 missing includes.
4876 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
4877 * testsuite/20_util/specialized_algorithms/memory_management_tools/
4878 1.cc: Likewise.
4879 * testsuite/30_threads/call_once/60497.cc: Likewise.
4880 * testsuite/30_threads/lock/2.cc: Likewise.
4881 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
4882 * testsuite/experimental/algorithm/sample.cc: Likewise.
4883 * testsuite/experimental/array/make_array.cc: Likewise.
4884 * testsuite/experimental/array/neg.cc: Likewise. Adjust dg-error line.
4885 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
4886 Adjust dg-error lines.
4887 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
4888 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
4889 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
4890 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
4891 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
4892
4893 * testsuite/experimental/algorithm/sample.cc: Add missing header.
4894
4895 * include/experimental/propagate_const (element_type): Qualify
4896 declval.
4897
4898 * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
4899 instead of assert.
4900
4901 * include/experiumental/functional (boyer_moore_searcher)
4902 (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
4903 with _GLIBCXX_STD_C.
4904 * include/std/functional: Likewise.
4905
4906 * include/std/chrono (floor): Replace non-constexpr operation.
4907 * testsuite/20_util/duration_cast/rounding.cc: Test conversion to
4908 durations with floating pointer representations.
4909
4910 * src/c++11/compatibility-thread-c++0x.cc (_Bind_simple)
4911 (_Bind_simple_helper, __bind_simple): Restore for ABI compat symbols.
4912
4913 * include/std/functional (_Bind_simple, _Bind_simple_helper)
4914 (__bind_simple): Remove.
4915 * include/std/future: Include <bits/invoke.h> instead of <functional>.
4916 (__future_base::_Task_state::_M_run)
4917 (__future_base::_Task_state::_M_run_delayed): Use lambda expressions
4918 instead of __bind_simple.
4919 (__future_base::_Task_state::_S_maybe_wrap_ref): Remove.
4920 (async): Use thread::__make_invoker instead of __bind_simple.
4921 * include/std/thread: Include <tuple> and <bits/invoke.h> instead of
4922 <functional>.
4923 (thread::_Invoker, thread::__make_invoker): Define helpers to do
4924 INVOKE(DECAY_COPY(f), DECAY_COPY(args)...).
4925
4926 * include/std/functional (_Not_fn): Make exception specifications
4927 depend on whether negating the result can throw.
4928 * testsuite/20_util/not_fn/1.cc: Move to ...
4929 * testsuite/20_util/function_objects/not_fn/1.cc: ... here. Add tests
4930 for types that can throw when negated and that cannot be negated.
4931
4932 * include/bits/invoke.h (__invoke): Fix exception-specification.
4933 * include/std/functional (invoke): Likewise.
4934 * testsuite/20_util/function_objects/invoke/1.cc: New test.
4935
49362016-10-12 Paolo Carlini <paolo.carlini@oracle.com>
4937
4938 * testsuite/util/testsuite_hooks.h: Rewrite VERIFY in terms of
4939 __builtin_printf and __builtin_abort.
4940 * testsuite/lib/libstdc++.exp: Remove _GLIBCXX_ASSERT use.
4941 * scripts/testsuite_flags.in: Likewise.
4942 * testsuite/22_locale/time_get/get/char/1.cc: Likewise.
4943 * testsuite/22_locale/time_get/get/char/2.cc: Likewise.
4944 * testsuite/22_locale/time_get/get/wchar_t/1.cc: Likewise.
4945 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Likewise.
4946 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Likewise, adjust.
4947 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
4948 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
4949 * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise.
4950 * testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: Likewise.
4951 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
4952 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
4953 Likewise.
4954 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
4955 Likewise.
4956 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
4957 Likewise.
4958 * testsuite/27_io/objects/char/7.cc: Likewise.
4959 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
4960 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
4961 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
4962 * testsuite/18_support/50594.cc: Remove 'test' variable, adjust.
4963 * testsuite/18_support/bad_alloc/what.cc: Likewise.
4964 * testsuite/18_support/bad_cast/what.cc: Likewise.
4965 * testsuite/18_support/bad_exception/what.cc: Likewise.
4966 * testsuite/18_support/bad_typeid/what.cc: Likewise.
4967 * testsuite/18_support/exception/38732.cc: Likewise.
4968 * testsuite/18_support/exception/what.cc: Likewise.
4969 * testsuite/18_support/exception_ptr/64241.cc: Likewise.
4970 * testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
4971 * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
4972 * testsuite/18_support/exception_ptr/make_exception_ptr.cc: Likewise.
4973 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
4974 * testsuite/18_support/nested_exception/cons.cc: Likewise.
4975 * testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
4976 * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise.
4977 * testsuite/18_support/nested_exception/rethrow_nested.cc: Likewise.
4978 * testsuite/18_support/nested_exception/throw_with_nested.cc: Likewise.
4979 * testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
4980 * testsuite/18_support/numeric_limits/digits10.cc: Likewise.
4981 * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
4982 * testsuite/18_support/numeric_limits/epsilon.cc: Likewise.
4983 * testsuite/18_support/numeric_limits/is_iec559.cc: Likewise.
4984 * testsuite/18_support/numeric_limits/is_signed.cc: Likewise.
4985 * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
4986 * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
4987 * testsuite/18_support/numeric_limits/min_max.cc: Likewise.
4988 * testsuite/18_support/numeric_limits/specialization_default_values.cc:
4989 Likewise.
4990 * testsuite/18_support/type_info/hash_code.cc: Likewise.
4991 * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
4992 * testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
4993 * testsuite/19_diagnostics/error_category/operators/equal.cc: Likewise.
4994 * testsuite/19_diagnostics/error_category/operators/
4995 not_equal.cc: Likewise.
4996 * testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
4997 * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
4998 * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
4999 * testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
5000 * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
5001 * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
5002 * testsuite/19_diagnostics/error_condition/cons/1.cc: Likewise.
5003 * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
5004 * testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
5005 Likewise.
5006 * testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
5007 * testsuite/19_diagnostics/error_condition/operators/equal.cc:
5008 Likewise.
5009 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
5010 Likewise.
5011 * testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
5012 * testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
5013 * testsuite/19_diagnostics/logic_error/what-3.cc: Likewise.
5014 * testsuite/19_diagnostics/logic_error/what-big.cc: Likewise.
5015 * testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
5016 * testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
5017 * testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
5018 * testsuite/19_diagnostics/runtime_error/what-big.cc: Likewise.
5019 * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
5020 * testsuite/19_diagnostics/system_error/what-1.cc: Likewise.
5021 * testsuite/19_diagnostics/system_error/what-2.cc: Likewise.
5022 * testsuite/19_diagnostics/system_error/what-3.cc: Likewise.
5023 * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
5024 * testsuite/19_diagnostics/system_error/what-big.cc: Likewise.
5025 * testsuite/20_util/addressof/1.cc: Likewise.
5026 * testsuite/20_util/align/1.cc: Likewise.
5027 * testsuite/20_util/align/2.cc: Likewise.
5028 * testsuite/20_util/allocator/1.cc: Likewise.
5029 * testsuite/20_util/allocator/10378.cc: Likewise.
5030 * testsuite/20_util/allocator/8230.cc: Likewise.
5031 * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
5032 Likewise.
5033 * testsuite/20_util/allocator_traits/members/construct.cc: Likewise.
5034 * testsuite/20_util/allocator_traits/members/destroy.cc: Likewise.
5035 * testsuite/20_util/allocator_traits/members/max_size.cc: Likewise.
5036 * testsuite/20_util/any/assign/exception.cc: Likewise.
5037 * testsuite/20_util/auto_ptr/1.cc: Likewise.
5038 * testsuite/20_util/auto_ptr/2.cc: Likewise.
5039 * testsuite/20_util/auto_ptr/3.cc: Likewise.
5040 * testsuite/20_util/auto_ptr/4.cc: Likewise.
5041 * testsuite/20_util/auto_ptr/5.cc: Likewise.
5042 * testsuite/20_util/auto_ptr/6.cc: Likewise.
5043 * testsuite/20_util/auto_ptr/7.cc: Likewise.
5044 * testsuite/20_util/bind/all_bound.cc: Likewise.
5045 * testsuite/20_util/bind/conv_result.cc: Likewise.
5046 * testsuite/20_util/bind/cv_quals.cc: Likewise.
5047 * testsuite/20_util/bind/cv_quals_2.cc
5048 * testsuite/20_util/bind/nested.cc: Likewise.
5049 * testsuite/20_util/bind/placeholders.cc: Likewise.
5050 * testsuite/20_util/bind/ref.cc: Likewise.
5051 * testsuite/20_util/bind/ref2.cc: Likewise.
5052 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
5053 * testsuite/20_util/duration/arithmetic/1.cc: Likewise.
5054 * testsuite/20_util/duration/arithmetic/2.cc: Likewise.
5055 * testsuite/20_util/duration/arithmetic/58850.cc: Likewise.
5056 * testsuite/20_util/duration/arithmetic/dr2020.cc: Likewise.
5057 * testsuite/20_util/duration/arithmetic/dr934-2.cc: Likewise.
5058 * testsuite/20_util/duration/comparison_operators/1.cc: Likewise.
5059 * testsuite/20_util/duration/cons/1.cc: Likewise.
5060 * testsuite/20_util/duration/cons/2.cc: Likewise.
5061 * testsuite/20_util/enable_if/requirements/typedefs.cc: Likewise.
5062 * testsuite/20_util/enable_if/requirements/typedefs_neg.cc: Likewise.
5063 * testsuite/20_util/enable_shared_from_this/members/assign.cc:
5064 Likewise.
5065 * testsuite/20_util/exchange/1.cc: Likewise.
5066 * testsuite/20_util/forward/a.cc: Likewise.
5067 * testsuite/20_util/forward/b.cc: Likewise.
5068 * testsuite/20_util/forward/d.cc: Likewise.
5069 * testsuite/20_util/function/1.cc: Likewise.
5070 * testsuite/20_util/function/2.cc: Likewise.
5071 * testsuite/20_util/function/3.cc: Likewise.
5072 * testsuite/20_util/function/4.cc: Likewise.
5073 * testsuite/20_util/function/43397.cc: Likewise.
5074 * testsuite/20_util/function/5.cc: Likewise.
5075 * testsuite/20_util/function/6.cc: Likewise.
5076 * testsuite/20_util/function/7.cc: Likewise.
5077 * testsuite/20_util/function/8.cc: Likewise.
5078 * testsuite/20_util/function/9.cc: Likewise.
5079 * testsuite/20_util/function/assign/move.cc: Likewise.
5080 * testsuite/20_util/function/cons/move.cc: Likewise.
5081 * testsuite/20_util/function_objects/dr660.cc: Likewise.
5082 * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Likewise.
5083 * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
5084 * testsuite/20_util/hash/chi2_q_document_words.cc: Likewise.
5085 * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
5086 * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
5087 * testsuite/20_util/hash/operators/size_t.cc: Likewise.
5088 * testsuite/20_util/hash/quality.cc: Likewise.
5089 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
5090 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
5091 * testsuite/20_util/is_function/24808.cc: Likewise.
5092 * testsuite/20_util/is_object/24808.cc: Likewise.
5093 * testsuite/20_util/move_if_noexcept/1.cc: Likewise.
5094 * testsuite/20_util/move_if_noexcept/constexpr.cc: Likewise.
5095 * testsuite/20_util/owner_less/cmp.cc: Likewise.
5096 * testsuite/20_util/pair/1.cc: Likewise.
5097 * testsuite/20_util/pair/2.cc: Likewise.
5098 * testsuite/20_util/pair/3.cc: Likewise.
5099 * testsuite/20_util/pair/4.cc: Likewise.
5100 * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
5101 * testsuite/20_util/pair/moveable.cc: Likewise.
5102 * testsuite/20_util/pair/piecewise.cc: Likewise.
5103 * testsuite/20_util/pair/swap.cc: Likewise.
5104 * testsuite/20_util/ratio/comparisons/comp1.cc: Likewise.
5105 * testsuite/20_util/ratio/comparisons/comp2.cc: Likewise.
5106 * testsuite/20_util/ratio/comparisons/comp3.cc: Likewise.
5107 * testsuite/20_util/ratio/cons/cons1.cc: Likewise.
5108 * testsuite/20_util/ratio/operations/45866.cc: Likewise.
5109 * testsuite/20_util/ratio/operations/47913.cc: Likewise.
5110 * testsuite/20_util/ratio/operations/ops1.cc: Likewise.
5111 * testsuite/20_util/ratio/operations/ops2.cc: Likewise.
5112 * testsuite/20_util/ratio/operations/ops3.cc: Likewise.
5113 * testsuite/20_util/reference_wrapper/invoke.cc: Likewise.
5114 * testsuite/20_util/scoped_allocator/1.cc: Likewise.
5115 * testsuite/20_util/scoped_allocator/2.cc: Likewise.
5116 * testsuite/20_util/shared_ptr/assign/assign.cc: Likewise.
5117 * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
5118 * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
5119 * testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
5120 * testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
5121 * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
5122 Likewise.
5123 * testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
5124 * testsuite/20_util/shared_ptr/comparison/less.cc: Likewise.
5125 * testsuite/20_util/shared_ptr/cons/alias.cc: Likewise.
5126 * testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
5127 * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
5128 * testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
5129 * testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
5130 * testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
5131 * testsuite/20_util/shared_ptr/cons/nullptr.cc: Likewise.
5132 * testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
5133 * testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Likewise.
5134 * testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: Likewise.
5135 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Likewise.
5136 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_1.cc:
5137 Likewise.
5138 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref_2.cc:
5139 Likewise.
5140 * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
5141 * testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
5142 * testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
5143 * testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
5144 * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
5145 * testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
5146 * testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
5147 * testsuite/20_util/shared_ptr/hash/1.cc: Likewise.
5148 * testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
5149 * testsuite/20_util/shared_ptr/misc/42019.cc: Likewise.
5150 * testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
5151 * testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
5152 * testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
5153 * testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
5154 * testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
5155 * testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
5156 * testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
5157 * testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
5158 * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
5159 * testsuite/20_util/shared_ptr/observers/owner_before.cc: Likewise.
5160 * testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
5161 * testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
5162 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
5163 Likewise.
5164 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
5165 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
5166 move_iterators/1.cc: Likewise.
5167 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
5168 move_iterators/1.cc: Likewise.
5169 * testsuite/20_util/temporary_buffer.cc: Likewise.
5170 * testsuite/20_util/time_point/1.cc: Likewise.
5171 * testsuite/20_util/time_point/2.cc: Likewise.
5172 * testsuite/20_util/time_point/3.cc: Likewise.
5173 * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
5174 * testsuite/20_util/tuple/48476.cc: Likewise.
5175 * testsuite/20_util/tuple/comparison_operators/comparisons.cc:
5176 Likewise.
5177 * testsuite/20_util/tuple/cons/allocators.cc: Likewise.
5178 * testsuite/20_util/tuple/cons/assignment.cc: Likewise.
5179 * testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
5180 * testsuite/20_util/tuple/cons/constructor.cc: Likewise.
5181 * testsuite/20_util/tuple/creation_functions/23978.cc: Likewise.
5182 * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
5183 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
5184 * testsuite/20_util/tuple/creation_functions/forward_as_tuple.cc:
5185 Likewise.
5186 * testsuite/20_util/tuple/creation_functions/make_tuple.cc: Likewise.
5187 * testsuite/20_util/tuple/creation_functions/tie.cc: Likewise.
5188 * testsuite/20_util/tuple/creation_functions/tie2.cc: Likewise.
5189 * testsuite/20_util/tuple/cv_tuple_size.cc: Likewise.
5190 * testsuite/20_util/tuple/element_access/get.cc: Likewise.
5191 * testsuite/20_util/tuple/element_access/get_by_type.cc: Likewise.
5192 * testsuite/20_util/tuple/moveable.cc: Likewise.
5193 * testsuite/20_util/tuple/swap.cc: Likewise.
5194 * testsuite/20_util/tuple/tuple_size.cc: Likewise.
5195 * testsuite/20_util/typeindex/comparison_operators.cc: Likewise.
5196 * testsuite/20_util/typeindex/hash.cc: Likewise.
5197 * testsuite/20_util/typeindex/hash_code.cc: Likewise.
5198 * testsuite/20_util/typeindex/name.cc: Likewise.
5199 * testsuite/20_util/unique_ptr/assign/48635.cc: Likewise.
5200 * testsuite/20_util/unique_ptr/assign/move.cc: Likewise.
5201 * testsuite/20_util/unique_ptr/assign/move_array.cc: Likewise.
5202 * testsuite/20_util/unique_ptr/assign/nullptr.cc: Likewise.
5203 * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
5204 * testsuite/20_util/unique_ptr/cons/nullptr.cc: Likewise.
5205 * testsuite/20_util/unique_ptr/cons/pointer.cc: Likewise.
5206 * testsuite/20_util/unique_ptr/cons/pointer_array.cc: Likewise.
5207 * testsuite/20_util/unique_ptr/cons/ptr_deleter.cc: Likewise.
5208 * testsuite/20_util/unique_ptr/creation/array.cc: Likewise.
5209 * testsuite/20_util/unique_ptr/creation/single.cc: Likewise.
5210 * testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
5211 * testsuite/20_util/unique_ptr/modifiers/43183.cc: Likewise.
5212 * testsuite/20_util/unique_ptr/specialized_algorithms/
5213 comparisons.cc: Likewise.
5214 * testsuite/20_util/unique_ptr/specialized_algorithms/
5215 comparisons_array.cc: Likewise.
5216 * testsuite/20_util/unique_ptr/specialized_algorithms/swap.cc:
5217 Likewise.
5218 * testsuite/20_util/uses_allocator/construction.cc: Likewise.
5219 * testsuite/20_util/uses_allocator/value.cc: Likewise.
5220 * testsuite/20_util/variant/run.cc: Likewise.
5221 * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
5222 * testsuite/21_strings/basic_string/allocator/char/copy.cc: Likewise.
5223 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
5224 Likewise.
5225 * testsuite/21_strings/basic_string/allocator/char/move.cc: Likewise.
5226 * testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
5227 Likewise.
5228 * testsuite/21_strings/basic_string/allocator/char/swap.cc: Likewise.
5229 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
5230 Likewise.
5231 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
5232 Likewise.
5233 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
5234 Likewise.
5235 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
5236 Likewise.
5237 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
5238 Likewise.
5239 * testsuite/21_strings/basic_string/capacity/1.cc: Likewise.
5240 * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise.
5241 * testsuite/21_strings/basic_string/capacity/char/18654.cc: Likewise.
5242 * testsuite/21_strings/basic_string/capacity/char/2.cc: Likewise.
5243 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
5244 Likewise.
5245 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise.
5246 * testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc:
5247 Likewise.
5248 * testsuite/21_strings/basic_string/capacity/wchar_t/2.cc: Likewise.
5249 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
5250 Likewise.
5251 * testsuite/21_strings/basic_string/cons/char/1.cc: Likewise.
5252 * testsuite/21_strings/basic_string/cons/char/2.cc: Likewise.
5253 * testsuite/21_strings/basic_string/cons/char/3.cc: Likewise.
5254 * testsuite/21_strings/basic_string/cons/char/4.cc: Likewise.
5255 * testsuite/21_strings/basic_string/cons/char/42261.cc: Likewise.
5256 * testsuite/21_strings/basic_string/cons/char/5.cc: Likewise.
5257 * testsuite/21_strings/basic_string/cons/char/6.cc: Likewise.
5258 * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
5259 * testsuite/21_strings/basic_string/cons/char/8.cc: Likewise.
5260 * testsuite/21_strings/basic_string/cons/char/moveable.cc: Likewise.
5261 * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Likewise.
5262 * testsuite/21_strings/basic_string/cons/wchar_t/1.cc: Likewise.
5263 * testsuite/21_strings/basic_string/cons/wchar_t/2.cc: Likewise.
5264 * testsuite/21_strings/basic_string/cons/wchar_t/3.cc: Likewise.
5265 * testsuite/21_strings/basic_string/cons/wchar_t/4.cc: Likewise.
5266 * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.
5267 * testsuite/21_strings/basic_string/cons/wchar_t/5.cc: Likewise.
5268 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: Likewise.
5269 * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
5270 * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
5271 * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
5272 * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
5273 Likewise.
5274 * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise.
5275 * testsuite/21_strings/basic_string/element_access/char/2.cc: Likewise.
5276 * testsuite/21_strings/basic_string/element_access/char/3.cc: Likewise.
5277 * testsuite/21_strings/basic_string/element_access/char/4.cc: Likewise.
5278 * testsuite/21_strings/basic_string/element_access/char/58163.cc:
5279 Likewise.
5280 * testsuite/21_strings/basic_string/element_access/char/empty.cc:
5281 Likewise.
5282 * testsuite/21_strings/basic_string/element_access/char/front_back.cc:
5283 Likewise.
5284 * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc:
5285 Likewise.
5286 * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc:
5287 Likewise.
5288 * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc:
5289 Likewise.
5290 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
5291 Likewise.
5292 * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
5293 Likewise.
5294 * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
5295 Likewise.
5296 * testsuite/21_strings/basic_string/element_access/wchar_t/
5297 front_back.cc: Likewise.
5298 * testsuite/21_strings/basic_string/init-list.cc: Likewise.
5299 * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
5300 Likewise.
5301 * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
5302 Likewise.
5303 * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
5304 Likewise.
5305 * testsuite/21_strings/basic_string/inserters_extractors/char/
5306 28277.cc: Likewise.
5307 * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
5308 Likewise.
5309 * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
5310 Likewise.
5311 * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
5312 Likewise.
5313 * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
5314 Likewise.
5315 * testsuite/21_strings/basic_string/inserters_extractors/char/8.cc:
5316 Likewise.
5317 * testsuite/21_strings/basic_string/inserters_extractors/char/9.cc:
5318 Likewise.
5319 * testsuite/21_strings/basic_string/inserters_extractors/pod/
5320 10081-in.cc: Likewise.
5321 * testsuite/21_strings/basic_string/inserters_extractors/pod/
5322 10081-out.cc: Likewise.
5323 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
5324 Likewise.
5325 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5326 10.cc: Likewise.
5327 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5328 11.cc: Likewise.
5329 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
5330 28277.cc: Likewise.
5331 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
5332 Likewise.
5333 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
5334 Likewise.
5335 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
5336 Likewise.
5337 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
5338 Likewise.
5339 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/8.cc:
5340 Likewise.
5341 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/9.cc:
5342 Likewise.
5343 * testsuite/21_strings/basic_string/modifiers/append/char/1.cc:
5344 Likewise.
5345 * testsuite/21_strings/basic_string/modifiers/append/char/2.cc:
5346 Likewise.
5347 * testsuite/21_strings/basic_string/modifiers/append/char/3.cc:
5348 Likewise.
5349 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
5350 Likewise.
5351 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
5352 Likewise.
5353 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/2.cc:
5354 Likewise.
5355 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/3.cc:
5356 Likewise.
5357 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
5358 Likewise.
5359 * testsuite/21_strings/basic_string/modifiers/assign/char/1.cc:
5360 Likewise.
5361 * testsuite/21_strings/basic_string/modifiers/assign/char/2.cc:
5362 Likewise.
5363 * testsuite/21_strings/basic_string/modifiers/assign/char/3.cc:
5364 Likewise.
5365 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
5366 Likewise.
5367 * testsuite/21_strings/basic_string/modifiers/assign/char/
5368 move_assign.cc: Likewise.
5369 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/1.cc:
5370 Likewise.
5371 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/2.cc:
5372 Likewise.
5373 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/3.cc:
5374 Likewise.
5375 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
5376 Likewise.
5377 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
5378 move_assign.cc: Likewise.
5379 * testsuite/21_strings/basic_string/modifiers/insert/char/1.cc:
5380 Likewise.
5381 * testsuite/21_strings/basic_string/modifiers/insert/char/2.cc:
5382 Likewise.
5383 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
5384 Likewise.
5385 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/1.cc:
5386 Likewise.
5387 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/2.cc:
5388 Likewise.
5389 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
5390 Likewise.
5391 * testsuite/21_strings/basic_string/modifiers/pop_back/char/1.cc:
5392 Likewise.
5393 * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/1.cc:
5394 Likewise.
5395 * testsuite/21_strings/basic_string/modifiers/replace/char/1.cc:
5396 Likewise.
5397 * testsuite/21_strings/basic_string/modifiers/replace/char/2.cc:
5398 Likewise.
5399 * testsuite/21_strings/basic_string/modifiers/replace/char/3.cc:
5400 Likewise.
5401 * testsuite/21_strings/basic_string/modifiers/replace/char/4.cc:
5402 Likewise.
5403 * testsuite/21_strings/basic_string/modifiers/replace/char/5.cc:
5404 Likewise.
5405 * testsuite/21_strings/basic_string/modifiers/replace/char/6.cc:
5406 Likewise.
5407 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
5408 Likewise.
5409 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/1.cc:
5410 Likewise.
5411 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/2.cc:
5412 Likewise.
5413 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/3.cc:
5414 Likewise.
5415 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/4.cc:
5416 Likewise.
5417 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/5.cc:
5418 Likewise.
5419 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/6.cc:
5420 Likewise.
5421 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
5422 Likewise.
5423 * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
5424 Likewise.
5425 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
5426 Likewise.
5427 * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
5428 Likewise.
5429 * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
5430 Likewise.
5431 * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
5432 Likewise.
5433 * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
5434 Likewise.
5435 * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
5436 Likewise.
5437 * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
5438 Likewise.
5439 * testsuite/21_strings/basic_string/numeric_conversions/char/
5440 stoull.cc: Likewise.
5441 * testsuite/21_strings/basic_string/numeric_conversions/char/
5442 to_string.cc: Likewise.
5443 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5444 dr1261.cc: Likewise.
5445 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5446 stod.cc: Likewise.
5447 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5448 stof.cc: Likewise.
5449 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5450 stoi.cc: Likewise.
5451 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5452 stol.cc: Likewise.
5453 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5454 stold.cc: Likewise.
5455 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5456 stoll.cc: Likewise.
5457 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5458 stoul.cc: Likewise.
5459 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5460 stoull.cc: Likewise.
5461 * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
5462 to_wstring.cc: Likewise.
5463 * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
5464 Likewise.
5465 * testsuite/21_strings/basic_string/operations/compare/char/13650.cc:
5466 Likewise.
5467 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
5468 Likewise.
5469 * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
5470 Likewise.
5471 * testsuite/21_strings/basic_string/operations/compare/wchar_t/
5472 13650.cc: Likewise.
5473 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
5474 Likewise.
5475 * testsuite/21_strings/basic_string/operations/data/char/1.cc:
5476 Likewise.
5477 * testsuite/21_strings/basic_string/operations/data/wchar_t/1.cc:
5478 Likewise.
5479 * testsuite/21_strings/basic_string/operations/find/char/1.cc:
5480 Likewise.
5481 * testsuite/21_strings/basic_string/operations/find/char/2.cc:
5482 Likewise.
5483 * testsuite/21_strings/basic_string/operations/find/char/3.cc:
5484 Likewise.
5485 * testsuite/21_strings/basic_string/operations/find/char/4.cc:
5486 Likewise.
5487 * testsuite/21_strings/basic_string/operations/find/char/5.cc:
5488 Likewise.
5489 * testsuite/21_strings/basic_string/operations/find/wchar_t/1.cc:
5490 Likewise.
5491 * testsuite/21_strings/basic_string/operations/find/wchar_t/2.cc:
5492 Likewise.
5493 * testsuite/21_strings/basic_string/operations/find/wchar_t/3.cc:
5494 Likewise.
5495 * testsuite/21_strings/basic_string/operations/find/wchar_t/4.cc:
5496 Likewise.
5497 * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
5498 Likewise.
5499 * testsuite/21_strings/basic_string/operations/rfind/char/1.cc:
5500 Likewise.
5501 * testsuite/21_strings/basic_string/operations/rfind/char/2.cc:
5502 Likewise.
5503 * testsuite/21_strings/basic_string/operations/rfind/char/3.cc:
5504 Likewise.
5505 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/1.cc:
5506 Likewise.
5507 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/2.cc:
5508 Likewise.
5509 * testsuite/21_strings/basic_string/operations/rfind/wchar_t/3.cc:
5510 Likewise.
5511 * testsuite/21_strings/basic_string/operations/substr/char/1.cc:
5512 Likewise.
5513 * testsuite/21_strings/basic_string/operations/substr/wchar_t/
5514 1.cc: Likewise.
5515 * testsuite/21_strings/basic_string/operators/char/1.cc: Likewise.
5516 * testsuite/21_strings/basic_string/operators/char/2.cc: Likewise.
5517 * testsuite/21_strings/basic_string/operators/char/3.cc: Likewise.
5518 * testsuite/21_strings/basic_string/operators/char/4.cc: Likewise.
5519 * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
5520 * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise.
5521 * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Likewise.
5522 * testsuite/21_strings/basic_string/operators/wchar_t/3.cc: Likewise.
5523 * testsuite/21_strings/basic_string/operators/wchar_t/4.cc: Likewise.
5524 * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
5525 * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
5526 * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
5527 * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
5528 * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
5529 * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
5530 * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
5531 * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
5532 * testsuite/21_strings/basic_string_view/element_access/char/
5533 1.cc: Likewise.
5534 * testsuite/21_strings/basic_string_view/element_access/char/
5535 empty.cc: Likewise.
5536 * testsuite/21_strings/basic_string_view/element_access/char/
5537 front_back.cc: Likewise.
5538 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5539 1.cc: Likewise.
5540 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5541 empty.cc: Likewise.
5542 * testsuite/21_strings/basic_string_view/element_access/wchar_t/
5543 front_back.cc: Likewise.
5544 * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
5545 * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
5546 * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
5547 * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
5548 Likewise.
5549 * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
5550 Likewise.
5551 * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
5552 Likewise.
5553 * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
5554 Likewise.
5555 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5556 char/1.cc: Likewise.
5557 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
5558 wchar_t/1.cc: Likewise.
5559 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5560 char/1.cc: Likewise.
5561 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
5562 wchar_t/1.cc: Likewise.
5563 * testsuite/21_strings/basic_string_view/operations/compare/char/
5564 1.cc: Likewise.
5565 * testsuite/21_strings/basic_string_view/operations/compare/char/
5566 13650.cc: Likewise.
5567 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5568 1.cc: Likewise.
5569 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/
5570 13650.cc: Likewise.
5571 * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
5572 Likewise.
5573 * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
5574 Likewise.
5575 * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
5576 Likewise.
5577 * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
5578 Likewise.
5579 * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
5580 Likewise.
5581 * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
5582 Likewise.
5583 * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
5584 Likewise.
5585 * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
5586 Likewise.
5587 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5588 1.cc: Likewise.
5589 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5590 2.cc: Likewise.
5591 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5592 3.cc: Likewise.
5593 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/
5594 4.cc: Likewise.
5595 * testsuite/21_strings/basic_string_view/operations/rfind/char/
5596 1.cc: Likewise.
5597 * testsuite/21_strings/basic_string_view/operations/rfind/char/
5598 2.cc: Likewise.
5599 * testsuite/21_strings/basic_string_view/operations/rfind/char/
5600 3.cc: Likewise.
5601 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5602 1.cc: Likewise.
5603 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5604 2.cc: Likewise.
5605 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/
5606 3.cc: Likewise.
5607 * testsuite/21_strings/basic_string_view/operations/string_conversion/
5608 1.cc: Likewise.
5609 * testsuite/21_strings/basic_string_view/operations/substr/char/
5610 1.cc: Likewise.
5611 * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/
5612 1.cc: Likewise.
5613 * testsuite/21_strings/basic_string_view/operators/char/2.cc:
5614 Likewise.
5615 * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
5616 Likewise.
5617 * testsuite/21_strings/c_strings/char/1.cc: Likewise.
5618 * testsuite/21_strings/c_strings/wchar_t/1.cc: Likewise.
5619 * testsuite/21_strings/char_traits/requirements/char/1.cc: Likewise.
5620 * testsuite/21_strings/char_traits/requirements/char/57704.cc:
5621 Likewise.
5622 * testsuite/21_strings/char_traits/requirements/short/1.cc: Likewise.
5623 * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Likewise.
5624
5625 * doc/xml/manual/test.xml: Fix typo.
5626
56272016-10-12 Jonathan Wakely <jwakely@redhat.com>
5628
5629 * doc/xml/manual/status_cxx2017.xml: Add std::sample status.
5630 * doc/html/*: Regenerate.
5631 * include/experimental/algorithm (__sample): Move to bits/stl_algo.h
5632 and into namespace std.
5633 * include/bits/stl_algo.h (__sample): Define here. Fix invalid use
5634 of input iterator. Defend against overloaded comma operator.
5635 (sample): Define for C++17.
5636 * testsuite/25_algorithms/sample/1.cc: New test.
5637
5638 * testsuite/util/testsuite_common_types.h
5639 (bitwise_assignment_operators): Use direct-initialization for C++11
5640 and later, to avoid CopyConstructible requirement.
5641 * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
5642 line numbers.
5643 * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
5644 * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
5645 * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
5646 * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
5647 Adjust expected errors and line numbers.
5648
5649 * include/std/mutex [_GLIBCXX_HAVE_TLS] (_Once_call): Remove.
5650 (call_once) [_GLIBCXX_HAVE_TLS]: Simplify by removing _Once_call.
5651
5652 * include/bits/stl_uninitialized.h
5653 (__uninitialized_default_novalue_n_1<true>): Add missing return.
5654 * testsuite/20_util/specialized_algorithms/memory_management_tools/
5655 1.cc: Check return values of uninitialized_xxx_n algorithms.
5656
5657 * libsupc++/nested_exception.h (throw_with_nested): Remove return.
5658
5659 * doc/xml/manual/intro.xml: Document LWG 2442 status.
5660 * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
5661 [_GLIBCXX_HAVE_TLS] (_Once_call): Declare primary template and define
5662 partial specialization to unpack args and forward to std::invoke.
5663 (call_once) [_GLIBCXX_HAVE_TLS]: Use forward_as_tuple and _Once_call
5664 instead of __bind_simple and __once_call_impl.
5665 (call_once) [!_GLIBCXX_HAVE_TLS]: Use __invoke instead of
5666 __bind_simple.
5667 * testsuite/30_threads/call_once/dr2442.cc: New test.
5668
56692016-10-11 Jonathan Wakely <jwakely@redhat.com>
5670
5671 * include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
5672 _M_assign_dispatch directly with correct tag.
5673
5674 * doc/xml/manual/intro.xml: Document LWG 2484 status.
5675 * libsupc++/nested_exception.h (_Throw_with_nested_impl)
5676 (_Throw_with_nested_helper): Remove.
5677 (__throw_with_nested_impl): New overloaded functions to implement
5678 throw_with_nested logic.
5679 (throw_with_nested): Call __throw_with_nested_impl.
5680 (_Rethrow_if_nested_impl): Remove
5681 (__rethrow_if_nested_impl): New overloaded functions to implement
5682 rethrow_if_nested logic.
5683 (rethrow_if_nested): Call __rethrow_if_nested_impl.
5684 * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
5685 problem cases from LWG 2484.
5686
5687 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
5688 Register printer for std::__cxx11::list.
5689 * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
5690 std::__cxx11::list as well as std::list.
5691
5692 * include/experimental/string_view (basic_string_view::_S_compare):
5693 Remove redundant const from return type.
5694 * include/std/string_view (basic_string_view:_S_compare): Likewise.
5695
5696 * include/bits/std_mutex.h (mutex::native_handle)
5697 (lock_guard(mutex_type&, adopt_lock_t)
5698 (unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
5699 * include/std/mutex (recursive_mutex, timed_mutex)
5700 (recursive_timed_mutex): Likewise.
5701
57022016-10-10 Jonathan Wakely <jwakely@redhat.com>
5703
5704 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
5705 Replace <literallayout> with nested <variablelist> elements. Update
5706 some more outdated text.
5707 * doc/html/*: Regenerate.
5708
57092016-10-10 Ville Voutilainen <ville.voutilainen@gmail.com>
5710
5711 Make any's copy assignment operator exception-safe,
5712 don't copy the underlying value when any is moved,
5713 make in_place constructors explicit.
5714 * include/std/any (any(in_place_type_t<_ValueType>, _Args&&...)):
5715 Make explicit.
5716 (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
5717 Likewise.
5718 (operator=(const any&)): Make strongly exception-safe.
5719 (operator=(any&&)): reset() unconditionally in the case where
5720 rhs has a value.
5721 (operator=(_ValueType&&)): Indent the return type.
5722 (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
5723 * testsuite/20_util/any/assign/2.cc: Adjust.
5724 * testsuite/20_util/any/assign/exception.cc: New.
5725 * testsuite/20_util/any/cons/2.cc: Adjust.
5726 * testsuite/20_util/any/cons/explicit.cc: New.
5727 * testsuite/20_util/any/misc/any_cast_neg.cc: Ajust.
5728
57292016-10-10 Jonathan Wakely <jwakely@redhat.com>
5730
5731 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
5732 Describe other subdirectories and add markup. Remove outdated
5733 reference to check-script target.
5734 * doc/html/*: Regenerate.
5735
5736 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
5737
5738 * libsupc++/eh_ptr.cc (exception_ptr): Replace _GLIBCXX_USE_NOEXCEPT
5739 with noexcept.
5740
5741 * include/std/functional (_Bind_result::__enable_if_void): Use alias
5742 template instead of class template.
5743 (_Bind_result::__disable_if_void): Likewise.
5744 (_Bind_result::__call): Adjust uses of __enable_if_void and
5745 __disable_if_void.
5746
5747 * doc/xml/manual/intro.xml: Document DR 2296 status.
5748 * doc/xml/manual/status_cxx2017.xml: Update status.
5749 * include/bits/move.h (__addressof): Add _GLIBCXX_CONSTEXPR and
5750 call __builtin_addressof.
5751 (addressof): Add _GLIBCXX17_CONSTEXPR.
5752 * testsuite/20_util/addressof/requirements/constexpr.cc: New test.
5753 * testsuite/20_util/forward/c_neg.cc: Adjust dg-error lineno.
5754 * testsuite/20_util/forward/f_neg.cc: Likewise.
5755
5756 * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
5757 * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
5758 is_always_equal.
5759 * testsuite/util/testsuite_allocator.h
5760 (uneq_allocator::is_always_equal): Define as false_type.
5761
5762 * include/experimental/numeric (gcd, lcm): Make bool arguments
5763 ill-formed.
5764 * include/std/numeric (gcd, lcm): Likewise.
5765 * testsuite/26_numerics/gcd/gcd_neg.cc: New test.
5766 * testsuite/26_numerics/lcm/lcm_neg.cc: New test.
5767
5768 * include/bits/shared_ptr.h (enable_shared_from_this::weak_from_this):
5769 Add noexcept.
5770 * include/bits/shared_ptr_base.h
5771 (__enable_shared_from_this::weak_from_this): Likewise.
5772 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5773 Test exception-specification of weak_from_this.
5774
57752016-10-07 Jonathan Wakely <jwakely@redhat.com>
5776
5777 * doc/xml/manual/status_cxx1998.xml: Improve documentation of
5778 implementation-defined properties.
5779 * doc/xml/manual/status_cxx2011.xml: Likewise.
5780 * doc/xml/manual/status_cxx2017.xml: Likewise.
5781
5782 * doc/xml/manual/status_cxx2017.xml: Update status.
5783 * include/std/type_traits (has_unique_object_representations): Define.
5784 * testsuite/20_util/has_unique_object_representations/value.cc: New.
5785 * testsuite/20_util/has_unique_object_representations/requirements/
5786 explicit_instantiation.cc: New.
5787 * testsuite/20_util/has_unique_object_representations/requirements/
5788 typedefs.cc: New.
5789
57902016-10-06 Jonathan Wakely <jwakely@redhat.com>
5791
5792 * doc/xml/manual/status_cxx2011.xml: Update status.
5793 * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
5794 New helpers for recursive OUTERMOST.
5795 (__outermost): Use __outermost_type::_S_outermost.
5796 (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
5797 (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
5798 __outermost_type helper.
5799 (scoped_allocator_adaptor::_Constructible): New alias template.
5800 (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
5801 Constrain template constructors.
5802 * testsuite/20_util/scoped_allocator/3.cc: New test.
5803 * testsuite/20_util/scoped_allocator/outermost.cc: New test.
5804
58052016-10-05 Jonathan Wakely <jwakely@redhat.com>
5806
5807 PR libstdc++/70564
5808 * testsuite/20_util/not_fn/1.cc: Fix test.
5809 * testsuite/experimental/functional/not_fn.cc: Likewise.
5810
5811 PR libstdc++/70101
5812 * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
5813 constructors.
5814 * testsuite/23_containers/priority_queue/allocator.cc: New test.
5815
5816 PR libstdc++/77864
5817 * include/bits/stl_map.h (map::map()): Use nothrow constructibility
5818 of comparison function in conditional noexcept.
5819 * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
5820 * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
5821 * include/bits/stl_set.h (set::set()): Likewise.
5822 * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
5823 New test.
5824 * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
5825 Likewise.
5826 * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
5827 Likewise.
5828 * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
5829 Likewise.
5830
5831 * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
5832 alias declaration.
5833
5834 PR libstdc++/70564
5835 * include/experimental/functional (_Not_fn): Remove.
5836 (not_fn): Use std::_Not_fn.
5837 * include/std/functional (_Not_fn): Add second parameter to
5838 disambiguate copying from initialization by not_fn. Define for C++14.
5839 (not_fn): Add second argument to initialization.
5840 * testsuite/20_util/not_fn/1.cc: Copy call wrapper using
5841 direct-initialization.
5842
58432016-10-03 François Dumont <fdumont@gcc.gnu.org>
5844
5845 * src/c++11/shared_ptr.cc (mask, invalid, get_mutex): Move
5846 declaration...
5847 * src/c++11/mutex_pool.h: ... here. New.
5848 * src/c++11/debug.cc: Use latter.
5849
58502016-10-03 Jonathan Wakely <jwakely@redhat.com>
5851
5852 * doc/xml/manual/status_cxx2017.xml: Update gcd/lcm status.
5853 * doc/html/*: Regenerate.
5854 * include/experimental/numeric (__abs): Move to <numeric>.
5855 (gcd, lcm): Use __detail::gcd and __detail::lcm.
5856 * include/std/numeric (__detail::__abs_integral)
5857 (__detail::__gcd, __detail::__lcm): Define.
5858 (gcd, lcm): Define for C++17.
5859 * testsuite/26_numerics/gcd/1.cc: New test.
5860 * testsuite/26_numerics/lcm/1.cc: New test.
5861 * testsuite/experimental/numeric/gcd.cc: Swap contents with ...
5862 * testsuite/experimental/numeric/lcd.cc: ... this.
5863
5864 PR libstdc++/68323
5865 PR libstdc++/77794
5866 * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
5867 __cxa_thread_atexit and __gnu_cxx::__freeres.
5868 * include/Makefile.am: Add <experimental/bits/lfts_config.h>
5869 * include/Makefile.in: Regenerate.
5870 * include.bits/basic_string.h: Fix nesting of versioned namespaces.
5871 * include/bits/c++config: Declare versioned namespaces for literals.
5872 * include/bits/regex.h (basic_regex, match_results): Add workarounds
5873 for PR c++/59256.
5874 * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
5875 * include/std/chrono: Likewise.
5876 * include/std/complex: Likewise.
5877 * include/std/string_view: Likewise.
5878 * include/std/variant: Likewise. Add workaround for PR c++/59256.
5879 * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
5880 * include/experimental/bits/lfts_config.h: Declare versioned
5881 namespaces.
5882 * include/experimental/algorithm: Include
5883 <experimental/bits/lfts_config.h>.
5884 * include/experimental/any: Likewise.
5885 * include/experimental/bits/erase_if.h: Likewise.
5886 * include/experimental/chrono: Likewise.
5887 * include/experimental/functional: Likewise.
5888 * include/experimental/memory_resource: Likewise.
5889 * include/experimental/optional: Likewise.
5890 * include/experimental/propagate_const: Likewise.
5891 * include/experimental/random: Likewise.
5892 * include/experimental/ratio: Likewise.
5893 * include/experimental/system_error: Likewise.
5894 * include/experimental/tuple: Likewise.
5895 * include/experimental/type_traits: Likewise.
5896 * include/experimental/utility: Likewise.
5897 * include/experimental/string_view: Likewise. Fix nesting of
5898 versioned namespaces.
5899 * include/experimental/bits/string_view.tcc: Reopen inline namespace
5900 for non-inline function definitions.
5901 * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
5902 * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
5903 * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
5904 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
5905 Likewise.
5906 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
5907 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
5908 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
5909 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
5910 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
5911 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
5912
5913 PR libstdc++/77814
5914 * include/bits/std_abs.h: Use "C++" language linkage.
5915 * testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
5916 the end. Add <stdalign.h>.
5917
59182016-10-03 Ville Voutilainen <ville.voutilainen@gmail.com>
5919
5920 PR libstdc++/77802
5921 * testsuite/20_util/tuple/77802.cc: New.
5922
5923 Revert:
5924 2016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
5925 Implement LWG 2729 for tuple.
5926 * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
5927 Suppress conditionally.
5928 (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
5929 (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
5930 (_Tuple_impl(const _Head&)): Constrain.
5931 (_Tuple_impl(_UHead&&)): Likewise.
5932 (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
5933 (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
5934 (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
5935 (operator=(const tuple&)): Enable conditionally.
5936 (operator=(tuple&&)): Suppress conditionally.
5937 (operator=(const tuple<_UElements...>&)): Constrain.
5938 (operator=(tuple<_UElements...>&&)): Likewise.
5939 (operator=(const tuple&)): Enable conditionally (2-param tuple).
5940 (operator=(tuple&&)): Suppress conditionally (2-param tuple).
5941 (operator=(const tuple<_U1, _U2>&)): Constrain.
5942 (operator=(tuple<_U1, _U2>&&)): Likewise.
5943 (operator=(const pair<_U1, _U2>&)): Likewise.
5944 (operator=(pair<_U1, _U2>&&)): Likewise.
5945 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
5946 * testsuite/20_util/tuple/tuple_traits.cc: New.
5947
59482016-09-30 Jonathan Wakely <jwakely@redhat.com>
5949
5950 PR libstdc++/77795
5951 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
5952 for gets.
5953 * config.h.in: Regenerate.
5954 * configure: Regenerate.
5955 * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
5956 for C++98 and C++11.
5957 * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
5958 * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
5959
5960 * doc/xml/manual/intro.xml: Document LWG 2192 changes.
5961 * doc/html/*: Regenerate.
5962 * include/Makefile.am: Add bits/std_abs.h.
5963 * include/Makefile.in: Regenerate.
5964 * include/bits/std_abs.h: New header defining all required overloads
5965 of std::abs in one place (LWG 2294).
5966 * include/c_global/cmath (abs(double), abs(float), abs(long double)):
5967 Move to bits/std_abs.h.
5968 (abs<_Tp>(_Tp)): Remove.
5969 * include/c_global/cstdlib (abs(long), abs(long long), abs(__int<N>)):
5970 Move to bits/std_abs.h.
5971 * testsuite/26_numerics/headers/cmath/dr2192.cc: New test.
5972 * testsuite/26_numerics/headers/cmath/dr2192_neg.cc: New test.
5973 * testsuite/26_numerics/headers/cstdlib/dr2192.cc: New test.
5974 * testsuite/26_numerics/headers/cstdlib/dr2192_neg.cc: New test.
5975
5976 PR libstdc++/77801
5977 * include/experimental/numeric: Include <numeric>.
5978 (__abs): Define.
5979 (gcd, lcm): Use __abs instead of std::abs.
5980 * testsuite/experimental/numeric/77801.cc: New test.
5981 * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
5982 * testsuite/experimental/numeric/lcm.cc: Likewise.
5983
59842016-09-29 Ville Voutilainen <ville.voutilainen@gmail.com>
5985
5986 Make optional::reset noexcept, make optional::value
5987 work in constant expressions.
5988 * include/std/optional (_M_get): Make constexpr.
5989 (reset): Make noexcept.
5990 * testsuite/20_util/optional/assignment/7.cc: New.
5991 * testsuite/20_util/optional/observers/6.cc: New.
5992
59932016-09-29 Jonathan Wakely <jwakely@redhat.com>
5994
5995 * include/c_global/cmath (hypot, __hypot3): Move C++17 overloads
5996 outside _GLIBCXX_USE_C99_MATH_TR1 condition.
5997
59982016-09-29 Alan Modra <amodra@gmail.com>
5999
6000 * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
6001 * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
6002 Use LONG_DOUBLE_COMPAT_FLAGS.
6003 * Makefile.in: Regenerate.
6004 * configure: Regenerate.
6005 * doc/Makefile.in: Regenerate.
6006 * include/Makefile.in: Regenerate.
6007 * libsupc++/Makefile.in: Regenerate.
6008 * po/Makefile.in: Regenerate.
6009 * python/Makefile.in: Regenerate.
6010 * src/Makefile.in: Regenerate.
6011 * src/c++11/Makefile.in: Regenerate.
6012 * src/c++98/Makefile.in: Regenerate.
6013 * src/filesystem/Makefile.in: Regenerate.
6014 * testsuite/Makefile.in: Regenerate.
6015
60162016-09-28 Jonathan Wakely <jwakely@redhat.com>
6017
6018 * include/std/chrono (system_clock): Fix typo in comment.
6019
6020 * include/experimental/bits/fs_fwd.h (file_time_type): Simplify
6021 definition.
6022 * src/filesystem/ops.cc (file_time): Take error_code parameter and
6023 check for overflow.
6024 (do_copy_file, last_write_time): Pass error_code in file_time calls.
6025 * testsuite/experimental/filesystem/operations/last_write_time.cc:
6026 New.
6027 * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
6028
6029 PR libstdc++/77686
6030 * include/std/functional (_Any_data): Add may_alias attribute.
6031
60322016-09-27 Jonathan Wakely <jwakely@redhat.com>
6033
6034 * doc/xml/manual/status_cxx2017.xml: Update status.
6035 * doc/html/*: Regenerate.
6036 * include/std/functional (__cpp_lib_boyer_moore_searcher): Define.
6037 * testsuite/20_util/function_objects/searchers.cc: Test feature macro.
6038
6039 * doc/xml/manual/status_cxx2017.xml: Update status.
6040 * include/c_global/cmath (hypot): Add three-dimensional overloads.
6041 * testsuite/26_numerics/headers/cmath/hypot.cc: New.
6042
60432016-09-26 Ville Voutilainen <ville.voutilainen@gmail.com>
6044
6045 PR libstdc++/77727
6046 * include/std/optional (optional(const optional<_Up>&)):
6047 Default-initialize the base and use emplace.
6048 (optional(optional<_Up>&&)): Likewise.
6049 * testsuite/20_util/optional/cons/77727.cc: New.
6050
60512016-09-26 François Dumont <fdumont@gcc.gnu.org>
6052
6053 * include/debug/safe_base.h
6054 (_Safe_iterator_base::_M_detach_single): Make public.
6055
60562016-09-26 Jonathan Wakely <jwakely@redhat.com>
6057
6058 * include/bits/range_access.h (__cpp_lib_array_constexpr): Do not
6059 redefine macro defined in <bits/stl_iterator.h>.
6060
6061 * include/bits/stl_map.h (map::extract(const_iterator)): Assert that
6062 iterator is not past-the-end.
6063 * include/bits/stl_multimap.h (multimap::extract(const_iterator)):
6064 Likewise.
6065 * include/bits/stl_multiset.h (multiset::extract(const_iterator)):
6066 Likewise.
6067 * include/bits/stl_set.h (set::extract(const_iterator)): Likewise.
6068 * include/bits/unordered_map.h (unordered_map::extract(const_iterator))
6069 (unordered_multimap::extract(const_iterator)): Likewise.
6070 * include/bits/unordered_set.h (unordered_set::extract(const_iterator))
6071 (unordered_multiset::extract(const_iterator)): Likewise.
6072
60732016-09-26 Ville Voutilainen <ville.voutilainen@gmail.com>
6074
6075 PR libstdc++/77717
6076 * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
6077 Fix an out-of-bounds access.
6078
60792016-09-26 Marek Polacek <polacek@redhat.com>
6080
6081 PR c/7652
6082 * libsupc++/hash_bytes.cc: Add [[gnu::fallthrough]].
6083
60842016-09-25 François Dumont <fdumont@gcc.gnu.org>
6085
6086 * src/c++11/debug.cc: Include debug/vector. Include cctype. Remove
6087 functional.
6088 (get_safe_base_mutex): Get mutex based on address lowest non nil bits.
6089 * testsuite/23_containers/vector/debug/mutex_association.cc: New.
6090
6091 * include/debug/bitset (bitset::reference::reference(const _Base_ref&,
6092 bitset*)): Remove __unused__ attribute.
6093 * include/debug/safe_base.h (_Safe_iterator_base): Make
6094 _Safe_sequence_base a friend.
6095 (_Safe_iterator_base::_M_attach): Make protected.
6096 (_Safe_iterator_base::_M_attach_single): Likewise.
6097 (_Safe_iterator_base::_M_detach): Likewise.
6098 (_Safe_iterator_base::_M_detach_single): Likewise.
6099 (_Safe_sequence_base): Make _Safe_iterator_base a friend.
6100 (_Safe_sequence_base::_Safe_sequence_base(_Safe_sequence_base&&)): New.
6101 (_Safe_sequence_base::_M_swap): Make protected.
6102 (_Safe_sequence_base::_M_attach): Make private.
6103 (_Safe_sequence_base::_M_attach_single): Likewise.
6104 (_Safe_sequence_base::_M_detach): Likewise.
6105 (_Safe_sequence_base::_M_detach_single): Likewise.
6106 * include/debug/safe_container.h
6107 (_Safe_container::_Safe_container(_Safe_container&&)): Make default.
6108 * include/debug/safe_iterator.h
6109 (_Safe_iterator::operator++()): Name __scoped_lock instance.
6110 * include/debug/safe_iterator.tcc: Remove trailing line.
6111 * include/debug/safe_unordered_base.h
6112 (_Safe_local_iterator_base::_M_attach): Make protected.
6113 (_Safe_local_iterator_base::_M_attach_single): Likewise.
6114 (_Safe_local_iterator_base::_M_detach): Likewise.
6115 (_Safe_local_iterator_base::_M_detach_single): Likewise.
6116 (_Safe_unordered_container_base): Make _Safe_local_iterator_base friend.
6117 (_Safe_unordered_container_base::_M_attach_local): Make private.
6118 (_Safe_unordered_container_base::_M_attach_local_single): Likewise.
6119 (_Safe_unordered_container_base::_M_detach_local): Likewise.
6120 (_Safe_unordered_container_base::_M_detach_local_single): Likewise.
6121
6122 * include/parallel/algo.h: Generalize usage of std::__iterator_category.
6123 Adjust whitespaces.
6124
61252016-09-23 Jonathan Wakely <jwakely@redhat.com>
6126
6127 PR libstdc++/56166
6128 PR libstdc++/77582
6129 * include/bits/basic_string.h (basic_string::clear()): Drop reference
6130 and use empty rep.
6131 * include/ext/rc_string_base.h (__rc_string_base::_M_clear()):
6132 Likewise.
6133 * testsuite/21_strings/basic_string/56166.cc: New.
6134 * testsuite/ext/vstring/modifiers/clear/56166.cc: New.
6135
6136 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6137 (basic_string::erase(size_type, size_type)): Add fast path for
6138 truncating the string, by calling _M_set_length directly.
6139 (basic_string::erase(__const_iterator, __const_iterator)): Likewise.
6140 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI]
6141 (basic_string::resize(size_type, _CharT)): Likewise.
6142
61432016-09-22 Jason Merrill <jason@redhat.com>
6144
6145 * configure.ac: Define HAVE_MEMALIGN for newlib.
6146
61472015-09-23 Sebastian Huber <sebastian.huber@embedded-brains.de>
6148
6149 * config/cpu/m68k/atomicity.h: Adjust comment.
6150 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
6151 explicit atomicity_dir setup via configure.host.
6152 * configure.host (rtems-*): Set atomicity_dir.
6153 * configure: Regenerate.
6154
61552016-09-22 Jonathan Wakely <jwakely@redhat.com>
6156
6157 Implement C++17 node extraction and insertion (P0083R5)
6158 * doc/xml/manual/status_cxx2017.xml: Document status.
6159 * doc/html/*: Regenerate.
6160 * include/Makefile.am: Add bits/node_handle.h and reorder.
6161 * include/Makefile.in: Regenerate.
6162 * include/bits/hashtable.h (_Hashtable::node_type)
6163 (_Hashtable::insert_return_type, _Hashtable::_M_reinsert_node)
6164 (_Hashtable::_M_reinsert_node_multi, _Hashtable::extract)
6165 (_Hashtable::_M_merge_unique, _Hashtable::_M_merge_multi): Define.
6166 (_Hash_merge_helper): Define primary template.
6167 * include/bits/node_handle.h: New header.
6168 * include/bits/stl_map.h (map): Declare _Rb_tree_merge_helper as
6169 friend.
6170 (map::node_type, map::insert_return_type, map::extract, map::merge)
6171 (map::insert(node_type&&), map::insert(const_iterator, node_type&&)):
6172 Define new members.
6173 (_Rb_tree_merge_helper): Specialize for map.
6174 * include/bits/stl_multimap.h (multimap): Declare _Rb_tree_merge_helper
6175 as friend.
6176 (multimap::node_type, multimap::extract, multimap::merge)
6177 (multimap::insert(node_type&&))
6178 (multimap::insert(const_iterator, node_type&&)): Define.
6179 (_Rb_tree_merge_helper): Specialize for multimap.
6180 * include/bits/stl_multiset.h (multiset): Declare _Rb_tree_merge_helper
6181 as friend.
6182 (multiset::node_type, multiset::extract, multiset::merge)
6183 (multiset::insert(node_type&&))
6184 (multiset::insert(const_iterator, node_type&&)): Define.
6185 * include/bits/stl_set.h (set): Declare _Rb_tree_merge_helper as
6186 friend.
6187 (set::node_type, set::insert_return_type, set::extract, set::merge)
6188 (set::insert(node_type&&), set::insert(const_iterator, node_type&&)):
6189 Define.
6190 (_Rb_tree_merge_helper): Specialize for set.
6191 * include/bits/stl_tree.h (_Rb_tree): Declare _Rb_tree<> as friend.
6192 (_Rb_tree::node_type, _Rb_tree::insert_return_type)
6193 (_Rb_tree::_M_reinsert_node_unique, _Rb_tree::_M_reinsert_node_equal)
6194 (_Rb_tree::_M_reinsert_node_hint_unique)
6195 (_Rb_tree::_M_reinsert_node_hint_equal, _Rb_tree::extract)
6196 (_Rb_tree::_M_merge_unique, _Rb_tree::_M_merge_equal): Define.
6197 (_Rb_tree_merge_helper): Specialize for multiset.
6198 * include/bits/unordered_map.h (unordered_map): Declare
6199 unordered_map<> and unordered_multimap<> as friends.
6200 (unordered_map::node_type, unordered_map::insert_return_type)
6201 (unordered_map::extract, unordered_map::merge)
6202 (unordered_map::insert(node_type&&))
6203 (unordered_map::insert(const_iterator, node_type&&))
6204 (unordered_multimap): Declare _Hash_merge_helper as friend.
6205 (unordered_multimap::node_type, unordered_multimap::extract)
6206 (unordered_multimap::merge, unordered_multimap::insert(node_type&&))
6207 (unordered_multimap::insert(const_iterator, node_type&&)): Define.
6208 (_Hash_merge_helper): Specialize for unordered maps and multimaps.
6209 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
6210 Declare _Hash_merge_helper as friend.
6211 (unordered_set::node_type, unordered_set::insert_return_type)
6212 (unordered_set::extract, unordered_set::merge)
6213 (unordered_set::insert(node_type&&))
6214 (unordered_set::insert(const_iterator, node_type&&)): Define.
6215 (unordered_multiset::node_type, unordered_multiset::extract)
6216 (unordered_multiset::merge, unordered_multiset::insert(node_type&&))
6217 (unordered_multiset::insert(const_iterator, node_type&&)): Define.
6218 (_Hash_merge_helper): Specialize for unordered sets and multisets.
6219 * include/debug/map.h (map): Add using declarations or forwarding
6220 functions for new members.
6221 * include/debug/map.h (multimap): Likewise.
6222 * include/debug/map.h (multiset): Likewise.
6223 * include/debug/map.h (set): Likewise.
6224 * include/debug/unordered_map (unordered_map, unordered_multimap):
6225 Likewise.
6226 * include/debug/unordered_set( unordered_set, unordered_multiset):
6227 Likewise.
6228 * python/libstdcxx/v6/printers.py (get_value_from_aligned_membuf): New
6229 helper function.
6230 (get_value_from_list_node, get_value_from_Rb_tree_node): Use helper.
6231 (StdNodeHandlePrinter): Define printer for node handles.
6232 (build_libstdcxx_dictionary): Register StdNodeHandlePrinter.
6233 * testsuite/23_containers/map/modifiers/extract.cc: New.
6234 * testsuite/23_containers/map/modifiers/merge.cc: New.
6235 * testsuite/23_containers/multimap/modifiers/extract.cc: New.
6236 * testsuite/23_containers/multimap/modifiers/merge.cc: New.
6237 * testsuite/23_containers/multiset/modifiers/extract.cc: New.
6238 * testsuite/23_containers/multiset/modifiers/merge.cc: New.
6239 * testsuite/23_containers/set/modifiers/extract.cc: New.
6240 * testsuite/23_containers/set/modifiers/merge.cc: New.
6241 * testsuite/23_containers/unordered_map/modifiers/extract.cc: New.
6242 * testsuite/23_containers/unordered_map/modifiers/merge.cc: New.
6243 * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
6244 New.
6245 * testsuite/23_containers/unordered_multimap/modifiers/merge.cc: New.
6246 * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
6247 New.
6248 * testsuite/23_containers/unordered_multiset/modifiers/merge.cc: New.
6249 * testsuite/23_containers/unordered_set/modifiers/extract.cc: New.
6250 * testsuite/23_containers/unordered_set/modifiers/merge.cc: New.
6251 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
6252 dg-error lineno.
6253 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test node handles.
6254
62552016-09-22 Ville Voutilainen <ville.voutilainen@gmail.com>
6256
6257 Fix tests on old arm platforms for optional.
6258 * testsuite/20_util/optional/77288.cc: Don't use exception_ptr.
6259
62602016-09-22 Jonathan Wakely <jwakely@redhat.com>
6261
6262 * python/libstdcxx/v6/printers.py (StdVariantPrinter): Adjust for
6263 recent change to _Variant_storage.
6264 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test variant with
6265 reference type.
6266
6267 * include/bits/uses_allocator.h (__uses_allocator_construct): Qualify
6268 std::forward and ::new. Cast pointer to void*.
6269 * include/std/variant (_Variant_storage, _Union, _Variant_base)
6270 (__access, __visit_invoke, variant, visit): Qualify std::forward.
6271 * testsuite/20_util/variant/compile.cc: Test for ADL problems.
6272
62732016-09-22 Tim Shen <timshen@google.com>
6274
6275 * include/std/variant (variant::operator=): Fix assignment
6276 on references.
6277 * testsuite/20_util/variant/compile.cc: Add test.
6278
62792016-09-22 Tim Shen <timshen@google.com>
6280
6281 PR libstdc++/77641
6282 * include/std/variant (_Variant_storage::_Variant_storage):
6283 Change _Variant_storage's union to be default constructible.
6284 * testsuite/20_util/variant/compile.cc: New test.
6285
62862016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
6287
6288 PR libstdc++/77288
6289 * include/std/optional (__is_optional_impl, __is_optional): Remove.
6290 (__converts_from_optional, __assigns_from_optional): New.
6291 (optional(_Up&&)): Use is_same instead of __is_optional.
6292 (optional(const optional<_Up>&)): Constrain with
6293 __converts_from_optional.
6294 (optional(optional<_Up>&&)): Likewise.
6295 (operator=(_Up&&)): Use is_same instead of __is_optional, check
6296 is_same and is_scalar.
6297 (operator=(const optional<_Up>&)): Constrain with
6298 __converts_from_optional and __assigns_from_optional.
6299 (operator=(optional<_Up>&&)): Likewise.
6300 * testsuite/20_util/optional/77288.cc: New.
6301 * testsuite/20_util/optional/cons/value.cc: Adjust.
6302
63032016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
6304
6305 Implement LWG 2729 for tuple.
6306 * include/std/tuple (_Tuple_impl(_Tuple_impl&&)):
6307 Suppress conditionally.
6308 (_Tuple_impl(_Tuple_impl<_Idx, _UHead, _UTails...>&&)): Likewise.
6309 (__is_tuple_impl_trait_impl, __is_tuple_impl_trait): New.
6310 (_Tuple_impl(const _Head&)): Constrain.
6311 (_Tuple_impl(_UHead&&)): Likewise.
6312 (_Tuple_impl(_Tuple_impl&&)): Suppress conditionally.
6313 (_Tuple_impl(const _Tuple_impl<_Idx, _UHead>&)): Constrain.
6314 (_Tuple_impl(_Tuple_impl<_Idx, _UHead>&&)): Likewise.
6315 (operator=(const tuple&)): Enable conditionally.
6316 (operator=(tuple&&)): Suppress conditionally.
6317 (operator=(const tuple<_UElements...>&)): Constrain.
6318 (operator=(tuple<_UElements...>&&)): Likewise.
6319 (operator=(const tuple&)): Enable conditionally (2-param tuple).
6320 (operator=(tuple&&)): Suppress conditionally (2-param tuple).
6321 (operator=(const tuple<_U1, _U2>&)): Constrain.
6322 (operator=(tuple<_U1, _U2>&&)): Likewise.
6323 (operator=(const pair<_U1, _U2>&)): Likewise.
6324 (operator=(pair<_U1, _U2>&&)): Likewise.
6325 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust.
6326 * testsuite/20_util/tuple/tuple_traits.cc: New.
6327
63282016-09-21 Ville Voutilainen <ville.voutilainen@gmail.com>
6329
6330 PR libstdc++/77537
6331 Implement LWG 2729 for pair.
6332 * include/bits/stl_pair.h (_PCC): New.
6333 (_ConstructiblePair, _ImplicitlyConvertiblePair):
6334 Turn into static member functions of _PCC.
6335 (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
6336 (_PCCP): New.
6337 (pair(const _T1&, const _T2&)): Adjust.
6338 (_PCCFP): New.
6339 (pair(const pair<_U1, _U2>&)): Adjust.
6340 (pair(_U1&&, const _T2&)): Likewise.
6341 (pair(const _T1&, _U2&&)): Likewise.
6342 (pair(_U1&&, _U2&&)): Likewise.
6343 (pair(pair<_U1, _U2>&&)): Likewise.
6344 (operator=(const pair&)): Make conditionally deleted.
6345 (operator=(pair&&)): Make conditionally suppressed.
6346 (operator=(const pair<_U1, _U2>&)): Constrain.
6347 (operator=(pair<_U1, _U2>&&): Likewise.
6348 * include/std/type_traits (__nonesuch): New.
6349 * testsuite/20_util/pair/traits.cc: New.
6350
63512016-09-20 Ville Voutilainen <ville.voutilainen@gmail.com>
6352
6353 PR libstdc++/77619
6354 * include/bits/stl_construct.h: (_Construct_novalue): New.
6355 (_Destroy_n_aux, _Destroy_n): New.
6356 * include/bits/stl_uninitialized.h: (type_traits):
6357 New include in C++11 mode.
6358 (__uninitialized_default_novalue_1): New.
6359 (__uninitialized_default_novalue_n_1): Likewise.
6360 (__uninitialized_default_novalue): Likewise.
6361 (__uninitialized_default_novalue_n): Likewise.
6362 (__uninitialized_copy_n_pair): Likewise.
6363 (uninitialized_default_construct):
6364 Use __uninitialized_default_novalue.
6365 (uninitialized_default_construct_n):
6366 Use __uninitialized_default_novalue_n.
6367 (uninitialized_value_construct): Use __uninitialized_default.
6368 (uninitialized_value_construct_n): Use __uninitialized_default_n.
6369 (uninitialized_move): Use uninitialized_copy.
6370 (uninitialized_move_n): Use __uninitialized_copy_n_pair.
6371 (destroy_at): Use _Destroy.
6372 (destroy): Likewise.
6373 (destroy_n): Likewise.
6374 * testsuite/20_util/specialized_algorithms/
6375 memory_management_tools/1.cc: Add tests for exceptions,
6376 add tests for trivial cases for construct and move.
6377
63782016-09-20 Jonathan Wakely <jwakely@redhat.com>
6379
6380 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6381 (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
6382
63832016-09-19 Jonathan Wakely <jwakely@redhat.com>
6384
6385 PR libstdc++/77645
6386 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
6387 (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
6388 division to int to work with Python 3.
6389
6390 * testsuite/lib/gdb-test.exp (gdb-test): Fail if Python error occurs.
6391
6392 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): Allow
6393 display_hint to be set by subclasses.
6394 (StdVariantPrinter): Use array for display_hint. Adjust output to be
6395 more similar to std::any and std::optional output.
6396 (register_type_printers): Add type printers for basic_string_view
6397 typedefs and experimental::any. Adjust type printers for
6398 fundamentals_v1 templates to match fundamentals_v2 and later.
6399 * testsuite/libstdc++-prettyprinters/cxx17.cc: New.
6400
6401 PR libstdc++/77645
6402 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
6403 argument.
6404 (ListWorkerBase.get_value_from_node): Define new method.
6405 (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
6406
64072016-09-17 Jonathan Wakely <jwakely@redhat.com>
6408
6409 * python/libstdcxx/v6/printers.py (StdVariantPrinter): Define.
6410 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
6411 Register for C++17 components in namespace std. Strip inline namespace
6412 from typename.
6413
64142016-09-16 Jonathan Wakely <jwakely@redhat.com>
6415
6416 * doc/xml/manual/profile_mode.xml: Fix typo.
6417 * doc/html/manual/profile_mode_devel.html: Regenerate.
6418
64192016-09-16 Jonathan Wakely <jwakely@redhat.com>
6420 Marc Glisse <marc.glisse@inria.fr>
6421
6422 * libsupc++/new_opa.cc [_GLIBCXX_HAVE_ALIGNED_ALLOC]
6423 (operator new(size_t, align_val_t)): Replace modulus operator with
6424 mask.
6425
64262016-09-16 Jonathan Wakely <jwakely@redhat.com>
6427
6428 * libsupc++/new_opa.cc [_GLIBCXX_HAVE_POSIX_MEMALIGN] (aligned_alloc):
6429 Increase alignment if less than sizeof(void*).
6430 [_GLIBCXX_HAVE_ALIGNED_ALLOC] (operator new(size_t, align_val_t)):
6431 Increase size if not a multiple of alignment.
6432
64332016-09-15 Jonathan Wakely <jwakely@redhat.com>
6434
6435 * doc/xml/manual/debug_mode.xml: Minor editorial fixes.
6436 * doc/html/*: Regenerate.
6437
6438 * testsuite/23_containers/vector/debug/insert6_neg.cc: Remove
6439 -Wno-deprecated.
6440 * testsuite/util/debug/checks.h (generate_unique<bool>): Specialize.
6441
64422016-09-14 Marek Polacek <polacek@redhat.com>
6443
6444 * testsuite/23_containers/vector/debug/insert6_neg.cc: Use
6445 -Wno-deprecated.
6446
64472016-09-14 Christophe Lyon <christophe.lyon@linaro.org>
6448
6449 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
6450 Move dg-do directive before dg-skip.
6451 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc:
6452 Move dg-do directive before dg-require.
6453 * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise.
6454 * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
6455 * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise.
6456 * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise.
6457 * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise.
6458 * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise.
6459 * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise.
6460 * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise.
6461 * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise.
6462 * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise.
6463 * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise.
6464 * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise.
6465 * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
6466 * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise.
6467 * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc:
6468 Likewise.
6469 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
6470 * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
6471 * testsuite/27_io/objects/char/12048-5.cc: Likewise.
6472 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise.
6473 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
6474
64752016-09-13 Ville Voutilainen <ville.voutilainen@gmail.com>
6476
6477 Implement P0040R3, Extending memory management tools.
6478 * include/bits/stl_uninitialized.h (utility): New include
6479 in C++17 mode.
6480 (uninitialized_default_construct): New.
6481 (uninitialized_default_construct_n): Likewise.
6482 (uninitialized_value_construct): Likewise.
6483 (uninitialized_value_construct_n): Likewise.
6484 (uninitialized_move): Likewise.
6485 (uninitialized_move_n): Likewise.
6486 (destroy_at, destroy, destroy_n): Likewise.
6487 * testsuite/20_util/specialized_algorithms/memory_management_tools/
6488 1.cc: New.
6489
64902016-09-12 Jason Merrill <jason@redhat.com>
6491
6492 * config/abi/pre/gnu.ver: Use [jmy] for size_t.
6493
64942016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com>
6495
6496 Implement P0253R1, Fixing a design mistake in the searchers
6497 interface in Library Fundamentals.
6498 * include/std/functional: (utility): New include in C++17 mode.
6499 (default_searcher): Use a pair as return type, adjust the definition.
6500 (boyer_moore_searcher): Likewise.
6501 (boyer_moore_horspool_searcher): Likewise.
6502 * testsuite/20_util/function_objects/searchers.cc: Adjust.
6503
65042016-09-12 Ville Voutilainen <ville.voutilainen@gmail.com>
6505
6506 Implement C++17 string searchers.
6507 * include/std/functional: (unordered_map, vector): New includes
6508 in C++17 mode.
6509 (array, bits/stl_algo.h): Likewise.
6510 (default_searcher, __boyer_moore_map_base): New.
6511 (__boyer_moore_array_base, __is_std_equal_to): Likewise.
6512 (__boyer_moore_base_t, boyer_moore_searcher): Likewise.
6513 (boyer_moore_horspool_searcher, make_default_searcher): Likewise.
6514 (make_boyer_moore_searcher): Likewise.
6515 (make_boyer_moore_horspool_searcher): Likewise.
6516 * testsuite/20_util/function_objects/searchers.cc: New.
6517
65182016-09-12 Matthew Wahab <matthew.wahab@arm.com>
6519
6520 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
6521 Move dg-do directive before dg-require.
6522 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: Likewise.
6523 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
6524 Likewise.
6525 * testsuite/22_locale/codecvt/utf8.cc: Likewise.
6526 * testsuite/22_locale/locale/cons/unicode.cc: Likewise.
6527 * testsuite/23_containers/deque/debug/assign1_neg.cc: Likewise.
6528 * testsuite/23_containers/deque/debug/assign2_neg.cc: Likewise.
6529 * testsuite/23_containers/deque/debug/assign3_neg.cc: Likewise.
6530 * testsuite/23_containers/deque/debug/construct1_neg.cc: Likewise.
6531 * testsuite/23_containers/deque/debug/construct2_neg.cc: Likewise.
6532 * testsuite/23_containers/deque/debug/construct3_neg.cc: Likewise.
6533 * testsuite/23_containers/deque/debug/insert1_neg.cc: Likewise.
6534 * testsuite/23_containers/deque/debug/insert2_neg.cc: Likewise.
6535 * testsuite/23_containers/deque/debug/insert3_neg.cc: Likewise.
6536 * testsuite/23_containers/deque/debug/insert5_neg.cc: Likewise.
6537 * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
6538 Likewise.
6539 * testsuite/23_containers/deque/debug/self_move_assign_neg.cc:
6540 Likewise.
6541 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
6542 * testsuite/23_containers/forward_list/debug/60499.cc: Likewise.
6543 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
6544 Likewise.
6545 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
6546 Likewise.
6547 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
6548 Likewise.
6549 * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
6550 Likewise.
6551 * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
6552 Likewise.
6553 * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
6554 Likewise.
6555 * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
6556 Likewise.
6557 * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
6558 Likewise.
6559 * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
6560 Likewise.
6561 * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
6562 Likewise.
6563 * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
6564 Likewise.
6565 * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
6566 Likewise.
6567 * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
6568 Likewise.
6569 * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
6570 Likewise.
6571 * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
6572 Likewise.
6573 * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
6574 Likewise.
6575 * testsuite/23_containers/forward_list/debug/
6576 iterator_self_move_assign_neg.cc: Likewise.
6577 * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
6578 Likewise.
6579 * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
6580 Likewise.
6581 * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
6582 Likewise.
6583 * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
6584 Likewise.
6585 * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
6586 Likewise.
6587 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
6588 Likewise.
6589 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
6590 Likewise.
6591 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
6592 Likewise.
6593 * testsuite/23_containers/list/debug/assign1_neg.cc: Likewise.
6594 * testsuite/23_containers/list/debug/assign2_neg.cc: Likewise.
6595 * testsuite/23_containers/list/debug/assign3_neg.cc: Likewise.
6596 * testsuite/23_containers/list/debug/construct1_neg.cc: Likewise.
6597 * testsuite/23_containers/list/debug/construct2_neg.cc: Likewise.
6598 * testsuite/23_containers/list/debug/construct3_neg.cc: Likewise.
6599 * testsuite/23_containers/list/debug/insert1_neg.cc: Likewise.
6600 * testsuite/23_containers/list/debug/insert2_neg.cc: Likewise.
6601 * testsuite/23_containers/list/debug/insert3_neg.cc: Likewise.
6602 * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
6603 * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
6604 Likewise.
6605 * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise.
6606 * testsuite/23_containers/map/debug/60499.cc: Likewise.
6607 * testsuite/23_containers/map/debug/construct1_neg.cc: Likewise.
6608 * testsuite/23_containers/map/debug/construct2_neg.cc: Likewise.
6609 * testsuite/23_containers/map/debug/construct3_neg.cc: Likewise.
6610 * testsuite/23_containers/map/debug/insert1_neg.cc: Likewise.
6611 * testsuite/23_containers/map/debug/insert2_neg.cc: Likewise.
6612 * testsuite/23_containers/map/debug/insert3_neg.cc: Likewise.
6613 * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
6614 Likewise.
6615 * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise.
6616 * testsuite/23_containers/multimap/debug/60499.cc: Likewise.
6617 * testsuite/23_containers/multimap/debug/construct1_neg.cc: Likewise.
6618 * testsuite/23_containers/multimap/debug/construct2_neg.cc: Likewise.
6619 * testsuite/23_containers/multimap/debug/construct3_neg.cc: Likewise.
6620 * testsuite/23_containers/multimap/debug/insert1_neg.cc: Likewise.
6621 * testsuite/23_containers/multimap/debug/insert2_neg.cc: Likewise.
6622 * testsuite/23_containers/multimap/debug/insert3_neg.cc: Likewise.
6623 * testsuite/23_containers/multimap/debug/
6624 iterator_self_move_assign_neg.cc: Likewise.
6625 * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
6626 Likewise.
6627 * testsuite/23_containers/multiset/debug/60499.cc: Likewise.
6628 * testsuite/23_containers/multiset/debug/construct1_neg.cc: Likewise.
6629 * testsuite/23_containers/multiset/debug/construct2_neg.cc: Likewise.
6630 * testsuite/23_containers/multiset/debug/construct3_neg.cc: Likewise.
6631 * testsuite/23_containers/multiset/debug/insert1_neg.cc: Likewise.
6632 * testsuite/23_containers/multiset/debug/insert2_neg.cc: Likewise.
6633 * testsuite/23_containers/multiset/debug/insert3_neg.cc: Likewise.
6634 * testsuite/23_containers/multiset/debug/
6635 iterator_self_move_assign_neg.cc: Likewise.
6636 * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
6637 Likewise.
6638 * testsuite/23_containers/set/debug/60499.cc: Likewise.
6639 * testsuite/23_containers/set/debug/construct1_neg.cc: Likewise.
6640 * testsuite/23_containers/set/debug/construct2_neg.cc: Likewise.
6641 * testsuite/23_containers/set/debug/construct3_neg.cc: Likewise.
6642 * testsuite/23_containers/set/debug/insert1_neg.cc: Likewise.
6643 * testsuite/23_containers/set/debug/insert2_neg.cc: Likewise.
6644 * testsuite/23_containers/set/debug/insert3_neg.cc: Likewise.
6645 * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
6646 Likewise.
6647 * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
6648 * testsuite/23_containers/unordered_map/debug/60499.cc: Likewise.
6649 * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: Likewise.
6650 * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: Likewise.
6651 * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
6652 Likewise.
6653 * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: Likewise.
6654 * testsuite/23_containers/unordered_map/debug/cend_neg.cc: Likewise.
6655 * testsuite/23_containers/unordered_map/debug/construct1_neg.cc:
6656 Likewise.
6657 * testsuite/23_containers/unordered_map/debug/construct2_neg.cc:
6658 Likewise.
6659 * testsuite/23_containers/unordered_map/debug/construct3_neg.cc:
6660 Likewise.
6661 * testsuite/23_containers/unordered_map/debug/end1_neg.cc: Likewise.
6662 * testsuite/23_containers/unordered_map/debug/end2_neg.cc: Likewise.
6663 * testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Likewise.
6664 * testsuite/23_containers/unordered_map/debug/insert2_neg.cc: Likewise.
6665 * testsuite/23_containers/unordered_map/debug/insert3_neg.cc: Likewise.
6666 * testsuite/23_containers/unordered_map/debug/
6667 invalid_local_iterator_compare_neg.cc: Likewise.
6668 * testsuite/23_containers/unordered_map/debug/
6669 invalid_local_iterator_range_neg.cc: Likewise.
6670 * testsuite/23_containers/unordered_map/debug/
6671 iterator_self_move_assign_neg.cc: Likewise.
6672 * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
6673 Likewise.
6674 * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
6675 Likewise.
6676 * testsuite/23_containers/unordered_map/debug/
6677 use_erased_local_iterator_neg.cc: Likewise.
6678 * testsuite/23_containers/unordered_map/debug/
6679 use_invalid_iterator_neg.cc: Likewise.
6680 * testsuite/23_containers/unordered_map/debug/
6681 use_invalid_local_iterator_neg.cc: Likewise.
6682 * testsuite/23_containers/unordered_multimap/debug/60499.cc: Likewise.
6683 * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc:
6684 Likewise.
6685 * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc:
6686 Likewise.
6687 * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
6688 Likewise.
6689 * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc:
6690 Likewise.
6691 * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc:
6692 Likewise.
6693 * testsuite/23_containers/unordered_multimap/debug/construct1_neg.cc:
6694 Likewise.
6695 * testsuite/23_containers/unordered_multimap/debug/construct2_neg.cc:
6696 Likewise.
6697 * testsuite/23_containers/unordered_multimap/debug/construct3_neg.cc:
6698 Likewise.
6699 * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc:
6700 Likewise.
6701 * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc:
6702 Likewise.
6703 * testsuite/23_containers/unordered_multimap/debug/insert1_neg.cc:
6704 Likewise.
6705 * testsuite/23_containers/unordered_multimap/debug/insert2_neg.cc:
6706 Likewise.
6707 * testsuite/23_containers/unordered_multimap/debug/insert3_neg.cc:
6708 Likewise.
6709 * testsuite/23_containers/unordered_multimap/debug/
6710 invalid_local_iterator_compare_neg.cc: Likewise.
6711 * testsuite/23_containers/unordered_multimap/debug/
6712 invalid_local_iterator_range_neg.cc: Likewise.
6713 * testsuite/23_containers/unordered_multimap/debug/
6714 iterator_self_move_assign_neg.cc: Likewise.
6715 * testsuite/23_containers/unordered_multimap/debug/
6716 max_load_factor_neg.cc: Likewise.
6717 * testsuite/23_containers/unordered_multimap/debug/
6718 self_move_assign_neg.cc: Likewise.
6719 * testsuite/23_containers/unordered_multimap/debug/
6720 use_erased_local_iterator_neg.cc: Likewise.
6721 * testsuite/23_containers/unordered_multimap/debug/
6722 use_invalid_iterator_neg.cc: Likewise.
6723 * testsuite/23_containers/unordered_multimap/debug/
6724 use_invalid_local_iterator_neg.cc: Likewise.
6725 * testsuite/23_containers/unordered_multiset/debug/60499.cc:
6726 Likewise.
6727 * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc:
6728 Likewise.
6729 * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc:
6730 Likewise.
6731 * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
6732 Likewise.
6733 * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc:
6734 Likewise.
6735 * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc:
6736 Likewise.
6737 * testsuite/23_containers/unordered_multiset/debug/construct1_neg.cc:
6738 Likewise.
6739 * testsuite/23_containers/unordered_multiset/debug/construct2_neg.cc:
6740 Likewise.
6741 * testsuite/23_containers/unordered_multiset/debug/construct3_neg.cc:
6742 Likewise.
6743 * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc:
6744 Likewise.
6745 * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc:
6746 Likewise.
6747 * testsuite/23_containers/unordered_multiset/debug/insert1_neg.cc:
6748 Likewise.
6749 * testsuite/23_containers/unordered_multiset/debug/insert2_neg.cc:
6750 Likewise.
6751 * testsuite/23_containers/unordered_multiset/debug/insert3_neg.cc:
6752 Likewise.
6753 * testsuite/23_containers/unordered_multiset/debug/
6754 invalid_local_iterator_compare_neg.cc: Likewise.
6755 * testsuite/23_containers/unordered_multiset/debug/
6756 invalid_local_iterator_range_neg.cc: Likewise.
6757 * testsuite/23_containers/unordered_multiset/debug/
6758 iterator_self_move_assign_neg.cc: Likewise.
6759 * testsuite/23_containers/unordered_multiset/debug/
6760 max_load_factor_neg.cc: Likewise.
6761 * testsuite/23_containers/unordered_multiset/debug/
6762 self_move_assign_neg.cc: Likewise.
6763 * testsuite/23_containers/unordered_multiset/debug/
6764 use_erased_local_iterator_neg.cc: Likewise.
6765 * testsuite/23_containers/unordered_multiset/debug/
6766 use_invalid_iterator_neg.cc: Likewise.
6767 * testsuite/23_containers/unordered_multiset/debug/
6768 use_invalid_local_iterator_neg.cc: Likewise.
6769 * testsuite/23_containers/unordered_set/debug/60499.cc: Likewise.
6770 * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: Likewise.
6771 * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: Likewise.
6772 * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
6773 Likewise.
6774 * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: Likewise.
6775 * testsuite/23_containers/unordered_set/debug/cend_neg.cc: Likewise.
6776 * testsuite/23_containers/unordered_set/debug/construct1_neg.cc:
6777 Likewise.
6778 * testsuite/23_containers/unordered_set/debug/construct2_neg.cc:
6779 Likewise.
6780 * testsuite/23_containers/unordered_set/debug/construct3_neg.cc:
6781 Likewise.
6782 * testsuite/23_containers/unordered_set/debug/end1_neg.cc: Likewise.
6783 * testsuite/23_containers/unordered_set/debug/end2_neg.cc: Likewise.
6784 * testsuite/23_containers/unordered_set/debug/insert1_neg.cc: Likewise.
6785 * testsuite/23_containers/unordered_set/debug/insert2_neg.cc: Likewise.
6786 * testsuite/23_containers/unordered_set/debug/insert3_neg.cc: Likewise.
6787 * testsuite/23_containers/unordered_set/debug/
6788 invalid_local_iterator_compare_neg.cc: Likewise.
6789 * testsuite/23_containers/unordered_set/debug/
6790 invalid_local_iterator_range_neg.cc: Likewise.
6791 * testsuite/23_containers/unordered_set/debug/
6792 iterator_self_move_assign_neg.cc: Likewise.
6793 * testsuite/23_containers/unordered_set/debug/
6794 max_load_factor_neg.cc: Likewise.
6795 * testsuite/23_containers/unordered_set/debug/
6796 self_move_assign_neg.cc: Likewise.
6797 * testsuite/23_containers/unordered_set/debug/
6798 use_erased_local_iterator_neg.cc: Likewise.
6799 * testsuite/23_containers/unordered_set/debug/
6800 use_invalid_iterator_neg.cc: Likewise.
6801 * testsuite/23_containers/unordered_set/debug/
6802 use_invalid_local_iterator_neg.cc: Likewise.
6803 * testsuite/23_containers/vector/debug/52433.cc: Likewise.
6804 * testsuite/23_containers/vector/debug/60499.cc: Likewise.
6805 * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise.
6806 * testsuite/23_containers/vector/debug/
6807 iterator_self_move_assign_neg.cc: Likewise.
6808 * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
6809 Likewise.
6810 * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
6811 * testsuite/25_algorithms/pop_heap/complexity.cc: Likewise.
6812 * testsuite/25_algorithms/push_heap/complexity.cc: Likewise.
6813 * testsuite/25_algorithms/sort_heap/complexity.cc: Likewise.
6814 * testsuite/29_atomics/atomic/60658.cc: Likewise.
6815 * testsuite/29_atomics/atomic/60695.cc: Likewise.
6816 * testsuite/29_atomics/atomic/62259.cc: Likewise.
6817 * testsuite/29_atomics/atomic/64658.cc: Likewise.
6818 * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
6819 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
6820 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
6821 Likewise.
6822
68232016-09-11 Jonathan Wakely <jwakely@redhat.com>
6824
6825 * libsupc++/new_opant.cc: Include exception_defines.h.
6826 * libsupc++/new_opvant.cc: Likewise.
6827
68282016-09-09 Jason Merrill <jason@redhat.com>
6829
6830 Implement P0035R4, C++17 new of over-aligned types.
6831 * libsupc++/new: Declare aligned new/delete operators.
6832 * config/abi/pre/gnu.ver: Export them.
6833 * configure.ac: Check for aligned_alloc, posix_memalign, memalign,
6834 _aligned_malloc.
6835 * libsupc++/new_opa.cc: New.
6836 * libsupc++/new_opant.cc: New.
6837 * libsupc++/new_opva.cc: New.
6838 * libsupc++/new_opva.cc: New.
6839 * libsupc++/del_opa.cc: New.
6840 * libsupc++/del_opant.cc: New.
6841 * libsupc++/del_opsa.cc: New.
6842 * libsupc++/del_opva.cc: New.
6843 * libsupc++/del_opvant.cc: New.
6844 * libsupc++/del_opvsa.cc: New.
6845 * libsupc++/Makefile.am: Build them.
6846
68472016-09-05 Tim Shen <timshen@google.com>
6848
6849 * include/std/variant: include bits/move.h for std::addressof.
6850
68512016-09-05 Mikhail Strelnikov <mikhail.strelnikov@gmail.com>
6852
6853 * include/std/variant (_Variant_storage::_M_storage()): Use
6854 std::addressof instead of operator& to take address.
6855
68562016-09-02 Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org>
6857
6858 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Check for presence of
6859 setrlimit on both native and cross targets.
6860 * configure: Regenerate.
6861
68622016-08-31 Jonathan Wakely <jwakely@redhat.com>
6863
6864 * include/bits/shared_ptr.h (_Assignable): New alias template.
6865 (shared_ptr::operator=(const shared_ptr<_Tp1>&))
6866 (shared_ptr::operator=(shared_ptr<_Tp1>&&))
6867 (shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6868 _Assignable.
6869 * include/bits/shared_ptr_base.h (_Assignable): New alias template.
6870 (__shared_ptr::operator=(const __shared_ptr<_Tp1>&))
6871 (__shared_ptr::operator=(__shared_ptr<_Tp1>&&))
6872 (__shared_ptr::operator=(unique_ptr<_Tp1>&&)): Constrain with
6873 _Assignable.
6874 (__shared_ptr::reset(_Tp1*), __shared_ptr::reset(_Tp1*, _Deleter))
6875 (__shared_ptr::reset(_Tp1*, _Deleter, _Alloc)): Constrain with
6876 _Convertible.
6877 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Change dg-error to
6878 match on any line.
6879 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
6880 * testsuite/20_util/shared_ptr/assign/sfinae.cc: New test.
6881 * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Update
6882 expected errors. Remove unnecessary code.
6883 * testsuite/20_util/shared_ptr/modifiers/reset_sfinae.cc: New test.
6884
6885 * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Move
6886 comparison object.
6887 * testsuite/23_containers/set/move_comparison.cc: New test.
6888
6889 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
6890 New test.
6891
68922016-08-30 Ville Voutilainen <ville.voutilainen@gmail.com>
6893
6894 PR libstdc++/77395
6895 * include/std/type_traits (is_constructible): Forward-declare...
6896 (__is_base_to_derived_ref): ...and use here.
6897 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
6898 * testsuite/20_util/is_constructible/77395.cc: New.
6899 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
6900 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
6901 Likewise.
6902 * testsuite/20_util/tuple/77395.cc: New.
6903
69042016-08-30 Uros Bizjak <ubizjak@gmail.com>
6905
6906 * testsuite/22_locale/time_get/get/char/2.cc: Move dg-do run
6907 directive above dg-require-namedlocale directive.
6908 * testsuite/22_locale/time_get/get/wchar_t/2.cc: Ditto.
6909 * testsuite/27_io/manipulators/extended/get_time/char/2.cc: Ditto.
6910 * testsuite/27_io/manipulators/extended/get_time/wchar_t/2.cc: Ditto.
6911 * testsuite/27_io/manipulators/extended/put_time/char/2.cc: Ditto.
6912 * testsuite/27_io/manipulators/extended/put_time/wchar_t/2.cc: Ditto.
6913
69142016-08-27 Tim Shen <timshen@google.com>
6915
6916 PR libstdc++/77356
6917 * include/bits/regex_compiler.tcc(_M_insert_bracket_matcher,
6918 _M_expression_term): Modify to support dash literal.
6919 * include/bits/regex_scanner.h: Add dash as a token type to make
6920 a different from the mandated dash literal by escaping.
6921 * include/bits/regex_scanner.tcc(_M_scan_in_bracket): Emit dash
6922 token in bracket expression parsing.
6923 * testsuite/28_regex/regression.cc: Add new testcases.
6924
69252016-08-26 Jonathan Wakely <jwakely@redhat.com>
6926
6927 PR libstdc++/51960
6928 * doc/xml/manual/intro.xml: Document DR 2127 change.
6929 * doc/html/*: Regenerate.
6930 * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
6931 (operator++(), operator++(int)): Use injected class name.
6932 * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
6933
6934 * testsuite/*: Use { target c++11 } or { target c++14 } instead of
6935 using -std in dg-options.
6936
69372016-08-26 Jonathan Wakely <jwakely@redhat.com>
6938 Pedro Alves <palves@redhat.com>
6939
6940 * testsuite/lib/gdb-test.exp (gdb-dg-runtest): Define wrapper to save
6941 and restore dg-interpreter-batch-mode.
6942 * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Use
6943 gdb-dg-runtest instead of dg-runtest.
6944 * testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
6945
69462016-08-26 Jonathan Wakely <jwakely@redhat.com>
6947
6948 * config/abi/pre/gnu.ver (GLIBCXX_3.4, GLIBCXX_3.4.21): Use more
6949 precise patterns for basic_string constructors.
6950 (GLIBCXX_3.4.23): Export new constructors.
6951 * doc/xml/manual/intro.xml: Document LWG 2583 status.
6952 * doc/html/*: Regenerate.
6953 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
6954 (basic_string(const basic_string&, size_type, const Alloc&)): Add
6955 new constructor for LWG 2583.
6956 (basic_string(const basic_string&, size_type, size_type)): Remove
6957 default argument.
6958 [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
6959 * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]: Define it.
6960 * testsuite/21_strings/basic_string/cons/char/8.cc: New test.
6961 * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: New test.
6962
69632016-08-24 Aditya Kumar <hiraditya@msn.com>
6964
6965 * include/bits/algorithmfwd.h: Remove trailing whitespace.
6966 * include/bits/shared_ptr_base.h: Likewise.
6967
69682016-08-23 Jonathan Wakely <jwakely@redhat.com>
6969
6970 * include/debug/array (array): Add _GLIBCXX17_CONSTEXPR.
6971 * include/profile/array (array): Likewise.
6972 (array::swap): Fix exception specification for zero-sized arrays.
6973
6974 PR libstdc++/77334
6975 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
6976 (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
6977 * testsuite/23_containers/map/77334.cc: New test.
6978
6979 * doc/xml/manual/using.xml: Remove reference to -pthreads option.
6980 * doc/html/*: Regenerate.
6981
6982 * testsuite/experimental/feat-cxx14.cc: Only preprocess, not compile.
6983 * testsuite/experimental/feat-lib-fund.cc: Likewise.
6984
6985 PR libstdc++/71771
6986 * include/bits/stl_iterator.h
6987 (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Only
6988 define for C++98 mode.
6989 (operator-(move_iterator<Iter>, move_iterator<Iter>): Don't define.
6990 * testsuite/24_iterators/headers/iterator/synopsis.cc: Use
6991 -std=gnu++98.
6992 * testsuite/24_iterators/headers/iterator/synopsis_c++11.cc: New test.
6993 * testsuite/24_iterators/headers/iterator/synopsis_c++14.cc: New test.
6994 * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: New test.
6995 * testsuite/24_iterators/move_iterator/greedy_ops.cc: Don't test
6996 difference operator.
6997 * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Only test
6998 difference operator for C++98.
6999 * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
7000
7001 * include/bits/c++config (_GLIBCXX17_CONSTEXPR): Define.
7002 * include/bits/range_access.h (begin, end, rbegin, rend, crbegin)
7003 (crend): Add _GLIBCXX17_CONSTEXPR as per P0031R0.
7004 * include/bits/stl_iterator.h (reverse_iterator, move_iterator)
7005 (__make_reverse_iterator, make_reverse_iterator, make_move_iterator):
7006 Likewise.
7007 * include/bits/stl_iterator_base_funcs.h (__distance, __advance): Add
7008 _GLIBCXX14_CONSTEXPR.
7009 (distance, advance, next, prev): Add _GLIBCXX17_CONSTEXPR.
7010 * include/std/array (array::begin, array::end, array::rbegin)
7011 (array::rend, array::cbegin, array:cend, array::crbegin)
7012 (array::crend, array::operator[], array::at, array::front)
7013 (array::back, array::data): Likewise.
7014 * testsuite/24_iterators/headers/iterator/range_access.cc: Replace
7015 with separate tests for C++11, C++14, and C++17.
7016 * testsuite/24_iterators/headers/iterator/range_access_c++11.cc: New.
7017 * testsuite/24_iterators/headers/iterator/range_access_c++14.cc: New.
7018 * testsuite/24_iterators/headers/iterator/range_access_c++17.cc: New.
7019
70202016-08-22 Tim Shen <timshen@google.com>
7021
7022 Split _M_dfs() into smaller functions.
7023 * regex_executor.h(_M_handle_repeat, _M_handle_subexpr_begin)
7024 (_M_handle_subexpr_end, _M_handle_line_begin_assertion)
7025 (_M_handle_line_end_assertion, _M_handle_word_boundary)
7026 (_M_handle_subexpr_lookahead, _M_handle_match)
7027 (_M_handle_backref, _M_handle_accept, _M_handle_alternative):
7028 Add separate function declarations.
7029 * regex_executor.tcc: Split _M_dfs() into multiple handler functions.
7030
70312016-08-22 Gleb Natapov <gleb@scylladb.com>
7032
7033 PR libstdc++/68297
7034 * config/abi/pre/gnu-versioned-namespace.ver: Export
7035 __cxa_init_primary_exception and std::exception_ptr(void*).
7036 * config/abi/pre/gnu.ver (CXXABI_1.3.11) : Add new symbol version and
7037 export __cxa_init_primary_exception and std::exception_ptr(void*).
7038 * include/Makefile.am: Add new headers.
7039 * include/Makefile.in: Regenerate.
7040 * libsupc++/Makefile.am: Add new headers.
7041 * libsupc++/Makefile.in: Regenerate.
7042 * libsupc++/cxxabi.h (__cxa_allocate_exception): Move to ...
7043 * libsupc++/cxxabi_init_exception.h: New header.
7044 (__cxa_init_primary_exception): Declare.
7045 * libsupc++/eh_throw.cc (__cxa_init_primary_exception): Define.
7046 (__cxa_throw): Use __cxa_init_primary_exception.
7047 * libsupc++/exception (std::exception): Move to ...
7048 * libsupc++/exception.h: New header.
7049 * libsupc++/exception_ptr.h (__exception_ptr::exception_ptr): Add
7050 friend declaration.
7051 (__exception_ptr::__dest_thunk): New function template.
7052 (std::make_exception_ptr) [__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]:
7053 Use __cxa_allocate_exception and __cxa_init_primary_exception to
7054 create exception_ptr.
7055 * libsupc++/typeinfo: Include bits/exception.h instead of exception.
7056 * testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.11 version.
7057
70582016-08-22 Jonathan Wakely <jwakely@redhat.com>
7059
7060 * doc/xml/api.xml: Replace hardcoded links for specific versions with
7061 link to docs for all releases.
7062 * doc/html/*: Regenerate.
7063
7064 PR libstdc++/77322
7065 * doc/xml/manual/intro.xml: Document DR 2062 change.
7066 * include/std/functional (function::swap): Add noexcept.
7067 (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
7068 * testsuite/20_util/function/77322.cc: New test.
7069
70702016-08-19 Jonathan Wakely <jwakely@redhat.com>
7071
7072 * testsuite/21_strings/basic_string/pthread18185.cc: Use -pthread for
7073 *-*-solaris* instead of -pthreads.
7074 * testsuite/21_strings/basic_string/pthread4.cc : Likewise.
7075 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
7076 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
7077 * testsuite/23_containers/list/pthread1.cc: Likewise.
7078 * testsuite/23_containers/list/pthread5.cc: Likewise.
7079 * testsuite/23_containers/map/pthread6.cc: Likewise.
7080 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
7081 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
7082 * testsuite/30_threads/shared_mutex/*: Likewise.
7083 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
7084 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
7085 default_weaktoshared.cc: Likewise.
7086 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
7087 mutex_weaktoshared.cc: Likewise.
7088 * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. Use
7089 dg-require-effective-target instead of using -std option.
7090 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
7091 Likewise.
7092 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
7093 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
7094 Likewise.
7095 * testsuite/30_threads/async/*: Likewise.
7096 * testsuite/30_threads/call_once/*: Likewise.
7097 * testsuite/30_threads/condition_variable/*: Likewise.
7098 * testsuite/30_threads/condition_variable_any/*: Likewise.
7099 * testsuite/30_threads/future/*: Likewise.
7100 * testsuite/30_threads/lock/*: Likewise.
7101 * testsuite/30_threads/mutex/*: Likewise.
7102 * testsuite/30_threads/packaged_task/*: Likewise.
7103 * testsuite/30_threads/promise/*: Likewise.
7104 * testsuite/30_threads/recursive_mutex/*: Likewise.
7105 * testsuite/30_threads/recursive_timed_mutex/*: Likewise.
7106 * testsuite/30_threads/shared_future/*: Likewise.
7107 * testsuite/30_threads/shared_lock/*: Likewise.
7108 * testsuite/30_threads/shared_timed_mutex/*: Likewise.
7109 * testsuite/30_threads/this_thread/*: Likewise.
7110 * testsuite/30_threads/thread/*: Likewise.
7111 * testsuite/30_threads/timed_mutex/*: Likewise.
7112 * testsuite/30_threads/try_lock/*: Likewise.
7113 * testsuite/30_threads/unique_lock/*: Likewise.
7114
7115 * doc/xml/manual/status_cxx2017.xml: Update status of not_fn.
7116 * doc/html/*: Regenerate.
7117 * include/experimental/functional (_Not_fn, not_fn): Match C++17
7118 semantics.
7119 * include/std/functional (_Not_fn, not_fn): Define for C++17.
7120 * testsuite/20_util/not_fn/1.cc: New.
7121 * testsuite/experimental/functional/not_fn.cc: Test abstract class.
7122 Remove test for volatile-qualified wrapper.
7123
7124 * include/std/atomic (atomic::is_always_lock_free): Define.
7125 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
7126 * testsuite/29_atomics/atomic/is_always_lock_free.cc: New.
7127 * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc: New.
7128 * doc/xml/manual/status_cxx2017.xml: Update status.
7129 * doc/html/*: Regenerate.
7130
7131 * include/experimental/tuple (apply): Qualify call to __apply_impl.
7132 * include/std/tuple (apply): Likewise.
7133 * testsuite/experimental/system_error/value.cc: Fix ambiguities in
7134 C++17 mode.
7135 * testsuite/experimental/tuple/tuple_size.cc: Likewise.
7136 * testsuite/experimental/type_traits/value.cc: Likewise.
7137
7138 * doc/xml/manual/status_cxx2017.xml: Update status of make_from_tuple
7139 and variant.
7140 * doc/html/*: Regenerate.
7141
71422016-08-18 Ville Voutilainen <ville.voutilainen@gmail.com>
7143
7144 Implement the latest proposed resolution of LWG 2756.
7145 * include/std/optional (Optional_base(const _Tp&))
7146 (Optional_base(_Tp&&), using _Base::_Base): Remove.
7147 (optional(nullopt_t)): New.
7148 (optional(_Up&&)): Invoke base directly with in_place
7149 rather than creating a temporary, add default template
7150 argument, change constraints.
7151 (optional(const optional<_Up>&)): Invoke base directly
7152 with in_place, remove unnecessary constraints.
7153 (optional(optional<_Up>&& __t)): Likewise.
7154 (optional(in_place_t, _Args&&...)): New.
7155 (optional(in_place_t, initializer_list<_Up>, _Args&&...)): Likewise.
7156 (operator=(_Up&&)): Add default template argument, change constraints.
7157 (operator=(const optional<_Up>&)): Put is_same first in the
7158 constraints.
7159 (operator=(optional<_Up>&&)): Likewise.
7160 * testsuite/20_util/optional/assignment/5.cc: Add a test to
7161 verify assignment from something that can't be perfect-forwarded.
7162 * testsuite/20_util/optional/cons/value.cc: Add tests to verify
7163 that a nested optional is disengaged when constructed
7164 from a disengaged element type, and to verify that assignments
7165 from an engaged element type engage the optional.
7166
71672016-08-18 Tim Shen <timshen@google.com>
7168
7169 Implement <variant>
7170
7171 * include/Makefile.am: Add new file std/variant.
7172 * include/Makefile.in: Generated from Makefile.am.
7173 * include/bits/enable_special_members.h: Add a tag type to allow
7174 the construction in non-default constructor.
7175 * include/bits/uses_allocator.h: Add convenience traits to
7176 detect constructibility.
7177 * include/std/variant: Implement <variant>.
7178 * testsuite/20_util/variant/compile.cc: Compile-time tests.
7179 * testsuite/20_util/variant/run.cc: Runtime tests.
7180
71812016-08-18 Jonathan Wakely <jwakely@redhat.com>
7182
7183 * doc/xml/manual/test.xml (test.run.permutations): Expand section.
7184 (test.new_tests): Rewrite section.
7185 (tests.dg.directives): New section.
7186 * doc/html/*: Regenerate.
7187
7188 * doc/xml/manual/test.xml: Improve documentation of test targets.
7189 Document new-abi-baseline, check-debug, and check-parallel targets.
7190
7191 * doc/xml/manual/build_hacking.xml: New section on shared library
7192 versioning.
7193
7194 * doc/xml/manual/build_hacking.xml: Improve markup.
7195 * doc/xml/manual/test.xml: Likewise. Change section title from "Test"
7196 to "Testing".
7197 * doc/xml/faq.xml: Change link text to "Testing".
7198
7199 * testsuite/tr1/3_function_objects/function/10.cc: Remove unintended
7200 dg-options directive.
7201
72022016-08-17 Jonathan Wakely <jwakely@redhat.com>
7203
7204 * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
7205 directive and use effective target instead of dg-options.
7206
7207 * testsuite/20_util/hash/chi2_q_bit_flip_set.cc: Use effective target
7208 instead of -std in dg-options.
7209 * testsuite/20_util/hash/chi2_q_bit_string_set.cc: Likewise.
7210 * testsuite/20_util/hash/chi2_q_numeric_pattern_set.cc: Likewise.
7211 * testsuite/20_util/hash/chi2_q_uniform_random.cc: Likewise.
7212 * testsuite/20_util/hash/quality.cc: Likewise.
7213 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
7214 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
7215 * testsuite/25_algorithms/nth_element/random_test.cc: Likewise.
7216 * testsuite/25_algorithms/partial_sort/random_test.cc: Likewise.
7217 * testsuite/25_algorithms/partial_sort_copy/random_test.cc: Likewise.
7218 * testsuite/25_algorithms/sort/random_test.cc: Likewise.
7219
7220 * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
7221 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
7222 * testsuite/27_io/rvalue_streams.cc: Likewise.
7223
7224 * testsuite/26_numerics/complex/literals/types.cc: Add comment.
7225
7226 * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
7227 Remove duplicate dg-options directive.
7228
7229 * testsuite/ext/profile/all.cc: Use effective target instead of
7230 -std=gnu++11. Use dg-additional-options instead of repeating options.
7231
7232 * testsuite/20_util/bind/ref_neg.cc: Use effective target instead of
7233 -std=gnu++11. Add -fno-show-columns to dg-options. Use dg-prune-output
7234 instead of dg-excess-errors.
7235
7236 * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: Disable
7237 test for C++17.
7238 * testsuite/experimental/chrono/value.cc: Avoid ambiguities in C++17.
7239 * testsuite/experimental/ratio/value.cc: Likewise.
7240 * testsuite/ext/pb_ds/regression/hash_map_rand.cc: Disable test for
7241 C++17.
7242 * testsuite/ext/pb_ds/regression/hash_set_rand.cc: Likewise.
7243 * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: Likewise.
7244 * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: Likewise.
7245 * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Likewise.
7246 * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Likewise.
7247 * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
7248 * testsuite/ext/pb_ds/regression/trie_map_rand.cc: Likewise.
7249 * testsuite/ext/pb_ds/regression/trie_set_rand.cc: Likewise.
7250 * testsuite/tr1/5_numerical_facilities/special_functions/
7251 10_cyl_bessel_k/airy.cc: Adjust namespace of __detail::__airy for
7252 C++17 compatibility.
7253
7254 * testsuite/24_iterators/headers/iterator/range_access.cc: Adjust
7255 expected signatures for C++14 compatibility.
7256
7257 PR libstdc++/77264
7258 * include/bits/basic_string.h (operator=(__sv_type)
7259 (append(__sv_type), assign(__sv_type), insert(size_type, __sv_type))
7260 (replace(size_type, size_type, __sv_type))
7261 (replace(const_iterator, const_iterator, __sv_type))
7262 (find(__sv_type, size_type), rfind(__sv_type, size_type))
7263 (compare(size_type, size_type, __sv_type)): Reformat.
7264 (_If_sv): Define helper for SFINAE constaints.
7265 (append(const _Tp&, size_type, size_type))
7266 (assign(const _Tp&, size_type, size_type))
7267 (insert(size_type, const _Tp&, size_type, size_type))
7268 (replace(size_type, size_type, const _Tp&, size_type, size_type)):
7269 Use _If_sv.
7270 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc: Test
7271 SFINAE constraints.
7272 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
7273 Likewise.
7274 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7275 Likewise.
7276 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
7277 Likewise.
7278 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
7279 Likewise.
7280 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
7281 Likewise.
7282 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
7283 Likewise.
7284 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
7285 Likewise.
7286 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
7287 Likewise.
7288 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
7289 Likewise.
7290 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
7291 Likewise.
7292
72932016-08-16 Jonathan Wakely <jwakely@redhat.com>
7294
7295 PR libstdc++/72847
7296 * include/bits/stl_bvector.h (_Bvector_base::_M_deallocate): Zero
7297 pointers to start and end of storage.
7298 * testsuite/23_containers/vector/bool/72847.cc: New test.
7299 * include/bits/vector.tcc (vector<bool>::_M_reallocate): Only update
7300 _M_finish after deallocating.
7301 (vector<bool>::_M_fill_insert): Likewise.
7302 (vector<bool>::_M_insert_range): Likewise.
7303 (vector<bool>::_M_insert_aux): Likewise.
7304
73052016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com>
7306
7307 Implement LWG 2744 and LWG 2754.
7308 * include/std/any (any(ValueType&&)): Constrain with __is_in_place_type.
7309 (any(in_place_type_t<_ValueType>, _Args&&...)): Use _Decay.
7310 (any(in_place_type_t<_ValueType>, initializer_list<_Up>, _Args&&...)):
7311 Likewise.
7312 (emplace(_Args&&...)): Likewise.
7313 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
7314 * include/std/utility: (__is_in_place_type_impl): New.
7315 (__is_in_place_type): Likewise.
7316 * testsuite/20_util/any/assign/emplace.cc: Add tests for decaying
7317 emplace.
7318 * testsuite/20_util/any/cons/in_place.cc: Add tests for decaying
7319 in_place constructor.
7320 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
7321 * testsuite/20_util/any/requirements.cc: Add a test for
7322 in_place-constructing a non-default-constructible type.
7323
73242016-08-15 Ville Voutilainen <ville.voutilainen@gmail.com>
7325
7326 Add a feature macro for C++17 make_from_tuple.
7327 * include/std/tuple (__cpp_lib_make_from_tuple): New.
7328 (__make_from_tuple_impl(_Tuple&&, index_sequence<_Idx...>)):
7329 Qualify the call to get<>().
7330 * testsuite/20_util/tuple/make_from_tuple/1.cc: Adjust.
7331
73322016-08-15 Uros Bizjak <ubizjak@gmail.com>
7333
7334 * src/filesystem/ops.cc: Always include ostream and
7335 ext/stdio_filebuf.h.
7336 (do_copy_file): Check if _GLIBCXX_USE_FCHMODAT is defined.
7337 [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
7338 sendfile fails with ENOSYS or EINVAL.
7339
73402016-08-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
7341
7342 PR libstdc++/72840
7343 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Fix dg-error
7344 syntax.
7345
73462016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com>
7347
7348 Implement C++17 make_from_tuple.
7349 * include/std/tuple (__make_from_tuple_impl, make_from_tuple): New.
7350 * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
7351
73522016-08-11 Ville Voutilainen <ville.voutilainen@gmail.com>
7353
7354 Implement LWG 2758.
7355 * include/bits/basic_string.h
7356 (append(__sv_type, size_type, size_type)): Turn into a template,
7357 change parameter type, constrain, add a conversion to __sv_type
7358 from the dependent parameter type.
7359 (assign(__sv_type, size_type, size_type)): Likewise.
7360 (insert(size_type, __sv_type, size_type, size_type)): Likewise.
7361 (replace(size_type, size_type, __sv_type, size_type, size_type)):
7362 Likewise.
7363 (compare(size_type, size_type,__sv_type, size_type, size_type)):
7364 Likewise.
7365 * testsuite/21_strings/basic_string/lwg2758.cc: New.
7366
73672016-08-06 Jonathan Wakely <jwakely@redhat.com>
7368
7369 * doc/xml/manual/status_cxx2017.xml: Update status table.
7370 * doc/html/manual/status.html: Regenerate.
7371
7372 * testsuite/lib/libstdc++.exp: Fix typo in comment.
7373
7374 PR libstdc++/72820
7375 * include/std/functional (_Function_base::_Base_manager::_M_clone):
7376 Qualify new operator.
7377 * testsuite/20_util/function/cons/72820.cc: New test.
7378
7379 * doc/xml/manual/status_cxx2017.xml: Add missing LFTSv2 features.
7380 * doc/html/manual/status.html: Regenerate.
7381 * include/Makefile.am: Add new header.
7382 * include/Makefile.in: Regenerate.
7383 * include/bits/invoke.h: New header.
7384 (__invoke): Make constexpr. Add && to types in exception specification.
7385 * include/experimental/tuple (apply, __apply_impl): Fix non-reserved
7386 names. Include <bits/invoke.h> and use std::__invoke.
7387 * include/std/functional (__invfwd, __invoke_impl, __invoke): Move to
7388 new header.
7389 (invoke): Add && to types in exception specification.
7390 * include/std/tuple (apply, __apply_impl): Define for C++17.
7391 * testsuite/20_util/tuple/apply/1.cc: New test.
7392 * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust dg-error
7393 lineno.
7394
73952016-08-05 Jonathan Wakely <jwakely@redhat.com>
7396
7397 * doc/xml/manual/status_cxx2017.xml: Correct shared_from_this status.
7398 * doc/html/manual/status.html: Regenerate.
7399
7400 * include/std/chrono (floor, ceil, round, abs): New for C++17.
7401 * testsuite/20_util/duration_cast/rounding.cc: New test.
7402 * testsuite/20_util/time_point_cast/rounding.cc: New test.
7403 * doc/xml/manual/status_cxx2017.xml: Update status table.
7404 * doc/html/manual/status.html: Regenerate.
7405 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
7406 dg-error lineno.
7407 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7408 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7409 * testsuite/20_util/duration/literals/range.cc: Likewise.
7410
7411 * include/std/functional (__callable_functor): Remove.
7412 (_Function_handler::_M_invoke): Use __invoke instead of
7413 __callable_functor or mem_fn.
7414 (function::_Callable): Use lvalue in result_of expression.
7415 (function): Remove TODO comments about allocators.
7416 * testsuite/20_util/function/cons/refqual.cc: New test.
7417
74182016-08-04 Jonathan Wakely <jwakely@redhat.com>
7419
7420 * doc/xml/manual/status_cxx2017.xml: Update status table.
7421 * include/std/functional (__inv_unwrap): Move to <type_traits>.
7422 (__invoke_impl): Remove exception specifications.
7423 (__invoke, invoke): Add exception specifications using
7424 __is_nothrow_callable.
7425 * include/std/type_traits (__inv_unwrap): Move from <functional>.
7426 (__is_callable_impl, __call_is_nt, __call_is_nothrow): New helpers.
7427 (__is_callable, __is_nothrow_callable): New traits.
7428 (is_callable, is_callable_v): New C++17 traits.
7429 (is_nothrow_callable, is_nothrow_callable_v): Likewise.
7430 * testsuite/20_util/is_callable/requirements/
7431 explicit_instantiation.cc: New test.
7432 * testsuite/20_util/is_callable/requirements/
7433 explicit_instantiation_ext.cc: New test.
7434 * testsuite/20_util/is_callable/requirements/typedefs.cc: New test.
7435 * testsuite/20_util/is_callable/requirements/typedefs_ext.cc: New
7436 test.
7437 * testsuite/20_util/is_callable/value.cc: New test.
7438 * testsuite/20_util/is_callable/value_ext.cc: New test.
7439 * testsuite/20_util/is_nothrow_callable/requirements/
7440 explicit_instantiation.cc: New test.
7441 * testsuite/20_util/is_nothrow_callable/requirements/
7442 explicit_instantiation_ext.cc: New test.
7443 * testsuite/20_util/is_nothrow_callable/requirements/typedefs.cc:
7444 New test.
7445 * testsuite/20_util/is_nothrow_callable/requirements/typedefs_ext.cc:
7446 New test.
7447 * testsuite/20_util/is_nothrow_callable/value.cc: New test.
7448 * testsuite/20_util/is_nothrow_callable/value_ext.cc: New test.
7449
7450 * doc/xml/manual/status_cxx2017.xml: Update C++17 status table.
7451 * doc/html/manual/status.html: Regenerate.
7452
7453 * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Use
7454 effective target not dg-options. Move check for feature-test macro to:
7455 * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
7456 New test.
7457
7458 * include/std/functional (_Unwrap): Rename to __inv_unwrap.
7459 (__invfwd): Adjust.
7460 (__invoke_impl): Remove unused template parameters.
7461 * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
7462 parameter.
7463 * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
7464 and test __invoke extension for C++11.
7465
74662016-08-03 Jonathan Wakely <jwakely@redhat.com>
7467
7468 * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this):
7469 Define feature-test macro.
7470 * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test
7471 for the macro.
7472
7473 * include/bits/shared_ptr.h (shared_ptr::weak_type): Define.
7474 * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define.
7475 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
7476 * testsuite/20_util/shared_ptr/requirements/weak_type.cc: New test.
7477 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
7478
7479 * include/std/utility (as_const): Define.
7480 * testsuite/20_util/as_const/1.cc: New test.
7481 * testsuite/20_util/as_const/rvalue_neg.cc: New test.
7482
7483 * include/bits/shared_ptr.h (owner_less): Add default template
7484 argument.
7485 * include/bits/shared_ptr_base.h (_Sp_owner_less<void, void>): Define
7486 specialization.
7487 (owner_less<void>): Define specialization.
7488 * include/bits/stl_function.h (__cpp_lib_transparent_operators):
7489 Update value.
7490 * testsuite/20_util/owner_less/void.cc: New test.
7491 * testsuite/experimental/feat-cxx14.cc: Update macro value tested.
7492
7493 * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
7494 Define feature-test macro.
7495 * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
7496 * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
7497 * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
7498 (__cpp_lib_type_trait_variable_templates): Define.
7499
7500 * include/bits/stl_function.h: Remove commented-out macro.
7501 * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
7502 Define feature-test macro.
7503 * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
7504
7505 * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for
7506 C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is
7507 true.
7508 * include/bits/specfun.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]: Don't
7509 do #error for C++17.
7510 * include/c_global/cmath: Check _GLIBCXX_USE_STD_SPEC_FUNCS instead
7511 of __STDCPP_WANT_MATH_SPEC_FUNCS__.
7512 * include/tr1/bessel_function.tcc: Likewise.
7513 * include/tr1/beta_function.tcc: Likewise.
7514 * include/tr1/cmath: Likewise.
7515 * include/tr1/ell_integral.tcc: Likewise.
7516 * include/tr1/exp_integral.tcc: Likewise.
7517 * include/tr1/gamma.tcc: Likewise.
7518 * include/tr1/hypergeometric.tcc: Likewise.
7519 * include/tr1/legendre_function.tcc: Likewise.
7520 * include/tr1/modified_bessel_func.tcc: Likewise.
7521 * include/tr1/poly_hermite.tcc: Likewise.
7522 * include/tr1/poly_laguerre.tcc: Likewise.
7523 * include/tr1/riemann_zeta.tcc: Likewise.
7524 * include/tr1/special_function_util.h: Likewise.
7525 * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: New.
7526
7527 * include/std/type_traits (has_trivial_default_constructor): Remove.
7528 (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise.
7529 * testsuite/20_util/has_trivial_copy_assign/requirements/
7530 explicit_instantiation.cc: Remove test.
7531 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
7532 line number.
7533 * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
7534 Likewise.
7535 * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
7536 * testsuite/20_util/has_trivial_copy_constructor/requirements/
7537 explicit_instantiation.cc: Likewise.
7538 * testsuite/20_util/has_trivial_copy_constructor/requirements/
7539 typedefs.cc: Likewise.
7540 * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
7541 * testsuite/20_util/has_trivial_default_constructor/requirements/
7542 explicit_instantiation.cc: Likewise.
7543 * testsuite/20_util/has_trivial_default_constructor/requirements/
7544 typedefs.cc: Likewise.
7545 * testsuite/20_util/has_trivial_default_constructor/value.cc:
7546 Likewise.
7547 * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7548 Check has_trivial_default_constructor, has_trivial_copy_constructor,
7549 and has_trivial_copy_assign are not defined.
7550 * testsuite/20_util/pair/requirements/dr801.cc: Remove commented out
7551 tests.
7552 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
7553 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
7554 dg-error line number.
7555 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7556 Likewise.
7557
75582016-08-02 Jonathan Wakely <jwakely@redhat.com>
7559
7560 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
7561 Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
7562 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
7563 Likewise.
7564 * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
7565 Likewise.
7566 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
7567 Likewise.
7568 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
7569 Likewise.
7570 * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
7571 Likewise.
7572 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
7573 Likewise.
7574
7575 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
7576 comments.
7577
7578 * testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Move
7579 dg-error to relevant line.
7580 * testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
7581 Likewise.
7582 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
7583
7584 * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
7585
7586 * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
7587 options are present that aren't valid for C.
7588 * testsuite/abi/header_cxxabi.c: Likewise.
7589
7590 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
7591 check_value.cc: Do not add special functions to namespace std in TR1
7592 test.
7593
7594 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
7595 run for C++11 and later.
7596 * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
7597 Likewise.
7598 * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
7599 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
7600 * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
7601 * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
7602 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
7603 Likewise.
7604 * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
7605 Likewise.
7606 * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
7607 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
7608 Likewise.
7609 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
7610 Likewise.
7611 * testsuite/special_functions/02_assoc_legendre/check_value.cc:
7612 Likewise.
7613 * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
7614 * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
7615 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
7616 * testsuite/special_functions/03_beta/check_value.cc: Likewise.
7617 * testsuite/special_functions/03_beta/compile.cc: Likewise.
7618 * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
7619 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
7620 * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
7621 Likewise.
7622 * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
7623 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
7624 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
7625 * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
7626 Likewise.
7627 * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
7628 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
7629 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
7630 * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
7631 Likewise.
7632 * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
7633 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
7634 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
7635 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
7636 Likewise.
7637 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
7638 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
7639 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
7640 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
7641 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
7642 Likewise.
7643 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
7644 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
7645 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
7646 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
7647 Likewise.
7648 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
7649 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
7650 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
7651 * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
7652 * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
7653 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
7654 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
7655 * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
7656 * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
7657 * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
7658 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
7659 * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
7660 * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
7661 * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
7662 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
7663 * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
7664 * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
7665 * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
7666 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
7667 * testsuite/special_functions/14_expint/check_value.cc: Likewise.
7668 * testsuite/special_functions/14_expint/compile.cc: Likewise.
7669 * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
7670 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
7671 * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
7672 * testsuite/special_functions/15_hermite/compile.cc: Likewise.
7673 * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
7674 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
7675 * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
7676 * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
7677 * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
7678 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
7679 * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
7680 * testsuite/special_functions/17_legendre/compile.cc: Likewise.
7681 * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
7682 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
7683 * testsuite/special_functions/18_riemann_zeta/check_value.cc:
7684 Likewise.
7685 * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
7686 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
7687 * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
7688 * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
7689 * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
7690 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
7691 * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
7692 * testsuite/special_functions/20_sph_legendre/check_value.cc:
7693 Likewise.
7694 * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
7695 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
7696 * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
7697 * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
7698 * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
7699 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
7700
7701 * testsuite/tr1/5_numerical_facilities/special_functions/
7702 08_cyl_bessel_i/check_value.cc: Use __attribute__((unused)) instead
7703 of [[gnu::unused]].
7704 * testsuite/tr1/5_numerical_facilities/special_functions/
7705 09_cyl_bessel_j/check_value.cc: Likewise.
7706 * testsuite/tr1/5_numerical_facilities/special_functions/
7707 10_cyl_bessel_k/check_value.cc: Likewise.
7708 * testsuite/tr1/5_numerical_facilities/special_functions/
7709 11_cyl_neumann/check_value.cc: Likewise.
7710 * testsuite/tr1/5_numerical_facilities/special_functions/
7711 21_sph_bessel/check_value.cc: Likewise.
7712 * testsuite/tr1/5_numerical_facilities/special_functions/
7713 23_sph_neumann/check_value.cc: Likewise.
7714
77152016-08-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7716
7717 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
7718 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
7719 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
7720 * config/abi/post/solaris2.11/baseline_symbols.txt: Likewise.
7721 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: Likewise.
7722 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: Likewise.
7723
77242016-08-02 Jonathan Wakely <jwakely@redhat.com>
7725
7726 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Skip
7727 test if -flto used.
7728
7729 * testsuite/lib/libstdc++.exp (v3-build_support): Add -fno-lto to
7730 additional flags for compiling libtestc++.a objects.
7731
77322016-08-01 Jonathan Wakely <jwakely@redhat.com>
7733
7734 * include/bits/basic_string.h (data() const): Update comment.
7735 (data()): Add non-const overload for C++17.
7736 * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
7737 * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
7738
7739 * include/bits/basic_string.tcc: Disable explicit instantiation
7740 declarations for C++17.
7741
7742 * testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
7743 ignored "xfail" from { dg-do compile { xfail selector } } directive.
7744 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
7745 Likewise.
7746 * testsuite/26_numerics/headers/cmath/
7747 c99_classification_macros_c++11.cc: Likewise.
7748 * testsuite/26_numerics/headers/cmath/
7749 c99_classification_macros_c++98.cc: Likewise.
7750 * testsuite/26_numerics/headers/cmath/
7751 c99_classification_macros_c.cc: Likewise.
7752
7753 * testsuite/backward/hash_set/check_construct_destroy.cc: Account
7754 for different construct/destroy counts in C++98 mode.
7755
7756 * testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
7757
7758 * testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
7759 later.
7760 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
7761 Likewise.
7762
7763 * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
7764 C++98-compatible initialization for array.
7765
7766 * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
7767 unused header and variable from compile-only test.
7768 * testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
7769 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
7770 * testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
7771 * testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
7772 Likewise.
7773
7774 * testsuite/experimental/string_view/operations/rfind/char/2.cc:
7775 Remove duplicate dg-options directive.
7776
7777 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
7778 808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
7779
7780 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
7781 linker options from compile-only tests.
7782 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7783 Likewise.
7784
7785 * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
7786 supported for C++11 and later.
7787 * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
7788 * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
7789
77902016-08-01 Uros Bizjak <ubizjak@gmail.com>
7791
7792 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
7793
77942016-07-31 Jonathan Wakely <jwakely@redhat.com>
7795
7796 * testsuite/20_util/conditional/requirements/typedefs.cc: Change to
7797 compile-only test.
7798
7799 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7800 Ensure test is compiled with optimization.
7801
7802 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7803 Adjust dg-prune-output pattern for error in C++98 mode.
7804
7805 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
7806 run for C++11 or later.
7807
7808 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
7809 test to not rely on GNU extension (escaped normal characters in POSIX
7810 BRE). Enable tests for other strings which are now supported.
7811
7812 * testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
7813 c++11 instead of setting -std=gnu++14.
7814
7815 PR libstdc++/72745
7816 * include/std/array (get): Use positive message for static assertions.
7817 * include/std/functional (_Safe_tuple_element_t): Fix indentation.
7818 * include/std/tuple (tuple_element<I, tuple<>>): Add partial
7819 specialization for invalid indices, with static assertion.
7820 * testsuite/20_util/tuple/element_access/get_neg.cc: New test.
7821
7822 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
7823 dg-error to relevant line.
7824 * testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
7825 Likewise.
7826 * testsuite/23_containers/forward_list/requirements/dr438/
7827 assign_neg.cc: Likewise.
7828 * testsuite/23_containers/forward_list/requirements/dr438/
7829 constructor_1_neg.cc: Likewise.
7830 * testsuite/23_containers/forward_list/requirements/dr438/
7831 constructor_2_neg.cc: Likewise.
7832 * testsuite/23_containers/forward_list/requirements/dr438/
7833 insert_neg.cc: Likewise.
7834 * testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
7835 Likewise.
7836 * testsuite/26_numerics/random/linear_congruential_engine/
7837 requirements/non_uint_neg.cc: Likewise.
7838 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
7839 Likewise. Also test for std::atomic_address.
7840
78412016-07-31 Ville Voutilainen <ville.voutilainen@gmail.com>
7842
7843 Add missing variable traits, fix testsuite failures.
7844 * include/bits/uses_allocator.h (uses_allocator_v): New.
7845 * include/std/functional (is_bind_expression_v, is_placeholder_v):
7846 Likewise.
7847 * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
7848 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
7849 * testsuite/20_util/duration/literals/range.cc: Likewise.
7850 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
7851 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
7852 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
7853 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
7854 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
7855 Likewise.
7856 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
7857 * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
7858 New.
7859
78602016-07-31 Jonathan Wakely <jwakely@redhat.com>
7861
7862 * testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
7863 not test 128-bit types.
7864 * testsuite/20_util/is_floating_point/value.cc: Likewise.
7865 * testsuite/20_util/is_integral/value.cc: Likewise.
7866 * testsuite/20_util/is_signed/value.cc: Likewise.
7867 * testsuite/20_util/is_unsigned/value.cc: Likewise.
7868 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
7869 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
7870 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
7871 Likewise.
7872 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
7873 Likewise.
7874
7875 * testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
7876
78772016-07-29 Ville Voutilainen <ville.voutilainen@gmail.com>
7878
7879 Implement C++17 variable templates for type traits.
7880 * include/std/chrono (treat_as_floating_point_v): New.
7881 * include/std/ratio (ratio_equal_v, ratio_not_equal_v)
7882 (ratio_less_v, ratio_less_equal_v, ratio_greater_v)
7883 (ratio_greater_equal_v): Likewise.
7884 * include/std/system_error (is_error_code_enum_v)
7885 (is_error_condition_enum_v): Likewise.
7886 * include/std/tuple (tuple_size_v): Likewise.
7887 * type_traits (conjunction_v, disjunction_v, negation_v)
7888 (is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
7889 (is_array_v, is_pointer_v, is_lvalue_reference_v)
7890 (is_rvalue_reference_v, is_member_object_pointer_v)
7891 (is_member_function_pointer_v, is_enum_v, is_union_v)
7892 (is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
7893 (is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
7894 (is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
7895 (is_trivially_copyable_v, is_standard_layout_v)
7896 (is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
7897 (is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
7898 (is_constructible_v, is_default_constructible_v)
7899 (is_copy_constructible_v, is_move_constructible_v)
7900 (is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
7901 (is_destructible_v, is_trivially_constructible_v)
7902 (is_trivially_default_constructible_v)
7903 (is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
7904 (is_trivially_assignable_v, is_trivially_copy_assignable_v)
7905 (is_trivially_move_assignable_v, is_trivially_destructible_v)
7906 (is_nothrow_constructible_v, is_nothrow_default_constructible_v)
7907 (is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
7908 (is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
7909 (is_nothrow_move_assignable_v, is_nothrow_destructible_v)
7910 (has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
7911 (is_same_v, is_base_of_v, is_convertible_v): Likewise.
7912 * testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
7913 * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
7914 Likewise.
7915 * testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
7916 * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
7917 * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
7918
79192016-07-29 Andreas Schwab <schwab@linux-m68k.org>
7920
7921 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
7922 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
7923 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
7924
79252016-07-29 Jonathan Wakely <jwakely@redhat.com>
7926
7927 * doc/xml/manual/abi.xml: Document 6.0.22 library version.
7928 * doc/html/manual/abi.html: Regenerate.
7929
7930 * acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
7931 * config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
7932 symbols.
7933 * configure: Regenerate.
7934 * testsuite/util/testsuite_abi.cc: Add new symbol version.
7935
7936 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
7937 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
7938 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
7939 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
7940 Likewise.
7941 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
7942 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
7943 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
7944
79452016-07-28 Jonathan Wakely <jwakely@redhat.com>
7946
7947 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
7948 Adjust dg-prune-output pattern for error in C++98 mode.
7949 * testsuite/23_containers/deque/requirements/dr438/
7950 constructor_1_neg.cc: Likewise.
7951 * testsuite/23_containers/deque/requirements/dr438/
7952 constructor_2_neg.cc: Likewise.
7953 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
7954 Likewise.
7955 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
7956 Likewise.
7957 * testsuite/23_containers/list/requirements/dr438/
7958 constructor_1_neg.cc: Likewise.
7959 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
7960 Likewise.
7961 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
7962 Likewise.
7963 * testsuite/23_containers/vector/requirements/dr438/
7964 constructor_1_neg.cc: Likewise.
7965 * testsuite/23_containers/vector/requirements/dr438/
7966 constructor_2_neg.cc: Likewise.
7967 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
7968 Likewise.
7969
7970 * testsuite/23_containers/vector/check_construct_destroy.cc: Account
7971 for different construct/destroy counts in C++98 mode.
7972
7973 * testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
7974 dg-options to dg-additional-options so that default options are used.
7975 * testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
7976 Likewise.
7977 * testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
7978 * testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
7979 Likewise.
7980 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
7981 Use dg-additional-options instead of repeating the common options.
7982
7983 * testsuite/22_locale/conversions/string/1.cc: Remove unintended
7984 dg-do compile directive.
7985 * testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
7986 dg-do directive.
7987 * testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
7988
79892016-07-28 Ville Voutilainen <ville.voutilainen@gmail.com>
7990
7991 Implement std::string_view and P0254r2,
7992 Integrating std::string_view and std::string.
7993 * include/Makefile.am: Add string_view and string_view.tcc
7994 to the exported headers.
7995 * include/Makefile.in: Likewise.
7996 * include/bits/basic_string.h: Include <string_view> in C++17 mode.
7997 (__sv_type): New.
7998 (basic_string(__sv_type, const _Alloc&)): Likewise.
7999 (operator=(__sv_type)): Likewise.
8000 (operator __sv_type()): Likewise.
8001 (operator+=(__sv_type)): Likewise.
8002 (append(__sv_type __sv)): Likewise.
8003 (append(__sv_type, size_type, size_type)): Likewise.
8004 (assign(__sv_type)): Likewise.
8005 (assign(__sv_type, size_type, size_type)): Likewise.
8006 (insert(size_type, __sv_type)): Likewise.
8007 (insert(size_type, __sv_type, size_type, size_type)): Likewise.
8008 (replace(size_type, size_type, __sv_type)): Likewise.
8009 (replace(size_type, size_type, __sv_type, size_type, size_type)):
8010 Likewise.
8011 (replace(const_iterator, const_iterator, __sv_type)): Likewise.
8012 (find(__sv_type, size_type)): Likewise.
8013 (rfind(__sv_type, size_type)): Likewise.
8014 (find_first_of(__sv_type, size_type)): Likewise.
8015 (find_last_of(__sv_type, size_type)): Likewise.
8016 (find_first_not_of(__sv_type, size_type)): Likewise.
8017 (find_last_not_of(__sv_type, size_type)): Likewise.
8018 (compare(__sv_type)): Likewise.
8019 (compare(size_type, size_type, __sv_type)): Likewise.
8020 (compare(size_type, size_type, __sv_type, size_type, size_type)):
8021 Likewise.
8022 * include/bits/string_view.tcc: New.
8023 * include/std/string_view: Likewise.
8024 * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
8025 * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
8026 * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
8027 Likewise.
8028 * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
8029 Likewise.
8030 * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
8031 Likewise.
8032 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
8033 Likewise.
8034 * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
8035 Likewise.
8036 * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
8037 Likewise.
8038 * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
8039 Likewise.
8040 * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
8041 Likewise.
8042 * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
8043 Likewise.
8044 * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
8045 Likewise.
8046 * testsuite/21_strings/basic_string/operations/find/char/5.cc:
8047 Likewise.
8048 * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
8049 Likewise.
8050 * testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
8051 * testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
8052 * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
8053 * testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
8054 * testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
8055 * testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
8056 * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
8057 * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
8058 * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
8059 * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
8060 Likewise.
8061 * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
8062 Likewise.
8063 * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
8064 Likewise.
8065 * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
8066 Likewise.
8067 * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
8068 Likewise.
8069 * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
8070 Likewise.
8071 * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
8072 Likewise.
8073 * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
8074 Likewise.
8075 * testsuite/21_strings/basic_string_view/include.cc: Likewise.
8076 * testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
8077 * testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
8078 * testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
8079 * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
8080 Likewise.
8081 * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
8082 Likewise.
8083 * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
8084 Likewise.
8085 * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
8086 Likewise.
8087 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
8088 Likewise.
8089 * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
8090 Likewise.
8091 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
8092 Likewise.
8093 * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
8094 Likewise.
8095 * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
8096 Likewise.
8097 * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
8098 Likewise.
8099 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
8100 Likewise.
8101 * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
8102 Likewise.
8103 * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
8104 Likewise.
8105 * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
8106 Likewise.
8107 * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
8108 Likewise.
8109 * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
8110 Likewise.
8111 * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
8112 Likewise.
8113 * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
8114 Likewise.
8115 * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
8116 Likewise.
8117 * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
8118 Likewise.
8119 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
8120 Likewise.
8121 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
8122 Likewise.
8123 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
8124 Likewise.
8125 * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
8126 Likewise.
8127 * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
8128 Likewise.
8129 * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
8130 Likewise.
8131 * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
8132 Likewise.
8133 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
8134 Likewise.
8135 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
8136 Likewise.
8137 * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
8138 Likewise.
8139 * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
8140 Likewise.
8141 * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
8142 Likewise.
8143 * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
8144 Likewise.
8145 * testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
8146 * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
8147 Likewise.
8148 * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
8149 Likewise.
8150 * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
8151 Likewise.
8152 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
8153 Likewise.
8154 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
8155 Likewise.
8156 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
8157 Likewise.
8158 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
8159 Likewise.
8160 * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
8161 Likewise.
8162 * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
8163 Likewise.
8164 * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
8165 * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
8166
81672016-07-27 Jonathan Wakely <jwakely@redhat.com>
8168
8169 * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
8170
81712016-07-25 Georeth Chow <georeth2010@gmail.com>
8172
8173 * include/ext/ropeimpl.h (rope<>::_S_dump(_RopeRep*, int)): Qualify
8174 _S_concat enumerator.
8175 * testsuite/ext/rope/6.cc: New test.
8176
81772016-07-25 Jonathan Wakely <jwakely@redhat.com>
8178
8179 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Use
8180 std::mt19937, std::thread and std::atomic to simplify test.
8181 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
8182
81832016-07-22 Jonathan Wakely <jwakely@redhat.com>
8184
8185 PR libstdc++/71964
8186 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8187 (basic_string::_Alloc_hider(pointer, _Alloc&&)): Add constructor.
8188 * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
8189 * testsuite/21_strings/basic_string/allocator/71964.cc: New test.
8190 * testsuite/23_containers/set/allocator/71964.cc: New test.
8191
8192 * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): Use
8193 delete[] instead of delete.
8194
81952016-07-21 Jonathan Wakely <jwakely@redhat.com>
8196
8197 * include/experimental/propagate_const (propagate_const::__t): Rename
8198 to _M_t and remove comment. Qualify std::move and std::forward.
8199 * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
8200
8201 * testsuite/23_containers/vector/zero_sized_allocations.cc:
8202 Define sized deallocation function.
8203 * testsuite/util/testsuite_new_operators.h:
8204 (operator delete(void*, const std::nothrow_t&)): Define nothrow
8205 deallocation function.
8206
8207 * testsuite/21_strings/basic_string/modifiers/append/char/1.cc: Fix
8208 reads past the end of strings.
8209 * testsuite/21_strings/basic_string/operations/compare/char/1.cc:
8210 Likewise.
8211 * testsuite/21_strings/char_traits/requirements/short/1.cc: Fix
8212 invalid array accesses.
8213 * testsuite/experimental/string_view/operations/compare/char/1.cc:
8214 Fix read past the end of string.
8215 * testsuite/util/testsuite_character.cc: Fix out-of-bounds write.
8216
8217 * testsuite/24_iterators/container_access.cc: Fix missing returns.
8218 * testsuite/24_iterators/range_access_cpp14.cc: Likewise.
8219
8220 * testsuite/18_support/new_delete_placement.cc: Don't allocate (and
8221 leak) memory for arguments to placement delete.
8222 * testsuite/20_util/addressof/1.cc: Don't leak memory.
8223 * testsuite/22_locale/locale/global_locale_objects/3.cc: Likewise.
8224 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc:
8225 Likewise.
8226
82272016-07-20 Jonathan Wakely <jwakely@redhat.com>
8228
8229 * doc/xml/manual/intro.xml: Document DR 2684 status.
8230 * doc/html/*: Regenerate.
8231
8232 * include/std/atomic (atomic_int8_t, atomic_uint8_t, atomic_int16_t)
8233 (atomic_uint16_t, atomic_int32_t, atomic_uint32_t, atomic_int64_t)
8234 (atomic_uint64_t): Define (LWG 2441).
8235 * testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Remove empty
8236 lines.
8237 * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Test for
8238 the new types.
8239 * doc/xml/manual/intro.xml: Document DR 2441 status.
8240
8241 * include/std/istream (operator>>(basic_istream&&, _Tp&)): Adjust
8242 to use perfect forwarding (LWG 2328).
8243 * testsuite/27_io/rvalue_streams.cc: Test perfect forwarding.
8244 * doc/xml/manual/intro.xml: Document DR 2328 status.
8245
8246 * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Use
8247 static objects for catching nullptr as pointer to member types.
8248
82492016-07-18 Ville Voutilainen <ville.voutilainen@gmail.com>
8250
8251 Clean up optional's comments.
8252 * include/std/optional: Remove incorrect section headers
8253 from comments when redundant, replace bare section
8254 headers with more descriptive comments.
8255
82562016-07-15 Jonathan Wakely <jwakely@redhat.com>
8257
8258 * include/bits/algorithmfwd.h: Change C++0x to C++11 in comments.
8259 * include/bits/move.h: Likewise.
8260 * include/bits/postypes.h: Likewise.
8261 * include/debug/bitset: Likewise.
8262 * include/ext/pb_ds/detail/type_utils.hpp: Likewise.
8263 * include/ext/string_conversions.h: Change C++0x to __cxx11 in
8264 comment.
8265 * testsuite/27_io/fpos/14320-1.cc: Change C++0x to C++11 in comment.
8266 * testsuite/util/thread/all.h: Likewise.
8267
8268 * include/bits/stl_algo.h (for_each): Remove redundant _GLIBCXX_MOVE
8269 and adjust comment.
8270
8271 PR c++/58796
8272 * libsupc++/pbase_type_info.cc (__pbase_type_info::__do_catch): Make
8273 nullptr match handlers of pointer type.
8274
82752016-07-15 Edward Smith-Rowland <3dw4rd@verizon.net>
8276
8277 Implement C++17 P0025 clamp.
8278 * include/bits/algorithmfwd.h: Declare clamp overloads.
8279 * include/bits/stl_algo.h: Implement clamp. Feature __cpp_lib_clamp.
8280 * testsuite/25_algorithms/clamp/1.cc: New test.
8281 * testsuite/25_algorithms/clamp/2.cc: New test.
8282 * testsuite/25_algorithms/clamp/constexpr.cc: New test.
8283 * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8284 1.cc: New test.
8285 * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
8286 pod.cc: New test.
8287
82882016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com>
8289
8290 Fix the constraints for any's assignment operator template to properly
8291 reject assignment from a non-copyable lvalue.
8292 * include/std/any (operator=(_ValueType&&)): Constrain the decayed
8293 type for is_copy_constructible,
8294 * testsuite/20_util/any/requirements.cc: Add a test for
8295 non-copyable lvalues.
8296
82972016-07-14 Jonathan Wakely <jwakely@redhat.com>
8298
8299 * include/experimental/functional: Include <parallel/algorithm> in
8300 Parallel Mode.
8301
8302 * testsuite/experimental/functional/searchers.cc: Include <algorithm>
8303 for std::search.
8304
8305 PR libstdc++/70716
8306 * include/bits/forward_list.h (forward_list): Update doxygen comments
8307 to reflect allocator propagation semantics. Remove ambiguous
8308 statements about data being lost.
8309 * include/bits/stl_deque.h (deque): Likewise.
8310 * include/bits/stl_list.h (list): Likewise.
8311 * include/bits/stl_map.h (map): Likewise.
8312 * include/bits/stl_multimap.h (multimap): Likewise.
8313 * include/bits/stl_multiset.h (multiset): Likewise.
8314 * include/bits/stl_set.h (set): Likewise.
8315 * include/bits/stl_vector.h (vector): Likewise.
8316 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
8317 Likewise.
8318 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
8319 Likewise.
8320
83212016-07-14 Ville Voutilainen <ville.voutilainen@gmail.com>
8322
8323 Implement P0032R3, Homogeneous interface for variant, any and optional,
8324 for the parts concerning any and optional.
8325 * include/std/any (_Storage()): Make constexpr and have it
8326 initialize _M_ptr.
8327 (any()): Make constexpr.
8328 (any(const any&)): Adjust.
8329 (any(any&&)): Likewise.
8330 (__any_constructible_t): New.
8331 (any(_ValueType&&)): Constrain.
8332 (any(in_place_type_t<_Tp>, _Args&&...)): New.
8333 (any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
8334 Likewise.
8335 (~any()): Adjust.
8336 (operator=(const any&)): Likewise.
8337 (operator=(any&&)): Likewise.
8338 (operator=(_ValueType&&)): Constrain.
8339 (emplace(_Args&&...)): New.
8340 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
8341 (clear()): Remove.
8342 (reset()): New.
8343 (swap(any&)): Adjust.
8344 (empty()): Remove.
8345 (has_value()): New.
8346 (type()): Adjust.
8347 (_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
8348 (_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
8349 (make_any(_Args&&...)): Likewise.
8350 (make_any(initializer_list<_Up>, _Args&&...)): Likewise.
8351 * include/std/optional (in_place_t, in_place): Remove.
8352 (bad_optional_access): Add a comment referring to LEWG 72.
8353 (emplace(_Args&&...)): Constrain.
8354 (has_value()): New.
8355 (reset()): Likewise.
8356 (make_optional(_Args&&...)): Likewise.
8357 (make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
8358 * include/std/utility (in_place_tag): New.
8359 (__in_place, __in_place_type, __in_place_index): Likewise.
8360 (in_place_t, in_place_type_t, in_place_index_t): Likewise.
8361 (in_place(__in_place*)): Likewise.
8362 (in_place(__in_place_type<_Tp>*)): Likewise.
8363 (in_place(__in_place_index<_Idx>*)): Likewise.
8364 * testsuite/20_util/any/assign/1.cc: Adjust.
8365 * testsuite/20_util/any/assign/emplace.cc: New.
8366 * testsuite/20_util/any/assign/self.cc: Adjust.
8367 * testsuite/20_util/any/cons/1.cc: Likewise.
8368 * testsuite/20_util/any/cons/in_place.cc: New.
8369 * testsuite/20_util/any/make_any.cc: Likewise.
8370 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
8371 * testsuite/20_util/any/misc/swap.cc: Likewise.
8372 * testsuite/20_util/any/modifiers/1.cc: Likewise.
8373 * testsuite/20_util/any/requirements.cc: New.
8374 * testsuite/20_util/in_place/requirements.cc: Likewise.
8375 * testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
8376 * testsuite/20_util/optional/in_place.cc: Likewise.
8377 * testsuite/20_util/optional/make_optional.cc: Add tests for
8378 the new overloads of make_optional.
8379
83802016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com>
8381
8382 Implement P0307R2, Making Optional Greater Equal Again.
8383 * include/experimental/optional (_Has_addressof): Fix the comment.
8384 * include/std/optional (_Has_addressof): Likewise.
8385 (operator=(_Up&&)): Constrain.
8386 (operator=(const optional<_Up>&)): Likewise.
8387 (operator=(optional<_Up>&&)): Likewise.
8388 (__optional_relop_t): New.
8389 (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8390 (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8391 Constrain and make transparent.
8392 (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8393 (operator>(const optional<_Tp>&, const optional<_Tp>&)):
8394 Constrain and make transparent.
8395 (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8396 (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8397 (operator==(const optional<_Tp>&, const _Tp&): Constrain.
8398 (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8399 (operator!=(const optional<_Tp>&, _Tp const&)):
8400 Constrain and make transparent.
8401 (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8402 (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8403 (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8404 (operator>(const optional<_Tp>&, const _Tp&)):
8405 Constrain and make transparent.
8406 (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8407 (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8408 (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8409 (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8410 (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8411 * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8412 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8413 * testsuite/20_util/optional/relops/1.cc: Likewise.
8414 * testsuite/20_util/optional/relops/2.cc: Likewise.
8415 * testsuite/20_util/optional/relops/3.cc: Likewise.
8416 * testsuite/20_util/optional/relops/4.cc: Likewise.
8417 * testsuite/20_util/optional/requirements.cc: Add tests to verify
8418 that optional's relops are transparent and don't synthesize
8419 operators. Also test that assignment sfinaes.
8420
84212016-07-13 Jonathan Wakely <jwakely@redhat.com>
8422
8423 PR libstdc++/71856
8424 * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
8425 * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
8426 Rename to _GLIBCXX_PARALLEL_ASSERTIONS and make default value depend
8427 on _GLIBCXX_ASSERTIONS.
8428 * include/parallel/balanced_quicksort.h: Rename _GLIBCXX_ASSERTIONS.
8429 Include <unistd.h> for sleep.
8430 * include/parallel/losertree.h: Rename _GLIBCXX_ASSERTIONS.
8431 * include/parallel/merge.h: Likewise.
8432 * include/parallel/multiway_merge.h: Likewise.
8433 * include/parallel/partition.h: Likewise.
8434 * include/parallel/queue.h: Likewise.
8435 * include/parallel/sort.h: Likewise.
8436 * testsuite/25_algorithms/headers/algorithm/
8437 parallel_algorithm_assert.cc: New.
8438
8439 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
8440 (replace(__const_iterator, __const_iterator, initializer_list<C>)):
8441 Forward to different overload.
8442
8443 * include/bits/allocated_ptr.h (__allocated_ptr::_S_raw_ptr): Make
8444 static.
8445
84462016-07-13 Jonathan Wakely <jwakely@redhat.com>
8447
8448 Revert "Add non-const overload of std::string::data()".
8449
84502016-07-13 Ville Voutilainen <ville.voutilainen@gmail.com>
8451
8452 Implement P0307R2, Making Optional Greater Equal Again.
8453 * include/experimental/optional (_Has_addressof): Fix the comment.
8454 * include/std/optional (_Has_addressof): Likewise.
8455 (operator=(_Up&&)): Constrain.
8456 (operator=(const optional<_Up>&)): Likewise.
8457 (operator=(optional<_Up>&&)): Likewise.
8458 (__optional_relop_t): New.
8459 (operator==(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8460 (operator!=(const optional<_Tp>&, const optional<_Tp>&)):
8461 Constrain and make transparent.
8462 (operator<(const optional<_Tp>&, const optional<_Tp>&)): Constrain.
8463 (operator>(const optional<_Tp>&, const optional<_Tp>&)):
8464 Constrain and make transparent.
8465 (operator<=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8466 (operator>=(const optional<_Tp>&, const optional<_Tp>&)): Likewise.
8467 (operator==(const optional<_Tp>&, const _Tp&): Constrain.
8468 (operator==(const _Tp&, const optional<_Tp>&)): Likewise.
8469 (operator!=(const optional<_Tp>&, _Tp const&)):
8470 Constrain and make transparent.
8471 (operator!=(const _Tp&, const optional<_Tp>&)): Likewise.
8472 (operator<(const optional<_Tp>&, const _Tp&)): Constrain.
8473 (operator<(const _Tp&, const optional<_Tp>&)): Likewise.
8474 (operator>(const optional<_Tp>&, const _Tp&)):
8475 Constrain and make transparent.
8476 (operator>(const _Tp&, const optional<_Tp>&)): Likewise.
8477 (operator<=(const optional<_Tp>&, const _Tp&)): Likewise.
8478 (operator<=(const _Tp&, const optional<_Tp>&)): Likewise.
8479 (operator>=(const optional<_Tp>&, const _Tp&)): Likewise.
8480 (operator>=(const _Tp&, const optional<_Tp>&)): Likewise.
8481 * testsuite/20_util/optional/constexpr/relops/2.cc: Adjust.
8482 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8483 * testsuite/20_util/optional/relops/1.cc: Likewise.
8484 * testsuite/20_util/optional/relops/2.cc: Likewise.
8485 * testsuite/20_util/optional/relops/3.cc: Likewise.
8486 * testsuite/20_util/optional/relops/4.cc: Likewise.
8487 * testsuite/20_util/optional/requirements.cc: Add tests to verify
8488 that optional's relops are transparent and don't synthesize
8489 operators. Also test that assignment sfinaes.
8490
84912016-07-13 Jonathan Wakely <jwakely@redhat.com>
8492
8493 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (_M_c_str):
8494 New function.
8495 (_M_disjunct, basic_string(const basic_string&, size_t)): Use data()
8496 instead of _M_data().
8497 (basic_string(const basic_string&, size_t, size_t, const _Alloc&)):
8498 Likewise.
8499 (append(const basic_string&)): Likewise.
8500 (append(const basic_string&, size_type, size_type)): Likewise.
8501 (assign(const basic_string&, size_type, size_type)): Likewise.
8502 (insert(size_type, const basic_string&)): Likewise.
8503 (insert(size_type, const basic_string&, size_type, size_type)):
8504 Likewise.
8505 (replace(size_type, size_type, const basic_string&, size_type,
8506 size_type)): Likewise.
8507 (replace(__const_iterator, __const_iterator, const basic_string&)):
8508 Likewise.
8509 (c_str(), data()): Use c_str() instead of _M_data().
8510 (data()): Add non-const overload as per LWG 2391 and P0272R1.
8511 (compare(const basic_string&)): Use data() instead of _M_data().
8512 [!_GLIBCXX_USE_CXX11_ABI] (data()): Add non-const overload.
8513 * include/bits/basic_string.tcc [_GLIBCXX_USE_CXX11_ABI] (_M_mutate):
8514 Pass raw pointers to _S_copy.
8515 (_M_erase, _M_replace_aux): Pass raw pointers to _S_move and
8516 _S_assign.
8517 (find(const _CharT*, size_type, size_type)): Use data instead of
8518 _M_data().
8519 * testsuite/21_strings/basic_string/allocator/char/ext_ptr.cc: New.
8520 * testsuite/21_strings/basic_string/operations/data/char/2.cc: New.
8521 * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc: New.
8522
85232016-07-12 Jonathan Wakely <jwakely@redhat.com>
8524
8525 * libsupc++/new: Remove nothrow sized deletes (LWG 2458).
8526 * doc/xml/manual/intro.xml: Document DR 2458 status.
8527 * doc/html*: Regenerate.
8528
8529 * testsuite/20_util/pair/astuple/astuple.cc: Only include <utility>.
8530 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
8531 Only include <array>.
8532 * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
8533 Likewise.
8534 * doc/xml/manual/intro.xml: Document LWG 2212 support.
8535 * doc/html*: Regenerate.
8536
8537 * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8538 Add testcase from LWG 2164.
8539
85402016-07-11 François Dumont <fdumont@gcc.gnu.org>
8541
8542 * include/bits/stl_vector.h (push_back(const value_type&)): Forward
8543 to _M_realloc_insert.
8544 (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8545 (_M_realloc_insert): Declare new function.
8546 (_M_emplace_back_aux): Remove definition.
8547 * include/bits/vector.tcc (emplace_back(_Args...)):
8548 Use _M_realloc_insert.
8549 (insert(const_iterator, const value_type&)): Likewise.
8550 (_M_insert_rval, _M_emplace_aux): Likewise.
8551 (_M_emplace_back_aux): Remove declaration.
8552 (_M_realloc_insert): Define.
8553 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8554 Adjust expected results for emplacing an lvalue with reallocation.
8555
85562016-07-10 Ville Voutilainen <ville.voutilainen@gmail.com>
8557
8558 Implement std::optional.
8559 * include/Makefile.am: Add optional to exported headers.
8560 * include/Makefile.in: Likewise.
8561 * include/std/optional: New.
8562 * testsuite/20_util/optional/typedefs.cc: Likewise.
8563 * testsuite/20_util/optional/relops/2.cc: Likewise.
8564 * testsuite/20_util/optional/relops/3.cc: Likewise.
8565 * testsuite/20_util/optional/relops/4.cc: Likewise.
8566 * testsuite/20_util/optional/relops/5.cc: Likewise.
8567 * testsuite/20_util/optional/relops/1.cc: Likewise.
8568 * testsuite/20_util/optional/relops/6.cc: Likewise.
8569 * testsuite/20_util/optional/nullopt.cc: Likewise.
8570 * testsuite/20_util/optional/in_place.cc: Likewise.
8571 * testsuite/20_util/optional/make_optional.cc: Likewise.
8572 * testsuite/20_util/optional/assignment/2.cc: Likewise.
8573 * testsuite/20_util/optional/assignment/3.cc: Likewise.
8574 * testsuite/20_util/optional/assignment/4.cc: Likewise.
8575 * testsuite/20_util/optional/assignment/5.cc: Likewise.
8576 * testsuite/20_util/optional/assignment/1.cc: Likewise.
8577 * testsuite/20_util/optional/assignment/6.cc: Likewise.
8578 * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
8579 * testsuite/20_util/optional/cons/default.cc: Likewise.
8580 * testsuite/20_util/optional/cons/move.cc: Likewise.
8581 * testsuite/20_util/optional/cons/value.cc: Likewise.
8582 * testsuite/20_util/optional/cons/copy.cc: Likewise.
8583 * testsuite/20_util/optional/requirements.cc: Likewise.
8584 * testsuite/20_util/optional/observers/2.cc: Likewise.
8585 * testsuite/20_util/optional/observers/3.cc: Likewise.
8586 * testsuite/20_util/optional/observers/4.cc: Likewise.
8587 * testsuite/20_util/optional/observers/5.cc: Likewise.
8588 * testsuite/20_util/optional/observers/1.cc: Likewise.
8589 * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
8590 * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
8591 * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
8592 * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
8593 * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
8594 * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
8595 * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
8596 * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
8597 * testsuite/20_util/optional/constexpr/make_optional.cc: Likewise.
8598 * testsuite/20_util/optional/constexpr/cons/default.cc: Likewise.
8599 * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
8600 * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
8601 * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
8602 * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
8603 * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
8604 * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
8605 * testsuite/20_util/optional/swap/1.cc: Likewise.
8606
86072016-07-08 Jonathan Wakely <jwakely@redhat.com>
8608
8609 * testsuite/23_containers/vector/modifiers/insert/aliasing.cc: New.
8610
86112016-07-07 Jonathan Wakely <jwakely@redhat.com>
8612
8613 * doc/xml/manual/status_cxx2014.xml: Update LFTS status table.
8614 * doc/html/*: Regenerate.
8615
86162016-07-07 Ville Voutilainen <ville.voutilainen@gmail.com>
8617
8618 Implement std::any.
8619 * include/Makefile.am: Add any and c++17_warning.h to exported headers.
8620 * include/Makefile.in: Likewise.
8621 * include/std/any: New.
8622 * testsuite/20_util/any/assign/1.cc: Likewise.
8623 * testsuite/20_util/any/assign/2.cc: Likewise.
8624 * testsuite/20_util/any/assign/self.cc: Likewise.
8625 * testsuite/20_util/any/cons/1.cc: Likewise.
8626 * testsuite/20_util/any/cons/2.cc: Likewise.
8627 * testsuite/20_util/any/cons/aligned.cc: Likewise.
8628 * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
8629 * testsuite/20_util/any/misc/any_cast.cc: Likewise.
8630 * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
8631 * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
8632 * testsuite/20_util/any/misc/swap.cc: Likewise.
8633 * testsuite/20_util/any/modifiers/1.cc: Likewise.
8634 * testsuite/20_util/any/observers/type.cc: Likewise.
8635 * testsuite/20_util/any/typedefs.cc: Likewise.
8636
86372016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com>
8638
8639 Add a new header for diagnosing the use of C++17 facilities
8640 in pre-C++17 modes.
8641 * include/bits/c++17_warning.h: New.
8642
86432016-07-06 Ville Voutilainen <ville.voutilainen@gmail.com>
8644
8645 Implement LWG 2451, optional<T> should 'forward' T's
8646 implicit conversions.
8647 * include/experimental/optional (__is_optional_impl, __is_optional):
8648 New.
8649 (optional()): Make constexpr and default.
8650 (optional(_Up&&), optional(const optional<_Up>&),
8651 optional(optional<_Up>&& __t): New.
8652 (operator=(_Up&&)): Constrain.
8653 (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
8654 * testsuite/experimental/optional/cons/value.cc:
8655 Add tests for the functionality added by LWG 2451.
8656 * testsuite/experimental/optional/cons/value_neg.cc: New.
8657
86582016-07-05 Ville Voutilainen <ville.voutilainen@gmail.com>
8659
8660 Implement LWG 2509,
8661 any_cast doesn't work with rvalue reference targets and cannot
8662 move with a value target.
8663 * include/experimental/any (any(_ValueType&&)): Constrain and
8664 add an overload that doesn't forward.
8665 (any_cast(any&&)): Constrain and add an overload that moves.
8666 * testsuite/experimental/any/misc/any_cast.cc: Add tests for
8667 the functionality added by LWG 2509.
8668
86692016-07-04 François Dumont <fdumont@gcc.gnu.org>
8670
8671 * testsuite/23_containers/vector/modifiers/emplace/self_emplace.cc:
8672 New test.
8673 * testsuite/23_containers/vector/modifiers/insert/self_insert.cc: New
8674 test.
8675
86762016-07-04 Jonathan Wakely <jwakely@redhat.com>
8677
8678 * include/bits/stl_vector.h (emplace(const_iterator, _Args&&...)):
8679 Define inline. Forward to _M_emplace_aux.
8680 (insert(const_iterator, value_type&&)): Forward to _M_insert_rval.
8681 (_M_insert_rval, _M_emplace_aux): Declare new functions.
8682 (_Temporary_value): New RAII type using allocator to construct/destroy.
8683 (_S_insert_aux_assign): Remove.
8684 (_M_insert_aux): Make non-variadic.
8685 * include/bits/vector.tcc (insert(const_iterator, const value_type&)):
8686 Use _Temporary_value.
8687 (emplace(const_iterator, _Args&&...)): Remove definition.
8688 (_M_insert_rval, _M_emplace_aux): Define.
8689 (_M_insert_aux): Make non-variadic, stop using _S_insert_aux_assign.
8690 (_M_fill_insert): Use _Temporary_value.
8691 * testsuite/23_containers/vector/allocator/construction.cc: New test.
8692 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
8693 Adjust expected results for emplacing an lvalue with reallocation.
8694 * testsuite/23_containers/vector/check_construct_destroy.cc: Adjust
8695 expected results to account for construction/destruction of temporary
8696 using allocator.
8697 * testsuite/backward/hash_set/check_construct_destroy.cc: Likewise.
8698
86992016-07-04 Ville Voutilainen <ville.voutilainen@gmail.com>
8700
8701 PR libstdc++/71313
8702 * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
8703 Call remove_all for children of a directory.
8704 * testsuite/experimental/filesystem/operations/create_directories.cc:
8705 Adjust.
8706
87072016-07-02 François Dumont <fdumont@gcc.gnu.org>
8708
8709 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
8710 dg-error line numbers.
8711 * testsuite/23_containers/array/tuple_interface/
8712 tuple_element_debug_neg.cc: Likewise.
8713 * testsuite/25_algorithms/lexicographical_compare/debug/
8714 irreflexive_neg.cc: Remove.
8715
87162016-06-30 Thomas Preud'homme <thomas.preudhomme@arm.com>
8717
8718 * testsuite/29_atomics/atomic/65913.cc: Require atomic-builtins rather
8719 than specific target.
8720
87212016-06-27 François Dumont <fdumont@gcc.gnu.org>
8722
8723 PR libstdc++/71640
8724 * include/bits/hashtable.h: Remove _Unique_keya parameter in _Insert
8725 friend declaration.
8726
87272016-06-23 François Dumont <fdumont@gcc.gnu.org>
8728
8729 * include/debug/array (array<>::swap): Fix noexcept qualificaton for
8730 zero-size array.
8731
87322016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
8733
8734 * configure.host: Remove mep-* support.
8735
87362016-06-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
8737
8738 * configure: Regenerate.
8739 * configure.host: Remove support for knetbsd.
8740 * crossconfig.m4: Likewise.
8741
87422016-06-20 François Dumont <fdumont@gcc.gnu.org>
8743
8744 PR libstdc++/71181
8745 * include/tr1/hashtable_policy.h
8746 (_Prime_rehash_policy::_M_next_bkt): Make past-the-end iterator
8747 dereferenceable to avoid check on lower_bound result.
8748 (_Prime_rehash_policy::_M_bkt_for_elements): Call latter.
8749 (_Prime_rehash_policy::_M_need_rehash): Likewise.
8750 * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
8751 Always return a value greater than input value. Set _M_next_resize to
8752 max value when reaching highest prime number.
8753 * src/shared/hashtable-aux.cc (__prime_list): Add comment about sentinel
8754 being now useless.
8755 * testsuite/23_containers/unordered_set/hash_policy/71181.cc: New.
8756 * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc
8757 (test02): New.
8758 * testsuite/23_containers/unordered_set/hash_policy/prime_rehash.cc: New.
8759 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8760 Fix indentation.
8761
87622016-06-17 Jonathan Wakely <jwakely@redhat.com>
8763
8764 PR libstdc++/71545
8765 * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
8766 Remove irreflexive checks.
8767 * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
8768 binary_search): Likewise.
8769 * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
8770 * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
8771 * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
8772 * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
8773 * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
8774 Add constructor from array.
8775
87762016-06-16 François Dumont <fdumont@gcc.gnu.org>
8777
8778 * include/debug/debug.h
8779 (__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
8780 (__glibcxx_requires_subscript): Move...
8781 * include/debug/assertions.h: ...here and add __builtin_expect.
8782 (_GLIBCXX_DEBUG_ONLY): Remove ; value.
8783 * include/bits/stl_deque.h
8784 (std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
8785 (std::deque<>::front()): Add __glibcxx_requires_nonempty check.
8786 (std::deque<>::back()): Likewise.
8787 (std::deque<>::pop_front()): Likewise.
8788 (std::deque<>::pop_back()): Likewise.
8789 (std::deque<>::swap(deque&)): Add allocator check.
8790 * include/bits/stl_vector.h
8791 (std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
8792 (std::vector<>::front()): Add __glibcxx_requires_nonempty check.
8793 (std::vector<>::back()): Likewise.
8794 (std::vector<>::pop_back()): Likewise.
8795 (std::vector<>::swap(vector&)): Add allocator check.
8796
87972016-06-16 Daniel Kruegler <daniel.kruegler@gmail.com>
8798
8799 Provide swappable traits (p0185r1)
8800 * include/std/type_traits (is_swappable, is_nothrow_swappable,
8801 is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
8802 is_nothrow_swappable_v, is_swappable_with_v,
8803 is_nothrow_swappable_with_v): New.
8804 * include/bits/stl_pair.h: Use it as per p0185r1.
8805 * include/bits/stl_queue.h: Likewise.
8806 * include/bits/stl_stack.h: Likewise.
8807 * include/bits/unique_ptr.h: Likewise.
8808 * include/std/tuple: Likewise.
8809 * include/std/array: Likewise. Fix zero-size member swap.
8810 * include/bits/hashtable.h: Use __and_.
8811 * testsuite/20_util/is_nothrow_swappable/requirements/
8812 explicit_instantiation.cc: Change test options to std=gnu++17.
8813 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
8814 Likewise.
8815 * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
8816 * testsuite/20_util/is_swappable/requirements/
8817 explicit_instantiation.cc: Likewise.
8818 * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
8819 * testsuite/20_util/is_swappable/value.cc: Likewise.
8820 * testsuite/20_util/is_nothrow_swappable/requirements/
8821 explicit_instantiation_ext.cc: New.
8822 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
8823 New.
8824 * testsuite/20_util/is_nothrow_swappable/value.h: New.
8825 * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
8826 * testsuite/20_util/is_nothrow_swappable_with/requirements/
8827 explicit_instantiation.cc: New.
8828 * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
8829 New.
8830 * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
8831 * testsuite/20_util/is_swappable/requirements/
8832 explicit_instantiation_ext.cc: New.
8833 * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
8834 * testsuite/20_util/is_swappable/value.h: New.
8835 * testsuite/20_util/is_swappable/value_ext.cc: New.
8836 * testsuite/20_util/is_swappable_with/requirements/
8837 explicit_instantiation.cc: New.
8838 * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
8839 * testsuite/20_util/is_swappable_with/value.cc: New.
8840 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
8841 dg-error line numbers.
8842 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
8843 Likewise.
8844
88452016-06-16 Jonathan Wakely <jwakely@redhat.com>
8846
8847 * include/std/array: Remove trailing whitespace.
8848 * include/std/atomic: Likewise.
8849 * include/std/bitset: Likewise.
8850 * include/std/chrono: Likewise.
8851 * include/std/complex: Likewise.
8852 * include/std/condition_variable: Likewise.
8853 * include/std/fstream: Likewise.
8854 * include/std/functional: Likewise.
8855 * include/std/future: Likewise.
8856 * include/std/iomanip: Likewise.
8857 * include/std/iosfwd: Likewise.
8858 * include/std/istream: Likewise.
8859 * include/std/limits: Likewise.
8860 * include/std/ratio: Likewise.
8861 * include/std/scoped_allocator: Likewise.
8862 * include/std/sstream: Likewise.
8863 * include/std/stdexcept: Likewise.
8864 * include/std/string: Likewise.
8865 * include/std/system_error: Likewise.
8866 * include/std/thread: Likewise.
8867 * include/std/tuple: Likewise.
8868 * include/std/type_traits: Likewise.
8869 * include/std/utility: Likewise.
8870 * include/std/valarray: Likewise.
8871 * include/std/vector: Likewise.
8872
8873 * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
8874 new overloaded functions.
8875 * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
8876 to avoid creating a redundant temporary.
8877 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
8878 test.
8879
88802016-06-15 François Dumont <fdumont@gcc.gnu.org>
8881
8882 * include/bits/stl_deque.h
8883 (std::deque<>::operator=): Call _M_assign_aux.
8884 (std::deque<>::assign(initializer_list<>)): Likewise.
8885 (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8886 (std::deque<>::insert(const_iterator, initializer_list<>)):
8887 Call _M_range_insert_aux.
8888 (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
8889 Likewise.
8890 (std::deque<>::_M_fill_assign): Call _M_fill_insert.
8891 (std::deque<>::_M_move_assign2): Call _M_assign_aux.
8892 * include/bits/deque.tcc
8893 (std::deque<>::operator=): Call _M_range_insert_aux.
8894 (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
8895 Likewise.
8896 * include/bits/stl_vector.h
8897 (std::vector<>::operator=): Call _M_assign_aux.
8898 (std::vector<>::assign(initializer_list<>)): Likewise.
8899 (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
8900 (std::vector<>::insert(const_iterator, initializer_list<>)):
8901 Call _M_range_insert.
8902 * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
8903
89042016-06-07 François Dumont <fdumont@gcc.gnu.org>
8905
8906 * include/std/tuple (_Head_base<>): Default specialization condition at
8907 type declaration.
8908
89092016-06-06 Ville Voutilainen <ville.voutilainen@gmail.com>
8910
8911 Support allocators in tuples of zero size.
8912 * include/std/tuple (tuple<>::tuple(),
8913 tuple<>::tuple(allocator_arg_t, const _Alloc&),
8914 tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
8915 * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
8916
89172016-06-06 Jonathan Wakely <jwakely@redhat.com>
8918
8919 PR libstdc++/71320
8920 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
8921 Add or remove permissions according to perms argument.
8922 * testsuite/experimental/filesystem/operations/permissions.cc: New
8923 test.
8924
89252016-06-05 Ville Voutilainen <ville.voutilainen@gmail.com>
8926
8927 Protect allocator-overloads of tuple-from-tuple constructors
8928 from cases that would create dangling references.
8929 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8930 const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
8931 tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
8932 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
8933
89342016-05-29 Gerald Pfeifer <gerald@pfeifer.com>
8935
8936 * doc/xml/manual/backwards_compatibility.xml: Adjust
8937 lists.debian.org link to https.
8938 * doc/html/manual/backwards.html: Regenerate.
8939
89402016-05-27 Jonathan Wakely <jwakely@redhat.com>
8941
8942 * doc/xml/manual/abi.xml: Adjust URL to use https.
8943 * doc/html/manual/*: Regenerate.
8944
89452016-05-27 Ville Voutilainen <ville.voutilainen@gmail.com>
8946
8947 PR libstdc++/66338
8948 * include/std/tuple (_TMC): Add a check for _NotSameTuple.
8949 * include/std/tuple (tuple(_UElements&&...)): Remove the separate
8950 check for _NotSameTuple.
8951 * include/std/tuple (_TMCT): New.
8952 * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
8953 * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
8954 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8955 const tuple<_UElements...>&)): Likewise.
8956 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
8957 tuple<_UElements...>&&)): Likewise.
8958 * testsuite/20_util/tuple/cons/66338.cc: New.
8959
89602016-05-25 Jonathan Wakely <jwakely@redhat.com>
8961
8962 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
8963 * configure: Regenerate.
8964 * config.h.in: Regenerate.
8965
8966 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
8967 * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
8968 Remove const qualification on function. Replace
8969 _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
8970 (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
8971 (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
8972
89732016-05-24 François Dumont <fdumont@gcc.gnu.org>
8974
8975 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
8976 * include/bits/hashtable_policy.h
8977 (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
8978 having load factor management.
8979 (_Mask_range_hashing): New.
8980 (__clp2): New.
8981 (_Power2_rehash_policy): New.
8982 (_Inserts<>): Remove last template parameter, _Unique_keys, so that
8983 partial specializations only depend on whether iterators are constant
8984 or not.
8985 * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
8986 test new hash policy.
8987 * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
8988 Likewise.
8989 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
8990 Likewise.
8991 * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
8992 Likewise.
8993 * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
8994 Likewise.
8995 * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
8996 New.
8997 * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
8998 using the new hash policy.
8999 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
9000
90012016-05-24 Jonathan Wakely <jwakely@redhat.com>
9002
9003 * include/bits/stl_queue.h (priority_queue::value_compare): Define.
9004
90052016-05-23 François Dumont <fdumont@gcc.gnu.org>
9006
9007 * include/debug/safe_iterator.h
9008 (_Safe_iterator<>::operator->()): Implement using underlying iterator
9009 operator ->.
9010 * include/debug/safe_local_iterator.h
9011 (_Safe_local_iterator<>::operator->()): Likewise.
9012
90132016-05-20 Thomas Preud'homme <thomas.preudhomme@arm.com>
9014
9015 * testsuite/experimental/memory_resource/1.cc: Add required argument
9016 to dg-require-atomic-builtins.
9017
90182016-05-13 Jonathan Wakely <jwakely@redhat.com>
9019
9020 PR libstdc++/71073
9021 * include/debug/bitset: Add #pragma GCC system_header.
9022 * include/debug/deque: Likewise.
9023 * include/debug/list: Likewise.
9024 * include/debug/map: Likewise.
9025 * include/debug/set: Likewise.
9026 * include/debug/string: Likewise.
9027 * include/debug/unordered_map: Likewise.
9028 * include/debug/unordered_set: Likewise.
9029 * include/debug/vector: Likewise.
9030 * include/debug/functions.h: Adjust whitespace.
9031
90322016-05-12 Jonathan Wakely <jwakely@redhat.com>
9033
9034 PR libstdc++/71081
9035 * testsuite/experimental/memory_resource/1.cc: Require atomics.
9036
90372016-05-11 Jonathan Wakely <jwakely@redhat.com>
9038
9039 PR libstdc++/71049
9040 * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
9041 exception constructors with __sso_string parameters.
9042
90432016-05-10 Jonathan Wakely <jwakely@redhat.com>
9044
9045 * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
9046 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
9047 Test begin and end functions.
9048 * testsuite/experimental/filesystem/iterators/
9049 recursive_directory_iterator.cc: Likewise.
9050
9051 PR libstdc++/71038
9052 * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
9053 * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
9054
9055 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
9056 Overload operator* to move from rvalues.
9057
9058 PR libstdc++/71036
9059 * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
9060 * testsuite/experimental/filesystem/operations/create_directory.cc:
9061 New test.
9062
9063 PR libstdc++/71037
9064 * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
9065 base path to exception.
9066 * testsuite/experimental/filesystem/operations/canonical.cc: Test
9067 paths contained in exception.
9068
9069 * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
9070 using declaration.
9071
9072 PR libstdc++/71005
9073 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
9074 New type.
9075 (directory_iterator::operator++(int)): Return proxy.
9076 (recursive_directory_iterator::operator++(int)): Likewise.
9077 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
9078 Test post-increment.
9079 * testsuite/experimental/filesystem/iterators/
9080 recursive_directory_iterator.cc: Likewise.
9081
90822016-05-09 Jonathan Wakely <jwakely@redhat.com>
9083
9084 PR libstdc++/71004
9085 * testsuite/experimental/filesystem/iterators/
9086 recursive_directory_iterator.cc: Fix test02 to not call member
9087 functions on invalid iterator, and use VERIFY not assert.
9088
90892016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com>
9090
9091 Avoid endless run-time recursion for copying single-element
9092 tuples where the element type is by-value constructible
9093 from any type.
9094 * include/std/tuple (_NotSameTuple): New.
9095 * include/std/tuple (tuple(_UElements&&...): Use it.
9096 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
9097
90982016-05-09 Jonathan Wakely <jwakely@redhat.com>
9099
9100 PR libstdc++/71004
9101 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
9102 Initialize scalar member variables in default constructor.
9103 * testsuite/experimental/filesystem/iterators/
9104 recursive_directory_iterator.cc: Test default construction.
9105
91062016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
9107
9108 * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
9109
91102016-05-05 Jonathan Wakely <jwakely@redhat.com>
9111
9112 * testsuite/experimental/filesystem/path/native/string.cc: Add
9113 dg-require-filesystem-ts directive.
9114
91152016-05-04 Jonathan Wakely <jwakely@redhat.com>
9116
9117 PR libstdc++/70940
9118 * include/experimental/memory_resource
9119 (__resource_adaptor_imp::do_allocate): Do not default-construct
9120 rebound allocator.
9121 (__resource_adaptor_imp::do_deallocate): Likewise. Use
9122 allocator_traits to get pointer type.
9123 (__null_memory_resource::do_allocate): Remove unused parameters.
9124 (__null_memory_resource::do_deallocate): Likewise.
9125 (__null_memory_resource::do_is_equal): Likewise. Add return statement.
9126 * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
9127 * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
9128 move to ...
9129 * testsuite/experimental/memory_resource/1.cc: Here.
9130 * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
9131 * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
9132
91332016-04-29 Chris Gregory <czipperz@gmail.com>
9134
9135 * config/*: Remove trailing whitespace.
9136 * src/*: Likewise.
9137 * testsuite/tr1/*: Likewise.
9138 * testsuite/util/*: Likewise.
9139
91402016-04-28 Jonathan Wakely <jwakely@redhat.com>
9141
9142 PR libstdc++/70766
9143 * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
9144 __addressof.
9145 * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
9146 Likewise.
9147 * include/std/atomic (atomic<_Tp>): Likewise.
9148 * include/std/shared_mutex (shared_lock): Likewise.
9149 * testsuite/24_iterators/istream_iterator/70766.cc: New test.
9150 * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
9151 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
9152 * testsuite/29_atomics/atomic/70766.cc: New test.
9153 * testsuite/30_threads/shared_lock/70766.cc: New test.
9154
9155 * include/bits/hashtable_policy.h (__detail::_Insert_base,
9156 __detail::_Insert): Improve comments.
9157
91582016-04-27 Jonathan Wakely <jwakely@redhat.com>
9159
9160 PR libstdc++/70767
9161 * include/std/limits: Update comments about DRs.
9162 (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
9163 numeric_limits<const volatile _Tp>): Define unconditionally.
9164
91652016-04-24 Jonathan Wakely <jwakely@redhat.com>
9166
9167 PR libstdc++/70762
9168 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
9169 static counter to return a different path on every call.
9170
91712016-04-22 Tim Shen <timshen@google.com>
9172
9173 PR libstdc++/70745
9174 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
9175 Fix the match_not_bow and match_not_eow behavior.
9176 * testsuite/28_regex/regression.cc: Add testcase.
9177
91782016-04-20 Jonathan Wakely <jwakely@redhat.com>
9179
9180 PR libstdc++/69703
9181 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
9182 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
9183
91842016-04-19 Jonathan Wakely <jwakely@redhat.com>
9185
9186 PR libstdc++/69703
9187 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
9188 Override endianness bit in mode.
9189 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
9190 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
9191 that little_endian mode is ignored.
9192 * testsuite/experimental/filesystem/path/native/string.cc: New test.
9193
9194 PR libstdc++/70609
9195 * src/filesystem/ops.cc (close_fd): New function.
9196 (do_copy_file): Set permissions before copying file contents. Check
9197 result of closing file descriptors. Don't copy streambuf when file
9198 is empty.
9199 (copy(const path&, const path&, copy_options, error_code&)): Use
9200 lstat for source file when copy_symlinks is set.
9201 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
9202
9203 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
9204 operator~ operator&=, operator|=, operator^=): Add noexcept to
9205 overloaded operators for copy_options, perms and directory_options.
9206 * src/filesystem/ops.cc (make_file_type, make_file_status,
9207 is_not_found_errno, file_time): Add noexcept.
9208
92092016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
9210
9211 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
9212
92132016-04-18 Jonathan Wakely <jwakely@redhat.com>
9214
9215 PR libstdc++/41759
9216 * include/bits/random.h: Reword static assertion messages to state
9217 positive conditions.
9218 * include/bits/random.tcc: Likewise.
9219 * include/bits/uniform_int_dist.h: Likewise.
9220 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
9221 patterns.
9222
9223 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
9224
9225 * config/cpu/sh/atomicity.h: Fix typo in comment.
9226
9227 PR libstdc++/70294
9228 * include/std/thread (operator<, operator==): Move definitions to
9229 namespace-scope.
9230 * testsuite/30_threads/thread/id/70294.cc: New test.
9231
9232 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
9233 -Wno-pedantic to dg-options.
9234 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
9235 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
9236 to dg-options.
9237 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
9238 Remove extra semi-colon.
9239 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
9240 Always supply second argument to static_assert.
9241 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
9242 semi-colon.
9243 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
9244 dg-options.
9245 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
9246 * testsuite/29_atomics/atomic/60695.cc: Likewise.
9247 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
9248 alignof when operand is an object not a type.
9249 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
9250 * testsuite/decimal/make-decimal.cc: Likewise.
9251 * testsuite/experimental/type_traits/value.cc: Always supply second
9252 argument to static_assert.
9253 * testsuite/util/testsuite_common_types.h: Use __extension__ for
9254 __int128 types.
9255
9256 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
9257 internal header.
9258 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
9259 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
9260 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
9261 Likewise. Add licence and change to compile-only test.
9262
9263 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
9264 unused parameter.
9265 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
9266
9267 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
9268 warnings.
9269
92702016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
9271
9272 * include/bits/specfun.h: Trivial comment misspelling.
9273
92742016-04-14 Jason Merrill <jason@redhat.com>
9275
9276 Revert Jonathan's empty ABI change from yesterday.
9277
92782016-04-13 Martin Sebor <msebor@redhat.com>
9279
9280 PR c++/69517
9281 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
9282 upper bound is positive.
9283
92842016-04-13 Jonathan Wakely <jwakely@redhat.com>
9285
9286 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
9287 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
9288 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
9289 of functions taking empty structs by value. Add a template parameter
9290 to overloads without hints. Rename overloads with hints to
9291 _M_emplace_hint.
9292 (_Hashtable::_M_erase(true_type, const_iterator),
9293 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
9294 by reordering parameters.
9295 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
9296 _M_emplace_hint instead of _M_emplace.
9297 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
9298 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
9299 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
9300 __shared_ptr): Likewise.
9301 * include/bits/stl_algo.h (replace_if): Likewise.
9302 * include/bits/stl_pair.h (piecewise_construct_t,
9303 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
9304 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
9305 __uses_alloc0): Likewise.
9306 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
9307 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
9308 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
9309 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
9310 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
9311 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
9312 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
9313
93142016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
9315
9316 Document C++17/TR29124 C++ Special Math Functions.
9317 * include/bits/specfun.h: Add Doxygen markup.
9318
93192016-04-07 Jonathan Wakely <jwakely@redhat.com>
9320
9321 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
9322
93232016-04-06 Eric Botcazou <ebotcazou@adacore.com>
9324
9325 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
9326 * src/Makefile.in: Regenerate.
9327
93282016-04-05 Jonathan Wakely <jwakely@redhat.com>
9329
9330 PR libstdc++/70554
9331 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
9332 __atomic_fetch_add for bool.
9333 * configure: Regenerate.
9334
9335 * testsuite/30_threads/thread/70503.cc: Require -static to work.
9336
9337 PR libstdc++/70503
9338 * src/c++11/thread.cc (execute_native_thread_routine,
9339 execute_native_thread_routine_compat): Give internal linkage.
9340 * testsuite/30_threads/thread/70503.cc: New test.
9341
93422016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
9343
9344 PR libstdc++/70437
9345 * include/bits/stl_pair.h (_ConstructiblePair,
9346 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
9347 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
9348 for same-type cases.
9349 * testsuite/20_util/pair/70437.cc: New.
9350
93512016-03-24 Jonathan Wakely <jwakely@redhat.com>
9352
9353 PR libstdc++/69945
9354 * config/abi/pre/gnu.ver: Add new symbol.
9355 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
9356 * testsuite/18_support/free_eh_pool.cc: New test.
9357
93582016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
9359
9360 * include/Makefile.am (install-freestanding-headers): Add
9361 concept_check.h and move.h to the installed headers.
9362 * include/Makefile.in: Regenerated.
9363 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
9364 freestanding implementations.
9365 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
9366 that this macro has no effect for freestanding implementations.
9367 * doc/html/manual/using_macros.html: Likewise.
9368
93692016-02-24 Jonathan Wakely <jwakely@redhat.com>
9370
9371 PR libstdc++/69939
9372 * include/experimental/tuple (__apply_impl): Qualify get and forward.
9373
93742016-02-23 Jonathan Wakely <jwakely@redhat.com>
9375
9376 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
9377 * doc/html/*: Regenerate.
9378
9379 PR libstdc++/69893
9380 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
9381 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
9382 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
9383 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
9384 trunc) [__cplusplus >= 201103L]: Import from namespace std.
9385 (fabs) [__cplusplus < 201103L]: Import from namespace std.
9386 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
9387 Likewise.
9388 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
9389 namespace before including TR1 headers.
9390 * testsuite/tr1/headers/c++200x/math.cc: New test.
9391
93922016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
9393
9394 PR libstdc++/69881
9395 * include/c_global/cstdarg: Undefine __need___va_list.
9396 * include/c_global/cstddef: Undefine all kinds of __need_*.
9397
93982016-02-16 Tim Shen <timshen@google.com>
9399
9400 PR libstdc++/69794
9401 * include/bits/regex_scanner.h: Add different special character
9402 sets for grep and egrep regex.
9403 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
9404 * testsuite/28_regex/regression.cc: Add new testcase.
9405
94062016-02-08 Jonathan Wakely <jwakely@redhat.com>
9407
9408 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
9409 added 'constexpr' in previous commit.
9410 * configure: Regenerate.
9411
9412 PR libstdc++/48891
9413 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
9414 checks for all targets except *-*-solaris2.* and ensure we find the
9415 libc math.h header not our own.
9416 * configure: Regenerate.
9417
94182016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
9419
9420 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
9421 New file. Copied over from s390-linux-gnu.
9422
94232016-02-04 Jonathan Wakely <jwakely@redhat.com>
9424
9425 PR libstdc++/69626
9426 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
9427 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
9428 * config.h.in: Regenerate.
9429 * configure: Regenerate.
9430 * testsuite/21_strings/c_strings/char/69626.cc: New.
9431
9432 * doc/html/index.html: Regenerate.
9433
9434 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
9435 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
9436 * doc/html/*: Regenerate.
9437
94382016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
9439
9440 PR libstdc++/69581
9441 * include/c_compatibility/math.h: Move header guards.
9442 * include/c_compatibility/stdlib.h: Likewise.
9443
94442016-01-29 Jonathan Wakely <jwakely@redhat.com>
9445
9446 PR libstdc++/69506
9447 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9448
94492016-01-28 John David Anglin <danglin@gcc.gnu.org>
9450
9451 PR libstdc++/69450
9452 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
9453 isinf and isnan functions into two independent checks. Check on hpux.
9454 * config.h.in: Regenerate.
9455 * configure: Regenerate.
9456 * include/c_global/cmath (isinf(double), isnan(double)): Use
9457 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
9458 respectively.
9459
94602016-01-27 Jakub Jelinek <jakub@redhat.com>
9461
9462 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
9463
94642016-01-27 Jonathan Wakely <jwakely@redhat.com>
9465
9466 PR libstdc++/69295
9467 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
9468 -ffp-contract=off, and -ffloat-store to disable excess precision.
9469 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
9470 -ffp-contract=off.
9471
94722016-01-26 Jonathan Wakely <jwakely@redhat.com>
9473
9474 PR libstdc++/69478
9475 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
9476 random_access_iterator_tag>): Check is_move_assignable when moving.
9477 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
9478 Likewise.
9479 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
9480 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
9481 * testsuite/25_algorithms/move/69478.cc: New.
9482 * testsuite/25_algorithms/move_backward/69478.cc: new.
9483
94842016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
9485
9486 * include/c_compatibility/stdlib.h: Include wide character related
9487 definitions only when they are available in cstdlib.
9488
94892016-01-25 Jonathan Wakely <jwakely@redhat.com>
9490
9491 PR libstdc++/69464
9492 * include/Makefile.am: Add new header.
9493 * include/Makefile.in: Regenerate.
9494 * include/bits/random.h (uniform_int_distribution): Move to
9495 bits/uniform_int_dist.h.
9496 * include/bits/random.tcc (uniform_int_distribution::operator(),
9497 uniform_int_distribution::__generate_impl): Likewise.
9498 * include/bits/uniform_int_dist.h: New header.
9499 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
9500 <bits/uniform_int_dist.h> instead of <random>.
9501 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
9502 move_iterators/1.cc: Include correct header for uninitialized_copy.
9503 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
9504 move_iterators/1.cc: Likewise.
9505 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
9506 header for vector.
9507 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
9508
95092016-01-23 John David Anglin <danglin@gcc.gnu.org>
9510
9511 PR libstdc++/69446
9512 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9513
95142016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
9515
9516 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
9517 * include/c_compatibility/math.h: Import the TR29124 functions
9518 into the global namespace.
9519 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
9520 xfail and make compile-only.
9521 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
9522 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
9523 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
9524 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
9525 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
9526 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
9527 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
9528 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
9529 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
9530 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
9531 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
9532 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
9533 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
9534 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
9535 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
9536 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
9537 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
9538 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
9539 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
9540 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
9541
95422016-01-22 Jonathan Wakely <jwakely@redhat.com>
9543
9544 PR libstdc++/69116
9545 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
9546 define result_type for types which can be safely used with valarrays.
9547 * testsuite/26_numerics/valarray/69116.cc: New.
9548
9549 PR libstdc++/69413
9550 * config/os/gnu-linux/os_defines.h: Define
9551 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
9552 * include/c_global/cmath (isinf, isnan): Check it.
9553 * doc/xml/manual/internals.xml: Document it.
9554 * doc/html/*: Regenerate.
9555
95562016-01-21 Jonathan Wakely <jwakely@redhat.com>
9557
9558 PR libstdc++/69406
9559 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
9560 * include/ext/type_traits.h: Likewise.
9561 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
9562 for presence of C headers.
9563 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
9564 dg-error line number.
9565 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
9566 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
9567 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
9568
95692016-01-20 Torvald Riegel <triegel@redhat.com>
9570
9571 PR libstdc++/69310
9572 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
9573
95742016-01-20 Jonathan Wakely <jwakely@redhat.com>
9575
9576 PR libstdc++/60401
9577 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
9578 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
9579 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
9580 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
9581 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
9582 Add using declarations.
9583 * testsuite/26_numerics/headers/cmath/60401.cc: New.
9584
9585 PR libstdc++/69386
9586 * include/c_global/ccomplex: Ensure C++ language linkage.
9587 * include/c_global/cmath: Likewise.
9588 * include/c_global/cstdlib: Likewise.
9589 * include/c_global/ctgmath: Likewise.
9590 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
9591
95922016-01-19 Jonathan Wakely <jwakely@redhat.com>
9593
9594 PR libstdc++/14608
9595 PR libstdc++/60401
9596 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
9597 --enable-cheaders=c_global configs.
9598 * include/Makefile.in: Regenerate.
9599 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
9600 test and allow inclusion from C files.
9601 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
9602 (at_quick_exit, quick_exit): Add using directives.
9603 * include/c_global/cmath: Use #include_next for math.h.
9604 * include/c_global/cstdlib: Use #include_next for stdlib.h.
9605 * testsuite/26_numerics/headers/cmath/14608.cc: New.
9606 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
9607 Remove xfail for most targets.
9608 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
9609
96102016-01-18 Torvald Riegel <triegel@redhat.com>
9611
9612 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
9613 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
9614 and move after its definition.
9615 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
9616 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
9617 __GXX_WEAK__, and only provide transactional clones if
9618 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
9619 functions.
9620
96212016-01-18 Jonathan Wakely <jwakely@redhat.com>
9622
9623 PR libstdc++/60637
9624 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
9625
9626 PR libstdc++/69243
9627 * include/std/functional (_Function_base::_M_not_empty_function):
9628 Change overloads for pointers to take arguments by value.
9629 * testsuite/20_util/function/cons/57465.cc: Add tests for
9630 pointer-to-member cases.
9631
9632 PR libstdc++/69340
9633 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
9634 Use macros for exception handling and fix unused parameter warning.
9635
96362016-01-17 John David Anglin <danglin@gcc.gnu.org>
9637
9638 PR libstdc++/68734
9639 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
9640
96412016-01-17 Torvald Riegel <triegel@redhat.com>
9642
9643 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
9644
96452016-01-16 H.J. Lu <hongjiu.lu@intel.com>
9646
9647 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
9648 __int128 symbols.
9649
96502016-01-15 Jonathan Wakely <jwakely@redhat.com>
9651
9652 PR libstdc++/69293
9653 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
9654 static assertion that type is constructible from the arguments.
9655 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
9656 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
9657 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
9658
9659 PR libstdc++/69294
9660 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9661 and isnan on AIX. Quote variables.
9662 * configure: Regenerate.
9663
96642016-01-15 Torvald Riegel <triegel@redhat.com>
9665
9666 * include/bits/basic_string.h (basic_string): Declare friends.
9667 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
9668 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
9669 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
9670 length_error, out_of_range, runtime_error, range_error,
9671 underflow_error, overflow_error): Declare members as transaction-safe.
9672 (logic_error, runtime_error): Declare friend functions.
9673 * libsupc++/exception (exception, bad_exception): Declare members as
9674 transaction-safe.
9675 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
9676 transaction-safe members of exceptions and helper functions.
9677 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
9678 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
9679 (CXXABI_1.3.10): New.
9680 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
9681 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
9682 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
9683 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
9684 * include/Makefile.in: Regenerate.
9685 * config.h.in: Regenerate.
9686 * configure: Regenerate.
9687 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
9688
96892016-01-15 Steve Ellcey <sellcey@imgtec.com>
9690
9691 * include/ext/random.tcc: Use __builtin_isfinite instead of
9692 std::isfinite.
9693
96942016-01-15 Jonathan Wakely <jwakely@redhat.com>
9695
9696 * include/bits/std_mutex.h: Fix Doxygen @file name.
9697
96982016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
9699 Jonathan Wakely <jwakely@redhat.com>
9700 Florian Goth <CaptainSifff@gmx.de>
9701
9702 Implement TR29124 C++ special Math Functions.
9703 * include/Makefile.am: Add new headers.
9704 * include/Makefile.in: Regenerate.
9705 * include/bits/specfun.h: New.
9706 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
9707 * include/tr1/bessel_function.tcc: Ditto.
9708 * include/tr1/beta_function.tcc: Ditto.
9709 * include/tr1/cmath: Ditto.
9710 * include/tr1/ell_integral.tcc: Ditto.
9711 * include/tr1/exp_integral.tcc: Ditto.
9712 * include/tr1/gamma.tcc: Ditto.
9713 * include/tr1/hypergeometric.tcc: Ditto.
9714 * include/tr1/legendre_function.tcc: Ditto.
9715 * include/tr1/modified_bessel_func.tcc: Ditto.
9716 * include/tr1/poly_hermite.tcc: Ditto.
9717 * include/tr1/poly_laguerre.tcc: Ditto.
9718 * include/tr1/riemann_zeta.tcc: Ditto.
9719 * include/tr1/special_function_util.h: Ditto.
9720 * testsuite/ext/special_functions/conf_hyperg: New.
9721 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
9722 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
9723 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
9724 * testsuite/ext/special_functions/hyperg: New.
9725 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
9726 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
9727 * testsuite/ext/special_functions/hyperg/compile.cc: New.
9728 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
9729 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
9730 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
9731 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
9732 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
9733 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
9734 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
9735 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
9736 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
9737 * testsuite/special_functions/03_beta/check_nan.cc: New.
9738 * testsuite/special_functions/03_beta/check_value.cc: New.
9739 * testsuite/special_functions/03_beta/compile.cc: New.
9740 * testsuite/special_functions/03_beta/compile_2.cc: New.
9741 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
9742 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
9743 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
9744 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
9745 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
9746 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
9747 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
9748 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
9749 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
9750 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
9751 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
9752 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
9753 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
9754 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
9755 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
9756 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
9757 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
9758 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
9759 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
9760 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
9761 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
9762 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
9763 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
9764 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
9765 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
9766 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
9767 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
9768 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
9769 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
9770 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
9771 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
9772 * testsuite/special_functions/11_ellint_1/compile.cc: New.
9773 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
9774 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
9775 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
9776 * testsuite/special_functions/12_ellint_2/compile.cc: New.
9777 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
9778 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
9779 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
9780 * testsuite/special_functions/13_ellint_3/compile.cc: New.
9781 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
9782 * testsuite/special_functions/14_expint/check_nan.cc: New.
9783 * testsuite/special_functions/14_expint/check_value.cc: New.
9784 * testsuite/special_functions/14_expint/compile.cc: New.
9785 * testsuite/special_functions/14_expint/compile_2.cc: New.
9786 * testsuite/special_functions/15_hermite/check_nan.cc: New.
9787 * testsuite/special_functions/15_hermite/check_value.cc: New.
9788 * testsuite/special_functions/15_hermite/compile.cc: New.
9789 * testsuite/special_functions/15_hermite/compile_2.cc: New.
9790 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
9791 * testsuite/special_functions/16_laguerre/check_value.cc: New.
9792 * testsuite/special_functions/16_laguerre/compile.cc: New.
9793 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
9794 * testsuite/special_functions/17_legendre/check_nan.cc: New.
9795 * testsuite/special_functions/17_legendre/check_value.cc: New.
9796 * testsuite/special_functions/17_legendre/compile.cc: New.
9797 * testsuite/special_functions/17_legendre/compile_2.cc: New.
9798 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
9799 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
9800 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
9801 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
9802 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
9803 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
9804 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
9805 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
9806 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
9807 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
9808 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
9809 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
9810 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
9811 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
9812 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
9813 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
9814 * testsuite/util/specfun_testcase.h: New.
9815 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
9816 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
9817 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
9818 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
9819 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
9820 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
9821 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
9822
98232016-01-13 Jonathan Wakely <jwakely@redhat.com>
9824
9825 PR libstdc++/48891
9826 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
9827 and isnan functions.
9828 * config.h.in: Regenerate.
9829 * configure: Regenerate.
9830 * include/c_global/cmath (isinf(double), isnan(double))
9831 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
9832 * testsuite/26_numerics/headers/cmath/48891.cc: New.
9833
98342016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
9835
9836 PR libstdc++/66006
9837 * configure.host (abi_baseline_pair): Use separate baseline for
9838 Solaris 11+ and Solaris 10 with gld.
9839 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
9840 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
9841 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
9842
98432016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
9844
9845 PR libstdc++/68877
9846 * include/std/type_traits: Following N4511, reimplement __is_swappable
9847 and __is_nothrow_swappable. Move __is_swappable to namespace std,
9848 adjust callers. Use __is_nothrow_swappable in swap.
9849 * include/bits/move.h: Use __is_nothrow_swappable in swap.
9850 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
9851 __is_swappable related tests.
9852 * testsuite/20_util/is_swappable/value.cc: New.
9853 * testsuite/20_util/is_swappable/requirements/
9854 explicit_instantiation.cc: New.
9855 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
9856 * testsuite/25_algorithms/swap/68877.cc: New.
9857
98582016-01-12 Jonathan Wakely <jwakely@redhat.com>
9859
9860 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
9861
9862 PR libstdc++/69005
9863 PR libstdc++/69222
9864 * include/std/functional (function::_Invoke): Remove, use result_of.
9865 (function::_Callable): Replace alias template with class template
9866 and use partial specialization instead of _NotSelf alias template.
9867 (function(_Functor)): Add "not self" constraint so that _Callable is
9868 not used while type is incomplete.
9869 * testsuite/20_util/function/69222.cc: New.
9870
98712016-01-11 Jonathan Wakely <jwakely@redhat.com>
9872
9873 PR libstdc++/60976
9874 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
9875 Define partial specialization.
9876 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
9877 destroy members to std::allocator explicit specialization.
9878
98792016-01-08 Jonathan Wakely <jwakely@redhat.com>
9880
9881 * testsuite/26_numerics/headers/cmath/
9882 c99_classification_macros_c++.cc: Rename to ...
9883 * testsuite/26_numerics/headers/cmath/
9884 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
9885 * testsuite/26_numerics/headers/cmath/
9886 c99_classification_macros_c++0x.cc: Rename to ...
9887 * testsuite/26_numerics/headers/cmath/
9888 c99_classification_macros_c++11.cc: Here.
9889
9890 PR libstdc++/69190
9891 * include/bits/uses_allocator.h: Add missing include.
9892
98932016-01-07 Jonathan Wakely <jwakely@redhat.com>
9894
9895 PR libstdc++/69105
9896 PR libstdc++/69106
9897 PR libstdc++/69114
9898 * include/bits/stl_iterator.h (back_insert_iterator,
9899 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
9900 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
9901 * include/std/future (__future::base::_State_baseV2::__setter):
9902 Likewise.
9903 * include/std/scoped_allocator (__outermost): Likewise.
9904 * testsuite/20_util/scoped_allocator/69114.cc: New.
9905 * testsuite/20_util/uses_allocator/69114.cc: New.
9906 * testsuite/30_threads/promise/69106.cc: New.
9907
99082016-01-06 Jonathan Wakely <jwakely@redhat.com>
9909
9910 PR libstdc++/69092
9911 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
9912 Remove _GLIBCXX_NOEXCEPT.
9913 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
9914
9915 * include/Makefile.am: Adjust.
9916 * include/Makefile.in: Regenerate.
9917 * include/bits/mutex.h: Rename to bits/std_mutex.h.
9918 * include/std/condition_variable: Adjust include.
9919 * include/std/mutex: Likewise.
9920
99212016-01-04 Jakub Jelinek <jakub@redhat.com>
9922
9923 Update copyright years.
9924\f
9925Copyright (C) 2016 Free Software Foundation, Inc.
9926
9927Copying and distribution of this file, with or without modification,
9928are permitted in any medium without royalty provided the copyright
9929notice and this notice are preserved.