Home | History | Annotate | Line # | Download | only in libstdc++-v3
      1 2023-12-31  Hans-Peter Nilsson  <hp (a] axis.com>
      2 
      3 	* testsuite/20_util/hash/quality.cc: Increase timeout by a factor 3.
      4 
      5 2023-12-31  Franois Dumont  <fdumont (a] gcc.gnu.org>
      6 
      7 	* include/bits/hashtable.h: Move comment about all equivalent values
      8 	being next to each other in the class documentation header.
      9 	(_M_reinsert_node, _M_merge_unique): Implement small size optimization.
     10 	(_M_find_tr, _M_count_tr, _M_equal_range_tr): Likewise.
     11 
     12 2023-12-31  Franois Dumont  <fdumont (a] gcc.gnu.org>
     13 
     14 	* testsuite/performance/23_containers/insert/54075.cc: Add lookup on unknown entries
     15 	w/o copy to see potential impact of memory fragmentation enhancements.
     16 	* testsuite/performance/23_containers/insert/unordered_multiset_hint.cc: Enhance hash
     17 	functor to make it perfect, exactly 1 entry per bucket. Also use hash functor tagged as
     18 	slow or not to bench w/o hash code cache.
     19 	* testsuite/performance/23_containers/insert/unordered_set_hint.cc: New test case. Like
     20 	previous one but using std::unordered_set.
     21 	* testsuite/performance/23_containers/insert/unordered_set_range_insert.cc: New test case.
     22 	Check performance of range-insertion compared to individual insertions.
     23 	* testsuite/performance/23_containers/insert_erase/unordered_small_size.cc: Add same bench
     24 	but after a copy to demonstrate impact of enhancements regarding memory fragmentation.
     25 
     26 2023-12-22  Christophe Lyon  <christophe.lyon (a] linaro.org>
     27 
     28 	* Makefile.am: Allow overriding EXEPCT.
     29 	* Makefile.in: Regenerate.
     30 
     31 2023-12-21  Arsen Arsenovi  <arsen (a] aarsen.me>
     32 
     33 	* include/Makefile.am: Install std/generator, bits/elements_of.h
     34 	as freestanding.
     35 	* include/Makefile.in: Regenerate.
     36 	* include/bits/version.def: Add __cpp_lib_generator.
     37 	* include/bits/version.h: Regenerate.
     38 	* include/precompiled/stdc++.h: Include <generator>.
     39 	* include/std/ranges: Include bits/elements_of.h
     40 	* include/bits/elements_of.h: New file.
     41 	* include/std/generator: New file.
     42 	* testsuite/24_iterators/range_generators/01.cc: New test.
     43 	* testsuite/24_iterators/range_generators/02.cc: New test.
     44 	* testsuite/24_iterators/range_generators/copy.cc: New test.
     45 	* testsuite/24_iterators/range_generators/except.cc: New test.
     46 	* testsuite/24_iterators/range_generators/synopsis.cc: New test.
     47 	* testsuite/24_iterators/range_generators/subrange.cc: New test.
     48 
     49 2023-12-21  Arsen Arsenovi  <arsen (a] aarsen.me>
     50 
     51 	* include/bits/ranges_util.h: Add missing <bits/invoke.h>
     52 	include.
     53 
     54 2023-12-18  Patrick Palka  <ppalka (a] redhat.com>
     55 
     56 	PR libstdc++/112802
     57 	PR libstdc++/113068
     58 	* include/std/ranges (__detail::_To::operator()): Add constraints.
     59 	(__detail::_To2::operator()): Likewise.
     60 	* testsuite/std/ranges/conv/1.cc (test_sfinae): New test.
     61 	(test_composition): New test.
     62 
     63 2023-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
     64 
     65 	* src/c++23/print.cc (__open_terminal(FILE*)): Avoid fileno
     66 	macro.
     67 
     68 2023-12-16  H.J. Lu  <hjl.tools (a] gmail.com>
     69 
     70 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt:
     71 	Updated.
     72 
     73 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
     74 
     75 	* include/std/type_traits (remove_pointer): Use __remove_pointer
     76 	built-in trait.
     77 
     78 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
     79 
     80 	* include/std/type_traits (is_object): Use __is_object built-in
     81 	trait.
     82 	(is_object_v): Likewise.
     83 
     84 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
     85 
     86 	* include/std/type_traits (is_function): Use __is_function
     87 	built-in trait.
     88 	(is_function_v): Likewise. Optimize its implementation.  Move
     89 	this under is_const_v as this depends on is_const_v.
     90 
     91 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
     92 
     93 	* include/std/type_traits (is_reference): Use __is_reference
     94 	built-in trait.
     95 	(is_reference_v): Likewise.
     96 
     97 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
     98 
     99 	* include/std/type_traits (is_member_object_pointer): Use
    100 	__is_member_object_pointer built-in trait.
    101 	(is_member_object_pointer_v): Likewise.
    102 
    103 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    104 
    105 	* include/std/type_traits (is_member_function_pointer): Use
    106 	__is_member_function_pointer built-in trait.
    107 	(is_member_function_pointer_v): Likewise.
    108 
    109 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    110 
    111 	* include/std/type_traits (is_member_pointer): Use
    112 	__is_member_pointer built-in trait.
    113 	(is_member_pointer_v): Likewise.
    114 
    115 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    116 
    117 	* include/std/type_traits (is_scoped_enum): Use
    118 	__is_scoped_enum built-in trait.
    119 	(is_scoped_enum_v): Likewise.
    120 
    121 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    122 
    123 	* include/std/type_traits (is_bounded_array_v): Use
    124 	__is_bounded_array built-in trait.
    125 
    126 2023-12-16  Ken Matsui  <kmatsui (a] gcc.gnu.org>
    127 
    128 	* include/std/type_traits (is_array): Use __is_array built-in
    129 	trait.
    130 	(is_array_v): Likewise.
    131 
    132 2023-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    133 
    134 	* src/c++23/print.cc (__write_to_terminal) [_WIN32]: If handle
    135 	does not refer to the console then just write to it using normal
    136 	file I/O.
    137 	* testsuite/27_io/print/2.cc (as_printed_to_terminal): Print
    138 	error message on failure.
    139 	(test_utf16_transcoding): Adjust for as_printed_to_terminal
    140 	modifying its argument.
    141 
    142 2023-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    143 
    144 	* include/std/ostream (vprint_unicode) [_WIN32]: Use RAII guard.
    145 	(vprint_unicode) [!_WIN32]: Just call vprint_nonunicode.
    146 	* include/std/print (vprint_unicode) [!_WIN32]: Likewise.
    147 
    148 2023-12-15  Jonathan Wakely  <jwakely (a] redhat.com>
    149 
    150 	* include/std/ostream (vprint_nonunicode, vprint_unicode): Do
    151 	not insert padding.
    152 	* testsuite/27_io/basic_ostream/print/1.cc: Adjust expected
    153 	behaviour.
    154 
    155 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    156 
    157 	PR libstdc++/107760
    158 	* include/Makefile.am: Add new header.
    159 	* include/Makefile.in: Regenerate.
    160 	* include/bits/version.def (__cpp_lib_print): Define.
    161 	* include/bits/version.h: Regenerate.
    162 	* include/std/format (__literal_encoding_is_utf8): New function.
    163 	(_Seq_sink::view()): New member function.
    164 	* include/std/ostream (vprintf_nonunicode, vprintf_unicode)
    165 	(print, println): New functions.
    166 	* include/std/print: New file.
    167 	* src/c++23/Makefile.am: Add new source file.
    168 	* src/c++23/Makefile.in: Regenerate.
    169 	* src/c++23/print.cc: New file.
    170 	* testsuite/27_io/basic_ostream/print/1.cc: New test.
    171 	* testsuite/27_io/print/1.cc: New test.
    172 	* testsuite/27_io/print/2.cc: New test.
    173 
    174 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    175 
    176 	* acinclude.m4 (GLIBCXX_CHECK_FILEBUF_NATIVE_HANDLES): Add
    177 	missing header to configure test. Check correct variable.
    178 	* config/io/basic_file_stdio.cc (__basic_file<char>::native_handle):
    179 	Fix typo.
    180 	* configure: Regenerate.
    181 	* testsuite/27_io/basic_filebuf/native_handle/char/1.cc: Do not
    182 	call CloseHandle on the native handle.
    183 	* testsuite/27_io/basic_filebuf/native_handle/wchar_t/1.cc:
    184 	Likewise.
    185 
    186 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    187 
    188 	* include/std/format (_Seq_sink): Fix missing argument in
    189 	discarded statement. Add comments, likely/unlikely attributes
    190 	and debug assertions as sanity checks.
    191 
    192 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    193 
    194 	* testsuite/27_io/objects/char/2.cc: Use dg-output.
    195 	* testsuite/27_io/objects/wchar_t/2.cc: Use dg-output.
    196 
    197 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    198 
    199 	* include/bits/chrono_io.h (__formatter_chrono::_M_S): Fix order
    200 	of arguments to std::format_to.
    201 	* testsuite/20_util/duration/io.cc: Test subsecond duration with
    202 	floating-point rep.
    203 
    204 2023-12-14  Jonathan Wakely  <jwakely (a] redhat.com>
    205 
    206 	PR libstdc++/109536
    207 	* include/bits/c++config (__glibcxx_constexpr_assert): Remove
    208 	macro.
    209 	* include/bits/stl_algobase.h (__niter_base, __copy_move_a)
    210 	(__copy_move_backward_a, __fill_a, __fill_n_a, __equal_aux)
    211 	(__lexicographical_compare_aux): Add constexpr to overloads for
    212 	debug mode iterators.
    213 	* include/debug/helper_functions.h (__unsafe): Add constexpr.
    214 	* include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_COND_AT): Remove
    215 	macro, folding it into ...
    216 	(_GLIBCXX_DEBUG_VERIFY_AT_F): ... here. Do not use
    217 	__glibcxx_constexpr_assert.
    218 	* include/debug/safe_base.h (_Safe_iterator_base): Add constexpr
    219 	to some member functions. Omit attaching, detaching and checking
    220 	operations during constant evaluation.
    221 	* include/debug/safe_container.h (_Safe_container): Likewise.
    222 	* include/debug/safe_iterator.h (_Safe_iterator): Likewise.
    223 	* include/debug/safe_iterator.tcc (__niter_base, __copy_move_a)
    224 	(__copy_move_backward_a, __fill_a, __fill_n_a, __equal_aux)
    225 	(__lexicographical_compare_aux): Add constexpr.
    226 	* include/debug/vector (_Safe_vector, vector): Add constexpr.
    227 	Omit safe iterator operations during constant evaluation.
    228 	* testsuite/23_containers/vector/bool/capacity/constexpr.cc:
    229 	Remove dg-xfail-if for debug mode.
    230 	* testsuite/23_containers/vector/bool/cmp_c++20.cc: Likewise.
    231 	* testsuite/23_containers/vector/bool/cons/constexpr.cc:
    232 	Likewise.
    233 	* testsuite/23_containers/vector/bool/element_access/1.cc:
    234 	Likewise.
    235 	* testsuite/23_containers/vector/bool/element_access/constexpr.cc:
    236 	Likewise.
    237 	* testsuite/23_containers/vector/bool/modifiers/assign/constexpr.cc:
    238 	Likewise.
    239 	* testsuite/23_containers/vector/bool/modifiers/constexpr.cc:
    240 	Likewise.
    241 	* testsuite/23_containers/vector/bool/modifiers/swap/constexpr.cc:
    242 	Likewise.
    243 	* testsuite/23_containers/vector/capacity/constexpr.cc:
    244 	Likewise.
    245 	* testsuite/23_containers/vector/cmp_c++20.cc: Likewise.
    246 	* testsuite/23_containers/vector/cons/constexpr.cc: Likewise.
    247 	* testsuite/23_containers/vector/data_access/constexpr.cc:
    248 	Likewise.
    249 	* testsuite/23_containers/vector/element_access/constexpr.cc:
    250 	Likewise.
    251 	* testsuite/23_containers/vector/modifiers/assign/constexpr.cc:
    252 	Likewise.
    253 	* testsuite/23_containers/vector/modifiers/constexpr.cc:
    254 	Likewise.
    255 	* testsuite/23_containers/vector/modifiers/swap/constexpr.cc:
    256 	Likewise.
    257 	* testsuite/23_containers/vector/cons/destructible_debug_neg.cc:
    258 	Adjust dg-error line number.
    259 
    260 2023-12-13  Jonathan Wakely  <jwakely (a] redhat.com>
    261 
    262 	* include/bits/chrono_io.h (__formatter_chrono::_M_C_y_Y): Do
    263 	not round century down for %Y formats.
    264 
    265 2023-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
    266 
    267 	* include/std/format (__do_vformat_to): Handle char separately
    268 	from other integral types.
    269 	* testsuite/std/format/functions/format.cc: Check for expected
    270 	output for char and bool arguments.
    271 	* testsuite/std/format/string.cc: Check that 0 filling is
    272 	rejected for character and string formats.
    273 
    274 2023-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
    275 
    276 	* include/bits/chrono_io.h (__formatter_chrono::_M_C_y_Y): Fix
    277 	rounding for negative centuries.
    278 	* testsuite/std/time/year/io.cc: Check %C for negative years.
    279 
    280 2023-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
    281 
    282 	* src/c++11/Makefile.am: Remove redundant -std=gnu++11 flags.
    283 	* src/c++11/Makefile.in: Regenerate.
    284 
    285 2023-12-09  Jonathan Wakely  <jwakely (a] redhat.com>
    286 
    287 	PR libstdc++/111826
    288 	* include/bits/version.def (format): Update value.
    289 	* include/bits/version.h: Regenerate.
    290 	* testsuite/std/format/functions/format.cc:
    291 
    292 2023-12-09  Jonathan Wakely  <jwakely (a] redhat.com>
    293 
    294 	PR libstdc++/112876
    295 	* include/std/ranges (ranges::to): Do not try to use an iterator
    296 	returned by the container's emplace or insert member functions.
    297 	* testsuite/std/ranges/conv/1.cc (Cont4::emplace, Cont4::insert):
    298 	Use the iterator parameter. Do not return an iterator.
    299 
    300 2023-12-07  Patrick Palka  <ppalka (a] redhat.com>
    301 
    302 	* include/std/ranges (__detail::_ToClosure): Replace with ...
    303 	(__detail::_To): ... this.
    304 	(__detail::_ToClosure2): Replace with ...
    305 	(__detail::To2): ... this.
    306 	(to): Simplify using the existing _Partial range adaptor
    307 	closure object.
    308 
    309 2023-12-07  Jonathan Wakely  <jwakely (a] redhat.com>
    310 
    311 	* include/std/format (_Iter_sink<charT, contiguous_iterator>):
    312 	Remove uint64_t local type.
    313 
    314 2023-12-07  Jonathan Wakely  <jwakely (a] redhat.com>
    315 
    316 	* include/bits/atomic_wait.h: Include <cstdint> instead of
    317 	<stdint.h>.
    318 
    319 2023-12-07  Jonathan Wakely  <jwakely (a] redhat.com>
    320 
    321 	PR libstdc++/112882
    322 	* include/bits/c++config (__is_constant_evaluated): Add
    323 	always_inline attribute.
    324 	(_GLIBCXX_DO_ASSERT): Remove macro.
    325 	(__glibcxx_assert): Define separately for assertions-enabled and
    326 	constexpr-only cases.
    327 
    328 2023-12-07  Alexandre Oliva  <oliva (a] adacore.com>
    329 
    330 	PR libstdc++/112858
    331 	* config/os/gnu-linux/os_defines.h
    332 	(_GLIBCXX_MAY_HAVE___CXA_THREAD_ATEXIT_IMPL): Define.
    333 	* libsupc++/atexit_thread.cc [__GXX_WEAK__ &&
    334 	_GLIBCXX_MAY_HAVE___CXA_THREAD_ATEXIT_IMPL]
    335 	(__cxa_thread_atexit): Add dynamic detection of
    336 	__cxa_thread_atexit_impl.
    337 
    338 2023-12-06  Jason Merrill  <jason (a] redhat.com>
    339 
    340 	DR 532
    341 	PR c++/53499
    342 	* testsuite/23_containers/vector/ext_pointer/types/1.cc
    343 	* testsuite/23_containers/vector/ext_pointer/types/2.cc
    344 	(N::operator-): Make less specialized.
    345 
    346 2023-12-06  Alexandre Oliva  <oliva (a] gnu.org>
    347 
    348 	Revert:
    349 	2023-12-02  Alexandre Oliva  <oliva (a] adacore.com>
    350 
    351 	* libsupc++/atexit_thread.cc [__GXX_WEAK__]: Add dynamic
    352 	detection of __cxa_thread_atexit_impl.
    353 
    354 2023-12-05  Jonathan Wakely  <jwakely (a] redhat.com>
    355 
    356 	PR libstdc++/111948
    357 	* include/bits/ranges_util.h (subrange): Add constructor to
    358 	_Size to aoid setting member in constructor.
    359 	* testsuite/std/ranges/subrange/111948.cc: New test.
    360 
    361 2023-12-05  Jonathan Wakely  <jwakely (a] redhat.com>
    362 
    363 	* include/std/ranges (__detail::__container_insertable): Remove.
    364 	(__detail::__container_inserter): Remove.
    365 	(ranges::to): Use emplace_back or emplace, as per LWG 4016.
    366 	* testsuite/std/ranges/conv/1.cc (Cont4, test_2_1_4): Check for
    367 	use of emplace_back and emplace.
    368 
    369 2023-12-05  Jonathan Wakely  <jwakely (a] redhat.com>
    370 
    371 	* include/bits/c++config (__glibcxx_assert_fail): Declare even
    372 	when assertions are not enabled.
    373 	(__glibcxx_constexpr_assert): Remove macro.
    374 	(__glibcxx_assert_impl): Remove macro.
    375 	(_GLIBCXX_ASSERT_FAIL): New macro.
    376 	(_GLIBCXX_DO_ASSERT): New macro.
    377 	(__glibcxx_assert): Simplify to a single definition that works
    378 	at runtime and during constant evaluation.
    379 	* testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
    380 	Adjust expected errors.
    381 	* testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
    382 	Likewise.
    383 	* testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
    384 	Likewise.
    385 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
    386 	Likewise.
    387 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
    388 	Likewise.
    389 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
    390 	Likewise.
    391 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/debug.cc:
    392 	Likewise.
    393 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/debug.cc:
    394 	Likewise.
    395 	* testsuite/23_containers/span/back_neg.cc: Likewise.
    396 	* testsuite/23_containers/span/front_neg.cc: Likewise.
    397 	* testsuite/23_containers/span/index_op_neg.cc: Likewise.
    398 	* testsuite/26_numerics/lcm/105844.cc: Likewise.
    399 
    400 2023-12-05  Jonathan Wakely  <jwakely (a] redhat.com>
    401 
    402 	PR libstdc++/112832
    403 	* include/std/format (formatter::set_debug_format): Ensure this
    404 	member is defined conditionally for all specializations.
    405 	* testsuite/std/format/formatter/112832.cc: New test.
    406 
    407 2023-12-05  Will Hawkins  <hawkinsw (a] obs.cr>
    408 	    Jonathan Wakely  <jwakely (a] redhat.com>
    409 
    410 	* testsuite/20_util/smartptr.adapt/inout_ptr/2.cc: Add check
    411 	for LWG Issue 3897.
    412 
    413 2023-12-05  Marek Polacek  <polacek (a] redhat.com>
    414 
    415 	PR c++/107687
    416 	PR c++/110997
    417 	* testsuite/18_support/comparisons/categories/zero_neg.cc: Add
    418 	dg-prune-output.
    419 	* testsuite/std/format/string_neg.cc: Add dg-error.
    420 
    421 2023-12-02  Alexandre Oliva  <oliva (a] adacore.com>
    422 
    423 	* libsupc++/atexit_thread.cc [__GXX_WEAK__]: Add dynamic
    424 	detection of __cxa_thread_atexit_impl.
    425 
    426 2023-12-01  Jason Merrill  <jason (a] redhat.com>
    427 
    428 	* include/std/bit: Avoid builtins in requires-clauses.
    429 	* include/std/variant: Likewise.
    430 
    431 2023-12-01  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
    432 
    433 	* configure: Regenerate.
    434 
    435 2023-11-30  Jonathan Wakely  <jwakely (a] redhat.com>
    436 
    437 	* include/std/ranges (__detail::__toable): Fix incorrect use of
    438 	_Range instead of _Cont.
    439 	(__detail::_ToClosure, __detail::_ToClosure2): Add missing
    440 	constexpr specifier on constructors.
    441 	* testsuite/std/ranges/conv/1.cc (_Cont, _Cont2, _Cont3): Remove
    442 	unnecessary begin() and end() members.
    443 	(test_constexpr): New function to check range adaptors are
    444 	usable in constant expressions.
    445 
    446 2023-11-29  Thomas Schwinge  <thomas (a] codesourcery.com>
    447 
    448 	* testsuite/23_containers/span/at.cc: Fix for '-fno-exceptions'
    449 	configurations.
    450 
    451 2023-11-28  Jonathan Wakely  <jwakely (a] redhat.com>
    452 
    453 	* include/bits/atomic_wait.h: Include <stdint.h>.
    454 
    455 2023-11-28  Jonathan Wakely  <jwakely (a] redhat.com>
    456 
    457 	* include/bits/stl_uninitialized.h: Fix typo in comment.
    458 
    459 2023-11-24  Jan Hubicka  <jh (a] suse.cz>
    460 
    461 	PR middle-end/109849
    462 	* include/bits/stl_uninitialized.h (__relocate_a_1): Use memcpy instead
    463 	of memmove.
    464 
    465 2023-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    466 
    467 	PR libstdc++/111055
    468 	* include/bits/ranges_base.h (from_range_t): Define new tag
    469 	type.
    470 	(from_range): Define new tag object.
    471 	* include/bits/version.def (ranges_to_container): Define.
    472 	* include/bits/version.h: Regenerate.
    473 	* include/std/ranges (ranges::to): Define.
    474 	* testsuite/std/ranges/conv/1.cc: New test.
    475 	* testsuite/std/ranges/conv/2_neg.cc: New test.
    476 	* testsuite/std/ranges/conv/version.cc: New test.
    477 
    478 2023-11-23  Jonathan Wakely  <jwakely (a] redhat.com>
    479 
    480 	* testsuite/util/testsuite_allocator.h (uneq_allocator): Fix
    481 	equality operator for heterogeneous comparisons.
    482 
    483 2023-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    484 
    485 	* include/bits/version.def (freestanding_cstring): Add.
    486 	* include/bits/version.h: Regenerate.
    487 	* include/c_compatibility/string.h (strtok): Do not declare for
    488 	C++26 freestanding.
    489 	* include/c_global/cstring (strtok): Likewise.
    490 	* testsuite/21_strings/headers/cstring/version.cc: New test.
    491 
    492 2023-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    493 
    494 	* include/bits/version.def (freestanding_algorithm)
    495 	(freestanding_array, freestanding_optional)
    496 	(freestanding_string_view, freestanding_variant): Add.
    497 	* include/bits/version.h: Regenerate.
    498 	* include/std/algorithm (__glibcxx_want_freestanding_algorithm):
    499 	Define.
    500 	* include/std/array (__glibcxx_want_freestanding_array):
    501 	Define.
    502 	* include/std/optional (__glibcxx_want_freestanding_optional):
    503 	Define.
    504 	* include/std/string_view
    505 	(__glibcxx_want_freestanding_string_view): Define.
    506 	* include/std/variant (__glibcxx_want_freestanding_variant):
    507 	Define.
    508 	* testsuite/20_util/optional/version.cc: Add checks for
    509 	__cpp_lib_freestanding_optional.
    510 	* testsuite/20_util/variant/version.cc: Add checks for
    511 	__cpp_lib_freestanding_variant.
    512 	* testsuite/23_containers/array/tuple_interface/get_neg.cc:
    513 	Adjust dg-error line numbers.
    514 	* testsuite/21_strings/basic_string_view/requirements/version.cc:
    515 	New test.
    516 	* testsuite/23_containers/array/requirements/version.cc: New
    517 	test.
    518 	* testsuite/25_algorithms/fill_n/requirements/version.cc: New
    519 	test.
    520 	* testsuite/25_algorithms/swap_ranges/requirements/version.cc:
    521 	New test.
    522 
    523 2023-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    524 
    525 	* include/bits/version.def (freestanding_expected): New macro.
    526 	(span): Add C++26 value.
    527 	* include/bits/version.h: Regenerate.
    528 	* include/std/expected (__glibcxx_want_freestanding_expected):
    529 	Define.
    530 	* include/std/span (span::at): New member function.
    531 	* testsuite/20_util/expected/version.cc: Add checks for
    532 	__cpp_lib_freestanding_expected.
    533 	* testsuite/23_containers/span/2.cc: Moved to...
    534 	* testsuite/23_containers/span/version.cc: ...here. Add checks
    535 	for __cpp_lib_span in <span> as well as in <version>.
    536 	* testsuite/23_containers/span/1.cc: Removed.
    537 	* testsuite/23_containers/span/at.cc: New test.
    538 
    539 2023-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    540 
    541 	* include/tr2/dynamic_bitset (dynamic_bitset): Pass zero and one
    542 	characters to _M_copy_from_string.
    543 	* testsuite/tr2/dynamic_bitset/string.cc: New test.
    544 
    545 2023-11-21  Jonathan Wakely  <jwakely (a] redhat.com>
    546 
    547 	* doc/html/*: Regenerate.
    548 	* doc/xml/faq.xml: Remove reference to buildstat.html pages.
    549 	* doc/xml/manual/test.xml: Likewise
    550 
    551 2023-11-21  Jan Hubicka  <jh (a] suse.cz>
    552 
    553 	PR libstdc++/110287
    554 	PR middle-end/109811
    555 	PR middle-end/109849
    556 	* include/bits/stl_vector.h (_M_realloc_append): New member function.
    557 	(push_back): Use it.
    558 	* include/bits/vector.tcc: (emplace_back): Use it.
    559 	(_M_realloc_insert): Let compiler know that new vector size is non-zero.
    560 	(_M_realloc_append): New member function.
    561 
    562 2023-11-18  Jonathan Wakely  <jwakely (a] redhat.com>
    563 
    564 	PR libstdc++/112607
    565 	* include/std/format (basic_format_arg::_S_to_arg_type): Check
    566 	value_type for basic_string_view and basic_string
    567 	specializations.
    568 	* testsuite/std/format/arguments/112607.cc: New test.
    569 
    570 2023-11-18  Jonathan Wakely  <jwakely (a] redhat.com>
    571 
    572 	PR libstdc++/110801
    573 	* include/std/format (_Sink_iter::_M_reserve): New member
    574 	function.
    575 	(_Sink::_Reservation): New nested class.
    576 	(_Sink::_M_reserve, _Sink::_M_bump): New virtual functions.
    577 	(_Seq_sink::_M_reserve, _Seq_sink::_M_bump): New virtual
    578 	overrides.
    579 	(_Iter_sink<O, ContigIter>::_M_reserve): Likewise.
    580 	(__do_vformat_to): Use new functions to optimize "{}" case.
    581 
    582 2023-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
    583 
    584 	* config.h.in: Regenerate.
    585 
    586 2023-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
    587 
    588 	* include/Makefile.am: Add new header.
    589 	* include/Makefile.in: Regenerate.
    590 	* include/bits/version.def (saturation_arithmetic): Define.
    591 	* include/bits/version.h: Regenerate.
    592 	* include/std/numeric: Include new header.
    593 	* include/bits/sat_arith.h: New file.
    594 	* testsuite/26_numerics/saturation/add.cc: New test.
    595 	* testsuite/26_numerics/saturation/cast.cc: New test.
    596 	* testsuite/26_numerics/saturation/div.cc: New test.
    597 	* testsuite/26_numerics/saturation/mul.cc: New test.
    598 	* testsuite/26_numerics/saturation/sub.cc: New test.
    599 	* testsuite/26_numerics/saturation/version.cc: New test.
    600 
    601 2023-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
    602 
    603 	* include/std/utility (in_range): Rename _Up parameter to _Res.
    604 
    605 2023-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
    606 
    607 	* include/bits/out_ptr.h: Add Doxygen comments. Remove a
    608 	redundant preprocessor condition.
    609 	* testsuite/20_util/smartptr.adapt/version.cc: New test.
    610 
    611 2023-11-17  Jonathan Wakely  <jwakely (a] redhat.com>
    612 
    613 	* include/bits/chrono_io.h: Fix Doxygen markup.
    614 
    615 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
    616 
    617 	PR libstdc++/112564
    618 	* include/std/stacktrace (formatter::format): Format according
    619 	to format-spec.
    620 	* include/std/thread (formatter::format): Use _Align_right as
    621 	default.
    622 	* testsuite/19_diagnostics/stacktrace/output.cc: Check
    623 	fill-and-align handling. Change compile test to run.
    624 	* testsuite/30_threads/thread/id/output.cc: Check fill-and-align
    625 	handling.
    626 
    627 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
    628 
    629 	PR libstdc++/111667
    630 	* include/Makefile.am: Add new header.
    631 	* include/Makefile.in: Regenerate.
    632 	* include/bits/out_ptr.h: New file.
    633 	* include/bits/shared_ptr.h (__is_shared_ptr): Move definition
    634 	to here ...
    635 	* include/bits/shared_ptr_atomic.h (__is_shared_ptr): ... from
    636 	here.
    637 	* include/bits/shared_ptr_base.h (__shared_count): Declare
    638 	out_ptr_t as a friend.
    639 	(_Sp_counted_deleter, __shared_ptr): Likewise.
    640 	* include/bits/unique_ptr.h (unique_ptr, unique_ptr<T[], D>):
    641 	Declare out_ptr_t and inout_ptr_t as friends.
    642 	(__is_unique_ptr): Define new variable template.
    643 	* include/bits/version.def (out_ptr): Define.
    644 	* include/bits/version.h: Regenerate.
    645 	* include/std/memory: Include new header.
    646 	* testsuite/20_util/smartptr.adapt/inout_ptr/1.cc: New test.
    647 	* testsuite/20_util/smartptr.adapt/inout_ptr/2.cc: New test.
    648 	* testsuite/20_util/smartptr.adapt/inout_ptr/shared_ptr_neg.cc:
    649 	New test.
    650 	* testsuite/20_util/smartptr.adapt/inout_ptr/void_ptr.cc: New
    651 	test.
    652 	* testsuite/20_util/smartptr.adapt/out_ptr/1.cc: New test.
    653 	* testsuite/20_util/smartptr.adapt/out_ptr/2.cc: New test.
    654 	* testsuite/20_util/smartptr.adapt/out_ptr/shared_ptr_neg.cc:
    655 	New test.
    656 	* testsuite/20_util/smartptr.adapt/out_ptr/void_ptr.cc: New
    657 	test.
    658 
    659 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
    660 
    661 	* include/bits/algorithmfwd.h: Do not define standard feature
    662 	test macro here.
    663 	* include/bits/align.h: Likewise. Test internal macros instead
    664 	of standard macros.
    665 	* include/bits/alloc_traits.h: Likewise.
    666 	* include/bits/allocator.h: Likewise.
    667 	* include/bits/atomic_base.h: Likewise.
    668 	* include/bits/atomic_timed_wait.h: Likewise.
    669 	* include/bits/atomic_wait.h: Likewise.
    670 	* include/bits/basic_string.h: Likewise.
    671 	* include/bits/basic_string.tcc: Likewise.
    672 	* include/bits/char_traits.h: Likewise.
    673 	* include/bits/chrono.h: Likewise.
    674 	* include/bits/cow_string.h: Likewise.
    675 	* include/bits/forward_list.h: Likewise.
    676 	* include/bits/hashtable.h: Likewise.
    677 	* include/bits/ios_base.h: Likewise.
    678 	* include/bits/memory_resource.h: Likewise.
    679 	* include/bits/move.h: Likewise.
    680 	* include/bits/move_only_function.h: Likewise.
    681 	* include/bits/node_handle.h: Likewise.
    682 	* include/bits/ptr_traits.h: Likewise.
    683 	* include/bits/range_access.h: Likewise.
    684 	* include/bits/ranges_algo.h: Likewise.
    685 	* include/bits/ranges_cmp.h: Likewise.
    686 	* include/bits/ranges_util.h: Likewise.
    687 	* include/bits/semaphore_base.h: Likewise.
    688 	* include/bits/shared_ptr.h: Likewise.
    689 	* include/bits/shared_ptr_atomic.h: Likewise.
    690 	* include/bits/shared_ptr_base.h: Likewise.
    691 	* include/bits/stl_algo.h: Likewise.
    692 	* include/bits/stl_algobase.h: Likewise.
    693 	* include/bits/stl_function.h: Likewise.
    694 	* include/bits/stl_iterator.h: Likewise.
    695 	* include/bits/stl_list.h: Likewise.
    696 	* include/bits/stl_map.h: Likewise.
    697 	* include/bits/stl_pair.h: Likewise.
    698 	* include/bits/stl_queue.h: Likewise.
    699 	* include/bits/stl_stack.h: Likewise.
    700 	* include/bits/stl_tree.h: Likewise.
    701 	* include/bits/stl_uninitialized.h: Likewise.
    702 	* include/bits/stl_vector.h: Likewise.
    703 	* include/bits/unique_ptr.h: Likewise.
    704 	* include/bits/unordered_map.h: Likewise.
    705 	* include/bits/uses_allocator_args.h: Likewise.
    706 	* include/bits/utility.h: Likewise.
    707 	* include/bits/erase_if.h: Add comment.
    708 	* include/std/algorithm: Define standard feature test macros
    709 	here.
    710 	* include/std/atomic: Likewise.
    711 	* include/std/array: Likewise.
    712 	* include/std/chrono: Likewise.
    713 	* include/std/condition_variable: Likewise.
    714 	* include/std/deque: Likewise.
    715 	* include/std/format: Likewise.
    716 	* include/std/functional: Likewise.
    717 	* include/std/forward_list: Likewise.
    718 	* include/std/ios: Likewise.
    719 	* include/std/iterator: Likewise.
    720 	* include/std/list: Likewise.
    721 	* include/std/map: Likewise.
    722 	* include/std/memory: Likewise.
    723 	* include/std/numeric: Likewise.
    724 	* include/std/queue: Likewise.
    725 	* include/std/ranges: Likewise.
    726 	* include/std/regex: Likewise.
    727 	* include/std/set: Likewise.
    728 	* include/std/stack: Likewise.
    729 	* include/std/stop_token: Likewise.
    730 	* include/std/string: Likewise.
    731 	* include/std/string_view:
    732 	* include/std/tuple: Likewise.
    733 	* include/std/unordered_map:
    734 	* include/std/unordered_set:
    735 	* include/std/utility: Likewise.
    736 	* include/std/vector: Likewise.
    737 	* include/std/scoped_allocator: Query internal macros instead of
    738 	standard macros.
    739 
    740 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
    741 
    742 	* testsuite/18_support/byte/requirements.cc: Disable PCH.
    743 	* testsuite/18_support/destroying_delete.cc: Likewise.
    744 	* testsuite/18_support/source_location/1.cc: Likewise.
    745 	* testsuite/18_support/source_location/version.cc: Likewise.
    746 	* testsuite/18_support/type_info/constexpr.cc: Likewise.
    747 	* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
    748 	Likewise.
    749 	* testsuite/19_diagnostics/stacktrace/output.cc: Likewise.
    750 	* testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise.
    751 	* testsuite/19_diagnostics/stacktrace/version.cc: Likewise.
    752 	* testsuite/20_util/addressof/requirements/constexpr.cc:
    753 	Likewise.
    754 	* testsuite/20_util/allocator_traits/header-2.cc: Likewise.
    755 	* testsuite/20_util/allocator_traits/header.cc: Likewise.
    756 	* testsuite/20_util/as_const/1.cc: Likewise. Likewise.
    757 	* testsuite/20_util/bitset/cons/constexpr_c++23.cc: Likewise.
    758 	* testsuite/20_util/bitset/version.cc: Likewise.
    759 	* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc:
    760 	Likewise.
    761 	* testsuite/20_util/duration_cast/rounding.cc: Likewise.
    762 	* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
    763 	Likewise.
    764 	* testsuite/20_util/exchange/constexpr.cc: Likewise.
    765 	* testsuite/20_util/expected/synopsis.cc: Likewise.
    766 	* testsuite/20_util/expected/version.cc: Likewise.
    767 	* testsuite/20_util/function_objects/bind_front/1.cc: Likewise.
    768 	* testsuite/20_util/function_objects/bind_front/2.cc: Likewise.
    769 	* testsuite/20_util/function_objects/invoke/3.cc: Likewise.
    770 	* testsuite/20_util/function_objects/invoke/4.cc: Likewise.
    771 	* testsuite/20_util/function_objects/invoke/constexpr.cc:
    772 	Likewise.
    773 	* testsuite/20_util/function_objects/invoke/version.cc:
    774 	Likewise.
    775 	* testsuite/20_util/function_objects/searchers.cc: Likewise.
    776 	* testsuite/20_util/integer_comparisons/1.cc: Likewise.
    777 	* testsuite/20_util/integer_comparisons/2.cc: Likewise.
    778 	* testsuite/20_util/is_bounded_array/value.cc: Likewise.
    779 	* testsuite/20_util/is_layout_compatible/value.cc: Likewise.
    780 	* testsuite/20_util/is_layout_compatible/version.cc: Likewise.
    781 	* testsuite/20_util/is_nothrow_swappable/requirements/explicit_instantiation.cc:
    782 	Likewise.
    783 	* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
    784 	Likewise.
    785 	* testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
    786 	* testsuite/20_util/is_nothrow_swappable/value.h: Likewise.
    787 	* testsuite/20_util/is_nothrow_swappable_with/requirements/explicit_instantiation.cc:
    788 	Remove redundant checks already tested elsewhere.
    789 	* testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
    790 	Likewise.
    791 	* testsuite/20_util/is_nothrow_swappable_with/value.cc: Disable
    792 	PCH.
    793 	* testsuite/20_util/is_pointer_interconvertible/value.cc:
    794 	Likewise.
    795 	* testsuite/20_util/is_pointer_interconvertible/version.cc:
    796 	Likewise.
    797 	* testsuite/20_util/is_scoped_enum/value.cc: Likewise.
    798 	* testsuite/20_util/is_scoped_enum/version.cc: Likewise.
    799 	* testsuite/20_util/is_swappable/requirements/explicit_instantiation.cc:
    800 	Remove redundant checks already tested elsewhere.
    801 	* testsuite/20_util/is_swappable/requirements/typedefs.cc:
    802 	Remove redundant checks already tested elsewhere.
    803 	* testsuite/20_util/is_swappable/value.cc: Disable PCH.
    804 	* testsuite/20_util/is_swappable/value.h: Reorder headers.
    805 	* testsuite/20_util/is_swappable_with/requirements/explicit_instantiation.cc:
    806 	Remove redundant checks already tested elsewhere.
    807 	* testsuite/20_util/is_swappable_with/requirements/typedefs.cc:
    808 	Remove redundant checks already tested elsewhere.
    809 	* testsuite/20_util/is_swappable_with/value.cc: Disable PCH.
    810 	* testsuite/20_util/is_unbounded_array/value.cc: Likewise.
    811 	* testsuite/20_util/move_only_function/cons.cc: Likewise.
    812 	* testsuite/20_util/move_only_function/version.cc: Likewise.
    813 	* testsuite/20_util/optional/monadic/and_then.cc: Likewise.
    814 	* testsuite/20_util/optional/requirements.cc: Likewise.
    815 	* testsuite/20_util/optional/version.cc: Likewise.
    816 	* testsuite/20_util/owner_less/void.cc: Likewise.
    817 	* testsuite/20_util/reference_from_temporary/value.cc: Likewise.
    818 	* testsuite/20_util/reference_from_temporary/version.cc:
    819 	Likewise.
    820 	* testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc:
    821 	Likewise.
    822 	* testsuite/20_util/shared_ptr/creation/array.cc: Likewise.
    823 	* testsuite/20_util/shared_ptr/creation/overwrite.cc: Likewise.
    824 	* testsuite/20_util/shared_ptr/creation/version.cc: Likewise.
    825 	* testsuite/20_util/time_point_cast/rounding.cc: Likewise.
    826 	* testsuite/20_util/to_chars/constexpr.cc: Likewise.
    827 	* testsuite/20_util/to_chars/result.cc: Likewise.
    828 	* testsuite/20_util/to_chars/version.cc: Likewise.
    829 	* testsuite/20_util/to_underlying/1.cc: Likewise.
    830 	* testsuite/20_util/to_underlying/version.cc: Likewise.
    831 	* testsuite/20_util/tuple/apply/1.cc: Likewise.
    832 	* testsuite/20_util/tuple/cons/constexpr_allocator_arg_t.cc:
    833 	Likewise.
    834 	* testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
    835 	* testsuite/20_util/tuple/p2321r2.cc: Likewise.
    836 	* testsuite/20_util/tuple/tuple_element_t.cc: Likewise.
    837 	* testsuite/20_util/unique_ptr/cons/constexpr_c++20.cc:
    838 	Likewise.
    839 	* testsuite/20_util/unique_ptr/creation/for_overwrite.cc:
    840 	Likewise.
    841 	* testsuite/20_util/unreachable/1.cc: Likewise.
    842 	* testsuite/20_util/unreachable/version.cc: Likewise.
    843 	* testsuite/20_util/unwrap_reference/1.cc: Likewise.
    844 	* testsuite/20_util/unwrap_reference/3.cc: Likewise.
    845 	* testsuite/20_util/variant/constexpr.cc: Likewise.
    846 	* testsuite/20_util/variant/version.cc: Likewise.
    847 	* testsuite/20_util/variant/visit_inherited.cc: Likewise.
    848 	* testsuite/20_util/void_t/1.cc: Likewise.
    849 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
    850 	Likewise.
    851 	* testsuite/21_strings/basic_string/cons/char/constexpr.cc:
    852 	Likewise.
    853 	* testsuite/21_strings/basic_string/cons/wchar_t/constexpr.cc:
    854 	Likewise.
    855 	* testsuite/21_strings/basic_string/erasure.cc: Likewise.
    856 	* testsuite/21_strings/basic_string/numeric_conversions/char/to_string_float.cc:
    857 	Likewise.
    858 	* testsuite/21_strings/basic_string/numeric_conversions/version.cc:
    859 	Likewise.
    860 	* testsuite/21_strings/basic_string/version.cc: Likewise.
    861 	* testsuite/21_strings/basic_string_view/operations/contains/char.cc:
    862 	Likewise.
    863 	* testsuite/21_strings/basic_string_view/operations/contains/char/2.cc:
    864 	Likewise.
    865 	* testsuite/21_strings/basic_string_view/operations/copy/char/constexpr.cc:
    866 	Likewise.
    867 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
    868 	Likewise.
    869 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
    870 	Likewise.
    871 	* testsuite/21_strings/char_traits/requirements/version.cc:
    872 	Likewise.
    873 	* testsuite/23_containers/array/comparison_operators/constexpr.cc:
    874 	Likewise.
    875 	* testsuite/23_containers/array/creation/1.cc: Likewise.
    876 	* testsuite/23_containers/array/creation/2.cc: Likewise.
    877 	* testsuite/23_containers/array/element_access/constexpr_c++17.cc:
    878 	Likewise.
    879 	* testsuite/23_containers/array/requirements/constexpr_fill.cc:
    880 	Likewise.
    881 	* testsuite/23_containers/array/requirements/constexpr_iter.cc:
    882 	Likewise.
    883 	* testsuite/23_containers/deque/erasure.cc: Likewise.
    884 	* testsuite/23_containers/forward_list/erasure.cc: Likewise.
    885 	* testsuite/23_containers/list/erasure.cc: Likewise.
    886 	* testsuite/23_containers/map/erasure.cc: Likewise.
    887 	* testsuite/23_containers/queue/cons_from_iters.cc: Likewise.
    888 	* testsuite/23_containers/set/erasure.cc: Likewise.
    889 	* testsuite/23_containers/span/1.cc: Likewise.
    890 	* testsuite/23_containers/span/2.cc: Likewise.
    891 	* testsuite/23_containers/stack/cons_from_iters.cc: Likewise.
    892 	* testsuite/23_containers/unordered_map/erasure.cc: Likewise.
    893 	* testsuite/23_containers/unordered_map/operations/1.cc:
    894 	Likewise.
    895 	* testsuite/23_containers/unordered_set/erasure.cc: Likewise.
    896 	* testsuite/23_containers/unordered_set/operations/1.cc:
    897 	Likewise.
    898 	* testsuite/23_containers/vector/cons/constexpr.cc: Likewise.
    899 	* testsuite/23_containers/vector/erasure.cc: Likewise.
    900 	* testsuite/23_containers/vector/requirements/version.cc:
    901 	Likewise.
    902 	* testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise.
    903 	* testsuite/25_algorithms/clamp/constexpr.cc: Likewise.
    904 	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/1.cc:
    905 	Remove redundant checks already tested elsewhere.
    906 	* testsuite/25_algorithms/constexpr_macro.cc: Likewise.
    907 	* testsuite/25_algorithms/cpp_lib_constexpr.cc: Likewise.
    908 	* testsuite/25_algorithms/fold_left/1.cc: Likewise.
    909 	* testsuite/25_algorithms/pstl/feature_test-2.cc: Likewise.
    910 	* testsuite/25_algorithms/pstl/feature_test-3.cc: Likewise.
    911 	* testsuite/25_algorithms/pstl/feature_test-4.cc: Likewise.
    912 	* testsuite/25_algorithms/pstl/feature_test-5.cc: Likewise.
    913 	* testsuite/25_algorithms/pstl/feature_test.cc: Likewise.
    914 	* testsuite/26_numerics/bit/bit.byteswap/byteswap.cc: Likewise.
    915 	* testsuite/26_numerics/bit/bit.byteswap/version.cc: Likewise.
    916 	* testsuite/26_numerics/bit/bit.cast/bit_cast.cc: Likewise.
    917 	* testsuite/26_numerics/bit/bit.cast/version.cc: Likewise.
    918 	* testsuite/26_numerics/bit/header-2.cc: Likewise.
    919 	* testsuite/26_numerics/bit/header.cc: Likewise.
    920 	* testsuite/26_numerics/complex/1.cc: Likewise.
    921 	* testsuite/26_numerics/complex/2.cc: Likewise.
    922 	* testsuite/26_numerics/endian/2.cc: Likewise.
    923 	* testsuite/26_numerics/endian/3.cc: Likewise.
    924 	* testsuite/26_numerics/gcd/1.cc: Likewise.
    925 	* testsuite/26_numerics/lcm/1.cc: Likewise.
    926 	* testsuite/26_numerics/lerp/1.cc: Likewise.
    927 	* testsuite/26_numerics/lerp/version.cc: Likewise.
    928 	* testsuite/26_numerics/midpoint/integral.cc: Likewise.
    929 	* testsuite/26_numerics/midpoint/version.cc: Likewise.
    930 	* testsuite/26_numerics/numbers/1.cc: Likewise.
    931 	* testsuite/26_numerics/numbers/2.cc: Likewise.
    932 	* testsuite/27_io/basic_filebuf/native_handle/char/1.cc:
    933 	Likewise.
    934 	* testsuite/27_io/basic_filebuf/native_handle/version.cc:
    935 	Likewise.
    936 	* testsuite/27_io/basic_ofstream/open/char/noreplace.cc:
    937 	Likewise.
    938 	* testsuite/27_io/basic_ofstream/open/wchar_t/noreplace.cc:
    939 	Likewise.
    940 	* testsuite/27_io/basic_syncbuf/1.cc: Likewise.
    941 	* testsuite/27_io/basic_syncbuf/2.cc: Likewise.
    942 	* testsuite/27_io/basic_syncstream/1.cc: Likewise.
    943 	* testsuite/27_io/basic_syncstream/2.cc: Likewise.
    944 	* testsuite/27_io/spanstream/1.cc: Likewise.
    945 	* testsuite/27_io/spanstream/version.cc: Likewise.
    946 	* testsuite/29_atomics/atomic/cons/value_init.cc: Likewise.
    947 	* testsuite/29_atomics/atomic/lock_free_aliases.cc: Likewise.
    948 	* testsuite/29_atomics/atomic/wait_notify/1.cc: Likewise.
    949 	* testsuite/29_atomics/atomic/wait_notify/2.cc: Likewise.
    950 	* testsuite/29_atomics/headers/stdatomic.h/c_compat.cc:
    951 	Likewise.
    952 	* testsuite/29_atomics/headers/stdatomic.h/version.cc: Likewise.
    953 	* testsuite/30_threads/barrier/1.cc: Likewise.
    954 	* testsuite/30_threads/barrier/2.cc: Likewise.
    955 	* testsuite/30_threads/condition_variable_any/stop_token/1.cc:
    956 	Likewise.
    957 	* testsuite/30_threads/condition_variable_any/stop_token/2.cc:
    958 	Likewise.
    959 	* testsuite/30_threads/jthread/1.cc: Likewise.
    960 	* testsuite/30_threads/jthread/version.cc: Likewise.
    961 	* testsuite/30_threads/latch/1.cc: Likewise.
    962 	* testsuite/30_threads/latch/2.cc: Likewise.
    963 	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc:
    964 	Likewise.
    965 	* testsuite/30_threads/semaphore/1.cc: Likewise.
    966 	* testsuite/30_threads/semaphore/2.cc: Likewise.
    967 	* testsuite/30_threads/stop_token/1.cc: Likewise.
    968 	* testsuite/30_threads/stop_token/2.cc: Likewise.
    969 	* testsuite/experimental/feat-char8_t.cc: Likewise.
    970 	* testsuite/experimental/iterator/ostream_joiner.cc: Likewise.
    971 	* testsuite/experimental/numeric/gcd.cc: Likewise.
    972 	* testsuite/experimental/scopeguard/uniqueres.cc: Likewise.
    973 	* testsuite/std/concepts/1.cc: Likewise.
    974 	* testsuite/std/concepts/2.cc: Likewise.
    975 	* testsuite/std/ranges/adaptors/as_const/1.cc: Likewise.
    976 	* testsuite/std/ranges/adaptors/as_rvalue/1.cc: Likewise.
    977 	* testsuite/std/ranges/adaptors/chunk/1.cc: Likewise.
    978 	* testsuite/std/ranges/adaptors/chunk_by/1.cc: Likewise.
    979 	* testsuite/std/ranges/adaptors/enumerate/1.cc: Likewise.
    980 	* testsuite/std/ranges/adaptors/join_with/1.cc: Likewise.
    981 	* testsuite/std/ranges/adaptors/slide/1.cc: Likewise.
    982 	* testsuite/std/ranges/adaptors/stride/1.cc: Likewise.
    983 	* testsuite/std/ranges/cartesian_product/1.cc: Likewise.
    984 	* testsuite/std/ranges/headers/ranges/synopsis.cc: Likewise.
    985 	* testsuite/std/ranges/repeat/1.cc: Likewise.
    986 	* testsuite/std/ranges/version_c++23.cc: Likewise.
    987 	* testsuite/std/ranges/zip/1.cc: Likewise.
    988 	* testsuite/std/time/syn_c++20.cc: Likewise.
    989 	* testsuite/experimental/feat-cxx14.cc: Likewise. Include
    990 	<algorithm> and <iterator>.
    991 	* testsuite/23_containers/array/tuple_interface/get_neg.cc:
    992 	Adjust dg-error line numbers.
    993 
    994 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
    995 
    996 	* include/bits/version.def (stds): Use >= 202100 for C++23
    997 	condition.
    998 	* include/bits/version.h: Regenerate.
    999 	* include/std/thread: Use > C++20 instead of >= C++23 for
   1000 	__cplusplus condition.
   1001 
   1002 2023-11-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1003 
   1004 	* include/std/istream (__rvalue_stream_extraction_t): Test
   1005 	__cpp_concepts instead of __cpp_lib_concepts.
   1006 	* include/std/ostream (__derived_from_ios_base): Likewise.
   1007 	(__rvalue_stream_insertion_t): Likewise.
   1008 
   1009 2023-11-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1010 
   1011 	PR libstdc++/112491
   1012 	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index):
   1013 	Correctly handle unused capacity at the start of the first node.
   1014 	* testsuite/libstdc++-xmethods/deque.cc: Check index operator
   1015 	when elements have been removed from the front.
   1016 
   1017 2023-11-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1018 
   1019 	* include/std/stacktrace (basic_stacktrace::at): Fix class name
   1020 	in exception message.
   1021 	* testsuite/19_diagnostics/stacktrace/hash.cc: Do not fail if
   1022 	current() returns a non-empty stacktrace.
   1023 
   1024 2023-11-15  Alexandre Oliva  <oliva (a] gnu.org>
   1025 
   1026 	Revert:
   1027 	2023-11-15  Alexandre Oliva  <oliva (a] adacore.com>
   1028 
   1029 	* include/bits/stl_bvector.h (_GLIBCXX_ALWAYS_INLINE): Undef.
   1030 
   1031 2023-11-15  Alexandre Oliva  <oliva (a] adacore.com>
   1032 
   1033 	* include/bits/stl_bvector.h (_GLIBCXX_ALWAYS_INLINE): Undef.
   1034 
   1035 2023-11-14  Cassio Neri  <cassio.neri (a] gmail.com>
   1036 
   1037 	* include/std/chrono (operator-(const weekday&, const weekday&)):
   1038 	Optimize.
   1039 
   1040 2023-11-14  Cassio Neri  <cassio.neri (a] gmail.com>
   1041 
   1042 	* include/std/chrono (weekday::_S_from_days): Fix UB.
   1043 	* testsuite/std/time/weekday/1.cc: Add test for overflow.
   1044 
   1045 2023-11-14  Cassio Neri  <cassio.neri (a] gmail.com>
   1046 
   1047 	* include/std/chrono (year::is_leap): Clear code.
   1048 
   1049 2023-11-14  Cassio Neri  <cassio.neri (a] gmail.com>
   1050 
   1051 	* include/std/chrono (year_month_day_last::day): Remove &1.
   1052 
   1053 2023-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1054 
   1055 	* include/std/charconv (__from_chars_pow2_base): Convert base to
   1056 	unsigned for call to __countr_zero.
   1057 	(__from_chars_alnum): Likewise for call to __bit_width.
   1058 
   1059 2023-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1060 
   1061 	PR libstdc++/112348
   1062 	* include/std/stacktrace (hash<basic_stacktrace<Alloc>>): Fix
   1063 	type of hash functio nfor entries.
   1064 	* testsuite/19_diagnostics/stacktrace/hash.cc: New test.
   1065 
   1066 2023-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1067 
   1068 	PR libstdc++/112491
   1069 	* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.size): Fix
   1070 	calculation to use _M_start._M_cur.
   1071 	* testsuite/libstdc++-xmethods/deque.cc: Check failing cases.
   1072 
   1073 2023-11-13  Arsen Arsenovi  <arsen (a] aarsen.me>
   1074 
   1075 	* configure: Regenerate.
   1076 
   1077 2023-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1078 
   1079 	* testsuite/std/time/clock/file/io.cc: Double timeout using
   1080 	dg-timeout-factor.
   1081 	* testsuite/std/time/clock/gps/io.cc: Likewise.
   1082 	* testsuite/std/time/clock/local/io.cc: Likewise.
   1083 	* testsuite/std/time/clock/system/io.cc: Likewise.
   1084 	* testsuite/std/time/clock/tai/io.cc: Likewise.
   1085 	* testsuite/std/time/clock/utc/io.cc: Likewise.
   1086 
   1087 2023-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1088 
   1089 	PR libstdc++/112480
   1090 	* include/std/optional (_Optional_payload_base::_M_reset): Set
   1091 	_M_engaged to false unconditionally.
   1092 
   1093 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1094 
   1095 	PR libstdc++/112467
   1096 	* include/bits/stl_bvector.h (_M_assume_normalized): Do not use
   1097 	statement form of assume attribute for Clang.
   1098 
   1099 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1100 
   1101 	* include/std/string_view (operator==, operator<=>): Remove
   1102 	redundant overloads (LWG 3950).
   1103 
   1104 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1105 
   1106 	* testsuite/26_numerics/headers/complex.h/std_c++11.h: Moved to...
   1107 	* testsuite/26_numerics/headers/complex.h/std_c++11.cc: ...here.
   1108 	* testsuite/26_numerics/headers/complex.h/std_c++98.h: Moved to...
   1109 	* testsuite/26_numerics/headers/complex.h/std_c++98.cc: ...here.
   1110 	Check macro first and then #undef.
   1111 	* testsuite/26_numerics/headers/complex.h/std_gnu++11.h: Moved to...
   1112 	* testsuite/26_numerics/headers/complex.h/std_gnu++11.cc: ...here.
   1113 
   1114 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1115 
   1116 	PR libstdc++/112473
   1117 	* include/bits/utility.h (integer_sequence): Add static_assert.
   1118 	* testsuite/20_util/integer_sequence/112473.cc: New test.
   1119 
   1120 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1121 
   1122 	* testsuite/20_util/pair/dangling_ref.cc: Add hosted effective
   1123 	target for specifiers using c++17_down.
   1124 
   1125 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1126 
   1127 	* include/bits/shared_ptr_atomic.h (atomic_is_lock_free)
   1128 	(atomic_load_explicit, atomic_load, atomic_store_explicit)
   1129 	(atomic_store, atomic_exchange_explicit, atomic_exchange)
   1130 	(atomic_compare_exchange_strong, atomic_compare_exchange_weak)
   1131 	(atomic_compare_exchange_strong_explicit)
   1132 	(atomic_compare_exchange_weak_explicit): Add deprecated
   1133 	attribute for C++20 and later.
   1134 	* testsuite/20_util/shared_ptr/atomic/1.cc: Suppress deprecated
   1135 	warnings.
   1136 	* testsuite/20_util/shared_ptr/atomic/2.cc: Likewise.
   1137 	* testsuite/20_util/shared_ptr/atomic/3.cc: Likewise.
   1138 	* testsuite/29_atomics/atomic/lwg3220.cc: Likewise.
   1139 
   1140 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1141 
   1142 	* include/bits/std_mutex.h (lock_guard): Add [[nodiscard]]
   1143 	attribute to constructors.
   1144 	* include/bits/unique_lock.h (unique_lock): Likewise.
   1145 	* include/std/mutex (scoped_lock, scoped_lock<Mutex>): Likewise.
   1146 	* testsuite/30_threads/lock_guard/cons/nodiscard.cc: New test.
   1147 	* testsuite/30_threads/scoped_lock/cons/nodiscard.cc: New test.
   1148 	* testsuite/30_threads/unique_lock/cons/nodiscard.cc: New test.
   1149 
   1150 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1151 
   1152 	* include/std/span (span, as_bytes, as_writable_bytes): Add
   1153 	[[nodiscard]] attribute on all non-void functions.
   1154 	* testsuite/23_containers/span/back_assert_neg.cc: Suppress
   1155 	nodiscard warning.
   1156 	* testsuite/23_containers/span/back_neg.cc: Likewise.
   1157 	* testsuite/23_containers/span/first_2_assert_neg.cc: Likewise.
   1158 	* testsuite/23_containers/span/first_assert_neg.cc: Likewise.
   1159 	* testsuite/23_containers/span/first_neg.cc: Likewise.
   1160 	* testsuite/23_containers/span/front_assert_neg.cc: Likewise.
   1161 	* testsuite/23_containers/span/front_neg.cc: Likewise.
   1162 	* testsuite/23_containers/span/index_op_assert_neg.cc: Likewise.
   1163 	* testsuite/23_containers/span/index_op_neg.cc: Likewise.
   1164 	* testsuite/23_containers/span/last_2_assert_neg.cc: Likewise.
   1165 	* testsuite/23_containers/span/last_assert_neg.cc: Likewise.
   1166 	* testsuite/23_containers/span/last_neg.cc: Likewise.
   1167 	* testsuite/23_containers/span/subspan_2_assert_neg.cc:
   1168 	Likewise.
   1169 	* testsuite/23_containers/span/subspan_3_assert_neg.cc:
   1170 	Likewise.
   1171 	* testsuite/23_containers/span/subspan_4_assert_neg.cc:
   1172 	Likewise.
   1173 	* testsuite/23_containers/span/subspan_5_assert_neg.cc:
   1174 	Likewise.
   1175 	* testsuite/23_containers/span/subspan_6_assert_neg.cc:
   1176 	Likewise.
   1177 	* testsuite/23_containers/span/subspan_assert_neg.cc: Likewise.
   1178 	* testsuite/23_containers/span/subspan_neg.cc: Likewise.
   1179 	* testsuite/23_containers/span/nodiscard.cc: New test.
   1180 
   1181 2023-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1182 
   1183 	PR libstdc++/111638
   1184 	* config.h.in: Regenerate.
   1185 	* configure: Regenerate.
   1186 	* linkage.m4 (GLIBCXX_MAYBE_UNDERSCORED_FUNCS): Remove.
   1187 	(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1): Do not check for _foo.
   1188 	(GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1): Likewise.
   1189 	(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2): Likewise.
   1190 	(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3): Likewise.
   1191 	(GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2): Do not use
   1192 	GLIBCXX_MAYBE_UNDERSCORED_FUNCS.
   1193 
   1194 2023-11-11  Nathaniel Shead  <nathanieloshead (a] gmail.com>
   1195 
   1196 	PR libstdc++/79700
   1197 	* include/c_global/cmath (acosf, acosl, asinf, asinl, atanf)
   1198 	(atanl, atan2f, atan2l, ceilf, ceill, cosf, cosl, coshf, coshl)
   1199 	(expf, expl, fabsf, fabsl, floorf, floorl, fmodf, fmodl, frexpf)
   1200 	(frexpl, ldexpf, ldexpl, logf, logl, log10f, log10l, modff)
   1201 	(modfl, powf, powl, sinf, sinl, sinhf, sinhl, sqrtf, sqrtl, tanf)
   1202 	(tanl, tanhf, tanhl): Add using-declarations in namespace std.
   1203 	* testsuite/26_numerics/headers/cmath/equivalent_functions.cc:
   1204 	New test.
   1205 	* testsuite/26_numerics/headers/cmath/functions_std_c++17.cc:
   1206 	Add checks for existence of above names.
   1207 
   1208 2023-11-09  Arsen Arsenovi  <arsen (a] aarsen.me>
   1209 
   1210 	* testsuite/20_util/scoped_allocator/noexcept.cc: Mark as
   1211 	requiring hosted.
   1212 
   1213 2023-11-09  Arsen Arsenovi  <arsen (a] aarsen.me>
   1214 
   1215 	* include/bits/memoryfwd.h: Remove HOSTED check around allocator
   1216 	and its specializations.
   1217 
   1218 2023-11-09  Patrick Palka  <ppalka (a] redhat.com>
   1219 
   1220 	PR libstdc++/112453
   1221 	* include/std/ranges (__detail::__box<_Tp>::operator*): Define
   1222 	&& overloads as well.
   1223 	(__detail::__take_of_repeat_view): Forward __r when accessing
   1224 	its _M_value member.
   1225 	(__detail::__drop_of_repeat_view): Likewise.
   1226 	* testsuite/std/ranges/repeat/1.cc (test07): New test.
   1227 
   1228 2023-11-09  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1229 
   1230 	* include/bits/hashtable_policy.h (_RehashStateGuard): New.
   1231 	(_Insert_base<>::_M_insert_range(_IIt, _IIt, const _NodeGet&, false_type)):
   1232 	Adapt.
   1233 	* include/bits/hashtable.h (__rehash_guard_t): New.
   1234 	(__rehash_state): Remove.
   1235 	(_M_rehash): Remove.
   1236 	(_M_rehash_aux): Rename into _M_rehash.
   1237 	(_M_assign_elements, _M_insert_unique_node, _M_insert_multi_node): Adapt.
   1238 	(rehash): Adapt.
   1239 
   1240 2023-11-09  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1241 
   1242 	* include/bits/hashtable_policy.h
   1243 	(struct _NodePtrGuard<_HashtableAlloc, _NodePtr>): New.
   1244 	(_ReuseAllocNode::operator()(_Args&&...)): Use latter to guard allocated node
   1245 	pointer while constructing in place the value_type instance.
   1246 
   1247 2023-11-09  Alexandre Oliva  <oliva (a] adacore.com>
   1248 
   1249 	PR libstdc++/110807
   1250 	* include/bits/stl_bvector.h (_Bit_iterator_base): Add
   1251 	_M_assume_normalized member function.  Call it in _M_bump_up,
   1252 	_M_bump_down, _M_incr, operator==, operator<=>, operator<, and
   1253 	operator-.
   1254 	(_Bit_iterator): Also call it in operator*.
   1255 	(_Bit_const_iterator): Likewise.
   1256 
   1257 2023-11-07  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1258 
   1259 	* include/bits/hashtable_policy.h
   1260 	(_Hashtable_alloc<>::_M_allocate_node): Add missing call to node destructor
   1261 	on construct exception.
   1262 
   1263 2023-11-07  Richard Biener  <rguenther (a] suse.de>
   1264 
   1265 	PR libstdc++/112351
   1266 	* src/c++98/locale.cc (locale::facet::_S_initialize_once):
   1267 	Check whether _S_c_locale is already initialized.
   1268 	(locale::facet::_S_get_c_locale): Always perform non-threadsafe
   1269 	init when threadsafe init failed.
   1270 
   1271 2023-11-06  Ian Lance Taylor  <iant (a] golang.org>
   1272 
   1273 	PR libbacktrace/111315
   1274 	PR libbacktrace/112263
   1275 	* acinclude.m4: Set -D_GNU_SOURCE in BACKTRACE_CPPFLAGS and when
   1276 	grepping link.h for dl_iterate_phdr.
   1277 	* configure: Regenerate.
   1278 
   1279 2023-11-06  Jonathan Wakely  <jwakely (a] redhat.com>
   1280 
   1281 	* include/std/expected (expected::and_then, expected::or_else):
   1282 	Add string literals to static assertions.
   1283 	* include/std/optional (optional::and_then, optional::or_else):
   1284 	Likewise.
   1285 
   1286 2023-11-04  Feng Jisen  <J1senn (a] outlook.com>
   1287 
   1288 	* include/bits/utility.h (_Nth_type): Remove redundant partial
   1289 	specialization.
   1290 
   1291 2023-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1292 
   1293 	PR libstdc++/110133
   1294 	* include/std/system_error (system_error::system_error): Group
   1295 	arguments so that concatenation can reuse rvalue's capacity.
   1296 	* src/c++11/system_error.cc (strerror_string): New function.
   1297 	[_GLIBCXX_HAVE_STRERROR_R] (use_strerror_result): New functions.
   1298 	(generic_error_category::message): Use strerror_string.
   1299 	(system_error_category::message): Likewise.
   1300 
   1301 2023-11-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1302 
   1303 	* doc/xml/manual/appendix_contributing.xml: Replace example that
   1304 	uses a BADNAME.
   1305 	* doc/html/manual/source_code_style.html: Regenerate.
   1306 
   1307 2023-11-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1308 
   1309 	PR libstdc++/112314
   1310 	* include/std/string_view (string_view::remove_suffix): Add
   1311 	debug assertion.
   1312 	* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/debug.cc:
   1313 	New test.
   1314 	* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/debug.cc:
   1315 	New test.
   1316 
   1317 2023-11-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1318 
   1319 	* acinclude.m4 (GLIBCXX_ENABLE_C99): Fix snprintf checks.
   1320 	* configure: Regenerate.
   1321 
   1322 2023-10-30  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1323 
   1324 	* config/abi/pre/gnu-versioned-namespace.ver: Add comment on recently
   1325 	added emul TLS symbols.
   1326 
   1327 2023-10-30  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1328 
   1329 	* src/experimental/contract.cc
   1330 	[_GLIBCXX_INLINE_VERSION](handle_contract_violation): Rework comment.
   1331 	Remove weak attribute.
   1332 
   1333 2023-10-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1334 
   1335 	* config/abi/pre/gnu-versioned-namespace.ver: Add missing emul TLS
   1336 	symbols.
   1337 
   1338 2023-10-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1339 
   1340 	* src/experimental/contract.cc
   1341 	[_GLIBCXX_INLINE_VERSION](handle_contract_violation): Provide symbol
   1342 	without version namespace decoration for gcc.
   1343 
   1344 2023-10-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1345 
   1346 	PR libstdc++/112089
   1347 	* include/std/shared_mutex (shared_lock::unlock): Change errc
   1348 	constant to operation_not_permitted.
   1349 	* testsuite/30_threads/shared_lock/locking/112089.cc: New test.
   1350 
   1351 2023-10-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1352 
   1353 	* testsuite/20_util/duration/io.cc: Double timeout using
   1354 	dg-timeout-factor.
   1355 	* testsuite/std/time/day/io.cc: Likewise.
   1356 	* testsuite/std/time/format.cc: Likewise.
   1357 	* testsuite/std/time/hh_mm_ss/io.cc: Likewise.
   1358 	* testsuite/std/time/month/io.cc: Likewise.
   1359 	* testsuite/std/time/month_day/io.cc: Likewise.
   1360 	* testsuite/std/time/month_day_last/io.cc: Likewise.
   1361 	* testsuite/std/time/month_weekday/io.cc: Likewise.
   1362 	* testsuite/std/time/month_weekday_last/io.cc: Likewise.
   1363 	* testsuite/std/time/weekday/io.cc: Likewise.
   1364 	* testsuite/std/time/weekday_indexed/io.cc: Likewise.
   1365 	* testsuite/std/time/weekday_last/io.cc: Likewise.
   1366 	* testsuite/std/time/year/io.cc: Likewise.
   1367 	* testsuite/std/time/year_month/io.cc: Likewise.
   1368 	* testsuite/std/time/year_month_day/io.cc: Likewise.
   1369 	* testsuite/std/time/year_month_day_last/io.cc: Likewise.
   1370 	* testsuite/std/time/year_month_weekday/io.cc: Likewise.
   1371 	* testsuite/std/time/year_month_weekday_last/io.cc: Likewise.
   1372 	* testsuite/std/time/zoned_time/io.cc: Likewise.
   1373 
   1374 2023-10-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1375 
   1376 	PR libstdc++/111936
   1377 	* src/libbacktrace/Makefile.am: Add -prefer-pic to libtool
   1378 	compile commands.
   1379 	* src/libbacktrace/Makefile.in: Regenerate.
   1380 
   1381 2023-10-24  Paul M. Bendixen  <paulbendixen (a] gmail.com>
   1382 
   1383 	* include/Makefile.am: Move cstdarg, cstdalign and cstdbool to
   1384 	freestanding.
   1385 	* include/Makefile.in: Regenerate.
   1386 
   1387 2023-10-22  Iain Sandoe  <iain (a] sandoe.co.uk>
   1388 
   1389 	* configure: Regenerate.
   1390 	* configure.ac: Handle Darwin rpaths.
   1391 	* src/Makefile.am: Handle Darwin rpaths.
   1392 	* src/Makefile.in: Regenerate.
   1393 
   1394 2023-10-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1395 
   1396 	* include/bits/basic_string.h (_M_init_local_buf()): New
   1397 	function.
   1398 	(_M_use_local_data()): Use _M_init_local_buf.
   1399 	(basic_string(), basic_string(const Alloc&))
   1400 	(basic_string(basic_string&&))
   1401 	(basic_string(basic_string&&, const Alloc&)): Use
   1402 	_M_init_local_buf instead of _M_use_local_data().
   1403 	* include/bits/basic_string.tcc (swap(basic_string&))
   1404 	(_M_construct(InIter, InIter, input_iterator_tag))
   1405 	(_M_construct(InIter, InIter, forward_iterator_tag))
   1406 	(_M_construct(size_type, CharT), reserve()): Likewise.
   1407 
   1408 2023-10-21  Benjamin Brock  <brock (a] cs.berkeley.edu>
   1409 
   1410 	* include/std/ranges (zip_view, adjacent_view): Implement
   1411 	workaround for LLVM-61763.
   1412 
   1413 2023-10-21  Dimitrij Mijoski  <dmjpp (a] hotmail.com>
   1414 
   1415 	* testsuite/22_locale/codecvt/codecvt_unicode.h: Test length()
   1416 
   1417 2023-10-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1418 
   1419 	* include/bits/fs_dir.h (operator==(default_sentinel_t)): Fix
   1420 	indentation.
   1421 
   1422 2023-10-20  Marek Polacek  <polacek (a] redhat.com>
   1423 
   1424 	PR testsuite/111883
   1425 	* include/std/charconv (from_chars): Add explicit casts.
   1426 
   1427 2023-10-19  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1428 
   1429 	* include/bits/hashtable_policy.h
   1430 	(_Hash_code_base::_M_hash_code(const _Hash&, const _Hash_node_value<>&)): Remove.
   1431 	(_Hash_code_base::_M_hash_code<_H2>(const _H2&, const _Hash_node_value<>&)): Remove.
   1432 	* include/bits/hashtable.h
   1433 	(_M_src_hash_code<_H2>(const _H2&, const key_type&, const __node_value_type&)): New.
   1434 	(_M_merge_unique<>, _M_merge_multi<>): Use latter.
   1435 	* testsuite/23_containers/unordered_map/modifiers/merge.cc
   1436 	(test04, test05, test06): New test cases.
   1437 
   1438 2023-10-13  Jakub Jelinek  <jakub (a] redhat.com>
   1439 
   1440 	* testsuite/tr1/8_c_compatibility/cstdio/functions.cc (test01):
   1441 	Initialize stream to va_arg(ap, FILE*) rather than 0.
   1442 	* testsuite/tr1/8_c_compatibility/cwchar/functions.cc (test01):
   1443 	Likewise.
   1444 
   1445 2023-10-13  Hans-Peter Nilsson  <hp (a] axis.com>
   1446 
   1447 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc,
   1448 	testsuite/29_atomics/atomic_flag/clear/1.cc,
   1449 	testsuite/29_atomics/atomic_flag/cons/value_init.cc,
   1450 	testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc,
   1451 	testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc,
   1452 	testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc,
   1453 	testsuite/29_atomics/atomic_ref/generic.cc,
   1454 	testsuite/29_atomics/atomic_ref/integral.cc,
   1455 	testsuite/29_atomics/atomic_ref/pointer.cc: Replace
   1456 	dg-require-thread-fence with dg-require-atomic-cmpxchg-word.
   1457 
   1458 2023-10-13  Hans-Peter Nilsson  <hp (a] axis.com>
   1459 
   1460 	* testsuite/lib/dg-options.exp (dg-require-atomic-cmpxchg-word):
   1461 	New proc.
   1462 	* testsuite/lib/libstdc++.exp (check_v3_target_atomic_cmpxchg_word):
   1463 	Ditto.
   1464 
   1465 2023-10-05  Franois Dumont  <fdumont (a] gcc.gnu.org>
   1466 
   1467 	* config/abi/pre/gnu-versioned-namespace.ver: Add missing symbols
   1468 	for _Float{16,32,64,128,32x,64x,128x}.
   1469 
   1470 2023-10-04  Tom Tromey  <tromey (a] adacore.com>
   1471 
   1472 	* python/libstdcxx/v6/printers.py
   1473 	(StdExpAnyPrinter.__init__): Qualify call to
   1474 	_string_types.
   1475 
   1476 2023-10-04  Tom Tromey  <tromey (a] adacore.com>
   1477 
   1478 	* python/libstdcxx/v6/printers.py: Assume that
   1479 	_versioned_namespace is non-None.
   1480 	* python/libstdcxx/v6/xmethods.py (is_specialization_of):
   1481 	Assume that _versioned_namespace is non-None.
   1482 
   1483 2023-10-04  Tom Tromey  <tromey (a] adacore.com>
   1484 
   1485 	* python/libstdcxx/v6/xmethods.py (_versioned_namespace):
   1486 	Define.
   1487 
   1488 2023-09-29  Dimitrij Mijoski  <dmjpp (a] hotmail.com>
   1489 
   1490 	PR libstdc++/108976
   1491 	* src/c++11/codecvt.cc (read_utf8_code_point): Fix handing of
   1492 	surrogates in UTF-8.
   1493 	(ucs4_out): Fix handling of surrogates in UCS-4 -> UTF-8.
   1494 	(ucs4_in): Fix handling of range with odd number of bytes.
   1495 	(ucs4_out): Fix handling of surrogates in UCS-4 -> UTF-16.
   1496 	(ucs2_out): Fix handling of surrogates in UCS-2 -> UTF-16.
   1497 	(ucs2_in): Fix handling of range with odd number of bytes.
   1498 	(__codecvt_utf16_base<char16_t>::do_in): Likewise.
   1499 	(__codecvt_utf16_base<char32_t>::do_in): Likewise.
   1500 	(__codecvt_utf16_base<wchar_t>::do_in): Likewise.
   1501 	* testsuite/22_locale/codecvt/codecvt_unicode.cc: Renames, add
   1502 	tests for codecvt_utf16<char16_t> and codecvt_utf16<char32_t>.
   1503 	* testsuite/22_locale/codecvt/codecvt_unicode.h: Refactor UTF-8
   1504 	testing functions for char8_t, add more test cases for errors,
   1505 	add testing functions for codecvt_utf16.
   1506 	* testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc:
   1507 	Renames, add tests for codecvt_utf16<whchar_t>.
   1508 	* testsuite/22_locale/codecvt/codecvt_utf16/79980.cc (test06):
   1509 	Fix test.
   1510 	* testsuite/22_locale/codecvt/codecvt_unicode_char8_t.cc: New
   1511 	test.
   1512 
   1513 2023-09-29  Nathaniel Shead  <nathanieloshead (a] gmail.com>
   1514 
   1515 	* include/bits/basic_string.h: (basic_string(basic_string&&)):
   1516 	Activate _M_local_buf when needed.
   1517 	(basic_string(basic_string&&, const _Alloc&)): Likewise.
   1518 	* include/bits/basic_string.tcc: (basic_string::swap): Likewise.
   1519 	* include/std/variant: (__detail::__variant::__construct_n): New.
   1520 	(__detail::__variant::__emplace): Use __construct_n.
   1521 
   1522 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1523 
   1524 	* python/libstdcxx/v6/printers.py (Printer.add_version)
   1525 	(add_one_template_type_printer)
   1526 	(FilteringTypePrinter.add_one_type_printer): Use Python
   1527 	"not in" operator.
   1528 
   1529 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1530 
   1531 	* python/libstdcxx/v6/printers.py (std_ratio_t_tuple):
   1532 	Remove.
   1533 
   1534 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1535 
   1536 	* python/libstdcxx/v6/printers.py
   1537 	(StdExpOptionalPrinter.__init__, lookup_node_type):
   1538 	Remove unused variables.
   1539 
   1540 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1541 
   1542 	* python/libstdcxx/v6/printers.py: Don't import 'os'.
   1543 	* python/libstdcxx/v6/__init__.py: Don't import 'gdb'.
   1544 
   1545 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1546 
   1547 	* python/libstdcxx/v6/printers.py: Use gdb.ValuePrinter
   1548 	everywhere.  Rename members to start with "_".
   1549 
   1550 2023-09-28  Tom Tromey  <tromey (a] adacore.com>
   1551 
   1552 	* testsuite/lib/gdb-test.exp (gdb-test): Enable Python
   1553 	stack traces from gdb.
   1554 
   1555 2023-09-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1556 
   1557 	* python/libstdcxx/v6/xmethods.py (is_specialization_of): Define
   1558 	new function.
   1559 	(ArrayMethodsMatcher, DequeMethodsMatcher)
   1560 	(ForwardListMethodsMatcher, ListMethodsMatcher)
   1561 	(VectorMethodsMatcher, AssociativeContainerMethodsMatcher)
   1562 	(UniquePtrGetWorker, UniquePtrMethodsMatcher)
   1563 	(SharedPtrSubscriptWorker, SharedPtrMethodsMatcher): Use
   1564 	is_specialization_of instead of re.match.
   1565 
   1566 2023-09-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1567 
   1568 	* python/libstdcxx/v6/printers.py: Break long lines. Use raw
   1569 	strings for regular expressions. Add whitespace around
   1570 	operators.
   1571 	(is_member_of_namespace): Use isinstance to check type.
   1572 	(is_specialization_of): Likewise. Adjust template_name
   1573 	for versioned namespace instead of duplicating the re.match
   1574 	call.
   1575 	(StdExpAnyPrinter._string_types): New static method.
   1576 	(StdExpAnyPrinter.to_string): Use _string_types.
   1577 
   1578 2023-09-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1579 
   1580 	* python/libstdcxx/v6/printers.py: Format docstrings according
   1581 	to PEP 257.
   1582 	* python/libstdcxx/v6/xmethods.py: Likewise.
   1583 
   1584 2023-09-28  Tim Song  <t.canens.cpp (a] gmail.com>
   1585 
   1586 	PR libstdc++/111050
   1587 	* include/bits/hashtable_policy.h
   1588 	(_Hash_node_value_base<>::_M_valptr(), _Hash_node_value_base<>::_M_v())
   1589 	Add [[__gnu__::__always_inline__]].
   1590 
   1591 2023-09-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1592 
   1593 	* python/libstdcxx/v6/printers.py (StdChronoTimeZoneRulePrinter):
   1594 	Fix incorrect number of replacement fields.
   1595 
   1596 2023-09-26  Hans-Peter Nilsson  <hp (a] axis.com>
   1597 
   1598 	* testsuite/29_atomics/atomic_flag/cons/value_init.cc: Add
   1599 	dg-require-thread-fence.
   1600 
   1601 2023-09-25  Patrick Palka  <ppalka (a] redhat.com>
   1602 
   1603 	* include/std/charconv (__detail::__integer_to_chars_result_type):
   1604 	Remove.
   1605 	(__detail::__to_chars_16): Use to_chars_result as return type.
   1606 	(__detail::__to_chars_10): Likewise.
   1607 	(__detail::__to_chars_8): Likewise.
   1608 	(__detail::__to_chars_2): Likewise.
   1609 	(__detail::__to_chars_i): Likewise.
   1610 	(__detail::__integer_from_chars_result_type): Inline the
   1611 	constraint into ...
   1612 	(from_chars): ... here.  Use __is_standard_integer in the
   1613 	constraint.  Encode constraint as a defaulted non-type template
   1614 	parameter instead of within the return type.
   1615 
   1616 2023-09-25  John David Anglin  <danglin (a] gcc.gnu.org>
   1617 
   1618 	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
   1619 
   1620 2023-09-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1621 
   1622 	PR libstdc++/111511
   1623 	PR c++/111512
   1624 	* include/std/array (to_array): Cast memcpy arguments to void*.
   1625 	* testsuite/23_containers/array/creation/111512.cc: New test.
   1626 
   1627 2023-09-25  Jonathan Wakely  <jwakely (a] redhat.com>
   1628 
   1629 	* include/bits/move.h (forward_list): Define for C++23.
   1630 	* include/bits/version.def (forward_like): Define.
   1631 	* include/bits/version.h: Regenerate.
   1632 	* include/std/utility (__glibcxx_want_forward_like): Define.
   1633 	* testsuite/20_util/forward_like/1.cc: New test.
   1634 	* testsuite/20_util/forward_like/2_neg.cc: New test.
   1635 	* testsuite/20_util/forward_like/version.cc: New test.
   1636 
   1637 2023-09-19  Marek Polacek  <polacek (a] redhat.com>
   1638 
   1639 	* testsuite/20_util/allocator/105975.cc: Add dg-error.
   1640 
   1641 2023-09-18  Patrick Palka  <ppalka (a] redhat.com>
   1642 
   1643 	PR c++/63198
   1644 	PR c++/18474
   1645 	* testsuite/26_numerics/random/discard_block_engine/cons/seed_seq2.cc:
   1646 	Make data member seed_seq::called mutable.
   1647 	* testsuite/26_numerics/random/independent_bits_engine/cons/seed_seq2.cc:
   1648 	Likewise.
   1649 	* testsuite/26_numerics/random/linear_congruential_engine/cons/seed_seq2.cc:
   1650 	Likewise.
   1651 	* testsuite/26_numerics/random/mersenne_twister_engine/cons/seed_seq2.cc:
   1652 	Likewise.
   1653 	* testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq2.cc:
   1654 	Likewise.
   1655 	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/seed_seq2.cc:
   1656 	Likewise.
   1657 	* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/seed_seq2.cc:
   1658 	Likewise.
   1659 
   1660 2023-09-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1661 
   1662 	* doc/xml/manual/status_cxx2020.xml: Tweak P1466R3 status.
   1663 	* doc/html/manual/status.html: Regenerate.
   1664 
   1665 2023-09-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1666 
   1667 	* doc/xml/manual/configure.xml: Use conventional option name.
   1668 	* doc/xml/manual/status_cxx2020.xml: Update.
   1669 	* doc/xml/manual/status_cxx2023.xml: Update.
   1670 	* doc/html/*: Regenerate.
   1671 
   1672 2023-09-18  Jonathan Wakely  <jwakely (a] redhat.com>
   1673 
   1674 	* doc/xml/manual/intro.xml: Clarify that building libstdc++
   1675 	separately from GCC is not supported.
   1676 	* doc/xml/manual/prerequisites.xml: Note msgfmt prerequisite for
   1677 	testing.
   1678 	* doc/html/manual/setup.html: Regenerate.
   1679 
   1680 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1681 
   1682 	* testsuite/29_atomics/atomic_ref/wait_notify.cc: Do not
   1683 	restrict to pthreads targets.
   1684 	* testsuite/30_threads/jthread/3.cc: Likewise.
   1685 	* testsuite/30_threads/semaphore/100806.cc: Likewise.
   1686 	* testsuite/30_threads/semaphore/try_acquire.cc: Likewise.
   1687 	* testsuite/30_threads/semaphore/try_acquire_for.cc: Likewise.
   1688 	* testsuite/30_threads/semaphore/try_acquire_posix.cc: Likewise.
   1689 
   1690 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1691 
   1692 	* testsuite/18_support/coroutines/95917.cc: Remove dg-options
   1693 	-std=gnu++2a.
   1694 	* testsuite/18_support/coroutines/hash.cc: Likewise.
   1695 	* testsuite/18_support/coroutines/lwg3460.cc: Likewise.
   1696 	* testsuite/18_support/destroying_delete.cc: Likewise.
   1697 	* testsuite/18_support/source_location/1.cc: Likewise.
   1698 	* testsuite/18_support/source_location/consteval.cc: Likewise.
   1699 	* testsuite/18_support/source_location/version.cc: Likewise.
   1700 	* testsuite/19_diagnostics/error_category/operators/three_way.cc:
   1701 	Likewise.
   1702 	* testsuite/19_diagnostics/error_code/operators/three_way.cc:
   1703 	Likewise.
   1704 	* testsuite/19_diagnostics/error_condition/operators/three_way.cc:
   1705 	Likewise.
   1706 	* testsuite/19_diagnostics/stacktrace/output.cc: Likewise.
   1707 	* testsuite/26_numerics/adjacent_difference/lwg2055.cc:
   1708 	Likewise.
   1709 	* testsuite/26_numerics/bit/bit.count/countl_zero.cc: Likewise.
   1710 	* testsuite/26_numerics/bit/bit.count/countr_one.cc: Likewise.
   1711 	* testsuite/26_numerics/bit/bit.count/countr_zero.cc: Likewise.
   1712 	* testsuite/26_numerics/bit/bit.count/popcount.cc: Likewise.
   1713 	* testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc: Likewise.
   1714 	* testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc:
   1715 	Likewise.
   1716 	* testsuite/28_regex/iterators/regex_iterator/lwg3719.cc:
   1717 	Likewise.
   1718 	* testsuite/28_regex/iterators/regex_token_iterator/lwg3719.cc:
   1719 	Likewise.
   1720 	* testsuite/28_regex/sub_match/compare_c++20.cc: Likewise.
   1721 	* testsuite/experimental/filesystem/iterators/106201.cc:
   1722 	Likewise.
   1723 	* testsuite/experimental/scopeguard/exit.cc: Likewise.
   1724 	* testsuite/experimental/scopeguard/uniqueres.cc: Likewise.
   1725 
   1726 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1727 
   1728 	* testsuite/30_threads/barrier/1.cc: Remove dg-options
   1729 	-std=gnu++20.
   1730 	* testsuite/30_threads/barrier/2.cc: Likewise.
   1731 	* testsuite/30_threads/barrier/arrive.cc: Likewise.
   1732 	* testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
   1733 	* testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
   1734 	* testsuite/30_threads/barrier/completion.cc: Likewise.
   1735 	* testsuite/30_threads/condition_variable/members/clock_neg.cc:
   1736 	Likewise.
   1737 	* testsuite/30_threads/condition_variable_any/members/clock_neg.cc:
   1738 	Likewise.
   1739 	* testsuite/30_threads/condition_variable_any/stop_token/1.cc:
   1740 	Likewise.
   1741 	* testsuite/30_threads/condition_variable_any/stop_token/2.cc:
   1742 	Likewise.
   1743 	* testsuite/30_threads/future/members/clock_neg.cc: Likewise.
   1744 	* testsuite/30_threads/headers/stop_token/synopsis.cc: Likewise.
   1745 	* testsuite/30_threads/headers/thread/types_std_c++20.cc:
   1746 	Likewise.
   1747 	* testsuite/30_threads/jthread/1.cc: Likewise.
   1748 	* testsuite/30_threads/jthread/100612.cc: Likewise.
   1749 	* testsuite/30_threads/jthread/95989.cc: Likewise.
   1750 	* testsuite/30_threads/jthread/jthread.cc: Likewise.
   1751 	* testsuite/30_threads/jthread/version.cc: Likewise.
   1752 	* testsuite/30_threads/latch/1.cc: Likewise.
   1753 	* testsuite/30_threads/latch/2.cc: Likewise.
   1754 	* testsuite/30_threads/latch/3.cc: Likewise.
   1755 	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/clock_neg.cc:
   1756 	Likewise.
   1757 	* testsuite/30_threads/semaphore/1.cc: Likewise.
   1758 	* testsuite/30_threads/semaphore/2.cc: Likewise.
   1759 	* testsuite/30_threads/semaphore/least_max_value_neg.cc:
   1760 	Likewise.
   1761 	* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
   1762 	* testsuite/30_threads/shared_future/members/clock_neg.cc:
   1763 	Likewise.
   1764 	* testsuite/30_threads/shared_lock/locking/clock_neg.cc:
   1765 	Likewise.
   1766 	* testsuite/30_threads/shared_timed_mutex/try_lock_until/clock_neg.cc:
   1767 	Likewise.
   1768 	* testsuite/30_threads/stop_token/1.cc: Likewise.
   1769 	* testsuite/30_threads/stop_token/2.cc: Likewise.
   1770 	* testsuite/30_threads/stop_token/stop_callback.cc: Likewise.
   1771 	* testsuite/30_threads/stop_token/stop_callback/deadlock.cc:
   1772 	Likewise.
   1773 	* testsuite/30_threads/stop_token/stop_callback/destructible_neg.cc:
   1774 	Likewise.
   1775 	* testsuite/30_threads/stop_token/stop_callback/invocable_neg.cc:
   1776 	Likewise.
   1777 	* testsuite/30_threads/stop_token/stop_callback/invoke.cc:
   1778 	Likewise.
   1779 	* testsuite/30_threads/stop_token/stop_source.cc: Likewise.
   1780 	* testsuite/30_threads/stop_token/stop_source/assign.cc:
   1781 	Likewise.
   1782 	* testsuite/30_threads/stop_token/stop_token.cc: Likewise.
   1783 	* testsuite/30_threads/stop_token/stop_token/stop_possible.cc:
   1784 	Likewise.
   1785 	* testsuite/30_threads/thread/id/operators_c++20.cc: Likewise.
   1786 	* testsuite/30_threads/timed_mutex/try_lock_until/clock_neg.cc:
   1787 	Likewise.
   1788 	* testsuite/30_threads/unique_lock/locking/clock_neg.cc:
   1789 	Likewise.
   1790 
   1791 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1792 
   1793 	* testsuite/27_io/basic_istream/extractors_character/char/lwg2499.cc:
   1794 	Remove dg-options -std=gnu++2a.
   1795 	* testsuite/27_io/basic_istream/extractors_character/char/lwg2499_neg.cc:
   1796 	Likewise.
   1797 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499.cc:
   1798 	Likewise.
   1799 	* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499_neg.cc:
   1800 	Likewise.
   1801 	* testsuite/27_io/basic_istringstream/cons/char/1.cc: Likewise.
   1802 	* testsuite/27_io/basic_istringstream/cons/wchar_t/1.cc:
   1803 	Likewise.
   1804 	* testsuite/27_io/basic_istringstream/str/char/2.cc: Likewise.
   1805 	* testsuite/27_io/basic_istringstream/str/wchar_t/2.cc:
   1806 	Likewise.
   1807 	* testsuite/27_io/basic_istringstream/view/char/1.cc: Likewise.
   1808 	* testsuite/27_io/basic_istringstream/view/wchar_t/1.cc:
   1809 	Likewise.
   1810 	* testsuite/27_io/basic_ostream/emit/1.cc: Likewise.
   1811 	* testsuite/27_io/basic_ostream/inserters_character/char/deleted.cc:
   1812 	Likewise.
   1813 	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/deleted.cc:
   1814 	Likewise.
   1815 	* testsuite/27_io/basic_ostringstream/cons/char/1.cc: Likewise.
   1816 	* testsuite/27_io/basic_ostringstream/cons/wchar_t/1.cc:
   1817 	Likewise.
   1818 	* testsuite/27_io/basic_ostringstream/str/char/3.cc: Likewise.
   1819 	* testsuite/27_io/basic_ostringstream/str/wchar_t/3.cc:
   1820 	Likewise.
   1821 	* testsuite/27_io/basic_ostringstream/view/char/1.cc: Likewise.
   1822 	* testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc:
   1823 	Likewise.
   1824 	* testsuite/27_io/basic_stringbuf/cons/char/2.cc: Likewise.
   1825 	* testsuite/27_io/basic_stringbuf/cons/wchar_t/2.cc: Likewise.
   1826 	* testsuite/27_io/basic_stringbuf/str/char/4.cc: Likewise.
   1827 	* testsuite/27_io/basic_stringbuf/str/wchar_t/4.cc: Likewise.
   1828 	* testsuite/27_io/basic_stringbuf/view/char/1.cc: Likewise.
   1829 	* testsuite/27_io/basic_stringbuf/view/wchar_t/1.cc: Likewise.
   1830 	* testsuite/27_io/basic_stringstream/cons/char/1.cc: Likewise.
   1831 	* testsuite/27_io/basic_stringstream/cons/char/97719.cc:
   1832 	Likewise.
   1833 	* testsuite/27_io/basic_stringstream/cons/wchar_t/1.cc:
   1834 	Likewise.
   1835 	* testsuite/27_io/basic_stringstream/str/char/5.cc: Likewise.
   1836 	* testsuite/27_io/basic_stringstream/str/wchar_t/5.cc.cc:
   1837 	Likewise.
   1838 	* testsuite/27_io/basic_stringstream/view/char/1.cc: Likewise.
   1839 	* testsuite/27_io/basic_stringstream/view/wchar_t/1.cc:
   1840 	Likewise.
   1841 	* testsuite/27_io/basic_syncbuf/1.cc: Likewise.
   1842 	* testsuite/27_io/basic_syncbuf/2.cc: Likewise.
   1843 	* testsuite/27_io/basic_syncbuf/basic_ops/1.cc: Likewise.
   1844 	* testsuite/27_io/basic_syncbuf/requirements/types.cc: Likewise.
   1845 	* testsuite/27_io/basic_syncbuf/sync_ops/1.cc: Likewise.
   1846 	* testsuite/27_io/basic_syncstream/1.cc: Likewise.
   1847 	* testsuite/27_io/basic_syncstream/2.cc: Likewise.
   1848 	* testsuite/27_io/basic_syncstream/basic_ops/1.cc: Likewise.
   1849 	* testsuite/27_io/basic_syncstream/requirements/types.cc:
   1850 	Likewise.
   1851 	* testsuite/27_io/filesystem/iterators/106201.cc: Likewise.
   1852 	* testsuite/27_io/filesystem/iterators/lwg3719.cc: Likewise.
   1853 	* testsuite/27_io/filesystem/path/factory/u8path-depr.cc:
   1854 	Likewise.
   1855 	* testsuite/27_io/filesystem/path/nonmember/cmp_c++20.cc:
   1856 	Likewise.
   1857 
   1858 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1859 
   1860 	* testsuite/26_numerics/accumulate/constexpr.cc: Remove
   1861 	dg-options -std=gnu++2a.
   1862 	* testsuite/26_numerics/accumulate/lwg2055.cc: Likewise.
   1863 	* testsuite/26_numerics/adjacent_difference/constexpr.cc:
   1864 	Likewise.
   1865 	* testsuite/26_numerics/bit/bit.cast/105027.cc: Likewise.
   1866 	* testsuite/26_numerics/bit/bit.cast/bit_cast.cc: Likewise.
   1867 	* testsuite/26_numerics/bit/bit.cast/version.cc: Likewise.
   1868 	* testsuite/26_numerics/bit/bit.count/countl_one.cc: Likewise.
   1869 	* testsuite/26_numerics/bit/bit.pow.two/bit_ceil_neg.cc:
   1870 	Likewise.
   1871 	* testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc: Likewise.
   1872 	* testsuite/26_numerics/bit/bit.pow.two/bit_width.cc: Likewise.
   1873 	* testsuite/26_numerics/bit/bit.pow.two/lwg3656.cc: Likewise.
   1874 	* testsuite/26_numerics/bit/bit.rotate/rotl.cc: Likewise.
   1875 	* testsuite/26_numerics/bit/bit.rotate/rotr.cc: Likewise.
   1876 	* testsuite/26_numerics/bit/header-2.cc: Likewise.
   1877 	* testsuite/26_numerics/bit/header.cc: Likewise.
   1878 	* testsuite/26_numerics/complex/1.cc: Likewise.
   1879 	* testsuite/26_numerics/complex/2.cc: Likewise.
   1880 	* testsuite/26_numerics/complex/comparison_operators/more_constexpr.cc:
   1881 	Likewise.
   1882 	* testsuite/26_numerics/complex/operators/more_constexpr.cc:
   1883 	Likewise.
   1884 	* testsuite/26_numerics/complex/requirements/more_constexpr.cc:
   1885 	Likewise.
   1886 	* testsuite/26_numerics/complex/value_operations/more_constexpr.cc:
   1887 	Likewise.
   1888 	* testsuite/26_numerics/endian/1.cc: Likewise.
   1889 	* testsuite/26_numerics/endian/2.cc: Likewise.
   1890 	* testsuite/26_numerics/endian/3.cc: Likewise.
   1891 	* testsuite/26_numerics/exclusive_scan/constexpr.cc: Likewise.
   1892 	* testsuite/26_numerics/inclusive_scan/constexpr.cc: Likewise.
   1893 	* testsuite/26_numerics/inner_product/constexpr.cc: Likewise.
   1894 	* testsuite/26_numerics/inner_product/lwg2055.cc: Likewise.
   1895 	* testsuite/26_numerics/iota/constexpr.cc: Likewise.
   1896 	* testsuite/26_numerics/lerp/1.cc: Likewise.
   1897 	* testsuite/26_numerics/lerp/constexpr.cc: Likewise.
   1898 	* testsuite/26_numerics/lerp/version.cc: Likewise.
   1899 	* testsuite/26_numerics/midpoint/floating.cc: Likewise.
   1900 	* testsuite/26_numerics/midpoint/integral.cc: Likewise.
   1901 	* testsuite/26_numerics/midpoint/pointer.cc: Likewise.
   1902 	* testsuite/26_numerics/midpoint/pointer_neg.cc: Likewise.
   1903 	* testsuite/26_numerics/midpoint/version.cc: Likewise.
   1904 	* testsuite/26_numerics/numbers/1.cc: Likewise.
   1905 	* testsuite/26_numerics/numbers/2.cc: Likewise.
   1906 	* testsuite/26_numerics/numbers/3.cc: Likewise.
   1907 	* testsuite/26_numerics/numbers/float128.cc: Likewise.
   1908 	* testsuite/26_numerics/numbers/nonfloat_neg.cc: Likewise.
   1909 	* testsuite/26_numerics/partial_sum/constexpr.cc: Likewise.
   1910 	* testsuite/26_numerics/partial_sum/lwg2055.cc: Likewise.
   1911 	* testsuite/26_numerics/random/concept.cc: Likewise.
   1912 	* testsuite/26_numerics/reduce/constexpr.cc: Likewise.
   1913 	* testsuite/26_numerics/slice/compare.cc: Likewise.
   1914 	* testsuite/26_numerics/transform_exclusive_scan/constexpr.cc:
   1915 	Likewise.
   1916 	* testsuite/26_numerics/transform_inclusive_scan/constexpr.cc:
   1917 	Likewise.
   1918 	* testsuite/26_numerics/transform_reduce/constexpr.cc: Likewise.
   1919 
   1920 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1921 
   1922 	* testsuite/24_iterators/aliases.cc: Remove dg-options
   1923 	-std=gnu++2a.
   1924 	* testsuite/24_iterators/associated_types/incrementable.traits.cc:
   1925 	Likewise.
   1926 	* testsuite/24_iterators/associated_types/iterator.traits.cc:
   1927 	Likewise.
   1928 	* testsuite/24_iterators/associated_types/readable.traits.cc:
   1929 	Likewise.
   1930 	* testsuite/24_iterators/back_insert_iterator/constexpr.cc:
   1931 	Likewise.
   1932 	* testsuite/24_iterators/back_insert_iterator/pr93884.cc:
   1933 	Likewise.
   1934 	* testsuite/24_iterators/bidirectional/concept.cc: Likewise.
   1935 	* testsuite/24_iterators/common_iterator/1.cc: Likewise.
   1936 	* testsuite/24_iterators/common_iterator/100823.cc: Likewise.
   1937 	* testsuite/24_iterators/common_iterator/2.cc: Likewise.
   1938 	* testsuite/24_iterators/contiguous/concept.cc: Likewise.
   1939 	* testsuite/24_iterators/contiguous/tag.cc: Likewise.
   1940 	* testsuite/24_iterators/counted_iterator/1.cc: Likewise.
   1941 	* testsuite/24_iterators/counted_iterator/lwg3389.cc: Likewise.
   1942 	* testsuite/24_iterators/counted_iterator/lwg3643.cc: Likewise.
   1943 	* testsuite/24_iterators/customization_points/92894.cc:
   1944 	Likewise.
   1945 	* testsuite/24_iterators/customization_points/iter_move.cc:
   1946 	Likewise.
   1947 	* testsuite/24_iterators/customization_points/iter_swap.cc:
   1948 	Likewise.
   1949 	* testsuite/24_iterators/customization_points/lwg3420.cc:
   1950 	Likewise.
   1951 	* testsuite/24_iterators/forward/concept.cc: Likewise.
   1952 	* testsuite/24_iterators/front_insert_iterator/constexpr.cc:
   1953 	Likewise.
   1954 	* testsuite/24_iterators/front_insert_iterator/pr93884.cc:
   1955 	Likewise.
   1956 	* testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
   1957 	Likewise.
   1958 	* testsuite/24_iterators/indirect_callable/92894.cc: Likewise.
   1959 	* testsuite/24_iterators/indirect_callable/projected-adl.cc:
   1960 	Likewise.
   1961 	* testsuite/24_iterators/indirect_callable/projected.cc:
   1962 	Likewise.
   1963 	* testsuite/24_iterators/input/concept.cc: Likewise.
   1964 	* testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise.
   1965 	* testsuite/24_iterators/istream_iterator/cons/sentinel.cc:
   1966 	Likewise.
   1967 	* testsuite/24_iterators/istream_iterator/sentinel.cc: Likewise.
   1968 	* testsuite/24_iterators/istreambuf_iterator/cons/sentinel.cc:
   1969 	Likewise.
   1970 	* testsuite/24_iterators/istreambuf_iterator/sentinel.cc:
   1971 	Likewise.
   1972 	* testsuite/24_iterators/move_iterator/cust.cc: Likewise.
   1973 	* testsuite/24_iterators/move_iterator/dr3435.cc: Likewise.
   1974 	* testsuite/24_iterators/move_iterator/input_iterator.cc:
   1975 	Likewise.
   1976 	* testsuite/24_iterators/move_iterator/lwg3390.cc: Likewise.
   1977 	* testsuite/24_iterators/move_iterator/lwg3391.cc: Likewise.
   1978 	* testsuite/24_iterators/move_iterator/move_only.cc: Likewise.
   1979 	* testsuite/24_iterators/move_iterator/p2520r0.cc: Likewise.
   1980 	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc:
   1981 	Likewise.
   1982 	* testsuite/24_iterators/move_iterator/sentinel.cc: Likewise.
   1983 	* testsuite/24_iterators/normal_iterator/cmp_c++20.cc: Likewise.
   1984 	* testsuite/24_iterators/output/concept.cc: Likewise.
   1985 	* testsuite/24_iterators/random_access/concept.cc: Likewise.
   1986 	* testsuite/24_iterators/range_access/range_access_cpp20.cc:
   1987 	Likewise.
   1988 	* testsuite/24_iterators/range_access/range_access_cpp20_neg.cc:
   1989 	Likewise.
   1990 	* testsuite/24_iterators/range_operations/100768.cc: Likewise.
   1991 	* testsuite/24_iterators/range_operations/advance.cc: Likewise.
   1992 	* testsuite/24_iterators/range_operations/advance_overflow.cc:
   1993 	Likewise.
   1994 	* testsuite/24_iterators/range_operations/distance.cc: Likewise.
   1995 	* testsuite/24_iterators/range_operations/lwg3392.cc: Likewise.
   1996 	* testsuite/24_iterators/range_operations/next.cc: Likewise.
   1997 	* testsuite/24_iterators/range_operations/prev.cc: Likewise.
   1998 	* testsuite/24_iterators/reverse_iterator/cust.cc: Likewise.
   1999 	* testsuite/24_iterators/reverse_iterator/dr3435.cc: Likewise.
   2000 	* testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc:
   2001 	Likewise.
   2002 
   2003 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2004 
   2005 	* testsuite/23_containers/array/comparison_operators/96851.cc:
   2006 	Remove dg-options -std=gnu++2a.
   2007 	* testsuite/23_containers/array/comparison_operators/constexpr.cc:
   2008 	Likewise.
   2009 	* testsuite/23_containers/array/creation/1.cc: Likewise.
   2010 	* testsuite/23_containers/array/creation/110167.cc: Likewise.
   2011 	* testsuite/23_containers/array/creation/2.cc: Likewise.
   2012 	* testsuite/23_containers/array/creation/3_neg.cc: Likewise.
   2013 	* testsuite/23_containers/array/requirements/constexpr_fill.cc:
   2014 	Likewise.
   2015 	* testsuite/23_containers/array/requirements/constexpr_swap.cc:
   2016 	Likewise.
   2017 	* testsuite/23_containers/deque/48101-3_neg.cc: Likewise.
   2018 	* testsuite/23_containers/deque/erasure.cc: Likewise.
   2019 	* testsuite/23_containers/deque/modifiers/emplace/92878_92947.cc:
   2020 	Likewise.
   2021 	* testsuite/23_containers/deque/operators/cmp_c++20.cc:
   2022 	Likewise.
   2023 	* testsuite/23_containers/forward_list/48101-3_neg.cc: Likewise.
   2024 	* testsuite/23_containers/forward_list/cmp_c++20.cc: Likewise.
   2025 	* testsuite/23_containers/forward_list/erasure.cc: Likewise.
   2026 	* testsuite/23_containers/forward_list/modifiers/92878_92947.cc:
   2027 	Likewise.
   2028 	* testsuite/23_containers/forward_list/operations/remove_cxx20_return.cc:
   2029 	Likewise.
   2030 	* testsuite/23_containers/forward_list/operations/unique_cxx20_return.cc:
   2031 	Likewise.
   2032 	* testsuite/23_containers/list/48101-3_neg.cc: Likewise.
   2033 	* testsuite/23_containers/list/cmp_c++20.cc: Likewise.
   2034 	* testsuite/23_containers/list/erasure.cc: Likewise.
   2035 	* testsuite/23_containers/list/modifiers/emplace/92878_92947.cc:
   2036 	Likewise.
   2037 	* testsuite/23_containers/list/operations/remove_cxx20_return.cc:
   2038 	Likewise.
   2039 	* testsuite/23_containers/list/operations/unique_cxx20_return.cc:
   2040 	Likewise.
   2041 	* testsuite/23_containers/map/48101-3_neg.cc: Likewise.
   2042 	* testsuite/23_containers/map/erasure.cc: Likewise.
   2043 	* testsuite/23_containers/map/modifiers/emplace/92878_92947.cc:
   2044 	Likewise.
   2045 	* testsuite/23_containers/map/operations/contains.cc: Likewise.
   2046 	* testsuite/23_containers/map/operators/cmp_c++20.cc: Likewise.
   2047 	* testsuite/23_containers/multimap/48101-3_neg.cc: Likewise.
   2048 	* testsuite/23_containers/multimap/modifiers/emplace/92878_92947.cc:
   2049 	Likewise.
   2050 	* testsuite/23_containers/multimap/operations/contains.cc:
   2051 	Likewise.
   2052 	* testsuite/23_containers/multimap/operators/cmp_c++20.cc:
   2053 	Likewise.
   2054 	* testsuite/23_containers/multiset/48101-3_neg.cc: Likewise.
   2055 	* testsuite/23_containers/multiset/modifiers/emplace/92878_92947.cc:
   2056 	Likewise.
   2057 	* testsuite/23_containers/multiset/operations/contains.cc:
   2058 	Likewise.
   2059 	* testsuite/23_containers/multiset/operators/cmp_c++20.cc:
   2060 	Likewise.
   2061 	* testsuite/23_containers/priority_queue/92878_92947.cc:
   2062 	Likewise.
   2063 	* testsuite/23_containers/queue/92878_92947.cc: Likewise.
   2064 	* testsuite/23_containers/queue/cmp_c++20.cc: Likewise.
   2065 	* testsuite/23_containers/set/48101-3_neg.cc: Likewise.
   2066 	* testsuite/23_containers/set/erasure.cc: Likewise.
   2067 	* testsuite/23_containers/set/modifiers/emplace/92878_92947.cc:
   2068 	Likewise.
   2069 	* testsuite/23_containers/set/operations/contains.cc: Likewise.
   2070 	* testsuite/23_containers/set/operators/cmp_c++20.cc: Likewise.
   2071 	* testsuite/23_containers/span/1.cc: Likewise.
   2072 	* testsuite/23_containers/span/101411.cc: Likewise.
   2073 	* testsuite/23_containers/span/2.cc: Likewise.
   2074 	* testsuite/23_containers/span/deduction.cc: Likewise.
   2075 	* testsuite/23_containers/span/explicit.cc: Likewise.
   2076 	* testsuite/23_containers/span/layout_compat.cc: Likewise.
   2077 	* testsuite/23_containers/span/lwg3255.cc: Likewise.
   2078 	* testsuite/23_containers/span/nothrow_cons.cc: Likewise.
   2079 	* testsuite/23_containers/span/trivially_copyable.cc: Likewise.
   2080 	* testsuite/23_containers/stack/92878_92947.cc: Likewise.
   2081 	* testsuite/23_containers/stack/cmp_c++20.cc: Likewise.
   2082 	* testsuite/23_containers/unordered_map/48101-3_neg.cc:
   2083 	Likewise.
   2084 	* testsuite/23_containers/unordered_map/erasure.cc: Likewise.
   2085 	* testsuite/23_containers/unordered_map/modifiers/92878_92947.cc:
   2086 	Likewise.
   2087 	* testsuite/23_containers/unordered_map/operations/1.cc:
   2088 	Likewise.
   2089 	* testsuite/23_containers/unordered_map/operations/contains.cc:
   2090 	Likewise.
   2091 	* testsuite/23_containers/unordered_multimap/48101-3_neg.cc:
   2092 	Likewise.
   2093 	* testsuite/23_containers/unordered_multimap/modifiers/92878_92947.cc:
   2094 	Likewise.
   2095 	* testsuite/23_containers/unordered_multimap/operations/1.cc:
   2096 	Likewise.
   2097 	* testsuite/23_containers/unordered_multimap/operations/contains.cc:
   2098 	Likewise.
   2099 	* testsuite/23_containers/unordered_multiset/48101-3_neg.cc:
   2100 	Likewise.
   2101 	* testsuite/23_containers/unordered_multiset/modifiers/92878_92947.cc:
   2102 	Likewise.
   2103 	* testsuite/23_containers/unordered_multiset/operations/1.cc:
   2104 	Likewise.
   2105 	* testsuite/23_containers/unordered_multiset/operations/contains.cc:
   2106 	Likewise.
   2107 	* testsuite/23_containers/unordered_set/48101-3_neg.cc:
   2108 	Likewise.
   2109 	* testsuite/23_containers/unordered_set/erasure.cc: Likewise.
   2110 	* testsuite/23_containers/unordered_set/modifiers/92878_92947.cc:
   2111 	Likewise.
   2112 	* testsuite/23_containers/unordered_set/operations/1.cc:
   2113 	Likewise.
   2114 	* testsuite/23_containers/unordered_set/operations/contains.cc:
   2115 	Likewise.
   2116 	* testsuite/23_containers/vector/48101-3_neg.cc: Likewise.
   2117 	* testsuite/23_containers/vector/bool/capacity/constexpr.cc:
   2118 	Likewise.
   2119 	* testsuite/23_containers/vector/bool/cmp_c++20.cc: Likewise.
   2120 	* testsuite/23_containers/vector/bool/cons/constexpr.cc:
   2121 	Likewise.
   2122 	* testsuite/23_containers/vector/bool/element_access/constexpr.cc:
   2123 	Likewise.
   2124 	* testsuite/23_containers/vector/bool/iterator_c++20.cc:
   2125 	Likewise.
   2126 	* testsuite/23_containers/vector/bool/modifiers/assign/constexpr.cc:
   2127 	Likewise.
   2128 	* testsuite/23_containers/vector/bool/modifiers/constexpr.cc:
   2129 	Likewise.
   2130 	* testsuite/23_containers/vector/bool/modifiers/swap/constexpr.cc:
   2131 	Likewise.
   2132 	* testsuite/23_containers/vector/capacity/constexpr.cc:
   2133 	Likewise.
   2134 	* testsuite/23_containers/vector/cmp_c++20.cc: Likewise.
   2135 	* testsuite/23_containers/vector/cons/constexpr.cc: Likewise.
   2136 	* testsuite/23_containers/vector/data_access/constexpr.cc:
   2137 	Likewise.
   2138 	* testsuite/23_containers/vector/element_access/constexpr.cc:
   2139 	Likewise.
   2140 	* testsuite/23_containers/vector/erasure.cc: Likewise.
   2141 	* testsuite/23_containers/vector/modifiers/assign/constexpr.cc:
   2142 	Likewise.
   2143 	* testsuite/23_containers/vector/modifiers/constexpr.cc:
   2144 	Likewise.
   2145 	* testsuite/23_containers/vector/modifiers/emplace/92878_92947.cc:
   2146 	Likewise.
   2147 	* testsuite/23_containers/vector/modifiers/swap/constexpr.cc:
   2148 	Likewise.
   2149 	* testsuite/23_containers/vector/requirements/version.cc:
   2150 	Likewise.
   2151 
   2152 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2153 
   2154 	* testsuite/21_strings/basic_string/cons/char/105995.cc: Remove
   2155 	dg-options -std=gnu++20.
   2156 	* testsuite/21_strings/basic_string/cons/char/constexpr.cc:
   2157 	Likewise.
   2158 	* testsuite/21_strings/basic_string/cons/wchar_t/constexpr.cc:
   2159 	Likewise.
   2160 	* testsuite/21_strings/basic_string/erasure.cc: Likewise.
   2161 	* testsuite/21_strings/basic_string/hash/hash_char8_t.cc:
   2162 	Likewise.
   2163 	* testsuite/21_strings/basic_string/literals/constexpr.cc:
   2164 	Likewise.
   2165 	* testsuite/21_strings/basic_string/modifiers/constexpr.cc:
   2166 	Likewise.
   2167 	* testsuite/21_strings/basic_string/modifiers/swap/constexpr-wchar_t.cc:
   2168 	Likewise.
   2169 	* testsuite/21_strings/basic_string/modifiers/swap/constexpr.cc:
   2170 	Likewise.
   2171 	* testsuite/21_strings/basic_string/operations/ends_with/char.cc:
   2172 	Likewise.
   2173 	* testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc:
   2174 	Likewise.
   2175 	* testsuite/21_strings/basic_string/operations/ends_with/wchar_t.cc:
   2176 	Likewise.
   2177 	* testsuite/21_strings/basic_string/operations/starts_with/char.cc:
   2178 	Likewise.
   2179 	* testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc:
   2180 	Likewise.
   2181 	* testsuite/21_strings/basic_string/operations/starts_with/wchar_t.cc:
   2182 	Likewise.
   2183 	* testsuite/21_strings/basic_string/operators/char/cmp_c++20.cc:
   2184 	Likewise.
   2185 	* testsuite/21_strings/basic_string/operators/wchar_t/cmp_c++20.cc:
   2186 	Likewise.
   2187 	* testsuite/21_strings/basic_string_view/cons/char/range.cc:
   2188 	Likewise.
   2189 	* testsuite/21_strings/basic_string_view/operations/copy/char/constexpr.cc:
   2190 	Likewise.
   2191 	* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/constexpr.cc:
   2192 	Likewise.
   2193 	* testsuite/21_strings/basic_string_view/operations/ends_with/char.cc:
   2194 	Likewise.
   2195 	* testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc:
   2196 	Likewise.
   2197 	* testsuite/21_strings/basic_string_view/operations/ends_with/wchar_t.cc:
   2198 	Likewise.
   2199 	* testsuite/21_strings/basic_string_view/operations/starts_with/char.cc:
   2200 	Likewise.
   2201 	* testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc:
   2202 	Likewise.
   2203 	* testsuite/21_strings/basic_string_view/operations/starts_with/wchar_t.cc:
   2204 	Likewise.
   2205 	* testsuite/21_strings/basic_string_view/operators/char/cmp_c++20.cc:
   2206 	Likewise.
   2207 	* testsuite/21_strings/basic_string_view/operators/wchar_t/cmp_c++20.cc:
   2208 	Likewise.
   2209 	* testsuite/21_strings/basic_string_view/requirements/constexpr_iter.cc:
   2210 	Likewise.
   2211 	* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
   2212 	Likewise.
   2213 
   2214 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2215 
   2216 	* testsuite/20_util/allocator/105975.cc: Remove dg-options
   2217 	-std=gnu++2a.
   2218 	* testsuite/20_util/allocator/rebind_c++20.cc: Likewise.
   2219 	* testsuite/20_util/allocator/requirements/constexpr.cc:
   2220 	Likewise.
   2221 	* testsuite/20_util/allocator/requirements/typedefs_c++20.cc:
   2222 	Likewise.
   2223 	* testsuite/20_util/allocator_traits/header-2.cc: Likewise.
   2224 	* testsuite/20_util/allocator_traits/header.cc: Likewise.
   2225 	* testsuite/20_util/allocator_traits/members/92878_92947.cc:
   2226 	Likewise.
   2227 	* testsuite/20_util/any/assign/92878_92947.cc: Likewise.
   2228 	* testsuite/20_util/any/cons/92878_92947.cc: Likewise.
   2229 	* testsuite/20_util/assume_aligned/1.cc: Likewise.
   2230 	* testsuite/20_util/assume_aligned/2_neg.cc: Likewise.
   2231 	* testsuite/20_util/assume_aligned/3.cc: Likewise.
   2232 	* testsuite/20_util/assume_aligned/97132.cc: Likewise.
   2233 	* testsuite/20_util/bind/constexpr.cc: Likewise.
   2234 	* testsuite/20_util/bitset/operations/96303.cc: Likewise.
   2235 	* testsuite/20_util/common_reference/100894.cc: Likewise.
   2236 	* testsuite/20_util/common_reference/requirements/alias_decl.cc:
   2237 	Likewise.
   2238 	* testsuite/20_util/common_reference/requirements/explicit_instantiation.cc:
   2239 	Likewise.
   2240 	* testsuite/20_util/common_reference/requirements/typedefs.cc:
   2241 	Likewise.
   2242 	* testsuite/20_util/duration/comparison_operators/three_way.cc:
   2243 	Likewise.
   2244 	* testsuite/20_util/exchange/constexpr.cc: Likewise.
   2245 	* testsuite/20_util/exchange/noexcept.cc: Likewise.
   2246 	* testsuite/20_util/from_chars/1_c++20_neg.cc: Likewise.
   2247 	* testsuite/20_util/from_chars/compare.cc: Likewise.
   2248 	* testsuite/20_util/function_objects/bind_front/1.cc: Likewise.
   2249 	* testsuite/20_util/function_objects/bind_front/107784.cc:
   2250 	Likewise.
   2251 	* testsuite/20_util/function_objects/bind_front/111327.cc:
   2252 	Likewise.
   2253 	* testsuite/20_util/function_objects/bind_front/2.cc: Likewise.
   2254 	* testsuite/20_util/function_objects/bind_front/97101.cc:
   2255 	Likewise.
   2256 	* testsuite/20_util/function_objects/bind_front/constexpr.cc:
   2257 	Likewise.
   2258 	* testsuite/20_util/function_objects/constexpr_searcher.cc:
   2259 	Likewise.
   2260 	* testsuite/20_util/function_objects/identity/1.cc: Likewise.
   2261 	* testsuite/20_util/function_objects/invoke/constexpr.cc:
   2262 	Likewise.
   2263 	* testsuite/20_util/function_objects/mem_fn/constexpr.cc:
   2264 	Likewise.
   2265 	* testsuite/20_util/function_objects/not_fn/constexpr.cc:
   2266 	Likewise.
   2267 	* testsuite/20_util/integer_comparisons/1.cc: Likewise.
   2268 	* testsuite/20_util/integer_comparisons/2.cc: Likewise.
   2269 	* testsuite/20_util/integer_comparisons/equal.cc: Likewise.
   2270 	* testsuite/20_util/integer_comparisons/equal_neg.cc: Likewise.
   2271 	* testsuite/20_util/integer_comparisons/greater.cc: Likewise.
   2272 	* testsuite/20_util/integer_comparisons/greater_equal.cc:
   2273 	Likewise.
   2274 	* testsuite/20_util/integer_comparisons/greater_equal_neg.cc:
   2275 	Likewise.
   2276 	* testsuite/20_util/integer_comparisons/greater_neg.cc:
   2277 	Likewise.
   2278 	* testsuite/20_util/integer_comparisons/in_range.cc: Likewise.
   2279 	* testsuite/20_util/integer_comparisons/in_range_neg.cc:
   2280 	Likewise.
   2281 	* testsuite/20_util/integer_comparisons/less.cc: Likewise.
   2282 	* testsuite/20_util/integer_comparisons/less_equal.cc: Likewise.
   2283 	* testsuite/20_util/integer_comparisons/less_equal_neg.cc:
   2284 	Likewise.
   2285 	* testsuite/20_util/integer_comparisons/less_neg.cc: Likewise.
   2286 	* testsuite/20_util/integer_comparisons/not_equal.cc: Likewise.
   2287 	* testsuite/20_util/integer_comparisons/not_equal_neg.cc:
   2288 	Likewise.
   2289 	* testsuite/20_util/is_bounded_array/requirements/explicit_instantiation.cc:
   2290 	Likewise.
   2291 	* testsuite/20_util/is_bounded_array/requirements/typedefs.cc:
   2292 	Likewise.
   2293 	* testsuite/20_util/is_bounded_array/value.cc: Likewise.
   2294 	* testsuite/20_util/is_constant_evaluated/1.cc: Likewise.
   2295 	* testsuite/20_util/is_constant_evaluated/noexcept.cc: Likewise.
   2296 	* testsuite/20_util/is_constructible/92878_92947.cc: Likewise.
   2297 	* testsuite/20_util/is_layout_compatible/is_corresponding_member.cc:
   2298 	Likewise.
   2299 	* testsuite/20_util/is_layout_compatible/value.cc: Likewise.
   2300 	* testsuite/20_util/is_layout_compatible/version.cc: Likewise.
   2301 	* testsuite/20_util/is_nothrow_constructible/value_c++20.cc:
   2302 	Likewise.
   2303 	* testsuite/20_util/is_nothrow_convertible/requirements/explicit_instantiation.cc:
   2304 	Likewise.
   2305 	* testsuite/20_util/is_nothrow_convertible/requirements/typedefs.cc:
   2306 	Likewise.
   2307 	* testsuite/20_util/is_nothrow_convertible/value.cc: Likewise.
   2308 	* testsuite/20_util/is_pod/deprecated-2a.cc: Likewise.
   2309 	* testsuite/20_util/is_pointer_interconvertible/value.cc:
   2310 	Likewise.
   2311 	* testsuite/20_util/is_pointer_interconvertible/version.cc:
   2312 	Likewise.
   2313 	* testsuite/20_util/is_pointer_interconvertible/with_class.cc:
   2314 	Likewise.
   2315 	* testsuite/20_util/is_unbounded_array/requirements/explicit_instantiation.cc:
   2316 	Likewise.
   2317 	* testsuite/20_util/is_unbounded_array/requirements/typedefs.cc:
   2318 	Likewise.
   2319 	* testsuite/20_util/is_unbounded_array/value.cc: Likewise.
   2320 	* testsuite/20_util/optional/assignment/92878_92947.cc:
   2321 	Likewise.
   2322 	* testsuite/20_util/optional/cons/92878_92947.cc: Likewise.
   2323 	* testsuite/20_util/optional/constexpr/assign.cc: Likewise.
   2324 	* testsuite/20_util/optional/constexpr/cons/conv.cc: Likewise.
   2325 	* testsuite/20_util/optional/constexpr/modifiers.cc: Likewise.
   2326 	* testsuite/20_util/optional/constexpr/swap.cc: Likewise.
   2327 	* testsuite/20_util/optional/relops/96269.cc: Likewise.
   2328 	* testsuite/20_util/optional/relops/three_way.cc: Likewise.
   2329 	* testsuite/20_util/pair/comparison_operators/constexpr_c++20.cc:
   2330 	Likewise.
   2331 	* testsuite/20_util/pair/cons/92878_92947.cc: Likewise.
   2332 	* testsuite/20_util/pair/constexpr_assign.cc: Likewise.
   2333 	* testsuite/20_util/pair/constexpr_swap.cc: Likewise.
   2334 	* testsuite/20_util/pair/requirements/structural.cc: Likewise.
   2335 	* testsuite/20_util/pointer_traits/pointer_to_constexpr.cc:
   2336 	Likewise.
   2337 	* testsuite/20_util/polymorphic_allocator/allocate_object.cc:
   2338 	Likewise.
   2339 	* testsuite/20_util/polymorphic_allocator/construct_c++2a.cc:
   2340 	Likewise.
   2341 	* testsuite/20_util/polymorphic_allocator/lwg3237.cc: Likewise.
   2342 	* testsuite/20_util/reference_wrapper/constexpr.cc: Likewise.
   2343 	* testsuite/20_util/reference_wrapper/incomplete.cc: Likewise.
   2344 	* testsuite/20_util/remove_cvref/requirements/alias_decl.cc:
   2345 	Likewise.
   2346 	* testsuite/20_util/remove_cvref/requirements/explicit_instantiation.cc:
   2347 	Likewise.
   2348 	* testsuite/20_util/remove_cvref/value.cc: Likewise.
   2349 	* testsuite/20_util/scoped_allocator/construct_pair_c++2a.cc:
   2350 	Likewise.
   2351 	* testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc:
   2352 	Likewise.
   2353 	* testsuite/20_util/shared_ptr/casts/rval.cc: Likewise.
   2354 	* testsuite/20_util/shared_ptr/comparison/cmp_c++20.cc:
   2355 	Likewise.
   2356 	* testsuite/20_util/shared_ptr/cons/alias-rval.cc: Likewise.
   2357 	* testsuite/20_util/shared_ptr/creation/92878_92947.cc:
   2358 	Likewise.
   2359 	* testsuite/20_util/shared_ptr/creation/array.cc: Likewise.
   2360 	* testsuite/20_util/shared_ptr/creation/overwrite.cc: Likewise.
   2361 	* testsuite/20_util/shared_ptr/creation/version.cc: Likewise.
   2362 	* testsuite/20_util/time_point/4.cc: Likewise.
   2363 	* testsuite/20_util/time_point/comparison_operators/three_way.cc:
   2364 	Likewise.
   2365 	* testsuite/20_util/to_address/1.cc: Likewise.
   2366 	* testsuite/20_util/to_address/1_neg.cc: Likewise.
   2367 	* testsuite/20_util/to_address/debug.cc: Likewise.
   2368 	* testsuite/20_util/to_address/lwg3545.cc: Likewise.
   2369 	* testsuite/20_util/to_chars/compare.cc: Likewise.
   2370 	* testsuite/20_util/tuple/comparison_operators/three_way.cc:
   2371 	Likewise.
   2372 	* testsuite/20_util/tuple/cons/102270.cc: Likewise.
   2373 	* testsuite/20_util/tuple/cons/constexpr_allocator_arg_t.cc:
   2374 	Likewise.
   2375 	* testsuite/20_util/tuple/constexpr_swap.cc: Likewise.
   2376 	* testsuite/20_util/type_identity/requirements/alias_decl.cc:
   2377 	Likewise.
   2378 	* testsuite/20_util/type_identity/requirements/explicit_instantiation.cc:
   2379 	Likewise.
   2380 	* testsuite/20_util/type_identity/requirements/typedefs.cc:
   2381 	Likewise.
   2382 	* testsuite/20_util/typeindex/comparison_operators_c++20.cc:
   2383 	Likewise.
   2384 	* testsuite/20_util/unique_ptr/comparison/compare_c++20.cc:
   2385 	Likewise.
   2386 	* testsuite/20_util/unique_ptr/creation/92878_92947.cc:
   2387 	Likewise.
   2388 	* testsuite/20_util/unique_ptr/creation/for_overwrite.cc:
   2389 	Likewise.
   2390 	* testsuite/20_util/unique_ptr/creation/for_overwrite__neg.cc:
   2391 	Likewise.
   2392 	* testsuite/20_util/unique_ptr/io/lwg2948.cc: Likewise.
   2393 	* testsuite/20_util/unwrap_reference/1.cc: Likewise.
   2394 	* testsuite/20_util/unwrap_reference/2.cc: Likewise.
   2395 	* testsuite/20_util/unwrap_reference/3.cc: Likewise.
   2396 	* testsuite/20_util/uses_allocator/92878_92947.cc: Likewise.
   2397 	* testsuite/20_util/uses_allocator/lwg3527.cc: Likewise.
   2398 	* testsuite/20_util/uses_allocator/make_obj.cc: Likewise.
   2399 	* testsuite/20_util/uses_allocator/uninitialized_construct.cc:
   2400 	Likewise.
   2401 	* testsuite/20_util/variant/92878_92947.cc: Likewise.
   2402 	* testsuite/20_util/variant/95915.cc: Likewise.
   2403 	* testsuite/20_util/variant/constexpr.cc: Likewise.
   2404 	* testsuite/20_util/variant/relops/three_way.cc: Likewise.
   2405 	* testsuite/20_util/variant/visit_neg.cc: Likewise.
   2406 	* testsuite/20_util/variant/visit_r.cc: Likewise.
   2407 	* testsuite/20_util/weak_ptr/atomic_weak_ptr.cc: Likewise.
   2408 
   2409 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2410 
   2411 	* testsuite/18_support/comparisons/algorithms/fallback.cc:
   2412 	Remove dg-options -std=gnu++2a.
   2413 	* testsuite/18_support/comparisons/algorithms/partial_order.cc:
   2414 	Likewise.
   2415 	* testsuite/18_support/comparisons/algorithms/strong_order.cc:
   2416 	Likewise.
   2417 	* testsuite/18_support/comparisons/algorithms/strong_order_floats.cc:
   2418 	Likewise.
   2419 	* testsuite/18_support/comparisons/algorithms/weak_order.cc:
   2420 	Likewise.
   2421 	* testsuite/18_support/comparisons/categories/94565.cc:
   2422 	Likewise.
   2423 	* testsuite/18_support/comparisons/categories/partialord.cc:
   2424 	Likewise.
   2425 	* testsuite/18_support/comparisons/categories/strongord.cc:
   2426 	Likewise.
   2427 	* testsuite/18_support/comparisons/categories/weakord.cc:
   2428 	Likewise.
   2429 	* testsuite/18_support/comparisons/categories/zero_neg.cc:
   2430 	Likewise.
   2431 	* testsuite/18_support/comparisons/common/1.cc: Likewise.
   2432 	* testsuite/18_support/comparisons/object/93479.cc: Likewise.
   2433 	* testsuite/18_support/comparisons/object/lwg3530.cc: Likewise.
   2434 
   2435 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2436 
   2437 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc:
   2438 	Remove dg-options -std=gnu++2a.
   2439 	* testsuite/29_atomics/atomic/cons/value_init.cc: Likewise.
   2440 	* testsuite/29_atomics/atomic/lock_free_aliases.cc: Likewise.
   2441 	* testsuite/29_atomics/atomic/requirements/types_neg.cc:
   2442 	Likewise.
   2443 	* testsuite/29_atomics/atomic/wait_notify/1.cc: Likewise.
   2444 	* testsuite/29_atomics/atomic/wait_notify/100334.cc: Likewise.
   2445 	* testsuite/29_atomics/atomic/wait_notify/102994.cc: Likewise.
   2446 	* testsuite/29_atomics/atomic/wait_notify/2.cc: Likewise.
   2447 	* testsuite/29_atomics/atomic/wait_notify/bool.cc: Likewise.
   2448 	* testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
   2449 	* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
   2450 	* testsuite/29_atomics/atomic_flag/cons/value_init.cc: Likewise.
   2451 	* testsuite/29_atomics/atomic_flag/test/explicit.cc: Likewise.
   2452 	* testsuite/29_atomics/atomic_flag/test/implicit.cc: Likewise.
   2453 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
   2454 	* testsuite/29_atomics/atomic_float/1.cc: Likewise.
   2455 	* testsuite/29_atomics/atomic_float/95282.cc: Likewise.
   2456 	* testsuite/29_atomics/atomic_float/requirements.cc: Likewise.
   2457 	* testsuite/29_atomics/atomic_float/value_init.cc: Likewise.
   2458 	* testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
   2459 	* testsuite/29_atomics/atomic_integral/cons/value_init.cc:
   2460 	Likewise.
   2461 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
   2462 	* testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc:
   2463 	Likewise.
   2464 	* testsuite/29_atomics/atomic_ref/deduction.cc: Likewise.
   2465 	* testsuite/29_atomics/atomic_ref/float.cc: Likewise.
   2466 	* testsuite/29_atomics/atomic_ref/generic.cc: Likewise.
   2467 	* testsuite/29_atomics/atomic_ref/integral.cc: Likewise.
   2468 	* testsuite/29_atomics/atomic_ref/pointer.cc: Likewise.
   2469 	* testsuite/29_atomics/atomic_ref/requirements.cc: Likewise.
   2470 	* testsuite/29_atomics/headers/atomic/types_std_c++20.cc:
   2471 	Likewise.
   2472 	* testsuite/29_atomics/headers/atomic/types_std_c++20_neg.cc:
   2473 	Likewise.
   2474 	* testsuite/29_atomics/headers/atomic/types_std_c++2a.cc:
   2475 	Likewise.
   2476 	* testsuite/29_atomics/headers/atomic/types_std_c++2a_neg.cc:
   2477 	Likewise.
   2478 
   2479 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2480 
   2481 	* testsuite/27_io/basic_filebuf/native_handle/char/1.cc: New test.
   2482 	* testsuite/27_io/basic_filebuf/native_handle/wchar_t/1.cc: New test.
   2483 
   2484 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2485 
   2486 	* acinclude.m4 (GLIBCXX_CHECK_FILEBUF_NATIVE_HANDLES): New
   2487 	macro.
   2488 	* config.h.in: Regenerate.
   2489 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.32): Export new
   2490 	basic_filebuf members.
   2491 	* config/io/basic_file_stdio.cc (__basic_file::native_handle):
   2492 	Define new function.
   2493 	* config/io/basic_file_stdio.h (__basic_file::native_handle):
   2494 	Declare new function.
   2495 	* configure: Regenerate.
   2496 	* configure.ac: Use GLIBCXX_CHECK_FILEBUF_NATIVE_HANDLES.
   2497 	* include/bits/version.def (fstream_native_handles): New macro.
   2498 	* include/bits/version.h: Regenerate.
   2499 	* include/std/fstream (basic_filebuf::native_handle)
   2500 	(basic_fstream::native_handle, basic_ifstream::native_handle)
   2501 	(basic_ofstream::native_handle): New functions.
   2502 	* src/c++11/Makefile.am: Move compilation of basic_file.cc,
   2503 	locale_init.cc and localename.cc to here.
   2504 	* src/c++11/Makefile.in: Regenerate.
   2505 	* src/c++98/locale_init.cc: Moved to...
   2506 	* src/c++11/locale_init.cc: ...here.
   2507 	* src/c++98/localename.cc: Moved to...
   2508 	* src/c++11/localename.cc: ...here.
   2509 	* src/c++98/Makefile.am: Remove basic_file.cc, locale_init.cc
   2510 	and localename.cc from here.
   2511 	* src/c++98/Makefile.in: Regenerate.
   2512 	* testsuite/27_io/basic_filebuf/native_handle/version.cc: New test.
   2513 	* testsuite/27_io/basic_fstream/native_handle/char/1.cc: New test.
   2514 	* testsuite/27_io/basic_fstream/native_handle/wchar_t/1.cc: New test.
   2515 	* testsuite/27_io/basic_ifstream/native_handle/char/1.cc: New test.
   2516 	* testsuite/27_io/basic_ifstream/native_handle/wchar_t/1.cc: New test.
   2517 	* testsuite/27_io/basic_ofstream/native_handle/char/1.cc: New test.
   2518 	* testsuite/27_io/basic_ofstream/native_handle/wchar_t/1.cc: New test.
   2519 
   2520 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2521 
   2522 	* testsuite/libstdc++-dg/conformance.exp: Add log line when
   2523 	using testsuite_files.
   2524 
   2525 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2526 
   2527 	* testsuite/20_util/shared_ptr/atomic/3.cc: Simplify dg
   2528 	directives.
   2529 	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
   2530 	Likewise.
   2531 	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
   2532 	Likewise.
   2533 	* testsuite/20_util/synchronized_pool_resource/allocate.cc:
   2534 	Likewise.
   2535 	* testsuite/20_util/synchronized_pool_resource/allocate_single.cc:
   2536 	Likewise.
   2537 	* testsuite/20_util/synchronized_pool_resource/cons.cc:
   2538 	Likewise.
   2539 	* testsuite/20_util/synchronized_pool_resource/cons_single.cc:
   2540 	Likewise.
   2541 	* testsuite/20_util/synchronized_pool_resource/is_equal.cc:
   2542 	Likewise.
   2543 	* testsuite/20_util/synchronized_pool_resource/multithreaded.cc:
   2544 	Likewise.
   2545 	* testsuite/20_util/synchronized_pool_resource/options.cc:
   2546 	Likewise.
   2547 	* testsuite/20_util/synchronized_pool_resource/release.cc:
   2548 	Likewise.
   2549 	* testsuite/20_util/synchronized_pool_resource/release_single.cc:
   2550 	Likewise.
   2551 	* testsuite/30_threads/condition_variable_any/stop_token/wait_on.cc:
   2552 	Likewise.
   2553 	* testsuite/30_threads/stop_token/stop_callback/deadlock-mt.cc:
   2554 	Likewise.
   2555 	* testsuite/30_threads/stop_token/stop_callback/destroy.cc:
   2556 	Likewise.
   2557 
   2558 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2559 
   2560 	* testsuite/23_containers/span/back_assert_neg.cc: Remove
   2561 	dg-options and add effective target selector to dg-do. Add
   2562 	no_pch.
   2563 	* testsuite/23_containers/span/back_neg.cc: Likewise.
   2564 	* testsuite/23_containers/span/cons_1_assert_neg.cc: Likewise.
   2565 	* testsuite/23_containers/span/cons_2_assert_neg.cc: Likewise.
   2566 	* testsuite/23_containers/span/first_2_assert_neg.cc: Likewise.
   2567 	* testsuite/23_containers/span/first_assert_neg.cc: Likewise.
   2568 	* testsuite/23_containers/span/first_neg.cc: Likewise.
   2569 	* testsuite/23_containers/span/front_assert_neg.cc: Likewise.
   2570 	* testsuite/23_containers/span/front_neg.cc: Likewise.
   2571 	* testsuite/23_containers/span/index_op_assert_neg.cc: Likewise.
   2572 	* testsuite/23_containers/span/index_op_neg.cc: Likewise.
   2573 	* testsuite/23_containers/span/last_2_assert_neg.cc: Likewise.
   2574 	* testsuite/23_containers/span/last_assert_neg.cc: Likewise.
   2575 	* testsuite/23_containers/span/last_neg.cc: Likewise.
   2576 	* testsuite/23_containers/span/subspan_2_assert_neg.cc:
   2577 	Likewise.
   2578 	* testsuite/23_containers/span/subspan_3_assert_neg.cc:
   2579 	Likewise.
   2580 	* testsuite/23_containers/span/subspan_4_assert_neg.cc:
   2581 	Likewise.
   2582 	* testsuite/23_containers/span/subspan_5_assert_neg.cc:
   2583 	Likewise.
   2584 	* testsuite/23_containers/span/subspan_6_assert_neg.cc:
   2585 	Likewise.
   2586 	* testsuite/23_containers/span/subspan_assert_neg.cc: Likewise.
   2587 	* testsuite/23_containers/span/subspan_neg.cc: Likewise.
   2588 	* testsuite/24_iterators/range_operations/advance_debug_neg.cc:
   2589 	Likewise.
   2590 
   2591 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2592 
   2593 	* testsuite/18_support/headers/limits/synopsis_cxx23.cc: Remove
   2594 	dg-options.
   2595 	* testsuite/18_support/headers/stdfloat/types_std.cc: Likewise.
   2596 	* testsuite/18_support/type_info/constexpr.cc: Likewise.
   2597 	* testsuite/19_diagnostics/stacktrace/current.cc: Likewise.
   2598 	* testsuite/19_diagnostics/stacktrace/entry.cc: Likewise.
   2599 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise.
   2600 	* testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise.
   2601 	* testsuite/19_diagnostics/stacktrace/version.cc: Likewise.
   2602 	* testsuite/20_util/aligned_storage/deprecated-2b.cc: Likewise.
   2603 	* testsuite/20_util/aligned_union/deprecated-2b.cc: Likewise.
   2604 	* testsuite/20_util/bitset/access/constexpr.cc: Likewise.
   2605 	* testsuite/20_util/bitset/cons/constexpr_c++23.cc: Likewise.
   2606 	* testsuite/20_util/bitset/count/constexpr.cc: Likewise.
   2607 	* testsuite/20_util/bitset/ext/constexpr.cc: Likewise.
   2608 	* testsuite/20_util/bitset/operations/constexpr_c++23.cc:
   2609 	Likewise.
   2610 	* testsuite/20_util/bitset/version.cc: Likewise.
   2611 	* testsuite/20_util/from_chars/8.cc: Likewise.
   2612 	* testsuite/20_util/from_chars/constexpr.cc: Likewise.
   2613 	* testsuite/20_util/function/cons/deduction_c++23.cc: Likewise.
   2614 	* testsuite/20_util/function_objects/invoke/4.cc: Likewise.
   2615 	* testsuite/20_util/function_objects/invoke/dangling_ref.cc:
   2616 	Likewise.
   2617 	* testsuite/20_util/is_scoped_enum/value.cc: Likewise.
   2618 	* testsuite/20_util/is_scoped_enum/version.cc: Likewise.
   2619 	* testsuite/20_util/move_only_function/call.cc: Likewise.
   2620 	* testsuite/20_util/move_only_function/cons.cc: Likewise.
   2621 	* testsuite/20_util/move_only_function/move.cc: Likewise.
   2622 	* testsuite/20_util/move_only_function/version.cc: Likewise.
   2623 	* testsuite/20_util/optional/monadic/and_then.cc: Likewise.
   2624 	* testsuite/20_util/optional/monadic/or_else.cc: Likewise.
   2625 	* testsuite/20_util/optional/monadic/or_else_neg.cc: Likewise.
   2626 	* testsuite/20_util/optional/monadic/pr109242.cc: Likewise.
   2627 	* testsuite/20_util/optional/monadic/transform.cc: Likewise.
   2628 	* testsuite/20_util/pair/p2321r2.cc: Likewise.
   2629 	* testsuite/20_util/reference_from_temporary/value.cc: Likewise.
   2630 	* testsuite/20_util/reference_from_temporary/value2.cc:
   2631 	Likewise.
   2632 	* testsuite/20_util/reference_from_temporary/version.cc:
   2633 	Likewise.
   2634 	* testsuite/20_util/to_chars/constexpr.cc: Likewise.
   2635 	* testsuite/20_util/to_chars/float128_c++23.cc: Likewise.
   2636 	* testsuite/20_util/to_chars/float16_c++23.cc: Likewise.
   2637 	* testsuite/20_util/to_chars/version.cc: Likewise.
   2638 	* testsuite/20_util/to_underlying/1.cc: Likewise.
   2639 	* testsuite/20_util/to_underlying/version.cc: Likewise.
   2640 	* testsuite/20_util/tuple/p2321r2.cc: Likewise.
   2641 	* testsuite/20_util/unique_ptr/assign/constexpr.cc: Likewise.
   2642 	* testsuite/20_util/unique_ptr/comparison/constexpr.cc:
   2643 	Likewise.
   2644 	* testsuite/20_util/unique_ptr/cons/constexpr_c++20.cc:
   2645 	Likewise.
   2646 	* testsuite/20_util/unique_ptr/creation/constexpr.cc: Likewise.
   2647 	* testsuite/20_util/unique_ptr/modifiers/constexpr.cc: Likewise.
   2648 	* testsuite/20_util/unique_ptr/specialized_algorithms/constexpr.cc: Likewise.
   2649 	* testsuite/20_util/unreachable/1.cc: Likewise.
   2650 	* testsuite/20_util/unreachable/version.cc: Likewise.
   2651 	* testsuite/20_util/uses_allocator/lwg3677.cc: Likewise.
   2652 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc: Likewise.
   2653 	* testsuite/21_strings/basic_string/operations/contains/char.cc:
   2654 	Likewise.
   2655 	* testsuite/21_strings/basic_string/operations/contains/nonnull.cc: Likewise.
   2656 	* testsuite/21_strings/basic_string/operations/contains/wchar_t.cc: Likewise.
   2657 	* testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc: Likewise.
   2658 	* testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc: Likewise.
   2659 	* testsuite/21_strings/basic_string_view/operations/contains/char.cc: Likewise.
   2660 	* testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: Likewise.
   2661 	* testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc: Likewise.
   2662 	* testsuite/21_strings/basic_string_view/operations/contains/wchar_t.cc: Likewise.
   2663 	* testsuite/23_containers/queue/cons_from_iters.cc: Likewise.
   2664 	* testsuite/23_containers/stack/cons_from_iters.cc: Likewise.
   2665 	* testsuite/23_containers/vector/bool/element_access/1.cc:
   2666 	Likewise.
   2667 	* testsuite/24_iterators/const_iterator/1.cc: Likewise.
   2668 	* testsuite/25_algorithms/contains/1.cc: Likewise.
   2669 	* testsuite/25_algorithms/contains_subrange/1.cc: Likewise.
   2670 	* testsuite/25_algorithms/find_last/1.cc: Likewise.
   2671 	* testsuite/25_algorithms/find_last_if/1.cc: Likewise.
   2672 	* testsuite/25_algorithms/find_last_if_not/1.cc: Likewise.
   2673 	* testsuite/25_algorithms/fold_left/1.cc: Likewise.
   2674 	* testsuite/25_algorithms/fold_right/1.cc: Likewise.
   2675 	* testsuite/25_algorithms/iota/1.cc: Likewise.
   2676 	* testsuite/26_numerics/bit/bit.byteswap/byteswap.cc: Likewise.
   2677 	* testsuite/26_numerics/bit/bit.byteswap/version.cc: Likewise.
   2678 	* testsuite/26_numerics/complex/ext_c++23.cc: Likewise.
   2679 	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c++23.cc: Likewise.
   2680 	* testsuite/26_numerics/headers/cmath/constexpr_std_c++23.cc:
   2681 	Likewise.
   2682 	* testsuite/26_numerics/headers/cmath/functions_std_c++23.cc:
   2683 	Likewise.
   2684 	* testsuite/26_numerics/headers/cmath/nextafter_c++23.cc:
   2685 	Likewise.
   2686 	* testsuite/26_numerics/numbers/4.cc: Likewise.
   2687 	* testsuite/27_io/basic_ostream/inserters_other/char/volatile_ptr.cc: Likewise.
   2688 	* testsuite/27_io/filesystem/path/native/conv_c++23.cc:
   2689 	Likewise.
   2690 	* testsuite/27_io/spanstream/1.cc: Likewise.
   2691 	* testsuite/27_io/spanstream/2.cc: Likewise.
   2692 	* testsuite/27_io/spanstream/version.cc: Likewise.
   2693 	* testsuite/29_atomics/atomic_float/requirements_cxx23.cc:
   2694 	Likewise.
   2695 	* testsuite/29_atomics/headers/stdatomic.h/c_compat.cc:
   2696 	Likewise.
   2697 	* testsuite/29_atomics/headers/stdatomic.h/version.cc: Likewise.
   2698 	* testsuite/30_threads/packaged_task/cons/deduction_c++23.cc:
   2699 	Likewise.
   2700 	* testsuite/experimental/filesystem/path/native/conv_c++23.cc:
   2701 	Likewise.
   2702 	* testsuite/std/ranges/adaptors/adjacent/1.cc: Likewise.
   2703 	* testsuite/std/ranges/adaptors/adjacent_transform/1.cc:
   2704 	Likewise.
   2705 	* testsuite/std/ranges/adaptors/as_const/1.cc: Likewise.
   2706 	* testsuite/std/ranges/adaptors/as_rvalue/1.cc: Likewise.
   2707 	* testsuite/std/ranges/adaptors/chunk/1.cc: Likewise.
   2708 	* testsuite/std/ranges/adaptors/chunk_by/1.cc: Likewise.
   2709 	* testsuite/std/ranges/adaptors/enumerate/1.cc: Likewise.
   2710 	* testsuite/std/ranges/adaptors/join_with/1.cc: Likewise.
   2711 	* testsuite/std/ranges/adaptors/lwg3715.cc: Likewise.
   2712 	* testsuite/std/ranges/adaptors/slide/1.cc: Likewise.
   2713 	* testsuite/std/ranges/adaptors/stride/1.cc: Likewise.
   2714 	* testsuite/std/ranges/cartesian_product/1.cc: Likewise.
   2715 	* testsuite/std/ranges/range_adaptor_closure.cc: Likewise.
   2716 	* testsuite/std/ranges/repeat/1.cc: Likewise.
   2717 	* testsuite/std/ranges/version_c++23.cc: Likewise.
   2718 	* testsuite/std/ranges/zip/1.cc: Likewise.
   2719 	* testsuite/std/ranges/zip_transform/1.cc: Likewise.
   2720 
   2721 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2722 
   2723 	* testsuite/20_util/expected/assign.cc: Remove dg-options.
   2724 	* testsuite/20_util/expected/bad.cc: Likewise.
   2725 	* testsuite/20_util/expected/cons.cc: Likewise.
   2726 	* testsuite/20_util/expected/equality.cc: Likewise.
   2727 	* testsuite/20_util/expected/illformed_neg.cc: Likewise.
   2728 	* testsuite/20_util/expected/lwg3877.cc: Likewise.
   2729 	* testsuite/20_util/expected/lwg3938.cc: Likewise.
   2730 	* testsuite/20_util/expected/monadic.cc: Likewise.
   2731 	* testsuite/20_util/expected/observers.cc: Likewise.
   2732 	* testsuite/20_util/expected/requirements.cc: Likewise.
   2733 	* testsuite/20_util/expected/swap.cc: Likewise.
   2734 	* testsuite/20_util/expected/synopsis.cc: Likewise.
   2735 	* testsuite/20_util/expected/unexpected.cc: Likewise.
   2736 	* testsuite/20_util/expected/version.cc: Likewise.
   2737 
   2738 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2739 
   2740 	* testsuite/20_util/duration/arithmetic/overflow_c++20.cc:
   2741 	Remove dg-options.
   2742 	* testsuite/20_util/duration/io.cc: Likewise.
   2743 	* testsuite/std/time/clock/file/io.cc: Likewise.
   2744 	* testsuite/std/time/clock/file/members.cc: Likewise.
   2745 	* testsuite/std/time/clock/file/overview.cc: Likewise.
   2746 	* testsuite/std/time/clock/gps/1.cc: Likewise.
   2747 	* testsuite/std/time/clock/gps/io.cc: Likewise.
   2748 	* testsuite/std/time/clock/local/io.cc: Likewise.
   2749 	* testsuite/std/time/clock/system/io.cc: Likewise.
   2750 	* testsuite/std/time/clock/tai/1.cc: Likewise.
   2751 	* testsuite/std/time/clock/tai/io.cc: Likewise.
   2752 	* testsuite/std/time/clock/utc/1.cc: Likewise.
   2753 	* testsuite/std/time/clock/utc/io.cc: Likewise.
   2754 	* testsuite/std/time/clock/utc/leap_second_info.cc: Likewise.
   2755 	* testsuite/std/time/day/1.cc: Likewise.
   2756 	* testsuite/std/time/day/io.cc: Likewise.
   2757 	* testsuite/std/time/exceptions.cc: Likewise.
   2758 	* testsuite/std/time/format.cc: Likewise.
   2759 	* testsuite/std/time/hh_mm_ss/1.cc: Likewise.
   2760 	* testsuite/std/time/hh_mm_ss/109772.cc: Likewise.
   2761 	* testsuite/std/time/hh_mm_ss/io.cc: Likewise.
   2762 	* testsuite/std/time/is_am/1.cc: Likewise.
   2763 	* testsuite/std/time/is_pm/1.cc: Likewise.
   2764 	* testsuite/std/time/make12/1.cc: Likewise.
   2765 	* testsuite/std/time/make24/1.cc: Likewise.
   2766 	* testsuite/std/time/month/1.cc: Likewise.
   2767 	* testsuite/std/time/month/io.cc: Likewise.
   2768 	* testsuite/std/time/month_day/1.cc: Likewise.
   2769 	* testsuite/std/time/month_day/io.cc: Likewise.
   2770 	* testsuite/std/time/month_day_last/1.cc: Likewise.
   2771 	* testsuite/std/time/month_day_last/io.cc: Likewise.
   2772 	* testsuite/std/time/month_weekday/1.cc: Likewise.
   2773 	* testsuite/std/time/month_weekday/io.cc: Likewise.
   2774 	* testsuite/std/time/month_weekday_last/1.cc: Likewise.
   2775 	* testsuite/std/time/month_weekday_last/io.cc: Likewise.
   2776 	* testsuite/std/time/parse.cc: Likewise.
   2777 	* testsuite/std/time/syn_c++20.cc: Likewise.
   2778 	* testsuite/std/time/time_zone/get_info_local.cc: Likewise.
   2779 	* testsuite/std/time/time_zone/get_info_sys.cc: Likewise.
   2780 	* testsuite/std/time/time_zone/requirements.cc: Likewise.
   2781 	* testsuite/std/time/traits/is_clock.cc: Likewise.
   2782 	* testsuite/std/time/tzdb/1.cc: Likewise.
   2783 	* testsuite/std/time/tzdb/leap_seconds.cc: Likewise.
   2784 	* testsuite/std/time/tzdb_list/1.cc: Likewise.
   2785 	* testsuite/std/time/tzdb_list/requirements.cc: Likewise.
   2786 	* testsuite/std/time/weekday/1.cc: Likewise.
   2787 	* testsuite/std/time/weekday/io.cc: Likewise.
   2788 	* testsuite/std/time/weekday_indexed/io.cc: Likewise.
   2789 	* testsuite/std/time/weekday_last/1.cc: Likewise.
   2790 	* testsuite/std/time/weekday_last/io.cc: Likewise.
   2791 	* testsuite/std/time/year/1.cc: Likewise.
   2792 	* testsuite/std/time/year/2.cc: Likewise.
   2793 	* testsuite/std/time/year/io.cc: Likewise.
   2794 	* testsuite/std/time/weekday_indexed/1.cc: Likewise.
   2795 	* testsuite/std/time/year_month/1.cc: Likewise.
   2796 	* testsuite/std/time/year_month/2.cc: Likewise.
   2797 	* testsuite/std/time/year_month/io.cc: Likewise.
   2798 	* testsuite/std/time/year_month_day/1.cc: Likewise.
   2799 	* testsuite/std/time/year_month_day/2.cc: Likewise.
   2800 	* testsuite/std/time/year_month_day/3.cc: Likewise.
   2801 	* testsuite/std/time/year_month_day/4.cc: Likewise.
   2802 	* testsuite/std/time/year_month_day/io.cc: Likewise.
   2803 	* testsuite/std/time/year_month_day_last/1.cc: Likewise.
   2804 	* testsuite/std/time/year_month_day_last/2.cc: Likewise.
   2805 	* testsuite/std/time/year_month_day_last/io.cc: Likewise.
   2806 	* testsuite/std/time/year_month_weekday/1.cc: Likewise.
   2807 	* testsuite/std/time/year_month_weekday/2.cc: Likewise.
   2808 	* testsuite/std/time/year_month_weekday/3.cc: Likewise.
   2809 	* testsuite/std/time/year_month_weekday/io.cc: Likewise.
   2810 	* testsuite/std/time/year_month_weekday_last/1.cc: Likewise.
   2811 	* testsuite/std/time/year_month_weekday_last/2.cc: Likewise.
   2812 	* testsuite/std/time/year_month_weekday_last/io.cc: Likewise.
   2813 	* testsuite/std/time/zoned_time/1.cc: Likewise.
   2814 	* testsuite/std/time/zoned_time/custom.cc: Likewise.
   2815 	* testsuite/std/time/zoned_time/deduction.cc: Likewise.
   2816 	* testsuite/std/time/zoned_time/io.cc: Likewise.
   2817 	* testsuite/std/time/zoned_time/req_neg.cc: Likewise.
   2818 	* testsuite/std/time/zoned_time/requirements.cc: Likewise.
   2819 	* testsuite/std/time/zoned_traits.cc: Likewise.
   2820 
   2821 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2822 
   2823 	* testsuite/std/format/arguments/args.cc: Remove dg-options.
   2824 	* testsuite/std/format/arguments/lwg3810.cc: Likewise.
   2825 	* testsuite/std/format/error.cc: Likewise.
   2826 	* testsuite/std/format/format_string.cc: Likewise.
   2827 	* testsuite/std/format/formatter/concept.cc: Likewise.
   2828 	* testsuite/std/format/formatter/ext_float.cc: Likewise.
   2829 	* testsuite/std/format/formatter/requirements.cc: Likewise.
   2830 	* testsuite/std/format/functions/107871.cc: Likewise.
   2831 	* testsuite/std/format/functions/format.cc: Likewise.
   2832 	* testsuite/std/format/functions/format_to.cc: Likewise.
   2833 	* testsuite/std/format/functions/format_to_n.cc: Likewise.
   2834 	* testsuite/std/format/functions/size.cc: Likewise.
   2835 	* testsuite/std/format/functions/vformat_to.cc: Likewise.
   2836 	* testsuite/std/format/parse_ctx.cc: Likewise.
   2837 	* testsuite/std/format/string.cc: Likewise.
   2838 	* testsuite/std/format/string_neg.cc: Likewise.
   2839 	* testsuite/std/format/functions/format_c++23.cc: Removed.
   2840 
   2841 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2842 
   2843 	* testsuite/20_util/function_objects/range.cmp/equal_to.cc:
   2844 	Remove dg-options.
   2845 	* testsuite/20_util/function_objects/range.cmp/greater.cc:
   2846 	Likewise.
   2847 	* testsuite/20_util/function_objects/range.cmp/greater_equal.cc:
   2848 	Likewise.
   2849 	* testsuite/20_util/function_objects/range.cmp/less.cc:
   2850 	Likewise.
   2851 	* testsuite/20_util/function_objects/range.cmp/less_equal.cc:
   2852 	Likewise.
   2853 	* testsuite/20_util/function_objects/range.cmp/lwg3530.cc:
   2854 	Likewise.
   2855 	* testsuite/20_util/function_objects/range.cmp/not_equal_to.cc:
   2856 	Likewise.
   2857 	* testsuite/20_util/specialized_algorithms/construct_at/1.cc:
   2858 	Likewise.
   2859 	* testsuite/20_util/specialized_algorithms/construct_at/92878_92947.cc:
   2860 	Likewise.
   2861 	* testsuite/20_util/specialized_algorithms/construct_at/95788.cc:
   2862 	Likewise.
   2863 	* testsuite/20_util/specialized_algorithms/destroy/constrained.cc:
   2864 	Likewise.
   2865 	* testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc:
   2866 	Likewise.
   2867 	* testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constrained.cc:
   2868 	Likewise.
   2869 	* testsuite/20_util/specialized_algorithms/uninitialized_fill/94017.cc:
   2870 	Likewise.
   2871 	* testsuite/20_util/specialized_algorithms/uninitialized_fill/constrained.cc:
   2872 	Likewise.
   2873 	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/94017.cc:
   2874 	Likewise.
   2875 	* testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc:
   2876 	Likewise.
   2877 	* testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constrained.cc:
   2878 	Likewise.
   2879 	* testsuite/25_algorithms/adjacent_find/constexpr.cc: Likewise.
   2880 	* testsuite/25_algorithms/adjacent_find/constrained.cc:
   2881 	Likewise.
   2882 	* testsuite/25_algorithms/all_of/constexpr.cc: Likewise.
   2883 	* testsuite/25_algorithms/all_of/constrained.cc: Likewise.
   2884 	* testsuite/25_algorithms/any_of/constexpr.cc: Likewise.
   2885 	* testsuite/25_algorithms/any_of/constrained.cc: Likewise.
   2886 	* testsuite/25_algorithms/binary_search/constexpr.cc: Likewise.
   2887 	* testsuite/25_algorithms/binary_search/constrained.cc:
   2888 	Likewise.
   2889 	* testsuite/25_algorithms/clamp/constrained.cc: Likewise.
   2890 	* testsuite/25_algorithms/constexpr_macro.cc: Likewise.
   2891 	* testsuite/25_algorithms/copy/95578.cc: Likewise.
   2892 	* testsuite/25_algorithms/copy/constexpr.cc: Likewise.
   2893 	* testsuite/25_algorithms/copy/constrained.cc: Likewise.
   2894 	* testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Likewise.
   2895 	* testsuite/25_algorithms/copy_backward/95578.cc: Likewise.
   2896 	* testsuite/25_algorithms/copy_backward/constexpr.cc: Likewise.
   2897 	* testsuite/25_algorithms/copy_backward/constrained.cc:
   2898 	Likewise.
   2899 	* testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc:
   2900 	Likewise.
   2901 	* testsuite/25_algorithms/copy_if/constexpr.cc: Likewise.
   2902 	* testsuite/25_algorithms/copy_if/constrained.cc: Likewise.
   2903 	* testsuite/25_algorithms/copy_n/constexpr.cc: Likewise.
   2904 	* testsuite/25_algorithms/copy_n/constrained.cc: Likewise.
   2905 	* testsuite/25_algorithms/count/constexpr.cc: Likewise.
   2906 	* testsuite/25_algorithms/count/constrained.cc: Likewise.
   2907 	* testsuite/25_algorithms/count_if/constexpr.cc: Likewise.
   2908 	* testsuite/25_algorithms/count_if/constrained.cc: Likewise.
   2909 	* testsuite/25_algorithms/cpp_lib_constexpr.cc: Likewise.
   2910 	* testsuite/25_algorithms/equal/95578.cc: Likewise.
   2911 	* testsuite/25_algorithms/equal/constexpr.cc: Likewise.
   2912 	* testsuite/25_algorithms/equal/constexpr_neg.cc: Likewise.
   2913 	* testsuite/25_algorithms/equal/constrained.cc: Likewise.
   2914 	* testsuite/25_algorithms/equal/debug/constexpr_neg.cc:
   2915 	Likewise.
   2916 	* testsuite/25_algorithms/equal_range/constexpr.cc: Likewise.
   2917 	* testsuite/25_algorithms/equal_range/constrained.cc: Likewise.
   2918 	* testsuite/25_algorithms/fill/94017.cc: Likewise.
   2919 	* testsuite/25_algorithms/fill/constexpr.cc: Likewise.
   2920 	* testsuite/25_algorithms/fill/constrained.cc: Likewise.
   2921 	* testsuite/25_algorithms/fill_n/94017.cc: Likewise.
   2922 	* testsuite/25_algorithms/fill_n/constexpr.cc: Likewise.
   2923 	* testsuite/25_algorithms/fill_n/constrained.cc: Likewise.
   2924 	* testsuite/25_algorithms/find/constexpr.cc: Likewise.
   2925 	* testsuite/25_algorithms/find/constrained.cc: Likewise.
   2926 	* testsuite/25_algorithms/find_end/constexpr.cc: Likewise.
   2927 	* testsuite/25_algorithms/find_end/constrained.cc: Likewise.
   2928 	* testsuite/25_algorithms/find_first_of/constexpr.cc: Likewise.
   2929 	* testsuite/25_algorithms/find_first_of/constrained.cc:
   2930 	Likewise.
   2931 	* testsuite/25_algorithms/find_if/constexpr.cc: Likewise.
   2932 	* testsuite/25_algorithms/find_if/constrained.cc: Likewise.
   2933 	* testsuite/25_algorithms/find_if_not/constexpr.cc: Likewise.
   2934 	* testsuite/25_algorithms/find_if_not/constrained.cc: Likewise.
   2935 	* testsuite/25_algorithms/for_each/constexpr.cc: Likewise.
   2936 	* testsuite/25_algorithms/for_each/constrained.cc: Likewise.
   2937 	* testsuite/25_algorithms/generate/constexpr.cc: Likewise.
   2938 	* testsuite/25_algorithms/generate/constrained.cc: Likewise.
   2939 	* testsuite/25_algorithms/generate_n/constexpr.cc: Likewise.
   2940 	* testsuite/25_algorithms/generate_n/constrained.cc: Likewise.
   2941 	* testsuite/25_algorithms/heap/constrained.cc: Likewise.
   2942 	* testsuite/25_algorithms/includes/constrained.cc: Likewise.
   2943 	* testsuite/25_algorithms/inplace_merge/constrained.cc:
   2944 	Likewise.
   2945 	* testsuite/25_algorithms/is_heap/constexpr.cc: Likewise.
   2946 	* testsuite/25_algorithms/is_heap_until/constexpr.cc: Likewise.
   2947 	* testsuite/25_algorithms/is_partitioned/constexpr.cc: Likewise.
   2948 	* testsuite/25_algorithms/is_partitioned/constrained.cc:
   2949 	Likewise.
   2950 	* testsuite/25_algorithms/is_permutation/constexpr.cc: Likewise.
   2951 	* testsuite/25_algorithms/is_permutation/constrained.cc:
   2952 	Likewise.
   2953 	* testsuite/25_algorithms/is_sorted/constexpr.cc: Likewise.
   2954 	* testsuite/25_algorithms/is_sorted/constrained.cc: Likewise.
   2955 	* testsuite/25_algorithms/is_sorted_until/constexpr.cc:
   2956 	Likewise.
   2957 	* testsuite/25_algorithms/is_sorted_until/constrained.cc:
   2958 	Likewise.
   2959 	* testsuite/25_algorithms/iter_swap/constexpr.cc: Likewise.
   2960 	* testsuite/25_algorithms/lexicographical_compare/93972.cc:
   2961 	Likewise.
   2962 	* testsuite/25_algorithms/lexicographical_compare/95578.cc:
   2963 	Likewise.
   2964 	* testsuite/25_algorithms/lexicographical_compare/constexpr.cc:
   2965 	Likewise.
   2966 	* testsuite/25_algorithms/lexicographical_compare/constrained.cc:
   2967 	Likewise.
   2968 	* testsuite/25_algorithms/lexicographical_compare_three_way/1.cc:
   2969 	Likewise.
   2970 	* testsuite/25_algorithms/lexicographical_compare_three_way/constexpr.cc:
   2971 	Likewise.
   2972 	* testsuite/25_algorithms/lower_bound/constexpr.cc: Likewise.
   2973 	* testsuite/25_algorithms/lower_bound/constrained.cc: Likewise.
   2974 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc:
   2975 	Likewise.
   2976 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc:
   2977 	Likewise.
   2978 	* testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc:
   2979 	Likewise.
   2980 	* testsuite/25_algorithms/make_heap/constexpr.cc: Likewise.
   2981 	* testsuite/25_algorithms/max/constrained.cc: Likewise.
   2982 	* testsuite/25_algorithms/max_element/constrained.cc: Likewise.
   2983 	* testsuite/25_algorithms/merge/constexpr.cc: Likewise.
   2984 	* testsuite/25_algorithms/merge/constrained.cc: Likewise.
   2985 	* testsuite/25_algorithms/min/constrained.cc: Likewise.
   2986 	* testsuite/25_algorithms/min_element/constrained.cc: Likewise.
   2987 	* testsuite/25_algorithms/minmax/constrained.cc: Likewise.
   2988 	* testsuite/25_algorithms/minmax_element/constrained.cc:
   2989 	Likewise.
   2990 	* testsuite/25_algorithms/mismatch/constexpr.cc: Likewise.
   2991 	* testsuite/25_algorithms/mismatch/constrained.cc: Likewise.
   2992 	* testsuite/25_algorithms/move/93872.cc: Likewise.
   2993 	* testsuite/25_algorithms/move/95578.cc: Likewise.
   2994 	* testsuite/25_algorithms/move/constexpr.cc: Likewise.
   2995 	* testsuite/25_algorithms/move/constrained.cc: Likewise.
   2996 	* testsuite/25_algorithms/move_backward/93872.cc: Likewise.
   2997 	* testsuite/25_algorithms/move_backward/95578.cc: Likewise.
   2998 	* testsuite/25_algorithms/move_backward/constrained.cc:
   2999 	Likewise.
   3000 	* testsuite/25_algorithms/next_permutation/constexpr.cc:
   3001 	Likewise.
   3002 	* testsuite/25_algorithms/next_permutation/constrained.cc:
   3003 	Likewise.
   3004 	* testsuite/25_algorithms/none_of/constexpr.cc: Likewise.
   3005 	* testsuite/25_algorithms/none_of/constrained.cc: Likewise.
   3006 	* testsuite/25_algorithms/nth_element/constexpr.cc: Likewise.
   3007 	* testsuite/25_algorithms/nth_element/constrained.cc: Likewise.
   3008 	* testsuite/25_algorithms/partial_sort/constexpr.cc: Likewise.
   3009 	* testsuite/25_algorithms/partial_sort/constrained.cc: Likewise.
   3010 	* testsuite/25_algorithms/partial_sort_copy/constexpr.cc:
   3011 	Likewise.
   3012 	* testsuite/25_algorithms/partial_sort_copy/constrained.cc:
   3013 	Likewise.
   3014 	* testsuite/25_algorithms/partition/constexpr.cc: Likewise.
   3015 	* testsuite/25_algorithms/partition/constrained.cc: Likewise.
   3016 	* testsuite/25_algorithms/partition_copy/constexpr.cc: Likewise.
   3017 	* testsuite/25_algorithms/partition_copy/constrained.cc:
   3018 	Likewise.
   3019 	* testsuite/25_algorithms/partition_point/constexpr.cc:
   3020 	Likewise.
   3021 	* testsuite/25_algorithms/partition_point/constrained.cc:
   3022 	Likewise.
   3023 	* testsuite/25_algorithms/pop_heap/constexpr.cc: Likewise.
   3024 	* testsuite/25_algorithms/prev_permutation/constexpr.cc:
   3025 	Likewise.
   3026 	* testsuite/25_algorithms/prev_permutation/constrained.cc:
   3027 	Likewise.
   3028 	* testsuite/25_algorithms/push_heap/constexpr.cc: Likewise.
   3029 	* testsuite/25_algorithms/remove/constexpr.cc: Likewise.
   3030 	* testsuite/25_algorithms/remove/constrained.cc: Likewise.
   3031 	* testsuite/25_algorithms/remove_copy/constexpr.cc: Likewise.
   3032 	* testsuite/25_algorithms/remove_copy/constrained.cc: Likewise.
   3033 	* testsuite/25_algorithms/remove_copy_if/constexpr.cc: Likewise.
   3034 	* testsuite/25_algorithms/remove_copy_if/constrained.cc:
   3035 	Likewise.
   3036 	* testsuite/25_algorithms/remove_if/constexpr.cc: Likewise.
   3037 	* testsuite/25_algorithms/remove_if/constrained.cc: Likewise.
   3038 	* testsuite/25_algorithms/replace/constrained.cc: Likewise.
   3039 	* testsuite/25_algorithms/replace_copy/constexpr.cc: Likewise.
   3040 	* testsuite/25_algorithms/replace_copy/constrained.cc: Likewise.
   3041 	* testsuite/25_algorithms/replace_copy_if/constexpr.cc:
   3042 	Likewise.
   3043 	* testsuite/25_algorithms/replace_copy_if/constrained.cc:
   3044 	Likewise.
   3045 	* testsuite/25_algorithms/replace_if/constexpr.cc: Likewise.
   3046 	* testsuite/25_algorithms/replace_if/constrained.cc: Likewise.
   3047 	* testsuite/25_algorithms/reverse/constexpr.cc: Likewise.
   3048 	* testsuite/25_algorithms/reverse/constrained.cc: Likewise.
   3049 	* testsuite/25_algorithms/reverse_copy/constexpr.cc: Likewise.
   3050 	* testsuite/25_algorithms/reverse_copy/constrained.cc: Likewise.
   3051 	* testsuite/25_algorithms/rotate/constexpr.cc: Likewise.
   3052 	* testsuite/25_algorithms/rotate/constrained.cc: Likewise.
   3053 	* testsuite/25_algorithms/rotate_copy/constexpr.cc: Likewise.
   3054 	* testsuite/25_algorithms/rotate_copy/constrained.cc: Likewise.
   3055 	* testsuite/25_algorithms/sample/constrained.cc: Likewise.
   3056 	* testsuite/25_algorithms/search/constexpr.cc: Likewise.
   3057 	* testsuite/25_algorithms/search/constrained.cc: Likewise.
   3058 	* testsuite/25_algorithms/search_n/97828.cc: Likewise.
   3059 	* testsuite/25_algorithms/search_n/constexpr.cc: Likewise.
   3060 	* testsuite/25_algorithms/search_n/constrained.cc: Likewise.
   3061 	* testsuite/25_algorithms/set_difference/constexpr.cc: Likewise.
   3062 	* testsuite/25_algorithms/set_difference/constrained.cc:
   3063 	Likewise.
   3064 	* testsuite/25_algorithms/set_intersection/constexpr.cc:
   3065 	Likewise.
   3066 	* testsuite/25_algorithms/set_intersection/constrained.cc:
   3067 	Likewise.
   3068 	* testsuite/25_algorithms/set_symmetric_difference/constexpr.cc:
   3069 	Likewise.
   3070 	* testsuite/25_algorithms/set_symmetric_difference/constrained.cc:
   3071 	Likewise.
   3072 	* testsuite/25_algorithms/set_union/constexpr.cc: Likewise.
   3073 	* testsuite/25_algorithms/set_union/constrained.cc: Likewise.
   3074 	* testsuite/25_algorithms/shift_left/1.cc: Likewise.
   3075 	* testsuite/25_algorithms/shift_right/1.cc: Likewise.
   3076 	* testsuite/25_algorithms/shuffle/constrained.cc: Likewise.
   3077 	* testsuite/25_algorithms/sort/constexpr.cc: Likewise.
   3078 	* testsuite/25_algorithms/sort/constrained.cc: Likewise.
   3079 	* testsuite/25_algorithms/sort_heap/constexpr.cc: Likewise.
   3080 	* testsuite/25_algorithms/stable_partition/constrained.cc:
   3081 	Likewise.
   3082 	* testsuite/25_algorithms/stable_sort/constrained.cc: Likewise.
   3083 	* testsuite/25_algorithms/swap/constexpr.cc: Likewise.
   3084 	* testsuite/25_algorithms/swap_ranges/constexpr.cc: Likewise.
   3085 	* testsuite/25_algorithms/swap_ranges/constrained.cc: Likewise.
   3086 	* testsuite/25_algorithms/transform/constexpr.cc: Likewise.
   3087 	* testsuite/25_algorithms/transform/constrained.cc: Likewise.
   3088 	* testsuite/25_algorithms/unique/constexpr.cc: Likewise.
   3089 	* testsuite/25_algorithms/unique/constrained.cc: Likewise.
   3090 	* testsuite/25_algorithms/unique_copy/constexpr.cc: Likewise.
   3091 	* testsuite/25_algorithms/unique_copy/constrained.cc: Likewise.
   3092 	* testsuite/25_algorithms/upper_bound/constexpr.cc: Likewise.
   3093 	* testsuite/25_algorithms/upper_bound/constrained.cc: Likewise.
   3094 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc:
   3095 	Likewise.
   3096 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc:
   3097 	Likewise.
   3098 	* testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc:
   3099 	Likewise.
   3100 
   3101 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3102 
   3103 	* testsuite/std/concepts/1.cc: Remove dg-options.
   3104 	* testsuite/std/concepts/2.cc: Likewise.
   3105 	* testsuite/std/concepts/concepts.callable/invocable.cc:
   3106 	Likewise.
   3107 	* testsuite/std/concepts/concepts.callable/regular_invocable.cc:
   3108 	Likewise.
   3109 	* testsuite/std/concepts/concepts.callable/relation.cc:
   3110 	Likewise.
   3111 	* testsuite/std/concepts/concepts.callable/strictweakorder.cc:
   3112 	Likewise.
   3113 	* testsuite/std/concepts/concepts.lang/concept.arithmetic/floating_point.cc: Likewise.
   3114 	* testsuite/std/concepts/concepts.lang/concept.arithmetic/integral.cc: Likewise.
   3115 	* testsuite/std/concepts/concepts.lang/concept.arithmetic/signed_integral.cc: Likewise.
   3116 	* testsuite/std/concepts/concepts.lang/concept.arithmetic/unsigned_integral.cc: Likewise.
   3117 	* testsuite/std/concepts/concepts.lang/concept.assignable/1.cc:
   3118 	Likewise.
   3119 	* testsuite/std/concepts/concepts.lang/concept.common/1.cc:
   3120 	Likewise.
   3121 	* testsuite/std/concepts/concepts.lang/concept.commonref/1.cc:
   3122 	Likewise.
   3123 	* testsuite/std/concepts/concepts.lang/concept.constructible/1.cc: Likewise.
   3124 	* testsuite/std/concepts/concepts.lang/concept.convertible/1.cc:
   3125 	Likewise.
   3126 	* testsuite/std/concepts/concepts.lang/concept.copyconstructible/1.cc: Likewise.
   3127 	* testsuite/std/concepts/concepts.lang/concept.defaultinitializable/1.cc: Likewise.
   3128 	* testsuite/std/concepts/concepts.lang/concept.defaultinitializable/lwg3149.cc: Likewise.
   3129 	* testsuite/std/concepts/concepts.lang/concept.derived/1.cc:
   3130 	Likewise.
   3131 	* testsuite/std/concepts/concepts.lang/concept.destructible/1.cc: Likewise.
   3132 	* testsuite/std/concepts/concepts.lang/concept.moveconstructible/1.cc: Likewise.
   3133 	* testsuite/std/concepts/concepts.lang/concept.same/1.cc:
   3134 	Likewise.
   3135 	* testsuite/std/concepts/concepts.lang/concept.swappable/swap.cc: Likewise.
   3136 	* testsuite/std/concepts/concepts.lang/concept.swappable/swappable.cc: Likewise.
   3137 	* testsuite/std/concepts/concepts.lang/concept.swappable/swappable_with.cc: Likewise.
   3138 	* testsuite/std/concepts/concepts.object/copyable.cc: Likewise.
   3139 	* testsuite/std/concepts/concepts.object/movable.cc: Likewise.
   3140 	* testsuite/std/concepts/concepts.object/regular.cc: Likewise.
   3141 	* testsuite/std/concepts/concepts.object/semiregular.cc:
   3142 	Likewise.
   3143 	* testsuite/std/ranges/97600.cc: Likewise.
   3144 	* testsuite/std/ranges/access/101782.cc: Likewise.
   3145 	* testsuite/std/ranges/access/begin.cc: Likewise.
   3146 	* testsuite/std/ranges/access/begin_neg.cc: Likewise.
   3147 	* testsuite/std/ranges/access/cbegin.cc: Likewise.
   3148 	* testsuite/std/ranges/access/cdata.cc: Likewise.
   3149 	* testsuite/std/ranges/access/cend.cc: Likewise.
   3150 	* testsuite/std/ranges/access/crbegin.cc: Likewise.
   3151 	* testsuite/std/ranges/access/crend.cc: Likewise.
   3152 	* testsuite/std/ranges/access/data.cc: Likewise.
   3153 	* testsuite/std/ranges/access/empty.cc: Likewise.
   3154 	* testsuite/std/ranges/access/end.cc: Likewise.
   3155 	* testsuite/std/ranges/access/end_neg.cc: Likewise.
   3156 	* testsuite/std/ranges/access/lwg3467.cc: Likewise.
   3157 	* testsuite/std/ranges/access/p2602.cc: Likewise.
   3158 	* testsuite/std/ranges/access/rbegin.cc: Likewise.
   3159 	* testsuite/std/ranges/access/rend.cc: Likewise.
   3160 	* testsuite/std/ranges/access/size.cc: Likewise.
   3161 	* testsuite/std/ranges/access/size_neg.cc: Likewise.
   3162 	* testsuite/std/ranges/access/ssize.cc: Likewise.
   3163 	* testsuite/std/ranges/adaptors/100479.cc: Likewise.
   3164 	* testsuite/std/ranges/adaptors/100577.cc: Likewise.
   3165 	* testsuite/std/ranges/adaptors/93978.cc: Likewise.
   3166 	* testsuite/std/ranges/adaptors/95322.cc: Likewise.
   3167 	* testsuite/std/ranges/adaptors/99433.cc: Likewise.
   3168 	* testsuite/std/ranges/adaptors/all.cc: Likewise.
   3169 	* testsuite/std/ranges/adaptors/common.cc: Likewise.
   3170 	* testsuite/std/ranges/adaptors/conditionally_borrowed.cc:
   3171 	Likewise.
   3172 	* testsuite/std/ranges/adaptors/counted.cc: Likewise.
   3173 	* testsuite/std/ranges/adaptors/detail/copyable_box.cc:
   3174 	Likewise.
   3175 	* testsuite/std/ranges/adaptors/drop.cc: Likewise.
   3176 	* testsuite/std/ranges/adaptors/drop_while.cc: Likewise.
   3177 	* testsuite/std/ranges/adaptors/elements.cc: Likewise.
   3178 	* testsuite/std/ranges/adaptors/filter.cc: Likewise.
   3179 	* testsuite/std/ranges/adaptors/join.cc: Likewise.
   3180 	* testsuite/std/ranges/adaptors/lazy_split.cc: Likewise.
   3181 	* testsuite/std/ranges/adaptors/lazy_split_neg.cc: Likewise.
   3182 	* testsuite/std/ranges/adaptors/lwg3286.cc: Likewise.
   3183 	* testsuite/std/ranges/adaptors/lwg3313_neg.cc: Likewise.
   3184 	* testsuite/std/ranges/adaptors/lwg3325_neg.cc: Likewise.
   3185 	* testsuite/std/ranges/adaptors/lwg3406.cc: Likewise.
   3186 	* testsuite/std/ranges/adaptors/p1739.cc: Likewise.
   3187 	* testsuite/std/ranges/adaptors/p2281.cc: Likewise.
   3188 	* testsuite/std/ranges/adaptors/p2770r0.cc: Likewise.
   3189 	* testsuite/std/ranges/adaptors/reverse.cc: Likewise.
   3190 	* testsuite/std/ranges/adaptors/sizeof.cc: Likewise.
   3191 	* testsuite/std/ranges/adaptors/split.cc: Likewise.
   3192 	* testsuite/std/ranges/adaptors/take.cc: Likewise.
   3193 	* testsuite/std/ranges/adaptors/take_while.cc: Likewise.
   3194 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
   3195 	* testsuite/std/ranges/empty_view.cc: Likewise.
   3196 	* testsuite/std/ranges/headers/ranges/synopsis.cc: Likewise.
   3197 	* testsuite/std/ranges/iota/difference_type.cc: Likewise.
   3198 	* testsuite/std/ranges/iota/iota_view.cc: Likewise.
   3199 	* testsuite/std/ranges/iota/iterator.cc: Likewise.
   3200 	* testsuite/std/ranges/iota/lwg3292_neg.cc: Likewise.
   3201 	* testsuite/std/ranges/iota/max_size_type.cc: Likewise.
   3202 	* testsuite/std/ranges/istream_view.cc: Likewise.
   3203 	* testsuite/std/ranges/p2259.cc: Likewise.
   3204 	* testsuite/std/ranges/p2325.cc: Likewise.
   3205 	* testsuite/std/ranges/p2367.cc: Likewise.
   3206 	* testsuite/std/ranges/range.cc: Likewise.
   3207 	* testsuite/std/ranges/refinements.cc: Likewise.
   3208 	* testsuite/std/ranges/safe_range.cc: Likewise.
   3209 	* testsuite/std/ranges/safe_range_types.cc: Likewise.
   3210 	* testsuite/std/ranges/single_view.cc: Likewise.
   3211 	* testsuite/std/ranges/sized.cc: Likewise.
   3212 	* testsuite/std/ranges/subrange/1.cc: Likewise.
   3213 	* testsuite/std/ranges/subrange/97512.cc: Likewise.
   3214 	* testsuite/std/ranges/subrange/constexpr.cc: Likewise.
   3215 	* testsuite/std/ranges/subrange/lwg3282_neg.cc: Likewise.
   3216 	* testsuite/std/ranges/subrange/lwg3286.cc: Likewise.
   3217 	* testsuite/std/ranges/subrange/lwg3433.cc: Likewise.
   3218 	* testsuite/std/ranges/subrange/sizeof.cc: Likewise.
   3219 	* testsuite/std/ranges/subrange/tuple_like.cc: Likewise.
   3220 	* testsuite/std/ranges/view.cc: Likewise.
   3221 
   3222 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3223 
   3224 	* testsuite/21_strings/headers/cuchar/functions_std_cxx20.cc:
   3225 	Remove dg-options.
   3226 	* testsuite/23_containers/span/contiguous_range_neg.cc:
   3227 	Likewise.
   3228 	* testsuite/23_containers/span/everything.cc: Likewise.
   3229 
   3230 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3231 
   3232 	* testsuite/24_iterators/reverse_iterator/100639.cc: Remove
   3233 	dg-options and add dg-add-options strict_std.
   3234 	* testsuite/std/ranges/iota/93267.cc: Likewise.
   3235 	* testsuite/std/ranges/iota/96042.cc: Likewise.
   3236 	* testsuite/std/ranges/iota/size.cc: Likewise.
   3237 	* testsuite/std/ranges/subrange/96042.cc: Likewise.
   3238 
   3239 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3240 
   3241 	* testsuite/tr1/5_numerical_facilities/special_functions/07_conf_hyperg/compile_cxx17.cc:
   3242 	Replace dg-options -std=c++17 with dg-add-options strict_std.
   3243 	* testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/compile_cxx17.cc:
   3244 	Likewise.
   3245 
   3246 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3247 
   3248 	* testsuite/23_containers/deque/48101-2_neg.cc: Replace
   3249 	dg-options with target selector.
   3250 	* testsuite/23_containers/forward_list/48101-2_neg.cc: Likewise.
   3251 	* testsuite/23_containers/list/48101-2_neg.cc: Likewise.
   3252 	* testsuite/23_containers/map/48101-2_neg.cc: Likewise.
   3253 	* testsuite/23_containers/map/48101_neg.cc: Likewise.
   3254 	* testsuite/23_containers/multimap/48101-2_neg.cc: Likewise.
   3255 	* testsuite/23_containers/multimap/48101_neg.cc: Likewise.
   3256 	* testsuite/23_containers/multiset/48101-2_neg.cc: Likewise.
   3257 	* testsuite/23_containers/set/48101-2_neg.cc: Likewise.
   3258 	* testsuite/23_containers/unordered_map/48101-2_neg.cc:
   3259 	Likewise.
   3260 	* testsuite/23_containers/unordered_multimap/48101-2_neg.cc:
   3261 	Likewise.
   3262 	* testsuite/23_containers/unordered_multiset/48101-2_neg.cc:
   3263 	Likewise.
   3264 	* testsuite/23_containers/unordered_set/48101-2_neg.cc:
   3265 	Likewise.
   3266 	* testsuite/23_containers/vector/48101-2_neg.cc: Likewise.
   3267 
   3268 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3269 
   3270 	* doc/xml/manual/test.xml: Update documentation on running and
   3271 	writing tests.
   3272 	* doc/html/manual/test.html: Regenerate.
   3273 	* testsuite/Makefile.am: Add v3-use-std-list to site.tmp
   3274 	* testsuite/Makefile.in: Regenerate.
   3275 	* testsuite/lib/dg-options.exp (add_options_for_strict_std): New
   3276 	proc.
   3277 	* testsuite/lib/libstdc++.exp (search_for): New utility proc.
   3278 	(v3-dg-runtest): New proc to replace dg-runtest.
   3279 	* testsuite/libstdc++-dg/conformance.exp: Use v3-dg-runtest.
   3280 
   3281 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3282 
   3283 	* testsuite/29_atomics/headers/atomic/types_std_c++2a_neg.cc:
   3284 	Fix test to work for C++23 and C++26 too.
   3285 
   3286 2023-09-15  Patrick Palka  <ppalka (a] redhat.com>
   3287 
   3288 	* include/std/bit: Include <concepts>.
   3289 	(byteswap): Use a type-constraint instead of enable_if_t
   3290 	inside the return type, and use std::integral.
   3291 	(_If_is_unsigned_integer): Replace with ...
   3292 	(__unsigned_integer): ... this.
   3293 	(rotl): Use a type-constraint instead of enable_if_t inside
   3294 	the return type.
   3295 	(countl_zero): Likewise.
   3296 	(countl_one): Likewise.
   3297 	(countr_zero): Likewise.
   3298 	(countr_one): Likewise.
   3299 	(popcount): Likewise.
   3300 	(has_single_bit): Likewise.
   3301 	(bit_ceil): Likewise.
   3302 	(bit_floor): Likewise.
   3303 	(bit_width): Likewise.
   3304 
   3305 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3306 
   3307 	* include/std/variant (variant): Remove derivation from
   3308 	_Enable_default_constructor base class.
   3309 	(variant::variant()): Constrain.
   3310 	* testsuite/20_util/variant/default_ctor.cc: New test.
   3311 
   3312 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3313 
   3314 	PR libstdc++/111172
   3315 	* include/std/variant (get<T>): Remove !is_void static
   3316 	assertions.
   3317 
   3318 2023-09-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3319 
   3320 	* include/bits/version.def (to_chars): Define new value for
   3321 	C++26.
   3322 	* include/bits/version.h: Regenerate.
   3323 	* include/std/charconv (to_chars_result::operator bool): New
   3324 	function.
   3325 	(from_chars_result::operator bool): New function.
   3326 	* testsuite/20_util/to_chars/version.cc: Update expected value.
   3327 	* testsuite/20_util/from_chars/result.cc: New test.
   3328 	* testsuite/20_util/to_chars/result.cc: New test.
   3329 
   3330 2023-09-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3331 
   3332 	PR c++/111357
   3333 	* testsuite/20_util/integer_sequence/pr111357.cc: New test.
   3334 
   3335 2023-09-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3336 
   3337 	* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Use
   3338 	dg-additional-files. Remove @require@ and @diff@ comments.
   3339 	* testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Likewise.
   3340 	* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Likewise.
   3341 	* testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Likewise.
   3342 	* testsuite/lib/dg-options.exp (v3_additional_files): New
   3343 	global variable.
   3344 	(dg-additional-files): New proc.
   3345 	* testsuite/lib/libstdc++.exp (v3_target_compile): Copy
   3346 	additional files to test directory.
   3347 
   3348 2023-09-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3349 
   3350 	* include/experimental/io_context (io_context) [!_GLIBCXX_HAS_GTHREADS]:
   3351 	Use a plain integer for _M_work_count for single-threaded
   3352 	targets.
   3353 	* include/experimental/memory_resource (__get_default_resource)
   3354 	[!_GLIBCXX_HAS_GTHREADS]: Use unsynchronized type for
   3355 	single-threaded targets.
   3356 	* src/c++17/default_resource.h: Adjust preprocessor conditions
   3357 	to match memory_resource.cc.
   3358 	* src/c++17/memory_resource.cc [!_GLIBCXX_HAS_GTHREADS]
   3359 	(atomic_mem_res): Use unsynchronized type for single-threaded
   3360 	targets.
   3361 
   3362 2023-09-14  Christophe Lyon  <christophe.lyon (a] linaro.org>
   3363 
   3364 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc: Likewise.
   3365 	* testsuite/29_atomics/atomic/cons/value_init.cc: Likewise.
   3366 	* testsuite/29_atomics/atomic_float/value_init.cc: Likewise.
   3367 	* testsuite/29_atomics/atomic_integral/cons/value_init.cc: Likewise.
   3368 	* testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc: Likewise.
   3369 	* testsuite/29_atomics/atomic_ref/generic.cc: Likewise.
   3370 	* testsuite/29_atomics/atomic_ref/integral.cc: Likewise.
   3371 	* testsuite/29_atomics/atomic_ref/pointer.cc: Likewise.
   3372 
   3373 2023-09-14  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3374 
   3375 	* testsuite/19_diagnostics/stacktrace/synopsis.cc: Add
   3376 	{ dg-require-normal-namespace "" }.
   3377 
   3378 2023-09-13  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3379 
   3380 	* include/std/format (std::__format::_Arg_store): Explicit version
   3381 	namespace on make_format_args friend declaration.
   3382 
   3383 2023-09-12  Patrick Palka  <ppalka (a] redhat.com>
   3384 
   3385 	PR libstdc++/111327
   3386 	* include/std/functional (_GLIBCXX_NOT_FN_CALL_OP): Also define
   3387 	a deleted fallback operator() overload.  Constrain both the
   3388 	enabled and deleted overloads accordingly.
   3389 	* testsuite/20_util/function_objects/not_fn/111327.cc: New test.
   3390 
   3391 2023-09-12  Patrick Palka  <ppalka (a] redhat.com>
   3392 
   3393 	PR libstdc++/111327
   3394 	* include/std/functional (_Bind_front::operator()): Add deleted
   3395 	fallback overloads for each const/ref qualifier pair.  Give the
   3396 	enabled overloads dummy constraints to make each one more
   3397 	specialized than the corresponding deleted overload.
   3398 	* testsuite/20_util/function_objects/bind_front/111327.cc: New test.
   3399 
   3400 2023-09-12  Patrick Palka  <ppalka (a] redhat.com>
   3401 
   3402 	* include/std/functional (_Bind_front0): Remove.
   3403 	(_Bind_front_t): Adjust.
   3404 
   3405 2023-09-12  Jonathan Wakely  <jwakely (a] redhat.com>
   3406 
   3407 	* python/libstdcxx/v6/printers.py: Reformat.
   3408 	* python/libstdcxx/v6/xmethods.py: Likewise.
   3409 
   3410 2023-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3411 
   3412 	* src/c++11/debug.cc (acquire_sequence_ptr_for_lock): New
   3413 	function.
   3414 	(reset_sequence_ptr): New function.
   3415 	(_Safe_iterator_base::_M_detach)
   3416 	(_Safe_local_iterator_base::_M_detach): Replace bare atomic_load
   3417 	with acquire_sequence_ptr_for_lock.
   3418 	(_Safe_iterator_base::_M_reset): Replace bare atomic_store with
   3419 	reset_sequence_ptr.
   3420 
   3421 2023-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3422 
   3423 	* src/c++11/Makefile.am: Add new file.
   3424 	* src/c++11/Makefile.in: Regenerate.
   3425 	* src/c++11/debug.cc (__glibcxx_assert_fail): Move to ...
   3426 	* src/c++11/assert_fail.cc: New file.
   3427 
   3428 2023-09-11  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   3429 
   3430 	* include/bits/c++config (_GLIBCXX_HAS_BUILTIN): Do not undef.
   3431 	(_GLIBCXX_USE_BUILTIN_TRAIT): Define.
   3432 
   3433 2023-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3434 
   3435 	* include/bits/version.def (__cpp_lib_formatters): Define.
   3436 	* include/bits/version.h: Regenerate.
   3437 	* include/std/stacktrace (formatter<stacktrace_entry>)
   3438 	(formatter<basic_stacktrace<Alloc>>): Define.
   3439 	* include/std/thread (formatter<thread::id, charT>): Define.
   3440 	* testsuite/19_diagnostics/stacktrace/output.cc: New test.
   3441 	* testsuite/19_diagnostics/stacktrace/synopsis.cc: Add
   3442 	std::formatter specializations.
   3443 	* testsuite/19_diagnostics/stacktrace/version.cc: Check
   3444 	__cpp_lib_formatters macro.
   3445 	* testsuite/30_threads/thread/id/hash.cc: Remove gthreads
   3446 	dependency.
   3447 	* testsuite/30_threads/thread/id/operators.cc: Likewise.
   3448 	* testsuite/30_threads/thread/id/operators_c++20.cc: Likewise.
   3449 	* testsuite/30_threads/thread/id/output.cc: New test.
   3450 
   3451 2023-09-11  Pekka Seppnen  <pexu (a] gcc.mail.kapsi.fi>
   3452 
   3453 	* src/c++11/cow-locale_init.cc: Add [[maybe_unused]] attribute.
   3454 	* src/c++17/fs_path.cc (path::_S_convert_loc): Likewise.
   3455 	* src/filesystem/path.cc (path::_S_convert_loc): Likewise.
   3456 
   3457 2023-09-08  Jonathan Wakely  <jwakely (a] redhat.com>
   3458 
   3459 	* acinclude.m4 (GLIBCXX_CONFIGURE): Add c++23 directory.
   3460 	* configure: Regenerate.
   3461 	* doc/html/manual/*: Regenerate.
   3462 	* doc/xml/manual/using.xml: Update documentation on linking.
   3463 	* include/std/stacktrace: Remove declarations of libbacktrace
   3464 	APIs.
   3465 	(stacktrace_entry::_S_err_handler, stacktrace_entry::_S_init):
   3466 	Remove.
   3467 	(stacktrace_entry::_Info): New class.
   3468 	(stacktrace_entry::_M_get_info): Use _Info.
   3469 	(__stacktrace_impl): New class.
   3470 	(basic_stacktrace): Derive from __stacktrace_impl.
   3471 	(basic_stacktrace::current): Use __stacktrace_impl::_S_current.
   3472 	* scripts/testsuite_flags.in: Adjust LDFLAGS to find
   3473 	libstdc++exp instead of libstdc++_libbacktrace.
   3474 	* src/Makefile.am (SUBDIRS): Add c++23 directory.
   3475 	* src/Makefile.in: Regenerate.
   3476 	* src/c++20/Makefile.am: Fix comment.
   3477 	* src/c++20/Makefile.in: Regenerate.
   3478 	* src/c++23/Makefile.am: New file.
   3479 	* src/c++23/Makefile.in: New file.
   3480 	* src/c++23/stacktrace.cc: New file with definitions of
   3481 	stacktrace_entry::_Info and __stacktrace_impl members.
   3482 	* src/experimental/Makefile.am: Use LIBADD to include other
   3483 	libraries.
   3484 	* src/experimental/Makefile.in: Regenerate.
   3485 	* src/libbacktrace/Makefile.am: Use noinst_LTLIBRARIES.
   3486 	* src/libbacktrace/Makefile.in: Regenerate.
   3487 	* testsuite/19_diagnostics/stacktrace/current.cc: Adjust
   3488 	dg-options to use -lstdc++exp.
   3489 	* testsuite/19_diagnostics/stacktrace/entry.cc: Likewise.
   3490 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise.
   3491 	* testsuite/23_containers/vector/debug/assign4_backtrace_neg.cc:
   3492 	Likewise.
   3493 
   3494 2023-09-08  Alexey Lapshin  <alexey.lapshin (a] espressif.com>
   3495 
   3496 	* src/libbacktrace/Makefile.am: Remove -Werror.
   3497 	* src/libbacktrace/Makefile.in: Regenerate.
   3498 
   3499 2023-09-08  Jonathan Wakely  <jwakely (a] redhat.com>
   3500 
   3501 	* testsuite/Makefile.am (check-DEJAGNU): Use @ in recipe.
   3502 	* testsuite/Makefile.in: Regenerate.
   3503 
   3504 2023-09-08  Yang Yujie  <yangyujie (a] loongson.cn>
   3505 
   3506 	* configure.host: Register t-loongarch in tmake_file.
   3507 	* config/cpu/loongarch/t-loongarch: New file.  Manually refresh
   3508 	MULTISUBDIR with $(shell $(CXX) --print-multi-directory).
   3509 
   3510 2023-09-07  Bruno Victal  <mirai (a] makinata.eu>
   3511 
   3512 	* acinclude.m4: Update docbook xsl URI.
   3513 	* configure: Regenerate.
   3514 
   3515 2023-09-07  Bruno Victal  <mirai (a] makinata.eu>
   3516 
   3517 	* doc/Makefile.am: Fix 'doc-install-info' rule.
   3518 	Fix typo in commment.
   3519 	* doc/Makefile.in: Regenerate.
   3520 
   3521 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3522 
   3523 	* testsuite/27_io/filesystem/path/concat/94063.cc: Simplify
   3524 	dg-do target selector.
   3525 
   3526 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3527 
   3528 	* testsuite/config/default.exp: Remove trailing whitespace.
   3529 	* testsuite/lib/dg-options.exp: Likewise.
   3530 	* testsuite/lib/prune.exp: Likewise.
   3531 	* testsuite/libstdc++-abi/abi.exp: Likewise.
   3532 	* testsuite/libstdc++-dg/conformance.exp: Likewise.
   3533 	* testsuite/libstdc++-prettyprinters/prettyprinters.exp:
   3534 	Likewise.
   3535 	* testsuite/libstdc++-xmethods/xmethods.exp: Likewise.
   3536 	* testsuite/lib/libstdc++.exp: Likewise.
   3537 	(check_v3_target_c_std): Fix filename for temporary source file.
   3538 
   3539 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3540 
   3541 	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for mkdir,
   3542 	chmod, chdir, and getcwd.
   3543 	* config.h.in: Regenerate.
   3544 	* configure: Regenerate.
   3545 	* src/c++17/fs_ops.cc (create_dir): Use USE_MKDIR macro.
   3546 	(fs::current_path): Use USE_GETCWD and USE_CHDIR macros.
   3547 	(fs::permissions): Use USE_CHMOD macro.
   3548 	* src/filesystem/ops-common.h [FILESYSTEM_IS_WINDOWS]
   3549 	(chmod, mkdir, getcwd, chdir): Define new macros.
   3550 	[FILESYSTEM_IS_WINDOWS] (chmod, mkdir, getcwd, chdir): Use
   3551 	new macros.
   3552 	* src/filesystem/ops.cc (create_dir): Use USE_MKDIR macro.
   3553 	(fs::current_path): Use USE_GETCWD and USE_CHDIR macros.
   3554 	(fs::permissions): Use USE_CHMOD macro.
   3555 
   3556 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3557 
   3558 	* acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Disable by default
   3559 	for avr.
   3560 	* configure: Regenerate.
   3561 
   3562 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3563 
   3564 	* testsuite/23_containers/unordered_map/operations/1.cc: Add
   3565 	dg-options for C++20 mode.
   3566 	* testsuite/23_containers/unordered_multimap/operations/1.cc:
   3567 	Likewise.
   3568 	* testsuite/23_containers/unordered_multiset/operations/1.cc:
   3569 	Likewise.
   3570 	* testsuite/23_containers/unordered_set/operations/1.cc:
   3571 	Likewise.
   3572 	* testsuite/std/time/parse.cc: Move dg-options before dg-do.
   3573 
   3574 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3575 
   3576 	* testsuite/std/ranges/access/cbegin.cc: Adjust for C++23
   3577 	compatibility.
   3578 	* testsuite/std/ranges/access/cdata.cc: Likewise.
   3579 	* testsuite/std/ranges/access/cend.cc: Likewise.
   3580 	* testsuite/std/ranges/access/crbegin.cc: Likewise.
   3581 	* testsuite/std/ranges/access/crend.cc: Likewise.
   3582 	* testsuite/std/ranges/adaptors/take.cc: Likewise.
   3583 	* testsuite/std/ranges/adaptors/take_while.cc: Likewise.
   3584 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
   3585 
   3586 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3587 
   3588 	* include/bits/iterator_concepts.h (__imove::iter_move): Define
   3589 	poison pill as deleted for consistency.
   3590 	(__access::begin): Replace with a single declaration.
   3591 	* include/bits/ranges_base.h (__access::end, __access::rbegin)
   3592 	(__access::rend, __access::size): Likewise.
   3593 	* include/bits/version.def (ranges): Update value for C++23.
   3594 	* include/bits/version.h: Regenerate.
   3595 	* libsupc++/compare (__compare): Add missing poison pill
   3596 	overloads.
   3597 	* testsuite/std/ranges/version_c++23.cc: Adjust expected value
   3598 	of __cpp_lib_ranges.
   3599 	* testsuite/std/ranges/access/p2602.cc: New test.
   3600 
   3601 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3602 
   3603 	* include/bits/iterator_concepts.h (ranges::__cust_imove):
   3604 	Rename to ranges::__imove.
   3605 	(_IMove): Rename to _IterMove.
   3606 	(ranges::__cust_iswap): Rename to ranges::__iswap.
   3607 	(ranges::__cust): Rename to ranges::_Cpo.
   3608 	(ranges::__cust_access): Rename to ranges::__access.
   3609 	* include/bits/ranges_base.h (ranges::__cust_access): Rename to
   3610 	ranges::__access.
   3611 	(ranges::__cust): Rename to ranges::_Cpo.
   3612 	* include/std/concepts (ranges::__cust_swap):  Rename to
   3613 	ranges::__swap.
   3614 	(ranges::__cust): Rename to ranges::_Cpo.
   3615 	* libsupc++/compare (__cmp_cust): Rename to __compare.
   3616 	(__cmp_algo): Rename to _Cpo.
   3617 
   3618 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3619 
   3620 	* include/bits/version.def (ranges): Update value.
   3621 	* include/bits/version.h: Regenerate.
   3622 	* include/std/ranges (__detail::__boxable): Use
   3623 	move_constructible instead of copy_constructible for C++23.
   3624 	(__detail::__box<T>): Adjust constraints for partial
   3625 	specialization.
   3626 	(single_view, transform_view): Use __box_constructible instead
   3627 	of copy_constructible in constraints.
   3628 	(zip_transform_view, adjacent_transform_view, repeat_view): Use
   3629 	move_constructible instead of copy_constructible in constraints.
   3630 	* testsuite/std/ranges/adaptors/adjacent_transform/1.cc: Check
   3631 	construction from move-only argument.
   3632 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
   3633 	* testsuite/std/ranges/repeat/1.cc: Likewise.
   3634 	* testsuite/std/ranges/single_view.cc: Likewise.
   3635 	* testsuite/std/ranges/zip_transform/1.cc: Likewise.
   3636 	* testsuite/std/ranges/version_c++23.cc: Adjust expected value
   3637 	of __cpp_lib_ranges.
   3638 
   3639 2023-09-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3640 
   3641 	* testsuite/util/testsuite_iterators.h (is_customization_point_object):
   3642 	Remove parameter name.
   3643 
   3644 2023-09-06  Jonathan Wakely  <jwakely (a] redhat.com>
   3645 
   3646 	* acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Disable by default
   3647 	for freestanding.
   3648 	* configure: Regenerate.
   3649 
   3650 2023-09-04  Christophe Lyon  <christophe.lyon (a] linaro.org>
   3651 
   3652 	Revert
   3653 	2023-09-04  Christophe Lyon  <christophe.lyon (a] linaro.org>
   3654 
   3655 	PR libstdc++/111238
   3656 	* configure: Regenerate.
   3657 	* configure.ac: Call GLIBCXX_CHECK_LINKER_FEATURES in cross,
   3658 	non-Canadian builds.
   3659 
   3660 2023-09-04  Christophe Lyon  <christophe.lyon (a] linaro.org>
   3661 
   3662 	PR libstdc++/111238
   3663 	* configure: Regenerate.
   3664 	* configure.ac: Call GLIBCXX_CHECK_LINKER_FEATURES in cross,
   3665 	non-Canadian builds.
   3666 
   3667 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3668 
   3669 	* testsuite/26_numerics/complex/literals/types.cc: Remove
   3670 	dg-options and add target selector instead.
   3671 
   3672 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3673 
   3674 	* testsuite/tr1/6_containers/utility/pair.cc: Remove dg-options
   3675 	and qualify ambiguous calls to get.
   3676 	* testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Adjust
   3677 	expected result for std::pow(float, int) as per DR 550.
   3678 
   3679 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3680 
   3681 	* testsuite/20_util/auto_ptr/1.cc: Remove dg-options -std=c++03
   3682 	and add dg-warning for deprecation warnings.
   3683 	* testsuite/20_util/auto_ptr/2.cc: Likewise.
   3684 	* testsuite/20_util/auto_ptr/3.cc: Likewise.
   3685 	* testsuite/20_util/auto_ptr/3946.cc: Likewise.
   3686 	* testsuite/20_util/auto_ptr/4.cc: Likewise.
   3687 	* testsuite/20_util/auto_ptr/5.cc: Likewise.
   3688 	* testsuite/20_util/auto_ptr/6.cc: Likewise.
   3689 	* testsuite/20_util/auto_ptr/7.cc: Likewise.
   3690 	* testsuite/20_util/auto_ptr/assign_neg.cc: Likewise.
   3691 	* testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc:
   3692 	Likewise.
   3693 	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
   3694 	Likewise.
   3695 	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
   3696 	Likewise.
   3697 	* testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_rvalue_neg.cc:
   3698 	Likewise.
   3699 	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
   3700 	Likewise.
   3701 	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
   3702 	Likewise.
   3703 	* testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
   3704 	Likewise.
   3705 
   3706 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3707 
   3708 	PR libstdc++/26142
   3709 	* testsuite/23_containers/vector/26412-1.cc: Moved to...
   3710 	* testsuite/23_containers/vector/26142-1.cc: ...here.
   3711 	* testsuite/23_containers/vector/26412-2.cc: Moved to...
   3712 	* testsuite/23_containers/vector/26142-2.cc: ...here.
   3713 
   3714 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3715 
   3716 	* testsuite/20_util/bitset/107037.cc: Add c++98_only selector.
   3717 	* testsuite/26_numerics/complex/56111.cc: Likewise.
   3718 
   3719 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3720 
   3721 	* testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc:
   3722 	Add dg-options to restrict the test to C++98 mode.
   3723 	* testsuite/23_containers/list/requirements/explicit_instantiation/2.cc:
   3724 	Likewise.
   3725 
   3726 2023-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3727 
   3728 	* testsuite/20_util/expected/bad.cc: Add missing target
   3729 	selector.
   3730 
   3731 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3732 
   3733 	* testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Adjust
   3734 	expected errors.
   3735 	* testsuite/25_algorithms/equal/debug/constexpr_neg.cc:
   3736 	Likewise.
   3737 
   3738 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3739 
   3740 	* testsuite/27_io/filesystem/iterators/91067.cc: Add
   3741 	-Wno-self-move to options.
   3742 	* testsuite/27_io/filesystem/path/assign/copy.cc: Likewise.
   3743 
   3744 2023-09-01  Vladimir Palevich  <palevichva (a] gmail.com>
   3745 
   3746 	PR libstdc++/110879
   3747 	* include/bits/vector.tcc (_M_realloc_insert): End guard
   3748 	lifetime just before assignment to class members.
   3749 	(_M_default_append): Likewise.
   3750 
   3751 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3752 
   3753 	* src/c++17/fs_ops.cc (fs::absolute) [FILESYSTEM_IS_WINDOWS]:
   3754 	Use __resize_and_overwrite to fill buffer.
   3755 	(fs::read_symlink) [HAVE_READLINK]: Likewise.
   3756 	* src/filesystem/ops-common.h (get_temp_directory_from_env)
   3757 	[FILESYSTEM_IS_WINDOWS]: Likewise.
   3758 
   3759 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3760 
   3761 	PR libstdc++/111077
   3762 	* include/bits/atomic_base.h (__atomic_impl::__compare_exchange):
   3763 	Add _AtomicRef non-type template parameter and use a loop if it
   3764 	is true.
   3765 	(__atomic_impl::compare_exchange_weak): Add _AtomicRef NTTP.
   3766 	(__atomic_impl::compare_exchange_strong): Likewise.
   3767 	(atomic_ref::compare_exchange_weak): Use true for NTTP.
   3768 	(atomic_ref::compare_exchange_strong): Use true for NTTP.
   3769 	* testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc:
   3770 	Fix test to not rely on atomic_ref::load() to return an object
   3771 	with padding preserved.
   3772 
   3773 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3774 
   3775 	* testsuite/27_io/filesystem/path/108636.cc: Add dg-require for
   3776 	filesystem support.
   3777 
   3778 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3779 
   3780 	* src/c++20/tzdb.cc (tzdb::current_zone): Check configure macros
   3781 	for POSIX readlink before using filesystem::read_symlink.
   3782 
   3783 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3784 
   3785 	* acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Default to yes.
   3786 	* configure: Regenerate.
   3787 
   3788 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3789 
   3790 	* include/bits/chrono_io.h (_Parser::operator()): Set failbit
   3791 	early if invalid values are read when _M_need & _TimeOfDay is
   3792 	non-zero.
   3793 	* testsuite/std/time/parse.cc: Check that "25:59" cannot be
   3794 	parsed for "%H:%M".
   3795 
   3796 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3797 
   3798 	PR libstdc++/111162
   3799 	* include/bits/chrono_io.h (_Parser::Operator()): Check %C
   3800 	values are in range of year::min() to year::max().
   3801 	* testsuite/std/time/parse.cc: Check out of range centuries.
   3802 
   3803 2023-09-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3804 
   3805 	* include/std/format (__format::_Sink::_M_reset): Change second
   3806 	argument from iterator to offset.
   3807 
   3808 2023-08-24  Paul Dreik  <gccpatches (a] pauldreik.se>
   3809 
   3810 	PR libstdc++/111102
   3811 	* testsuite/std/format/string.cc: Check wide character format
   3812 	strings with out-of-range widths.
   3813 
   3814 2023-08-24  Paul Dreik  <gccpatches (a] pauldreik.se>
   3815 
   3816 	PR libstdc++/111102
   3817 	* include/std/format (__format::__parse_integer): Check for
   3818 	non-null pointer.
   3819 
   3820 2023-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3821 
   3822 	* testsuite/std/format/functions/format_to.cc: Avoid warning for
   3823 	unused variables.
   3824 
   3825 2023-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3826 
   3827 	* include/std/atomic: Add comment to #ifdef and fix indentation.
   3828 	* include/std/ostream: Check __glibcxx_syncbuf instead of
   3829 	__cplusplus and _GLIBCXX_HOSTED.
   3830 	* include/std/thread: Add comment to #ifdef.
   3831 
   3832 2023-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3833 
   3834 	* include/bits/version.def (__cpp_lib_ratio): Define.
   3835 	* include/bits/version.h: Regenerate.
   3836 	* include/std/ratio (quecto, ronto, yocto, zepto)
   3837 	(zetta, yotta, ronna, quetta): Define.
   3838 	* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Adjust
   3839 	dg-error line numbers.
   3840 
   3841 2023-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3842 
   3843 	* python/libstdcxx/v6/printers.py (StdLocalePrinter): New
   3844 	printer class.
   3845 	* testsuite/libstdc++-prettyprinters/locale.cc: New test.
   3846 
   3847 2023-08-24  Jonathan Wakely  <jwakely (a] redhat.com>
   3848 
   3849 	PR libstdc++/110944
   3850 	* python/libstdcxx/v6/printers.py (StdExpOptionalPrinter): Do
   3851 	not show template arguments.
   3852 	(StdVariantPrinter): Likewise.
   3853 	* testsuite/libstdc++-prettyprinters/compat.cc: Adjust expected
   3854 	output.
   3855 	* testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
   3856 	* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
   3857 
   3858 2023-08-23  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3859 
   3860 	* testsuite/util/replacement_memory_operators.h
   3861 	(counter::scope): New, capture and reset counter count at construction and
   3862 	restore it at destruction.
   3863 	(counter::check_new): Add scope instantiation.
   3864 	* testsuite/23_containers/unordered_map/96088.cc (main):
   3865 	Add counter::scope instantiation.
   3866 	* testsuite/23_containers/unordered_multimap/96088.cc (main): Likewise.
   3867 	* testsuite/23_containers/unordered_multiset/96088.cc (main): Likewise.
   3868 	* testsuite/23_containers/unordered_set/96088.cc (main): Likewise.
   3869 	* testsuite/ext/malloc_allocator/deallocate_local.cc (main): Likewise.
   3870 	* testsuite/ext/new_allocator/deallocate_local.cc (main): Likewise.
   3871 	* testsuite/ext/throw_allocator/deallocate_local.cc (main): Likewise.
   3872 	* testsuite/ext/pool_allocator/allocate_chunk.cc (started): New global.
   3873 	(operator new(size_t)): Check started.
   3874 	(main): Set/Unset started.
   3875 	* testsuite/17_intro/no_library_allocation.cc: New test case.
   3876 
   3877 2023-08-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3878 
   3879 	* testsuite/18_support/nested_exception/rethrow_if_nested-term.cc:
   3880 	Call std::set_terminate before throwing the nested exception.
   3881 
   3882 2023-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3883 
   3884 	PR target/111060
   3885 	* include/std/format (formatter): Only define specializations
   3886 	for 16-bit floating-point types for C++23.
   3887 	* include/std/limits (numeric_limits): Likewise.
   3888 
   3889 2023-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3890 
   3891 	* include/bits/chrono_io.h (operator<<): Make uses of wide
   3892 	strings with streams and std::format type-dependent on _CharT.
   3893 	* include/std/format [!_GLIBCXX_USE_WCHAR_T] Do not use
   3894 	__to_wstring_numeric.
   3895 
   3896 2023-08-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3897 
   3898 	* include/bits/chrono_io.h (operator<<): Use __format_context.
   3899 	* include/std/format (__format::__format_context): New alias
   3900 	template.
   3901 	[!_GLIBCXX_USE_WCHAR_T] (wformat_args, make_wformat_arg):
   3902 	Disable.
   3903 
   3904 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3905 
   3906 	Revert:
   3907 	2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3908 
   3909 	* config/locale/generic/c_locale.cc (__convert_to_v): Reuse
   3910 	double overload for long double if possible.
   3911 
   3912 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3913 
   3914 	* src/c++20/tzdb.cc (tzdata_file, leaps_file): Change type to
   3915 	std::string_view.
   3916 
   3917 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3918 
   3919 	* config/locale/generic/c_locale.cc (__convert_to_v): Reuse
   3920 	double overload for long double if possible.
   3921 
   3922 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3923 
   3924 	* src/c++98/localename.cc (is_C_locale): New function.
   3925 	(locale::locale(const char*)): Use is_C_locale.
   3926 
   3927 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3928 
   3929 	PR libstdc++/110945
   3930 	* include/bits/basic_string.h (basic_string::assign(Iter, Iter)):
   3931 	Dispatch to _M_replace or move assignment from a temporary,
   3932 	based on the iterator type.
   3933 
   3934 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3935 
   3936 	* include/std/format (formatter): Add partial specializations
   3937 	for extended floating-point types.
   3938 	* testsuite/std/format/functions/format.cc: Move test_float128()
   3939 	to ...
   3940 	* testsuite/std/format/formatter/ext_float.cc: New test.
   3941 
   3942 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3943 
   3944 	* include/bits/c++config (__gnu_cxx::__bfloat16_t): Define
   3945 	whenever __BFLT16_DIG__ is defined, not only for C++23.
   3946 	* include/std/limits (numeric_limits<bfloat16_t>): Likewise.
   3947 	(numeric_limits<_Float16>, numeric_limits<_Float32>)
   3948 	(numeric_limits<_Float64>): Likewise for other extended
   3949 	floating-point types.
   3950 
   3951 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3952 
   3953 	* include/experimental/internet (address_v4::to_string): Remove
   3954 	unused parameter name.
   3955 
   3956 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3957 
   3958 	* libsupc++/compare (__cmp_cat::__unseq): Make ctor consteval.
   3959 	* testsuite/18_support/comparisons/categories/zero_neg.cc: Prune
   3960 	excess errors caused by invalid consteval calls.
   3961 
   3962 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3963 
   3964 	* include/bits/chrono_io.h (__units_suffix_misc): Remove.
   3965 	(__units_suffix): Return a known suffix as string view, do not
   3966 	write unknown suffixes to a buffer.
   3967 	(__fmt_units_suffix): New function that formats the suffix using
   3968 	std::format_to.
   3969 	(operator<<, __chrono_formatter::_M_q): Use __fmt_units_suffix.
   3970 	(__chrono_formatter::_M_Z): Correct lifetime of wstring.
   3971 
   3972 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3973 
   3974 	* include/std/format [_GLIBCXX_USE_WCHAR_T]: Guard all wide
   3975 	string formatters with this macro.
   3976 	(__formatter_int::_M_format_int, __formatter_fp::format)
   3977 	(formatter<const void*, C>::format): Use __to_wstring_numeric
   3978 	instead of std::ctype::widen.
   3979 	(__formatter_fp::_M_localize): Use hardcoded wchar_t values
   3980 	instead of std::ctype::widen.
   3981 	* testsuite/std/format/functions/format.cc: Add more checks for
   3982 	wstring formatting of arithmetic types.
   3983 
   3984 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3985 
   3986 	* include/bits/basic_string.h (to_string(floating-point-type)):
   3987 	Implement using std::to_chars for C++26.
   3988 	* include/bits/version.def (__cpp_lib_to_string): Define.
   3989 	* include/bits/version.h: Regenerate.
   3990 	* testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
   3991 	Adjust expected result in C++26 mode.
   3992 	* testsuite/21_strings/basic_string/numeric_conversions/char/to_string.cc:
   3993 	Likewise.
   3994 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/dr1261.cc:
   3995 	Likewise.
   3996 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/to_wstring.cc:
   3997 	Likewise.
   3998 	* testsuite/21_strings/basic_string/numeric_conversions/char/to_string_float.cc:
   3999 	New test.
   4000 	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/to_wstring_float.cc:
   4001 	New test.
   4002 	* testsuite/21_strings/basic_string/numeric_conversions/version.cc:
   4003 	New test.
   4004 
   4005 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4006 
   4007 	* include/bits/basic_string.h (to_string(integral-type)): Use
   4008 	resize_and_overwrite when available.
   4009 	(__to_wstring_numeric): New helper functions.
   4010 	(to_wstring): Use std::to_string then __to_wstring_numeric.
   4011 	* testsuite/21_strings/basic_string/numeric_conversions/char/to_string_int.cc:
   4012 	Remove check for no excess capacity.
   4013 
   4014 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4015 
   4016 	* include/bits/basic_string.h (__resize_and_overwrite): New
   4017 	function.
   4018 	* include/bits/basic_string.tcc (__resize_and_overwrite): New
   4019 	function.
   4020 	(resize_and_overwrite): Simplify by using reserve instead of
   4021 	growing the string manually. Adjust for C++11 compatibility.
   4022 	* include/bits/cow_string.h (resize_and_overwrite): New
   4023 	function.
   4024 	(__resize_and_overwrite): New function.
   4025 	* include/bits/version.def (__cpp_lib_string_resize_and_overwrite):
   4026 	Do not depend on cxx11abi.
   4027 	* include/bits/version.h: Regenerate.
   4028 	* include/std/format (__formatter_fp::_S_resize_and_overwrite):
   4029 	Remove.
   4030 	(__formatter_fp::format, __formatter_fp::_M_localize): Use
   4031 	__resize_and_overwrite instead of _S_resize_and_overwrite.
   4032 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
   4033 	Adjust for C++11 compatibility when included by ...
   4034 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite_ext.cc:
   4035 	New test.
   4036 
   4037 2023-08-17  Patrick Palka  <ppalka (a] redhat.com>
   4038 
   4039 	* include/bits/regex.h (regex_iterator::iterator_concept):
   4040 	Define for C++20 as per P2770R0.
   4041 	(regex_token_iterator::iterator_concept): Likewise.
   4042 	* include/std/ranges (__detail::__as_lvalue): Define.
   4043 	(join_view::_Iterator): Befriend join_view.
   4044 	(join_view::_Iterator::_M_satisfy): Use _M_get_outer
   4045 	instead of _M_outer.
   4046 	(join_view::_Iterator::_M_get_outer): Define.
   4047 	(join_view::_Iterator::_Iterator): Split constructor taking
   4048 	_Parent argument into two as per P2770R0.  Remove constraint on
   4049 	default constructor.
   4050 	(join_view::_Iterator::_M_outer): Make this data member present
   4051 	only when the underlying range is forward.
   4052 	(join_view::_Iterator::operator++): Use _M_get_outer instead of
   4053 	_M_outer.
   4054 	(join_view::_Iterator::operator--): Use __as_lvalue helper.
   4055 	(join_view::_Iterator::operator==): Adjust constraints as per
   4056 	P2770R0.
   4057 	(join_view::_Sentinel::__equal): Use _M_get_outer instead of
   4058 	_M_outer.
   4059 	(join_view::_M_outer): New data member when the underlying range
   4060 	is non-forward.
   4061 	(join_view::begin): Adjust definition as per P2770R0.
   4062 	(join_view::end): Likewise.
   4063 	(join_with_view::_M_outer_it): New data member when the
   4064 	underlying range is non-forward.
   4065 	(join_with_view::begin): Adjust definition as per P2770R0.
   4066 	(join_with_view::end): Likewise.
   4067 	(join_with_view::_Iterator::_M_outer_it): Make this data member
   4068 	present only when the underlying range is forward.
   4069 	(join_with_view::_Iterator::_M_get_outer): Define.
   4070 	(join_with_view::_Iterator::_Iterator): Split constructor
   4071 	taking _Parent argument into two as per P2770R0.  Remove
   4072 	constraint on default constructor.
   4073 	(join_with_view::_Iterator::_M_update_inner): Adjust definition
   4074 	as per P2770R0.
   4075 	(join_with_view::_Iterator::_M_get_inner): Likewise.
   4076 	(join_with_view::_Iterator::_M_satisfy): Adjust calls to
   4077 	_M_get_inner.  Use _M_get_outer instead of _M_outer_it.
   4078 	(join_with_view::_Iterator::operator==): Adjust constraints
   4079 	as per P2770R0.
   4080 	(join_with_view::_Sentinel::operator==): Use _M_get_outer
   4081 	instead of _M_outer_it.
   4082 	* testsuite/std/ranges/adaptors/p2770r0.cc: New test.
   4083 
   4084 2023-08-17  Patrick Palka  <ppalka (a] redhat.com>
   4085 
   4086 	PR libstdc++/108827
   4087 	* include/std/ranges (__adaptor::_RangeAdaptorClosure):
   4088 	Convert into a CRTP class template.  Move hidden operator|
   4089 	friends into namespace scope and adjust their constraints.
   4090 	(__closure::__is_range_adaptor_closure_fn): Define.
   4091 	(__closure::__is_range_adaptor_closure): Define.
   4092 	(__adaptor::_Partial): Adjust use of _RangeAdaptorClosure.
   4093 	(__adaptor::_Pipe): Likewise.
   4094 	(views::_All): Likewise.
   4095 	(views::_Join): Likewise.
   4096 	(views::_Common): Likewise.
   4097 	(views::_Reverse): Likewise.
   4098 	(views::_Elements): Likewise.
   4099 	(views::_Adjacent): Likewise.
   4100 	(views::_AsRvalue): Likewise.
   4101 	(views::_Enumerate): Likewise.
   4102 	(views::_AsConst): Likewise.
   4103 	* testsuite/std/ranges/adaptors/all.cc: Reinstate assertion
   4104 	expecting that adding empty range adaptor closure objects to a
   4105 	pipeline doesn't increase the size of a pipeline.
   4106 
   4107 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4108 
   4109 	* include/std/format (__format::_Pres_type): Add _Pres_F.
   4110 	(__formatter_fp::parse): Use _Pres_F for 'F'.
   4111 	(__formatter_fp::format): Set __upper for _Pres_F.
   4112 	* testsuite/std/format/functions/format.cc: Check formatting of
   4113 	infinity and NaN for each presentation type.
   4114 
   4115 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4116 
   4117 	* include/Makefile.in: Regenerate.
   4118 
   4119 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4120 
   4121 	* testsuite/24_iterators/move_iterator/p2520r0.cc: Add no_pch.
   4122 	* testsuite/std/format/functions/format.cc: Likewise.
   4123 	* testsuite/std/format/functions/format_c++23.cc: Likewise.
   4124 
   4125 2023-08-17  Jonathan Wakely  <jwakely (a] redhat.com>
   4126 
   4127 	* testsuite/lib/dg-options.exp (add_options_for_no_pch): Remove
   4128 	any "-include bits/stdc++.h" from options and add the macro to
   4129 	the existing options instead of replacing them.
   4130 
   4131 2023-08-16  Jonathan Wakely  <jwakely (a] redhat.com>
   4132 
   4133 	* include/bits/basic_string.tcc (resize_and_overwrite): Invoke
   4134 	the callable with the same size as resize_and_overwrite was
   4135 	called with.
   4136 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
   4137 	Check with small values for the new size.
   4138 	* testsuite/std/format/functions/format.cc: Check wide
   4139 	formatting of double values that produce small strings.
   4140 	* testsuite/std/format/functions/format_c++23.cc: New test.
   4141 
   4142 2023-08-16  Jonathan Wakely  <jwakely (a] redhat.com>
   4143 
   4144 	* include/bits/version.def (stds): Update value for C++23.
   4145 	* include/bits/version.h: Regenerate.
   4146 
   4147 2023-08-16  Jonathan Wakely  <jwakely (a] redhat.com>
   4148 
   4149 	* testsuite/25_algorithms/pstl/alg_sorting/set_difference.cc:
   4150 	Fix name of upstream file this was derived from.
   4151 	* testsuite/25_algorithms/pstl/alg_sorting/set_intersection.cc:
   4152 	Likewise.
   4153 	* testsuite/25_algorithms/pstl/alg_sorting/set_symmetric_difference.cc:
   4154 	Likewise.
   4155 	* testsuite/25_algorithms/pstl/alg_sorting/set_union.cc:
   4156 	Likewise.
   4157 	* testsuite/25_algorithms/pstl/alg_sorting/set_util.h: Likewise.
   4158 
   4159 2023-08-16  Arsen Arsenovi  <arsen (a] aarsen.me>
   4160 
   4161 	* libsupc++/typeinfo: Switch to bits/version.h for
   4162 	__cpp_lib_constexpr_typeinfo.
   4163 	* libsupc++/new: Switch to bits/version.h for
   4164 	__cpp_lib_{launder,hardware_interference_size,destroying_delete}.
   4165 	(launder): Guard behind __cpp_lib_launder.
   4166 	(hardware_destructive_interference_size)
   4167 	(hardware_constructive_interference_size): Guard behind
   4168 	__cpp_lib_hardware_interference_size.
   4169 	* libsupc++/exception: Switch to bits/version.h for
   4170 	__cpp_lib_uncaught_exceptions.
   4171 	(uncaught_exceptions): Guard behind __cpp_lib_uncaught_exceptions.
   4172 	* libsupc++/compare: Switch to bits/version.h for
   4173 	__cpp_lib_three_way_comparison.
   4174 	(three_way_comparable, three_way_comparable_with)
   4175 	(compare_three_way, weak_order, strong_order, partial_order):
   4176 	Guard behind __cpp_lib_three_way_comparison >= 201907L.
   4177 	* include/std/chrono: Drop __cpp_lib_chrono definition.
   4178 	* include/std/vector: Switch to bits/version.h for
   4179 	__cpp_lib_erase_if.
   4180 	(erase, erase_if): Guard behind __cpp_lib_erase_if.
   4181 	* include/std/variant: Switch to bits/version.h for
   4182 	__cpp_lib_variant.  Guard whole header behind that FTM.
   4183 	* include/std/utility: Switch to bits/version.h for
   4184 	__cpp_lib_{exchange_function,constexpr_algorithms,as_const},
   4185 	__cpp_lib_{integer_comparison_functions,to_underlying}, and
   4186 	__cpp_lib_unreachable.
   4187 	(exchange): Guard behind __cpp_lib_exchange_function.
   4188 	(cmp_equal, cmp_not_equal, cmp_less, cmp_greater, cmp_less_equal)
   4189 	(cmp_greater_equal, in_range): Guard behind
   4190 	__cpp_lib_integer_comparison_functions.
   4191 	(to_underlying): Guard behind __cpp_lib_to_underlying.
   4192 	(unreachable): Guard behind __cpp_lib_unreachable.
   4193 	* include/std/type_traits: Switch to bits/version.h for
   4194 	__cpp_lib_is_{null_pointer,final,nothrow_convertible,aggregate},
   4195 	__cpp_lib_is_{constant_evaluated,invocable,layout_compatible},
   4196 	__cpp_lib_is_{pointer_interconvertible,scoped_enum,swappable},
   4197 	__cpp_lib_{logical_traits,reference_from_temporary,remove_cvref},
   4198 	__cpp_lib_{result_of_sfinae,transformation_trait_aliases},
   4199 	__cpp_lib_{type_identity,type_trait_variable_templates},
   4200 	__cpp_lib_{unwrap_ref,void_t,integral_constant_callable},
   4201 	__cpp_lib_{bool_constant,bounded_array_traits}, and
   4202 	__cpp_lib_has_unique_object_representations.
   4203 	(integral_constant::operator()): Guard behind
   4204 	__cpp_lib_integral_constant_callable.
   4205 	(bool_constant): Guard behind __cpp_lib_bool_constant.
   4206 	(conjunction, disjunction, negation, conjunction_v, disjunction_v)
   4207 	(negation_v): Guard behind __cpp_lib_logical_traits.
   4208 	(is_null_pointer): Guard behind __cpp_lib_is_null_pointer.
   4209 	(is_final): Guard behind __cpp_lib_is_final.
   4210 	(is_nothrow_convertible, is_nothrow_convertible_v): Guard behind
   4211 	__cpp_lib_is_nothrow_convertible.
   4212 	(remove_const_t, remove_volatile_t, remove_cv_t)
   4213 	(add_const_t, add_volatile_t, add_cv_t): Guard behind
   4214 	__cpp_lib_transformation_trait_aliases.
   4215 	(void_t): Guard behind __cpp_lib_void_t.
   4216 	(is_swappable_with_v, is_nothrow_swappable_with_v)
   4217 	(is_swappable_with, is_nothrow_swappable_with): Guard behind
   4218 	__cpp_lib_is_swappable.
   4219 	(is_nothrow_invocable_r, is_invocable_r, invoke_result)
   4220 	(is_invocable, invoke_result_t): Guard behind
   4221 	__cpp_lib_is_invocable.
   4222 	(alignment_of_v, extent_v, has_virtual_destructor_v)
   4223 	(is_abstract_v, is_arithmetic_v, is_array_v)
   4224 	(is_assignable_v, is_base_of_v, is_class_v, is_compound_v)
   4225 	(is_constructible_v, is_const_v, is_convertible_v)
   4226 	(is_copy_assignable_v, is_copy_constructible_v)
   4227 	(is_default_constructible_v, is_destructible_v)
   4228 	(is_empty_v, is_enum_v, is_final_v, is_floating_point_v)
   4229 	(is_function_v, is_fundamental_v, is_integral_v)
   4230 	(is_invocable_r_v, is_invocable_v, is_literal_type_v)
   4231 	(is_lvalue_reference_v, is_member_function_pointer_v)
   4232 	(is_member_object_pointer_v, is_member_pointer_v)
   4233 	(is_move_assignable_v, is_move_constructible_v)
   4234 	(is_nothrow_assignable_v, is_nothrow_constructible_v)
   4235 	(is_nothrow_copy_assignable_v, is_nothrow_copy_constructible_v)
   4236 	(is_nothrow_default_constructible_v, is_nothrow_destructible_v)
   4237 	(is_nothrow_invocable_r_v, is_nothrow_invocable_v)
   4238 	(is_nothrow_move_assignable_v, is_nothrow_move_constructible_v)
   4239 	(is_null_pointer_v, is_object_v, is_pod_v, is_pointer_v)
   4240 	(is_polymorphic_v, is_reference_v, is_rvalue_reference_v)
   4241 	(is_same_v, is_scalar_v, is_signed_v, is_standard_layout_v)
   4242 	(is_trivially_assignable_v, is_trivially_constructible_v)
   4243 	(is_trivially_copyable_v, is_trivially_copy_assignable_v)
   4244 	(is_trivially_copy_constructible_v)
   4245 	(is_trivially_default_constructible_v)
   4246 	(is_trivially_destructible_v, is_trivially_move_assignable_v)
   4247 	(is_trivially_move_constructible_v, is_trivial_v, is_union_v)
   4248 	(is_unsigned_v, is_void_v, is_volatile_v, rank_v, as variadic):
   4249 	Guard behind __cpp_lib_type_trait_variable_templates.
   4250 	(has_unique_object_representations)
   4251 	(has_unique_object_representations_v): Guard behind
   4252 	__cpp_lib_has_unique_object_representation.
   4253 	(is_aggregate): Guard behind __cpp_lib_is_aggregate.
   4254 	(remove_cvref, remove_cvref_t): Guard behind
   4255 	__cpp_lib_remove_cvref.
   4256 	(type_identity, type_identity_t): Guard behind
   4257 	__cpp_lib_type_identity.
   4258 	(unwrap_reference, unwrap_reference_t, unwrap_ref_decay)
   4259 	(unwrap_ref_decay_t): Guard behind __cpp_lib_unwrap_ref.
   4260 	(is_bounded_array_v, is_unbounded_array_v, is_bounded_array)
   4261 	(is_unbounded_array): Guard behind __cpp_lib_bounded_array_traits.
   4262 	(is_scoped_enum, is_scoped_enum_v): Guard behind
   4263 	__cpp_lib_is_scoped_enum.
   4264 	(reference_constructs_from_temporary)
   4265 	(reference_constructs_from_temporary_v): Guard behind
   4266 	__cpp_lib_reference_from_temporary.
   4267 	* include/std/tuple: Switch to bits/version.h for
   4268 	__cpp_lib_{constexpr_tuple,tuple_by_type,apply_make_from_tuple}.
   4269 	(get<T>): Guard behind __cpp_lib_tuple_by_type.
   4270 	(apply): Guard behind __cpp_lib_apply.
   4271 	(make_from_tuple): Guard behind __cpp_lib_make_from_tuple.
   4272 	* include/std/syncstream: Switch to bits/version.h for
   4273 	__cpp_lib_syncbuf.  Guard header behind that FTM.
   4274 	* include/std/string_view: Switch to bits/version.h for
   4275 	__cpp_lib_{string_{view,contains},constexpr_string_view} and
   4276 	__cpp_lib_starts_ends_with.
   4277 	(basic_string_view::starts_with, basic_string_view::ends_with):
   4278 	Guard behind __cpp_lib_starts_ends_with.
   4279 	[C++23 && _GLIBCXX_HOSTED && !defined(__cpp_lib_string_contains)]:
   4280 	Assert as impossible ithout a bug in C++23.
   4281 	* include/std/string: Switch to bits/version.h for
   4282 	__cpp_lib_erase_if.
   4283 	(erase, erase_if): Guard behind __cpp_lib_erase_if.
   4284 	* include/std/thread: Switch to bits/version.h for
   4285 	__cpp_lib_jthread.
   4286 	* include/std/stop_token: Switch to bits/version.h for
   4287 	__cpp_lib_jthread.
   4288 	* include/std/spanstream: Switch to bits/version.h for
   4289 	__cpp_lib_spanstream.  Guard header behind that FTM.
   4290 	* include/std/span: Switch to bits/version.h for __cpp_lib_span.
   4291 	Guard header behind that FTM.
   4292 	* include/std/source_location: Switch to bits/version.h for
   4293 	__cpp_lib_source_location.  Guard header with that FTM.
   4294 	* include/std/shared_mutex: Switch to bits/version.h for
   4295 	__cpp_lib_shared{,_timed}_mutex.
   4296 	(shared_mutex): Guard behind __cpp_lib_shared_mutex.
   4297 	* include/std/semaphore: Switch to bits/version.h for
   4298 	__cpp_lib_semaphore.  Guard header behind that FTM.
   4299 	* include/std/ranges: Switch to bits/version.h for
   4300 	__cpp_lib_ranges_{zip,chunk{,_by},slide,join_with},
   4301 	__cpp_lib_ranges_{repeat_stride,cartesian_product,as_rvalue},
   4302 	and __cpp_lib_ranges_{as_const,enumerate,iota}.
   4303 	(ranges::zip et al, ranges::chunk et al, ranges::slide et al)
   4304 	(ranges::chunk_by et al, ranges::join_with et al)
   4305 	(ranges::stride et al, ranges::cartesian_product et al)
   4306 	(ranges::as_rvalue et al, ranges::as_const et al)
   4307 	(ranges::enumerate et al): Guard behind appropriate FTM.
   4308 	* include/std/optional: Switch to bits/version.h for
   4309 	__cpp_lib_optional.  Guard header behind that FTM.
   4310 	* include/std/numeric: Switch to bits/version.h for
   4311 	__cpp_lib_{gcd{,_lcm},lcm,constexpr_numeric,interpolate}
   4312 	and __cpp_lib_parallel_algorithm.
   4313 	(gcd, lcm): Guard behind __cpp_lib_gcd_lcm.
   4314 	(midpoint): Guard behind __cpp_lib_interpolate.
   4315 	* include/std/numbers: Switch to bits/version.h for
   4316 	__cpp_lib_math_constants.  Guard header behind that FTM.
   4317 	* include/std/mutex: Switch to bits/version.h for
   4318 	__cpp_lib_scoped_lock.
   4319 	(scoped_Lock): Guard behind __cpp_lib_scoped_lock.
   4320 	* include/std/memory_resource: Switch to bits/version.h for
   4321 	__cpp_lib_{polymorphic_allocator,memory_resource}.
   4322 	(synchronized_pool_resource): Guard behind
   4323 	__cpp_lib_memory_resource >= 201603L.
   4324 	(polymorphic_allocator): Guard behind
   4325 	__cpp_lib_polymorphic_allocator.
   4326 	* include/std/memory: Switch to bits/version.h for
   4327 	__cpp_lib_{parallel_algorithm,atomic_value_initialization}.
   4328 	* include/std/list: Switch to bits/version.h for
   4329 	__cpp_lib_erase_if.
   4330 	(erase, erase_if): Guard behind __cpp_lib_erase_if.
   4331 	* include/std/latch: Switch to bits/version.h for __cpp_lib_latch.
   4332 	Guard header behind that FTM.
   4333 	* include/std/iterator: Switch to bits/version.h for
   4334 	__cpp_lib_null_iterators.
   4335 	* include/std/iomanip: Switch to bits/version.h for
   4336 	__cpp_lib_quoted_string_io.
   4337 	(quoted): Guard behind __cpp_lib_quoted_string_io.
   4338 	* include/std/functional: Switch to bits/version.h for
   4339 	__cpp_lib_{invoke{,_r},constexpr_functional,bind_front} and
   4340 	__cpp_lib_{not_fn,booyer_moore_searcher}.
   4341 	(invoke): Guard behind __cpp_lib_invoke.
   4342 	(invoke_r): Guard behind __cpp_lib_invoke_r.
   4343 	(bind_front): Guard behind __cpp_lib_bind_front.
   4344 	(not_fn): Guard behind __cpp_lib_not_fn.
   4345 	(boyer_moore_searcher, boyer_moore_horspool_searcher): Guard
   4346 	definition behind __cpp_lib_boyer_moore_searcher.
   4347 	* include/std/forward_list: Switch to bits/version.h for
   4348 	__cpp_lib_erase_if.
   4349 	(erase, erase_if): Guard behind __cpp_lib_erase_if.
   4350 	* include/std/format: Switch to bits/version.h for
   4351 	__cpp_lib_format.  Guard header behind that FTM.
   4352 	* include/std/filesystem: Switch to bits/version.h for
   4353 	__cpp_lib_filesystem.  Guard header behind that FTM.
   4354 	* include/std/expected: Switch to bits/version.h for
   4355 	__cpp_lib_expected.  Guard header behind it.
   4356 	* include/std/execution: Switch to bits/version.h for
   4357 	__cpp_lib_{execution,parallel_algorithm}.  Guard header behind
   4358 	either.
   4359 	* include/std/deque: Switch to bits/version.h for
   4360 	__cpp_lib_erase_if.
   4361 	(erase, erase_if): Guard behind __cpp_lib_erase_if.
   4362 	* include/std/coroutine: Switch to bits/version.h for
   4363 	__cpp_lib_coroutine.  Guard header behind that FTM.
   4364 	* include/std/concepts: Switch to bits/version.h for
   4365 	__cpp_lib_concepts.  Guard header behind that FTM.
   4366 	* include/std/complex: Switch to bits/version.h for
   4367 	__cpp_lib_{complex_udls,constexpr_complex}.
   4368 	(operator""if, operator""i, operator""il): Guard behind
   4369 	__cpp_lib_complex_udls.
   4370 	* include/std/charconv: Swtich to bits/version.h for
   4371 	__cpp_lib_{to_chars,constexpr_charconv}.
   4372 	* include/std/bitset: Switch to bits/version.h for
   4373 	__cpp_lib_constexpr_bitset.
   4374 	* include/std/bit: Switch to bits/version.h for
   4375 	__cpp_lib_{bit_cast,byteswap,bitops,int_pow2,endian}.
   4376 	(bit_cast): Guard behind __cpp_lib_bit_cast.
   4377 	(byteswap): Guard behind __cpp_lib_byteswap.
   4378 	(rotl, rotr, countl_zero, countl_one, countr_zero, countr_one)
   4379 	(popcount): Guard behind __cpp_lib_bitops.
   4380 	(has_single_bit, bit_ceil, bit_floor, bit_width): Guard behind
   4381 	__cpp_lib_int_pow2.
   4382 	(endian): Guard behind __cpp_lib_endian.
   4383 	* include/std/barrier: Switch to bits/version.h for
   4384 	__cpp_lib_barrier.  Guard header behind that FTM.
   4385 	* include/std/atomic: Switch to bits/version.h for
   4386 	__cpp_lib_atomic_{is_always_lock_free,float,ref}
   4387 	and __cpp_lib_lock_free_type_aliases.
   4388 	(*::is_always_lock_free): Guard behind
   4389 	__cpp_lib_atomic_is_always_lock_free.
   4390 	(atomic<float>): Guard behind __cpp_lib_atomic_float.
   4391 	(atomic_ref): Guard behind __cpp_lib_atomic_ref.
   4392 	(atomic_signed_lock_free, atomic_unsigned_lock_free): Guard behind
   4393 	__cpp_lib_atomic_lock_free_type_aliases.
   4394 	* include/std/array: Switch to bits/version.h for
   4395 	__cpp_lib_to_array.
   4396 	(to_array): Guard behind __cpp_lib_to_array.
   4397 	* include/std/any: Switch to bits/version.h for __cpp_lib_any.
   4398 	Guard header behind that FTM.
   4399 	* include/std/algorithm: Switch to bits/version.h for
   4400 	__cpp_lib_parallel_algorithm.
   4401 	* include/c_global/cstddef: Switch to bits/version.h for
   4402 	__cpp_lib_byte.
   4403 	(byte): Guard behind __cpp_lib_byte.
   4404 	* include/c_global/cmath: Switch to bits/version.h for
   4405 	__cpp_lib_{hypot,interpolate}.
   4406 	(hypot3): Guard behind __cpp_lib_hypot.
   4407 	(lerp): Guard behind __cpp_lib_interpolate.
   4408 	* include/c_compatibility/stdatomic.h: Switch to
   4409 	bits/stl_version.h for __cpp_lib_atomic.  Guard header behind that
   4410 	FTM.
   4411 	* include/bits/utility.h: Switch to bits/version.h for
   4412 	__cpp_lib_{tuple_element_t,integer_sequence,ranges_zip}.
   4413 	(tuple_element_t): Guard behind __cpp_lib_tuple_element_t.
   4414 	(integer_sequence et al): Guard behind __cpp_lib_integer_sequence.
   4415 	* include/bits/uses_allocator_args.h: Switch to bits/version.h for
   4416 	__cpp_lib_make_obj_using_allocator.  Guard header behind that FTM.
   4417 	* include/bits/unordered_map.h: Switch to bits/version.h for
   4418 	__cpp_lib_unordered_map_try_emplace.
   4419 	(try_emplace): Guard behind __cpp_lib_unordered_map_try_emplace.
   4420 	* include/bits/unique_ptr.h: Switch to bits/version.h for
   4421 	__cpp_lib_{constexpr_memory,make_unique}.
   4422 	(make_unique): Guard behind __cpp_lib_make_unique.
   4423 	* include/bits/stl_vector.h: Switch to bits/version.h for
   4424 	__cpp_lib_constexpr_vector.
   4425 	* include/bits/stl_uninitialized.h: Switch to bits/version.h for
   4426 	__cpp_lib_raw_memory_algorithms.
   4427 	(uninitialized_default_construct)
   4428 	(uninitialized_default_construct_n, uninitialized_move)
   4429 	(uninitialized_move_n, uninitialized_value_construct)
   4430 	(uninitialized_value_construct_n): Guard behind
   4431 	__cpp_lib_raw_memory_algorithms.
   4432 	* include/bits/stl_tree.h: Switch to bits/version.h for
   4433 	__cpp_lib_generic_associative_lookup.
   4434 	* include/bits/stl_stack.h: Switch to bits/version.h for
   4435 	__cpp_lib_adaptor_iterator_pair_constructor.
   4436 	(stack): Guard iterator-pair constructor behind
   4437 	__cpp_lib_adaptor_iterator_pair_constructor.
   4438 	* include/bits/stl_queue.h: Switch to bits/version.h for
   4439 	__cpp_lib_adaptor_iterator_pair_constructor.
   4440 	(queue): Guard iterator-pair constructor behind
   4441 	__cpp_lib_adaptor_iterator_pair_constructor.
   4442 	* include/bits/stl_pair.h: Switch to bits/version.h for
   4443 	__cpp_lib_{concepts,tuples_by_type}.
   4444 	(get): Guard type-getting overloads behind
   4445 	__cpp_lib_tuples_by_type.
   4446 	* include/bits/stl_map.h: Switch to bits/version.h for
   4447 	__cpp_lib_map_try_emplace.
   4448 	(map<>::try_emplace): Guard behind __cpp_lib_map_try_emplace.
   4449 	* include/bits/stl_list.h: Switch to bits/version.h for
   4450 	__cpp_lib_list_remove_return_type.
   4451 	(__remove_return_type, _GLIBCXX_LIST_REMOVE_RETURN_TYPE_TAG)
   4452 	[C++20]: guard behind __cpp_lib_list_remove_return_type instead.
   4453 	* include/bits/stl_iterator.h: Switch to bits/version.h for
   4454 	__cpp_lib_{constexpr_iterator,array_constexpr} and
   4455 	__cpp_lib_{make_reverse_iterator,move_iterator_concept}.
   4456 	(make_reverse_iterator): Guard behind
   4457 	__cpp_lib_make_reverse_iterator.
   4458 	(iterator_concept et al): Guard __cpp_lib_move_iterator_concept
   4459 	changes behind that FTM.
   4460 	* include/bits/stl_function.h: Switch to bits/version.h for
   4461 	__cpp_lib_transparent_operators.
   4462 	(equal_to, not_equal_to, greater, less, greater_equal)
   4463 	(less_equal, bit_and, bit_or, bit_xor, bit_not, logical_and)
   4464 	(logical_or, logical_not, plus, minus, multiplies, divides)
   4465 	(modulus, negate): Guard '= void' fwdecls behind
   4466 	__cpp_lib_transparent_operators.
   4467 	(plus<void>, minus<void>, multiplies<void>, divides<void>)
   4468 	(modulus<void>, negate<void>, logical_and<void>, logical_or<void>)
   4469 	(logical_not<void>, bit_and<void>, bit_or<void>, bit_xor<void>)
   4470 	(equal_to<void>, not_equal_to<void>, greater<void>, less<void>)
   4471 	(greater_equal<void>, less_equal<void>, bit_not<void>)
   4472 	(__has_is_transparent): Guard behind
   4473 	__cpp_lib_transparent_operators.
   4474 	* include/bits/stl_algobase.h: Switch to bits/version.h for
   4475 	__cpp_lib_robust_nonmodifying_seq_ops.
   4476 	(robust equal, mismatch): Guard behind
   4477 	__cpp_lib_nonmember_container_access.
   4478 	* include/bits/stl_algo.h: Swtich to bits/version.h for
   4479 	__cpp_lib_{clamp,sample}.
   4480 	(clamp): Guard behind __cpp_lib_clamp.
   4481 	(sample): Guard behind __cpp_lib_sample.
   4482 	* include/bits/specfun.h: Switch to bits/version.h for
   4483 	__cpp_lib_math_special_functions and __STDCPP_MATH_SPEC_FUNCS__.
   4484 	* include/bits/shared_ptr_base.h: Switch to bits/version.h for
   4485 	__cpp_lib_{smart_ptr_for_overwrite,shared_ptr_arrays}.
   4486 	(_Sp_overwrite_tag): Guard behind
   4487 	__cpp_lib_smart_ptr_for_overwrite.
   4488 	* include/bits/shared_ptr_atomic.h: Switch to bits/version.h for
   4489 	__cpp_lib_atomic_shared_ptr.
   4490 	* include/bits/shared_ptr.h: Switch to bits/version.h for
   4491 	__cpp_lib_{enable_shared_from_this,shared_ptr_weak_type}.
   4492 	(shared_ptr<T>::weak_type): Guard behind
   4493 	__cpp_lib_shared_ptr_weak_type.
   4494 	(enable_shared_from_this<T>::weak_from_this): Guard behind
   4495 	__cpp_lib_enable_shared_from_this.
   4496 	* include/bits/ranges_cmp.h: Switch to bits/version.h for
   4497 	__cpp_lib_ranges.
   4498 	* include/bits/ranges_algo.h: Switch to bits/version.h for
   4499 	__cpp_lib_{shift,ranges_{contains,find_last,fold,iota}}.
   4500 	* include/bits/range_access.h: Switch to bits/version.h for
   4501 	__cpp_lib_nonmember_container_access
   4502 	(size, empty, data): Guard behind
   4503 	__cpp_lib_nonmember_container_access.
   4504 	(ssize): Guard behind __cpp_lib_ssize.
   4505 	* include/bits/ptr_traits.h: Switch to bits/version.h. for
   4506 	__cpp_lib_{constexpr_memory,to_address}.
   4507 	(to_address): Guard behind __cpp_lib_to_address.
   4508 	* include/bits/node_handle.h: Switch to bits/version.h for
   4509 	__cpp_lib_node_extract.  Guard header behind that FTM.
   4510 	* include/bits/move_only_function.h: Switch to bits/version.h for
   4511 	__cpp_lib_move_only_function.  Guard header behind that FTM.
   4512 	* include/bits/move.h: Switch to bits/version.h for
   4513 	__cpp_lib_addressof_constexpr.
   4514 	* include/bits/ios_base.h: Switch to bits/version.h for
   4515 	__cpp_lib_ios_noreplace.
   4516 	(noreplace): Guard with __cpp_lib_ios_noreplace.
   4517 	* include/bits/hashtable.h: Switch to bits/version.h for
   4518 	__cpp_lib_generic_unordered_lookup.
   4519 	(_M_equal_range_tr, _M_count_tr, _M_find_tr): Guard behind
   4520 	__cpp_lib_generic_unordered_lookup.
   4521 	* include/bits/forward_list.h: Switch to bits/version.h for
   4522 	__cpp_lib_list_remove_return_type.
   4523 	(__remove_return_type): Guard behind
   4524 	__cpp_lib_list_remove_return_type.
   4525 	* include/bits/erase_if.h: Switch to bits/version.h for
   4526 	__cpp_lib_erase_if.
   4527 	* include/bits/cow_string.h: Switch to bits/version.h for
   4528 	__cpp_lib_constexpr_string.
   4529 	* include/bits/chrono.h: Swtich to bits/version.h for
   4530 	__cpp_lib_chrono{,_udls}.
   4531 	(ceil): Guard behind __cpp_lib_chrono.
   4532 	(operator""ns et al): Guard behind __cpp_lib_chrono_udls.
   4533 	* include/bits/char_traits.h: Switch to bits/version.h for
   4534 	__cpp_lib_constexpr_char_traits.
   4535 	* include/bits/basic_string.h: Switch to bits/version.h for
   4536 	__cpp_lib_{constexpr_string,string_{resize_and_overwrite,udls}}.
   4537 	(resize_and_overwrite): Guard behind
   4538 	__cpp_lib_string_resize_and_overwrite.
   4539 	(operator""s): Guard behind __cpp_lib_string_udls.
   4540 	* include/bits/atomic_wait.h: Switch to bits/version.h for
   4541 	__cpp_lib_atomic_wait.  Guard header behind that FTM.
   4542 	* include/bits/atomic_base.h: Switch to bits/version.h for
   4543 	__cpp_lib_atomic_value_initialization and
   4544 	__cpp_lib_atomic_flag_test.
   4545 	(atomic_flag::test): Guard behind __cpp_lib_atomic_flag_test,
   4546 	rather than C++20.
   4547 	* include/bits/allocator.h: Switch to bits/version.h for
   4548 	__cpp_lib_incomplete_container_elements.
   4549 	* include/bits/alloc_traits.h: Switch to using bits/version.h for
   4550 	__cpp_lib_constexpr_dynamic_alloc and
   4551 	__cpp_lib_allocator_traits_is_always_equal.
   4552 	* include/bits/align.h: Switch to bits/version.h for defining
   4553 	__cpp_lib_assume_aligned.
   4554 	(assume_aligned): Guard with __cpp_lib_assume_aligned.
   4555 	* include/bits/algorithmfwd.h: Switch to bits/version.h for
   4556 	defining __cpp_lib_constexpr_algorithms.
   4557 	* include/std/stacktrace: Switch to bits/version.h for
   4558 	__cpp_lib_stacktrace.  Guard header behind that FTM.
   4559 	* testsuite/23_containers/array/tuple_interface/get_neg.cc:
   4560 	Update line numbers.
   4561 
   4562 2023-08-16  Arsen Arsenovi  <arsen (a] aarsen.me>
   4563 
   4564 	* include/Makefile.am (bits_freestanding): Add version.h.
   4565 	(allcreated): Add version.h.
   4566 	(${bits_srcdir}/version.h): New rule.  Regenerates
   4567 	version.h out of version.{def,tpl}.
   4568 	* include/Makefile.in: Regenerate.
   4569 	* include/bits/version.def: New file.  Declares a list of
   4570 	all feature test macros, their values and their preconditions.
   4571 	* include/bits/version.tpl: New file.  Turns version.def
   4572 	into a sequence of #if blocks.
   4573 	* include/bits/version.h: New file.  Generated from
   4574 	version.def.
   4575 	* include/std/version: Replace with a __glibcxx_want_all define
   4576 	and bits/version.h include.
   4577 
   4578 2023-08-14  Paul Dreik  <gccpatches (a] pauldreik.se>
   4579 
   4580 	PR libstdc++/110860
   4581 	* include/std/format (__formatter_fp::format): Use frexp instead
   4582 	of log10.
   4583 
   4584 2023-08-12  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   4585 
   4586 	* include/std/type_traits (true_type): Use __bool_constant
   4587 	instead.
   4588 	(false_type): Likewise.
   4589 	(bool_constant): Likewise.
   4590 
   4591 2023-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4592 
   4593 	PR libstdc++/110990
   4594 	* include/std/format (_Seq_sink::get): Only call _M_overflow if
   4595 	its precondition is met.
   4596 	(_Iter_sink::_M_finish): Likewise.
   4597 	(_Iter_sink<C, ContigIter>::_M_overflow): Only switch to the
   4598 	internal buffer after running out of space.
   4599 	(_Iter_sink<C, ContigIter>::_M_finish): Do not use _M_overflow.
   4600 	(_Counting_sink::count): Likewise.
   4601 	* testsuite/std/format/functions/format_to_n.cc: Check cases
   4602 	where the output fits into the buffer.
   4603 
   4604 2023-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4605 
   4606 	PR libstdc++/104167
   4607 	* include/bits/chrono_io.h (operator|=, operator|): Add noexcept
   4608 	to _ChronoParts operators.
   4609 	(from_stream, parse): Define new functions.
   4610 	(__detail::_Parse, __detail::_Parser): New class templates.
   4611 	* include/std/chrono (__cpp_lib_chrono): Define to 201907L for
   4612 	C++20.
   4613 	* include/std/version (__cpp_lib_chrono): Likewise.
   4614 	* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc:
   4615 	Adjust expected value of feature test macro.
   4616 	* testsuite/20_util/duration/io.cc: Test parsing.
   4617 	* testsuite/std/time/clock/file/io.cc: Likewise.
   4618 	* testsuite/std/time/clock/gps/io.cc: Likewise.
   4619 	* testsuite/std/time/clock/system/io.cc: Likewise.
   4620 	* testsuite/std/time/clock/tai/io.cc: Likewise.
   4621 	* testsuite/std/time/clock/utc/io.cc: Likewise.
   4622 	* testsuite/std/time/day/io.cc: Likewise.
   4623 	* testsuite/std/time/month/io.cc: Likewise.
   4624 	* testsuite/std/time/month_day/io.cc: Likewise.
   4625 	* testsuite/std/time/weekday/io.cc: Likewise.
   4626 	* testsuite/std/time/year/io.cc: Likewise.
   4627 	* testsuite/std/time/year_month/io.cc: Likewise.
   4628 	* testsuite/std/time/year_month_day/io.cc: Likewise.
   4629 	* testsuite/std/time/syn_c++20.cc: Check value of macro and for
   4630 	the existence of parse and from_stream in namespace chrono.
   4631 	* testsuite/std/time/clock/local/io.cc: New test.
   4632 	* testsuite/std/time/parse.cc: New test.
   4633 
   4634 2023-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4635 
   4636 	PR libstdc++/110860
   4637 	* include/std/format (__formatter_fp::format): Do not call log10
   4638 	with zero values.
   4639 
   4640 2023-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4641 
   4642 	* python/libstdcxx/v6/printers.py (StdChronoCalendarPrinter):
   4643 	Check for out-of-range month an weekday indices.
   4644 	* testsuite/libstdc++-prettyprinters/chrono.cc: Check invalid
   4645 	month and weekday values.
   4646 
   4647 2023-08-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4648 
   4649 	* include/bits/stl_iterator.h (__clamped_iter_cat_t): Remove.
   4650 
   4651 2023-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4652 
   4653 	PR libstdc++/110974
   4654 	* include/std/format (_Spec::_S_parse_width_or_precision): Check
   4655 	for empty range before dereferencing iterator.
   4656 	* testsuite/std/format/string.cc: Check for expected exception.
   4657 	Fix expected exception message in test_pr110862() and actually
   4658 	call it.
   4659 
   4660 2023-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4661 
   4662 	PR libstdc++/110968
   4663 	* include/std/format (__formatter_fp::format): Check return
   4664 	value of _M_localize.
   4665 	* testsuite/std/format/functions/format.cc: Check classic
   4666 	locale.
   4667 
   4668 2023-08-10  Jonathan Wakely  <jwakely (a] redhat.com>
   4669 
   4670 	PR libstdc++/110970
   4671 	* include/bits/stl_iterator.h (__detail::__move_iter_cat): Use
   4672 	__iter_category_t.
   4673 	(iterator_traits<common_iterator<I, S>>::_S_iter_cat): Likewise.
   4674 	(__detail::__basic_const_iterator_iter_cat): Likewise.
   4675 	* include/bits/stl_iterator_base_types.h (__iterator_category_t):
   4676 	Rename to __iter_category_t.
   4677 
   4678 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4679 
   4680 	* include/bits/chrono.h (duration_cast): Do not use braces
   4681 	around statements for C++11 constexpr rules.
   4682 	* include/bits/stl_algobase.h (__lg): Rewrite as a single
   4683 	statement for C++11 constexpr rules.
   4684 	* include/experimental/bits/fs_path.h (path::string): Use
   4685 	_GLIBCXX17_CONSTEXPR not _GLIBCXX_CONSTEXPR for 'if constexpr'.
   4686 	* include/std/charconv (__to_chars_8): Initialize variable for
   4687 	C++17 constexpr rules.
   4688 
   4689 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4690 
   4691 	* include/bits/list.tcc (list::sort(Cmp)): Fix -Wsign-compare
   4692 	warning for loop condition.
   4693 
   4694 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4695 
   4696 	* include/std/complex: Add diagnostic pragma for clang.
   4697 
   4698 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4699 
   4700 	* include/bits/shared_ptr_atomic.h (atomic): Change class-head
   4701 	to struct.
   4702 	* include/bits/stl_tree.h (_Rb_tree_merge_helper): Change
   4703 	class-head to struct in friend declaration.
   4704 	* include/std/chrono (tzdb_list::_Node): Likewise.
   4705 	* include/std/future (_Task_state_base, _Task_state): Likewise.
   4706 	* include/std/scoped_allocator (__inner_type_impl): Likewise.
   4707 	* include/std/valarray (_BinClos, _SClos, _GClos, _IClos)
   4708 	(_ValFunClos, _RefFunClos): Change class-head to struct.
   4709 
   4710 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4711 
   4712 	* include/bits/alloc_traits.h (allocate): Add [[maybe_unused]]
   4713 	attribute.
   4714 	* include/bits/regex_executor.tcc: Remove name of unused
   4715 	parameter.
   4716 	* include/bits/shared_ptr_atomic.h (atomic_is_lock_free):
   4717 	Likewise.
   4718 	* include/bits/stl_uninitialized.h: Likewise.
   4719 	* include/bits/streambuf_iterator.h (operator==): Likewise.
   4720 	* include/bits/uses_allocator.h: Likewise.
   4721 	* include/c_global/cmath (isfinite, isinf, isnan): Likewise.
   4722 	* include/std/chrono (zoned_time): Likewise.
   4723 	* include/std/future (__future_base::_S_allocate_result):
   4724 	Likewise.
   4725 	(packaged_task): Likewise.
   4726 	* include/std/optional (_Optional_payload_base): Likewise.
   4727 	* include/std/scoped_allocator (__inner_type_impl): Likewise.
   4728 	* include/std/tuple (_Tuple_impl): Likewise.
   4729 
   4730 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4731 
   4732 	* include/bits/new_allocator.h (__new_allocator): Define copy
   4733 	assignment operator as defaulted.
   4734 	* include/std/complex (complex<float>, complex<double>)
   4735 	(complex<long double>): Define copy constructor as defaulted.
   4736 
   4737 2023-08-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4738 
   4739 	* include/std/format: Fix some warnings.
   4740 	(__format::__write(Ctx&, basic_string_view<CharT>)): Remove
   4741 	unused function template.
   4742 
   4743 2023-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4744 
   4745 	PR libstdc++/110860
   4746 	* include/std/format (__formatter_fp::format): Do not use
   4747 	__builtin_abs and __builtin_log10 with arbitrary floating-point
   4748 	types.
   4749 
   4750 2023-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4751 
   4752 	PR libstdc++/110917
   4753 	* include/std/format (__format::_Iter_sink<CharT, OutIter>):
   4754 	Constrain partial specialization for contiguous iterators to
   4755 	require the value type to be CharT.
   4756 	* testsuite/std/format/functions/format_to.cc: New test.
   4757 
   4758 2023-08-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4759 
   4760 	PR libstdc++/110862
   4761 	* include/std/format (_Scanner::_M_on_replacement_field):
   4762 	Check for expected '}' before incrementing iterator.
   4763 	* testsuite/std/format/string.cc: Check "{0:{0}" format string.
   4764 
   4765 2023-08-07  Nick Alcock  <nick.alcock (a] oracle.com>
   4766 
   4767 	* configure: Regenerate.
   4768 
   4769 2023-08-07  Alan Modra  <amodra (a] gmail.com>
   4770 
   4771 	* configure: Regenerate.
   4772 
   4773 2023-08-07  Alexander von Gluck IV  <kallisti5 (a] unixzen.com>
   4774 
   4775 	* configure: Regenerate.
   4776 
   4777 2023-08-07  Nick Alcock  <nick.alcock (a] oracle.com>
   4778 
   4779 	* configure: Regenerate.
   4780 
   4781 2023-08-07  Nick Alcock  <nick.alcock (a] oracle.com>
   4782 
   4783 	* configure: Regenerate.
   4784 
   4785 2023-08-07  H.J. Lu  <hjl.tools (a] gmail.com>
   4786 
   4787 	* configure: Regenerate.
   4788 
   4789 2023-08-07  H.J. Lu  <hjl.tools (a] gmail.com>
   4790 
   4791 	* configure: Regenerate.
   4792 
   4793 2023-08-06  Franois Dumont  <fdumont (a] gcc.gnu.org>
   4794 
   4795 	* config/abi/pre/gnu-versioned-namespace.ver: Add __cxa_call_terminate
   4796 	symbol export.
   4797 
   4798 2023-07-30  Franois Dumont  <fdumont (a] gcc.gnu.org>
   4799 
   4800 	* src/c++11/compatibility-ldbl-facets-aliases.h: Replace #define with
   4801 	proper #error.
   4802 	* src/c++11/locale-inst-monetary.h: Likewise.
   4803 	* src/c++11/locale-inst-numeric.h: Likewise.
   4804 
   4805 2023-07-27  Jonathan Wakely  <jwakely (a] redhat.com>
   4806 
   4807 	PR libstdc++/108046
   4808 	* include/std/format (__formatter_fp::format): Ensure __expc is
   4809 	always set for all presentation types. Set __z correctly for
   4810 	zero precision.
   4811 	* testsuite/std/format/functions/format.cc: Check problem cases.
   4812 
   4813 2023-07-26  Jonathan Wakely  <jwakely (a] redhat.com>
   4814 
   4815 	PR libstdc++/110807
   4816 	* testsuite/23_containers/vector/bool/110807.cc: Require c++11.
   4817 
   4818 2023-07-26  Jonathan Wakely  <jwakely (a] redhat.com>
   4819 
   4820 	PR libstdc++/110807
   4821 	* include/bits/stl_bvector.h (vector(const vector&)): Access
   4822 	iterators before allocating.
   4823 	* include/bits/vector.tcc (vector<bool>::_M_insert_range):
   4824 	Likewise.
   4825 	* testsuite/23_containers/vector/bool/110807.cc: New test.
   4826 
   4827 2023-07-26  Jonathan Wakely  <jwakely (a] redhat.com>
   4828 
   4829 	* include/bits/algorithmfwd.h (random_shuffle): Add deprecated
   4830 	attribute.
   4831 	* include/bits/stl_algo.h (random_shuffle): Correct comments.
   4832 	* testsuite/25_algorithms/random_shuffle/1.cc: Disable
   4833 	deprecated warnings.
   4834 	* testsuite/25_algorithms/random_shuffle/59603.cc: Likewise.
   4835 	* testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
   4836 	* testsuite/25_algorithms/random_shuffle/deprecated.cc: New
   4837 	test.
   4838 
   4839 2023-07-26  Nathaniel Shead  <nathanieloshead (a] gmail.com>
   4840 
   4841 	* testsuite/25_algorithms/equal/constexpr_neg.cc: Update diagnostic
   4842 	locations.
   4843 	* testsuite/26_numerics/gcd/105844.cc: Likewise.
   4844 	* testsuite/26_numerics/lcm/105844.cc: Likewise.
   4845 
   4846 2023-07-24  Deev Patel  <pateldeev (a] nevada.unr.edu>
   4847 
   4848 	* include/std/format (_Formatting_scanner::_M_on_chars): Add
   4849 	missing constexpr specifier.
   4850 	(_Formatting_scanner::_M_format_arg): Likewise.
   4851 
   4852 2023-07-24  Jonathan Wakely  <jwakely (a] redhat.com>
   4853 
   4854 	PR libstdc++/110653
   4855 	* include/bits/basic_string.h [!HAVE_STOF] (stof): Do not
   4856 	throw an exception for zero result.
   4857 	[HAVE_BROKEN_STRTOLD] (stold): Do not use strtold.
   4858 
   4859 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4860 
   4861 	PR libstdc++/110077
   4862 	* src/c++17/floating_from_chars.cc (from_chars): Only define
   4863 	_Float128 overload when using __strfromf128.
   4864 
   4865 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4866 
   4867 	PR libstdc++/110593
   4868 	* include/bits/chrono.h (duration): Improve static assert
   4869 	messages.
   4870 	(__is_ratio): Move to ...
   4871 	* include/std/ratio (__is_ratio): ... here.
   4872 	(__is_ratio_v): New variable template and partial
   4873 	specialization.
   4874 	(__are_both_ratios): New function template.
   4875 	(__ratio_multiply, ratio_equal, ratio_less, __ratio_add):
   4876 	Add static assertion.
   4877 	* testsuite/20_util/ratio/requirements/type_constraints.cc:
   4878 	New test.
   4879 	* testsuite/20_util/duration/requirements/typedefs_neg1.cc:
   4880 	Adjust expected error.
   4881 	* testsuite/20_util/duration/requirements/typedefs_neg2.cc:
   4882 	Likewise.
   4883 
   4884 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4885 
   4886 	* include/bits/chrono_io.h (__formatter_chrono::_M_format):
   4887 	Do not set __is_neg for hh_mm_ss before calling
   4888 	_M_format_to_ostream. Change __print_sign lambda to only check
   4889 	__is_neg for durations and hh_mm_ss types.
   4890 	(__formatter_chrono::_M_format_to_ostream): Only check __is_neg
   4891 	for duration types.
   4892 	* testsuite/std/time/hh_mm_ss/io.cc: Check negative values.
   4893 
   4894 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4895 
   4896 	PR libstdc++/110719
   4897 	* include/bits/chrono_io.h (__formatter_chrono::_S_floor_seconds):
   4898 	Handle duration and hh_mm_ss.
   4899 	* testsuite/20_util/duration/io.cc: Check locale-specific
   4900 	formats.
   4901 	* testsuite/std/time/hh_mm_ss/io.cc: Likewise.
   4902 
   4903 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4904 
   4905 	* include/std/format (__write_padded): Initialize first element
   4906 	of array to avoid a -Wmaybe-uninitialized warning.
   4907 
   4908 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4909 
   4910 	PR libstdc++/110719
   4911 	* include/bits/chrono_io.h (__formatter_chrono::_M_parse): Fix
   4912 	allowed modifiers for %z and %Z. Fix -Wparentheses and
   4913 	-Wnarrowing warnings.
   4914 	(__formatter_chrono::_M_format): Call new functions for %d, %e,
   4915 	%H, %I, %m and %M.
   4916 	(__formatter_chrono::_M_c): Use _S_floor_seconds to remove
   4917 	subsecond precision.
   4918 	(__formatter_chrono::_M_C_y_Y): Use _M_locale_fmt to handle
   4919 	modifiers.
   4920 	(__formatter_chrono::_M_e): Replace with _M_d_e and use
   4921 	_M_locale_fmt.
   4922 	(__formatter_chrono::_M_I): Replace with _M_H_I and use
   4923 	_M_locale_fmt.
   4924 	(__formatter_chrono::_M_m): New function.
   4925 	(__formatter_chrono::_M_M): New function.
   4926 	(__formatter_chrono::_M_r): Use _M_locale_fmt.
   4927 	(__formatter_chrono::_M_S): Likewise.
   4928 	(__formatter_chrono::_M_u_w): Likewise.
   4929 	(__formatter_chrono::_M_U_V_W): Likewise.
   4930 	(__formatter_chrono::_M_X): Use _S_floor_seconds.
   4931 	(__formatter_chrono::_M_Z): Fix untested branch for wchar_t.
   4932 	(__formatter_chrono::_S_altnum): Remove function.
   4933 	(__formatter_chrono::_S_dd_zero_fill): Remove function.
   4934 	(__formatter_chrono::_S_floor_seconds): New function.
   4935 	(__formatter_chrono::_M_locale_fmt): New function.
   4936 	* testsuite/std/time/clock/system/io.cc: Adjust expected output
   4937 	for locale-specific formats and check modified formats.
   4938 	* testsuite/std/time/clock/utc/io.cc: Likewise.
   4939 	* testsuite/std/time/zoned_time/io.cc: New test.
   4940 
   4941 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4942 
   4943 	PR libstdc++/110708
   4944 	* include/bits/chrono_io.h (__formatter_chrono::_M_parse): Only
   4945 	allow a single modifier.
   4946 	* testsuite/std/time/format.cc: Check multiple modifiers.
   4947 
   4948 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4949 
   4950 	PR libstdc++/110653
   4951 	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
   4952 	Remove dg-require-string-conversions.
   4953 	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
   4954 	Likewise.
   4955 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
   4956 	Likewise.
   4957 	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
   4958 	Likewise.
   4959 	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
   4960 	Likewise.
   4961 
   4962 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4963 
   4964 	PR libstdc++/110653
   4965 	* include/bits/basic_string.h [!_GLIBCXX_HAVE_STRTOF] (stof):
   4966 	Define in terms of std::stod.
   4967 
   4968 2023-07-19  Jonathan Wakely  <jwakely (a] redhat.com>
   4969 
   4970 	PR libstdc++/110653
   4971 	* include/bits/basic_string.h [_GLIBCXX_HAVE_STRTOF] (stof):
   4972 	Define.
   4973 	[_GLIBCXX_HAVE_STRTOLD] (stold): Define.
   4974 	* include/c_global/cstdlib [_GLIBCXX_HAVE_STRTOF] (strtof):
   4975 	Declare in namespace std.
   4976 	[_GLIBCXX_HAVE_STRTOLD] (strtold): Likewise.
   4977 
   4978 2023-07-13  Jonathan Wakely  <jwakely (a] redhat.com>
   4979 
   4980 	PR libstdc++/110653
   4981 	* include/bits/basic_string.h (stoi, stol, stoul, stod): Do not
   4982 	depend on _GLIBCXX_USE_C99_STDLIB.
   4983 	[__LONG_WIDTH__ == __LONG_LONG_WIDTH__] (stoll, stoull): Define
   4984 	in terms of stol and stoul respectively.
   4985 	[__DBL_MANT_DIG__ == __LDBL_MANT_DIG__] (stold): Define in terms
   4986 	of stod.
   4987 
   4988 2023-07-12  Jonathan Wakely  <jwakely (a] redhat.com>
   4989 
   4990 	PR libstdc++/95048
   4991 	* testsuite/27_io/filesystem/path/construct/95048.cc: Check
   4992 	conversions to wide strings.
   4993 	* testsuite/experimental/filesystem/path/construct/95048.cc:
   4994 	Likewise.
   4995 
   4996 2023-07-12  Jonathan Wakely  <jwakely (a] redhat.com>
   4997 
   4998 	* config/io/basic_file_stdio.cc: Define LFS macros.
   4999 	(__basic_file<char>::open): Use fopen unconditionally.
   5000 	(get_file_offset): Use lseek unconditionally.
   5001 	(__basic_file<char>::seekoff): Likewise.
   5002 	(__basic_file<char>::showmanyc): Use fstat unconditionally.
   5003 
   5004 2023-07-12  Jonathan Wakely  <jwakely (a] redhat.com>
   5005 
   5006 	PR libstdc++/110574
   5007 	* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fseeko and ftello
   5008 	and define _GLIBCXX_USE_FSEEKO_FTELLO.
   5009 	* config.h.in: Regenerate.
   5010 	* configure: Regenerate.
   5011 	* config/io/basic_file_stdio.cc (xwrite) [_GLIBCXX_USE_STDIO_PURE]:
   5012 	Check for fwrite error correctly.
   5013 	(__basic_file<char>::xsgetn) [_GLIBCXX_USE_STDIO_PURE]: Check for
   5014 	fread error correctly.
   5015 	(get_file_offset): New function.
   5016 	(__basic_file<char>::seekoff) [_GLIBCXX_USE_STDIO_PURE]: Use
   5017 	fseeko if available. Use get_file_offset instead of return value
   5018 	of fseek.
   5019 	(__basic_file<char>::showmanyc): Use get_file_offset.
   5020 
   5021 2023-07-12  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   5022 
   5023 	* include/std/type_traits (__make_unsigned_selector): Use
   5024 	__is_enum built-in trait.
   5025 	(__make_signed_selector): Likewise.
   5026 	(__underlying_type_impl): Likewise.
   5027 
   5028 2023-07-06  Tianqiang Shuai  <1101282468 (a] qq.com>
   5029 
   5030 	* config/io/basic_file_stdio.cc (xwrite) [USE_STDIO_PURE]: Fix
   5031 	first argument.
   5032 
   5033 2023-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5034 
   5035 	PR libstdc++/110574
   5036 	* doc/xml/manual/configure.xml: Describe stdio_pure argument to
   5037 	--enable-cstdio.
   5038 	* doc/html/manual/configure.html: Regenerate.
   5039 
   5040 2023-07-05  Thomas Rodgers  <trodgers (a] redhat.com>
   5041 
   5042 	* testsuite/25_algorithms/pstl/alg_sorting/set.cc: Delete
   5043 	file.
   5044 	* testsuite/25_algorithms/pstl/alg_sorting/set_difference.cc:
   5045 	New file.
   5046 	* testsuite/25_algorithms/pstl/alg_sorting/set_intersection.cc:
   5047 	Likewise.
   5048 	* testsuite/25_algorithms/pstl/alg_sorting/set_symmetric_difference.cc:
   5049 	Likewise.
   5050 	* testsuite/25_algorithms/pstl/alg_sorting/set_union.cc:
   5051 	Likewise.
   5052 	* testsuite/25_algorithms/pstl/alg_sorting/set_util.h:
   5053 	Likewise.
   5054 
   5055 2023-07-05  Jonathan Wakely  <jwakely (a] redhat.com>
   5056 
   5057 	* testsuite/23_containers/forward_list/debug/iterator1_neg.cc:
   5058 	Skip as UNSUPPORTED for C++98 mode.
   5059 	* testsuite/23_containers/forward_list/debug/iterator3_neg.cc:
   5060 	Likewise.
   5061 
   5062 2023-07-05  Jonathan Wakely  <jwakely (a] redhat.com>
   5063 
   5064 	PR libstdc++/110542
   5065 	* include/bits/stl_uninitialized.h (__uninitialized_default_n):
   5066 	Do not use std::fill_n during constant evaluation.
   5067 
   5068 2023-07-05  Jonathan Wakely  <jwakely (a] redhat.com>
   5069 
   5070 	* include/bits/vector.tcc (_M_default_append): Replace try-block
   5071 	with RAII types.
   5072 
   5073 2023-07-05  Jonathan Wakely  <jwakely (a] redhat.com>
   5074 
   5075 	* include/bits/iterator_concepts.h (projected): Add typename.
   5076 
   5077 2023-07-03  Jonathan Wakely  <jwakely (a] redhat.com>
   5078 
   5079 	* testsuite/27_io/headers/iosfwd/synopsis.cc: Make wsyncbuf and
   5080 	wosyncstream depend on _GLIBCXX_USE_CXX11_ABI.
   5081 
   5082 2023-07-03  Jonathan Wakely  <jwakely (a] redhat.com>
   5083 
   5084 	* include/pstl/pstl_config.h (_PSTL_PRAGMA_SIMD_SCAN,
   5085 	_PSTL_PRAGMA_SIMD_INCLUSIVE_SCAN, _PSTL_PRAGMA_SIMD_EXCLUSIVE_SCAN):
   5086 	Define to OpenMP 5.0 pragmas even for GCC 10.0+.
   5087 	(_PSTL_UDS_PRESENT): Define to 1 for GCC 10.0+.
   5088 
   5089 2023-07-03  Jonathan Wakely  <jwakely (a] redhat.com>
   5090 
   5091 	* include/bits/alloc_traits.h (_Destroy): Qualify call.
   5092 	* include/bits/stl_construct.h (_Destroy, _Destroy_n): Likewise.
   5093 	* testsuite/23_containers/vector/cons/destroy-adl.cc: New test.
   5094 
   5095 2023-07-03  Iain Sandoe  <iain (a] sandoe.co.uk>
   5096 
   5097 	* testsuite/lib/libstdc++.exp: Remove additional flag handled
   5098 	by Darwin specs.
   5099 
   5100 2023-06-30  Jonathan Wakely  <jwakely (a] redhat.com>
   5101 
   5102 	PR libstdc++/110432
   5103 	* acinclude.m4 (GLIBCXX_CHECK_INIT_PRIORITY): New.
   5104 	* config.h.in: Regenerate.
   5105 	* configure: Regenerate.
   5106 	* configure.ac: Use GLIBCXX_CHECK_INIT_PRIORITY.
   5107 	* include/std/iostream: Use new autoconf macro as well as
   5108 	__has_attribute.
   5109 	* src/c++98/ios_base_init.h: Use new autoconf macro instead of
   5110 	__has_attribute.
   5111 
   5112 2023-06-30  Jonathan Wakely  <jwakely (a] redhat.com>
   5113 
   5114 	* src/c++11/random.cc (random_device::_M_init): Add maybe_unused
   5115 	attribute.
   5116 
   5117 2023-06-30  Jonathan Wakely  <jwakely (a] redhat.com>
   5118 
   5119 	PR libstdc++/105081
   5120 	* src/c++11/random.cc (random_device::_M_init): Throw
   5121 	std::system_error when the requested device is a valid token but
   5122 	not available at runtime.
   5123 
   5124 2023-06-30  Hans-Peter Nilsson  <hp (a] axis.com>
   5125 
   5126 	PR libstdc++/108672
   5127 	* include/pstl/unseq_backend_simd.h (__simd_or): Re-apply using
   5128 	__INT32_TYPE__ instead of int32_t.
   5129 
   5130 2023-06-29  Jonathan Wakely  <jwakely (a] redhat.com>
   5131 
   5132 	* src/c++20/tzdb.cc (USE_ATOMIC_SHARED_PTR): Define consistently
   5133 	with USE_ATOMIC_LIST_HEAD.
   5134 	(list_mutex): Replace global object with function. Use local
   5135 	static object when std::mutex constructor isn't constexpr.
   5136 
   5137 2023-06-29  Jonathan Wakely  <jwakely (a] redhat.com>
   5138 
   5139 	PR libstdc++/110462
   5140 	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check that
   5141 	copy_file_range can be called with loff_t* arguments.
   5142 	* configure: Regenerate.
   5143 	* src/filesystem/ops-common.h (copy_file_copy_file_range):
   5144 	Use loff_t for offsets.
   5145 
   5146 2023-06-29  Tom Tromey  <tromey (a] adacore.com>
   5147 
   5148 	* testsuite/lib/gdb-test.exp (gdb-test): Relax type-printer
   5149 	regexp.
   5150 
   5151 2023-06-28  Jan Hubicka  <jh (a] suse.cz>
   5152 
   5153 	PR middle-end/109849
   5154 	* include/bits/c++config (std::__terminate): Mark cold.
   5155 	* include/bits/functexcept.h: Mark everything as cold.
   5156 	* libsupc++/exception: Mark terminate and unexpected as cold.
   5157 
   5158 2023-06-26  Thomas Rodgers  <trodgers (a] redhat.com>
   5159 
   5160 	* include/pstl/algorithm_fwd.h: Synchronize with upstream.
   5161 	* include/pstl/algorithm_impl.h: Likewise.
   5162 	* include/pstl/execution_defs.h: Likewise.
   5163 	* include/pstl/execution_impl.h: Likewise.
   5164 	* include/pstl/glue_algorithm_impl.h: Likewise.
   5165 	* include/pstl/glue_execution_defs.h: Likewise.
   5166 	* include/pstl/glue_memory_impl.h: Likewise.
   5167 	* include/pstl/glue_numeric_impl.h: Likewise.
   5168 	* include/pstl/memory_impl.h: Likewise.
   5169 	* include/pstl/numeric_fwd.h: Likewise.
   5170 	* include/pstl/numeric_impl.h: Likewise.
   5171 	* include/pstl/parallel_backend.h: Likewise.
   5172 	* include/pstl/parallel_backend_serial.h: Likewise.
   5173 	* include/pstl/parallel_backend_tbb.h: Likewise.
   5174 	* include/pstl/parallel_impl.h: Likewise.
   5175 	* include/pstl/pstl_config.h: Likewise.
   5176 	* include/pstl/unseq_backend_simd.h: Likewise.
   5177 	* include/pstl/utils.h: Likewise.
   5178 	* testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc:
   5179 	Likewise.
   5180 	* testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc:
   5181 	Likewise.
   5182 	* testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc:
   5183 	Likewise.
   5184 	* testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc:
   5185 	Likewise.
   5186 	* testsuite/25_algorithms/pstl/alg_merge/merge.cc: Likewise.
   5187 	* testsuite/25_algorithms/pstl/alg_modifying_operations/copy_if.cc:
   5188 	Likewise.
   5189 	* testsuite/25_algorithms/pstl/alg_modifying_operations/copy_move.cc:
   5190 	Likewise.
   5191 	* testsuite/25_algorithms/pstl/alg_modifying_operations/fill.cc:
   5192 	Likewise.
   5193 	* testsuite/25_algorithms/pstl/alg_modifying_operations/generate.cc:
   5194 	Likewise.
   5195 	* testsuite/25_algorithms/pstl/alg_modifying_operations/is_partitioned.cc:
   5196 	Likewise.
   5197 	* testsuite/25_algorithms/pstl/alg_modifying_operations/partition.cc:
   5198 	Likewise.
   5199 	* testsuite/25_algorithms/pstl/alg_modifying_operations/partition_copy.cc:
   5200 	Likewise.
   5201 	* testsuite/25_algorithms/pstl/alg_modifying_operations/remove.cc:
   5202 	Likewise.
   5203 	* testsuite/25_algorithms/pstl/alg_modifying_operations/remove_copy.cc:
   5204 	Likewise.
   5205 	* testsuite/25_algorithms/pstl/alg_modifying_operations/replace.cc:
   5206 	Likewise.
   5207 	* testsuite/25_algorithms/pstl/alg_modifying_operations/replace_copy.cc:
   5208 	Likewise.
   5209 	* testsuite/25_algorithms/pstl/alg_modifying_operations/rotate.cc:
   5210 	Likewise.
   5211 	* testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc:
   5212 	Likewise.
   5213 	* testsuite/25_algorithms/pstl/alg_modifying_operations/swap_ranges.cc:
   5214 	Likewise.
   5215 	* testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc:
   5216 	Likewise.
   5217 	* testsuite/25_algorithms/pstl/alg_modifying_operations/transform_unary.cc:
   5218 	Likewise.
   5219 	* testsuite/25_algorithms/pstl/alg_modifying_operations/unique.cc:
   5220 	Likewise.
   5221 	* testsuite/25_algorithms/pstl/alg_modifying_operations/unique_copy_equal.cc:
   5222 	Likewise.
   5223 	* testsuite/25_algorithms/pstl/alg_nonmodifying/adjacent_find.cc:
   5224 	Likewise.
   5225 	* testsuite/25_algorithms/pstl/alg_nonmodifying/all_of.cc:
   5226 	Likewise.
   5227 	* testsuite/25_algorithms/pstl/alg_nonmodifying/any_of.cc:
   5228 	Likewise.
   5229 	* testsuite/25_algorithms/pstl/alg_nonmodifying/count.cc:
   5230 	Likewise.
   5231 	* testsuite/25_algorithms/pstl/alg_nonmodifying/equal.cc:
   5232 	Likewise.
   5233 	* testsuite/25_algorithms/pstl/alg_nonmodifying/find.cc:
   5234 	Likewise.
   5235 	* testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
   5236 	Likewise.
   5237 	* testsuite/25_algorithms/pstl/alg_nonmodifying/find_first_of.cc:
   5238 	Likewise.
   5239 	* testsuite/25_algorithms/pstl/alg_nonmodifying/find_if.cc:
   5240 	Likewise.
   5241 	* testsuite/25_algorithms/pstl/alg_nonmodifying/for_each.cc:
   5242 	Likewise.
   5243 	* testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc:
   5244 	Likewise.
   5245 	* testsuite/25_algorithms/pstl/alg_nonmodifying/none_of.cc:
   5246 	Likewise.
   5247 	* testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc:
   5248 	Likewise.
   5249 	* testsuite/25_algorithms/pstl/alg_nonmodifying/reverse.cc:
   5250 	Likewise.
   5251 	* testsuite/25_algorithms/pstl/alg_nonmodifying/reverse_copy.cc:
   5252 	Likewise.
   5253 	* testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
   5254 	Likewise.
   5255 	* testsuite/25_algorithms/pstl/alg_sorting/includes.cc:
   5256 	Likewise.
   5257 	* testsuite/25_algorithms/pstl/alg_sorting/is_heap.cc:
   5258 	Likewise.
   5259 	* testsuite/25_algorithms/pstl/alg_sorting/is_sorted.cc:
   5260 	Likewise.
   5261 	* testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc:
   5262 	Likewise.
   5263 	* testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc:
   5264 	Likewise.
   5265 	* testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc:
   5266 	Likewise.
   5267 	* testsuite/25_algorithms/pstl/alg_sorting/partial_sort_copy.cc:
   5268 	Likewise.
   5269 	* testsuite/25_algorithms/pstl/alg_sorting/set.cc:
   5270 	Likewise.
   5271 	* testsuite/25_algorithms/pstl/alg_sorting/sort.cc:
   5272 	Likewise.
   5273 	* testsuite/26_numerics/pstl/numeric_ops/adjacent_difference.cc:
   5274 	Likewise.
   5275 	* testsuite/26_numerics/pstl/numeric_ops/reduce.cc:
   5276 	Likewise.
   5277 	* testsuite/26_numerics/pstl/numeric_ops/scan.cc:
   5278 	Likewise.
   5279 	* testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc:
   5280 	Likewise.
   5281 	* testsuite/26_numerics/pstl/numeric_ops/transform_scan.cc:
   5282 	Likewise.
   5283 	* testsuite/util/pstl/test_utils.h:
   5284 	Likewise.
   5285 
   5286 2023-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   5287 
   5288 	PR libstdc++/110239
   5289 	* include/std/format (__format::__parse_integer): Fix buffer
   5290 	overflow for wide chars.
   5291 	(formatter<const void*, C>::format): Cast to uintptr_t instead
   5292 	of uint64_t.
   5293 	* testsuite/std/format/string.cc: Test too-large widths.
   5294 
   5295 2023-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   5296 
   5297 	* include/bits/iterator_concepts.h (projected): Replace class
   5298 	template with alias template denoting an ADL-proofed helper.
   5299 	(incremental_traits<projected<Iter, Proj>>): Remove.
   5300 	* testsuite/24_iterators/indirect_callable/projected-adl.cc:
   5301 	New test.
   5302 
   5303 2023-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   5304 
   5305 	* include/debug/helper_functions.h (__get_distance)
   5306 	(__check_singular, __valid_range_aux, __valid_range): Qualify
   5307 	calls to disable ADL.
   5308 	(__check_singular_aux(const _Safe_iterator_base*)): Declare
   5309 	overload that was previously found via ADL.
   5310 
   5311 2023-06-23  Jonathan Wakely  <jwakely (a] redhat.com>
   5312 
   5313 	* include/bits/vector.tcc (_M_realloc_insert): Replace try-block
   5314 	with RAII types.
   5315 
   5316 2023-06-20  Jonathan Wakely  <jwakely (a] redhat.com>
   5317 
   5318 	* include/std/array (to_array(T(&)[N])): Remove redundant
   5319 	condition.
   5320 	(to_array(T(&&)[N])): Remove redundant std::move.
   5321 
   5322 2023-06-16  Alexandre Oliva  <oliva (a] adacore.com>
   5323 
   5324 	* testsuite/20_util/from_chars/4.cc: Skip long double on
   5325 	aarch64-rtems.
   5326 
   5327 2023-06-16  Joel Brobecker  <brobecker (a] adacore.com>
   5328 
   5329 	* configure.ac ["x${with_newlib}" = "xyes"]: Define
   5330 	HAVE_HYPOTF.  Add compile-checks for various long double
   5331 	math functions as well.
   5332 	* configure: Regenerate.
   5333 
   5334 2023-06-14  Jonny Grant  <jg (a] jguk.org>
   5335 
   5336 	* doc/xml/manual/extensions.xml: Remove demangle exception
   5337 	description and include.
   5338 	* doc/html/manual/ext_demangling.html: Regenerate.
   5339 
   5340 2023-06-10  Hans-Peter Nilsson  <hp (a] axis.com>
   5341 
   5342 	* testsuite/27_io/basic_istream/ignore/wchar_t/94749.cc (main)
   5343 	[! SIMULATOR_TEST]: Also exclude running test05.
   5344 	* testsuite/27_io/basic_istream/ignore/char/94749.cc: Ditto.
   5345 
   5346 2023-06-09  Ken Matsui  <kmatsui (a] cs.washington.edu>
   5347 
   5348 	* include/std/type_traits: Use using instead of typedef
   5349 
   5350 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5351 
   5352 	PR libstdc++/110077
   5353 	* src/c++17/floating_from_chars.cc (from_chars) <_Float128>:
   5354 	Only define if _Float128 and long double have different
   5355 	representations.
   5356 
   5357 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5358 
   5359 	PR libstdc++/100285
   5360 	* include/experimental/internet [IPPROTO_TCP || IPPROTO_UDP]
   5361 	(basic_endpoint, basic_resolver_entry, resolver_base)
   5362 	(basic_resolver_results, basic_resolver): Only define if the tcp
   5363 	or udp protocols will be defined.
   5364 
   5365 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5366 
   5367 	* acinclude.m4 (libtool_VERSION): Update to 6.0.33.
   5368 	* configure: Regenerate.
   5369 	* doc/xml/manual/abi.xml: Add libstdc++.so.6.0.33.
   5370 	* doc/html/manual/abi.html: Regenerate.
   5371 
   5372 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5373 
   5374 	PR libstdc++/110149
   5375 	* include/std/format (formatter<const void*, charT>::parse):
   5376 	Only alow 0 and P for C++26 and non-strict modes.
   5377 	(formatter<const void*, charT>::format): Use toupper for P
   5378 	type, and insert zero-fill characters for 0 option.
   5379 	* testsuite/std/format/functions/format.cc: Check pointer
   5380 	formatting. Only check P2510R3 extensions conditionally.
   5381 	* testsuite/std/format/parse_ctx.cc: Only check P2510R3
   5382 	extensions conditionally.
   5383 
   5384 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5385 
   5386 	PR libstdc++/110167
   5387 	* include/std/array (to_array): Initialize arrays of trivial
   5388 	types using memcpy. For non-trivial types, use lambda
   5389 	expressions instead of a separate helper function.
   5390 	(__to_array): Remove.
   5391 	* testsuite/23_containers/array/creation/110167.cc: New test.
   5392 
   5393 2023-06-09  Jonathan Wakely  <jwakely (a] redhat.com>
   5394 
   5395 	* testsuite/23_containers/deque/modifiers/emplace/52799.cc:
   5396 	Removed.
   5397 	* testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
   5398 	Removed.
   5399 	* testsuite/23_containers/list/modifiers/emplace/52799.cc:
   5400 	Removed.
   5401 	* testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
   5402 	Removed.
   5403 	* testsuite/23_containers/vector/modifiers/emplace/52799.cc:
   5404 	Removed.
   5405 	* testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
   5406 	Removed.
   5407 	* testsuite/23_containers/deque/modifiers/emplace/1.cc: New
   5408 	test.
   5409 	* testsuite/23_containers/list/modifiers/emplace/1.cc: New
   5410 	test.
   5411 	* testsuite/23_containers/vector/modifiers/emplace/1.cc: New
   5412 	test.
   5413 
   5414 2023-06-07  Jakub Jelinek  <jakub (a] redhat.com>
   5415 
   5416 	PR libstdc++/110145
   5417 	* testsuite/20_util/to_chars/double.cc: Include <cfloat>.
   5418 	(double_to_chars_test_cases,
   5419 	double_scientific_precision_to_chars_test_cases_2,
   5420 	double_fixed_precision_to_chars_test_cases_2): #if out 1e126, 4.91e-6
   5421 	and 5.547e-6 tests if FLT_EVAL_METHOD is negative or larger than 1.
   5422 	Add unconditional tests with corresponding double constants
   5423 	0x1.7a2ecc414a03fp+418, 0x1.4981285e98e79p-18 and
   5424 	0x1.7440bbff418b9p-18.
   5425 
   5426 2023-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5427 
   5428 	* testsuite/util/testsuite_abi.cc (check_version): Re-add
   5429 	CXXABI_1.3.14.
   5430 
   5431 2023-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5432 
   5433 	* testsuite/18_support/nested_exception/rethrow_if_nested-term.cc:
   5434 	Require effective target exceptions_enabled instead of using
   5435 	dg-skip-if.
   5436 	* testsuite/23_containers/vector/capacity/constexpr.cc: Expect
   5437 	shrink_to_fit() to be a no-op without exceptions enabled.
   5438 	* testsuite/23_containers/vector/capacity/shrink_to_fit.cc:
   5439 	Likewise.
   5440 	* testsuite/ext/bitmap_allocator/check_allocate_max_size.cc:
   5441 	Require effective target exceptions_enabled.
   5442 	* testsuite/ext/malloc_allocator/check_allocate_max_size.cc:
   5443 	Likewise.
   5444 	* testsuite/ext/mt_allocator/check_allocate_max_size.cc:
   5445 	Likewise.
   5446 	* testsuite/ext/new_allocator/check_allocate_max_size.cc:
   5447 	Likewise.
   5448 	* testsuite/ext/pool_allocator/check_allocate_max_size.cc:
   5449 	Likewise.
   5450 	* testsuite/ext/throw_allocator/check_allocate_max_size.cc:
   5451 	Likewise.
   5452 
   5453 2023-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5454 
   5455 	* testsuite/20_util/duration/cons/2.cc: Use values that aren't
   5456 	affected by rounding.
   5457 	* testsuite/20_util/from_chars/5.cc: Cast arithmetic result to
   5458 	double before comparing for equality.
   5459 	* testsuite/20_util/from_chars/6.cc: Likewise.
   5460 	* testsuite/20_util/variant/86874.cc: Use values that aren't
   5461 	affected by rounding.
   5462 	* testsuite/25_algorithms/lower_bound/partitioned.cc: Compare to
   5463 	original value instead of to floating-point-literal.
   5464 	* testsuite/26_numerics/random/discrete_distribution/cons/range.cc:
   5465 	Cast arithmetic result to double before comparing for equality.
   5466 	* testsuite/26_numerics/random/piecewise_constant_distribution/cons/range.cc:
   5467 	Likewise.
   5468 	* testsuite/26_numerics/random/piecewise_linear_distribution/cons/range.cc:
   5469 	Likewise.
   5470 	* testsuite/26_numerics/valarray/transcend.cc (eq): Check that
   5471 	the absolute difference is less than 0.01 instead of comparing
   5472 	to two decimal places.
   5473 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
   5474 	Cast arithmetic result to double before comparing for equality.
   5475 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
   5476 	Likewise.
   5477 	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
   5478 	Likewise.
   5479 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/01.cc:
   5480 	Likewise.
   5481 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
   5482 	Likewise.
   5483 	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
   5484 	Likewise.
   5485 	* testsuite/ext/random/hoyt_distribution/cons/parms.cc: Likewise.
   5486 
   5487 2023-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
   5488 
   5489 	Revert:
   5490 	2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5491 
   5492 	* configure.ac: Use AS_IF.
   5493 	* configure: Regenerate.
   5494 
   5495 2023-06-07  Thomas Schwinge  <thomas (a] codesourcery.com>
   5496 
   5497 	* testsuite/lib/prune.exp (libstdc++-dg-prune): Support
   5498 	'UNSUPPORTED: [...]: exception handling disabled'.
   5499 
   5500 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5501 
   5502 	* testsuite/util/testsuite_abi.cc (check_version): Add
   5503 	CXXABI_1.3.15 symver and make it the latestp. Remove
   5504 	GLIBCXX_IEEE128_3.4.31 and GLIBCXX_LDBL_3.4.31 from latestp.
   5505 
   5506 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5507 	    Jakub Jelinek  <jakub (a] redhat.com>
   5508 
   5509 	PR libstdc++/104772
   5510 	* include/std/limits: (numeric_limits<__float128>): Define
   5511 	for __STRICT_ANSI__ as well.
   5512 	* testsuite/18_support/numeric_limits/128bit.cc: Remove
   5513 	check for __STRICT_ANSI__.
   5514 
   5515 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5516 
   5517 	* configure.ac: Use AS_IF.
   5518 	* configure: Regenerate.
   5519 
   5520 2023-06-06  Matthias Kretz  <m.kretz (a] gsi.de>
   5521 
   5522 	PR libstdc++/109822
   5523 	* include/experimental/bits/simd_builtin.h (_S_store): Rewrite
   5524 	to avoid casts to other vector types. Implement store as
   5525 	succession of power-of-2 sized memcpy to avoid PR90424.
   5526 
   5527 2023-06-06  Matthias Kretz  <m.kretz (a] gsi.de>
   5528 
   5529 	PR libstdc++/110054
   5530 	* include/experimental/bits/simd_builtin.h (_S_masked_store):
   5531 	Call into deduced ABI's SimdImpl after conversion.
   5532 	* include/experimental/bits/simd_x86.h (_S_masked_store_nocvt):
   5533 	Don't use _mm_maskmoveu_si128. Use the generic fall-back
   5534 	implementation. Also fix masked stores without SSE2, which
   5535 	were not doing anything before.
   5536 
   5537 2023-06-06  Matthias Kretz  <m.kretz (a] gsi.de>
   5538 
   5539 	* include/experimental/bits/simd.h (__bit_cast): Use
   5540 	__gnu__::__vector_size__ instead of gnu::vector_size.
   5541 
   5542 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5543 
   5544 	PR libstdc++/110139
   5545 	* include/std/array (__array_traits<T, 0>::operator T*()): Make
   5546 	conversion operator explicit.
   5547 	(array::front): Use size_type as subscript operand.
   5548 	(array::data): Use static_cast to make conversion explicit.
   5549 	* testsuite/23_containers/array/element_access/110139.cc: New
   5550 	test.
   5551 
   5552 2023-06-06  Joseph Faulls  <Joseph.Faulls (a] imgtec.com>
   5553 
   5554 	* include/bits/locale_classes.tcc: Remove check for
   5555 	codecvt<char8_t, char, mbstate_t> facet.
   5556 
   5557 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5558 
   5559 	* src/filesystem/ops-common.h (do_copy_file) [O_CLOEXEC]: Set
   5560 	close-on-exec flag on file descriptors.
   5561 
   5562 2023-06-06  Jonathan Wakely  <jwakely (a] redhat.com>
   5563 
   5564 	PR libstdc++/108178
   5565 	* src/filesystem/ops-common.h (do_copy_file): Check for empty
   5566 	files by trying to read a character.
   5567 	* testsuite/27_io/filesystem/operations/copy_file_108178.cc:
   5568 	New test.
   5569 
   5570 2023-06-06  Jannik Glckert  <jannik.glueckert (a] gmail.com>
   5571 
   5572 	* acinclude.m4 (_GLIBCXX_USE_COPY_FILE_RANGE): Define.
   5573 	* config.h.in: Regenerate.
   5574 	* configure: Regenerate.
   5575 	* src/filesystem/ops-common.h (copy_file_copy_file_range):
   5576 	Define new function.
   5577 	(do_copy_file): Use it.
   5578 
   5579 2023-06-06  Jannik Glckert  <jannik.glueckert (a] gmail.com>
   5580 
   5581 	* acinclude.m4 (_GLIBCXX_HAVE_LSEEK): Define.
   5582 	* config.h.in: Regenerate.
   5583 	* configure: Regenerate.
   5584 	* src/filesystem/ops-common.h (copy_file_sendfile): Define new
   5585 	function for sendfile logic. Loop to support large files. Skip
   5586 	zero-length files.
   5587 	(do_copy_file): Use it.
   5588 
   5589 2023-06-04  Jason Merrill  <jason (a] redhat.com>
   5590 
   5591 	PR c++/97720
   5592 	* libsupc++/eh_call.cc (__cxa_call_terminate): Take void*.
   5593 	* config/abi/pre/gnu.ver: Add it.
   5594 
   5595 2023-06-02  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5596 
   5597 	* include/parallel/algobase.h: Include <parallel/search.h>.
   5598 
   5599 2023-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5600 
   5601 	* testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc:
   5602 	Add const to equality operator.
   5603 
   5604 2023-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5605 
   5606 	* include/std/expected (expected::and_then, expected::or_else)
   5607 	(expected::transform_error): Use _M_val and _M_unex instead of
   5608 	calling value() and error(), as per LWG 3938.
   5609 	(expected::transform): Likewise. Remove incorrect std::move
   5610 	calls from lvalue overloads.
   5611 	(expected<void, E>::and_then, expected<void, E>::or_else)
   5612 	(expected<void, E>::transform): Use _M_unex instead of calling
   5613 	error().
   5614 	* testsuite/20_util/expected/lwg3877.cc: Add checks for and_then
   5615 	and transform, and for std::expected<void, E>.
   5616 	* testsuite/20_util/expected/lwg3938.cc: New test.
   5617 
   5618 2023-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5619 
   5620 	PR libstdc++/110060
   5621 	* include/bits/stl_vector.h (_Vector_base::_M_invariant):
   5622 	Remove.
   5623 	(vector::size, vector::capacity): Remove calls to _M_invariant.
   5624 	* include/bits/vector.tcc (vector::_M_fill_assign): Add
   5625 	optimization hint to reallocating path.
   5626 	(vector::_M_assign_aux(FwdIter, FwdIter, forward_iterator_tag)):
   5627 	Likewise.
   5628 	* testsuite/23_containers/vector/capacity/invariant.cc: Moved
   5629 	to...
   5630 	* testsuite/23_containers/vector/modifiers/assign/no_realloc.cc:
   5631 	...here. Check assign(FwdIter, FwdIter) too.
   5632 	* testsuite/23_containers/vector/types/1.cc: Revert addition
   5633 	of -Wno-stringop-overread option.
   5634 
   5635 2023-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   5636 
   5637 	* doc/xml/manual/evolution.xml: Document removal of implicit
   5638 	allocator rebinding extensions in strict mode and for C++20.
   5639 	* doc/html/*: Regenerate.
   5640 
   5641 2023-06-01  Jason Merrill  <jason (a] redhat.com>
   5642 
   5643 	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Don't check
   5644 	handlers in the cleanup phase.
   5645 
   5646 2023-06-01  Matthias Kretz  <m.kretz (a] gsi.de>
   5647 
   5648 	PR libstdc++/110050
   5649 	* include/experimental/bits/simd.h (__vectorized_sizeof): With
   5650 	__have_neon_a32 only single-precision float works (in addition
   5651 	to integers).
   5652 
   5653 2023-06-01  Franois Dumont  <fdumont (a] gcc.gnu.org>
   5654 
   5655 	* include/bits/stl_algo.h
   5656 	(std::__search, std::search(_FwdIt1, _FwdIt1, _FwdIt2, _FwdIt2, _BinPred)): Move...
   5657 	* include/bits/stl_algobase.h: ...here.
   5658 	* include/std/functional: Replace <stl_algo.h> include by <stl_algobase.h>.
   5659 	* include/parallel/algo.h (std::__parallel::search<_FIt1, _FIt2, _BinaryPred>)
   5660 	(std::__parallel::__search_switch<_FIt1, _FIt2, _BinaryPred, _ItTag1, _ItTag2>):
   5661 	Move...
   5662 	* include/parallel/algobase.h: ...here.
   5663 	* include/experimental/functional: Remove <bits/stl_algo.h> and <parallel/algorithm>
   5664 	includes. Include <bits/stl_algobase.h>.
   5665 
   5666 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5667 
   5668 	PR libstdc++/109818
   5669 	* acinclude.m4 (GLIBCXX_ENABLE_C99): Add separate check for
   5670 	float_t and double_t and define HAVE_C99_FLT_EVAL_TYPES.
   5671 	* config.h.in: Regenerate.
   5672 	* configure: Regenerate.
   5673 	* include/c_global/cmath (float_t, double_t): Guard using new
   5674 	_GLIBCXX_HAVE_C99_FLT_EVAL_TYPES macro.
   5675 
   5676 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5677 
   5678 	* acinclude.m4 (GLIBCXX_ENABLE_C99): Add checks for C99 math
   5679 	functions and define _GLIBCXX_USE_C99_MATH_FUNCS. Move checks
   5680 	for C99 rounding functions to here.
   5681 	(GLIBCXX_CHECK_C99_TR1): Remove checks for C99 rounding
   5682 	functions from here.
   5683 	* config.h.in: Regenerate.
   5684 	* configure: Regenerate.
   5685 	* include/bits/random.h: Use _GLIBCXX_USE_C99_MATH_FUNCS instead
   5686 	of _GLIBCXX_USE_C99_MATH_TR1.
   5687 	* include/bits/random.tcc: Likewise.
   5688 	* include/c_compatibility/math.h: Likewise.
   5689 	* include/c_global/cmath: Likewise.
   5690 	* include/ext/random: Likewise.
   5691 	* include/ext/random.tcc: Likewise.
   5692 	* include/std/complex: Likewise.
   5693 	* testsuite/20_util/from_chars/4.cc: Likewise.
   5694 	* testsuite/20_util/from_chars/8.cc: Likewise.
   5695 	* testsuite/26_numerics/complex/proj.cc: Likewise.
   5696 	* testsuite/26_numerics/headers/cmath/60401.cc: Likewise.
   5697 	* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc:
   5698 	Likewise.
   5699 	* testsuite/lib/libstdc++.exp (check_v3_target_cstdint):
   5700 	Likewise.
   5701 	* testsuite/util/testsuite_random.h: Likewise.
   5702 
   5703 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5704 
   5705 	* include/bits/stl_vector.h (_Vector_base::_M_invariant()): New
   5706 	function.
   5707 	(vector::size(), vector::capacity()): Call _M_invariant().
   5708 	* testsuite/23_containers/vector/capacity/invariant.cc: New test.
   5709 	* testsuite/23_containers/vector/types/1.cc: Add suppression for
   5710 	false positive warning (PR110060).
   5711 
   5712 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5713 
   5714 	PR libstdc++/109921
   5715 	* src/c++17/floating_from_chars.cc: Check __FLT128_MANT_DIG__ is
   5716 	defined before trying to use _Float128.
   5717 
   5718 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5719 
   5720 	* acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Fix for 32-bit pointers
   5721 	to check __INT_PTR_WIDTH__ instead of sizeof(void*).
   5722 	* configure: Regenerate.
   5723 
   5724 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5725 
   5726 	* include/bits/unique_lock.h: Include <bits/error_constants.h>
   5727 	here for std::errc constants.
   5728 	* include/std/mutex: Do not include <bits/error_constants.h> and
   5729 	<exception> here.
   5730 
   5731 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5732 
   5733 	* configure.ac: Replace use of -o operator for test.
   5734 	* configure: Regenerate.
   5735 
   5736 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5737 
   5738 	* include/std/scoped_allocator (scoped_allocator_adaptor): Add
   5739 	noexcept to all constructors except the default constructor.
   5740 	(scoped_allocator_adaptor::inner_allocator): Add noexcept.
   5741 	(scoped_allocator_adaptor::outer_allocator): Likewise.
   5742 	* testsuite/20_util/scoped_allocator/noexcept.cc: New test.
   5743 
   5744 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5745 
   5746 	PR libstdc++/104772
   5747 	* include/std/limits (numeric_limits<__float128>): Define.
   5748 	* testsuite/18_support/numeric_limits/128bit.cc: New test.
   5749 
   5750 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5751 
   5752 	* acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Extend logic for avr and
   5753 	msp430 to all 16-bit targets.
   5754 	* configure: Regenerate.
   5755 
   5756 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5757 
   5758 	PR libstdc++/109921
   5759 	* src/c++17/floating_from_chars.cc (USE_STRTOF128_FOR_FROM_CHARS):
   5760 	Only define when USE_STRTOD_FOR_FROM_CHARS is also defined.
   5761 	(USE_STRTOD_FOR_FROM_CHARS): Do not undefine when long double is
   5762 	binary64.
   5763 	(from_chars(const char*, const char*, double&, chars_format)):
   5764 	Check __LDBL_MANT_DIG__ == __DBL_MANT_DIG__ here.
   5765 	(from_chars(const char*, const char*, _Float128&, chars_format))
   5766 	Only use from_chars_strtod when USE_STRTOD_FOR_FROM_CHARS is
   5767 	defined, otherwise parse a long double and convert to _Float128.
   5768 
   5769 2023-05-31  Jonathan Wakely  <jwakely (a] redhat.com>
   5770 
   5771 	PR libstdc++/109922
   5772 	* include/std/iomanip (operator>>(basic_istream&, _Setfill)):
   5773 	Add deprecated attribute to non-standard overload.
   5774 	* doc/xml/manual/evolution.xml: Document deprecation.
   5775 	* doc/html/*: Regenerate.
   5776 	* testsuite/27_io/manipulators/standard/char/1.cc: Add
   5777 	dg-warning for expected deprecated warning.
   5778 	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
   5779 	* testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
   5780 	* testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
   5781 
   5782 2023-05-30  Alexandre Oliva  <oliva (a] adacore.com>
   5783 
   5784 	* testsuite/20_util/from_chars/4.cc: Skip long double test06
   5785 	on x86_64-vxworks.
   5786 	* testsuite/20_util/to_chars/long_double.cc: Xfail run on
   5787 	x86_64-vxworks.
   5788 
   5789 2023-05-30  Matthias Kretz  <m.kretz (a] gsi.de>
   5790 
   5791 	PR libstdc++/109822
   5792 	* include/experimental/bits/simd.h (to_native): Use int NTTP
   5793 	as specified in PTS2.
   5794 	(to_compatible): Likewise. Add missing tag to call mask
   5795 	generator ctor.
   5796 	* testsuite/experimental/simd/pr109822_cast_functions.cc: New
   5797 	test.
   5798 
   5799 2023-05-30  Matthias Kretz  <m.kretz (a] gsi.de>
   5800 
   5801 	* testsuite/experimental/simd/tests/integer_operators.cc:
   5802 	Compute expected value differently to avoid getting turned into
   5803 	a vector shift.
   5804 
   5805 2023-05-30  Matthias Kretz  <m.kretz (a] gsi.de>
   5806 
   5807 	* testsuite/experimental/simd/tests/operator_cvt.cc: Make long
   5808 	double <-> (u)long conversion tests conditional on sizeof(long
   5809 	double) and sizeof(long).
   5810 
   5811 2023-05-26  Matthias Kretz  <m.kretz (a] gsi.de>
   5812 
   5813 	* include/experimental/bits/simd_ppc.h (_S_bit_shift_left):
   5814 	Negative __y is UB, so prefer signed compare.
   5815 
   5816 2023-05-25  Jonathan Wakely  <jwakely (a] redhat.com>
   5817 
   5818 	* testsuite/util/testsuite_allocator.h (PointerBase): Add
   5819 	relational operators.
   5820 
   5821 2023-05-25  Alexandre Oliva  <oliva (a] adacore.com>
   5822 
   5823 	* testsuite/20_util/to_chars/long_double.cc: Expect execution
   5824 	fail on x86-vxworks.
   5825 
   5826 2023-05-24  Matthias Kretz  <m.kretz (a] gsi.de>
   5827 
   5828 	PR libstdc++/109949
   5829 	* include/experimental/bits/simd.h (__intrinsic_type): If
   5830 	__ALTIVEC__ is defined, map gnu::vector_size types to their
   5831 	corresponding __vector T types without losing unsignedness of
   5832 	integer types. Also prefer long long over long.
   5833 	* include/experimental/bits/simd_ppc.h (_S_popcount): Cast mask
   5834 	object to the expected unsigned vector type.
   5835 
   5836 2023-05-24  Matthias Kretz  <m.kretz (a] gsi.de>
   5837 
   5838 	PR libstdc++/109261
   5839 	* include/experimental/bits/simd.h (__intrinsic_type):
   5840 	Specialize __intrinsic_type<double, 8> and
   5841 	__intrinsic_type<double, 16> in any case, but provide the member
   5842 	type only with __aarch64__.
   5843 
   5844 2023-05-24  Matthias Kretz  <m.kretz (a] gsi.de>
   5845 
   5846 	PR libstdc++/109261
   5847 	* include/experimental/bits/simd_neon.h (_S_reduce): Add
   5848 	constexpr and make NEON implementation conditional on
   5849 	not __builtin_is_constant_evaluated.
   5850 
   5851 2023-05-23  Matthias Kretz  <m.kretz (a] gsi.de>
   5852 
   5853 	PR libstdc++/109261
   5854 	* include/experimental/bits/simd.h (_SimdWrapper::_M_set):
   5855 	Avoid vector builtin subscripting in constant expressions.
   5856 	(resizing_simd_cast): Avoid memcpy if constant_evaluated.
   5857 	(const_where_expression, where_expression, where)
   5858 	(__extract_part, simd_mask, _SimdIntOperators, simd): Add either
   5859 	_GLIBCXX_SIMD_CONSTEXPR (on public APIs), or constexpr (on
   5860 	internal APIs).
   5861 	* include/experimental/bits/simd_builtin.h (__vector_permute)
   5862 	(__vector_shuffle, __extract_part, _GnuTraits::_SimdCastType1)
   5863 	(_GnuTraits::_SimdCastType2, _SimdImplBuiltin)
   5864 	(_MaskImplBuiltin::_S_store): Add constexpr.
   5865 	(_CommonImplBuiltin::_S_store_bool_array)
   5866 	(_SimdImplBuiltin::_S_load, _SimdImplBuiltin::_S_store)
   5867 	(_SimdImplBuiltin::_S_reduce, _MaskImplBuiltin::_S_load): Add
   5868 	constant_evaluated case.
   5869 	* include/experimental/bits/simd_fixed_size.h
   5870 	(_S_masked_load): Reword comment.
   5871 	(__tuple_element_meta, __make_meta, _SimdTuple::_M_apply_r)
   5872 	(_SimdTuple::_M_subscript_read, _SimdTuple::_M_subscript_write)
   5873 	(__make_simd_tuple, __optimize_simd_tuple, __extract_part)
   5874 	(__autocvt_to_simd, _Fixed::__traits::_SimdBase)
   5875 	(_Fixed::__traits::_SimdCastType, _SimdImplFixedSize): Add
   5876 	constexpr.
   5877 	(_SimdTuple::operator[], _M_set): Add constexpr and add
   5878 	constant_evaluated case.
   5879 	(_MaskImplFixedSize::_S_load): Add constant_evaluated case.
   5880 	* include/experimental/bits/simd_scalar.h: Add constexpr.
   5881 	* include/experimental/bits/simd_x86.h (_CommonImplX86): Add
   5882 	constexpr and add constant_evaluated case.
   5883 	(_SimdImplX86::_S_equal_to, _S_not_equal_to, _S_less)
   5884 	(_S_less_equal): Value-initialize to satisfy constexpr
   5885 	evaluation.
   5886 	(_MaskImplX86::_S_load): Add constant_evaluated case.
   5887 	(_MaskImplX86::_S_store): Add constexpr and constant_evaluated
   5888 	case. Value-initialize local variables.
   5889 	(_MaskImplX86::_S_logical_and, _S_logical_or, _S_bit_not)
   5890 	(_S_bit_and, _S_bit_or, _S_bit_xor): Add constant_evaluated
   5891 	case.
   5892 	* testsuite/experimental/simd/pr109261_constexpr_simd.cc: New
   5893 	test.
   5894 
   5895 2023-05-22  Matthias Kretz  <m.kretz (a] gsi.de>
   5896 
   5897 	* include/experimental/bits/simd_builtin.h (_S_fpclassify): Move
   5898 	__infn into #ifdef'ed block.
   5899 	* testsuite/experimental/simd/tests/fpclassify.cc: Declare
   5900 	constants only when used.
   5901 	* testsuite/experimental/simd/tests/frexp.cc: Likewise.
   5902 	* testsuite/experimental/simd/tests/logarithm.cc: Likewise.
   5903 	* testsuite/experimental/simd/tests/trunc_ceil_floor.cc:
   5904 	Likewise.
   5905 	* testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
   5906 	Move totest and expect1 into #ifdef'ed block.
   5907 
   5908 2023-05-19  Gerald Pfeifer  <gerald (a] pfeifer.com>
   5909 
   5910 	* doc/xml/manual/strings.xml: Move lafstern.org reference to https.
   5911 	* doc/html/manual/strings.html: Regenerate.
   5912 
   5913 2023-05-17  Jakub Jelinek  <jakub (a] redhat.com>
   5914 
   5915 	PR libstdc++/109883
   5916 	* testsuite/26_numerics/headers/cmath/constexpr_std_c++23.cc: New test.
   5917 
   5918 2023-05-17  Jakub Jelinek  <jakub (a] redhat.com>
   5919 
   5920 	PR libstdc++/109883
   5921 	* include/c_global/cmath (atan2, fmod, pow): Move
   5922 	__gnu_cxx::__promote_2 using templates after _Float{16,32,64,128} and
   5923 	__gnu_cxx::__bfloat16_t overloads.
   5924 	(copysign, fdim, fmax, fmin, hypot, nextafter, remainder, remquo):
   5925 	Likewise.
   5926 	(fma): Move __gnu_cxx::__promote_3 using template after
   5927 	_Float{16,32,64,128} and __gnu_cxx::__bfloat16_t overloads.
   5928 
   5929 2023-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5930 
   5931 	* testsuite/18_support/headers/limits/synopsis.cc: Uncomment
   5932 	checks for float_round_style and float_denorm_style.
   5933 
   5934 2023-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5935 
   5936 	* include/bits/c++config: Add system_header pragma.
   5937 
   5938 2023-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5939 
   5940 	* include/std/expected (expected::and_then, expected::or_else)
   5941 	(expected::transform, expected::transform_error): Fix exception
   5942 	specifications as per LWG 3877.
   5943 	(expected<void, E>::and_then, expected<void, E>::transform):
   5944 	Likewise.
   5945 	* testsuite/20_util/expected/lwg3877.cc: New test.
   5946 
   5947 2023-05-17  Ken Matsui  <kmatsui (a] cs.washington.edu>
   5948 
   5949 	* include/std/type_traits: Use __bool_constant instead of
   5950 	integral_constant.
   5951 
   5952 2023-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   5953 
   5954 	* configure: Regenerate.
   5955 
   5956 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   5957 
   5958 	PR libstdc++/109741
   5959 	* acinclude.m4 (GLIBCXX_CHECK_ALIGNAS_CACHELINE): Define.
   5960 	* config.h.in: Regenerate.
   5961 	* configure: Regenerate.
   5962 	* configure.ac: Use GLIBCXX_CHECK_ALIGNAS_CACHELINE.
   5963 	* src/c++11/shared_ptr.cc (__gnu_internal::get_mutex): Do not
   5964 	align lock table if not supported. use __GCC_DESTRUCTIVE_SIZE
   5965 	instead of hardcoded 64.
   5966 
   5967 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   5968 
   5969 	* acinclude.m4 (GLIBCXX_USE_C99): Check for isblank in C++11
   5970 	mode and define _GLIBCXX_USE_C99_CTYPE. Check for <fenv.h>
   5971 	functions in C++11 mode and define _GLIBCXX_USE_C99_FENV.
   5972 	* config.h.in: Regenerate.
   5973 	* configure: Regenerate.
   5974 	* include/c_compatibility/fenv.h: Check _GLIBCXX_USE_C99_FENV
   5975 	instead of _GLIBCXX_USE_C99_FENV_TR1.
   5976 	* include/c_global/cfenv: Likewise.
   5977 	* include/c_global/cctype: Check _GLIBCXX_USE_C99_CTYPE instead
   5978 	of _GLIBCXX_USE_C99_CTYPE_TR1.
   5979 
   5980 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   5981 
   5982 	* acinclude.m4 (GLIBCXX_USE_C99): Check for <stdint.h> types in
   5983 	C++11 mode and define _GLIBCXX_USE_C99_STDINT. Check for
   5984 	<inttypes.h> features in C++11 mode and define
   5985 	_GLIBCXX_USE_C99_INTTYPES and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T.
   5986 	* config.h.in: Regenerate.
   5987 	* configure: Regenerate.
   5988 	* doc/doxygen/user.cfg.in (PREDEFINED): Add new macros.
   5989 	* include/bits/chrono.h: Check _GLIBCXX_USE_C99_STDINT instead
   5990 	of _GLIBCXX_USE_C99_STDINT_TR1.
   5991 	* include/c_compatibility/inttypes.h: Check
   5992 	_GLIBCXX_USE_C99_INTTYPES and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T
   5993 	instead of _GLIBCXX_USE_C99_INTTYPES_TR1 and
   5994 	_GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
   5995 	* include/c_compatibility/stdatomic.h: Check
   5996 	_GLIBCXX_USE_C99_STDINT instead of _GLIBCXX_USE_C99_STDINT_TR1.
   5997 	* include/c_compatibility/stdint.h: Likewise.
   5998 	* include/c_global/cinttypes: Check _GLIBCXX_USE_C99_INTTYPES
   5999 	and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T instead of
   6000 	_GLIBCXX_USE_C99_INTTYPES_TR1 and
   6001 	_GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
   6002 	* include/c_global/cstdint: Check _GLIBCXX_USE_C99_STDINT
   6003 	instead of _GLIBCXX_USE_C99_STDINT_TR1.
   6004 	* include/std/atomic: Likewise.
   6005 	* src/c++11/cow-stdexcept.cc: Likewise.
   6006 	* testsuite/29_atomics/headers/stdatomic.h/c_compat.cc:
   6007 	Likewise.
   6008 	* testsuite/lib/libstdc++.exp (check_v3_target_cstdint):
   6009 	Likewise.
   6010 
   6011 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6012 
   6013 	* acinclude.m4 (GLIBCXX_USE_C99): Check for complex inverse trig
   6014 	functions in C++11 mode and define _GLIBCXX_USE_C99_COMPLEX_ARC.
   6015 	* config.h.in: Regenerate.
   6016 	* configure: Regenerate.
   6017 	* doc/doxygen/user.cfg.in (PREDEFINED): Add new macro.
   6018 	* include/std/complex: Check _GLIBCXX_USE_C99_COMPLEX_ARC
   6019 	instead of _GLIBCXX_USE_C99_COMPLEX_TR1.
   6020 
   6021 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6022 
   6023 	* testsuite/ext/debug_allocator/check_deallocate_null.cc: Add
   6024 	assertion to ensure expected exception is throw.
   6025 
   6026 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6027 
   6028 	* testsuite/libstdc++-prettyprinters/chrono.cc: Only test
   6029 	printer for chrono::zoned_time for cx11 ABI and tzdb effective
   6030 	target.
   6031 
   6032 2023-05-16  Jonathan Wakely  <jwakely (a] redhat.com>
   6033 
   6034 	* acinclude.m4 (GLIBCXX_CHECK_PTHREAD_MUTEX_CLOCKLOCK): Define
   6035 	_GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK in terms of _GLIBCXX_TSAN.
   6036 	* configure: Regenerate.
   6037 
   6038 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6039 
   6040 	* acinclude.m4 (GLIBCXX_CHECK_C99_TR1): Use a non-null pointer
   6041 	to check for nan, nanf, and nanl.
   6042 	* configure: Regenerate.
   6043 
   6044 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6045 
   6046 	* include/bits/char_traits.h (char_traits<char16_t>): Do not
   6047 	depend on _GLIBCXX_USE_C99_STDINT_TR1.
   6048 	(char_traits<char32_t>): Likewise.
   6049 	* include/experimental/source_location: Likewise.
   6050 
   6051 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6052 
   6053 	* include/std/atomic (atomic_int_least8_t, atomic_uint_least8_t)
   6054 	(atomic_int_least16_t, atomic_uint_least16_t)
   6055 	(atomic_int_least32_t, atomic_uint_least32_t)
   6056 	(atomic_int_least64_t, atomic_uint_least64_t)
   6057 	(atomic_int_fast16_t, atomic_uint_fast16_t)
   6058 	(atomic_int_fast32_t, atomic_uint_fast32_t)
   6059 	(atomic_int_fast64_t, atomic_uint_fast64_t)
   6060 	(atomic_intmax_t, atomic_uintmax_t): Define unconditionally.
   6061 	* testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: Adjust.
   6062 
   6063 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6064 
   6065 	* include/bits/algorithmfwd.h (shuffle): Do not depend on
   6066 	_GLIBCXX_USE_C99_STDINT_TR1.
   6067 	* include/bits/ranges_algo.h (shuffle): Likewise.
   6068 	* include/bits/stl_algo.h (shuffle): Likewise.
   6069 	* include/ext/random: Likewise.
   6070 	* include/ext/throw_allocator.h (random_condition): Likewise.
   6071 	* include/std/random: Likewise.
   6072 	* src/c++11/cow-string-inst.cc: Likewise.
   6073 	* src/c++11/random.cc: Likewise.
   6074 
   6075 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6076 
   6077 	* testsuite/experimental/feat-cxx14.cc: Remove dependency on
   6078 	_GLIBCXX_USE_C99_STDINT_TR1.
   6079 
   6080 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6081 
   6082 	* testsuite/22_locale/locale/cons/unicode.cc: Remove dependency
   6083 	on _GLIBCXX_USE_C99_STDINT_TR1.
   6084 
   6085 2023-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6086 
   6087 	* testsuite/21_strings/basic_string_view/typedefs.cc: Remove
   6088 	dependency on _GLIBCXX_USE_C99_STDINT_TR1.
   6089 	* testsuite/experimental/string_view/typedefs.cc: Likewise.
   6090 
   6091 2023-05-11  Jonathan Wakely  <jwakely (a] redhat.com>
   6092 
   6093 	* src/c++17/floating_from_chars.cc [USE_STRTOD_FOR_FROM_CHARS]
   6094 	(auto_locale, auto_ferounding): New class types.
   6095 	(from_chars_impl): Use auto_locale and auto_ferounding.
   6096 
   6097 2023-05-11  Jonathan Wakely  <jwakely (a] redhat.com>
   6098 
   6099 	PR libstdc++/109772
   6100 	* include/std/chrono (hh_mm_ss::__fits): Remove variable
   6101 	template.
   6102 	(hh_mm_ss::__subseconds): Remove __fits from constraints.
   6103 	* testsuite/std/time/hh_mm_ss/109772.cc: New test.
   6104 	* testsuite/std/time/hh_mm_ss/1.cc: Adjust expected size for
   6105 	hh_mm_ss<duration<int, std::pico>>.
   6106 
   6107 2023-05-11  Jonathan Wakely  <jwakely (a] redhat.com>
   6108 
   6109 	* config/abi/pre/gnu.ver: Export basic_string::_S_allocate.
   6110 	* include/bits/basic_ios.h: Add static assertion checking
   6111 	traits_type::value_type.
   6112 	* include/bits/basic_string.h: Likewise. Do not rebind
   6113 	allocator, and add static assertion checking its value_type.
   6114 	(basic_string::_Alloc_traits_impl): Remove class template.
   6115 	(basic_string::_S_allocate): New static member function.
   6116 	(basic_string::assign): Use _S_allocate.
   6117 	* include/bits/basic_string.tcc (basic_string::_M_create)
   6118 	(basic_string::reserve, basic_string::_M_replace): Likewise.
   6119 	* testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc:
   6120 	Disable for C++20 and later.
   6121 	* testsuite/21_strings/basic_string/requirements/explicit_instantiation/int.cc:
   6122 	Likweise.
   6123 
   6124 2023-05-11  Jonathan Wakely  <jwakely (a] redhat.com>
   6125 
   6126 	PR libstdc++/109758
   6127 	* include/bits/std_abs.h (abs(__float128)): Handle negative NaN
   6128 	and negative zero correctly.
   6129 	* testsuite/26_numerics/headers/cmath/109758.cc: New test.
   6130 
   6131 2023-05-10  Franois Dumont  <fdumont (a] gcc.gnu.org>
   6132 
   6133 	* include/bits/hashtable_policy.h
   6134 	(_NodeBuilder<>::_S_build): Use __node_ptr.
   6135 	(_ReuseOrAllocNode<>): Use __node_ptr in place of __node_type*.
   6136 	(_AllocNode<>): Likewise.
   6137 	(_Equality<>::_M_equal): Remove const_iterator usages. Only preserved
   6138 	to call std::is_permutation in the non-unique key implementation.
   6139 	* include/bits/hashtable.h (_Hashtable<>::_M_update_begin()): Capture
   6140 	_M_begin() once.
   6141 	(_Hashtable<>::_M_bucket_begin(size_type)): Implement implicitly inline.
   6142 	(_Hashtable<>::_M_insert_bucket_begin): Likewise.
   6143 	(_Hashtable<>::_M_remove_bucket_begin): Likewise.
   6144 	(_Hashtable<>::_M_compute_hash_code): Use __node_ptr rather than
   6145 	const_iterator.
   6146 	(_Hashtable<>::find): Likewise.
   6147 	(_Hashtable<>::_M_emplace): Likewise.
   6148 	(_Hashtable<>::_M_insert_unique): Likewise.
   6149 
   6150 2023-05-09  Jonathan Wakely  <jwakely (a] redhat.com>
   6151 
   6152 	* python/libstdcxx/v6/printers.py (StdChronoDurationPrinter):
   6153 	Print floating-point durations correctly.
   6154 	(StdChronoTimePointPrinter): Support printing only the value,
   6155 	not the type name. Uncomment handling for known clocks.
   6156 	(StdChronoZonedTimePrinter): Remove type names from output.
   6157 	(StdChronoCalendarPrinter): Fix hh_mm_ss member access.
   6158 	(StdChronoTimeZonePrinter): Add equals sign to output.
   6159 	* testsuite/libstdc++-prettyprinters/chrono.cc: New test.
   6160 
   6161 2023-05-05  Alexandre Oliva  <oliva (a] adacore.com>
   6162 
   6163 	* testsuite/20_util/from_chars/4.cc: Skip long double test06
   6164 	on aarch64-vxworks.
   6165 	* testsuite/20_util/to_chars/long_double.cc: Xfail run on
   6166 	aarch64-vxworks.
   6167 
   6168 2023-05-04  Jonathan Wakely  <jwakely (a] redhat.com>
   6169 
   6170 	* doc/xml/manual/abi.xml (abi.versioning.history): Document
   6171 	libstdc++.so.6.0.32 and GLIBCXX_3.4.32 version.
   6172 	* doc/html/manual/abi.html: Regenerate.
   6173 
   6174 2023-05-04  Florian Weimer  <fweimer (a] redhat.com>
   6175 
   6176 	* doc/xml/manual/abi.xml (abi.versioning.history): Add
   6177 	GCC_7.0.0, GCC_9.0.0, GCC_11.0, GCC_12.0.0, GCC_13.0.0 for
   6178 	libgcc_s.
   6179 
   6180 2023-05-03  Jakub Jelinek  <jakub (a] redhat.com>
   6181 
   6182 	* src/c++17/floating_from_chars.cc
   6183 	(_ZSt10from_charsPKcS0_RDF128_St12chars_format): New alias to
   6184 	_ZSt10from_charsPKcS0_Ru9__ieee128St12chars_format.
   6185 	* src/c++17/floating_to_chars.cc (_ZSt8to_charsPcS_DF128_): New alias to
   6186 	_ZSt8to_charsPcS_u9__ieee128.
   6187 	(_ZSt8to_charsPcS_DF128_St12chars_format): New alias to
   6188 	_ZSt8to_charsPcS_u9__ieee128St12chars_format.
   6189 	(_ZSt8to_charsPcS_DF128_St12chars_formati): New alias to
   6190 	_ZSt8to_charsPcS_u9__ieee128St12chars_formati.
   6191 	* config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Updated.
   6192 
   6193 2023-05-03  Jakub Jelinek  <jakub (a] redhat.com>
   6194 
   6195 	* configure.host (abi_baseline_pair): Use powerpc64le-linux-gnu
   6196 	rather than powerpc64-linux-gnu for powerpc64le*-linux*.
   6197 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Remove
   6198 	_ZTI*DF128_, _ZTI*DF64x symbols and symbols in
   6199 	GLIBCXX_IEEE128_3.4.{29,30,31} and CXXABI_IEEE128_1.3.13 symbol
   6200 	versions.
   6201 	* config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: New
   6202 	file.
   6203 
   6204 2023-05-03  Kefu Chai  <kefu.chai (a] scylladb.com>
   6205 	    Jonathan Wakely  <jwakely (a] redhat.com>
   6206 
   6207 	PR libstdc++/109703
   6208 	* include/bits/basic_string.h (basic_string(Iter, Iter, Alloc)):
   6209 	Initialize _M_string_length.
   6210 
   6211 2023-05-02  Jakub Jelinek  <jakub (a] redhat.com>
   6212 
   6213 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   6214 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   6215 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
   6216 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
   6217 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
   6218 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
   6219 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   6220 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   6221 
   6222 2023-05-02  Jakub Jelinek  <jakub (a] redhat.com>
   6223 
   6224 	PR libstdc++/109694
   6225 	* src/c++98/ios_init.cc: Add #pragma GCC diagnostic ignored for
   6226 	-Wattribute-alias.
   6227 
   6228 2023-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6229 
   6230 	* include/bits/random.h (gamma_distribution): Add to the right
   6231 	doxygen group.
   6232 	(discrete_distribution, piecewise_constant_distribution)
   6233 	(piecewise_linear_distribution): Create a new doxygen group and
   6234 	fix the incomplete doxygen comments.
   6235 	* include/bits/uniform_int_dist.h (uniform_int_distribution):
   6236 	Add to doxygen group.
   6237 
   6238 2023-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6239 
   6240 	* include/bits/uses_allocator.h: Add missing @file comment.
   6241 	* include/bits/regex.tcc: Remove stray doxygen comments.
   6242 	* include/experimental/memory_resource: Likewise.
   6243 	* include/std/bit: Tweak doxygen @cond comments.
   6244 	* include/std/expected: Likewise.
   6245 	* include/std/numbers: Likewise.
   6246 
   6247 2023-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6248 
   6249 	* doc/doxygen/user.cfg.in (STRIP_FROM_PATH): Remove prefixes
   6250 	from header paths.
   6251 
   6252 2023-04-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6253 
   6254 	* include/bits/move.h: Simplify opening/closing namespace std.
   6255 
   6256 2023-04-28  Jakub Jelinek  <jakub (a] redhat.com>
   6257 
   6258 	PR libstdc++/108969
   6259 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.32): Export
   6260 	_ZSt21ios_base_library_initv.
   6261 	* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.32
   6262 	symver and make it the latestp.
   6263 	* src/c++98/ios_init.cc (ios_base_library_init): New alias.
   6264 	* acinclude.m4 (libtool_VERSION): Change to 6:32:0.
   6265 	* include/std/iostream: If init_priority attribute is supported
   6266 	and _GLIBCXX_SYMVER_GNU, force undefined _ZSt21ios_base_library_initv
   6267 	symbol into the object.
   6268 	* configure: Regenerated.
   6269 
   6270 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6271 
   6272 	* include/bits/mofunc_impl.h: Fix typo in doxygen comment.
   6273 	* include/std/format: Likewise.
   6274 
   6275 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6276 
   6277 	* doc/doxygen/user.cfg.in (FORMULA_TRANSPARENT, DOT_FONTNAME)
   6278 	(DOT_FONTSIZE, DOT_TRANSPARENT): Remove obsolete options.
   6279 
   6280 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6281 
   6282 	* doc/doxygen/user.cfg.in (SOURCE_BROWSER): Only set to YES for
   6283 	HTML docs.
   6284 	* include/bits/gslice_array.h (_DEFINE_VALARRAY_OPERATOR): Omit
   6285 	from doxygen docs.
   6286 	* include/bits/indirect_array.h (_DEFINE_VALARRAY_OPERATOR):
   6287 	Likewise.
   6288 	* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR):
   6289 	Likewise.
   6290 	* include/bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR):
   6291 	Likewise.
   6292 	* include/std/valarray (_DEFINE_VALARRAY_UNARY_OPERATOR)
   6293 	(_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT)
   6294 	(_DEFINE_VALARRAY_EXPR_AUGMENTED_ASSIGNMENT)
   6295 	(_DEFINE_BINARY_OPERATOR): Likewise.
   6296 
   6297 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6298 
   6299 	* include/bits/memory_resource.h: Improve doxygen comments.
   6300 	* include/std/memory_resource: Likewise.
   6301 
   6302 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6303 
   6304 	PR libstdc++/40380
   6305 	* include/bits/basic_string.h: Improve doxygen comments.
   6306 	* include/bits/cow_string.h: Likewise.
   6307 	* include/bits/forward_list.h: Likewise.
   6308 	* include/bits/fs_dir.h: Likewise.
   6309 	* include/bits/fs_path.h: Likewise.
   6310 	* include/bits/quoted_string.h: Likewise.
   6311 	* include/bits/stl_bvector.h: Likewise.
   6312 	* include/bits/stl_map.h: Likewise.
   6313 	* include/bits/stl_multimap.h: Likewise.
   6314 	* include/bits/stl_multiset.h: Likewise.
   6315 	* include/bits/stl_set.h: Likewise.
   6316 	* include/bits/stl_vector.h: Likewise.
   6317 	* include/bits/unordered_map.h: Likewise.
   6318 	* include/bits/unordered_set.h: Likewise.
   6319 	* include/std/filesystem: Likewise.
   6320 	* include/std/iomanip: Likewise.
   6321 
   6322 2023-04-27  Jonathan Wakely  <jwakely (a] redhat.com>
   6323 
   6324 	PR libstdc++/105081
   6325 	* src/c++11/random.cc (__throw_syserr): New function.
   6326 	(random_device::_M_init, random_device::_M_init_pretr1): Use new
   6327 	function for bad tokens.
   6328 	(random_device::_M_getval): Use new function for read errors.
   6329 	* testsuite/util/testsuite_random.h (random_device_available):
   6330 	Change catch handler to use std::system_error.
   6331 
   6332 2023-04-24  Patrick Palka  <ppalka (a] redhat.com>
   6333 
   6334 	* include/bits/max_size_type.h (__max_diff_type::operator>>=):
   6335 	Fix propagation of sign bit.
   6336 	* testsuite/std/ranges/iota/max_size_type.cc: Avoid using the
   6337 	non-standard 'signed typedef-name'.  Add some compile-time tests
   6338 	for right-shifting a negative __max_diff_type value by more than
   6339 	one.
   6340 
   6341 2023-04-19  Patrick Palka  <ppalka (a] redhat.com>
   6342 	    Jonathan Wakely  <jwakely (a] redhat.com>
   6343 
   6344 	PR c++/100157
   6345 	* include/bits/utility.h (_Nth_type): Conditionally define in
   6346 	terms of __type_pack_element if available.
   6347 	* testsuite/20_util/tuple/element_access/get_neg.cc: Prune
   6348 	additional errors from the new built-in.
   6349 
   6350 2023-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   6351 
   6352 	Revert:
   6353 	2023-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6354 
   6355 	PR libstdc++/108969
   6356 	* src/Makefile.am: Move globals_io.cc to here.
   6357 	* src/Makefile.in: Regenerate.
   6358 	* src/c++98/Makefile.am: Remove globals_io.cc from here.
   6359 	* src/c++98/Makefile.in: Regenerate.
   6360 	* src/c++98/globals_io.cc [_GLIBCXX_SYMVER_GNU] (cin): Adjust
   6361 	symbol name and then export with GLIBCXX_3.4.31 symver.
   6362 	(cout, cerr, clog, wcin, wcout, wcerr, wclog): Likewise.
   6363 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt:
   6364 	Regenerate.
   6365 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt:
   6366 	Regenerate.
   6367 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt:
   6368 	Regenerate.
   6369 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
   6370 	Regenerate.
   6371 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt:
   6372 	Regenerate.
   6373 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
   6374 	Regenerate.
   6375 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt:
   6376 	Regenerate.
   6377 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt:
   6378 	Regenerate.
   6379 	* config/abi/pre/gnu.ver: Add iostream objects to new symver.
   6380 
   6381 2023-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   6382 
   6383 	Revert:
   6384 	2023-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6385 
   6386 	PR libstdc++/108969
   6387 	* config/abi/pre/gnu.ver: Fix preprocessor condition.
   6388 
   6389 2023-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6390 
   6391 	* doc/xml/manual/extensions.xml: Fix example to declare and
   6392 	qualify std::free, and use NULL instead of 0.
   6393 	* doc/html/manual/ext_demangling.html: Regenerate.
   6394 	* libsupc++/cxxabi.h: Adjust doxygen comments.
   6395 
   6396 2023-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6397 
   6398 	PR libstdc++/108969
   6399 	* config/abi/pre/gnu.ver: Fix preprocessor condition.
   6400 
   6401 2023-04-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6402 
   6403 	PR libstdc++/108969
   6404 	* src/Makefile.am: Move globals_io.cc to here.
   6405 	* src/Makefile.in: Regenerate.
   6406 	* src/c++98/Makefile.am: Remove globals_io.cc from here.
   6407 	* src/c++98/Makefile.in: Regenerate.
   6408 	* src/c++98/globals_io.cc [_GLIBCXX_SYMVER_GNU] (cin): Adjust
   6409 	symbol name and then export with GLIBCXX_3.4.31 symver.
   6410 	(cout, cerr, clog, wcin, wcout, wcerr, wclog): Likewise.
   6411 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt:
   6412 	Regenerate.
   6413 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt:
   6414 	Regenerate.
   6415 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt:
   6416 	Regenerate.
   6417 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
   6418 	Regenerate.
   6419 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt:
   6420 	Regenerate.
   6421 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
   6422 	Regenerate.
   6423 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt:
   6424 	Regenerate.
   6425 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt:
   6426 	Regenerate.
   6427 	* config/abi/pre/gnu.ver: Add iostream objects to new symver.
   6428 
   6429 2023-04-18  Patrick Palka  <ppalka (a] redhat.com>
   6430 
   6431 	PR libstdc++/108827
   6432 	* include/bits/ranges_cmp.h (__cpp_lib_ranges): Bump value
   6433 	for C++23.
   6434 	* include/std/ranges (range_adaptor_closure): Define for C++23.
   6435 	* include/std/version (__cpp_lib_ranges): Bump value for
   6436 	C++23.
   6437 	* testsuite/std/ranges/version_c++23.cc: Bump expected value
   6438 	of __cpp_lib_ranges.
   6439 	* testsuite/std/ranges/range_adaptor_closure.cc: New test.
   6440 
   6441 2023-04-18  Patrick Palka  <ppalka (a] redhat.com>
   6442 
   6443 	* include/bits/ranges_algo.h (__cpp_lib_ranges_contains):
   6444 	Define for C++23.
   6445 	(__cpp_lib_ranges_iota): Likewise.
   6446 	(__cpp_lib_ranges_find_last): Likewise.
   6447 	(__cpp_lib_fold): Rename to ...
   6448 	(__cpp_lib_ranges_fold): ... this.
   6449 	* include/std/version: As above.
   6450 	* testsuite/25_algorithms/fold_left/1.cc: Adjust after
   6451 	renaming __cpp_lib_fold.
   6452 	* testsuite/std/ranges/version_c++23.cc: Verify values
   6453 	of the above feature-test macros.
   6454 
   6455 2023-04-18  Patrick Palka  <ppalka (a] redhat.com>
   6456 
   6457 	PR libstdc++/109525
   6458 	* include/std/ranges (views::_AsConst::operator()): Add
   6459 	missing const to constant_range test.
   6460 	* testsuite/std/ranges/adaptors/as_const/1.cc (test02):
   6461 	Improve formatting.  Adjust expected type of v2.
   6462 	(test03): New test.
   6463 
   6464 2023-04-14  Patrick Palka  <ppalka (a] redhat.com>
   6465 
   6466 	* include/bits/ranges_base.h (const_iterator_t): Define for C++23.
   6467 	(const_sentinel_t): Likewise.
   6468 	(range_const_reference_t): Likewise.
   6469 	(constant_range): Likewise.
   6470 	(__cust_access::__possibly_const_range): Likewise, replacing ...
   6471 	(__cust_access::__as_const): ... this.
   6472 	(__cust_access::_CBegin::operator()): Redefine for C++23 as per P2278R4.
   6473 	(__cust_access::_CEnd::operator()): Likewise.
   6474 	(__cust_access::_CRBegin::operator()): Likewise.
   6475 	(__cust_access::_CREnd::operator()): Likewise.
   6476 	(__cust_access::_CData::operator()): Likewise.
   6477 	* include/bits/ranges_util.h (ranges::__detail::__different_from):
   6478 	Make it an alias of std::__detail::__different_from.
   6479 	(view_interface::cbegin): Define for C++23.
   6480 	(view_interface::cend): Likewise.
   6481 	* include/bits/stl_iterator.h (__detail::__different_from): Define.
   6482 	(iter_const_reference_t): Define for C++23.
   6483 	(__detail::__constant_iterator): Likewise.
   6484 	(__detail::__is_const_iterator): Likewise.
   6485 	(__detail::__not_a_const_iterator): Likewise.
   6486 	(__detail::__iter_const_rvalue_reference_t): Likewise.
   6487 	(__detail::__basic_const_iter_cat):: Likewise.
   6488 	(const_iterator): Likewise.
   6489 	(__detail::__const_sentinel): Likewise.
   6490 	(const_sentinel): Likewise.
   6491 	(basic_const_iterator): Likewise.
   6492 	(common_type<basic_const_iterator<_Tp>, _Up>): Likewise.
   6493 	(common_type<_Up, basic_const_iterator<_Tp>>): Likewise.
   6494 	(common_type<basic_const_iterator<_Tp>, basic_const_iterator<Up>>):
   6495 	Likewise.
   6496 	(make_const_iterator): Define for C++23.
   6497 	(make_const_sentinel): Likewise.
   6498 	* include/std/ranges (__cpp_lib_ranges_as_const): Likewise.
   6499 	(as_const_view): Likewise.
   6500 	(enable_borrowed_range<as_const_view>): Likewise.
   6501 	(views::__detail::__is_ref_view): Likewise.
   6502 	(views::__detail::__can_is_const_view): Likewise.
   6503 	(views::_AsConst, views::as_const): Likewise.
   6504 	* include/std/span (span::const_iterator): Likewise.
   6505 	(span::const_reverse_iterator): Likewise.
   6506 	(span::cbegin): Likewise.
   6507 	(span::cend): Likewise.
   6508 	(span::crbegin): Likewise.
   6509 	(span::crend): Likewise.
   6510 	* include/std/version (__cpp_lib_ranges_as_const): Likewise.
   6511 	* testsuite/std/ranges/adaptors/join.cc (test06): Adjust to
   6512 	behave independently of C++20 vs C++23.
   6513 	* testsuite/std/ranges/version_c++23.cc: Verify value of
   6514 	__cpp_lib_ranges_as_const macro.
   6515 	* testsuite/24_iterators/const_iterator/1.cc: New test.
   6516 	* testsuite/std/ranges/adaptors/as_const/1.cc: New test.
   6517 
   6518 2023-04-14  Patrick Palka  <ppalka (a] redhat.com>
   6519 
   6520 	* include/bits/ranges_base.h (__cust_access::__as_const)
   6521 	(__cust_access::_CBegin, __cust::cbegin)
   6522 	(__cust_access::_CEnd, __cust::cend)
   6523 	(__cust_access::_CRBegin, __cust::crbegin)
   6524 	(__cust_access::_CREnd, __cust::crend)
   6525 	(__cust_access::_CData, __cust::cdata): Move down definitions to
   6526 	shortly after the definition of input_range.
   6527 
   6528 2023-04-14  Patrick Palka  <ppalka (a] redhat.com>
   6529 
   6530 	* include/bits/ranges_algo.h: Include <optional> for C++23.
   6531 	(__cpp_lib_fold): Define for C++23.
   6532 	(in_value_result): Likewise.
   6533 	(__detail::__flipped): Likewise.
   6534 	(__detail::__indirectly_binary_left_foldable_impl): Likewise.
   6535 	(__detail::__indirectly_binary_left_foldable): Likewise.
   6536 	(___detail:__indirectly_binary_right_foldable): Likewise.
   6537 	(fold_left_with_iter_result): Likewise.
   6538 	(__fold_left_with_iter_fn, fold_left_with_iter): Likewise.
   6539 	(__fold_left_fn, fold_left): Likewise.
   6540 	(__fold_left_first_with_iter_fn, fold_left_first_with_iter):
   6541 	Likewise.
   6542 	(__fold_left_first_fn, fold_left_first): Likewise.
   6543 	(__fold_right_fn, fold_right): Likewise.
   6544 	(__fold_right_last_fn, fold_right_last): Likewise.
   6545 	* include/std/version (__cpp_lib_fold): Likewise.
   6546 	* testsuite/25_algorithms/fold_left/1.cc: New test.
   6547 	* testsuite/25_algorithms/fold_right/1.cc: New test.
   6548 
   6549 2023-04-14  Jonathan Wakely  <jwakely (a] redhat.com>
   6550 
   6551 	* include/std/format (formatter): Add comment to deleted default
   6552 	constructor of primary template.
   6553 	(_Checking_scanner): Add static_assert.
   6554 
   6555 2023-04-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6556 
   6557 	* doc/xml/manual/using.xml: Document libstdc++exp.a library.
   6558 	* doc/html/*: Regenerate.
   6559 
   6560 2023-04-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6561 
   6562 	* testsuite/17_intro/names.cc [_AIX]: Do not define policy.
   6563 	* testsuite/19_diagnostics/error_code/cons/lwg3629.cc: Rename
   6564 	namespace to avoid clashing with libc struct.
   6565 	* testsuite/19_diagnostics/error_condition/cons/lwg3629.cc:
   6566 	Likewise.
   6567 	* testsuite/23_containers/unordered_map/96088.cc: Skip on AIX.
   6568 	* testsuite/23_containers/unordered_multimap/96088.cc: Likewise.
   6569 	* testsuite/23_containers/unordered_multiset/96088.cc: Likewise.
   6570 	* testsuite/23_containers/unordered_set/96088.cc: Likewise.
   6571 	* testsuite/experimental/synchronized_value.cc: Require gthreads
   6572 	and add missing option for pthreads targets.
   6573 
   6574 2023-04-12  Patrick Palka  <ppalka (a] redhat.com>
   6575 
   6576 	* include/std/ranges (__cpp_lib_ranges_enumerate): Define
   6577 	for C++23.
   6578 	(__detail::__range_with_movable_reference): Likewise.
   6579 	(enumerate_view): Likewise.
   6580 	(enumerate_view::_Iterator): Likewise.
   6581 	(enumerate_view::_Sentinel): Likewise.
   6582 	(views::__detail::__can_enumerate_view): Likewise.
   6583 	(views::_Enumerate, views::enumerate): Likewise.
   6584 	* include/std/version (__cpp_lib_ranges_enumerate): Likewise.
   6585 	* testsuite/std/ranges/version_c++23.cc: Verify value of
   6586 	__cpp_lib_ranges_enumerate.
   6587 	* testsuite/std/ranges/adaptors/enumerate/1.cc: New test.
   6588 
   6589 2023-04-12  Patrick Palka  <ppalka (a] redhat.com>
   6590 
   6591 	* include/std/ranges (lazy_split_view::_OuterIter::_OuterIter):
   6592 	Propagate _M_trailing_empty in the const-converting constructor
   6593 	as per LWG 3904.
   6594 	* testsuite/std/ranges/adaptors/adjacent/1.cc (test04): Correct
   6595 	assertion.
   6596 	* testsuite/std/ranges/adaptors/lazy_split.cc (test12): New test.
   6597 
   6598 2023-04-12  Patrick Palka  <ppalka (a] redhat.com>
   6599 
   6600 	* src/c++17/floating_from_chars.cc: Include <algorithm>,
   6601 	<iterator>, <limits> and <cstdint>.
   6602 
   6603 2023-04-12  Patrick Palka  <ppalka (a] redhat.com>
   6604 
   6605 	PR libstdc++/108291
   6606 	* include/std/ranges (chunk_by_view::_M_find_next): Generalize
   6607 	parameter types of the lambda wrapper passed to adjacent_find.
   6608 	(chunk_by_view::_M_find_prev): Likewise.
   6609 	* testsuite/std/ranges/adaptors/chunk_by/1.cc (test04, test05):
   6610 	New tests.
   6611 
   6612 2023-04-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6613 
   6614 	PR libstdc++/109482
   6615 	* include/experimental/internet (basic_endpoint::basic_endpoint()):
   6616 	Ensure that the required union members are active. Only define
   6617 	as constexpr for C++20 and later.
   6618 	(basic_endpoint::basic_endpoint(const protocol_type&, port_type)):
   6619 	Likewise.
   6620 	* testsuite/experimental/net/internet/endpoint/cons.cc: Only
   6621 	check constexpr default constructor for C++20 and later.
   6622 	* testsuite/experimental/net/internet/endpoint/extensible.cc:
   6623 	Likewise.
   6624 
   6625 2023-04-12  Jonathan Wakely  <jwakely (a] redhat.com>
   6626 
   6627 	* src/c++20/tzdata.zi: Import new file from 2023c release.
   6628 
   6629 2023-04-05  Arsen Arsenovi  <arsen (a] aarsen.me>
   6630 
   6631 	* include/precompiled/stdc++.h (C++17): Don't double-include
   6632 	<charconv>, once with wrong conditions.
   6633 	* testsuite/18_support/96817.cc: Require hosted.
   6634 	* testsuite/18_support/bad_exception/59392.cc: Ditto.
   6635 	* testsuite/20_util/scoped_allocator/108952.cc: Ditto.
   6636 	* testsuite/20_util/uses_allocator/lwg3527.cc: Ditto.
   6637 	* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
   6638 	Ditto.
   6639 
   6640 2023-04-05  Arsen Arsenovi  <arsen (a] aarsen.me>
   6641 
   6642 	* include/bits/c++config: When __STDC_HOSTED__ is zero,
   6643 	disable _GLIBCXX_DEBUG and, if it was set, enable
   6644 	_GLIBCXX_ASSERTIONS.
   6645 	* testsuite/lib/libstdc++.exp (check_v3_target_debug_mode):
   6646 	Include <bits/c++config.h> when determining whether debug is
   6647 	set, in order to inherit the logic from above
   6648 
   6649 2023-04-05  Arsen Arsenovi  <arsen (a] aarsen.me>
   6650 
   6651 	* testsuite/17_intro/versionconflict.cc: New test.
   6652 	* include/std/version: Allow disabling the system_header pragma
   6653 	via _GLIBCXX_TESTING_SYSHDR.
   6654 
   6655 2023-04-05  Arsen Arsenovi  <arsen (a] aarsen.me>
   6656 
   6657 	* include/bits/unique_ptr.h (__cpp_lib_constexpr_memory):
   6658 	Synchronize the definition block with...
   6659 	* include/bits/ptr_traits.h (__cpp_lib_constexpr_memory):
   6660 	... this one here.  Also define the 202202L value, rather than
   6661 	leaving it up to purely unique_ptr.h, so that the value is
   6662 	synchronized across all headers.
   6663 	(__gnu_debug::_Safe_iterator_base): Move into new conditional
   6664 	block.
   6665 	* include/std/memory (__cpp_lib_atomic_value_initialization):
   6666 	Define on freestanding under the same conditions as in
   6667 	atomic_base.h.
   6668 	* include/std/version (__cpp_lib_robust_nonmodifying_seq_ops):
   6669 	Also define on freestanding.
   6670 	(__cpp_lib_to_chars): Ditto.
   6671 	(__cpp_lib_gcd): Ditto.
   6672 	(__cpp_lib_gcd_lcm): Ditto.
   6673 	(__cpp_lib_raw_memory_algorithms): Ditto.
   6674 	(__cpp_lib_array_constexpr): Ditto.
   6675 	(__cpp_lib_nonmember_container_access): Ditto.
   6676 	(__cpp_lib_clamp): Ditto.
   6677 	(__cpp_lib_constexpr_char_traits): Ditto.
   6678 	(__cpp_lib_constexpr_string): Ditto.
   6679 	(__cpp_lib_sample): Ditto.
   6680 	(__cpp_lib_lcm): Ditto.
   6681 	(__cpp_lib_constexpr_iterator): Ditto.
   6682 	(__cpp_lib_constexpr_char_traits): Ditto.
   6683 	(__cpp_lib_interpolate): Ditto.
   6684 	(__cpp_lib_constexpr_utility): Ditto.
   6685 	(__cpp_lib_shift): Ditto.
   6686 	(__cpp_lib_ranges): Ditto.
   6687 	(__cpp_lib_move_iterator_concept): Ditto.
   6688 	(__cpp_lib_constexpr_numeric): Ditto.
   6689 	(__cpp_lib_constexpr_functional): Ditto.
   6690 	(__cpp_lib_constexpr_algorithms): Ditto.
   6691 	(__cpp_lib_constexpr_tuple): Ditto.
   6692 	(__cpp_lib_constexpr_memory): Ditto.
   6693 
   6694 2023-04-05  John David Anglin  <danglin (a] gcc.gnu.org>
   6695 
   6696 	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Double
   6697 	timeout factor on hppa*-*-*.
   6698 
   6699 2023-04-05  Jonathan Wakely  <jwakely (a] redhat.com>
   6700 
   6701 	* include/bits/regex.h (sub_match::swap): New function.
   6702 	* testsuite/28_regex/sub_match/lwg3204.cc: New test.
   6703 
   6704 2023-04-04  Jonathan Wakely  <jwakely (a] redhat.com>
   6705 
   6706 	* doc/xml/manual/extensions.xml: Remove std::bad_exception from
   6707 	example program.
   6708 	* doc/html/manual/ext_demangling.html: Regenerate.
   6709 
   6710 2023-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
   6711 
   6712 	PR tree-optimization/107087
   6713 	* include/bits/cow_string.h (basic_string::size()): Add
   6714 	optimizer hint that _S_empty_rep()._M_length is always zero.
   6715 	(basic_string::length()): Call size().
   6716 
   6717 2023-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
   6718 
   6719 	PR libstdc++/109339
   6720 	* include/std/stop_token (_Stop_state_ptr(const stop_source&)):
   6721 	Add attribute access with access-mode 'none'.
   6722 	* testsuite/30_threads/stop_token/stop_source/109339.cc: New test.
   6723 
   6724 2023-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
   6725 
   6726 	* include/experimental/internet (ip::basic_endpoint::_M_if_v6):
   6727 	Revert change from member function to data member. Fix for
   6728 	constant evaluation by detecting which union member is active.
   6729 	(ip::basic_endpoint::resize): Revert changes to update _M_is_v6
   6730 	flag.
   6731 
   6732 2023-03-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6733 
   6734 	PR libstdc++/109242
   6735 	* testsuite/20_util/optional/monadic/pr109340.cc: Moved to...
   6736 	* testsuite/20_util/optional/monadic/pr109242.cc: ...here.
   6737 
   6738 2023-03-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6739 
   6740 	* include/experimental/internet (ip::make_address): Implement
   6741 	missing overload.
   6742 	(ip::address_v4::broadcast()): Avoid undefined shift.
   6743 	(ip::basic_endpoint): Fix member functions for constexpr.
   6744 	(ip::basic_endpoint::_M_is_v6): Replace member function with
   6745 	data member, adjust member functions using it.
   6746 	(ip::basic_endpoint::resize): Update _M_is_v6 based on sockaddr
   6747 	content.
   6748 	* testsuite/experimental/net/internet/address/v4/cons.cc: Fix
   6749 	constexpr checks to work in C++14.
   6750 	* testsuite/experimental/net/internet/address/v4/creation.cc:
   6751 	Likewise.
   6752 	* testsuite/experimental/net/internet/endpoint/cons.cc:
   6753 	Likewise.
   6754 	* testsuite/experimental/net/internet/network/v4/cons.cc:
   6755 	Likewise.
   6756 	* testsuite/experimental/net/internet/network/v4/members.cc:
   6757 	Likewise.
   6758 	* testsuite/experimental/net/internet/endpoint/extensible.cc: New test.
   6759 
   6760 2023-03-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6761 
   6762 	* include/std/expected (expected::value() &): Use const lvalue
   6763 	for unex member passed to bad_expected_access constructor, as
   6764 	per LWG 3843.
   6765 
   6766 2023-03-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6767 
   6768 	PR libstdc++/109340
   6769 	* include/std/expected (expected::transform): Use
   6770 	std::remove_cv_t instead of std::remove_cvref_t.
   6771 	(expected::transform_error): Likewise.
   6772 	(expected<cv void, E>::transform): Likewise.
   6773 	(expected<cv void, E>::transform_error): Likewise.
   6774 	* include/std/optional (transform): Use std::remove_cv_t.
   6775 	* testsuite/20_util/optional/monadic/pr109340.cc: New test.
   6776 
   6777 2023-03-29  Jonathan Wakely  <jwakely (a] redhat.com>
   6778 
   6779 	* include/std/optional (optional): Adjust static assertion to
   6780 	reject arrays and functions as well as references.
   6781 	* testsuite/20_util/optional/requirements_neg.cc: New test.
   6782 
   6783 2023-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6784 
   6785 	PR libstdc++/103387
   6786 	* include/bits/istream.tcc (istream::_M_extract(ValueT&)): Use
   6787 	std::use_facet instead of cached _M_num_get facet.
   6788 	(istream::operator>>(short&)): Likewise.
   6789 	(istream::operator>>(int&)): Likewise.
   6790 	* include/bits/ostream.tcc (ostream::_M_insert(ValueT)): Use
   6791 	std::use_facet instead of cached _M_num_put facet.
   6792 
   6793 2023-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6794 
   6795 	* include/bits/char_traits.h (char_traits::copy): Return without
   6796 	using memcpy if n==0.
   6797 	(char_traits::assign): Likewise for memset.
   6798 
   6799 2023-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6800 
   6801 	PR libstdc++/109299
   6802 	* include/bits/basic_string.h (basic_string::_M_is_local()): Add
   6803 	hint for compiler that local strings fit in the local buffer.
   6804 
   6805 2023-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
   6806 
   6807 	PR libstdc++/109288
   6808 	* include/std/chrono (__detail::__get_leap_second_info): Update
   6809 	expiry date of hardcoded leapseconds list.
   6810 	* src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds()):
   6811 	Likewise.
   6812 	* src/c++20/tzdata.zi: Import new file from 2023a release.
   6813 	* testsuite/std/time/time_zone/get_info_local.cc: Only check
   6814 	transitions for Egypt up to 2014.
   6815 
   6816 2023-03-28  Matthias Kretz  <m.kretz (a] gsi.de>
   6817 
   6818 	* include/experimental/bits/simd.h (is_simd_flag_type): New.
   6819 	(_IsSimdFlagType): New.
   6820 	(copy_from, copy_to, load ctors): Constrain _Flags using
   6821 	_IsSimdFlagType.
   6822 
   6823 2023-03-28  Matthias Kretz  <m.kretz (a] gsi.de>
   6824 
   6825 	* include/experimental/bits/simd_x86.h (_SimdImplX86): Use
   6826 	_Base::_S_divides if the optimized _S_divides function is hidden
   6827 	via the preprocessor.
   6828 
   6829 2023-03-27  Jakub Jelinek  <jakub (a] redhat.com>
   6830 
   6831 	* testsuite/experimental/net/timer/waitable/dest.cc: Avoid -Wformat
   6832 	warning if size_t is not unsigned long.
   6833 
   6834 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6835 
   6836 	* include/bits/shared_ptr_atomic.h (atomic::operator=(nullptr_t)):
   6837 	Add overload, as per LWG 3893.
   6838 	* testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc:
   6839 	Check assignment from nullptr.
   6840 
   6841 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6842 
   6843 	* include/std/format (formatter<const charT[N], charT>): Do not
   6844 	define partial speclialization, as per LWG 3833.
   6845 	* testsuite/std/format/formatter/requirements.cc: Check it.
   6846 
   6847 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6848 
   6849 	* include/std/utility (__cpp_lib_constexpr_algorithms): Define,
   6850 	as per LWG 3792.
   6851 	* testsuite/20_util/exchange/constexpr.cc: Check for it.
   6852 
   6853 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6854 
   6855 	* include/std/version (__cpp_lib_format): Define.
   6856 	* testsuite/std/format/functions/format.cc: Check it.
   6857 
   6858 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6859 
   6860 	* include/bits/basic_string.tcc (basic_string::resize_and_overwrite):
   6861 	Pass rvalues to the callback, as now allowed by LWG 3645.
   6862 	Enforce preconditions on the return value.
   6863 	* testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
   6864 	Adjust.
   6865 
   6866 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6867 
   6868 	* include/std/format: Add a comment noting that the resolution
   6869 	of LWG 3720 has been applied..
   6870 
   6871 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6872 
   6873 	* include/bits/regex.h (match_results): Add allocator-extended
   6874 	copy and move constructors, as per LWG 2195.
   6875 	* testsuite/28_regex/match_results/ctors/char/alloc.cc: New test.
   6876 
   6877 2023-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   6878 
   6879 	* include/bits/stream_iterator.h (istream_iterator): Add
   6880 	constexpr to copy constructor, as per LWG 3600.
   6881 	* testsuite/24_iterators/istream_iterator/cons/constexpr.cc:
   6882 	Check copy construction.
   6883 
   6884 2023-03-21  Matthias Kretz  <m.kretz (a] gsi.de>
   6885 
   6886 	* include/experimental/bits/simd_x86.h
   6887 	(_SimdImplX86::_S_divides): Replace test for __GCC_IEC_559 == 0
   6888 	with __RECIPROCAL_MATH__.
   6889 
   6890 2023-03-21  Matthias Kretz  <m.kretz (a] gsi.de>
   6891 
   6892 	* include/experimental/bits/simd_detail.h: Don't define
   6893 	_GLIBCXX_SIMD_WORKAROUND_PR90993 for Clang.
   6894 	* include/experimental/bits/simd_x86.h (_S_divides): Remove
   6895 	check for __clang__.
   6896 
   6897 2023-03-21  Matthias Kretz  <m.kretz (a] gsi.de>
   6898 
   6899 	* include/experimental/bits/simd_detail.h: Don't declare the
   6900 	simd API as constexpr with Clang.
   6901 	* include/experimental/bits/simd_x86.h (__movm): New.
   6902 	(_S_blend_avx512): Resolve FIXME. Implement blend using __movm
   6903 	and ?:.
   6904 	(_SimdImplX86::_S_masked_unary): Clang does not implement the
   6905 	same builtins. Implement the function using __movm, ?:, and -
   6906 	operators on vector_size types instead.
   6907 
   6908 2023-03-21  Matthias Kretz  <m.kretz (a] gsi.de>
   6909 
   6910 	* testsuite/experimental/simd/tests/operators.cc: Clang doesn't
   6911 	define __GCC_IEC_559. Use __STDC_IEC_559__ instead.
   6912 
   6913 2023-03-20  Jonathan Wakely  <jwakely (a] redhat.com>
   6914 
   6915 	* src/filesystem/ops-common.h (get_temp_directory_from_env): Fix
   6916 	formatting.
   6917 
   6918 2023-03-20  Marek Polacek  <polacek (a] redhat.com>
   6919 
   6920 	PR c++/109159
   6921 	* testsuite/20_util/pair/cons/explicit_construct.cc: Adjust dg-error.
   6922 	* testsuite/20_util/tuple/cons/explicit_construct.cc: Likewise.
   6923 	* testsuite/23_containers/span/explicit.cc: Likewise.
   6924 
   6925 2023-03-20  Jonathan Wakely  <jwakely (a] redhat.com>
   6926 
   6927 	PR libstdc++/109182
   6928 	* include/std/expected (expected<void>::expected(in_place_t)):
   6929 	Remove template-head.
   6930 
   6931 2023-03-18  Jonathan Wakely  <jwakely (a] redhat.com>
   6932 
   6933 	PR libstdc++/109165
   6934 	* testsuite/18_support/coroutines/hash.cc: Use const object
   6935 	in second call.
   6936 
   6937 2023-03-17  Jonathan Wakely  <jwakely (a] redhat.com>
   6938 
   6939 	PR libstdc++/109165
   6940 	* include/std/coroutine (hash<>::operator()): Add const.
   6941 	* testsuite/18_support/coroutines/hash.cc: New test.
   6942 
   6943 2023-03-14  Patrick Palka  <ppalka (a] redhat.com>
   6944 
   6945 	PR libstdc++/109111
   6946 	* include/std/ranges (repeat_view): Remove redundant parentheses
   6947 	in requires-clause.
   6948 	(repeat_view::_Iterator): Correct the requires-clause.
   6949 
   6950 2023-03-14  Patrick Palka  <ppalka (a] redhat.com>
   6951 
   6952 	* include/bits/stl_iterator.h (move_iterator::_S_iter_concept):
   6953 	Define.
   6954 	(__cpp_lib_move_iterator_concept): Define for C++20.
   6955 	(move_iterator::iterator_concept): Strengthen as per P2520R0.
   6956 	* include/std/version (__cpp_lib_move_iterator_concept): Define
   6957 	for C++20.
   6958 	* testsuite/24_iterators/move_iterator/p2520r0.cc: New test.
   6959 
   6960 2023-03-14  Patrick Palka  <ppalka (a] redhat.com>
   6961 
   6962 	* include/bits/ranges_util.h (view_interface::empty): Add
   6963 	preferred overloads that use ranges::size when the range is
   6964 	sized as per LWG 3715.
   6965 	* testsuite/std/ranges/adaptors/lwg3715.cc: New test.
   6966 
   6967 2023-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   6968 
   6969 	* include/bits/chrono.h (__is_duration_v, __is_time_point_v):
   6970 	Only define for C++17 and later.
   6971 
   6972 2023-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   6973 
   6974 	* src/Makefile.am: Add comment about linker script fragments.
   6975 	* src/Makefile.in: Regenerate.
   6976 
   6977 2023-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   6978 
   6979 	PR libstdc++/62196
   6980 	* include/bits/mask_array.h (mask_array): Add assertions to
   6981 	assignment operators.
   6982 	* include/std/valarray (valarray::operator[](valarray<bool>)):
   6983 	Add assertions.
   6984 	* testsuite/26_numerics/valarray/mask-1_neg.cc: New test.
   6985 	* testsuite/26_numerics/valarray/mask-2_neg.cc: New test.
   6986 	* testsuite/26_numerics/valarray/mask-3_neg.cc: New test.
   6987 	* testsuite/26_numerics/valarray/mask-4_neg.cc: New test.
   6988 	* testsuite/26_numerics/valarray/mask-5_neg.cc: New test.
   6989 	* testsuite/26_numerics/valarray/mask-6_neg.cc: New test.
   6990 	* testsuite/26_numerics/valarray/mask-7_neg.cc: New test.
   6991 	* testsuite/26_numerics/valarray/mask-8_neg.cc: New test.
   6992 	* testsuite/26_numerics/valarray/mask.cc: New test.
   6993 
   6994 2023-03-13  Jakub Jelinek  <jakub (a] redhat.com>
   6995 
   6996 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   6997 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
   6998 
   6999 2023-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   7000 
   7001 	* doc/Makefile.am: Add comment referring to documentation.
   7002 	* doc/Makefile.in: Regenerate.
   7003 
   7004 2023-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   7005 
   7006 	* doc/html/*: Regenerate.
   7007 
   7008 2023-03-13  Jonny Grant  <jg (a] jguk.org>
   7009 
   7010 	* doc/xml/faq.xml: Update copyright year.
   7011 
   7012 2023-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   7013 
   7014 	* include/bits/allocator.h: Fix typo in comment.
   7015 
   7016 2023-03-12  Jakub Jelinek  <jakub (a] redhat.com>
   7017 
   7018 	* config/abi/pre/gnu.ver (CXXABI_1.3.14): Also export __bf16 tinfos
   7019 	if it isn't mangled as DF16b but u6__bf16.
   7020 
   7021 2023-03-12  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7022 
   7023 	* doc/xml/manual/documentation_hacking.xml: Move www.graphviz.org
   7024 	to https.
   7025 	* doc/html/manual/documentation_hacking.html: Regenerate.
   7026 
   7027 2023-03-10  Jonathan Wakely  <jwakely (a] redhat.com>
   7028 
   7029 	PR libstdc++/109064
   7030 	* python/libstdcxx/v6/xmethods.py (SharedPtrUseCountWorker):
   7031 	Remove self-recursion in __init__. Add missing _supports.
   7032 	* testsuite/libstdc++-xmethods/shared_ptr.cc: Check use_count()
   7033 	and unique().
   7034 
   7035 2023-03-09  Patrick Palka  <ppalka (a] redhat.com>
   7036 
   7037 	* include/std/ranges
   7038 	(cartesian_product_view::_Iterator::_Iterator): Remove
   7039 	constraint on default constructor as per LWG 3849.
   7040 	(cartesian_product_view::_Iterator::_M_prev): Adjust position
   7041 	of _Nm > 0 test as per LWG 3820.
   7042 	(cartesian_product_view::_Iterator::_M_advance): Perform bounds
   7043 	checking only on sized cartesian products.
   7044 	* testsuite/std/ranges/cartesian_product/1.cc (test08): New test.
   7045 
   7046 2023-03-09  Patrick Palka  <ppalka (a] redhat.com>
   7047 
   7048 	PR libstdc++/109024
   7049 	* include/std/ranges (chunk_by_view::_M_pred): Remove DMI as per
   7050 	LWG 3796.
   7051 	(repeat_view::_M_pred): Likewise.
   7052 	* testsuite/std/ranges/adaptors/chunk_by/1.cc (test03): New test.
   7053 	* testsuite/std/ranges/repeat/1.cc (test05): New test.
   7054 
   7055 2023-03-09  Patrick Palka  <ppalka (a] redhat.com>
   7056 
   7057 	PR libstdc++/108362
   7058 	* include/std/ranges (__detail::__can_single_view): New concept.
   7059 	(_Single::operator()): Constrain it.  Move [[nodiscard]] to the
   7060 	end of the function declarator.
   7061 	(__detail::__can_iota_view): New concept.
   7062 	(_Iota::operator()): Constrain it.  Move [[nodiscard]] to the
   7063 	end of the function declarator.
   7064 	(__detail::__can_istream_view): New concept.
   7065 	(_Istream::operator()): Constrain it.  Move [[nodiscard]] to the
   7066 	end of the function declarator.
   7067 	* testsuite/std/ranges/iota/iota_view.cc (test07): New test.
   7068 	* testsuite/std/ranges/istream_view.cc (test08): New test.
   7069 	* testsuite/std/ranges/single_view.cc (test07): New test.
   7070 
   7071 2023-03-09  Patrick Palka  <ppalka (a] redhat.com>
   7072 
   7073 	PR libstdc++/107572
   7074 	* include/std/ranges (cartesian_product_view::end): When
   7075 	building the tuple of iterators, avoid calling ranges::begin on
   7076 	the first range if __empty_tail is false.
   7077 	* testsuite/std/ranges/cartesian_product/1.cc (test07): New test.
   7078 
   7079 2023-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   7080 
   7081 	PR libstdc++/108882
   7082 	* config/os/gnu-linux/ldbl-ieee128-extra.ver: Fix incorrect
   7083 	patterns.
   7084 
   7085 2023-03-07  Jakub Jelinek  <jakub (a] redhat.com>
   7086 
   7087 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   7088 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   7089 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   7090 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   7091 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
   7092 
   7093 2023-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   7094 
   7095 	PR libstdc++/108882
   7096 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.31): Adjust patterns to
   7097 	not match symbols in namespace std::__gnu_cxx11_ieee128.
   7098 	* config/os/gnu-linux/ldbl-ieee128-extra.ver: Add patterns for
   7099 	std::__gnu_cxx11_ieee128::money_{get,put}.
   7100 
   7101 2023-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   7102 
   7103 	* libsupc++/eh_personality.cc: Fix spelling in comment.
   7104 
   7105 2023-03-03  Alexandre Oliva  <oliva (a] adacore.com>
   7106 
   7107 	* testsuite/30_threads/async/async.cc (test04): Initialize
   7108 	steady_start, renamed from steady_begin, next to slow_start.
   7109 	Increase tolerance for final wait.
   7110 
   7111 2023-03-03  Alexandre Oliva  <oliva (a] adacore.com>
   7112 
   7113 	* testsuite/libstdc++-prettyprinters/80276.cc: Add
   7114 	std::string to debug info.
   7115 	* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
   7116 
   7117 2023-03-03  Alexandre Oliva  <oliva (a] adacore.com>
   7118 
   7119 	PR libstdc++/104852
   7120 	PR libstdc++/95989
   7121 	PR libstdc++/52590
   7122 	* include/bits/std_thread.h (thread::_M_thread_deps): New
   7123 	static implicitly-inline member function.
   7124 	(std::thread template ctor): Pass it to _M_start_thread.
   7125 	* src/c++11/thread.cc (thread::_M_start_thread): Name depend
   7126 	parameter, force it live on entry.
   7127 
   7128 2023-03-03  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   7129 
   7130 	* config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
   7131 	* config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
   7132 	Likewise.
   7133 	* config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
   7134 	* config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
   7135 	Likewise.
   7136 
   7137 2023-03-01  Jonathan Wakely  <jwakely (a] redhat.com>
   7138 
   7139 	* include/bits/cow_string.h: Fix typo in comment.
   7140 
   7141 2023-03-01  Jonathan Wakely  <jwakely (a] redhat.com>
   7142 
   7143 	* src/c++20/tzdb.cc (chrono::tzdb::current_zone()) Use "UTC" if
   7144 	current time zone cannot be determined.
   7145 	* testsuite/std/time/tzdb/1.cc: Remove conditions based on
   7146 	HAVE_TZDB macro and test all members unconditionally.
   7147 
   7148 2023-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   7149 
   7150 	PR libstdc++/108952
   7151 	* include/bits/uses_allocator_args.h
   7152 	(uses_allocator_construction_args): Implement LWG 3527.
   7153 	* testsuite/20_util/pair/astuple/get-2.cc: New test.
   7154 	* testsuite/20_util/scoped_allocator/108952.cc: New test.
   7155 	* testsuite/20_util/uses_allocator/lwg3527.cc: New test.
   7156 
   7157 2023-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   7158 
   7159 	PR libstdc++/108846
   7160 	* include/bits/stl_algobase.h (__copy_move<false, false, RA>)
   7161 	Add __assign_one static member function.
   7162 	(__copy_move<true, false, RA>): Likewise.
   7163 	(__copy_move<IsMove, true, RA>): Do not use memmove for a single
   7164 	value.
   7165 	(__copy_move_backward<IsMove, true, RA>): Likewise.
   7166 	* testsuite/25_algorithms/copy/108846.cc: New test.
   7167 	* testsuite/25_algorithms/copy_backward/108846.cc: New test.
   7168 	* testsuite/25_algorithms/copy_n/108846.cc: New test.
   7169 	* testsuite/25_algorithms/move/108846.cc: New test.
   7170 	* testsuite/25_algorithms/move_backward/108846.cc: New test.
   7171 
   7172 2023-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   7173 
   7174 	* src/c++11/codecvt.cc: Add [[likely]] and [[unlikely]]
   7175 	attributes.
   7176 
   7177 2023-02-27  Jonathan Wakely  <jwakely (a] redhat.com>
   7178 
   7179 	* include/bits/basic_ios.h (basic_ios::_M_setstate): Add
   7180 	caveat to comment.
   7181 	* include/bits/basic_string.h (resize_and_overwrite): Add
   7182 	doxygen comment.
   7183 
   7184 2023-02-24  Matthias Kretz  <m.kretz (a] gsi.de>
   7185 
   7186 	* include/experimental/bits/simd.h: Line breaks and indenting
   7187 	fixed to follow the libstdc++ standard.
   7188 	* include/experimental/bits/simd_builtin.h: Likewise.
   7189 	* include/experimental/bits/simd_fixed_size.h: Likewise.
   7190 	* include/experimental/bits/simd_neon.h: Likewise.
   7191 	* include/experimental/bits/simd_ppc.h: Likewise.
   7192 	* include/experimental/bits/simd_scalar.h: Likewise.
   7193 	* include/experimental/bits/simd_x86.h: Likewise.
   7194 
   7195 2023-02-24  Matthias Kretz  <m.kretz (a] gsi.de>
   7196 
   7197 	PR libstdc++/108030
   7198 	* include/experimental/bits/simd_fixed_size.h
   7199 	(_SimdImplFixedSize::_S_broadcast): Replace inline with
   7200 	_GLIBCXX_SIMD_INTRINSIC.
   7201 	(_SimdImplFixedSize::_S_generate): Likewise.
   7202 	(_SimdImplFixedSize::_S_load): Likewise.
   7203 	(_SimdImplFixedSize::_S_masked_load): Likewise.
   7204 	(_SimdImplFixedSize::_S_store): Likewise.
   7205 	(_SimdImplFixedSize::_S_masked_store): Likewise.
   7206 	(_SimdImplFixedSize::_S_min): Likewise.
   7207 	(_SimdImplFixedSize::_S_max): Likewise.
   7208 	(_SimdImplFixedSize::_S_complement): Likewise.
   7209 	(_SimdImplFixedSize::_S_unary_minus): Likewise.
   7210 	(_SimdImplFixedSize::_S_plus): Likewise.
   7211 	(_SimdImplFixedSize::_S_minus): Likewise.
   7212 	(_SimdImplFixedSize::_S_multiplies): Likewise.
   7213 	(_SimdImplFixedSize::_S_divides): Likewise.
   7214 	(_SimdImplFixedSize::_S_modulus): Likewise.
   7215 	(_SimdImplFixedSize::_S_bit_and): Likewise.
   7216 	(_SimdImplFixedSize::_S_bit_or): Likewise.
   7217 	(_SimdImplFixedSize::_S_bit_xor): Likewise.
   7218 	(_SimdImplFixedSize::_S_bit_shift_left): Likewise.
   7219 	(_SimdImplFixedSize::_S_bit_shift_right): Likewise.
   7220 	(_SimdImplFixedSize::_S_remquo): Add inline keyword (to be
   7221 	explicit about not always-inline, yet).
   7222 	(_SimdImplFixedSize::_S_isinf): Likewise.
   7223 	(_SimdImplFixedSize::_S_isfinite): Likewise.
   7224 	(_SimdImplFixedSize::_S_isnan): Likewise.
   7225 	(_SimdImplFixedSize::_S_isnormal): Likewise.
   7226 	(_SimdImplFixedSize::_S_signbit): Likewise.
   7227 
   7228 2023-02-24  Matthias Kretz  <m.kretz (a] gsi.de>
   7229 
   7230 	PR libstdc++/108856
   7231 	* include/experimental/bits/simd_builtin.h
   7232 	(_SimdImplBuiltin::_S_masked_unary): More efficient
   7233 	implementation of masked inc-/decrement for integers and floats
   7234 	without AVX2.
   7235 	* include/experimental/bits/simd_x86.h
   7236 	(_SimdImplX86::_S_masked_unary): New. Use AVX512 masked subtract
   7237 	builtins for masked inc-/decrement.
   7238 
   7239 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7240 
   7241 	* include/experimental/executor (executor): Constrain template
   7242 	constructors.
   7243 
   7244 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7245 
   7246 	* include/experimental/internet (basic_endpoint): Add missing
   7247 	constexpr to comparison operators.
   7248 	* testsuite/experimental/net/internet/endpoint/cons.cc: New test.
   7249 
   7250 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7251 
   7252 	* include/experimental/internet (network_v4::netmask()): Avoid
   7253 	undefined shift.
   7254 	(network_v4::broadcast()): Optimize and fix for targets with
   7255 	uint_least32_t wider than 32 bits.
   7256 	(network_v4::to_string(const Allocator&)): Fix for custom
   7257 	allocators and optimize using to_chars.
   7258 	(operator==(const network_v4&, const network_v4&)): Add missing
   7259 	constexpr.
   7260 	(operator==(const network_v6&, const network_v6&)): Likewise.
   7261 	* testsuite/experimental/net/internet/network/v4/cons.cc: New test.
   7262 	* testsuite/experimental/net/internet/network/v4/members.cc: New test.
   7263 
   7264 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7265 
   7266 	* include/experimental/internet (address_4(const bytes_type&)):
   7267 	Use __builtin_bit_cast if available, otherwise convert to
   7268 	network byte order.
   7269 	(address_v4::to_bytes()): Likewise, but convert from network
   7270 	byte order.
   7271 	* testsuite/experimental/net/internet/address/v4/cons.cc: Fix
   7272 	incorrect tests. Check for constexpr too.
   7273 	* testsuite/experimental/net/internet/address/v4/creation.cc:
   7274 	Likewise.
   7275 	* testsuite/experimental/net/internet/address/v4/members.cc:
   7276 	Check that bytes_type is a standard-layout type.
   7277 
   7278 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7279 
   7280 	* include/experimental/internet (address_v4::to_string):
   7281 	Optimize.
   7282 	* testsuite/experimental/net/internet/address/v4/members.cc:
   7283 	Check more addresses.
   7284 
   7285 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7286 
   7287 	* include/ext/aligned_buffer.h (__aligned_buffer): Add
   7288 	diagnostic pragmas.
   7289 
   7290 2023-02-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7291 
   7292 	* testsuite/std/format/arguments/lwg3810.cc: Move dg-options
   7293 	before dg-do.
   7294 
   7295 2023-02-23  Matthias Kretz  <m.kretz (a] gsi.de>
   7296 
   7297 	* testsuite/experimental/simd/tests/reductions.cc: Introduce
   7298 	max_distance as the type-dependent max error.
   7299 
   7300 2023-02-23  Matthias Kretz  <m.kretz (a] gsi.de>
   7301 
   7302 	* include/experimental/bits/simd_builtin.h (_S_set): Compare as
   7303 	int. The actual range of these indexes is very small.
   7304 
   7305 2023-02-23  Matthias Kretz  <m.kretz (a] gsi.de>
   7306 
   7307 	* include/experimental/bits/simd_x86.h (_S_bit_shift_left)
   7308 	(_S_bit_shift_right): Declare constexpr. The implementation was
   7309 	already expecting constexpr evaluation.
   7310 
   7311 2023-02-23  Matthias Kretz  <m.kretz (a] gsi.de>
   7312 
   7313 	PR libstdc++/108030
   7314 	* include/experimental/bits/simd_detail.h
   7315 	(_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA): Define as empty for
   7316 	__clang__.
   7317 
   7318 2023-02-23  Matthias Kretz  <m.kretz (a] gsi.de>
   7319 
   7320 	PR libstdc++/108030
   7321 	* include/experimental/bits/simd.h (__vector_broadcast):
   7322 	Implement via __vector_broadcast_impl instead of
   7323 	__call_with_n_evaluations + 2 lambdas.
   7324 	(__vector_broadcast_impl): New.
   7325 
   7326 2023-02-22  Alexandre Oliva  <oliva (a] adacore.com>
   7327 
   7328 	* src/c++11/shared_ptr.cc (__gnu_internal::get_mutex):
   7329 	Avoid destruction of the mutex pool.
   7330 
   7331 2023-02-22  Alexandre Oliva  <oliva (a] adacore.com>
   7332 
   7333 	* testsuite/27_io/basic_ofstream/open/char/noreplace.cc: xfail
   7334 	on vxworks.
   7335 	* testsuite/27_io/basic_ofstream/open/wchar_t/noreplace.cc:
   7336 	Likewise.
   7337 
   7338 2023-02-22  Alexandre Oliva  <oliva (a] adacore.com>
   7339 
   7340 	* testsuite/17_intro/names.cc: Undef func on vxworks >= 7 in
   7341 	kernel mode.
   7342 
   7343 2023-02-20  Andreas Schwab  <schwab (a] linux-m68k.org>
   7344 
   7345 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
   7346 
   7347 2023-02-20  Matthias Kretz  <m.kretz (a] gsi.de>
   7348 
   7349 	* include/experimental/bits/simd.h (__extract_part, split):
   7350 	Use reserved name for template parameter.
   7351 
   7352 2023-02-20  Andreas Schwab  <schwab (a] suse.de>
   7353 
   7354 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
   7355 
   7356 2023-02-18  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7357 
   7358 	* doc/xml/faq.xml: Switch two links to www.open-std.org to https.
   7359 	* doc/html/faq.html: Regenerate.
   7360 
   7361 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7362 
   7363 	* include/experimental/bits/simd_math.h (__hypot): Bitcasting
   7364 	between scalars requires the __bit_cast helper function instead
   7365 	of simd_bit_cast.
   7366 
   7367 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7368 
   7369 	* include/experimental/bits/simd_x86.h
   7370 	(_SimdImplX86::_S_not_equal_to, _SimdImplX86::_S_less)
   7371 	(_SimdImplX86::_S_less_equal): Do not call
   7372 	__builtin_is_constant_evaluated in constexpr-if.
   7373 
   7374 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7375 
   7376 	* testsuite/experimental/simd/tests/bits/verify.h
   7377 	(verify::verify): Use %zx for size_t in format string.
   7378 
   7379 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7380 
   7381 	* testsuite/experimental/simd/generate_makefile.sh: Generate and
   7382 	pre-compile pch.h, which includes all headers that do not depend
   7383 	on command-line macros.
   7384 	* testsuite/experimental/simd/tests/bits/main.h: New file.
   7385 	(iterate_abis, main): Moved from verify.h.
   7386 	* testsuite/experimental/simd/tests/bits/verify.h
   7387 	(iterate_abis, main): Moved to main.h.
   7388 	* testsuite/experimental/simd/tests/bits/conversions.h: Add
   7389 	include guard.
   7390 	(genHalfBits): Simplify.
   7391 	* testsuite/experimental/simd/tests/bits/make_vec.h: Add include
   7392 	guard.
   7393 	(make_alternating_mask): Moved from mask_loadstore.
   7394 	* testsuite/experimental/simd/tests/bits/mathreference.h: Add
   7395 	include guard.
   7396 	* testsuite/experimental/simd/tests/bits/test_values.h: Ditto.
   7397 	* testsuite/experimental/simd/tests/mask_loadstore.cc
   7398 	(make_mask, make_alternating_mask): Removed.
   7399 	* testsuite/experimental/simd/tests/mask_reductions.cc: Ditto.
   7400 	* testsuite/experimental/simd/tests/operators.cc (genHalfBits):
   7401 	Removed.
   7402 	* testsuite/experimental/simd/tests/abs.cc: Only include
   7403 	bits/main.h.
   7404 	Ditto.
   7405 	* testsuite/experimental/simd/tests/algorithms.cc: Ditto.
   7406 	* testsuite/experimental/simd/tests/broadcast.cc: Ditto.
   7407 	* testsuite/experimental/simd/tests/casts.cc: Ditto.
   7408 	* testsuite/experimental/simd/tests/fpclassify.cc: Ditto.
   7409 	* testsuite/experimental/simd/tests/frexp.cc: Ditto.
   7410 	* testsuite/experimental/simd/tests/generator.cc: Ditto.
   7411 	* testsuite/experimental/simd/tests/hypot3_fma.cc: Ditto.
   7412 	* testsuite/experimental/simd/tests/integer_operators.cc: Ditto.
   7413 	* testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
   7414 	* testsuite/experimental/simd/tests/loadstore.cc: Ditto.
   7415 	* testsuite/experimental/simd/tests/logarithm.cc: Ditto.
   7416 	* testsuite/experimental/simd/tests/mask_broadcast.cc: Ditto.
   7417 	* testsuite/experimental/simd/tests/mask_conversions.cc: Ditto.
   7418 	* testsuite/experimental/simd/tests/mask_implicit_cvt.cc: Ditto.
   7419 	* testsuite/experimental/simd/tests/mask_operator_cvt.cc: Ditto.
   7420 	* testsuite/experimental/simd/tests/mask_operators.cc: Ditto.
   7421 	* testsuite/experimental/simd/tests/math_1arg.cc: Ditto.
   7422 	* testsuite/experimental/simd/tests/math_2arg.cc: Ditto.
   7423 	* testsuite/experimental/simd/tests/operator_cvt.cc: Ditto.
   7424 	* testsuite/experimental/simd/tests/reductions.cc: Ditto.
   7425 	* testsuite/experimental/simd/tests/remqo.cc: Ditto.
   7426 	* testsuite/experimental/simd/tests/simd.cc: Ditto.
   7427 	* testsuite/experimental/simd/tests/sincos.cc: Ditto.
   7428 	* testsuite/experimental/simd/tests/split_concat.cc: Ditto.
   7429 	* testsuite/experimental/simd/tests/splits.cc: Ditto.
   7430 	* testsuite/experimental/simd/tests/trigonometric.cc: Ditto.
   7431 	* testsuite/experimental/simd/tests/trunc_ceil_floor.cc: Ditto.
   7432 	* testsuite/experimental/simd/tests/where.cc: Ditto.
   7433 
   7434 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7435 
   7436 	* testsuite/experimental/simd/README.md: Document the timeout
   7437 	and timeout-factor directives. Minor typo fixed.
   7438 
   7439 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7440 
   7441 	PR libstdc++/108030
   7442 	* include/experimental/bits/simd_detail.h: Define
   7443 	_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA.
   7444 	* include/experimental/bits/simd.h: Annotate lambdas with
   7445 	_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA.
   7446 	* include/experimental/bits/simd_builtin.h: Ditto.
   7447 	* include/experimental/bits/simd_converter.h: Ditto.
   7448 	* include/experimental/bits/simd_fixed_size.h: Ditto.
   7449 	* include/experimental/bits/simd_math.h: Ditto.
   7450 	* include/experimental/bits/simd_neon.h: Ditto.
   7451 	* include/experimental/bits/simd_x86.h: Ditto.
   7452 
   7453 2023-02-16  Matthias Kretz  <m.kretz (a] gsi.de>
   7454 
   7455 	* include/experimental/bits/simd.h
   7456 	(_SimdWrapper::_M_is_constprop_none_of)
   7457 	(_SimdWrapper::_M_is_constprop_all_of): Return false unless the
   7458 	computed result still satisfies __builtin_constant_p.
   7459 
   7460 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7461 
   7462 	* testsuite/std/format/arguments/lwg3810.cc: Replace UTF-8
   7463 	ellipsis character.
   7464 
   7465 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7466 
   7467 	* include/Makefile.am: Add new header.
   7468 	* include/Makefile.in: Regenerate.
   7469 	* include/experimental/synchronized_value: New file.
   7470 	* testsuite/experimental/synchronized_value.cc: New test.
   7471 
   7472 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7473 
   7474 	* include/experimental/optional: Fix header name in comment.
   7475 
   7476 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7477 
   7478 	* include/std/format (__format::_Arg_store): New class template.
   7479 	(basic_format_args): Remove nested type _Store and add deduction
   7480 	guide from _Arg_store.
   7481 	(basic_format_arg, make_format_args): Adjust.
   7482 	* testsuite/std/format/arguments/lwg3810.cc: New test.
   7483 
   7484 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7485 
   7486 	* include/bits/stl_pair.h (pair) [C++20]: Add non-dangling
   7487 	constraints to constructors and add deleted overloads for the
   7488 	dangling cases, as per P2255R2.
   7489 	(pair) [!C++20 && _GLIBCXX_DEBUG]: Add static assertions to
   7490 	make dangling cases ill-formed.
   7491 	* testsuite/20_util/pair/dangling_ref.cc: New test.
   7492 
   7493 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7494 
   7495 	* testsuite/17_intro/names_pstl.cc: Require et tbb_backend.
   7496 
   7497 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7498 
   7499 	* include/ext/throw_allocator.h: Use reserved names for
   7500 	parameters.
   7501 
   7502 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7503 
   7504 	* testsuite/17_intro/names_pstl.cc: Add space after effective
   7505 	target name.
   7506 
   7507 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7508 
   7509 	* include/pstl/algorithm_fwd.h (__pattern_search_n)
   7510 	(__brick_unique_copy, __brick_adjacent_find)
   7511 	(__brick_generate_n, __pattern_generate_n): Use reserved names
   7512 	for parameters.
   7513 	* include/pstl/algorithm_impl.h (__brick_unique_copy)
   7514 	(__pattern_reverse, __brick_generate_n): Likewise.
   7515 	* include/pstl/execution_impl.h (__prefer_unsequenced_tag)
   7516 	(__prefer_parallel_tag): Likewise.
   7517 	* include/pstl/glue_algorithm_impl.h (transform): Likewise.
   7518 	* include/pstl/glue_numeric_defs.h (adjacent_difference):
   7519 	Likewise.
   7520 	* include/pstl/numeric_impl.h (__brick_adjacent_difference):
   7521 	Likewise.
   7522 	* include/pstl/parallel_backend_tbb.h (__merge_func): Likewise.
   7523 	* include/pstl/unseq_backend_simd.h (_Combiner)
   7524 	(__simd_min_element, __simd_minmax_element): Likewise.
   7525 	* testsuite/17_intro/names_pstl.cc: New test.
   7526 
   7527 2023-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7528 
   7529 	* include/bits/fs_ops.h (create_directory): Use reserved name
   7530 	for parameter.
   7531 	* include/bits/ranges_algo.h (__contains_subrange_fn):
   7532 	Likewise.
   7533 	* include/bits/regex_automaton.h (_State_base::_M_print):
   7534 	Likewise.
   7535 	* include/bits/regex_automaton.tcc(_State_base::_M_print):
   7536 	Likewise.
   7537 	* include/bits/regex_scanner.tcc(_Scanner::_M_print): Likewise.
   7538 	* include/experimental/bits/fs_ops.h (create_directory):
   7539 	Likewise.
   7540 	* include/std/mutex (timed_mutex::_M_clocklock): Likewise.
   7541 	(recursive_timed_mutex:_M_clocklock): Likewise.
   7542 	* include/std/tuple (basic_common_reference): Likewise.
   7543 	* libsupc++/cxxabi_init_exception.h
   7544 	(__cxa_init_primary_exception): Likewise.
   7545 	* testsuite/17_intro/names.cc: Add checks.
   7546 
   7547 2023-02-14  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7548 
   7549 	* doc/xml/manual/status_cxx2017.xml: Update an open-std.org link
   7550 	to www.open-std.org and https.
   7551 	* doc/html/manual/status.html: Regenerate.
   7552 
   7553 2023-02-14  Thomas W Rodgers  <rodgert (a] twrodgers.com>
   7554 
   7555 	PR libstdc++/103934
   7556 	* include/std/atomic (atomic_flag_wait): Add.
   7557 	(atomic_flag_wait_explicit): Add.
   7558 	(atomic_flag_notify): Add.
   7559 	(atomic_flag_notify_explicit): Add.
   7560 	* testsuite/29_atomics/atomic_flag/wait_notify/1.cc:
   7561 	Add test case to cover missing atomic_flag free functions.
   7562 
   7563 2023-02-14  Thomas W Rodgers  <rodgert (a] twrodgers.com>
   7564 
   7565 	PR libstdc++/103934
   7566 	* include/std/atomic (atomic_flag_test): Add.
   7567 	(atomic_flag_test_explicit): Add.
   7568 	* testsuite/29_atomics/atomic_flag/test/explicit.cc: Add
   7569 	test case to cover missing atomic_flag free functions.
   7570 	* testsuite/29_atomics/atomic_flag/test/implicit.cc:
   7571 	Likewise.
   7572 
   7573 2023-02-13  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7574 
   7575 	* doc/xml/manual/policy_data_structures_biblio.xml: Adjust
   7576 	"The Component Object Model" reference.
   7577 	* doc/html/manual/policy_data_structures.html: Regenerate.
   7578 
   7579 2023-02-12  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7580 
   7581 	* doc/xml/manual/containers.xml: Tweak a link to N1780
   7582 	(C++ standard).
   7583 	* doc/html/manual/associative.html: Regenerate.
   7584 
   7585 2023-02-12  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7586 
   7587 	* doc/xml/manual/ctype.xml: Change www.unix.org to unix.org.
   7588 	* doc/html/manual/facets.html: Regenerate.
   7589 
   7590 2023-02-11  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7591 
   7592 	* doc/xml/manual/policy_data_structures_biblio.xml: Update
   7593 	link to "Worst-case efficient priority queues".
   7594 	* doc/html/manual/policy_data_structures.html: Regenerate.
   7595 
   7596 2023-02-06  Arsen Arsenovi  <arsen (a] aarsen.me>
   7597 
   7598 	* doc/xml/manual/using.xml: Document newly-freestanding
   7599 	headers and the effect of the -ffreestanding flag.
   7600 	* doc/xml/manual/status_cxx2023.xml: Document P1642R11 as
   7601 	completed.
   7602 	* doc/xml/manual/configure.xml: Document that hosted installs
   7603 	respect __STDC_HOSTED__.
   7604 	* doc/xml/manual/test.xml: Document how to run tests in
   7605 	freestanding mode.
   7606 	* doc/html/*: Regenerate.
   7607 
   7608 2023-02-06  Jonathan Wakely  <jwakely (a] redhat.com>
   7609 
   7610 	* include/bits/ranges_algo.h (__find_last_fn): Rename T to _Tp.
   7611 	(__find_last_if_fn): Likewise.
   7612 
   7613 2023-02-06  Jonathan Wakely  <jwakely (a] redhat.com>
   7614 
   7615 	* include/std/type_traits: Add diagnostic pragmas around
   7616 	references to deprecated std::aligned_storage and
   7617 	std::aligned_union traits.
   7618 	* testsuite/20_util/aligned_storage/requirements/alias_decl.cc:
   7619 	Add dg-warning for et c++23.
   7620 	* testsuite/20_util/aligned_storage/requirements/explicit_instantiation.cc:
   7621 	Likewise.
   7622 	* testsuite/20_util/aligned_storage/value.cc: Likewise.
   7623 	* testsuite/20_util/aligned_union/1.cc: Likewise.
   7624 	* testsuite/20_util/aligned_union/requirements/alias_decl.cc:
   7625 	Likewise.
   7626 
   7627 2023-02-06  Nathaniel Shead  <nathanieloshead (a] gmail.com>
   7628 
   7629 	* doc/doxygen/user.cfg.in (PREDEFINED): Add new macros.
   7630 	* include/bits/c++config (_GLIBCXX23_DEPRECATED)
   7631 	(_GLIBCXX23_DEPRECATED_SUGGEST): New macros.
   7632 	* include/std/type_traits (aligned_storage, aligned_union)
   7633 	(aligned_storage_t, aligned_union_t): Deprecate for C++23.
   7634 	* testsuite/20_util/aligned_storage/deprecated-2b.cc: New test.
   7635 	* testsuite/20_util/aligned_union/deprecated-2b.cc: New test.
   7636 
   7637 2023-02-06  Nathaniel Shead  <nathanieloshead (a] gmail.com>
   7638 
   7639 	* doc/doxygen/user.cfg.in (PREDEFINED): Update macros.
   7640 	* include/bits/c++config (_GLIBCXX20_DEPRECATED): Make
   7641 	consistent with other 'deprecated' macros.
   7642 	* include/std/type_traits (is_pod, is_pod_v): Use
   7643 	_GLIBCXX20_DEPRECATED_SUGGEST instead.
   7644 
   7645 2023-02-06  Arsen Arsenovi  <arsen (a] aarsen.me>
   7646 
   7647 	* Makefile.am [!_GLIBCXX_HOSTED]: Enable src/ subdirectory.
   7648 	* Makefile.in: Regenerate.
   7649 	* src/Makefile.am [!_GLIBCXX_HOSTED]: Omit compatibility files.
   7650 	There's no history to be compatible with.
   7651 	* src/c++11/Makefile.am [!_GLIBCXX_HOSTED]: Omit hosted-only
   7652 	source files from the build.
   7653 	* src/c++17/Makefile.am [!_GLIBCXX_HOSTED]: Likewise.
   7654 	* src/c++20/Makefile.am [!_GLIBCXX_HOSTED]: Likewise.
   7655 	* src/c++98/Makefile.am [!_GLIBCXX_HOSTED]: Likewise.
   7656 	* src/Makefile.in: Regenerate.
   7657 	* src/c++11/Makefile.in: Regenerate.
   7658 	* src/c++17/Makefile.in: Regenerate.
   7659 	* src/c++20/Makefile.in: Regenerate.
   7660 	* src/c++98/Makefile.in: Regenerate.
   7661 
   7662 2023-02-06  Jonathan Wakely  <jwakely (a] redhat.com>
   7663 
   7664 	* src/Makefile.am [GLIBCXX_HOSTED] (SUBDIRS): Do not add
   7665 	filesystem, libbacktrace and experimental.
   7666 	* src/Makefile.in: Regenerate.
   7667 
   7668 2023-02-04  Hans-Peter Nilsson  <hp (a] axis.com>
   7669 
   7670 	PR libstdc++/108672
   7671 	* include/pstl/unseq_backend_simd.h (__simd_or): Use __INT32_TYPE__
   7672 	instead of int32_t.
   7673 
   7674 2023-02-04  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7675 
   7676 	* doc/xml/manual/documentation_hacking.xml: Adjust link to pdftex.
   7677 	* doc/html/manual/documentation_hacking.html: Regenerate.
   7678 
   7679 2023-02-04  Franois Dumont  <fdumont (a] gcc.gnu.org>
   7680 
   7681 	* include/bits/basic_string.h (operator=(basic_string&&)): Transfer move-to
   7682 	storage to the move-from instance when allocators are equal.
   7683 	* testsuite/21_strings/basic_string/allocator/char/move_assign.cc (test04):
   7684 	New test case.
   7685 
   7686 2023-02-03  Samuel Thibault  <samuel.thibault (a] gnu.org>
   7687 
   7688 	* config/os/gnu-linux/os_defines.h [!__linux__]
   7689 	(_GLIBCXX_NATIVE_THREAD_ID, _GLIBCXX_GTHREAD_USE_WEAK): Do not define.
   7690 
   7691 2023-02-03  Patrick Palka  <ppalka (a] redhat.com>
   7692 
   7693 	* include/bits/ranges_algo.h (__find_last_fn, find_last):
   7694 	Define.
   7695 	(__find_last_if_fn, find_last_if): Define.
   7696 	(__find_last_if_not_fn, find_last_if_not): Define.
   7697 	* testsuite/25_algorithms/find_last/1.cc: New test.
   7698 	* testsuite/25_algorithms/find_last_if/1.cc: New test.
   7699 	* testsuite/25_algorithms/find_last_if_not/1.cc: New test.
   7700 
   7701 2023-02-03  Patrick Palka  <ppalka (a] redhat.com>
   7702 
   7703 	* include/bits/ranges_algo.h (out_value_result): Define.
   7704 	(iota_result): Define.
   7705 	(__iota_fn, iota): Define.
   7706 	* testsuite/25_algorithms/iota/1.cc: New test.
   7707 
   7708 2023-02-03  Patrick Palka  <ppalka (a] redhat.com>
   7709 
   7710 	* include/bits/ranges_algo.h (__contains_fn, contains): Define.
   7711 	(__contains_subrange_fn, contains_subrange): Define.
   7712 	* testsuite/25_algorithms/contains/1.cc: New test.
   7713 	* testsuite/25_algorithms/contains_subrange/1.cc: New test.
   7714 
   7715 2023-02-02  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7716 
   7717 	* doc/xml/manual/abi.xml: Tweak link to ABIcheck project.
   7718 	* doc/html/manual/abi.html: Regenerate.
   7719 
   7720 2023-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   7721 
   7722 	* src/filesystem/ops-common.h [AVR] (__unsupported): Always use
   7723 	errc::function_not_supported instead of errc::not_supported.
   7724 
   7725 2023-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   7726 
   7727 	* include/std/sstream  (basic_stringbuf::view): Define for old
   7728 	std::string ABI.
   7729 	(basic_istringstream::view, basic_0stringstream::view)
   7730 	(basic_stringstream::view): Likewise.
   7731 	* testsuite/27_io/basic_istringstream/view/char/1.cc: Remove
   7732 	{ dg-require-effective-target cxx11_abi }.
   7733 	* testsuite/27_io/basic_istringstream/view/wchar_t/1.cc:
   7734 	Likewise.
   7735 	* testsuite/27_io/basic_ostringstream/view/char/1.cc: Likewise.
   7736 	* testsuite/27_io/basic_ostringstream/view/wchar_t/1.cc:
   7737 	Likewise.
   7738 	* testsuite/27_io/basic_stringbuf/view/char/1.cc: Likewise.
   7739 	* testsuite/27_io/basic_stringbuf/view/wchar_t/1.cc: Likewise.
   7740 	* testsuite/27_io/basic_stringstream/view/char/1.cc: Likewise.
   7741 	* testsuite/27_io/basic_stringstream/view/wchar_t/1.cc:
   7742 	Likewise.
   7743 
   7744 2023-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   7745 
   7746 	PR libstdc++/108636
   7747 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.31): Export shared_ptr
   7748 	conversion operators for directory iterator comparisons with
   7749 	std::default_sentinel_t.
   7750 	* include/bits/fs_path.h (path::path(string_view, _Type))
   7751 	(path::_Cmpt::_Cmpt(string_view, _Type, size_t)): Move inline
   7752 	definitions to ...
   7753 	* src/c++17/fs_path.cc: ... here.
   7754 	* testsuite/27_io/filesystem/path/108636.cc: New test.
   7755 
   7756 2023-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   7757 
   7758 	* include/std/variant (variant::operator=): Implement resolution
   7759 	of LWG 3585.
   7760 	* testsuite/20_util/variant/lwg3585.cc: New test.
   7761 
   7762 2023-02-02  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7763 
   7764 	* doc/xml/manual/using_exceptions.xml: Update a www.open-std.org
   7765 	link to https.
   7766 	* doc/html/manual/using_exceptions.html: Regenerate.
   7767 
   7768 2023-02-02  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7769 
   7770 	* doc/xml/manual/debug.xml: Fix link to online GDB manual.
   7771 	* doc/html/manual/debug.html: Regenerate.
   7772 
   7773 2023-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   7774 
   7775 	* src/c++11/random.cc (random_device::_M_fini): Do not try to
   7776 	close the file handle if the target doesn't support the
   7777 	/dev/random and /dev/urandom files.
   7778 
   7779 2023-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   7780 
   7781 	* config/os/generic/error_constants.h (errc::value_too_large)
   7782 	[__AVR__]: Define.
   7783 	* src/c++11/system_error.cc
   7784 	(system_category::default_error_condition) [__AVR__]: Only match
   7785 	recognize values equal to EDOM, ERANGE, ENOSYS and EINTR.
   7786 	* src/c++17/fs_ops.cc (fs::current_path) [__AVR__]: Do not check
   7787 	for ENOENT etc. in switch.
   7788 	(fs::remove_all) [__AVR__]: Likewise.
   7789 	* src/filesystem/ops-common.h [__AVR__]: Do not use POSIX open,
   7790 	close etc.
   7791 
   7792 2023-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   7793 
   7794 	* acinclude.m4 (GLIBCXX_ZONEINFO_DIR) [avr-*-*, msp430-*-*]: Set
   7795 	embed_zoneinfo=no
   7796 	* configure: Regenerate.
   7797 
   7798 2023-02-01  Hans-Peter Nilsson  <hp (a] axis.com>
   7799 
   7800 	PR testsuite/108632
   7801 	* testsuite/std/time/hh_mm_ss/1.cc (size): Add empty
   7802 	struct at end of S0.
   7803 
   7804 2023-01-30  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7805 
   7806 	* doc/xml/manual/shared_ptr.xml: Move links from both
   7807 	http://open-std.org and http://www.open-std.org to
   7808 	https://www.open-std.org.
   7809 	* doc/html/manual/memory.html: Regenerate.
   7810 
   7811 2023-01-28  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7812 
   7813 	* doc/xml/manual/appendix_contributing.xml: Adjust link to
   7814 	ISO C++ standard at ANSI.
   7815 	Move link to www.open-std.org to https.
   7816 	* doc/html/manual/appendix_contributing.html: Regenerate.
   7817 
   7818 2023-01-28  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7819 
   7820 	* doc/xml/manual/documentation_hacking.xml: Move sourceforge.net
   7821 	links to https.
   7822 	* doc/html/manual/documentation_hacking.html: Regenerate.
   7823 
   7824 2023-01-28  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7825 
   7826 	* doc/xml/manual/abi.xml: Update www.open-std.org link to https.
   7827 	* doc/html/manual/abi.html: Regenerate.
   7828 
   7829 2023-01-27  Jakub Jelinek  <jakub (a] redhat.com>
   7830 
   7831 	PR libstdc++/108568
   7832 	* testsuite/17_intro/names.cc (__unused): For linux or GNU hurd
   7833 	include features.h if present and then check __GLIBC__ and
   7834 	__GLIBC_MINOR__ macros for glibc prior to 2.19, instead of testing
   7835 	__GLIBC_PREREQ which isn't defined yet.
   7836 
   7837 2023-01-27  Jonathan Wakely  <jwakely (a] redhat.com>
   7838 
   7839 	* src/c++20/tzdb.cc (tzdata_stream): Use constant instead of
   7840 	string literal.
   7841 
   7842 2023-01-27  Jonathan Wakely  <jwakely (a] redhat.com>
   7843 
   7844 	PR libstdc++/108554
   7845 	* testsuite/23_containers/map/modifiers/108554.cc: Use dg-bogus.
   7846 
   7847 2023-01-26  Jonathan Wakely  <jwakely (a] redhat.com>
   7848 
   7849 	* src/c++20/tzdb.cc (operator>>(istream&, ZoneInfo&)): Allow
   7850 	rules named "+" for compatibility with older tzdata.zi files.
   7851 
   7852 2023-01-26  Jonathan Wakely  <jwakely (a] redhat.com>
   7853 
   7854 	PR libstdc++/108554
   7855 	* include/bits/stl_tree.h (_Rb_tree_insert_and_rebalance): Add
   7856 	nonnull attribute.
   7857 	(_Rb_tree_rebalance_for_erase): Add nonnull and returns_nonnull
   7858 	attributes.
   7859 	* testsuite/23_containers/map/modifiers/108554.cc: New test.
   7860 
   7861 2023-01-26  Jonathan Wakely  <jwakely (a] redhat.com>
   7862 
   7863 	PR libstdc++/108530
   7864 	* src/c++20/tzdb.cc (current_zone): Look for TIMEZONE or ZONE in
   7865 	/etc/sysconfig/clock, not DEFAULT_TIMEZONE.
   7866 
   7867 2023-01-26  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7868 
   7869 	* doc/xml/manual/intro.xml: Update links to www.open-std.org to
   7870 	use https.
   7871 	* doc/html/manual/bugs.html: Regenerate.
   7872 
   7873 2023-01-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7874 
   7875 	PR libstdc++/108530
   7876 	* src/c++20/tzdb.cc (current_zone): Look for DEFAULT_TIMEZONE in
   7877 	/etc/sysconfig/clock.
   7878 
   7879 2023-01-24  Jonathan Wakely  <jwakely (a] redhat.com>
   7880 
   7881 	PR libstdc++/102301
   7882 	* include/bits/ranges_base.h: Include <bits/stl_iterator.h> for
   7883 	std::make_reverse_iterator.
   7884 	* include/std/tuple: Include <bits/ranges_util.h> for subrange.
   7885 	(make_from_tuple): Add static assertion from P2255 to diagnose
   7886 	dangling references.
   7887 	* testsuite/20_util/tuple/make_from_tuple/dangling_ref.cc: New test.
   7888 	* testsuite/20_util/tuple/make_from_tuple/tuple_like.cc: New test.
   7889 
   7890 2023-01-23  Franois Dumont  <fdumont (a] gcc.gnu.org>
   7891 
   7892 	* include/debug/safe_iterator.h (_Safe_iterator<>::_Unchecked): New.
   7893 	(_Safe_iterator(const _Safe_iterator&, _Unchecked)): New.
   7894 	(_Safe_iterator::operator++(int)): Use latter.
   7895 	(_Safe_iterator::operator--(int)): Likewise.
   7896 	(_Safe_iterator(_Iterator, const _Safe_sequence_base*)): Remove !_M_insular()
   7897 	check.
   7898 	* include/debug/safe_local_iterator.h (_Safe_local_iterator<>::_Unchecked):
   7899 	New.
   7900 	(_Safe_local_iterator(const _Safe_local_iterator&, _Unchecked)): New.
   7901 	(_Safe_local_iterator::operator++(int)): Use latter.
   7902 	* src/c++11/debug.cc (_S_debug_messages): Add as comment the _Debug_msg_id
   7903 	entry associated to the array entry.
   7904 
   7905 2023-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   7906 
   7907 	* include/bits/fs_path.h (u8path): Add deprecated attribute.
   7908 	* testsuite/27_io/filesystem/path/construct/90281.cc: Add
   7909 	-Wno-deprecated-declarations for C++20 and later.
   7910 	* testsuite/27_io/filesystem/path/factory/u8path-char8_t.cc:
   7911 	Likewise.
   7912 	* testsuite/27_io/filesystem/path/factory/u8path.cc: Likewise.
   7913 	* testsuite/27_io/filesystem/path/native/string.cc: Likewise.
   7914 	* testsuite/27_io/filesystem/path/factory/u8path-depr.cc: New test.
   7915 
   7916 2023-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   7917 
   7918 	* include/bits/random.h (random_device) [!_GLIBCXX_USE_DEV_RANDOM]:
   7919 	Always call _M_fini and _M_getentropy.
   7920 
   7921 2023-01-18  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7922 
   7923 	* doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
   7924 	to www.open-std.org to use https.
   7925 	(COM: Component Model Object Technologies): Rename from...
   7926 	(The Component Object Model): ...to.
   7927 	* doc/html/manual/policy_data_structures.html: Regenerate.
   7928 
   7929 2023-01-18  Dimitrij Mijoski  <dmjpp (a] hotmail.com>
   7930 
   7931 	* testsuite/22_locale/codecvt/codecvt_unicode.cc: Simplify.
   7932 	* testsuite/22_locale/codecvt/codecvt_unicode.h: Simplify.
   7933 	* testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc: Simplify.
   7934 
   7935 2023-01-17  Jonathan Wakely  <jwakely (a] redhat.com>
   7936 
   7937 	* acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Check $target_os instead
   7938 	of $host. Fix check for file being present during native build.
   7939 	* configure: Regenerate.
   7940 
   7941 2023-01-17  Martin Liska  <mliska (a] suse.cz>
   7942 
   7943 	* src/libbacktrace/Makefile.in: Regenerate.
   7944 
   7945 2023-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7946 
   7947 	* src/c++20/tzdb.cc (_GLIBCXX_USE_CXX11_ABI): Define to 1.
   7948 
   7949 2023-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
   7950 
   7951 	PR libstdc++/108413
   7952 	* include/c_compatibility/stdatomic.h: Change copyright line to
   7953 	be consistent with other headers contributed under DCO terms.
   7954 	* include/std/expected: Add full stop to copyright line.
   7955 	* src/c++20/tzdb.cc: Likewise.
   7956 
   7957 2023-01-15  Gerald Pfeifer  <gerald (a] pfeifer.com>
   7958 
   7959 	* doc/xml/manual/status_cxx2014.xml: Switch www.open-std.org to
   7960 	https.
   7961 	* doc/xml/manual/status_cxx2017.xml: Ditto.
   7962 	* doc/xml/manual/status_cxx2020.xml: Ditto.
   7963 	* doc/xml/manual/status_cxx2023.xml: Ditto.
   7964 	* doc/html/manual/status.html: Regenerate.
   7965 
   7966 2023-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   7967 
   7968 	* testsuite/std/time/tzdb_list/1.cc: Remove dg-xfail-run-if
   7969 	and fail gracefully if defining the weak symbol doesn't work.
   7970 
   7971 2023-01-15  Franois Dumont  <fdumont (a] gcc.gnu.org>
   7972 
   7973 	PR libstdc++/108288
   7974 	* include/debug/safe_iterator.h (_Safe_iterator<>::operator++(int)): Extend deadlock
   7975 	fix to other iterator category.
   7976 	(_Safe_iterator<>::operator--(int)): Likewise.
   7977 	* include/debug/safe_local_iterator.h (_Safe_local_iterator<>::operator++(int)):
   7978 	Fix deadlock.
   7979 	* testsuite/util/debug/unordered_checks.h (invalid_local_iterator_pre_increment): New.
   7980 	(invalid_local_iterator_post_increment): New.
   7981 	* testsuite/23_containers/unordered_map/debug/invalid_local_iterator_post_increment_neg.cc:
   7982 	New test.
   7983 	* testsuite/23_containers/unordered_map/debug/invalid_local_iterator_pre_increment_neg.cc:
   7984 	New test.
   7985 
   7986 2023-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   7987 
   7988 	* testsuite/30_threads/jthread/jthread.cc: Remove -pthread from
   7989 	dg-options.
   7990 
   7991 2023-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   7992 
   7993 	* testsuite/std/time/clock/utc/io.cc: Use ctype to widen char.
   7994 
   7995 2023-01-14  Bjrn Schpers  <bjoern (a] hazardy.de>
   7996 
   7997 	* acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): Add check for
   7998 	windows.h. Add pecoff as FORMAT_FILE.
   7999 	* config.h.in: Regenerate.
   8000 	* configure: Regenerate.
   8001 	* src/libbacktrace/Makefile.am: Regenerate.
   8002 	* src/libbacktrace/Makefile.in: Add pecoff.c as FORMAT_FILE.
   8003 
   8004 2023-01-14  Bjrn Schpers  <bjoern (a] hazardy.de>
   8005 
   8006 	* include/std/stacktrace (stacktrace_entry::_S_demangle): Use
   8007 	raw __name if __cxa_demangle could not demangle it.
   8008 
   8009 2023-01-14  Jonathan Wakely  <jwakely (a] redhat.com>
   8010 
   8011 	PR libstdc++/108409
   8012 	* src/c++20/tzdb.cc (current_zone()) [_AIX]: Use TZ environment
   8013 	variable.
   8014 
   8015 2023-01-14  Jonathan Wakely  <jwakely (a] redhat.com>
   8016 
   8017 	* src/c++20/tzdb.cc (TZDB_DISABLED): Disable all code for
   8018 	loading tzdb.
   8019 	* testsuite/std/time/tzdb/leap_seconds.cc: Require tzdb
   8020 	effective target.
   8021 	* testsuite/std/time/tzdb_list/1.cc: Likewise.
   8022 
   8023 2023-01-14  Jonathan Wakely  <jwakely (a] redhat.com>
   8024 
   8025 	* acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Replace the
   8026 	--with-libstdcxx-zoneinfo-dir configure option with
   8027 	--with-libstdcxx-zoneinfo with yes/no/static choices as well as
   8028 	a directory.
   8029 	* config.h.in: Regenerate.
   8030 	* configure: Regenerate.
   8031 	* doc/xml/manual/configure.xml: Document configure option.
   8032 	* doc/html/manual/configure.html: Regenerate.
   8033 	* src/c++20/Makefile.am: Generate tzdata.zi.h header.
   8034 	* src/c++20/Makefile.in: Regenerate.
   8035 	* src/c++20/tzdb.cc (__gnu_cxx::zoneinfo_dir_override): Return a
   8036 	null pointer if no directory is configured.
   8037 	(zoneinfo_dir): Replace with ...
   8038 	(zoneinfo_file): New function.
   8039 	(tzdata_stream): New istream class.
   8040 	(remote_version, reload_tzdb): Use tzdata_stream.
   8041 	* testsuite/lib/libstdc++.exp (check_effective_target_tzdb):
   8042 	Check new _GLIBCXX_STATIC_TZDATA macro and ignore presence of
   8043 	tzdata.zi file in default location.
   8044 	* src/c++20/tzdata.zi: New file.
   8045 
   8046 2023-01-14  Jonathan Wakely  <jwakely (a] redhat.com>
   8047 
   8048 	* include/bits/chrono_io.h (operator<<): Fix syntax errors.
   8049 	* testsuite/std/time/month_day/io.cc: New test.
   8050 	* testsuite/std/time/month_day_last/io.cc: New test.
   8051 	* testsuite/std/time/month_weekday/io.cc: New test.
   8052 	* testsuite/std/time/month_weekday_last/io.cc: New test.
   8053 	* testsuite/std/time/weekday_indexed/io.cc: New test.
   8054 	* testsuite/std/time/weekday_last/io.cc: New test.
   8055 	* testsuite/std/time/year_month/io.cc: New test.
   8056 	* testsuite/std/time/year_month_day_last/io.cc: New test.
   8057 	* testsuite/std/time/year_month_weekday/io.cc: New test.
   8058 	* testsuite/std/time/year_month_weekday_last/io.cc: New test.
   8059 
   8060 2023-01-14  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8061 
   8062 	* include/std/format [_GLIBCXX_INLINE_VERSION](to_chars): Adapt __asm symbol
   8063 	specifications.
   8064 	* config/abi/pre/gnu-versioned-namespace.ver: Add to_chars/from_chars symbols
   8065 	export.
   8066 
   8067 2023-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   8068 
   8069 	* include/bits/std_mutex.h: Include <errno.h>.
   8070 
   8071 2023-01-13  Arsen Arsenovi  <arsen (a] aarsen.me>
   8072 
   8073 	* testsuite/20_util/to_chars/version.cc: Mark hosted-only.
   8074 	* testsuite/20_util/uses_allocator/lwg3677.cc: Ditto.
   8075 	* testsuite/20_util/weak_ptr/cons/self_move.cc: Ditto.
   8076 	* testsuite/std/ranges/adaptors/as_rvalue/1.cc: Replace usage of
   8077 	std::make_unique with a freestanding-compatible wrapper around
   8078 	unique_ptr.
   8079 	* testsuite/21_strings/basic_string_view/operations/contains/char.cc:
   8080 	Don't test for presence of __cpp_lib_string_contains on !HOSTED.
   8081 	* testsuite/21_strings/basic_string_view/operations/contains/char/2.cc:
   8082 	Ditto.
   8083 	* testsuite/std/ranges/version_c++23.cc: Don't test for presence
   8084 	of __cpp_lib_ranges in !HOSTED.
   8085 
   8086 2023-01-13  Arsen Arsenovi  <arsen (a] aarsen.me>
   8087 
   8088 	* include/Makefile.am: Install bits/char_traits.h,
   8089 	std/string_view
   8090 	* include/Makefile.in: Regenerate.
   8091 	* include/bits/char_traits.h: Gate hosted-only, wchar-only and
   8092 	mbstate-only bits behind appropriate #ifs.
   8093 	* include/std/string_view: Gate <iostream> functionality behind
   8094 	HOSTED.
   8095 	* include/std/version: Enable __cpp_lib_constexpr_string_view
   8096 	and __cpp_lib_starts_ends_with in !HOSTED.
   8097 	* include/std/ranges: Re-enable __is_basic_string_view on
   8098 	freestanding, include <string_view> directly.
   8099 	* include/precompiled/stdc++.h: Include <string_view> when
   8100 	!HOSTED too.
   8101 	* testsuite/20_util/function_objects/searchers.cc: Skip testing
   8102 	boyer_moore searchers on freestanding
   8103 	* testsuite/21_strings/basic_string_view/capacity/1.cc: Guard
   8104 	<string>-related tests behind __STDC_HOSTED__.
   8105 	* testsuite/21_strings/basic_string_view/cons/char/1.cc: Ditto.
   8106 	* testsuite/21_strings/basic_string_view/cons/char/2.cc: Remove
   8107 	unused <stdexcept> include.
   8108 	* testsuite/21_strings/basic_string_view/cons/char/3.cc: Remove
   8109 	unused <vector> include.
   8110 	* testsuite/21_strings/basic_string_view/cons/char/range.cc:
   8111 	Guard <string> related testing behind __STDC_HOSTED__.
   8112 	* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc:
   8113 	Guard <stdexcept> related tests behind __STDC_HOSTED__.
   8114 	* testsuite/21_strings/basic_string_view/element_access/char/1.cc:
   8115 	Ditto.
   8116 	* testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
   8117 	Guard <stdexcept> tests behind __STDC_HOSTED__.
   8118 	* testsuite/21_strings/basic_string_view/operations/contains/char/2.cc:
   8119 	Enable test on freestanding, guard <stdexcept> bits behind
   8120 	__STDC_HOSTED__.
   8121 	* testsuite/21_strings/basic_string_view/operations/substr/char.cc:
   8122 	Guard <stdexcept> bits behind __STDC_HOSTED__.
   8123 	* testsuite/21_strings/basic_string_view/operations/substr/wchar_t.cc:
   8124 	Ditto.
   8125 
   8126 2023-01-13  Dimitrij Mijoski  <dmjpp (a] hotmail.com>
   8127 
   8128 	PR libstdc++/86419
   8129 	* src/c++11/codecvt.cc (read_utf8_code_point): Correctly detect
   8130 	errors in incomplete multibyte sequences.
   8131 	(utf16_in): Remove surrogates parameter. Fix conditions for
   8132 	returning partial.
   8133 	(utf16_out): Fix condition for returning partial.
   8134 	(ucs2_in): Do not pass surrogates argument to utf16_in.
   8135 	* testsuite/22_locale/codecvt/codecvt_unicode.cc: New test.
   8136 	* testsuite/22_locale/codecvt/codecvt_unicode.h: New header for
   8137 	tests.
   8138 	* testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc: New
   8139 	test.
   8140 
   8141 2023-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   8142 
   8143 	PR libstdc++/108331
   8144 	* config/io/c_io_stdio.h (__c_lock): Define as a typedef for
   8145 	__GTHREAD_LEGACY_MUTEX_T if defined.
   8146 
   8147 2023-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   8148 
   8149 	PR libstdc++/108327
   8150 	* config/os/gnu-linux/ldbl-extra.ver (GLIBCXX_LDBL_3.4.31):
   8151 	Export __try_use_facet specializations for facets in namespace
   8152 	__gnu_cxx_ldbl128.
   8153 	* config/os/gnu-linux/ldbl-ieee128-extra.ver
   8154 	(GLIBCXX_IEEE128_3.4.31): Likewise for facets in namespace
   8155 	__gnu_cxx_ieee128.
   8156 	* testsuite/util/testsuite_abi.cc: Add to lists of known and
   8157 	latest versions.
   8158 
   8159 2023-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   8160 
   8161 	* include/bits/std_mutex.h: Remove <system_error> include.
   8162 	* include/std/condition_variable: Add <bits/error_constants.h>
   8163 	include.
   8164 	* include/std/mutex: Likewise.
   8165 	* include/std/shared_mutex: Likewise.
   8166 
   8167 2023-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   8168 
   8169 	PR libstdc++/77691
   8170 	* include/experimental/memory_resource
   8171 	(_GLIBCXX_MAX_ALIGN_MATCHES_MALLOC): Define.
   8172 	(do_allocate, do_deallocate): Check it.
   8173 	* testsuite/experimental/memory_resource/new_delete_resource.cc:
   8174 	Relax expected behaviour for 64-bit hppa-hp-hpux11.11.
   8175 
   8176 2023-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   8177 
   8178 	* doc/xml/manual/abi.xml: Add latest library versions.
   8179 	* doc/html/manual/abi.html: Regenerate.
   8180 
   8181 2023-01-12  Franois Dumont  <fdumont (a] gcc.gnu.org>
   8182 
   8183 	PR libstdc++/107189
   8184 	* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_range_equal): Remove
   8185 	unused _Alloc_node instance.
   8186 
   8187 2023-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   8188 
   8189 	* include/bits/atomic_wait.h (__detail::__platform_wait_t):
   8190 	Define as unsigned long if always lock-free, and unsigned int
   8191 	otherwise.
   8192 
   8193 2023-01-10  Jonathan Wakely  <jwakely (a] redhat.com>
   8194 
   8195 	* src/c++20/tzdb.cc (tzdb_list::_S_init_tzdb): Use __try and
   8196 	__catch macros for exception handling.
   8197 
   8198 2023-01-10  Jonathan Wakely  <jwakely (a] redhat.com>
   8199 
   8200 	PR libstdc++/108221
   8201 	* include/bits/stl_algobase.h (__lg): Replace six overloads with
   8202 	a single function template for all integer types.
   8203 	* include/bits/stl_algo.h (__merge_adaptive_resize): Cast
   8204 	arithmetic results back to _Distance.
   8205 
   8206 2023-01-10  Jonathan Wakely  <jwakely (a] redhat.com>
   8207 
   8208 	PR libstdc++/108221
   8209 	* include/std/span (span::span()): Un-simplify constraint to
   8210 	work for size_t of lesser rank than int.
   8211 
   8212 2023-01-07  LIU Hao  <lh_mouse (a] 126.com>
   8213 
   8214 	PR middle-end/108300
   8215 	* src/c++11/system_error.cc: Define `WIN32_LEAN_AND_MEAN` before
   8216 	<windows.h>.
   8217 	* src/c++11/thread.cc: Likewise.
   8218 	* src/c++17/fs_ops.cc: Likewise.
   8219 	* src/filesystem/ops.cc: Likewise.
   8220 
   8221 2023-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8222 
   8223 	PR libstdc++/108228
   8224 	* src/c++20/tzdb.cc (zoneinfo_dir): Add diagnostic pragma.
   8225 
   8226 2023-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8227 
   8228 	PR libstdc++/108235
   8229 	* src/c++20/tzdb.cc (time_zone::_Impl::RulesCounter): New class
   8230 	template and partial specialization for synchronizing access to
   8231 	time_zone::_Impl::infos.
   8232 	(time_zone::_M_get_sys_info, reload_tzdb): Adjust uses of
   8233 	rules_counter.
   8234 
   8235 2023-01-06  Patrick Palka  <ppalka (a] redhat.com>
   8236 
   8237 	PR libstdc++/108260
   8238 	* include/bits/utility.h (__cpp_lib_ranges_zip): Define for C++23.
   8239 	* include/std/ranges (__cpp_lib_ranges_zip): Likewise.
   8240 	(__cpp_lib_ranges_chunk): Likewise.
   8241 	(__cpp_lib_ranges_slide): Likewise.
   8242 	(__cpp_lib_ranges_chunk_by): Likewise.
   8243 	(__cpp_lib_ranges_join_with): Likewise.
   8244 	(__cpp_lib_ranges_repeat): Likewise.
   8245 	(__cpp_lib_ranges_stride): Likewise.
   8246 	(__cpp_lib_ranges_cartesian_product): Likewise.
   8247 	(__cpp_lib_ranges_as_rvalue): Likewise.
   8248 	* include/std/version: Ditto.
   8249 	* testsuite/20_util/tuple/p2321r2.cc: Verify value of
   8250 	feature-test macro.
   8251 	* testsuite/std/ranges/adaptors/as_rvalue/1.cc: Likewise.
   8252 	* testsuite/std/ranges/adaptors/chunk/1.cc: Likewise.
   8253 	* testsuite/std/ranges/adaptors/chunk_by/1.cc: Likewise.
   8254 	* testsuite/std/ranges/adaptors/join_with/1.cc: Likewise.
   8255 	* testsuite/std/ranges/adaptors/slide/1.cc: Likewise.
   8256 	* testsuite/std/ranges/adaptors/stride/1.cc: Likewise.
   8257 	* testsuite/std/ranges/cartesian_product/1.cc: Likewise.
   8258 	* testsuite/std/ranges/repeat/1.cc: Likewise.
   8259 	* testsuite/std/ranges/zip/1.cc: Likewise.
   8260 	* testsuite/std/ranges/version_c++23.cc: New test.
   8261 
   8262 2023-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8263 
   8264 	PR libstdc++/108214
   8265 	* include/std/bitset (operator>>): Use alloca in the right
   8266 	scope, not in a constructor.
   8267 	* testsuite/20_util/bitset/io/input.cc: Check case from PR.
   8268 
   8269 2023-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8270 
   8271 	PR libstdc++/108221
   8272 	* include/std/format (basic_format_arg) [!__cpp_lib_to_chars]:
   8273 	Disable visiting floating-point types.
   8274 
   8275 2023-01-06  Jonathan Wakely  <jwakely (a] redhat.com>
   8276 
   8277 	PR libstdc++/108288
   8278 	* include/debug/safe_iterator.h (_Safe_iterator::operator++(int))
   8279 	(_Safe_iterator::operator--(int)): Do not hold lock around
   8280 	construction of return value.
   8281 
   8282 2023-01-05  John David Anglin  <danglin (a] gcc.gnu.org>
   8283 
   8284 	* config/cpu/hppa/atomicity.h (_PA_LDCW_INSN): Define.
   8285 	(__exchange_and_add): Use _PA_LDCW_INSN.  Use ordered store for
   8286 	lock release.  Revise loop.
   8287 	(__atomic_add): Likewise.
   8288 
   8289 2023-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8290 
   8291 	PR libstdc++/108212
   8292 	* python/libstdcxx/v6/printers.py (_utc_timezone): New global
   8293 	variable.
   8294 	(StdChronoTimePointPrinter::to_string): Use it.
   8295 
   8296 2023-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8297 
   8298 	PR libstdc++/108290
   8299 	* include/std/functional (_Bind_front): Add no_unique_address
   8300 	attribute to data members.
   8301 	* testsuite/20_util/function_objects/bind_front/107784.cc: Check
   8302 	size of call wrappers with empty types for targets and bound
   8303 	arguments.
   8304 
   8305 2023-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8306 
   8307 	PR libstdc++/108211
   8308 	* src/c++20/tzdb.cc (chrono::current_zone()): Check for zone
   8309 	using only last component of the name.
   8310 
   8311 2023-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8312 
   8313 	PR libstdc++/108228
   8314 	PR libstdc++/108235
   8315 	* config/abi/pre/gnu.ver: Move zoneinfo_dir_override export to
   8316 	the latest symbol version.
   8317 	* src/c++20/tzdb.cc (USE_ATOMIC_SHARED_PTR): Define to 0 if
   8318 	atomic<_Node*> is not always lock free.
   8319 	(USE_ATOMIC_LIST_HEAD): New macro.
   8320 	[__hpux__] (__gnu_cxx::zoneinfo_dir_override()): Provide
   8321 	definition of weak symbol.
   8322 	(tzdb_list::_Node::_S_head): Rename to _S_head_cache.
   8323 	(tzdb_list::_Node::_S_list_head): New function for accessing
   8324 	list head efficiently.
   8325 	(tzdb_list::_Node::_S_cache_list_head): New function for
   8326 	updating _S_list_head.
   8327 
   8328 2023-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   8329 
   8330 	PR libstdc++/108265
   8331 	* include/std/chrono (hh_mm_ss): Do not use chrono::abs if
   8332 	duration rep is unsigned.
   8333 	* testsuite/std/time/hh_mm_ss/1.cc: Check unsigned rep.
   8334 
   8335 2023-01-04  Iain Sandoe  <iain (a] sandoe.co.uk>
   8336 
   8337 	PR libstdc++/108228
   8338 	* config/abi/pre/gnu.ver (GLIBCXX_3.4):
   8339 	Add __gnu_cxx::zoneinfo_dir_override().
   8340 
   8341 2023-01-04  Jonathan Wakely  <jwakely (a] redhat.com>
   8342 
   8343 	PR libstdc++/108258
   8344 	* include/std/array (__array_traits<T, 0>::operator T*()): Add
   8345 	constexpr.
   8346 	* testsuite/23_containers/array/element_access/constexpr_c++17.cc: Check
   8347 	std::array<T, 0>::data().
   8348 
   8349 
   8351 Copyright (C) 2023 Free Software Foundation, Inc.
   8352 
   8353 Copying and distribution of this file, with or without modification,
   8354 are permitted in any medium without royalty provided the copyright
   8355 notice and this notice are preserved.
   8356