Home | History | Annotate | Line # | Download | only in libstdc++-v3
      1 2025-05-23  Release Manager
      2 
      3 	* GCC 14.3.0 released.
      4 
      5 2025-05-13  Jonathan Wakely  <jwakely (a] redhat.com>
      6 
      7 	Backported from master:
      8 	2025-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
      9 
     10 	PR libstdc++/120198
     11 	* include/bits/version.def (scoped_lock): Do not depend on
     12 	gthreads or hosted.
     13 	* include/bits/version.h: Regenerate.
     14 	* include/std/mutex (scoped_lock): Update comment.
     15 	* testsuite/30_threads/scoped_lock/requirements/typedefs.cc:
     16 	Remove dg-require-gthreads and use custom lockable type instead
     17 	of std::mutex. Check that typedef is only present for a single
     18 	template argument.
     19 
     20 2025-05-12  Jonathan Wakely  <jwakely (a] redhat.com>
     21 
     22 	* doc/xml/manual/status_cxx2023.xml: Update status of proposal
     23 	implemented after GCC 14.2 release.
     24 	* doc/html/manual/status.html: Regenerate.
     25 
     26 2025-05-06  Dhruv Chawla  <dhruvc (a] nvidia.com>
     27 
     28 	Backported from master:
     29 	2025-05-02  Dhruv Chawla  <dhruvc (a] nvidia.com>
     30 
     31 	* include/std/memory: Define __glibcxx_want_addressof_constexpr.
     32 	* testsuite/20_util/headers/memory/version.cc: Test for macro
     33 	value.
     34 
     35 2025-04-30  Franois Dumont  <frs.dumont (a] gmail.com>
     36 
     37 	Backported from master:
     38 	2025-04-30  Franois Dumont  <frs.dumont (a] gmail.com>
     39 		    Jonathan Wakely  <jwakely (a] redhat.com>
     40 
     41 	* testsuite/lib/libstdc++.exp (v3_target_compile): Strip version namespace
     42 	from compiler output.
     43 	* testsuite/20_util/function/cons/70692.cc: Remove now useless __8 namespace
     44 	pattern.
     45 	* testsuite/23_containers/map/48101_neg.cc: Likewise.
     46 	* testsuite/23_containers/multimap/48101_neg.cc: Likewise.
     47 
     48 2025-04-29  Patrick Palka  <ppalka (a] redhat.com>
     49 
     50 	Backported from master:
     51 	2025-02-28  Patrick Palka  <ppalka (a] redhat.com>
     52 
     53 	PR libstdc++/104606
     54 	* include/std/optional (operator<=>): Revert r14-9771 change.
     55 	Add constraint checking the validity of the return type
     56 	compare_three_way_result_t before the three_way_comparable_with
     57 	constraint.
     58 
     59 2025-04-29  Patrick Palka  <ppalka (a] redhat.com>
     60 
     61 	Backported from master:
     62 	2025-02-26  Patrick Palka  <ppalka (a] redhat.com>
     63 
     64 	PR libstdc++/118083
     65 	* include/bits/ranges_base.h
     66 	(ranges::__access::__possibly_const_range): Mention LWG 4027.
     67 
     68 2025-04-29  Patrick Palka  <ppalka (a] redhat.com>
     69 
     70 	Backported from master:
     71 	2025-02-25  Patrick Palka  <ppalka (a] redhat.com>
     72 
     73 	PR libstdc++/118083
     74 	* include/bits/ranges_base.h
     75 	(ranges::__access::__possibly_const_range): Adjust logic as per
     76 	LWG 4027.  Add missing input_range constraint.
     77 	* testsuite/std/ranges/access/cbegin.cc (test05): Verify LWG
     78 	4027 testcases.
     79 	* testsuite/std/ranges/access/cdata.cc: Adjust, simplify and
     80 	consolidate some tests after the above.
     81 	* testsuite/std/ranges/access/cend.cc: Likewise.
     82 	* testsuite/std/ranges/access/crbegin.cc: Likewise.
     83 	* testsuite/std/ranges/access/crend.cc: Likewise.
     84 	* testsuite/std/ranges/adaptors/join.cc: Likewise.
     85 	* testsuite/std/ranges/adaptors/take_while.cc: Likewise.
     86 	* testsuite/std/ranges/adaptors/transform.cc: Likewise.
     87 
     88 2025-04-17  Tomasz Kamiski  <tkaminsk (a] redhat.com>
     89 
     90 	Backported from master:
     91 	2025-03-12  Tomasz Kamiski  <tkaminsk (a] redhat.com>
     92 
     93 	* include/std/format (formatter<_Float16, _CharT>): Define only if
     94 	_GLIBCXX_FLOAT_IS_IEEE_BINARY32 macro is defined.
     95 	(formatter<_Float16, _CharT>): As above.
     96 	(formatter<__gnu_cxx::__bfloat16_t, _CharT>): As above.
     97 	(formatter<_Float64, _CharT>): Define only if
     98 	_GLIBCXX_DOUBLE_IS_IEEE_BINARY64 is defined.
     99 	(basic_format_arg::_S_to_arg_type): Normalize _Float32 and _Float64
    100 	only to float and double respectivelly.
    101 	(basic_format_arg::_S_to_enum): Remove handling of _Float32 and _Float64.
    102 
    103 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    104 
    105 	* include/std/numeric: Only mention ranges::iota in comment.
    106 
    107 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    108 
    109 	* testsuite/17_intro/names.cc: Check ranges is not used as an
    110 	identifier before C++20.
    111 
    112 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    113 
    114 	Backported from master:
    115 	2025-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
    116 
    117 	* include/std/ranges (__glibcxx_want_ranges_iota): Do not
    118 	define.
    119 
    120 2025-04-16  Michael Levine  <mlevine55 (a] bloomberg.net>
    121 
    122 	Backported from master:
    123 	2024-06-08  Michael Levine  <mlevine55 (a] bloomberg.net>
    124 
    125 	PR libstdc++/108760
    126 	* include/bits/ranges_algo.h (ranges::out_value_result)
    127 	(ranges::iota_result, ranges::__iota_fn, ranges::iota): Move to
    128 	<bits/ranges_algobase.h>.
    129 	* include/bits/ranges_algobase.h (ranges::out_value_result):
    130 	(ranges::iota_result, ranges::__iota_fn, ranges::iota): Move to
    131 	here.
    132 	* include/std/numeric: Include <bits/ranges_algobase.h>.
    133 	* testsuite/25_algorithms/iota/1.cc: Renamed to ...
    134 	* testsuite/26_numerics/iota/2.cc: ... here.
    135 
    136 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    137 
    138 	Backported from master:
    139 	2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    140 
    141 	PR libstdc++/105609
    142 	* include/bits/ranges_algobase.h (__detail::__assign_one): New
    143 	helper function.
    144 	(__copy_or_move, __copy_or_move_backward): Use new function
    145 	instead of std::__assign_one.
    146 	* testsuite/25_algorithms/move/constrained.cc: Check that
    147 	ADL iter_move is used in preference to std::move.
    148 	* testsuite/25_algorithms/move_backward/constrained.cc:
    149 	Likewise.
    150 
    151 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    152 
    153 	Backported from master:
    154 	2024-10-18  Jonathan Wakely  <jwakely (a] redhat.com>
    155 
    156 	* include/bits/ranges_algobase.h (ranges::__assign_one): Remove.
    157 	(__copy_or_move, __copy_or_move_backward): Use std::__assign_one
    158 	instead of ranges::__assign_one.
    159 
    160 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    161 
    162 	Backported from master:
    163 	2024-10-13  Jonathan Wakely  <jwakely (a] redhat.com>
    164 
    165 	PR libstdc++/117121
    166 	* include/bits/ranges_algobase.h (copy_backward): Decrement
    167 	output iterator before assigning one element through it.
    168 	* testsuite/25_algorithms/copy/108846.cc: Ensure the algorithm's
    169 	effects are correct for a single memcpyable element.
    170 	* testsuite/25_algorithms/copy_backward/108846.cc: Likewise.
    171 	* testsuite/25_algorithms/copy_n/108846.cc: Likewise.
    172 
    173 2025-04-16  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    174 
    175 	Backported from master:
    176 	2024-09-13  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    177 
    178 	PR libstdc++/108846
    179 	PR libstdc++/116471
    180 	* include/bits/ranges_algobase.h (__assign_one): New helper
    181 	function.
    182 	(__copy_or_move): Remove a spurious static_assert; use
    183 	__assign_one for memcpyable ranges of length 1.
    184 	(__copy_or_move_backward): Likewise.
    185 	* testsuite/25_algorithms/copy/108846.cc: Extend to range-based
    186 	algorithms, and cover both memcpyable and non-memcpyable
    187 	cases.
    188 	* testsuite/25_algorithms/copy_backward/108846.cc: Likewise.
    189 	* testsuite/25_algorithms/copy_n/108846.cc: Likewise.
    190 	* testsuite/25_algorithms/move/108846.cc: Likewise.
    191 	* testsuite/25_algorithms/move_backward/108846.cc: Likewise.
    192 
    193 2025-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
    194 
    195 	Backported from master:
    196 	2024-06-07  Jonathan Wakely  <jwakely (a] redhat.com>
    197 
    198 	* include/bits/ranges_algobase.h: Include <bits/stl_algobase.h>.
    199 
    200 2025-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
    201 
    202 	Backported from master:
    203 	2025-04-14  Jonathan Wakely  <jwakely (a] redhat.com>
    204 
    205 	PR libstdc++/21334
    206 	* doc/xml/manual/using.xml: Document that container data race
    207 	avoidance rules do not apply to COW std::string.
    208 	* doc/html/*: Regenerate.
    209 
    210 2025-04-10  Jonathan Wakely  <jwakely (a] redhat.com>
    211 
    212 	Backported from master:
    213 	2024-11-07  Jonathan Wakely  <jwakely (a] redhat.com>
    214 
    215 	PR libstdc++/115285
    216 	* include/bits/hashtable.h (_Hashtable::_S_forward_key): Remove.
    217 	(_Hashtable::_M_insert_unique_aux): Replace _S_forward_key with
    218 	a static_cast to a type defined using conditional_t.
    219 	(_Hashtable::_M_insert): Replace _ConvertToValueType with a
    220 	static_cast to a type defined using conditional_t.
    221 	* include/bits/hashtable_policy.h (_ConvertToValueType): Remove.
    222 	* testsuite/23_containers/unordered_map/insert/115285.cc: New test.
    223 	* testsuite/23_containers/unordered_set/insert/115285.cc: New test.
    224 	* testsuite/23_containers/unordered_set/96088.cc: Adjust
    225 	expected number of allocations.
    226 
    227 2025-04-10  Jonathan Wakely  <jwakely (a] redhat.com>
    228 
    229 	Backported from master:
    230 	2024-11-07  Jonathan Wakely  <jwakely (a] redhat.com>
    231 
    232 	* include/bits/stl_pair.h (__is_pair): Define for C++11 and
    233 	C++14 as well.
    234 
    235 2025-04-10  Franois Dumont  <frs.dumont (a] gmail.com>
    236 
    237 	Backported from master:
    238 	2024-10-24  Franois Dumont  <frs.dumont (a] gmail.com>
    239 
    240 	* testsuite/23_containers/unordered_map/96088.cc (test03): Fix increments
    241 	value when _GLIBCXX_USE_CXX11_ABI is equal to 0.
    242 
    243 2025-04-10  Franois Dumont  <frs.dumont (a] gmail.com>
    244 
    245 	Backported from master:
    246 	2024-10-23  Franois Dumont  <frs.dumont (a] gmail.com>
    247 
    248 	PR libstdc++/115285
    249 	* include/bits/hashtable.h (_S_forward_key<_Kt>): Always return a temporary
    250 	key_type instance.
    251 	* testsuite/23_containers/unordered_map/96088.cc: Adapt to additional instanciation.
    252 	Also check that mapped_type is not instantiated when there is no insertion.
    253 	* testsuite/23_containers/unordered_multimap/96088.cc: Adapt to additional
    254 	instanciation.
    255 	* testsuite/23_containers/unordered_multiset/96088.cc: Likewise.
    256 	* testsuite/23_containers/unordered_set/96088.cc: Likewise.
    257 	* testsuite/23_containers/unordered_set/pr115285.cc: New test case.
    258 
    259 2025-04-09  Patrick Palka  <ppalka (a] redhat.com>
    260 
    261 	Backported from master:
    262 	2025-04-09  Patrick Palka  <ppalka (a] redhat.com>
    263 
    264 	PR libstdc++/115046
    265 	PR libstdc++/112490
    266 	* include/bits/stl_iterator.h (basic_const_iterator::operator-):
    267 	Replace non-dependent basic_const_iterator function parameter with
    268 	a dependent one of type basic_const_iterator<_It2> where _It2
    269 	matches _It.
    270 	* testsuite/std/ranges/adaptors/as_const/1.cc (test04): New test.
    271 
    272 2025-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
    273 
    274 	Backported from master:
    275 	2025-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
    276 
    277 	PR libstdc++/119671
    278 	* include/std/format (__formatter_fp::format): Do not invalidate
    279 	__wstr unless _M_localized returns a valid string.
    280 	* testsuite/std/format/functions/format.cc: Check wide string
    281 	formatting of floating-point types with classic locale.
    282 
    283 2025-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
    284 
    285 	Backported from master:
    286 	2025-04-07  Jonathan Wakely  <jwakely (a] redhat.com>
    287 
    288 	* doc/doxygen/user.cfg.in (INPUT): Add text_encoding.
    289 
    290 2025-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
    291 
    292 	Backported from master:
    293 	2025-04-04  Jonathan Wakely  <jwakely (a] redhat.com>
    294 
    295 	PR libstdc++/101587
    296 	* include/bits/ranges_uninitialized.h (__detail::__mindist):
    297 	Remove.
    298 	(ranges::uninitialized_copy, ranges::uninitialized_copy_n)
    299 	(ranges::uninitialized_move, ranges::uninitialized_move_n): Use
    300 	comparison and assignment instead of __mindist.
    301 	* testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc:
    302 	Check with ranges that use integer-like class type for
    303 	difference type.
    304 	* testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc:
    305 	Likewise.
    306 
    307 2025-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
    308 
    309 	Backported from master:
    310 	2025-03-27  Jonathan Wakely  <jwakely (a] redhat.com>
    311 
    312 	PR libstdc++/101587
    313 	* include/bits/ranges_uninitialized.h (__detail::__mindist):
    314 	New function object.
    315 	(ranges::uninitialized_copy, ranges::uninitialized_copy_n)
    316 	(ranges::uninitialized_move, ranges::uninitialized_move_n): Use
    317 	__mindist instead of std::min.
    318 	* testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc:
    319 	Check ranges with difference difference types.
    320 	* testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc:
    321 	Likewise.
    322 
    323 2025-04-07  Patrick Palka  <ppalka (a] redhat.com>
    324 
    325 	Backported from master:
    326 	2025-03-13  Patrick Palka  <ppalka (a] redhat.com>
    327 
    328 	PR libstdc++/116440
    329 	* include/std/tuple (tuple::tuple(const _Elements&...))
    330 	[C++20]: Turn into a template.
    331 	* testsuite/20_util/tuple/116440.C: New test.
    332 
    333 2025-04-03  Tomasz Kamiski  <tkaminsk (a] redhat.com>
    334 
    335 	Backported from master:
    336 	2025-04-03  Tomasz Kamiski  <tkaminsk (a] redhat.com>
    337 
    338 	* testsuite/std/format/functions/format.cc: Restored line.
    339 
    340 2025-04-03  Tomasz Kamiski  <tkaminsk (a] redhat.com>
    341 
    342 	PR libstdc++/119593
    343 	* include/bits/unicode.h
    344 	(__unicode::__literal_encoding_is_unicode<_CharT>):
    345 	Corrected handing for UTF-16 and UTF-32 with "LE" or "BE" suffix.
    346 	* include/std/format (__formatter_str::_S_character_width):
    347 	Define.
    348 	(__formatter_str::_S_character_width): Updated passed char
    349 	length.
    350 	* testsuite/std/format/functions/format.cc: Test for wchar_t.
    351 
    352 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    353 
    354 	Backported from master:
    355 	2025-03-27  Jonathan Wakely  <jwakely (a] redhat.com>
    356 
    357 	PR libstdc++/119469
    358 	* include/bits/iterator_concepts.h (_IterMove::__result): Use
    359 	decltype-specifier instead of an explicit type.
    360 	* testsuite/24_iterators/customization_points/iter_move.cc:
    361 	Check results for function references.
    362 
    363 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    364 
    365 	Backported from master:
    366 	2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    367 
    368 	PR libstdc++/106612
    369 	* include/bits/iterator_concepts.h (_IterMove::__iter_ref_t):
    370 	New alias template.
    371 	(_IterMove::__result): Use __iter_ref_t instead of
    372 	std::iter_reference_t.
    373 	(_IterMove::__type): Remove incorrect __dereferenceable
    374 	constraint.
    375 	(_IterMove::operator()): Likewise. Add correct constraints. Use
    376 	__iter_ref_t instead of std::iter_reference_t. Forward parameter
    377 	as correct value category.
    378 	(iter_swap): Add comments.
    379 	* testsuite/24_iterators/customization_points/iter_move.cc: Test
    380 	that iter_move is found by ADL and that rvalue arguments are
    381 	handled correctly.
    382 
    383 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    384 
    385 	Backported from master:
    386 	2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    387 
    388 	PR libstdc++/110498
    389 	* include/bits/vector.tcc (vector<bool, A>::_M_reallocate):
    390 	Hoist loads of begin() and end() before allocation and use them
    391 	to state an unreachable condition.
    392 	* testsuite/23_containers/vector/bool/capacity/110498.cc: New
    393 	test.
    394 
    395 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    396 
    397 	Backported from master:
    398 	2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    399 
    400 	PR libstdc++/114758
    401 	* include/bits/vector.tcc (vector<bool, A>::_M_fill_insert):
    402 	Hoist loads of begin() and end() before allocation.
    403 	* testsuite/23_containers/vector/bool/capacity/114758.cc: New
    404 	test.
    405 
    406 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    407 
    408 	Backported from master:
    409 	2025-03-28  Jonathan Wakely  <jwakely (a] redhat.com>
    410 
    411 	PR libstdc++/117983
    412 	* include/bits/vector.tcc (vector::_M_range_insert): Add
    413 	unreachable condition to tell the compiler begin() <= end().
    414 	* testsuite/23_containers/vector/modifiers/insert/117983.cc: New
    415 	test.
    416 
    417 2025-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
    418 
    419 	Backported from master:
    420 	2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    421 
    422 	PR libstdc++/114945
    423 	* include/bits/vector.tcc (vector::_M_default_append): Add
    424 	unreachable condition so the compiler knows that _M_finish is
    425 	not null.
    426 	* testsuite/23_containers/vector/capacity/114945.cc: New test.
    427 
    428 2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    429 
    430 	PR libstdc++/116212
    431 	* testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc:
    432 	Use unsigned for vector size.
    433 
    434 2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    435 
    436 	Backported from master:
    437 	2024-06-13  Jonathan Wakely  <jwakely (a] redhat.com>
    438 
    439 	* include/bits/ranges_base.h (range_common_reference_t): New
    440 	alias template, as per LWG 3860.
    441 	* testsuite/std/ranges/range.cc: Check it.
    442 
    443 2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    444 
    445 	Backported from master:
    446 	2025-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
    447 
    448 	* include/bits/stl_map.h: Check __glibcxx_node_extract instead
    449 	of __cplusplus.
    450 	* include/bits/stl_multimap.h: Likewise.
    451 	* include/bits/stl_multiset.h: Likewise.
    452 	* include/bits/stl_set.h: Likewise.
    453 	* include/bits/stl_tree.h: Likewise.
    454 
    455 2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    456 
    457 	Backported from master:
    458 	2025-03-12  Jonathan Wakely  <jwakely (a] redhat.com>
    459 
    460 	* include/std/future (packaged_task::packaged_task(F&&)): Add
    461 	static_assert.
    462 	* testsuite/30_threads/packaged_task/cons/dangling_ref.cc: Add
    463 	dg-error for new static assertion.
    464 	* testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: New
    465 	test.
    466 
    467 2025-04-01  Jonathan Wakely  <jwakely (a] redhat.com>
    468 
    469 	Backported from master:
    470 	2025-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
    471 
    472 	PR libstdc++/118699
    473 	* testsuite/27_io/filesystem/operations/copy.cc: Check copying a
    474 	file to a directory.
    475 
    476 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    477 
    478 	Backported from master:
    479 	2025-03-24  Jonathan Wakely  <jwakely (a] redhat.com>
    480 
    481 	PR libstdc++/101527
    482 	* testsuite/24_iterators/common_iterator/101527.cc: New test.
    483 	* testsuite/24_iterators/counted_iterator/101527.cc: New test.
    484 
    485 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    486 
    487 	Backported from master:
    488 	2025-03-04  Jonathan Wakely  <jwakely (a] redhat.com>
    489 
    490 	* doc/xml/manual/test.xml: Remove stray comma.
    491 	* doc/html/manual/test.html: Regenerate.
    492 
    493 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    494 
    495 	Backported from master:
    496 	2025-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
    497 
    498 	* include/std/forward_list (erase): Change lambda to have
    499 	explicit return type and const parameter type.
    500 	* include/std/list (erase): Likewise.
    501 	* testsuite/23_containers/forward_list/erasure.cc: Check lambda
    502 	is correct.
    503 	* testsuite/23_containers/list/erasure.cc: Likewise.
    504 
    505 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    506 
    507 	Backported from master:
    508 	2025-03-24  Jonathan Wakely  <jwakely (a] redhat.com>
    509 
    510 	* doc/xml/manual/policy_data_structures_biblio.xml: Fix two
    511 	broken links.
    512 	* doc/html/manual/policy_data_structures.html: Regenerate.
    513 
    514 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    515 
    516 	Backported from master:
    517 	2025-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
    518 
    519 	PR libstdc++/108487
    520 	* include/bits/stl_vector.h (vector(initializer_list)): Call
    521 	_M_range_initialize_n instead of _M_range_initialize.
    522 	(vector(InputIterator, InputIterator)): Use _M_range_initialize_n
    523 	for C++20 sized sentinels and forward iterators.
    524 	(vector::_M_range_initialize(FwIt, FwIt, forward_iterator_tag)):
    525 	Use _M_range_initialize_n.
    526 	(vector::_M_range_initialize_n): New function.
    527 	* testsuite/23_containers/vector/cons/108487.cc: New test.
    528 
    529 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    530 
    531 	Backported from master:
    532 	2025-03-27  Jonathan Wakely  <jwakely (a] redhat.com>
    533 
    534 	* src/c++20/tzdata.zi: Import new file from 2025b release.
    535 
    536 2025-03-31  Jonathan Wakely  <jwakely (a] redhat.com>
    537 
    538 	Backported from master:
    539 	2025-03-12  Jonathan Wakely  <jwakely (a] redhat.com>
    540 
    541 	* include/std/chrono (__detail::__get_leap_second_info): Update
    542 	expiry date for leap seconds list.
    543 	* src/c++20/tzdata.zi: Import new file from 2025a release.
    544 	* src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds)
    545 	Update expiry date for leap seconds list.
    546 
    547 2025-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
    548 
    549 	Backported from master:
    550 	2025-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
    551 
    552 	* include/std/ranges (ranges::to): Allow unions as well as
    553 	non-union class types.
    554 	* testsuite/std/ranges/conv/lwg4229.cc: New test.
    555 
    556 2025-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
    557 
    558 	Backported from master:
    559 	2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    560 
    561 	PR libstdc++/112803
    562 	* include/std/ranges (ranges::to): Add static assertions to
    563 	enforce Mandates conditions.
    564 	* testsuite/std/ranges/conv/112803.cc: New test.
    565 
    566 2025-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
    567 
    568 	Backported from master:
    569 	2025-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
    570 
    571 	PR libstdc++/119429
    572 	* include/std/format (__format::_Scanner::_Scanner): Cast
    573 	default argument to size_t.
    574 
    575 2025-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
    576 
    577 	Backported from master:
    578 	2024-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
    579 
    580 	PR libstdc++/115939
    581 	* include/bits/hashtable_policy.h (_Node_iterator): Add
    582 	operator== and operator!=.
    583 	(_Node_const_iterator): Likewise.
    584 	* testsuite/23_containers/unordered_map/115939.cc: New test.
    585 
    586 2025-03-25  Patrick Palka  <ppalka (a] redhat.com>
    587 
    588 	Backported from master:
    589 	2025-03-13  Patrick Palka  <ppalka (a] redhat.com>
    590 
    591 	PR libstdc++/119135
    592 	* include/std/ranges: Include <utility>.
    593 	(views::__detail::__is_ref_view): Replace with ...
    594 	(views::__detail::__is_constable_ref_view): ... this.
    595 	(views::_AsConst::operator()): Replace bogus use of element_type
    596 	in the ref_view branch.
    597 	* testsuite/std/ranges/adaptors/as_const/1.cc (test03): Extend
    598 	test.
    599 
    600 2025-03-21  Jonathan Wakely  <jwakely (a] redhat.com>
    601 
    602 	Backported from master:
    603 	2025-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
    604 
    605 	* doc/xml/manual/test.xml: Fix default for -std option.
    606 	* doc/html/manual/test.html: Regenerate.
    607 
    608 2025-03-21  Jakub Jelinek  <jakub (a] redhat.com>
    609 
    610 	Backported from master:
    611 	2025-03-20  Jakub Jelinek  <jakub (a] redhat.com>
    612 
    613 	* testsuite/18_support/numeric_limits/traps.cc (main): Fix comment
    614 	typo.
    615 
    616 2025-03-21  Jonathan Wakely  <jwakely (a] redhat.com>
    617 
    618 	Backported from master:
    619 	2025-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
    620 
    621 	* include/bits/locale_facets_nonio.tcc (time_put::do_put): Fix
    622 	typo in comment.
    623 
    624 2025-03-18  Patrick Palka  <ppalka (a] redhat.com>
    625 
    626 	Backported from master:
    627 	2025-02-28  Patrick Palka  <ppalka (a] redhat.com>
    628 
    629 	PR libstdc++/112490
    630 	* include/bits/stl_iterator.h (basic_const_iterator::operator<):
    631 	Replace non-dependent basic_const_iterator function parameter with
    632 	a dependent one of type basic_const_iterator<_It3> where _It3
    633 	matches _It.
    634 	(basic_const_iterator::operator>): Likewise.
    635 	(basic_const_iterator::operator<=): Likewise.
    636 	(basic_const_iterator::operator>=): Likewise.
    637 	* testsuite/24_iterators/const_iterator/112490.cc: New test.
    638 
    639 2025-03-05  Tomasz Kamiski  <tkaminsk (a] redhat.com>
    640 
    641 	Backported from master:
    642 	2025-03-05  Tomasz Kamiski  <tkaminsk (a] redhat.com>
    643 
    644 	PR libstdc++/119121
    645 	* include/bits/ranges_util.h (__detail::__pair_like_convertible_from):
    646 	Use `_Tp` in `is_reference_v` check
    647 	* testsuite/std/ranges/subrange/tuple_like.cc: New tests for
    648 	pair-like conversion
    649 
    650 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    651 
    652 	Backported from master:
    653 	2025-02-20  Jonathan Wakely  <jwakely (a] redhat.com>
    654 
    655 	PR libstdc++/118811
    656 	* src/c++20/tzdb.cc (tzdb_list::_Node): Move definitions of
    657 	static data members to new header.
    658 	* src/c++20/tzdb_globals.h: New header. Use init_priority
    659 	attribute on static data members.
    660 	* testsuite/std/time/tzdb_list/pr118811.cc: New test.
    661 
    662 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    663 
    664 	Backported from master:
    665 	2024-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
    666 
    667 	* include/std/tuple: Do not include implementation details in
    668 	Doxygen documentation.
    669 
    670 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    671 
    672 	Backported from master:
    673 	2025-02-27  Jonathan Wakely  <jwakely (a] redhat.com>
    674 
    675 	* include/std/stacktrace (_Impl::_M_allocate): Fix outdated
    676 	comment.
    677 
    678 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    679 
    680 	Backported from master:
    681 	2024-06-03  Jonathan Wakely  <jwakely (a] redhat.com>
    682 
    683 	* include/std/stacktrace (basic_stacktrace::_Impl::_M_allocate):
    684 	Use __detail::__get_temporary_buffer.
    685 	(basic_stacktrace::_Impl::_M_deallocate): Use
    686 	__detail::__return_temporary_buffer.
    687 
    688 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    689 
    690 	Backported from master:
    691 	2024-06-03  Jonathan Wakely  <jwakely (a] redhat.com>
    692 
    693 	* include/std/string_view (starts_with(basic_string_view)):
    694 	Compare lengths first and then call traits_type::compare
    695 	directly.
    696 
    697 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    698 
    699 	Backported from master:
    700 	2024-06-28  Jonathan Wakely  <jwakely (a] redhat.com>
    701 
    702 	PR libstdc++/104395
    703 	* include/bits/new_allocator.h: Disable extended alignment
    704 	support in C++98 mode.
    705 	* include/bits/stl_tempbuf.h: Likewise.
    706 	* include/ext/bitmap_allocator.h: Likewise.
    707 	* include/ext/malloc_allocator.h: Likewise.
    708 	* include/ext/mt_allocator.h: Likewise.
    709 	* include/ext/pool_allocator.h: Likewise.
    710 	* testsuite/ext/104395.cc: New test.
    711 
    712 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    713 
    714 	Backported from master:
    715 	2024-06-19  Jonathan Wakely  <jwakely (a] redhat.com>
    716 
    717 	* include/bits/stl_tempbuf.h (__get_temporary_buffer): Cast
    718 	argument to size_t to handle negative values and suppress
    719 	-Wsign-compare warning.
    720 	(_Temporary_buffer): Move diagnostic pragmas to new location of
    721 	call to std::get_temporary_buffer.
    722 
    723 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    724 
    725 	Backported from master:
    726 	2024-06-03  Jonathan Wakely  <jwakely (a] redhat.com>
    727 
    728 	PR libstdc++/105258
    729 	* include/bits/stl_tempbuf.h (__detail::__get_temporary_buffer):
    730 	New function to do allocation for get_temporary_buffer, with
    731 	extended alignment support.
    732 	(__detail::__return_temporary_buffer): Support extended
    733 	alignment.
    734 	(get_temporary_buffer): Use __get_temporary_buffer.
    735 	(return_temporary_buffer): Support extended alignment. Add
    736 	deprecated attribute.
    737 	(_Temporary_buffer): Move allocation and deallocation into a
    738 	subobject and remove try-catch block in constructor.
    739 	(__uninitialized_construct_buf): Use argument deduction for
    740 	value type.
    741 	* testsuite/20_util/temporary_buffer.cc: Add dg-warning for new
    742 	deprecated warning.
    743 	* testsuite/25_algorithms/stable_sort/overaligned.cc: New test.
    744 
    745 2025-02-28  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    746 
    747 	Backported from master:
    748 	2025-02-07  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    749 
    750 	PR libstdc++/118160
    751 	PR libstdc++/100249
    752 	* include/bits/ranges_algo.h (__is_permutation_fn): Avoid a
    753 	dangling reference by storing the result of the iterator
    754 	dereference and the result of the projection in two distinct
    755 	variables, in order to lifetime-extend each one.
    756 	Forward the projected value to the predicate.
    757 	* testsuite/25_algorithms/is_permutation/constrained.cc: Add a
    758 	test with a range returning prvalues. Test it in a constexpr
    759 	context, in order to rely on the compiler to catch UB.
    760 
    761 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    762 
    763 	Backported from master:
    764 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
    765 
    766 	* include/bits/stl_uninitialized.h (uninitialized_default_construct)
    767 	(uninitialized_default_construct_n, uninitialized_value_construct)
    768 	(uninitialized_value_construct_n): Qualify calls to prevent ADL.
    769 
    770 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    771 
    772 	Backported from master:
    773 	2024-12-18  Jonathan Wakely  <jwakely (a] redhat.com>
    774 
    775 	* include/bits/basic_string.h (__to_wstring_numeric): Add 'i'
    776 	and 'I' to mapping.
    777 
    778 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    779 
    780 	Backported from master:
    781 	2024-12-09  Jonathan Wakely  <jwakely (a] redhat.com>
    782 
    783 	PR libstdc++/117921
    784 	* testsuite/23_containers/set/modifiers/swap/adl.cc: Add
    785 	equality comparison for Allocator.
    786 	* testsuite/23_containers/unordered_set/modifiers/swap-2.cc:
    787 	Likewise.
    788 
    789 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    790 
    791 	Backported from master:
    792 	2024-12-05  Jonathan Wakely  <jwakely (a] redhat.com>
    793 
    794 	PR libstdc++/117921
    795 	* include/bits/hashtable_policy.h (_Hash_code_base::_M_swap):
    796 	Use ADL swap for Hash members.
    797 	(_Hashtable_base::_M_swap): Use ADL swap for _Equal members.
    798 	* include/bits/stl_tree.h (_Rb_tree::swap): Use ADL swap for
    799 	_Compare members.
    800 	* testsuite/23_containers/set/modifiers/swap/adl.cc: New test.
    801 	* testsuite/23_containers/unordered_set/modifiers/swap-2.cc: New
    802 	test.
    803 
    804 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    805 
    806 	Backported from master:
    807 	2024-11-27  Jonathan Wakely  <jwakely (a] redhat.com>
    808 
    809 	* include/bits/forward_list.h (forward_list::front): Add
    810 	non-empty assertions.
    811 	* include/bits/stl_list.h (list::front, list::back): Add
    812 	non-empty assertions.
    813 
    814 2025-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
    815 
    816 	Backported from master:
    817 	2025-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
    818 
    819 	PR libstdc++/118158
    820 	* src/c++17/fs_ops.cc (fs::equivalent): Remove error reporting
    821 	for is_other(s1) && is_other(s2) case, as per LWG 2937.
    822 	* testsuite/27_io/filesystem/operations/pr118158.cc: New test.
    823 
    824 2025-01-29  Patrick Palka  <ppalka (a] redhat.com>
    825 
    826 	Backported from master:
    827 	2025-01-29  Patrick Palka  <ppalka (a] redhat.com>
    828 
    829 	PR libstdc++/118413
    830 	* include/std/ranges (views::__adaptor::_Partial): Adjust
    831 	constraints on the "simple" partial specializations to require
    832 	is_trivially_copy_constructible_v instead of
    833 	is_trivially_copyable_v.
    834 	* testsuite/std/ranges/adaptors/adjacent_transform/1.cc (test04):
    835 	Extend P2494R2 test.
    836 	* testsuite/std/ranges/adaptors/transform.cc (test09): Likewise.
    837 
    838 2025-01-27  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    839 
    840 	Backported from master:
    841 	2025-01-20  Giuseppe D'Angelo  <giuseppe.dangelo (a] kdab.com>
    842 
    843 	PR libstdc++/118185
    844 	PR libstdc++/100249
    845 	* include/bits/ranges_algo.h (__clamp_fn): Correctly forward the
    846 	projected value to the comparator.
    847 	* testsuite/25_algorithms/clamp/118185.cc: New test.
    848 
    849 2025-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
    850 
    851 	Backported from master:
    852 	2025-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
    853 
    854 	PR libstdc++/109849
    855 	* include/bits/vector.tcc (vector::_M_range_insert): Fix
    856 	reversed args in length calculation.
    857 
    858 2025-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
    859 
    860 	Backported from master:
    861 	2024-09-27  Jonathan Wakely  <jwakely (a] redhat.com>
    862 
    863 	* include/bits/istream.tcc: Add diagnostic pragmas around uses
    864 	of long long and extern template.
    865 	* include/bits/locale_facets.h: Likewise.
    866 	* include/bits/locale_facets.tcc: Likewise.
    867 	* include/bits/locale_facets_nonio.tcc: Likewise.
    868 	* include/bits/ostream.tcc: Likewise.
    869 	* include/bits/stl_algobase.h: Likewise.
    870 	* include/c_global/cstdlib: Likewise.
    871 	* include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp:
    872 	Likewise.
    873 	* include/ext/pointer.h: Likewise.
    874 	* include/ext/stdio_sync_filebuf.h: Likewise.
    875 	* include/std/istream: Likewise.
    876 	* include/std/ostream: Likewise.
    877 	* include/tr1/cmath: Likewise.
    878 	* include/tr1/type_traits: Likewise.
    879 	* include/tr1/functional_hash.h: Likewise. Remove semi-colons
    880 	at namespace scope that aren't needed after macro expansion.
    881 	* include/tr1/tuple: Remove semi-colon at namespace scope.
    882 	* include/bits/vector.tcc: Change LL suffix to just L.
    883 
    884 2025-01-16  Jonathan Wakely  <jwakely (a] redhat.com>
    885 
    886 	Backported from master:
    887 	2025-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
    888 
    889 	PR libstdc++/90389
    890 	* include/bits/deque.tcc (_M_insert_aux): Rename variadic
    891 	overload to _M_emplace_aux.
    892 	* include/bits/stl_deque.h (_M_insert_aux): Define inline.
    893 	(_M_emplace_aux): Declare.
    894 	* testsuite/23_containers/deque/modifiers/emplace/90389.cc: New
    895 	test.
    896 
    897 2025-01-12  Torbjrn SVENSSON  <torbjorn.svensson (a] foss.st.com>
    898 
    899 	Backported from master:
    900 	2025-01-12  Torbjrn SVENSSON  <torbjorn.svensson (a] foss.st.com>
    901 
    902 	* testsuite/27_io/print/1.cc: Allow both LF and CRLF in test.
    903 	* testsuite/27_io/print/3.cc: Likewise.
    904 
    905 2025-01-12  Torbjrn SVENSSON  <torbjorn.svensson (a] foss.st.com>
    906 
    907 	Backported from master:
    908 	2025-01-12  Torbjrn SVENSSON  <torbjorn.svensson (a] foss.st.com>
    909 
    910 	* testsuite/29_atomics/atomic_float/compare_exchange_padding.cc:
    911 	Use effective-target libatomic_available.
    912 
    913 2025-01-10  Tamar Christina  <tamar.christina (a] arm.com>
    914 
    915 	* include/bits/hashtable.h (find): Add inline keyword.
    916 
    917 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    918 
    919 	Backported from master:
    920 	2024-12-10  Jonathan Wakely  <jwakely (a] redhat.com>
    921 
    922 	* include/bits/memory_resource.h (polymoprhic_allocator): Use
    923 	feature test macro for P0339R6 features.
    924 
    925 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    926 
    927 	Backported from master:
    928 	2024-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
    929 
    930 	* include/bits/alloc_traits.h: Improve doxygen docs for
    931 	allocator_traits specializations.
    932 	* include/bits/memory_resource.h: Likewise.
    933 
    934 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    935 
    936 	Backported from master:
    937 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
    938 
    939 	* include/bits/memory_resource.h (polymorphic_allocator::destroy):
    940 	Remove deprecated attribute.
    941 
    942 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    943 
    944 	Backported from master:
    945 	2024-05-15  Jonathan Wakely  <jwakely (a] redhat.com>
    946 
    947 	PR libstdc++/89624
    948 	* include/bits/atomic_base.h (memory_order): Use int as
    949 	underlying type.
    950 	* testsuite/29_atomics/atomic/89624.cc: New test.
    951 
    952 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    953 
    954 	Backported from master:
    955 	2024-12-12  Jonathan Wakely  <jwakely (a] redhat.com>
    956 
    957 	* src/c++17/fs_dir.cc: Fix typo in comment.
    958 
    959 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    960 
    961 	Backported from master:
    962 	2024-12-11  Jonathan Wakely  <jwakely (a] redhat.com>
    963 
    964 	* include/std/ostream (println): Pass stream's locale to
    965 	std::format, as per LWG 4088.
    966 	* testsuite/27_io/basic_ostream/print/1.cc: Check std::println
    967 	with custom locale. Remove unused brit_punc class.
    968 
    969 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    970 
    971 	Backported from master:
    972 	2024-10-30  Jonathan Wakely  <jwakely (a] redhat.com>
    973 
    974 	* doc/xml/manual/using_exceptions.xml: Fix typos and grammatical
    975 	errors.
    976 	* doc/html/manual/using_exceptions.html: Regenerate.
    977 
    978 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    979 
    980 	Backported from master:
    981 	2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
    982 
    983 	* doc/xml/manual/strings.xml: Clarify that GCC 4.5 added
    984 	std::string::shrink_to_fit.
    985 	* doc/html/manual/strings.html: Regenerate.
    986 
    987 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    988 
    989 	Backported from master:
    990 	2024-11-27  Jonathan Wakely  <jwakely (a] redhat.com>
    991 
    992 	* include/bits/c++config (__glibcxx_assert): Remove useless
    993 	__builtin_expect from constexpr-only assertion. Improve
    994 	comments.
    995 
    996 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
    997 
    998 	Backported from master:
    999 	2024-12-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1000 
   1001 	PR libstdc++/108236
   1002 	* include/pstl/glue_numeric_impl.h (exclusive_scan): Pass __init
   1003 	as rvalue.
   1004 	* include/pstl/numeric_impl.h (__brick_transform_scan): Do not
   1005 	write through __result until after reading through __first. Move
   1006 	__init into return value.
   1007 	(__pattern_transform_scan): Pass __init as rvalue.
   1008 	* include/std/numeric (exclusive_scan): Move construct instead
   1009 	of copy constructing.
   1010 	* testsuite/26_numerics/exclusive_scan/2.cc: New test.
   1011 	* testsuite/26_numerics/pstl/numeric_ops/108236.cc: New test.
   1012 
   1013 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1014 
   1015 	Backported from master:
   1016 	2024-12-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1017 
   1018 	PR libstdc++/117962
   1019 	* include/debug/safe_container.h: Make allocator-extended move
   1020 	constructor a no-op during constant evaluation.
   1021 
   1022 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1023 
   1024 	Backported from master:
   1025 	2024-12-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1026 
   1027 	PR libstdc++/109517
   1028 	PR libstdc++/109976
   1029 	* include/debug/helper_functions.h (__valid_range_aux): Treat
   1030 	all input iterator ranges as valid during constant evaluation.
   1031 
   1032 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1033 
   1034 	Backported from master:
   1035 	2024-12-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1036 
   1037 	PR libstdc++/106212
   1038 	* include/std/array (operator==): Use std::__equal_aux1 instead
   1039 	of std::equal.
   1040 	* testsuite/23_containers/array/comparison_operators/106212.cc:
   1041 	New test.
   1042 
   1043 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1044 
   1045 	Backported from master:
   1046 	2024-12-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1047 
   1048 	PR libstdc++/117966
   1049 	* include/std/span (span(T (&)[N])): Do not delegate to
   1050 	constructor that performs redundant checks.
   1051 	(span(array<T, N>&), span(const array<T, N>&)): Likewise.
   1052 	(span(Range&&), span(const span<T, N>&)): Likewise.
   1053 	* testsuite/23_containers/span/117966.cc: New test.
   1054 
   1055 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1056 
   1057 	Backported from master:
   1058 	2024-12-17  Jonathan Wakely  <jwakely (a] redhat.com>
   1059 
   1060 	PR libstdc++/118035
   1061 	* include/bits/deque.tcc (_M_range_insert_aux): Return
   1062 	immediately if inserting an empty range.
   1063 	* testsuite/23_containers/deque/modifiers/insert/118035.cc: New
   1064 	test.
   1065 
   1066 2025-01-09  Patrick Palka  <ppalka (a] redhat.com>
   1067 
   1068 	Backported from master:
   1069 	2024-12-13  Patrick Palka  <ppalka (a] redhat.com>
   1070 
   1071 	PR libstdc++/112349
   1072 	* include/bits/ranges_algo.h (__min_fn::operator()): Turn local
   1073 	object __tmp into a reference.
   1074 	* include/bits/ranges_util.h (__max_fn::operator()): Likewise.
   1075 	* testsuite/25_algorithms/max/constrained.cc (test04): New test.
   1076 	* testsuite/25_algorithms/min/constrained.cc (test04): New test.
   1077 
   1078 2025-01-09  Patrick Palka  <ppalka (a] redhat.com>
   1079 
   1080 	Backported from master:
   1081 	2024-11-14  Patrick Palka  <ppalka (a] redhat.com>
   1082 
   1083 	* include/std/ranges (keys_view): Adjust as per LWG 3563.
   1084 	(values_view): Likewise.
   1085 	* testsuite/std/ranges/adaptors/elements.cc (test08): New test.
   1086 
   1087 2025-01-09  Patrick Palka  <ppalka (a] redhat.com>
   1088 
   1089 	Backported from master:
   1090 	2024-10-29  Patrick Palka  <ppalka (a] redhat.com>
   1091 
   1092 	PR libstdc++/112641
   1093 	* include/std/ranges (drop_view::begin): Reimplement const
   1094 	overload so that it's O(1) always.
   1095 	* testsuite/std/ranges/adaptors/drop.cc (test10): New test.
   1096 
   1097 2025-01-09  Gerald Pfeifer  <gerald (a] pfeifer.com>
   1098 
   1099 	Backported from master:
   1100 	2024-08-17  Gerald Pfeifer  <gerald (a] pfeifer.com>
   1101 
   1102 	* doc/xml/manual/abi.xml: Update reference to
   1103 	gcc.gnu.org/onlinedocs.
   1104 	* doc/xml/manual/concurrency_extensions.xml (interface): Ditto.
   1105 	* doc/xml/manual/extensions.xml: Ditto.
   1106 	* doc/xml/manual/parallel_mode.xml: Ditto.
   1107 	* doc/xml/manual/shared_ptr.xml: Ditto.
   1108 	* doc/xml/manual/using_exceptions.xml: Ditto. And change GNU GCC
   1109 	to GCC.
   1110 	* doc/html/index.html: Regenerate.
   1111 	* doc/html/manual/abi.html: Ditto.
   1112 	* doc/html/manual/ext_concurrency_impl.html: Ditto.
   1113 	* doc/html/manual/ext_demangling.html: Ditto.
   1114 	* doc/html/manual/memory.html: Ditto.
   1115 	* doc/html/manual/parallel_mode_design.html: Ditto.
   1116 	* doc/html/manual/parallel_mode_using.html: Ditto.
   1117 	* doc/html/manual/using_exceptions.html: Ditto.
   1118 
   1119 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1120 
   1121 	Backported from master:
   1122 	2025-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   1123 
   1124 	PR libstdc++/118093
   1125 	* include/bits/atomic_futex.h (_M_load_and_test_until_impl):
   1126 	Return false for times before the epoch.
   1127 	* src/c++11/futex.cc (_M_futex_wait_until): Extend check for
   1128 	negative times to check for subsecond times. Add unlikely
   1129 	attribute.
   1130 	(_M_futex_wait_until_steady): Likewise.
   1131 	* testsuite/30_threads/future/members/118093.cc: New test.
   1132 
   1133 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1134 
   1135 	Backported from master:
   1136 	2025-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   1137 
   1138 	* include/bits/move.h (forward, move, move_if_noexcept, addressof):
   1139 	Add @since to Doxygen comments.
   1140 	(forward_like): Add Doxygen comment.
   1141 
   1142 2025-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1143 
   1144 	Backported from master:
   1145 	2025-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   1146 
   1147 	* doc/xml/manual/evolution.xml: Replace invalid <variable>
   1148 	elements with <varname>.
   1149 	* doc/html/*: Regenerate.
   1150 
   1151 2024-12-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1152 
   1153 	Backported from master:
   1154 	2024-12-07  Jonathan Wakely  <jwakely (a] redhat.com>
   1155 
   1156 	* include/std/format: Fix typo in Doxygen comment.
   1157 
   1158 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1159 
   1160 	Backported from master:
   1161 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1162 
   1163 	* include/bits/stl_vector.h (operator<=>): Use constexpr
   1164 	instead of _GLIBCXX20_CONSTEXPR macro.
   1165 
   1166 2024-12-02  Jason Merrill  <jason (a] redhat.com>
   1167 
   1168 	Backported from master:
   1169 	2024-08-28  Jason Merrill  <jason (a] redhat.com>
   1170 
   1171 	* include/std/istream: Add cast to avoid -Wsign-compare.
   1172 	* include/std/stacktrace: Likewise.
   1173 
   1174 2024-12-02  Jason Merrill  <jason (a] redhat.com>
   1175 
   1176 	Backported from master:
   1177 	2024-08-28  Jason Merrill  <jason (a] redhat.com>
   1178 
   1179 	* testsuite/20_util/default_delete/void_neg.cc: Fix regexp quoting.
   1180 
   1181 2024-12-02  Jason Merrill  <jason (a] redhat.com>
   1182 
   1183 	Backported from master:
   1184 	2024-08-28  Jason Merrill  <jason (a] redhat.com>
   1185 
   1186 	* include/std/coroutine (coroutine_handle): Use nullptr instead of
   1187 	0 as initializer for _M_fr_ptr.
   1188 
   1189 2024-12-02  Jason Merrill  <jason (a] redhat.com>
   1190 
   1191 	Backported from master:
   1192 	2024-08-28  Jason Merrill  <jason (a] redhat.com>
   1193 
   1194 	* include/decimal/decimal.h (_DEFINE_DECIMAL_BINARY_OP_WITH_INT):
   1195 	Remove redundant semicolons.
   1196 
   1197 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1198 
   1199 	Backported from master:
   1200 	2024-08-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1201 
   1202 	* include/experimental/io_context: Remove name of unused
   1203 	parameter.
   1204 	* include/experimental/socket: Add [[maybe_unused]] attribute.
   1205 
   1206 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1207 
   1208 	Backported from master:
   1209 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1210 
   1211 	* src/c++11/cxx11-ios_failure.cc (__iosfail_type_info): Unhide
   1212 	the three-arg overload of __do_upcast.
   1213 
   1214 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1215 
   1216 	Backported from master:
   1217 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1218 
   1219 	* libsupc++/exception_ptr.h (__exception_ptr::_M_safe_bool_dummy):
   1220 	Remove __attribute__((const)) from function returning void.
   1221 
   1222 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1223 
   1224 	Backported from master:
   1225 	2024-08-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1226 
   1227 	* include/std/ranges (to): Remove unused typedef.
   1228 
   1229 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1230 
   1231 	Backported from master:
   1232 	2024-11-07  Jonathan Wakely  <jwakely (a] redhat.com>
   1233 
   1234 	* include/bits/hashtable.h (_M_insert_unique_node): Improve
   1235 	comment.
   1236 
   1237 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1238 
   1239 	Backported from master:
   1240 	2024-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1241 
   1242 	* include/bits/ranges_util.h (subrange::begin): Fix constraint,
   1243 	as per LWG 3589.
   1244 	* testsuite/std/ranges/subrange/lwg3589.cc: New test.
   1245 
   1246 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1247 
   1248 	Backported from master:
   1249 	2024-11-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1250 
   1251 	* include/bits/unordered_map.h: Check __glibcxx_node_extract and
   1252 	__glibcxx_unordered_map_try_emplace instead of __cplusplus.
   1253 	* include/bits/unordered_set.h: Check __glibcxx_node_extract
   1254 	instead of __cplusplus.
   1255 
   1256 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1257 
   1258 	Backported from master:
   1259 	2024-10-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1260 
   1261 	* include/bits/cpp_type_traits.h (__is_byte<byte>): Guard with
   1262 	__glibcxx_byte macro instead of checking __cplusplus.
   1263 
   1264 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1265 
   1266 	Backported from master:
   1267 	2024-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1268 
   1269 	* include/bits/ranges_algo.h (__is_permutation_fn::operator()):
   1270 	Short-circuit for sized ranges with different sizes, as per LWG
   1271 	3560.
   1272 	* include/bits/ranges_algobase.h (__equal_fn::operator()):
   1273 	Likewise.
   1274 	* include/bits/stl_algo.h (__is_permutation): Use if-constexpr
   1275 	for random access iterator branches.
   1276 	* include/bits/stl_algobase.h (__equal4): Likewise.
   1277 	* testsuite/25_algorithms/equal/lwg3560.cc: New test.
   1278 	* testsuite/25_algorithms/is_permutation/lwg3560.cc: New test.
   1279 
   1280 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1281 
   1282 	Backported from master:
   1283 	2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1284 
   1285 	PR libstdc++/106676
   1286 	* include/bits/iterator_concepts.h (__cpp17_fwd_iterator): Use
   1287 	is_reference instead of is_value_reference.
   1288 	rvalue references.
   1289 	* include/std/ranges (transform_view:__iter_cat::_S_iter_cat):
   1290 	Likewise.
   1291 	(zip_transform_view::__iter_cat::_S_iter_cat): Likewise.
   1292 	(adjacent_transform_view::__iter_cat::_S_iter_cat): Likewise.
   1293 	(join_with_view::__iter_cat::_S_iter_cat): Likewise.
   1294 	* testsuite/std/ranges/adaptors/transform.cc: Check
   1295 	iterator_category when the transformation function returns an
   1296 	rvalue reference type.
   1297 
   1298 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1299 
   1300 	Backported from master:
   1301 	2024-09-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1302 
   1303 	* include/bits/basic_string.tcc (resize_for_overwrite): Fix
   1304 	-Wsign-compare warning.
   1305 	* include/bits/cow_string.h (resize_for_overwrite): Likewise.
   1306 
   1307 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1308 
   1309 	Backported from master:
   1310 	2024-10-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1311 
   1312 	* include/bits/stl_bvector.h (emplace_back, emplace): Forward
   1313 	parameter pack to preserve value category.
   1314 	* testsuite/23_containers/vector/bool/emplace_rvalue.cc: New
   1315 	test.
   1316 
   1317 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1318 
   1319 	Backported from master:
   1320 	2024-11-07  Jonathan Wakely  <jwakely (a] redhat.com>
   1321 
   1322 	* include/bits/hashtable.h: Fix spelling in comment.
   1323 
   1324 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1325 
   1326 	Backported from master:
   1327 	2024-11-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1328 
   1329 	* include/bits/hashtable.h: Improve comments.
   1330 
   1331 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1332 
   1333 	Backported from master:
   1334 	2024-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1335 
   1336 	PR libstdc++/117560
   1337 	* include/bits/fs_dir.h (enable_borrowed_range, enable_view):
   1338 	Define specializations for directory iterators, as per LWG 3480.
   1339 	* testsuite/27_io/filesystem/iterators/lwg3480.cc: New test.
   1340 
   1341 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1342 
   1343 	Backported from master:
   1344 	2024-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1345 
   1346 	* testsuite/util/testsuite_performance.h (time_counter): Add
   1347 	comment about times.
   1348 	(time_counter::system_time): Use correct split value.
   1349 
   1350 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1351 
   1352 	Backported from master:
   1353 	2024-11-13  Jonathan Wakely  <jwakely (a] redhat.com>
   1354 
   1355 	* testsuite/util/testsuite_performance.h: Use
   1356 	__gnu_cxx::__is_single_threaded instead of __gthread_active_p().
   1357 
   1358 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1359 
   1360 	Backported from master:
   1361 	2024-11-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1362 
   1363 	* include/bits/stl_iterator.h (operator+): Add constraint to
   1364 	move_iterator operator.
   1365 	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc:
   1366 
   1367 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1368 
   1369 	Backported from master:
   1370 	2024-11-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1371 
   1372 	PR libstdc++/117822
   1373 	* include/std/stacktrace (stacktrace(stacktrace&&, const A&)):
   1374 	Fix typo in qualified-id for is_always_equal trait.
   1375 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Test
   1376 	allocator-extended constructors and allocator propagation.
   1377 
   1378 2024-12-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1379 
   1380 	Backported from master:
   1381 	2024-09-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1382 
   1383 	* include/std/stacktrace (basic_stacktrace::_Impl::_M_allocate):
   1384 	Do not assume allocators only throw std::bad_alloc.
   1385 
   1386 2024-11-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1387 
   1388 	* include/bits/unicode.h (_Utf_iterator::_M_read_utf16): Add
   1389 	parentheses.
   1390 
   1391 2024-11-12  Jonathan Wakely  <jwakely (a] redhat.com>
   1392 
   1393 	PR libstdc++/117520
   1394 	* include/std/text_encoding (aliases_view:_Iterator::operator+=):
   1395 	Fix typos that caused == to be used instead of =.
   1396 	(aliases_view::_Iterator): Fix friend declaration.
   1397 	* testsuite/std/text_encoding/members.cc: Adjust expected
   1398 	behaviour of invalid subscript. Add tests for other erroneous
   1399 	operations on iterators.
   1400 
   1401 2024-11-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1402 
   1403 	Backported from master:
   1404 	2024-11-08  Jonathan Wakely  <jwakely (a] redhat.com>
   1405 
   1406 	* include/bits/hashtable_policy.h (_Insert_base::try_emplace):
   1407 	Do not define for C++11 and C++14.
   1408 	* include/debug/map.h (try_emplace): Use feature test macro.
   1409 	* include/debug/unordered_map (try_emplace): Likewise.
   1410 	* testsuite/17_intro/names.cc: Define try_emplace before C++17.
   1411 
   1412 2024-11-04  Jakub Jelinek  <jakub (a] redhat.com>
   1413 
   1414 	Backported from master:
   1415 	2024-11-04  Jakub Jelinek  <jakub (a] redhat.com>
   1416 
   1417 	PR libstdc++/117406
   1418 	* testsuite/26_numerics/headers/cmath/117406.cc: Use
   1419 	std::numeric_limits<int>::max() instead of INT_MAX.
   1420 
   1421 2024-11-04  Jakub Jelinek  <jakub (a] redhat.com>
   1422 
   1423 	Backported from master:
   1424 	2024-11-02  Jakub Jelinek  <jakub (a] redhat.com>
   1425 
   1426 	PR libstdc++/117406
   1427 	* include/c_global/cmath (std::ilogb(_Float16), std::llrint(_Float16),
   1428 	std::llround(_Float16), std::lrint(_Float16), std::lround(_Float16)):
   1429 	Don't cast __builtin_* return to _Float16.
   1430 	(std::ilogb(__gnu_cxx::__bfloat16_t),
   1431 	std::llrint(__gnu_cxx::__bfloat16_t),
   1432 	std::llround(__gnu_cxx::__bfloat16_t),
   1433 	std::lrint(__gnu_cxx::__bfloat16_t),
   1434 	std::lround(__gnu_cxx::__bfloat16_t)): Don't cast __builtin_* return to
   1435 	__gnu_cxx::__bfloat16_t.
   1436 	* testsuite/26_numerics/headers/cmath/117406.cc: New test.
   1437 
   1438 2024-11-04  Jakub Jelinek  <jakub (a] redhat.com>
   1439 
   1440 	Backported from master:
   1441 	2024-10-29  Jakub Jelinek  <jakub (a] redhat.com>
   1442 
   1443 	PR libstdc++/117321
   1444 	* include/c_global/cmath (nextafter(_Float16, _Float16)): Use
   1445 	if consteval rather than if (std::__is_constant_evaluated()) around
   1446 	the __builtin_nextafterf16 call.
   1447 	(nextafter(__gnu_cxx::__bfloat16_t, __gnu_cxx::__bfloat16_t)): Use
   1448 	if consteval rather than if (std::__is_constant_evaluated()) around
   1449 	the __builtin_nextafterf16b call.
   1450 	* testsuite/26_numerics/headers/cmath/117321.cc: New test.
   1451 
   1452 2024-10-22  Patrick Palka  <ppalka (a] redhat.com>
   1453 
   1454 	Backported from master:
   1455 	2024-10-05  Patrick Palka  <ppalka (a] redhat.com>
   1456 
   1457 	* include/bits/ranges_base.h (__distance_fn::operator()):
   1458 	Adjust iterator/sentinel overloads as per LWG 3664.
   1459 	* testsuite/24_iterators/range_operations/distance.cc:
   1460 	Test LWG 3664 example.
   1461 
   1462 2024-10-22  Patrick Palka  <ppalka (a] redhat.com>
   1463 
   1464 	Backported from master:
   1465 	2024-10-04  Patrick Palka  <ppalka (a] redhat.com>
   1466 
   1467 	* include/std/ranges (single_view::empty): Define as per LWG 4035.
   1468 	(iota_view::empty): Define as per LWG 4001.
   1469 	(lazy_split_view::_OuterIter::value_type): Remove default
   1470 	constructor and make other constructor private as per LWG 4013.
   1471 	(common_view::begin): Disable non-const overload for simple
   1472 	views as per LWG 4012.
   1473 	(common_view::end): Likewise.
   1474 	(adjacent_view::base): Define as per LWG 3848.
   1475 	(adjacent_transform_view::base): Likewise.
   1476 	(chunk_view::_InnerIter::iter_move): Define as per LWG 3851.
   1477 	(chunk_view::_InnerIter::itep_swap): Likewise.
   1478 	(slide_view::base): Define as per LWG 3848.
   1479 	(repeat_view): Adjust deduction guide as per LWG 4053.
   1480 	(_Repeat::operator()): Adjust single-parameter overload as per
   1481 	LWG 4054.
   1482 	* testsuite/std/ranges/adaptors/adjacent/1.cc: Verify existence
   1483 	of base member function.
   1484 	* testsuite/std/ranges/adaptors/adjacent_transform/1.cc: Likewise.
   1485 	* testsuite/std/ranges/adaptors/chunk/1.cc: Test LWG 3851 example.
   1486 	* testsuite/std/ranges/adaptors/slide/1.cc: Verify existence of
   1487 	base member function.
   1488 	* testsuite/std/ranges/iota/iota_view.cc: Test LWG 4001 example.
   1489 	* testsuite/std/ranges/repeat/1.cc: Test LWG 4053/4054 examples.
   1490 
   1491 2024-10-22  Patrick Palka  <ppalka (a] redhat.com>
   1492 
   1493 	Backported from master:
   1494 	2024-08-22  Patrick Palka  <ppalka (a] redhat.com>
   1495 
   1496 	* testsuite/25_algorithms/contains/1.cc: Verify value of
   1497 	__cpp_lib_ranges_contains.
   1498 	* testsuite/25_algorithms/find_last/1.cc: Verify value of
   1499 	__cpp_lib_ranges_find_last.
   1500 	* testsuite/25_algorithms/iota/1.cc: Verify value of
   1501 	__cpp_lib_ranges_iota.
   1502 
   1503 2024-10-22  Patrick Palka  <ppalka (a] redhat.com>
   1504 
   1505 	Backported from master:
   1506 	2024-08-22  Patrick Palka  <ppalka (a] redhat.com>
   1507 
   1508 	* include/bits/iterator_concepts.h (indirectly_unary_invocable):
   1509 	Relax as per P2997R1.
   1510 	(indirectly_regular_unary_invocable): Likewise.
   1511 	(indirect_unary_predicate): Likewise.
   1512 	(indirect_binary_predicate): Likewise.
   1513 	(indirect_equivalence_relation): Likewise.
   1514 	(indirect_strict_weak_order): Likewise.
   1515 	* include/bits/version.def (ranges): Update value for C++26.
   1516 	* include/bits/version.h: Regenerate.
   1517 	* testsuite/24_iterators/indirect_callable/p2997r1.cc: New test.
   1518 	* testsuite/std/ranges/version_c++23.cc: Remove.
   1519 	* testsuite/std/ranges/headers/ranges/synopsis.cc: Refine the
   1520 	__cpp_lib_ranges checks.
   1521 
   1522 2024-10-22  Patrick Palka  <ppalka (a] redhat.com>
   1523 
   1524 	Backported from master:
   1525 	2024-08-22  Patrick Palka  <ppalka (a] redhat.com>
   1526 
   1527 	* include/bits/iterator_concepts.h (__detail::__indirect_value):
   1528 	Define.
   1529 	(__indirect_value_t): Define as per P2609R3.
   1530 	(iter_common_reference_t): Adjust as per P2609R3.
   1531 	(indirectly_unary_invocable): Likewise.
   1532 	(indirectly_regular_unary_invocable): Likewise.
   1533 	(indirect_unary_predicate): Likewise.
   1534 	(indirect_binary_predicate): Likewise.
   1535 	(indirect_equivalence_relation): Likewise.
   1536 	(indirect_strict_weak_order): Likewise.
   1537 	(__detail::__projected::__type): Define member aliases
   1538 	__projected_Iter and __projected_Proj providing the
   1539 	template arguments of the current specialization.
   1540 	* include/bits/version.def (ranges): Update value.
   1541 	* include/bits/version.h: Regenerate.
   1542 	* testsuite/24_iterators/indirect_callable/p2609r3.cc: New test.
   1543 	* testsuite/std/ranges/version_c++23.cc: Update expected value
   1544 	of __cpp_lib_ranges macro.
   1545 
   1546 2024-10-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1547 
   1548 	Backported from master:
   1549 	2024-10-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1550 
   1551 	* python/libstdcxx/v6/printers.py (strip_fundts_namespace): New.
   1552 	(StdExpAnyPrinter, StdExpOptionalPrinter): Use it.
   1553 
   1554 2024-10-16  Jonathan Wakely  <jwakely (a] redhat.com>
   1555 
   1556 	Backported from master:
   1557 	2024-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1558 
   1559 	PR libstdc++/90276
   1560 	* testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc:
   1561 	Increase timeout for debug mode.
   1562 	* testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc:
   1563 	Likewise.
   1564 	* testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc:
   1565 	Likewise.
   1566 	* testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc:
   1567 	Likewise.
   1568 	* testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc:
   1569 	Likewise.
   1570 	* testsuite/25_algorithms/pstl/alg_sorting/set_symmetric_difference.cc:
   1571 	Likewise.
   1572 
   1573 2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1574 
   1575 	Backported from master:
   1576 	2024-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1577 
   1578 	* include/std/ranges (transform_view:_Iterator): Use const F&
   1579 	to determine value_type and iterator_category of
   1580 	_Iterator<true>, as per LWG 3564.
   1581 	* testsuite/std/ranges/adaptors/transform.cc: Check value_type
   1582 	and iterator_category.
   1583 
   1584 2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1585 
   1586 	Backported from master:
   1587 	2024-10-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1588 
   1589 	PR libstdc++/117085
   1590 	* include/bits/chrono_io.h (__formatter_chrono::_M_c): Add L
   1591 	option to format string.
   1592 	* testsuite/std/time/format.cc: Move to...
   1593 	* testsuite/std/time/format/format.cc: ...here.
   1594 	* testsuite/std/time/format/pr117085.cc: New test.
   1595 
   1596 2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1597 
   1598 	Backported from master:
   1599 	2024-10-09  Jonathan Wakely  <jwakely (a] redhat.com>
   1600 
   1601 	* include/bits/chrono_io.h (__formatter_chrono::_M_c): Add
   1602 	[[unlikely]] attribute to condition for missing %c format in
   1603 	locale. Use %T instead of %H:%M:%S in fallback.
   1604 
   1605 2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1606 
   1607 	Backported from master:
   1608 	2024-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1609 
   1610 	PR libstdc++/117135
   1611 	* config/locale/generic/time_members.cc
   1612 	(__timepunct<wchar_t>::_M_initialize_timepunc): Set
   1613 	_M_date_time_format for C locale. Set %Ex formats to the same
   1614 	values as the %x formats.
   1615 
   1616 2024-10-15  Jonathan Wakely  <jwakely (a] redhat.com>
   1617 
   1618 	Backported from master:
   1619 	2024-10-14  Jonathan Wakely  <jwakely (a] redhat.com>
   1620 
   1621 	PR libstdc++/117094
   1622 	* include/bits/ranges_algobase.h (__fill_fn): Use std::move for
   1623 	iterator that might not be copyable.
   1624 	* testsuite/25_algorithms/fill/constrained.cc: Check
   1625 	non-copyable iterator with sized sentinel.
   1626 
   1627 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1628 
   1629 	Backported from master:
   1630 	2024-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1631 
   1632 	PR c++/116369
   1633 	* include/debug/safe_base.h (_Safe_sequence_base::_M_iterators):
   1634 	Add mutable specifier.
   1635 	(_Safe_sequence_base::_M_const_iterators): Likewise.
   1636 
   1637 2024-10-03  Kim Grsman  <kim.grasman (a] gmail.com>
   1638 
   1639 	Backported from master:
   1640 	2024-08-28  Kim Grsman  <kim.grasman (a] gmail.com>
   1641 
   1642 	* include/bits/cpp_type_traits.h: Improve doxygen file docs.
   1643 
   1644 2024-10-03  Kim Grsman  <kim.grasman (a] gmail.com>
   1645 
   1646 	Backported from master:
   1647 	2024-08-28  Kim Grsman  <kim.grasman (a] gmail.com>
   1648 
   1649 	* config/cpu/aarch64/opt/ext/opt_random.h: Improve doxygen file
   1650 	docs.
   1651 	* config/cpu/i486/opt/ext/opt_random.h: Likewise.
   1652 
   1653 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1654 
   1655 	Backported from master:
   1656 	2024-08-28  Jonathan Wakely  <jwakely (a] redhat.com>
   1657 
   1658 	* configure.ac: Fix check for O_NONBLOCK.
   1659 	* config.h.in: Regenerate.
   1660 	* configure: Regenerate.
   1661 
   1662 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1663 
   1664 	Backported from master:
   1665 	2024-09-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1666 
   1667 	PR libstdc++/116857
   1668 	* libsupc++/guard.cc (__cxa_guard_acquire): Remove
   1669 	_GLIBCXX_NOTHROW to match declaration in <cxxabi.h>.
   1670 
   1671 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1672 
   1673 	Backported from master:
   1674 	2024-06-27  Jonathan Wakely  <jwakely (a] redhat.com>
   1675 
   1676 	PR libstdc++/37475
   1677 	* config/locale/gnu/codecvt_members.cc (Guard): New RAII type.
   1678 	(do_out, do_in): Return partial if the destination is empty but
   1679 	the source is not. Use Guard to restore locale on scope exit.
   1680 	Return immediately on any conversion error.
   1681 	(do_encoding, do_max_length, do_length): Use Guard.
   1682 	* testsuite/22_locale/codecvt/in/char/37475.cc: New test.
   1683 	* testsuite/22_locale/codecvt/in/wchar_t/37475.cc: New test.
   1684 	* testsuite/22_locale/codecvt/out/char/37475.cc: New test.
   1685 	* testsuite/22_locale/codecvt/out/wchar_t/37475.cc: New test.
   1686 
   1687 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1688 
   1689 	Backported from master:
   1690 	2024-10-02  Jonathan Wakely  <jwakely (a] redhat.com>
   1691 
   1692 	* config/locale/dragonfly/time_members.cc
   1693 	(__timepunct<char>::_M_initialize_timepunc)
   1694 	(__timepunct<wchar_t>::_M_initialize_timepunc): Set
   1695 	_M_date_time_format for C locale. Set %Ex formats to the same
   1696 	values as the %x formats.
   1697 	* config/locale/generic/time_members.cc: Likewise.
   1698 	* config/locale/gnu/time_members.cc: Likewise.
   1699 	* testsuite/22_locale/time_get/get/char/5.cc: New test.
   1700 	* testsuite/22_locale/time_get/get/wchar_t/5.cc: New test.
   1701 
   1702 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1703 
   1704 	Backported from master:
   1705 	2024-09-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1706 
   1707 	* include/bits/cow_string.h (__resize_for_overwrite): Add
   1708 	inline keyword to function with always_inline attribute.
   1709 
   1710 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1711 
   1712 	Backported from master:
   1713 	2024-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1714 
   1715 	PR libstdc++/90276
   1716 	* testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc
   1717 	[_GLIBCXX_DEBUG]: Add xfail-run-if for debug mode.
   1718 	* testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc
   1719 	[_GLIBCXX_DEBUG]: Reduce size of test data.
   1720 	* testsuite/25_algorithms/pstl/alg_sorting/includes.cc:
   1721 	Likewise.
   1722 	* testsuite/25_algorithms/pstl/alg_sorting/set_util.h:
   1723 	Likewise.
   1724 
   1725 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1726 
   1727 	Backported from master:
   1728 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1729 
   1730 	* include/std/format (__format::__is_formattable_integer): New
   1731 	variable template and specializations.
   1732 	(template<integral, __char> struct formatter): Replace
   1733 	constraints on first arg with __is_formattable_integer.
   1734 	* testsuite/std/format/formatter/requirements.cc: Check that
   1735 	std::formatter specializations for char8_t and const int are
   1736 	disabled.
   1737 
   1738 2024-10-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1739 
   1740 	Backported from master:
   1741 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1742 
   1743 	PR libstdc++/116755
   1744 	* include/bits/chrono_io.h (formatter<duration<R,P>>::format):
   1745 	Cast negative integral durations to unsigned rep.
   1746 	* testsuite/20_util/duration/io.cc: Test the most negative
   1747 	integer durations.
   1748 
   1749 2024-09-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1750 
   1751 	Backported from master:
   1752 	2024-09-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1753 
   1754 	PR libstdc++/116529
   1755 	* include/bits/unique_ptr.h (unique_ptr(auto_ptr<U>&&)):
   1756 	Use pointer instead of T*.
   1757 	* testsuite/20_util/unique_ptr/creation/116529.cc: New test.
   1758 
   1759 2024-09-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1760 
   1761 	Backported from master:
   1762 	2024-09-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1763 
   1764 	PR libstdc++/116754
   1765 	* include/bits/ranges_algobase.h (__copy_or_move): Fix order of
   1766 	arguments to __memcpyable.
   1767 
   1768 2024-09-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1769 
   1770 	Backported from master:
   1771 	2024-09-20  Jonathan Wakely  <jwakely (a] redhat.com>
   1772 
   1773 	PR libstdc++/116777
   1774 	* doc/xml/manual/using.xml: Document features that are not
   1775 	supported for the gcc4-compatible ABI.
   1776 	* doc/html/manual/using_dual_abi.html: Regenerate.
   1777 
   1778 2024-09-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1779 
   1780 	Backported from master:
   1781 	2024-08-23  Jonathan Wakely  <jwakely (a] redhat.com>
   1782 
   1783 	PR libstdc++/108619
   1784 	* include/bits/alloc_traits.h (__allocator_traits_base): Add
   1785 	variable templates for detecting whether the allocator has a
   1786 	construct member, or if placement new can be used instead.
   1787 	(allocator_traits::__construct_helper): Remove.
   1788 	(allocator_traits::__has_construct): Remove.
   1789 	(allocator_traits::construct): Use 'if constexpr' instead of
   1790 	dispatching to overloads constrained with enable_if.
   1791 	(allocator_traits<allocator<T>>::construct): Use _Construct if
   1792 	construct_at is not supported. Use
   1793 	__is_nothrow_new_constructible for noexcept-specifier.
   1794 	(allocator_traits<allocator<void>>::construct): Use
   1795 	__is_nothrow_new_constructible for noexcept-specifier.
   1796 	* include/bits/new_allocator.h (construct): Likewise.
   1797 	* include/ext/malloc_allocator.h (construct): Likewise.
   1798 	* include/std/type_traits (__is_nothrow_new_constructible): New
   1799 	variable template.
   1800 	* testsuite/20_util/allocator/89510.cc: Adjust expected results.
   1801 	* testsuite/ext/malloc_allocator/89510.cc: Likewise.
   1802 	* testsuite/ext/new_allocator/89510.cc: Likewise.
   1803 	* testsuite/20_util/allocator_traits/members/108619.cc: New test.
   1804 
   1805 2024-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1806 
   1807 	Backported from master:
   1808 	2024-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1809 
   1810 	PR libstdc++/116159
   1811 	* include/std/iostream (ios_base_library_init): Only define for
   1812 	ELF targets.
   1813 	* src/c++98/ios_init.cc (ios_base_library_init): Likewise.
   1814 
   1815 2024-09-11  Jonathan Wakely  <jwakely (a] redhat.com>
   1816 
   1817 	Backported from master:
   1818 	2024-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1819 
   1820 	PR libstdc++/116641
   1821 	* include/bits/basic_string.h (operator=(basic_string&&)): Call
   1822 	_M_assign instead of assign.
   1823 	* testsuite/21_strings/basic_string/allocator/116641.cc: New
   1824 	test.
   1825 
   1826 2024-09-10  Jonathan Wakely  <jwakely (a] redhat.com>
   1827 
   1828 	Backported from master:
   1829 	2024-06-26  Jonathan Wakely  <jwakely (a] redhat.com>
   1830 
   1831 	* src/c++20/tzdb.cc (minmax_year, minmax_year2): Remove.
   1832 	(years_from_to): New class replacing minmax_year and
   1833 	minmax_year2.
   1834 	(format_abbrev_str, select_std_or_dst_abbrev): Move earlier in
   1835 	the file. Handle "-" for letters.
   1836 	(ZoneInfo::to): Use format_abbrev_str to expand %z.
   1837 	(ZoneInfo::set_abbrev): Remove exception. Change parameter from
   1838 	reference to value.
   1839 	(operator>>(istream&, Rule&)): Do not clear letters when it
   1840 	contains "-".
   1841 	(time_zone::_M_get_sys_info): Add missing logic to find the Rule
   1842 	in effect before the time point.
   1843 	* testsuite/std/time/tzdb/1.cc: Adjust for vanguard format using
   1844 	"GMT" as the Zone name, not as a Link to "Etc/GMT".
   1845 	* testsuite/std/time/time_zone/sys_info_abbrev.cc: New test.
   1846 
   1847 2024-09-08  Patrick Palka  <ppalka (a] redhat.com>
   1848 
   1849 	Backported from master:
   1850 	2024-08-03  Patrick Palka  <ppalka (a] redhat.com>
   1851 
   1852 	* include/bits/move.h (__like_impl): New metafunction.
   1853 	(__like_t): Redefine in terms of __like_impl.
   1854 	(forward_like): Redefine in terms of __like_t.
   1855 	* testsuite/20_util/forward_like/2_neg.cc: Don't expect
   1856 	error outside the immediate context anymore.
   1857 
   1858 2024-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1859 
   1860 	Backported from master:
   1861 	2024-09-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1862 
   1863 	* src/c++17/fs_ops.cc (auto_win_file_handle): Add error_code&
   1864 	member and set it if CreateFileW or GetFileInformationByHandle
   1865 	fails.
   1866 	(fs::equiv_files) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Simplify
   1867 	control flow.
   1868 	(fs::hard_link_count) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Clear ec
   1869 	on success.
   1870 	* testsuite/27_io/filesystem/operations/hard_link_count.cc:
   1871 	Check error handling.
   1872 
   1873 2024-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1874 
   1875 	Backported from master:
   1876 	2024-07-30  Jonathan Wakely  <jwakely (a] redhat.com>
   1877 
   1878 	* src/c++17/fs_ops.cc (auto_win_file_handle): Change constructor
   1879 	parameter from const path& to const wchar_t*.
   1880 	(fs::equiv_files): New function.
   1881 	(fs::equivalent): Use equiv_files.
   1882 	* src/filesystem/ops-common.h (fs::equiv_files): Declare.
   1883 	(do_copy_file): Use equiv_files.
   1884 	* src/filesystem/ops.cc (fs::equiv_files): Define.
   1885 	(fs::copy, fs::equivalent): Use equiv_files.
   1886 	* testsuite/27_io/filesystem/operations/copy.cc: Test
   1887 	overwriting directory contents recursively.
   1888 	* testsuite/27_io/filesystem/operations/copy_file.cc: Test
   1889 	overwriting existing files.
   1890 
   1891 2024-09-04  Lennox Shou Hao Ho  <lennoxhoe (a] gmail.com>
   1892 
   1893 	Backported from master:
   1894 	2024-07-30  Lennox Shou Hao Ho  <lennoxhoe (a] gmail.com>
   1895 
   1896 	PR libstdc++/113663
   1897 	* src/c++17/fs_ops.cc (fs::equivalent): Moved helper class
   1898 	auto_handle to anonymous namespace as auto_win_file_handle.
   1899 	(fs::hard_link_count): Changed Windows implementation to use
   1900 	information provided by GetFileInformationByHandle which is more
   1901 	reliable.
   1902 	* testsuite/27_io/filesystem/operations/hard_link_count.cc: New
   1903 	test.
   1904 
   1905 2024-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1906 
   1907 	Backported from master:
   1908 	2024-09-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1909 
   1910 	PR libstdc++/116549
   1911 	* include/bits/stl_iterator.h (disable_sized_sentinel_for):
   1912 	Define specialization for two move_iterator types, as per LWG
   1913 	3736.
   1914 	* testsuite/24_iterators/move_iterator/lwg3736.cc: New test.
   1915 
   1916 2024-09-04  Dhruv Chawla  <dhruvc (a] nvidia.com>
   1917 
   1918 	Backported from master:
   1919 	2024-09-03  Dhruv Chawla  <dhruvc (a] nvidia.com>
   1920 
   1921 	* include/std/deque: Define macro
   1922 	__glibcxx_want_allocator_traits_is_always_equal.
   1923 	* include/std/forward_list: Likewise.
   1924 	* include/std/list: Likewise.
   1925 	* include/std/map: Likewise.
   1926 	* include/std/scoped_allocator: Likewise.
   1927 	* include/std/set: Likewise.
   1928 	* include/std/string: Likewise.
   1929 	* include/std/unordered_map: Likewise.
   1930 	* include/std/unordered_set: Likewise.
   1931 	* include/std/vector: Likewise.
   1932 	* testsuite/20_util/headers/memory/version.cc: New test.
   1933 	* testsuite/20_util/scoped_allocator/version.cc: Likewise.
   1934 	* testsuite/21_strings/headers/string/version.cc: Likewise.
   1935 	* testsuite/23_containers/deque/version.cc: Likewise.
   1936 	* testsuite/23_containers/forward_list/version.cc: Likewise.
   1937 	* testsuite/23_containers/list/version.cc: Likewise.
   1938 	* testsuite/23_containers/map/version.cc: Likewise.
   1939 	* testsuite/23_containers/set/version.cc: Likewise.
   1940 	* testsuite/23_containers/unordered_map/version.cc: Likewise.
   1941 	* testsuite/23_containers/unordered_set/version.cc: Likewise.
   1942 	* testsuite/23_containers/vector/version.cc: Likewise.
   1943 
   1944 2024-09-04  Jonathan Wakely  <jwakely (a] redhat.com>
   1945 
   1946 	Backported from master:
   1947 	2024-08-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1948 
   1949 	PR libstdc++/116381
   1950 	* include/std/variant (variant): Fix conditions for
   1951 	static_assert to match the spec.
   1952 	* testsuite/20_util/variant/types_neg.cc: New test.
   1953 
   1954 2024-08-03  Jonathan Wakely  <jwakely (a] redhat.com>
   1955 
   1956 	Backported from master:
   1957 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
   1958 
   1959 	* include/bits/version.def (chrono): Add cxx11abi = yes.
   1960 	* include/bits/version.h: Regenerate.
   1961 	* testsuite/std/time/syn_c++20.cc: Adjust expected value for
   1962 	the feature test macro.
   1963 
   1964 2024-08-02  Patrick Palka  <ppalka (a] redhat.com>
   1965 
   1966 	Backported from master:
   1967 	2024-07-25  Patrick Palka  <ppalka (a] redhat.com>
   1968 
   1969 	PR libstdc++/116038
   1970 	* include/std/functional (_Bind_front::operator()): Use __like_t
   1971 	instead of std::forward when forwarding __self.
   1972 	(_Bind_back::operator()): Likewise.
   1973 	* include/std/ranges (_Partial::operator()): Likewise.
   1974 	(_Pipe::operator()): Likewise.
   1975 	* testsuite/20_util/function_objects/bind_back/116038.cc: New test.
   1976 	* testsuite/20_util/function_objects/bind_front/116038.cc: New test.
   1977 	* testsuite/std/ranges/adaptors/116038.cc: New test.
   1978 
   1979 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   1980 
   1981 	Backported from master:
   1982 	2024-05-22  Jonathan Wakely  <jwakely (a] redhat.com>
   1983 
   1984 	* include/bits/locale_classes.h (locale::combine)
   1985 	(locale::name, locale::operator==, locale::operator!=)
   1986 	(locale::operator(), locale::classic): Add nodiscard
   1987 	attribute.
   1988 	* include/bits/locale_classes.tcc (has_facet, use_facet):
   1989 	Likewise.
   1990 	* testsuite/22_locale/locale/cons/12438.cc: Add dg-warning for
   1991 	nodiscard diagnostic.
   1992 	* testsuite/22_locale/locale/cons/2.cc: Cast use_facet
   1993 	expression to void, to suppress diagnostic.
   1994 	* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
   1995 	* testsuite/22_locale/locale/operations/2.cc: Add dg-warning.
   1996 
   1997 2024-08-01  Deev Patel  <dkp10000 (a] gmail.com>
   1998 
   1999 	Backported from master:
   2000 	2024-06-08  Deev Patel  <dkp10000 (a] gmail.com>
   2001 		    Jonathan Wakely  <jwakely (a] redhat.com>
   2002 
   2003 	* include/bits/atomic_base.h (__atomic_impl::__clear_padding):
   2004 	Add missing constexpr specifier.
   2005 	* testsuite/29_atomics/atomic_float/constinit.cc: New test.
   2006 
   2007 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2008 
   2009 	Backported from master:
   2010 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
   2011 
   2012 	* testsuite/util/testsuite_allocator.h (tracker_allocator):
   2013 	Initialize base class in copy constructor.
   2014 
   2015 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2016 
   2017 	Backported from master:
   2018 	2024-06-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2019 
   2020 	PR libstdc++/115399
   2021 	* include/tr2/dynamic_bitset (operator>>=): Remove redundant
   2022 	call to _M_do_sanitize.
   2023 	* include/tr2/dynamic_bitset.tcc (_M_do_left_shift): Zero out
   2024 	low bits in words that should no longer be populated.
   2025 	(_M_do_right_shift): Likewise for high bits.
   2026 	* testsuite/tr2/dynamic_bitset/pr115399.cc: New test.
   2027 
   2028 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2029 
   2030 	Backported from master:
   2031 	2024-07-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2032 
   2033 	* include/std/format (basic_format_args): Remove default
   2034 	constructor, as per LWG 4106.
   2035 	* testsuite/std/format/arguments/args.cc: Check it isn't default
   2036 	constructible.
   2037 
   2038 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2039 
   2040 	Backported from master:
   2041 	2024-07-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2042 
   2043 	PR libstdc++/114387
   2044 	* include/std/format (basic_format_context): Define copy
   2045 	operations as deleted, as per LWG 4061.
   2046 	* testsuite/std/format/context.cc: New test.
   2047 
   2048 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2049 
   2050 	Backported from master:
   2051 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
   2052 
   2053 	* include/std/any (any_cast(any*), any_cast(const any*)): Add
   2054 	static assertion to reject void types, as per LWG 3305.
   2055 	* testsuite/20_util/any/misc/lwg3305.cc: New test.
   2056 
   2057 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2058 
   2059 	Backported from master:
   2060 	2024-06-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2061 
   2062 	* include/std/algorithm: Define __glibcxx_want_ranges.
   2063 	* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Check
   2064 	feature test macro in C++20 mode.
   2065 
   2066 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2067 
   2068 	Backported from master:
   2069 	2024-07-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2070 
   2071 	PR libstdc++/115854
   2072 	* include/bits/stl_bvector.h (_Bvector_base): Convert allocator
   2073 	to rebound type explicitly.
   2074 	* testsuite/23_containers/vector/allocator/115854.cc: New test.
   2075 	* testsuite/23_containers/vector/bool/allocator/115854.cc: New test.
   2076 
   2077 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2078 
   2079 	Backported from master:
   2080 	2024-06-13  Jonathan Wakely  <jwakely (a] redhat.com>
   2081 
   2082 	* include/bits/ranges_base.h (const_iterator_t): Change
   2083 	preprocessor condition to use __glibcxx_ranges_as_const.
   2084 	(const_sentinel_t, range_const_reference_t): Likewise.
   2085 	(__access::__possibly_const_range, cbegin, cend, crbegin)
   2086 	(crend, cdata): Likewise.
   2087 	* include/bits/stl_iterator.h (iter_const_reference_t)
   2088 	(basic_const_iterator, const_iterator, const_sentinel)
   2089 	(make_const_iterator): Likewise.
   2090 
   2091 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2092 
   2093 	Backported from master:
   2094 	2024-07-06  Jonathan Wakely  <jwakely (a] redhat.com>
   2095 
   2096 	* include/std/variant (_Variant_storage::_M_reset): Use
   2097 	__unlikely__ form of attribute instead of unlikely.
   2098 
   2099 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2100 
   2101 	Backported from master:
   2102 	2024-07-24  Jonathan Wakely  <jwakely (a] redhat.com>
   2103 
   2104 	PR libstdc++/116070
   2105 	* include/std/istream: Check feature test macro before using
   2106 	is_class_v and is_same_v.
   2107 	* include/std/ostream: Likewise.
   2108 
   2109 2024-08-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2110 
   2111 	Backported from master:
   2112 	2024-07-24  Jonathan Wakely  <jwakely (a] redhat.com>
   2113 
   2114 	PR libstdc++/116070
   2115 	* include/bits/stl_bvector.h: Check feature test macro before
   2116 	using is_default_constructible_v.
   2117 
   2118 2024-08-01  Release Manager
   2119 
   2120 	* GCC 14.2.0 released.
   2121 
   2122 2024-07-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2123 
   2124 	Backported from master:
   2125 	2024-07-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2126 
   2127 	* src/c++23/print.cc (__open_terminal): Use [[maybe_unused]] on
   2128 	parameter.
   2129 
   2130 2024-07-23  Detlef Vollmann  <dv (a] vollmann.ch>
   2131 
   2132 	Backported from master:
   2133 	2024-07-23  Detlef Vollmann  <dv (a] vollmann.ch>
   2134 
   2135 	PR libstdc++/115482
   2136 	* src/c++23/print.cc (__open_terminal) [__AVR__]: Do not use
   2137 	isatty.
   2138 
   2139 2024-07-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2140 
   2141 	Backported from master:
   2142 	2024-06-13  Jonathan Wakely  <jwakely (a] redhat.com>
   2143 
   2144 	PR libstdc++/113376
   2145 	* include/pstl/pstl_config.h: Use #if instead of #ifdef to test
   2146 	the _PSTL_USAGE_WARNINGS macro.
   2147 
   2148 2024-07-12  Jonathan Wakely  <jwakely (a] redhat.com>
   2149 
   2150 	Backported from master:
   2151 	2024-06-21  Jonathan Wakely  <jwakely (a] redhat.com>
   2152 
   2153 	PR libstdc++/115522
   2154 	* include/std/array (to_array): Workaround the fact that
   2155 	std::is_trivial is not sufficient to check that a type is
   2156 	trivially default constructible and assignable.
   2157 	* testsuite/23_containers/array/creation/115522.cc: New test.
   2158 
   2159 2024-07-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2160 
   2161 	Backported from master:
   2162 	2024-07-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2163 
   2164 	PR libstdc++/115807
   2165 	* include/c_compatibility/stdatomic.h (_Atomic): Ensure it
   2166 	refers to std::atomic in the global namespace.
   2167 	* testsuite/29_atomics/headers/stdatomic.h/115807.cc: New test.
   2168 
   2169 2024-07-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2170 
   2171 	Backported from master:
   2172 	2024-06-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2173 
   2174 	PR libstdc++/115585
   2175 	* src/c++11/assert_fail.cc (__glibcxx_assert_fail): Add
   2176 	definition for non-verbose builds.
   2177 
   2178 2024-06-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2179 
   2180 	Backported from master:
   2181 	2024-06-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2182 
   2183 	PR libstdc++/115668
   2184 	* include/bits/chrono_io.h (formatter<duration<R,P, C>::format):
   2185 	Do not use chrono::abs.
   2186 	* testsuite/20_util/duration/io.cc: Check formatting a duration
   2187 	with unsigned rep.
   2188 
   2189 2024-06-27  Jonathan Wakely  <jwakely (a] redhat.com>
   2190 
   2191 	Backported from master:
   2192 	2024-06-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2193 
   2194 	* doc/xml/faq.xml: Replace viewcvs links with cgit links.
   2195 	* doc/xml/manual/allocator.xml: Likewise.
   2196 	* doc/xml/manual/mt_allocator.xml: Likewise.
   2197 	* doc/html/*: Regenerate.
   2198 
   2199 2024-06-27  Alexandre Oliva  <oliva (a] adacore.com>
   2200 
   2201 	Backported from master:
   2202 	2024-06-27  Alexandre Oliva  <oliva (a] adacore.com>
   2203 
   2204 	PR libstdc++/115454
   2205 	* testsuite/experimental/simd/pr115454_find_last_set.cc: Defer
   2206 	to check_vect_support_and_set_flags's default dg-do action.
   2207 
   2208 2024-06-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2209 
   2210 	* doc/xml/manual/status_cxx1998.xml: Remove confusing "not in
   2211 	any particular release" text.
   2212 	* doc/xml/manual/status_cxx2011.xml: Likewise.
   2213 	* doc/xml/manual/status_cxx2014.xml: Likewise.
   2214 	* doc/xml/manual/status_cxx2017.xml: Likewise.
   2215 	* doc/xml/manual/status_cxx2020.xml: Likewise.
   2216 	* doc/xml/manual/status_cxx2023.xml: Likewise.
   2217 	* doc/xml/manual/status_cxxtr1.xml: Likewise.
   2218 	* doc/xml/manual/status_cxxtr24733.xml: Likewise.
   2219 	* doc/html/manual/status.html: Regenerate.
   2220 
   2221 2024-06-21  Matthias Kretz  <m.kretz (a] gsi.de>
   2222 
   2223 	Backported from master:
   2224 	2024-06-21  Matthias Kretz  <m.kretz (a] gsi.de>
   2225 
   2226 	PR libstdc++/115575
   2227 	* testsuite/experimental/simd/pr115454_find_last_set.cc: Require
   2228 	avx512f_runtime. Don't memcpy fixed_size masks.
   2229 
   2230 2024-06-20  Matthias Kretz  <m.kretz (a] gsi.de>
   2231 
   2232 	Backported from master:
   2233 	2024-06-20  Matthias Kretz  <m.kretz (a] gsi.de>
   2234 
   2235 	PR libstdc++/115454
   2236 	* include/experimental/bits/simd_x86.h (_S_not_equal_to): Use
   2237 	neq comparison instead of bitwise negation after eq.
   2238 	(_S_find_last_set): Clear unused high bits before computing
   2239 	bit_width.
   2240 	* testsuite/experimental/simd/pr115454_find_last_set.cc: New
   2241 	test.
   2242 
   2243 2024-06-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2244 
   2245 	Backported from master:
   2246 	2024-06-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2247 
   2248 	* libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Fix declaration of
   2249 	posix_memalign.
   2250 
   2251 2024-06-10  Matthias Kretz  <m.kretz (a] gsi.de>
   2252 
   2253 	Backported from master:
   2254 	2024-06-04  Matthias Kretz  <m.kretz (a] gsi.de>
   2255 
   2256 	PR libstdc++/115308
   2257 	* include/experimental/bits/simd.h (__int_for_sizeof): Remove
   2258 	special cases for __clang__.
   2259 	(_SimdWrapper): Change constructor overload set to allow
   2260 	conversion from vector types with integral conversions via bit
   2261 	reinterpretation.
   2262 
   2263 2024-06-10  Matthias Kretz  <m.kretz (a] gsi.de>
   2264 
   2265 	Backported from master:
   2266 	2024-05-29  Matthias Kretz  <m.kretz (a] gsi.de>
   2267 
   2268 	PR libstdc++/115247
   2269 	* include/experimental/bits/simd.h (__as_vector): Don't use
   2270 	vector_size(8) on __i386__.
   2271 	(__vec_shuffle): Never return MMX vectors, widen to 16 bytes
   2272 	instead.
   2273 	(concat): Fix padding calculation to pick up widening logic from
   2274 	__as_vector.
   2275 
   2276 2024-06-10  Matthias Kretz  <m.kretz (a] gsi.de>
   2277 
   2278 	Backported from master:
   2279 	2024-05-13  Matthias Kretz  <m.kretz (a] gsi.de>
   2280 
   2281 	PR libstdc++/114958
   2282 	* include/experimental/bits/simd.h (__as_vector): Return scalar
   2283 	simd as one-element vector. Return vector from single-vector
   2284 	fixed_size simd.
   2285 	(__vec_shuffle): New.
   2286 	(__extract_part): Adjust return type signature.
   2287 	(split): Use __extract_part for any split into non-fixed_size
   2288 	simds.
   2289 	(concat): If the return type stores a single vector, use
   2290 	__vec_shuffle (which calls __builtin_shufflevector) to produce
   2291 	the return value.
   2292 	* include/experimental/bits/simd_builtin.h
   2293 	(__shift_elements_right): Removed.
   2294 	(__extract_part): Return single elements directly. Use
   2295 	__vec_shuffle (which calls __builtin_shufflevector) to for all
   2296 	non-trivial cases.
   2297 	* include/experimental/bits/simd_fixed_size.h (__extract_part):
   2298 	Return single elements directly.
   2299 	* testsuite/experimental/simd/pr114958.cc: New test.
   2300 
   2301 2024-06-04  Jonathan Wakely  <jwakely (a] redhat.com>
   2302 
   2303 	Backported from master:
   2304 	2024-06-04  Jonathan Wakely  <jwakely (a] redhat.com>
   2305 
   2306 	PR libstdc++/115335
   2307 	* include/std/span (span::at): Guard with feature test macro.
   2308 
   2309 2024-06-04  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2310 
   2311 	Backported from master:
   2312 	2024-05-29  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2313 
   2314 	PR libstdc++/111641
   2315 	* src/libbacktrace/Makefile.am (AM_CFLAGS): Add -funwind-tables.
   2316 	* src/libbacktrace/Makefile.in: Regenerate.
   2317 	* testsuite/19_diagnostics/stacktrace/current.cc (dg-options): Add
   2318 	-funwind-tables.
   2319 	* testsuite/19_diagnostics/stacktrace/entry.cc: Likewise.
   2320 	* testsuite/19_diagnostics/stacktrace/hash.cc: Likewise.
   2321 	* testsuite/19_diagnostics/stacktrace/output.cc: Likewise.
   2322 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise.
   2323 
   2324 2024-06-03  Franois Dumont  <frs.dumont (a] gmail.com>
   2325 
   2326 	Backported from master:
   2327 	2024-06-03  Franois Dumont  <frs.dumont (a] gmail.com>
   2328 
   2329 	PR libstdc++/109849
   2330 	* include/bits/vector.tcc
   2331 	(std::vector<>::_M_range_insert(iterator, _FwdIt, _FwdIt,
   2332 	forward_iterator_tag))[__cplusplus < 201103L]: Add __builtin_unreachable
   2333 	expression to tell the compiler that the allocated buffer is large enough to
   2334 	receive current elements plus the elements of the range to insert.
   2335 
   2336 2024-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2337 
   2338 	Backported from master:
   2339 	2024-06-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2340 
   2341 	PR libstdc++/115269
   2342 	* doc/xml/manual/using.xml: Replace link to gcc-4.3.2 docs.
   2343 	Replace list of -std=... options with a single entry for -std.
   2344 	* doc/html/manual/using.html: Regenerate.
   2345 
   2346 2024-05-28  Jonathan Wakely  <jwakely (a] redhat.com>
   2347 
   2348 	Backported from master:
   2349 	2024-05-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2350 
   2351 	PR libstdc++/114940
   2352 	* include/bits/version.def (generator): Depend on
   2353 	__cpp_sized_deallocation.
   2354 	* include/bits/version.h: Regenerate.
   2355 	* include/std/stacktrace (_GLIBCXX_SIZED_DELETE): New macro.
   2356 	(basic_stacktrace::_Impl::_M_deallocate): Use it.
   2357 
   2358 2024-05-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2359 
   2360 	Backported from master:
   2361 	2024-05-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2362 
   2363 	PR libstdc++/115099
   2364 	* include/bits/std_thread.h: Declare formatter as friend of
   2365 	thread::id.
   2366 	* include/std/thread (operator<<): Convert non-void pointers to
   2367 	void pointers for output.
   2368 	(formatter): Add constraint that thread::native_handle_type is a
   2369 	pointer or integer.
   2370 	(formatter::format): Reimplement without basic_ostringstream.
   2371 	* testsuite/30_threads/thread/id/output.cc: Check output
   2372 	compiles before <sstream> has been included.
   2373 
   2374 2024-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   2375 
   2376 	Backported from master:
   2377 	2024-05-17  Jonathan Wakely  <jwakely (a] redhat.com>
   2378 
   2379 	PR libstdc++/115119
   2380 	* include/bits/unicode.h (_Iterator::operator++(int)): Fix typo
   2381 	in increment expression.
   2382 	* testsuite/ext/unicode/grapheme_view.cc: Check post-increment
   2383 	on view's iterator.
   2384 
   2385 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2386 
   2387 	PR libstdc++/115015
   2388 	* src/c++23/print.cc (__open_terminal(streambuf*)) [!__cpp_rtti]:
   2389 	Do not use dynamic_cast.
   2390 
   2391 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2392 
   2393 	Backported from master:
   2394 	2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2395 
   2396 	PR libstdc++/115063
   2397 	* include/std/stacktrace (basic_stacktrace::max_size): Fix typo
   2398 	in reference to _M_alloc member.
   2399 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Check
   2400 	max_size() compiles.
   2401 
   2402 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2403 
   2404 	Backported from master:
   2405 	2024-05-01  Jonathan Wakely  <jwakely (a] redhat.com>
   2406 
   2407 	PR libstdc++/114891
   2408 	* include/std/generator: Check feature test macro before using
   2409 	is_pointer_interconvertible_v.
   2410 
   2411 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2412 
   2413 	Backported from master:
   2414 	2024-05-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2415 
   2416 	* testsuite/util/testsuite_abi.cc: Update latest versions to
   2417 	new versions that should be used in future.
   2418 
   2419 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2420 
   2421 	Backported from master:
   2422 	2024-05-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2423 
   2424 	* include/bits/unicode.h (_Unicode_view::_M_read_utf8): Ensure
   2425 	count of characters consumed is correct when the end of the
   2426 	input is reached unexpectedly.
   2427 	* testsuite/ext/unicode/view.cc: Test incomplete UTF-8
   2428 	sequences.
   2429 
   2430 2024-05-14  Jonathan Wakely  <jwakely (a] redhat.com>
   2431 
   2432 	Backported from master:
   2433 	2024-05-07  Jonathan Wakely  <jwakely (a] redhat.com>
   2434 
   2435 	PR libstdc++/114866
   2436 	* include/bits/out_ptr.h [!_GLIBCXX_HOSTED]: Don't refer to
   2437 	shared_ptr, __shared_ptr or __is_shred_ptr.
   2438 	* testsuite/20_util/headers/memory/114866.cc: New test.
   2439 
   2440 2024-05-07  Release Manager
   2441 
   2442 	* GCC 14.1.0 released.
   2443 
   2444 2024-05-03  Andreas Schwab  <schwab (a] linux-m68k.org>
   2445 
   2446 	* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
   2447 	* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
   2448 
   2449 2024-04-30  Jonathan Wakely  <jwakely (a] redhat.com>
   2450 
   2451 	Backported from master:
   2452 	2024-04-30  Jonathan Wakely  <jwakely (a] redhat.com>
   2453 
   2454 	PR libstdc++/114863
   2455 	* include/std/format (__formatter_fp::format): Only use
   2456 	_M_localized for finite values.
   2457 	* testsuite/std/format/functions/format.cc: Check localized
   2458 	formatting of NaN and initiny.
   2459 
   2460 2024-04-29  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2461 
   2462 	* config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
   2463 	* config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
   2464 	Likewise.
   2465 	* config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
   2466 	* config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
   2467 	Likewise.
   2468 
   2469 2024-04-29  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2470 
   2471 	Backported from master:
   2472 	2024-04-29  Rainer Orth  <ro (a] CeBiTec.Uni-Bielefeld.DE>
   2473 
   2474 	* config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
   2475 	* config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
   2476 	Likewise.
   2477 	* config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
   2478 	* config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
   2479 	Likewise.
   2480 
   2481 2024-04-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2482 
   2483 	* doc/html/manual/status.html: Regenerate.
   2484 	* doc/xml/manual/status_cxx1998.xml: Replace references to
   2485 	mainline GCC.
   2486 	* doc/xml/manual/status_cxx2011.xml: Likewise.
   2487 	* doc/xml/manual/status_cxx2014.xml: Likewise.
   2488 	* doc/xml/manual/status_cxx2017.xml: Likewise.
   2489 	* doc/xml/manual/status_cxx2020.xml: Likewise.
   2490 	* doc/xml/manual/status_cxx2023.xml: Likewise.
   2491 	* doc/xml/manual/status_cxxtr1.xml: Likewise.
   2492 	* doc/xml/manual/status_cxxtr24733.xml: Likewise.
   2493 
   2494 2024-04-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2495 
   2496 	* scripts/run_doxygen: Rename man pages for nested types.
   2497 
   2498 2024-04-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2499 
   2500 	* include/std/chrono (tzdb_list): Fix typo in Doxygen comment.
   2501 
   2502 2024-04-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2503 
   2504 	* scripts/run_doxygen: Adjust sed pattern to match '\fR' for
   2505 	new man output that Doxygen 1.10 generates.
   2506 
   2507 2024-04-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2508 
   2509 	* doc/doxygen/stdheader.cc (init_map): Add missing headers.
   2510 	* doc/doxygen/user.cfg.in (EXCLUDE): Exclude generated files for
   2511 	std::format and std::text_encoding.
   2512 
   2513 2024-04-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2514 
   2515 	* include/std/variant: Add comment to #include.
   2516 
   2517 2024-04-22  Matthias Kretz  <m.kretz (a] gsi.de>
   2518 
   2519 	PR libstdc++/114803
   2520 	* include/experimental/bits/simd_builtin.h
   2521 	(_SimdBase2::operator __vector_type_t): There is no __builtin()
   2522 	function in _SimdWrapper, instead use its conversion operator.
   2523 	* testsuite/experimental/simd/pr114803_vecbuiltin_cvt.cc: New
   2524 	test.
   2525 
   2526 2024-04-22  Matthias Kretz  <m.kretz (a] gsi.de>
   2527 
   2528 	* include/experimental/bits/simd.h: Ignore -Wnarrowing for
   2529 	arm_neon.h.
   2530 	(__int_for_sizeof): Replace tautological compare with checking
   2531 	for invalid template parameter value.
   2532 	* include/experimental/bits/simd_builtin.h (__extract_part):
   2533 	Remove tautological compare by combining two static_assert.
   2534 
   2535 2024-04-22  Jakub Jelinek  <jakub (a] redhat.com>
   2536 
   2537 	* testsuite/17_intro/names.cc (d, f): Undefine on s390*-linux*.
   2538 	* testsuite/17_intro/headers/c++1998/all_attributes.cc (packed): Don't
   2539 	define on s390.
   2540 	* testsuite/17_intro/headers/c++2011/all_attributes.cc (packed):
   2541 	Likewise.
   2542 	* testsuite/17_intro/headers/c++2014/all_attributes.cc (packed):
   2543 	Likewise.
   2544 	* testsuite/17_intro/headers/c++2017/all_attributes.cc (packed):
   2545 	Likewise.
   2546 	* testsuite/17_intro/headers/c++2020/all_attributes.cc (packed):
   2547 	Likewise.
   2548 
   2549 2024-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2550 
   2551 	* include/bits/refwrap.h (operator<=>): Simplify constraints.
   2552 
   2553 2024-04-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2554 
   2555 	PR libstdc++/114770
   2556 	* src/c++20/tzdb.cc (do_locate_zone): Support links that have
   2557 	another link as their target.
   2558 	* testsuite/std/time/tzdb/1.cc: Check that all zones and links
   2559 	can be found by locate_zone.
   2560 	* testsuite/std/time/tzdb/links.cc: New test.
   2561 
   2562 2024-04-18  Alexandre Oliva  <oliva (a] adacore.com>
   2563 
   2564 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc:
   2565 	Disable SRA.
   2566 
   2567 2024-04-18  Alexandre Oliva  <oliva (a] adacore.com>
   2568 
   2569 	* testsuite/20_util/from_chars/8.cc: Skip float128_t testing
   2570 	on aarch64-vxworks.
   2571 	* testsuite/20_util/to_chars/float128_c++23.cc: Xfail run on
   2572 	aarch64-vxworks.
   2573 
   2574 2024-04-18  Alexandre Oliva  <oliva (a] adacore.com>
   2575 
   2576 	* src/c++20/tzdb.cc (__gnu_cxx::zoneinfo_dir_override): Define
   2577 	on VxWorks non-RTP.
   2578 
   2579 2024-04-17  Jonathan Wakely  <jwakely (a] redhat.com>
   2580 
   2581 	* include/std/ostream (println(ostream&)): Define new overload.
   2582 	* include/std/print (println(FILE*), println()): Likewise.
   2583 	* testsuite/27_io/basic_ostream/print/2.cc: New test.
   2584 	* testsuite/27_io/print/1.cc: Remove unused header.
   2585 	* testsuite/27_io/print/3.cc: New test.
   2586 
   2587 2024-04-17  Matthias Kretz  <m.kretz (a] gsi.de>
   2588 
   2589 	* include/experimental/bits/numeric_traits.h: Add include guard.
   2590 
   2591 2024-04-17  Matthias Kretz  <m.kretz (a] gsi.de>
   2592 
   2593 	PR libstdc++/114750
   2594 	* include/experimental/bits/simd_builtin.h
   2595 	(_SimdImplBuiltin::_S_load, _S_store): Fall back to copying
   2596 	scalars if the memory type cannot be vectorized for the target.
   2597 
   2598 2024-04-16  Jonathan Wakely  <jwakely (a] redhat.com>
   2599 
   2600 	* config/locale/dragonfly/numeric_members.cc: Fix typos in
   2601 	comments.
   2602 	* config/locale/gnu/numeric_members.cc: Likewise.
   2603 
   2604 2024-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2605 
   2606 	* doc/xml/manual/abi.xml: Replace "<next>" with "14.1.0".
   2607 	* doc/html/manual/abi.html: Regenerate.
   2608 
   2609 2024-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2610 
   2611 	* include/bits/refwrap.h (reference_wrapper): Add comparison
   2612 	operators as proposed by P2944R3.
   2613 	* include/bits/version.def (reference_wrapper): Define.
   2614 	* include/bits/version.h: Regenerate.
   2615 	* include/std/functional: Enable feature test macro.
   2616 	* testsuite/20_util/reference_wrapper/compare.cc: New test.
   2617 
   2618 2024-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2619 
   2620 	PR libstdc++/113386
   2621 	* include/bits/stl_pair.h (operator==, operator<=>): Support
   2622 	heterogeneous comparisons, as per LWG 3865.
   2623 	* testsuite/20_util/pair/comparison_operators/lwg3865.cc: New
   2624 	test.
   2625 
   2626 2024-04-15  Jonathan Wakely  <jwakely (a] redhat.com>
   2627 
   2628 	PR libstdc++/93672
   2629 	* src/c++98/istream.cc (istream::ignore(streamsize, int_type)):
   2630 	Treat all negative delimiter values as eof().
   2631 	* testsuite/27_io/basic_istream/ignore/char/93672.cc: New test.
   2632 	* testsuite/27_io/basic_istream/ignore/wchar_t/93672.cc: New
   2633 	test.
   2634 
   2635 2024-04-15  Andreas Schwab  <schwab (a] suse.de>
   2636 
   2637 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
   2638 
   2639 2024-04-13  H.J. Lu  <hjl.tools (a] gmail.com>
   2640 
   2641 	* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt:
   2642 	Updated.
   2643 
   2644 2024-04-11  Jakub Jelinek  <jakub (a] redhat.com>
   2645 
   2646 	* doc/xml/manual/abi.xml: Add latest library versions.
   2647 	* doc/html/manual/abi.html: Regenerate.
   2648 
   2649 2024-04-11  Jakub Jelinek  <jakub (a] redhat.com>
   2650 
   2651 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   2652 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   2653 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   2654 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
   2655 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   2656 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
   2657 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
   2658 	* config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update.
   2659 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
   2660 
   2661 2024-04-11  Jonathan Wakely  <jwakely (a] redhat.com>
   2662 
   2663 	PR libstdc++/114692
   2664 	* config/abi/pre/gnu.ver (GLIBCXX_3.4.32): Move new exports for
   2665 	__basic_file::native_handle to ...
   2666 	(GLIBCXX_3.4.33): ... here. Adjust to not match wchar_t
   2667 	specialization, which isn't used.
   2668 	* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.33 and update
   2669 	latest version check.
   2670 
   2671 2024-04-11  Jakub Jelinek  <jakub (a] redhat.com>
   2672 
   2673 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
   2674 	* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
   2675 	* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
   2676 	* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
   2677 	* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
   2678 	* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
   2679 	* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
   2680 	* config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update.
   2681 	* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
   2682 
   2683 2024-04-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2684 
   2685 	* testsuite/27_io/manipulators/extended/get_time/char/2.cc:
   2686 	Adjust input string so that it matches %a with or without a
   2687 	trailing period.
   2688 	* testsuite/std/time/year_month_day/io.cc: Adjust expected
   2689 	format for %x in the fr_FR locale.
   2690 
   2691 2024-04-10  Jonathan Wakely  <jwakely (a] redhat.com>
   2692 
   2693 	* src/c++17/fs_ops.cc (remove_all) [__FreeBSD__ || __DragonFly__]:
   2694 	Check for EMLINK as well as ELOOP.
   2695 	[__NetBSD__]: Check for EFTYPE as well as ELOOP.
   2696 
   2697 2024-04-09  Jonathan Wakely  <jwakely (a] redhat.com>
   2698 
   2699 	PR libstdc++/114633
   2700 	* include/bits/chrono_io.h (_Parser::operator()) <'S'>: Use
   2701 	stream extraction if std::from_chars is not available.
   2702 
   2703 2024-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2704 
   2705 	PR libstdc++/114519
   2706 	* include/bits/unicode.h (_Utf8_view) [!__cpp_char8_t]: Define
   2707 	using char instead of char8_t.
   2708 	* testsuite/ext/unicode/view.cc: Use u8""sv literals to create
   2709 	string views, instead of std::u8string_view.
   2710 
   2711 2024-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2712 
   2713 	* testsuite/20_util/integer_comparisons/equal_neg.cc: Use
   2714 	no-opts selector for errors that depend on -fchar8_t.
   2715 	* testsuite/20_util/integer_comparisons/greater_equal_neg.cc:
   2716 	Likewise.
   2717 	* testsuite/20_util/integer_comparisons/greater_neg.cc:
   2718 	Likewise.
   2719 	* testsuite/20_util/integer_comparisons/in_range_neg.cc:
   2720 	Likewise.
   2721 	* testsuite/20_util/integer_comparisons/less_equal_neg.cc:
   2722 	Likewise.
   2723 	* testsuite/20_util/integer_comparisons/less_neg.cc: Likewise.
   2724 	* testsuite/20_util/integer_comparisons/not_equal_neg.cc:
   2725 	Likewise.
   2726 	* testsuite/21_strings/basic_string/hash/hash_char8_t.cc: Skip
   2727 	if -fno-char8_t is used.
   2728 	* testsuite/21_strings/headers/cuchar/functions_std_cxx20.cc:
   2729 	Likewise.
   2730 	* testsuite/27_io/basic_ostream/inserters_character/char/deleted.cc:
   2731 	Likewise.
   2732 	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/deleted.cc:
   2733 	Likewise.
   2734 	* testsuite/27_io/filesystem/path/factory/u8path-depr.cc: Use
   2735 	char for u8 literal if char8_t is not available.
   2736 	* testsuite/27_io/headers/iosfwd/synopsis.cc: Check
   2737 	__cpp_char8_t.
   2738 	* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
   2739 	* testsuite/29_atomics/headers/atomic/types_std_c++20_neg.cc:
   2740 	Remove check for _GLIBCXX_USE_CHAR8_T.
   2741 
   2742 2024-04-08  Jonathan Wakely  <jwakely (a] redhat.com>
   2743 
   2744 	* testsuite/20_util/from_chars/1_neg.cc: Add char8_t cases,
   2745 	using a struct of that name if -fno-char8_t is active.
   2746 	* testsuite/20_util/from_chars/1_c++20_neg.cc: Removed.
   2747 
   2748 2024-04-03  Jonathan Wakely  <jwakely (a] redhat.com>
   2749 
   2750 	PR libstdc++/104606
   2751 	* include/std/optional (operator<=>(const optional<T>&, const U&)):
   2752 	Reverse order of three_way_comparable_with template arguments.
   2753 	* testsuite/20_util/optional/relops/104606.cc: New test.
   2754 
   2755 2024-04-02  Jonathan Wakely  <jwakely (a] redhat.com>
   2756 
   2757 	PR libstdc++/114519
   2758 	* include/bits/unicode.h (_Utf8_view): Guard with check for
   2759 	char8_t being enabled.
   2760 	(__literal_encoding_is_unicode): Guard use of char8_t with check
   2761 	for it being enabled.
   2762 	* testsuite/std/format/functions/114519.cc: New test.
   2763 
   2764 2024-04-02  Patrick Palka  <ppalka (a] redhat.com>
   2765 
   2766 	* include/std/ranges (ranges::__detail::_Empty): Rename to ...
   2767 	(ranges::__detail::_Absent): ... this.  Turn into a template
   2768 	parameterized by the absent type _Tp and discriminator _Disc.
   2769 	(ranges::__detail::__maybe_present_t): Add an optional
   2770 	discriminator parameter.
   2771 	(slide_view::_M_cached_begin): Pass a discriminator argument to
   2772 	__maybe_present_t.
   2773 	(slide_view::_M_cached_end): Likewise.
   2774 	* testsuite/std/ranges/adaptors/sizeof.cc: Verify the size of
   2775 	slide_view<V> is 3 instead 4 pointers.
   2776 
   2777 2024-04-02  Jakub Jelinek  <jakub (a] redhat.com>
   2778 
   2779 	* acinclude.m4: Fix duplicated words; file file -> file can.
   2780 	* configure.host: Fix duplicated words; the the -> the.
   2781 
   2782 2024-03-29  Arsen Arsenovi  <arsen (a] aarsen.me>
   2783 
   2784 	* testsuite/24_iterators/range_generators/01.cc: Drop GCC
   2785 	Runtime Library Exception.
   2786 	* testsuite/24_iterators/range_generators/02.cc: Drop GCC
   2787 	Runtime Library Exception.
   2788 	* testsuite/24_iterators/range_generators/copy.cc: Drop GCC
   2789 	Runtime Library Exception.
   2790 	* testsuite/24_iterators/range_generators/except.cc: Drop GCC
   2791 	Runtime Library Exception.
   2792 	* testsuite/24_iterators/range_generators/subrange.cc: Drop GCC
   2793 	Runtime Library Exception.
   2794 	* testsuite/24_iterators/range_generators/synopsis.cc: Drop GCC
   2795 	Runtime Library Exception.
   2796 	* testsuite/24_iterators/range_generators/iter_deref_return.cc:
   2797 	Drop GCC Runtime Library Exception from the "You should have
   2798 	received a copy" paragraph.
   2799 
   2800 2024-03-27  Matthias Kretz  <m.kretz (a] gsi.de>
   2801 
   2802 	* include/experimental/bits/simd_x86.h (_S_masked_unary):
   2803 	Cast inputs < 16 bytes to 16 byte vectors before calling the
   2804 	right subtraction builtin. Before returning, truncate to the
   2805 	return vector type.
   2806 
   2807 2024-03-27  Matthias Kretz  <m.kretz (a] gsi.de>
   2808 
   2809 	* include/experimental/bits/simd_x86.h (_S_masked_unary): Call
   2810 	the 4- and 8-byte variants of __builtin_ia32_subp[ds] without
   2811 	rounding direction argument.
   2812 
   2813 2024-03-27  Srinivas Yadav Singanaboina  <vasu.srinivasvasu.14 (a] gmail.com>
   2814 
   2815 	* include/Makefile.am: Add simd_sve.h.
   2816 	* include/Makefile.in: Add simd_sve.h.
   2817 	* include/experimental/bits/simd.h: Add new SveAbi.
   2818 	* include/experimental/bits/simd_builtin.h: Use
   2819 	__no_sve_deduce_t to support existing Neon Abi.
   2820 	* include/experimental/bits/simd_converter.h: Convert
   2821 	sequentially when sve is available.
   2822 	* include/experimental/bits/simd_detail.h: Define sve
   2823 	specific macro.
   2824 	* include/experimental/bits/simd_math.h: Fallback frexp
   2825 	to execute sequntially when sve is available, to handle
   2826 	fixed_size_simd return type that always uses sve.
   2827 	* include/experimental/simd: Include bits/simd_sve.h.
   2828 	* testsuite/experimental/simd/tests/bits/main.h: Enable
   2829 	testing for sve128, sve256, sve512.
   2830 	* include/experimental/bits/simd_sve.h: New file.
   2831 
   2832 2024-03-26  Arsen Arsenovi  <arsen (a] aarsen.me>
   2833 
   2834 	* include/std/generator (generator::_Iterator::operator*): Fix
   2835 	return type.
   2836 	* testsuite/24_iterators/range_generators/iter_deref_return.cc:
   2837 	New test.
   2838 
   2839 2024-03-26  Arsen Arsenovi  <arsen (a] aarsen.me>
   2840 
   2841 	* include/std/generator: Fix _V badname.
   2842 
   2843 2024-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2844 
   2845 	* testsuite/19_diagnostics/stacktrace/current.cc: Check for
   2846 	__cpp_lib_stacktrace instead of check for stacktrace ET.
   2847 	* testsuite/19_diagnostics/stacktrace/entry.cc: Likewise.
   2848 	* testsuite/19_diagnostics/stacktrace/hash.cc: Likewise.
   2849 	* testsuite/19_diagnostics/stacktrace/output.cc: Likewise.
   2850 	* testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise.
   2851 	* testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise.
   2852 	* testsuite/19_diagnostics/stacktrace/version.cc: Likewise.
   2853 	* testsuite/23_containers/vector/debug/assign4_backtrace_neg.cc:
   2854 	Likewise.
   2855 	* testsuite/lib/libstdc++.exp (check_effective_target_stacktrace):
   2856 	Remove.
   2857 
   2858 2024-03-26  Jonathan Wakely  <jwakely (a] redhat.com>
   2859 
   2860 	* testsuite/lib/dg-options.exp (dg-require-cpp-feature-test):
   2861 	New proc.
   2862 	* testsuite/lib/libstdc++.exp (check_v3_target_cpp_feature_test):
   2863 	New proc.
   2864 	* testsuite/std/text_encoding/cons.cc: Use new directive to skip
   2865 	the test if the __cpp_lib_text_encoding feature test macro is
   2866 	not defined.
   2867 	* testsuite/std/text_encoding/requirements.cc: Likewise.
   2868 
   2869 2024-03-25  Jonathan Wakely  <jwakely (a] redhat.com>
   2870 
   2871 	* testsuite/std/text_encoding/requirements.cc: #undef the
   2872 	correct macro.
   2873 
   2874 2024-03-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2875 
   2876 	* include/std/format (formatter): Disable specializations that
   2877 	would allow sequences of narrow characters to be formatted as
   2878 	wchar_t without conversion, as per LWG 3944.
   2879 	* testsuite/std/format/formatter/lwg3944.cc: New test.
   2880 
   2881 2024-03-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2882 
   2883 	* include/bits/utility.h (__is_in_place_index_v): New variable
   2884 	template.
   2885 	* include/std/variant (__not_in_place_tag): Define in terms of
   2886 	variable templates not a class template.
   2887 
   2888 2024-03-23  Jonathan Wakely  <jwakely (a] redhat.com>
   2889 
   2890 	PR libstdc++/114400
   2891 	* include/std/string_view (operator==): Use std::type_identity_t
   2892 	in C++20 instead of our own __type_identity_t.
   2893 
   2894 2024-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2895 
   2896 	PR libstdc++/114401
   2897 	* include/bits/hashtable.h (_Hashtable::_M_reinsert_node): Call
   2898 	release() on node handle instead of just zeroing its pointer.
   2899 	(_Hashtable::_M_reinsert_node_multi): Likewise.
   2900 	(_Hashtable::_M_merge_unique): Likewise.
   2901 	(_Hashtable::_M_merge_multi): Likewise.
   2902 	* include/bits/node_handle.h (_Node_handle_common::release()):
   2903 	New member function.
   2904 	(_Node_handle_common::_Optional_alloc::_M_empty): Remove
   2905 	unnecessary union member.
   2906 	(_Node_handle_common): Declare _Hashtable as a friend.
   2907 	* include/bits/stl_tree.h (_Rb_tree::_M_reinsert_node_unique):
   2908 	Call release() on node handle instead of just zeroing its
   2909 	pointer.
   2910 	(_Rb_tree::_M_reinsert_node_equal): Likewise.
   2911 	(_Rb_tree::_M_reinsert_node_hint_unique): Likewise.
   2912 	(_Rb_tree::_M_reinsert_node_hint_equal): Likewise.
   2913 	* testsuite/23_containers/multiset/modifiers/114401.cc: New test.
   2914 	* testsuite/23_containers/set/modifiers/114401.cc: New test.
   2915 	* testsuite/23_containers/unordered_multiset/modifiers/114401.cc: New test.
   2916 	* testsuite/23_containers/unordered_set/modifiers/114401.cc: New test.
   2917 
   2918 2024-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2919 
   2920 	PR libstdc++/113841
   2921 	* include/bits/allocator.h (allocator<cv T>): Add default
   2922 	constructor to partial specializations for cv-qualified types.
   2923 	* include/bits/stl_vector.h (_Vector_impl::_Vector_impl()):
   2924 	Constrain so that it's only present if the allocator is default
   2925 	constructible.
   2926 	* include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl()):
   2927 	Likewise.
   2928 	* testsuite/23_containers/vector/cons/113841.cc: New test.
   2929 
   2930 2024-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2931 
   2932 	* include/bits/stl_construct.h (destroy_at, construct_at): Guard
   2933 	with feature test macros instead of just __cplusplus.
   2934 
   2935 2024-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2936 
   2937 	* include/bits/version.def (generator, tuple_like): Move earlier
   2938 	in the file.
   2939 	* include/bits/version.h: Regenerate.
   2940 
   2941 2024-03-22  Jonathan Wakely  <jwakely (a] redhat.com>
   2942 
   2943 	PR libstdc++/114394
   2944 	* include/std/functional (bind): Use __invoke_result_t instead
   2945 	of result_of::type.
   2946 	* include/std/type_traits (__invoke_result_t): New alias
   2947 	template.
   2948 	* testsuite/20_util/bind/ref_neg.cc: Adjust prune pattern.
   2949 
   2950 2024-03-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   2951 
   2952 	* include/bits/version.def (null_iterators): Remove extra_cond.
   2953 	* include/bits/version.h: Regenerate.
   2954 
   2955 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2956 
   2957 	PR libstdc++/114359
   2958 	* include/bits/random.tcc (binomial_distribution::param_type):
   2959 	Ensure arithmetic is done as type double.
   2960 	* testsuite/26_numerics/random/binomial_distribution/114359.cc: New test.
   2961 
   2962 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2963 
   2964 	PR libstdc++/101228
   2965 	* include/pstl/parallel_backend_tbb.h (TBB_SUPPRESS_DEPRECATED_MESSAGES):
   2966 	Define before including <tbb/task.h> then undef afterwards.
   2967 
   2968 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2969 
   2970 	* include/Makefile.am [MAINTAINER_MODE]: Add target to
   2971 	automatically update <bits/version.h>.
   2972 	* include/Makefile.in: Regenerate.
   2973 
   2974 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2975 
   2976 	* doc/xml/manual/build_hacking.xml: Document generated files.
   2977 	Update list of convenience libraries and sub-directories under
   2978 	the src directory.
   2979 	* doc/html/*: Regenerate.
   2980 
   2981 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2982 
   2983 	* include/bits/text_encoding-data.h: Regenerate.
   2984 	* include/bits/unicode-data.h: Regenerate.
   2985 	* scripts/gen_text_encoding_data.py: Fix header of generated
   2986 	file to name the correct script.
   2987 
   2988 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2989 
   2990 	* testsuite/util/pstl/test_utils.h: Fix typos in comments.
   2991 
   2992 2024-03-19  Jonathan Wakely  <jwakely (a] redhat.com>
   2993 
   2994 	PR libstdc++/114367
   2995 	* include/bits/stl_bvector.h (_M_allocate): Use allocator's
   2996 	construct function to begin lifetime of words.
   2997 
   2998 2024-03-19  Iain Sandoe  <iain (a] sandoe.co.uk>
   2999 
   3000 	* testsuite/lib/dg-options.exp (atomic_link_flags): Emit a -B
   3001 	option for the path to the uninstalled libatomic.
   3002 
   3003 2024-03-19  Iain Sandoe  <iain (a] sandoe.co.uk>
   3004 
   3005 	* testsuite/lib/libstdc++.exp (v3_target_compile): Instead of
   3006 	/dev/null, use a temporary file for test executables on Darwin.
   3007 
   3008 2024-03-18  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3009 
   3010 	* include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_can_advance):
   3011 	Accept 0 offset advance on value-initialized iterator.
   3012 	* testsuite/23_containers/vector/debug/n3644.cc: New test case.
   3013 
   3014 2024-03-18  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3015 
   3016 	* include/debug/safe_local_iterator.tcc
   3017 	(_Safe_local_iterator::_M_valid_range): Add _M_value_initialized and
   3018 	_M_singular checks.
   3019 	* testsuite/23_containers/unordered_set/debug/114316.cc: New test case.
   3020 
   3021 2024-03-17  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3022 
   3023 	PR libstdc++/114316
   3024 	* include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
   3025 	First check if both iterators are value-initialized before checking if
   3026 	singular.
   3027 	* testsuite/23_containers/set/debug/114316.cc: New test case.
   3028 	* testsuite/23_containers/vector/debug/114316.cc: New test case.
   3029 
   3030 2024-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3031 
   3032 	PR libstdc++/114325
   3033 	* include/std/format (_Scanner::_M_scan): Pass correct length to
   3034 	__to_chars_10_impl.
   3035 	* testsuite/std/format/functions/format.cc: Check negative
   3036 	integers with empty format-spec.
   3037 
   3038 2024-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3039 
   3040 	* include/bits/stl_algo.h (find_end, all_of, none_of, any_of)
   3041 	(find_if_not, is_partitioned, partition_point, remove)
   3042 	(remove_if, unique, lower_bound, upper_bound, equal_range)
   3043 	(binary_search, includes, is_sorted, is_sorted_until, minmax)
   3044 	(minmax_element, is_permutation, clamp, find_if, find_first_of)
   3045 	(adjacent_find, count, count_if, search, search_n, min_element)
   3046 	(max_element): Add nodiscard attribute.
   3047 	* include/bits/stl_algobase.h (min, max, lower_bound, equal)
   3048 	(lexicographical_compare, lexicographical_compare_three_way)
   3049 	(mismatch): Likewise.
   3050 	* include/bits/stl_heap.h (is_heap, is_heap_until): Likewise.
   3051 	* testsuite/25_algorithms/equal/debug/1_neg.cc: Add dg-warning.
   3052 	* testsuite/25_algorithms/equal/debug/2_neg.cc: Likewise.
   3053 	* testsuite/25_algorithms/equal/debug/3_neg.cc: Likewise.
   3054 	* testsuite/25_algorithms/find_first_of/concept_check_1.cc:
   3055 	Likewise.
   3056 	* testsuite/25_algorithms/is_permutation/2.cc: Likewise.
   3057 	* testsuite/25_algorithms/lexicographical_compare/71545.cc:
   3058 	Likewise.
   3059 	* testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
   3060 	* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc:
   3061 	Likewise.
   3062 	* testsuite/25_algorithms/lower_bound/debug/partitioned_neg.cc:
   3063 	Likewise.
   3064 	* testsuite/25_algorithms/lower_bound/debug/partitioned_pred_neg.cc:
   3065 	Likewise.
   3066 	* testsuite/25_algorithms/minmax/3.cc: Likewise.
   3067 	* testsuite/25_algorithms/search/78346.cc: Likewise.
   3068 	* testsuite/25_algorithms/search_n/58358.cc: Likewise.
   3069 	* testsuite/25_algorithms/unique/1.cc: Likewise.
   3070 	* testsuite/25_algorithms/unique/11480.cc: Likewise.
   3071 	* testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
   3072 	* testsuite/25_algorithms/upper_bound/debug/partitioned_neg.cc:
   3073 	Likewise.
   3074 	* testsuite/25_algorithms/upper_bound/debug/partitioned_pred_neg.cc:
   3075 	Likewise.
   3076 	* testsuite/ext/concept_checks.cc: Likewise.
   3077 	* testsuite/ext/is_heap/47709.cc: Likewise.
   3078 	* testsuite/ext/is_sorted/cxx0x.cc: Likewise.
   3079 
   3080 2024-03-14  xndcn  <xndchn (a] gmail.com>
   3081 
   3082 	* include/bits/atomic_base.h (__atomic_float::__atomic_float(Fp)):
   3083 	Clear padding.
   3084 	* testsuite/29_atomics/atomic_float/compare_exchange_padding.cc:
   3085 	New test.
   3086 
   3087 2024-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3088 
   3089 	PR libstdc++/66146
   3090 	* doc/xml/manual/status_cxx2011.xml: Remove mention of Linux in
   3091 	note about std::call_once.
   3092 	* doc/xml/manual/status_cxx2014.xml: Likewise.
   3093 	* doc/xml/manual/status_cxx2017.xml: Likewise.
   3094 	* doc/html/manual/status.html: Regenerate.
   3095 
   3096 2024-03-14  Jonathan Wakely  <jwakely (a] redhat.com>
   3097 
   3098 	* doc/xml/manual/status_cxx2023.xml: Update C++23 status table.
   3099 	* doc/html/manual/status.html: Regenerate.
   3100 	* include/bits/version.def: Fix typo in comment.
   3101 
   3102 2024-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3103 
   3104 	* testsuite/libstdc++-prettyprinters/cxx11.cc: Move custom_cat
   3105 	to namespace scope.
   3106 
   3107 2024-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3108 
   3109 	* doc/xml/manual/debug.xml: Improve docs on debug builds and
   3110 	using ASan. Mention _GLIBCXX_ASSERTIONS. Reorder sections to put
   3111 	the most relevant ones first.
   3112 	* doc/xml/manual/using.xml: Add comma.
   3113 	* doc/html/*: Regenerate.
   3114 
   3115 2024-03-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3116 
   3117 	* doc/xml/manual/debug.xml: Document that concept checking might
   3118 	be removed in future.
   3119 	* doc/xml/manual/extensions.xml: Likewise.
   3120 
   3121 2024-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   3122 
   3123 	PR libstdc++/114240
   3124 	* include/bits/chrono_io.h (_Parser::operator()): Assume
   3125 	hours(0) for a time_point, so that a time is not required
   3126 	to be present.
   3127 	* testsuite/std/time/parse/114240.cc: New test.
   3128 
   3129 2024-03-09  Jonathan Wakely  <jwakely (a] redhat.com>
   3130 
   3131 	PR libstdc++/114279
   3132 	* include/bits/chrono_io.h (_Parser::_M_is_leap_second): New
   3133 	data member.
   3134 	(_Parser::_M_reserved): Reserve padding bits for future use.
   3135 	(_Parser::operator()): Set _M_is_leap_second if %S reads 60s.
   3136 	(from_stream): Only allow _M_is_leap_second for utc_time and
   3137 	local_time. Adjust arithmetic for utc_time so that leap seconds
   3138 	are preserved. Use time_point_cast to convert to a possibly
   3139 	lower-precision result type.
   3140 	* testsuite/std/time/parse.cc: Move to ...
   3141 	* testsuite/std/time/parse/parse.cc: ... here.
   3142 	* testsuite/std/time/parse/114279.cc: New test.
   3143 
   3144 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3145 
   3146 	* include/bits/chrono_io.h (_Parser::operator()): Use
   3147 	std::from_chars to parse fractional seconds.
   3148 
   3149 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3150 
   3151 	PR libstdc++/114244
   3152 	* include/bits/chrono_io.h (_Parser::operator()): Remove
   3153 	redundant uses of duration_cast. Use chrono::round to convert
   3154 	long double value to durations with integer representations.
   3155 	Check represenation type when deciding whether to skip parsing
   3156 	fractional seconds.
   3157 	* testsuite/20_util/duration/114244.cc: New test.
   3158 	* testsuite/20_util/duration/io.cc: Check that a floating-point
   3159 	duration with ratio<1> precision can be parsed.
   3160 
   3161 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3162 
   3163 	PR libstdc++/114103
   3164 	* include/bits/version.def (atomic_lock_free_type_aliases): Add
   3165 	extra_cond to check for at least one always-lock-free type.
   3166 	* include/bits/version.h: Regenerate.
   3167 	* include/std/atomic (atomic_signed_lock_free)
   3168 	(atomic_unsigned_lock_free): Only use always-lock-free types.
   3169 	* src/c++20/tzdb.cc (time_zone::_Impl::RulesCounter): Don't use
   3170 	atomic counter if lock-free aliases aren't available.
   3171 	* testsuite/29_atomics/atomic/lock_free_aliases.cc: XFAIL for
   3172 	targets without lock-free word-size compare_exchange.
   3173 
   3174 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3175 
   3176 	* include/std/chrono (__get_leap_second_info): Update expiry
   3177 	time for hardcoded list of leap seconds.
   3178 	* testsuite/std/time/tzdb/leap_seconds.cc: Update comment.
   3179 
   3180 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3181 
   3182 	* testsuite/23_containers/deque/allocator/default_init.cc: Use
   3183 	std::memset instead of __builtin_memset.
   3184 	* testsuite/23_containers/forward_list/allocator/default_init.cc:
   3185 	Likewise.
   3186 	* testsuite/23_containers/list/allocator/default_init.cc:
   3187 	Likewise.
   3188 	* testsuite/23_containers/map/allocator/default_init.cc:
   3189 	Likewise.
   3190 	* testsuite/23_containers/set/allocator/default_init.cc:
   3191 	Likewise.
   3192 	* testsuite/23_containers/unordered_map/allocator/default_init.cc:
   3193 	Likewise.
   3194 	* testsuite/23_containers/unordered_set/allocator/default_init.cc:
   3195 	Likewise.
   3196 	* testsuite/23_containers/vector/allocator/default_init.cc:
   3197 	Likewise.
   3198 	* testsuite/23_containers/vector/bool/allocator/default_init.cc:
   3199 	Likewise.
   3200 	* testsuite/29_atomics/atomic/compare_exchange_padding.cc:
   3201 	Likewise.
   3202 	* testsuite/util/atomic/wait_notify_util.h: Likewise.
   3203 
   3204 2024-03-07  Jonathan Wakely  <jwakely (a] redhat.com>
   3205 
   3206 	* include/std/format (_Arg_store::_S_make_elt): Add two
   3207 	static_assert checks to give more user-friendly error messages.
   3208 	* testsuite/lib/prune.exp (libstdc++-dg-prune): Prune another
   3209 	form of "in requirements with" note.
   3210 	* testsuite/std/format/arguments/args_neg.cc: Check for
   3211 	user-friendly diagnostics for non-formattable types.
   3212 	* testsuite/std/format/string_neg.cc: Likewise.
   3213 
   3214 2024-03-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3215 
   3216 	PR libstdc++/114147
   3217 	* include/std/tuple (tuple::tuple(allocator_arg_t, const Alloc&)):
   3218 	Add missing overload of allocator-extended default constructor.
   3219 	(tuple<T1,T2>::tuple(allocator_arg_t, const Alloc&)): Likewise.
   3220 	* testsuite/20_util/tuple/cons/114147.cc: New test.
   3221 
   3222 2024-02-29  Jonathan Wakely  <jwakely (a] redhat.com>
   3223 
   3224 	* include/std/format (basic_format_arg::handle::__maybe_const_t):
   3225 	Fix condition to check if const type is formattable.
   3226 	(basic_format_arg::handle::handle(T&)): Remove redundant
   3227 	static_assert.
   3228 	* testsuite/std/format/formatter/basic.cc: New test.
   3229 
   3230 2024-02-29  Jonathan Wakely  <jwakely (a] redhat.com>
   3231 
   3232 	PR libstdc++/113960
   3233 	* include/bits/stl_algobase.h (__is_byte_iter): Replace with ...
   3234 	(__memcmp_ordered_with): New concept.
   3235 	(lexicographical_compare_three_way): Use __memcmp_ordered_with
   3236 	instead of __is_byte_iter. Use correct length for memcmp.
   3237 	* testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc:
   3238 	New test.
   3239 
   3240 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3241 
   3242 	PR libstdc++/114152
   3243 	* include/experimental/scope (scope_exit scope_fail): Make
   3244 	destructor unconditionally noexcept.
   3245 	(scope_sucess): Fix noexcept-specifier.
   3246 	* testsuite/experimental/scopeguard/114152.cc: New test.
   3247 
   3248 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3249 
   3250 	* doc/xml/manual/appendix_contributing.xml: Change URLs to use
   3251 	https.
   3252 	* doc/html/manual/*: Regenerate.
   3253 
   3254 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3255 
   3256 	* doc/xml/manual/appendix_contributing.xml: Replace outdated
   3257 	info on ChangeLog entries.
   3258 	* doc/html/manual/appendix_contributing.html: Regenerate.
   3259 
   3260 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3261 
   3262 	* include/bits/stl_bvector.h (vector<bool, A>::at): Add
   3263 	nodiscard.
   3264 	* include/bits/stl_vector.h (vector<T, A>::at): Likewise.
   3265 	(operator==, operator<=>, operator<, operator!=, operator>)
   3266 	(operator<=, operator>=): Likewise.
   3267 	* include/debug/vector (operator==, operator<=>, operator<)
   3268 	(operator!=, operator>, operator<=, operator>=): Likewise.
   3269 	* testsuite/23_containers/vector/nodiscard.cc: New test.
   3270 
   3271 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3272 
   3273 	* include/bits/atomic_base.h (operator|, operator&): Add
   3274 	noexcept.
   3275 	* include/bits/fs_fwd.h (operator&, operator|, operator^)
   3276 	(operator~): Add nodiscard to overloads for copy_options, perms,
   3277 	perm_options, and directory_options.
   3278 	* include/bits/ios_base.h (operator&, operator|, operator^)
   3279 	(operator~): Add nodiscard and noexcept to overloads for
   3280 	_Ios_Fmtflags, _Ios_Openmode, and _Ios_Iostate.
   3281 	(operator|=, operator&=, operator^=): Add constexpr for C++14.
   3282 	* include/bits/regex_constants.h (operator&, operator|, operator^)
   3283 	(operator~): Add nodiscard and noexcept to overloads for
   3284 	syntax_option_type and match_flag_type.
   3285 	(operator|=, operator&=, operator^=): Add noexcept.
   3286 	* include/std/charconv (operator&, operator|, operator^)
   3287 	(operator~): Add nodiscard to overloads for chars_format.
   3288 	* include/std/future (operator&, operator|, operator^)
   3289 	(operator~): Add nodiscard for overloads for launch.
   3290 	(operator&=, operator|=, operator^=): Add constexpr for C++14.
   3291 	* include/experimental/bits/fs_fwd.h  (operator&, operator|)
   3292 	(operator^, operator~): Add nodiscard to overloads for
   3293 	copy_options, perms, and directory_options.
   3294 	* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc:
   3295 	Add dg-warning for nodiscard warnings.
   3296 	* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc:
   3297 	Likewise.
   3298 	* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc:
   3299 	Likewise.
   3300 	* testsuite/27_io/filesystem/operations/bitmask_types.cc:
   3301 	New test.
   3302 
   3303 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3304 
   3305 	* testsuite/27_io/basic_ostream/print/1.cc: Check error
   3306 	handling.
   3307 	* testsuite/27_io/print/1.cc: Likewise.
   3308 
   3309 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3310 
   3311 	* include/std/ostream (vprint_unicode) [__CYGWIN__]: Use POSIX
   3312 	code path for Cygwin instead of Windows.
   3313 	* include/std/print (vprint_unicode) [__CYGWIN__]: Likewise.
   3314 	* testsuite/27_io/basic_ostream/print/1.cc: Only add -lstdc++exp
   3315 	for *-*-mingw* targets.
   3316 	* testsuite/27_io/print/1.cc: Likewise.
   3317 
   3318 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3319 
   3320 	* include/bits/alloc_traits.h: Include <bits/stl_iterator.h> for
   3321 	__make_move_if_noexcept_iterator.
   3322 
   3323 2024-02-28  Jonathan Wakely  <jwakely (a] redhat.com>
   3324 
   3325 	* include/std/stacktrace: Add nodiscard attribute to all
   3326 	functions without side effects.
   3327 
   3328 2024-02-20  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3329 
   3330 	* include/bits/stl_algobase.h (std::__niter_wrap): Add a call to
   3331 	std::__niter_base on res iterator.
   3332 
   3333 2024-02-19  Iain Sandoe  <iain (a] sandoe.co.uk>
   3334 	    Jonathan Wakely  <jwakely (a] redhat.com>
   3335 
   3336 	PR target/112397
   3337 	* configure: Regenerate.
   3338 	* configure.ac: Detect if we are building for Darwin.
   3339 	* libsupc++/Makefile.am: If we are building for Darwin, then
   3340 	suppress hot/cold partitioning for the array allocators.
   3341 	* libsupc++/Makefile.in: Regenerated.
   3342 
   3343 2024-02-17  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3344 
   3345 	* include/bits/stl_algobase.h (std::__niter_base): Redefine the overload
   3346 	definitions for __gnu_debug::_Safe_iterator.
   3347 	* include/debug/safe_iterator.tcc (std::__niter_base): Adapt declarations.
   3348 
   3349 2024-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   3350 
   3351 	PR libstdc++/87744
   3352 	PR libstdc++/113961
   3353 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   3354 	line number.
   3355 
   3356 2024-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   3357 
   3358 	PR libstdc++/87744
   3359 	PR libstdc++/113931
   3360 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   3361 	line number.
   3362 
   3363 2024-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   3364 
   3365 	* doc/xml/manual/debug_mode.xml: Update docs for backtraces.
   3366 	* doc/html/manual/debug_mode_using.html: Regenerate.
   3367 
   3368 2024-02-16  Jonathan Wakely  <jwakely (a] redhat.com>
   3369 
   3370 	* doc/xml/manual/test.xml: Fix spelling of <envar> elements.
   3371 	* doc/html/manual/test.html: Regenerate.
   3372 
   3373 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3374 
   3375 	PR libstdc++/113806
   3376 	* include/std/bitset (bitset::operator>>=): Remove redundant
   3377 	call to _M_do_sanitize.
   3378 
   3379 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3380 
   3381 	PR libstdc++/113807
   3382 	* include/std/bitset (bitset::set()): Use memset instead of a
   3383 	loop over the individual words.
   3384 
   3385 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3386 
   3387 	PR libstdc++/113811
   3388 	* include/bits/stl_algo.h (__rotate): Use unsigned values for
   3389 	division.
   3390 
   3391 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3392 
   3393 	PR libstdc++/99117
   3394 	* include/std/valarray (valarray::operator=(const _Expr&)):
   3395 	Use loop to copy instead of __valarray_copy with _Array.
   3396 	* testsuite/26_numerics/valarray/99117.cc: New test.
   3397 
   3398 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3399 
   3400 	* src/c++20/tzdata.zi: Import new file from 2024a release.
   3401 	* src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds)
   3402 	Update expiry date for leap seconds list.
   3403 
   3404 2024-02-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3405 
   3406 	PR libstdc++/87744
   3407 	* include/bits/random.h [!__SIZEOF_INT128__] (_Select_uint_least_t):
   3408 	Define specialization for 64-bit generators with
   3409 	non-power-of-two modulus and large constants.
   3410 	(__mod): Use if constexpr unconditionally.
   3411 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   3412 	line number.
   3413 	* testsuite/26_numerics/random/linear_congruential_engine/87744.cc:
   3414 	New test.
   3415 
   3416 2024-02-14  Gerald Pfeifer  <gerald (a] pfeifer.com>
   3417 
   3418 	* doc/xml/manual/status_cxx2023.xml: Fix C++ item p2442 to be
   3419 	version 1.
   3420 	* doc/html/manual/status.html: Regenerate.
   3421 
   3422 2024-02-12  Paul Keir  <paul.keir (a] uws.ac.uk>
   3423 
   3424 	PR libstdc++/113294
   3425 	* include/bits/basic_string.h (basic_string::operator=): Use
   3426 	_M_use_local_data() instead of _M_local_buf on the moved-from
   3427 	string.
   3428 	* testsuite/21_strings/basic_string/modifiers/constexpr.cc
   3429 	(test_move): New test.
   3430 
   3431 2024-02-09  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   3432 
   3433 	* include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_IS_SAME):
   3434 	Removed.
   3435 	* include/std/type_traits (is_same): Use
   3436 	_GLIBCXX_USE_BUILTIN_TRAIT instead of
   3437 	_GLIBCXX_HAVE_BUILTIN_IS_SAME.
   3438 	(is_same_v): Likewise.
   3439 
   3440 2024-02-08  Jonathan Wakely  <jwakely (a] redhat.com>
   3441 
   3442 	* include/bits/shared_ptr_atomic.h: Fix typo in comment.
   3443 
   3444 2024-02-08  Jonathan Wakely  <jwakely (a] redhat.com>
   3445 
   3446 	PR libstdc++/100147
   3447 	* include/bits/gslice.h (operator=): Add comment about lack of
   3448 	self-assignment check.
   3449 
   3450 2024-02-08  Jonathan Wakely  <jwakely (a] redhat.com>
   3451 
   3452 	* include/tr2/type_traits (bases, direct_bases): Use
   3453 	__has_builtin to check if required built-ins are supported.
   3454 
   3455 2024-02-07  Patrick Palka  <ppalka (a] redhat.com>
   3456 
   3457 	PR testsuite/113710
   3458 	PR c++/113814
   3459 	* include/bits/stl_pair.h (tuple_element): Add forward
   3460 	declaration of the partial specialization for tuple.
   3461 
   3462 2024-02-06  Torbjrn SVENSSON  <torbjorn.svensson (a] foss.st.com>
   3463 
   3464 	* testsuite/lib/libstdc++.exp: Use "nul" for Windows, "/dev/null"
   3465 	for other environments.
   3466 
   3467 2024-02-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3468 
   3469 	* include/std/format (__format::_Spec::_M_reserved): Define new
   3470 	bit-field members to reserve padding bits for future extensions.
   3471 
   3472 2024-02-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3473 
   3474 	* src/experimental/Makefile.am: Use libstdc++fsconvenience.a
   3475 	instead of libstdc++fs.a.
   3476 	* src/experimental/Makefile.in: Regenerate.
   3477 	* src/filesystem/Makefile.am: Build libstdc++fsconvenience.a as
   3478 	well.
   3479 	* src/filesystem/Makefile.in: Regenerate.
   3480 
   3481 2024-02-04  Jonathan Wakely  <jwakely (a] redhat.com>
   3482 
   3483 	* include/bits/text_encoding-data.h: Regenerate.
   3484 	* include/bits/unicode-data.h: Regenerate.
   3485 	* scripts/gen_text_encoding_data.py: Add copyright and license
   3486 	text to the output.
   3487 
   3488 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3489 
   3490 	PR libstdc++/113335
   3491 	* include/bits/std_function.h (__function_guide_helper): Add
   3492 	partial specialization for explicit object member functions, as
   3493 	per LWG 3617.
   3494 	* testsuite/20_util/function/cons/deduction_c++23.cc: Check
   3495 	explicit object member functions.
   3496 	* testsuite/30_threads/packaged_task/cons/deduction_c++23.cc:
   3497 	Likewise.
   3498 
   3499 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3500 
   3501 	* testsuite/17_intro/names.cc [_AIX]: Undefine "u".
   3502 
   3503 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3504 
   3505 	* include/experimental/internet (network_v6::network): Define.
   3506 	(network_v6::hosts): Finish implementing.
   3507 	(network_v6::to_string): Do not concatenate std::string to
   3508 	arbitrary std::basic_string specialization.
   3509 	* testsuite/experimental/net/internet/network/v6/cons.cc: New
   3510 	test.
   3511 
   3512 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3513 
   3514 	PR libstdc++/90276
   3515 	* testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc: Fix
   3516 	comparison function to use less-than instead of equality.
   3517 
   3518 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3519 
   3520 	PR libstdc++/90276
   3521 	* testsuite/util/pstl/test_utils.h (reverse_invoker): Do not use
   3522 	perfect forwarding for iterator arguments.
   3523 
   3524 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3525 
   3526 	* include/std/string_view (basic_string_view(R&&)): Remove
   3527 	constraint that traits_type must be the same, as per LWG 3857.
   3528 	* testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc:
   3529 	Explicit conversion between different specializations should be
   3530 	allowed.
   3531 	* testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc:
   3532 	Likewise.
   3533 
   3534 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3535 
   3536 	* include/std/syncstream (basic_osyncstream::operator=): Remove
   3537 	noexcept, as per LWG 3867.
   3538 
   3539 2024-02-02  Jonathan Wakely  <jwakely (a] redhat.com>
   3540 
   3541 	* include/std/generator (promise_type::yield_value): Remove
   3542 	noexcept from fourth overload, as per LWG 3894.
   3543 
   3544 2024-02-01  Patrick Palka  <ppalka (a] redhat.com>
   3545 
   3546 	PR libstdc++/113309
   3547 	PR libstdc++/109203
   3548 	* include/bits/ranges_util.h (__detail::__pair_like): Don't
   3549 	define in C++23 mode.
   3550 	(__detail::__pair_like_convertible_from): Adjust as per P2165R4.
   3551 	(__detail::__is_subrange<subrange>): Moved from <ranges>.
   3552 	(__detail::__is_tuple_like_v<subrange>): Likewise.
   3553 	* include/bits/stl_iterator.h: Include <bits/utility.h> for
   3554 	C++23.
   3555 	(__different_from): Move to <concepts>.
   3556 	(__iter_key_t): Adjust for C++23 as per P2165R4.
   3557 	(__iter_val_t): Likewise.
   3558 	* include/bits/stl_pair.h (pair, array): Forward declare.
   3559 	(get): Forward declare all overloads relevant to P2165R4
   3560 	tuple-like constructors.
   3561 	(__is_tuple_v): Define for C++23.
   3562 	(__is_tuple_like_v): Define for C++23.
   3563 	(__tuple_like): Define for C++23 as per P2165R4.
   3564 	(__pair_like): Define for C++23 as per P2165R4.
   3565 	(__eligibile_tuple_like): Define for C++23.
   3566 	(__eligibile_pair_like): Define for C++23.
   3567 	(pair::_S_constructible_from_pair_like): Define for C++23.
   3568 	(pair::_S_convertible_from_pair_like): Define for C++23.
   3569 	(pair::_S_dangles_from_pair_like): Define for C++23.
   3570 	(pair::pair): Define overloads taking a tuple-like type for
   3571 	C++23 as per P2165R4.
   3572 	(pair::_S_assignable_from_tuple_like): Define for C++23.
   3573 	(pair::_S_const_assignable_from_tuple_like): Define for C++23.
   3574 	(pair::operator=): Define overloads taking a tuple-like type for
   3575 	C++23 as per P2165R4.
   3576 	* include/bits/utility.h (ranges::__detail::__is_subrange):
   3577 	Moved from <ranges>.
   3578 	* include/bits/version.def (tuple_like): Define for C++23.
   3579 	* include/bits/version.h: Regenerate.
   3580 	* include/std/concepts (__different_from): Moved from
   3581 	<bits/stl_iterator.h>.
   3582 	(ranges::__swap::__adl_swap): Clarify which __detail namespace.
   3583 	* include/std/map (__cpp_lib_tuple_like): Define C++23.
   3584 	* include/std/ranges (__detail::__is_subrange): Moved to
   3585 	<bits/utility.h>.
   3586 	(__detail::__is_subrange<subrange>): Moved to <bits/ranges_util.h>
   3587 	(__detail::__has_tuple_element): Adjust for C++23 as per P2165R4.
   3588 	(__detail::__tuple_or_pair): Remove as per P2165R4.  Replace all
   3589 	uses with plain tuple as per P2165R4.
   3590 	* include/std/tuple (__cpp_lib_tuple_like): Define for C++23.
   3591 	(__tuple_like_tag_t): Define for C++23.
   3592 	(__tuple_cmp): Forward declare for C++23.
   3593 	(_Tuple_impl::_Tuple_impl): Define overloads taking
   3594 	__tuple_like_tag_t and a tuple-like type for C++23.
   3595 	(_Tuple_impl::_M_assign): Likewise.
   3596 	(tuple::__constructible_from_tuple_like): Define for C++23.
   3597 	(tuple::__convertible_from_tuple_like): Define for C++23.
   3598 	(tuple::__dangles_from_tuple_like): Define for C++23.
   3599 	(tuple::tuple): Define overloads taking a tuple-like type for
   3600 	C++23 as per P2165R4.
   3601 	(tuple::__assignable_from_tuple_like): Define for C++23.
   3602 	(tuple::__const_assignable_from_tuple_like): Define for C++23.
   3603 	(tuple::operator=): Define overloads taking a tuple-like type
   3604 	for C++23 as per P2165R4.
   3605 	(tuple::__tuple_like_common_comparison_category): Define for C++23.
   3606 	(tuple::operator<=>): Define overload taking a tuple-like type
   3607 	for C++23 as per P2165R4.
   3608 	(array, get): Forward declarations moved to <bits/stl_pair.h>.
   3609 	(tuple_cat): Constrain with __tuple_like for C++23 as per P2165R4.
   3610 	(apply): Likewise.
   3611 	(make_from_tuple): Likewise.
   3612 	(__tuple_like_common_reference): Define for C++23.
   3613 	(basic_common_reference): Adjust as per P2165R4.
   3614 	(__tuple_like_common_type): Define for C++23.
   3615 	(common_type): Adjust as per P2165R4.
   3616 	* include/std/unordered_map (__cpp_lib_tuple_like): Define for
   3617 	C++23.
   3618 	* include/std/utility (__cpp_lib_tuple_like): Define for C++23.
   3619 	* testsuite/std/ranges/zip/1.cc (test01): Adjust to handle pair
   3620 	and 2-tuple interchangeably.
   3621 	(test05): New test.
   3622 	* testsuite/20_util/pair/p2165r4.cc: New test.
   3623 	* testsuite/20_util/tuple/p2165r4.cc: New test.
   3624 
   3625 2024-02-01  Patrick Palka  <ppalka (a] redhat.com>
   3626 
   3627 	* include/bits/stl_pair.h (pair::_S_const_assignable): Define,
   3628 	factored out from ...
   3629 	(pair::operator=): ... the constraints of the const overloads.
   3630 
   3631 2024-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3632 
   3633 	* include/bits/version.tpl: Do not use def-file-line for each
   3634 	macro being defined.
   3635 	* include/bits/version.h: Regenerate.
   3636 
   3637 2024-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3638 
   3639 	* testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Adjust
   3640 	dg-error pattern.
   3641 	* testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc:
   3642 	Likewise.
   3643 	* testsuite/25_algorithms/equal/debug/constexpr_neg.cc:
   3644 	Likewise.
   3645 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc:
   3646 	Likewise.
   3647 	* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc:
   3648 	Likewise.
   3649 	* testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc:
   3650 	Likewise.
   3651 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc:
   3652 	Likewise.
   3653 	* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc:
   3654 	Likewise.
   3655 	* testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc:
   3656 	Likewise.
   3657 
   3658 2024-02-01  Jonathan Wakely  <jwakely (a] redhat.com>
   3659 
   3660 	* include/experimental/internet (network_v4::to_string()):
   3661 	Remove lambda and use of resize_and_overwrite.
   3662 
   3663 2024-01-31  Jonathan Wakely  <jwakely (a] redhat.com>
   3664 
   3665 	* acinclude.m4 (GLIBCXX_CHECK_TEXT_ENCODING): Use <xlocale.h> if
   3666 	needed for newlocale.
   3667 	* configure: Regenerate.
   3668 	* src/c++26/text_encoding.cc: Use <xlocale.h>.
   3669 
   3670 2024-01-31  Jonathan Wakely  <jwakely (a] redhat.com>
   3671 	    Ewan Higgs  <ewan.higgs (a] gmail.com>
   3672 
   3673 	* include/bits/text_encoding-data.h: Regenerate.
   3674 	* scripts/gen_text_encoding_data.py: Add extra_aliases dict
   3675 	containing "ASCII".
   3676 	* testsuite/std/text_encoding/cons.cc: Check "ascii" is known.
   3677 
   3678 2024-01-31  Jonathan Wakely  <jwakely (a] redhat.com>
   3679 
   3680 	* doc/xml/manual/using.xml: Update tables of supported headers.
   3681 	* doc/html/*: Regenerate.
   3682 
   3683 2024-01-31  Jonathan Wakely  <jwakely (a] redhat.com>
   3684 
   3685 	* include/std/bitset (_Base_bitset::_M_do_to_ullong): Avoid
   3686 	-Wshift-count-overflow warning.
   3687 
   3688 2024-01-30  Jonathan Wakely  <jwakely (a] redhat.com>
   3689 
   3690 	* testsuite/std/time/clock/gps/io.cc: Fix expected result in
   3691 	assertion and call test_format() from main.
   3692 
   3693 2024-01-29  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3694 
   3695 	* doc/xml/manual/debug_mode.xml: Link against libstdc++exp.a to use
   3696 	_GLIBCXX_DEBUG_BACKTRACE macro.
   3697 
   3698 2024-01-24  Huanghui Nie  <nnnjkk (a] gmail.com>
   3699 	    Tho Papadopoulo   <papadopoulo (a] gmail.com>
   3700 
   3701 	* include/bits/hashtable.h (_Hahstable<>::_M_remove_bucket_begin): Remove
   3702 	_M_before_begin check and cleanup implementation.
   3703 
   3704 2024-01-22  Jonathan Wakely  <jwakely (a] redhat.com>
   3705 
   3706 	* testsuite/std/time/clock/file/io.cc: Fix expected result in
   3707 	assertion and call test_format() from main.
   3708 
   3709 2024-01-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3710 
   3711 	PR libstdc++/113500
   3712 	* include/bits/chrono_io.h (__formatter_chrono::_M_S): Fix
   3713 	printing of subseconds with floating-point rep.
   3714 	(__formatter_chrono::_M_format_to_ostream): Do not write
   3715 	time_point specializations directly to the ostream.
   3716 	(formatter<chrono::sys_time<D>, C>::parse): Do not allow an
   3717 	empty chrono-spec if the type fails to meet the constraints for
   3718 	writing to an ostream with operator<<.
   3719 	* testsuite/std/time/clock/file/io.cc: Check formatting
   3720 	non-integral times with empty chrono-specs.
   3721 	* testsuite/std/time/clock/gps/io.cc: Likewise.
   3722 	* testsuite/std/time/clock/utc/io.cc: Likewise.
   3723 	* testsuite/std/time/hh_mm_ss/io.cc: Likewise.
   3724 
   3725 2024-01-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3726 
   3727 	* include/bits/chrono.h (__file_clock::from_sys)
   3728 	(__file_clock::to_sys, __file_clock::_S_from_sys)
   3729 	(__file_clock::_S_to_sys): Use common_type for return type.
   3730 	* testsuite/std/time/clock/file/members.cc: Check round trip
   3731 	conversion for time with lower precision that seconds.
   3732 
   3733 2024-01-21  Jonathan Wakely  <jwakely (a] redhat.com>
   3734 
   3735 	PR libstdc++/113512
   3736 	* include/std/format (__formatter_fp::format): Fix logic for
   3737 	alternate forms.
   3738 	* testsuite/std/format/functions/format.cc: Check buggy cases of
   3739 	alternate forms with g presentation type.
   3740 
   3741 2024-01-20  Marek Polacek  <polacek (a] redhat.com>
   3742 
   3743 	PR c++/111410
   3744 	* include/std/ranges: Add #pragma to disable -Wdangling-reference with
   3745 	std::ranges::views::__adaptor::operator|.
   3746 
   3747 2024-01-19  Jonathan Wakely  <jwakely (a] redhat.com>
   3748 
   3749 	* include/std/format (_Spec::_M_parse_fill_and_align): Do not
   3750 	use CTAD for _Utf32_view.
   3751 
   3752 2024-01-19  Jonathan Wakely  <jwakely (a] redhat.com>
   3753 
   3754 	PR libstdc++/108822
   3755 	* include/std/tuple (__glibcxx_no_dangling_refs) [C++17]: Fix
   3756 	wrong fold-operator.
   3757 	* testsuite/20_util/tuple/dangling_ref.cc: Check tuples with one
   3758 	element and three elements. Check allocator-extended
   3759 	constructors.
   3760 
   3761 2024-01-19  Patrick Palka  <ppalka (a] redhat.com>
   3762 
   3763 	* include/precompiled/stdc++.h [_GLIBCXX_HOSTED]: Include
   3764 	<print> and <text_encoding> for C++23 and C++26 respectively.
   3765 
   3766 2024-01-18  Patrick Palka  <ppalka (a] redhat.com>
   3767 
   3768 	* include/bits/stl_pair.h [__cplusplus > 202002L]:
   3769 	Guard P2321R2 changes with __glibcxx_ranges_zip instead.
   3770 
   3771 2024-01-18  Patrick Palka  <ppalka (a] redhat.com>
   3772 
   3773 	* include/std/tuple [__cplusplus > 202002L]: Guard P2321R2
   3774 	changes with __cpp_lib_ranges_zip instead.
   3775 
   3776 2024-01-18  Patrick Palka  <ppalka (a] redhat.com>
   3777 
   3778 	PR libstdc++/109536
   3779 	* include/debug/safe_base.h (_Safe_sequence_base::_M_swap):
   3780 	Remove _GLIBCXX20_CONSTEXPR from non-inline member function.
   3781 	* include/debug/safe_iterator.h
   3782 	(_GLIBCXX20_CONSTEXPR_NON_LITERAL_SCOPE_BEGIN): Define.
   3783 	(_GLIBCXX20_CONSTEXPR_NON_LITERAL_SCOPE_END): Define.
   3784 	(_Safe_iterator::operator=): Use them around the code path that
   3785 	defines a variable of type __gnu_cxx::__scoped_lock.
   3786 	(_Safe_iterator::operator++): Likewise.
   3787 	(_Safe_iterator::operator--): Likewise.
   3788 	(_Safe_iterator::operator+=): Likewise.
   3789 	(_Safe_iterator::operator-=): Likewise.
   3790 	* testsuite/23_containers/vector/element_access/constexpr.cc
   3791 	(test_iterators): Test more iterator operations.
   3792 	* testsuite/23_containers/vector/bool/element_access/constexpr.cc
   3793 	(test_iterators): Likewise.
   3794 	* testsuite/std/ranges/adaptors/all.cc (test08) [_GLIBCXX_DEBUG]:
   3795 	Remove.
   3796 
   3797 2024-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3798 
   3799 	* include/bits/unicode.h (__charset_alias_match): Initialize
   3800 	__var_a and __var_b.
   3801 
   3802 2024-01-18  Jonathan Wakely  <jwakely (a] redhat.com>
   3803 
   3804 	PR libstdc++/113450
   3805 	* testsuite/std/format/functions/format.cc: Use signed char
   3806 	instead of int8_t.
   3807 
   3808 2024-01-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3809 
   3810 	PR libstdc++/113318
   3811 	* acinclude.m4 (GLIBCXX_CONFIGURE): Add c++26 directory.
   3812 	(GLIBCXX_CHECK_TEXT_ENCODING): Define.
   3813 	* config.h.in: Regenerate.
   3814 	* configure: Regenerate.
   3815 	* configure.ac: Use GLIBCXX_CHECK_TEXT_ENCODING.
   3816 	* include/Makefile.am: Add new headers.
   3817 	* include/Makefile.in: Regenerate.
   3818 	* include/bits/locale_classes.h (locale::encoding): Declare new
   3819 	member function.
   3820 	* include/bits/unicode.h (__charset_alias_match): New function.
   3821 	* include/bits/text_encoding-data.h: New file.
   3822 	* include/bits/version.def (text_encoding): Define.
   3823 	* include/bits/version.h: Regenerate.
   3824 	* include/std/text_encoding: New file.
   3825 	* src/Makefile.am: Add new subdirectory.
   3826 	* src/Makefile.in: Regenerate.
   3827 	* src/c++26/Makefile.am: New file.
   3828 	* src/c++26/Makefile.in: New file.
   3829 	* src/c++26/text_encoding.cc: New file.
   3830 	* src/experimental/Makefile.am: Include c++26 convenience
   3831 	library.
   3832 	* src/experimental/Makefile.in: Regenerate.
   3833 	* python/libstdcxx/v6/printers.py (StdTextEncodingPrinter): New
   3834 	printer.
   3835 	* scripts/gen_text_encoding_data.py: New file.
   3836 	* testsuite/22_locale/locale/encoding.cc: New test.
   3837 	* testsuite/ext/unicode/charset_alias_match.cc: New test.
   3838 	* testsuite/std/text_encoding/cons.cc: New test.
   3839 	* testsuite/std/text_encoding/members.cc: New test.
   3840 	* testsuite/std/text_encoding/requirements.cc: New test.
   3841 
   3842 2024-01-17  Jonathan Wakely  <jwakely (a] redhat.com>
   3843 
   3844 	* include/bits/unicode.h (_Grapheme_cluster_view): Require view.
   3845 	Do not use CTAD for _Utf32_view.
   3846 	(__format_width, __truncate): Do not use CTAD.
   3847 	(enable_borrowed_range<_Utf_view<T, R>>): Define specialization.
   3848 	(enable_borrowed_range<_Grapheme_cluster_view<R>>): Likewise.
   3849 
   3850 2024-01-17  Patrick Palka  <ppalka (a] redhat.com>
   3851 
   3852 	* include/std/ranges (views::_CartesianProduct::operator()):
   3853 	Adjust identity case as per P2540R1.
   3854 	* testsuite/std/ranges/cartesian_product/1.cc (test01):
   3855 	Adjust expected result of the identity case.
   3856 
   3857 2024-01-15  Patrick Palka  <ppalka (a] redhat.com>
   3858 
   3859 	* include/std/variant (__detail::__variant::_Variadic_union):
   3860 	Add bool __trivially_destructible template parameter.
   3861 	(__detail::__variant::_Variadic_union::~_Variadic_union):
   3862 	Use __trivially_destructible in constraints instead.
   3863 	(__detail::__variant::_Variant_storage): Pass
   3864 	__trivially_destructible value to _Variadic_union.
   3865 
   3866 2024-01-15  Patrick Palka  <ppalka (a] redhat.com>
   3867 
   3868 	* include/bits/stl_iterator.h (const_iterator): Define conversion
   3869 	operators as per P2836R1.
   3870 	* include/bits/version.def (ranges_as_const): Update value.
   3871 	* include/bits/version.h: Regenerate.
   3872 	* testsuite/24_iterators/const_iterator/1.cc (test04): New test.
   3873 	* testsuite/std/ranges/adaptors/as_const/1.cc: Adjust expected
   3874 	value of __cpp_lib_ranges_as_const.
   3875 	* testsuite/std/ranges/version_c++23.cc: Likewise.
   3876 
   3877 2024-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3878 
   3879 	PR libstdc++/108822
   3880 	* include/std/tuple (__assignable, __is_nothrow_assignable):
   3881 	Move pre-C++20 definitions adjacent to their use.
   3882 
   3883 2024-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3884 
   3885 	PR testsuite/113366
   3886 	* include/std/format (basic_format_arg): Use __formattable
   3887 	variable template instead of __format::__formattable_with
   3888 	concept.
   3889 
   3890 2024-01-15  Jonathan Wakely  <jwakely (a] redhat.com>
   3891 
   3892 	* src/c++20/tzdata.zi: Import new file from 2023d release.
   3893 	* src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds)
   3894 	Update expiry date for leap seconds list.
   3895 
   3896 2024-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3897 
   3898 	PR libstdc++/108822
   3899 	* include/std/tuple (tuple): Add checks for dangling references.
   3900 	Reimplement constraints and constant expressions using C++20
   3901 	features.
   3902 	* include/std/type_traits [C++20]
   3903 	(__is_implicitly_default_constructible_v): Define.
   3904 	(__is_implicitly_default_constructible): Use variable template.
   3905 	* testsuite/20_util/tuple/dangling_ref.cc: New test.
   3906 
   3907 2024-01-13  Patrick Palka  <ppalka (a] redhat.com>
   3908 
   3909 	PR libstdc++/108827
   3910 	PR libstdc++/111327
   3911 	* include/bits/version.def (bind_back): Define.
   3912 	* include/bits/version.h: Regenerate.
   3913 	* include/std/functional (_Bind_back): Define for C++23.
   3914 	(bind_back): Likewise.
   3915 	* testsuite/20_util/function_objects/bind_back/1.cc: New test
   3916 	(adapted from corresponding bind_front test).
   3917 	* testsuite/20_util/function_objects/bind_back/111327.cc: Likewise.
   3918 
   3919 2024-01-13  Patrick Palka  <ppalka (a] redhat.com>
   3920 
   3921 	* include/std/functional (_Bind_front): Remove =default special
   3922 	member function declarations.
   3923 	(_Bind_front::operator()): Implement using C++23 deducing this
   3924 	when available.
   3925 	* testsuite/20_util/function_objects/bind_front/111327.cc:
   3926 	Adjust testcase to expect better errors in C++23 mode.
   3927 
   3928 2024-01-13  Patrick Palka  <ppalka (a] redhat.com>
   3929 
   3930 	* include/std/ranges (views::__adaptor::operator|): Perform
   3931 	perfect forwarding of arguments.
   3932 	(views::__adaptor::_RangeAdaptor::operator()): Pass dummy
   3933 	first argument to _Partial.
   3934 	(views::__adaptor::_Partial::_Partial): Likewise.  Add dummy
   3935 	first parameter.
   3936 	(views::__adaptor::_Pipe::_Pipe): Perform perfect forwarding
   3937 	of arguments.
   3938 	(to): Pass dummy first argument to _Partial.
   3939 
   3940 2024-01-13  Jonathan Wakely  <jwakely (a] redhat.com>
   3941 
   3942 	PR libstdc++/107466
   3943 	* include/bits/random.tcc (subtract_with_carry_engine::seed):
   3944 	Implement proposed resolution of LWG 4014.
   3945 	* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
   3946 	line number.
   3947 	* testsuite/26_numerics/random/subtract_with_carry_engine/cons/lwg3809.cc:
   3948 	Check for expected result of 64-bit engine with seed that
   3949 	doesn't fit in 32-bits.
   3950 
   3951 2024-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   3952 
   3953 	PR libstdc++/113320
   3954 	* include/std/format (__format::_Runtime_format_string): Add
   3955 	constructor and disable copy operations.
   3956 	(basic_format_string(_Runtime_format_string)): Add noexcept and
   3957 	take parameter by value not rvalue reference.
   3958 	(runtime_format): Add noexcept.
   3959 	* testsuite/std/format/runtime_format.cc: Check noexcept. Check
   3960 	that construction is only possible from prvalues, not xvalues.
   3961 
   3962 2024-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   3963 
   3964 	PR libstdc++/105505
   3965 	* include/bits/stl_pair.h (pair::pair(U1&&, U2&&)) [C++23]: Add
   3966 	default template arguments, as per P1951R1.
   3967 	* testsuite/20_util/pair/cons/default_tmpl_args.cc: New test.
   3968 
   3969 2024-01-12  Jonathan Wakely  <jwakely (a] redhat.com>
   3970 
   3971 	* include/std/format (__format::_Arg_store): Fix PR number in
   3972 	comment. Simplify preprocessor code.
   3973 
   3974 2024-01-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3975 
   3976 	* doc/xml/manual/evolution.xml: Fix spelling.
   3977 	* doc/html/manual/api.html: Regenerate.
   3978 
   3979 2024-01-11  Jonathan Wakely  <jwakely (a] redhat.com>
   3980 
   3981 	* doc/xml/manual/evolution.xml: Document addition of
   3982 	libstdc++exp.a.
   3983 	* doc/html/*: Regenerate.
   3984 
   3985 2024-01-11  Marcus Haehnel  <marcus.haehnel (a] kernkonzept.com>
   3986 
   3987 	* libsupc++/eh_unex_handler.cc: Adjust definition type to
   3988 	declaration.
   3989 
   3990 2024-01-11  Michael Levine  <mlevine55 (a] bloomberg.net>
   3991 
   3992 	* include/std/ranges (__glibcxx_want_ranges_iota): Remove
   3993 	duplicate definition.
   3994 
   3995 2024-01-11  Franois Dumont  <fdumont (a] gcc.gnu.org>
   3996 
   3997 	PR libstdc++/112477
   3998 	* src/c++11/debug.cc
   3999 	(_Safe_iterator_base::_M_attach): Reset _M_version to 0 if attaching to null
   4000 	sequence.
   4001 	(_Safe_iterator_base::_M_attach_single): Likewise.
   4002 	(_Safe_local_iterator_base::_M_attach): Likewise.
   4003 	(_Safe_local_iterator_base::_M_attach_single): Likewise.
   4004 	* testsuite/23_containers/map/debug/112477.cc: New test case.
   4005 
   4006 2024-01-11  Patrick Palka  <ppalka (a] redhat.com>
   4007 
   4008 	* include/bits/move.h (__like_t): Define in C++23 mode.
   4009 	* include/std/ranges (views::__adaptor::Partial::operator()):
   4010 	Implement using C++23 deducing this when available.
   4011 	(views::__adaptor::_Pipe::operator()): Likewise.
   4012 	* testsuite/std/ranges/adaptors/100577.cc: Adjust testcase to
   4013 	accept new "no match for call" errors issued in C++23 mode.
   4014 	* testsuite/std/ranges/adaptors/lazy_split_neg.cc: Likewise.
   4015 
   4016 2024-01-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4017 
   4018 	* python/libstdcxx/v6/printers.py (StdIntegralConstantPrinter):
   4019 	Add printer for std::integral_constant.
   4020 	* testsuite/libstdc++-prettyprinters/cxx11.cc: Test it.
   4021 
   4022 2024-01-11  Jonathan Wakely  <jwakely (a] redhat.com>
   4023 
   4024 	PR libstdc++/113258
   4025 	* libsupc++/new_opa.cc: Prefer to use posix_memalign if
   4026 	available.
   4027 
   4028 2024-01-11  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   4029 
   4030 	* src/filesystem/ops-common.h (stat_type): Use using.
   4031 
   4032 2024-01-11  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   4033 
   4034 	PR libstdc++/113250
   4035 	* src/c++17/fs_ops.cc (fs::equivalent): Use || instead of &&.
   4036 	* src/filesystem/ops.cc (fs::equivalent): Likewise.
   4037 	* testsuite/27_io/filesystem/operations/equivalent.cc: Handle
   4038 	error codes.
   4039 	* testsuite/experimental/filesystem/operations/equivalent.cc:
   4040 	Likewise.
   4041 
   4042 2024-01-11  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   4043 
   4044 	* include/std/type_traits (is_compound): Do not use __not_.
   4045 	(is_compound_v): Use is_fundamental_v instead.
   4046 
   4047 2024-01-11  Patrick Palka  <ppalka (a] redhat.com>
   4048 
   4049 	* include/bits/utility.h (_Nth_type): Use
   4050 	_GLIBCXX_USE_BUILTIN_TRAIT instead of __has_builtin.
   4051 
   4052 2024-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4053 
   4054 	* include/bits/unicode-data.h: Regenerate.
   4055 	* include/bits/unicode.h (_Utf_iterator::operator++()): Fix off
   4056 	by one error.
   4057 	(__incb_property): Add missing check for values before the
   4058 	first edge.
   4059 	(__is_extended_pictographic): Invert return values to fix
   4060 	copy&pasted logic.
   4061 	(_Grapheme_cluster_view::_Iterator): Remove second iterator
   4062 	member and find end of cluster lazily.
   4063 	* testsuite/ext/unicode/grapheme_view.cc: New test.
   4064 	* testsuite/ext/unicode/properties.cc: New test.
   4065 	* testsuite/ext/unicode/view.cc: New test.
   4066 
   4067 2024-01-09  Andreas Schwab  <schwab (a] linux-m68k.org>
   4068 
   4069 	* scripts/extract_symvers.in: Require final colon to only match
   4070 	.dsynsym in the header of the dynamic symtab.
   4071 
   4072 2024-01-09  Jonathan Wakely  <jwakely (a] redhat.com>
   4073 
   4074 	* include/bits/chrono_io.h (__formatter_chrono::_M_F): Simplify
   4075 	handling of string returned from std::format.
   4076 	(__formatter_chrono::_M_R_T): Likewise.
   4077 
   4078 2024-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   4079 
   4080 	* include/bits/unicode.h (__null_sentinel): Remove.
   4081 	* testsuite/17_intro/names.cc: Add __null_sentinel.
   4082 
   4083 2024-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   4084 
   4085 	* include/std/format (__format::_Runtime_format_string): Define
   4086 	new class template.
   4087 	(basic_format_string): Add non-consteval constructor for runtime
   4088 	format strings.
   4089 	(runtime_format): Define new function for C++26.
   4090 	* testsuite/std/format/runtime_format.cc: New test.
   4091 
   4092 2024-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   4093 
   4094 	* include/bits/chrono_io.h (__formatter_chrono): Always use
   4095 	lvalue arguments to make_format_args.
   4096 	* include/std/format (make_format_args): Change parameter pack
   4097 	from forwarding references to lvalue references. Remove use of
   4098 	remove_reference_t which is now unnecessary.
   4099 	(format_to, formatted_size): Remove incorrect forwarding of
   4100 	arguments.
   4101 	* include/std/ostream (print): Remove forwarding of arguments.
   4102 	* include/std/print (print): Likewise.
   4103 	* testsuite/20_util/duration/io.cc: Use lvalues as arguments to
   4104 	make_format_args.
   4105 	* testsuite/std/format/arguments/args.cc: Likewise.
   4106 	* testsuite/std/format/arguments/lwg3810.cc: Likewise.
   4107 	* testsuite/std/format/functions/format.cc: Likewise.
   4108 	* testsuite/std/format/functions/vformat_to.cc: Likewise.
   4109 	* testsuite/std/format/string.cc: Likewise.
   4110 	* testsuite/std/time/day/io.cc: Likewise.
   4111 	* testsuite/std/time/month/io.cc: Likewise.
   4112 	* testsuite/std/time/weekday/io.cc: Likewise.
   4113 	* testsuite/std/time/year/io.cc: Likewise.
   4114 	* testsuite/std/time/year_month_day/io.cc: Likewise.
   4115 	* testsuite/std/format/arguments/args_neg.cc: New test.
   4116 
   4117 2024-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   4118 
   4119 	* include/Makefile.am: Add new headers.
   4120 	* include/Makefile.in: Regenerate.
   4121 	* include/bits/unicode.h: New file.
   4122 	* include/bits/unicode-data.h: New file.
   4123 	* include/std/format: Include <bits/unicode.h>.
   4124 	(__literal_encoding_is_utf8): Move to <bits/unicode.h>.
   4125 	(_Spec::_M_fill): Change type to char32_t.
   4126 	(_Spec::_M_parse_fill_and_align): Read a Unicode scalar value
   4127 	instead of a single character.
   4128 	(__write_padded): Change __fill_char parameter to char32_t and
   4129 	encode it into the output.
   4130 	(__formatter_str::format): Use new __unicode::__field_width and
   4131 	__unicode::__truncate functions.
   4132 	* include/std/ostream: Adjust namespace qualification for
   4133 	__literal_encoding_is_utf8.
   4134 	* include/std/print: Likewise.
   4135 	* src/c++23/print.cc: Add [[unlikely]] attribute to error path.
   4136 	* testsuite/ext/unicode/view.cc: New test.
   4137 	* testsuite/std/format/functions/format.cc: Add missing examples
   4138 	from the standard demonstrating alignment with non-ASCII
   4139 	characters. Add examples checking correct handling of extended
   4140 	grapheme clusters.
   4141 
   4142 2024-01-08  Jonathan Wakely  <jwakely (a] redhat.com>
   4143 
   4144 	* include/bits/version.def (format_uchar): Define.
   4145 	* include/bits/version.h: Regenerate.
   4146 	* include/std/format (formatter<C, C>::format): Check for
   4147 	_Pres_c and call _M_format_character directly. Cast C to its
   4148 	unsigned equivalent for formatting as an integer.
   4149 	(formatter<char, wchar_t>::format): Likewise.
   4150 	(basic_format_arg(T&)): Store char arguments as unsigned char
   4151 	for formatting to a wide string.
   4152 	* testsuite/std/format/functions/format.cc: Adjust test. Check
   4153 	formatting of
   4154 
   4155 2024-01-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4156 
   4157 	PR libstdc++/112997
   4158 	* libsupc++/unwind-cxx.h (__cxa_call_terminate): Change first
   4159 	parameter to void*.
   4160 
   4161 2024-01-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4162 
   4163 	* testsuite/20_util/variant/87619.cc: Remove dg-timeout-factor.
   4164 
   4165 2024-01-07  Jonathan Wakely  <jwakely (a] redhat.com>
   4166 
   4167 	* include/std/type_traits (is_trivially_destructible_v): Use
   4168 	built-in directly when concepts are supported.
   4169 	* testsuite/20_util/is_trivially_destructible/value_v.cc: New
   4170 	test.
   4171 
   4172 2024-01-06  Gwenole Beauchesne  <gb.devel (a] gmail.com>
   4173 
   4174 	* testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Use
   4175 	nonnull arguments to strtoimax() and wcstoimax() functions.
   4176 
   4177 2024-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4178 
   4179 	* src/c++17/fs_path.cc (path::_List::reserve): Limit maximum
   4180 	size and check for overflows in arithmetic.
   4181 	(path::operator/=(const path&)): Remove redundant exponential
   4182 	growth calculation.
   4183 
   4184 2024-01-05  Martin Kttler  <martin.kuettler (a] kernkonzept.com>
   4185 
   4186 	* src/c++17/fs_path.cc (path::_List::reserve): Avoid
   4187 	floating-point arithmetic.
   4188 
   4189 2024-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4190 
   4191 	PR libstdc++/113241
   4192 	* include/std/type_traits (is_convertible_v): Guard use of
   4193 	built-in with preprocessor check.
   4194 
   4195 2024-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4196 
   4197 	PR libstdc++/113200
   4198 	* include/bits/char_traits.h (__gnu_cxx::char_traits::move): Use
   4199 	__builtin_constant_p to check for unrelated pointers that cannot
   4200 	be compared during constant evaluation.
   4201 	* testsuite/21_strings/char_traits/requirements/113200.cc: New
   4202 	test.
   4203 
   4204 2024-01-05  Cassio Neri  <cassio.neri (a] gmail.com>
   4205 
   4206 	* include/std/chrono: Fix + and - for months and weekdays.
   4207 	* testsuite/std/time/month/1.cc: Add constexpr tests against overflow.
   4208 	* testsuite/std/time/month/2.cc: New test for extreme values.
   4209 	* testsuite/std/time/weekday/1.cc: Add constexpr tests against overflow.
   4210 	* testsuite/std/time/weekday/2.cc: New test for extreme values.
   4211 
   4212 2024-01-05  Jonathan Wakely  <jwakely (a] redhat.com>
   4213 
   4214 	PR libstdc++/113099
   4215 	* include/bits/locale_classes.tcc (__try_use_facet): Use
   4216 	if-constexpr for C++11 and up.
   4217 
   4218 2024-01-05  Ken Matsui  <kmatsui (a] gcc.gnu.org>
   4219 
   4220 	* include/std/type_traits: Use _GLIBCXX_USE_BUILTIN_TRAIT.
   4221 
   4222 2024-01-04  Arsen Arsenovi  <arsen (a] aarsen.me>
   4223 
   4224 	* include/std/generator (_Subyield_state::_M_jump_in): Fix typo
   4225 	reported by Will Hawkins <hawkinsw (a] obs.cr>.
   4226 
   4227 2024-01-04  Arsen Arsenovi  <arsen (a] aarsen.me>
   4228 
   4229 	* include/std/generator (_Stateless_alloc): Rename typename _A
   4230 	to _All.
   4231 
   4232 2024-01-03  Patrick Palka  <ppalka (a] redhat.com>
   4233 
   4234 	PR testsuite/113175
   4235 	* testsuite/std/ranges/iota/max_size_type.cc (test02): Reduce
   4236 	'limit' to 100 from 1000 and adjust 'log2_limit' accordingly.
   4237 	(test03): Likewise.
   4238 
   4239 
   4241 Copyright (C) 2024 Free Software Foundation, Inc.
   4242 
   4243 Copying and distribution of this file, with or without modification,
   4244 are permitted in any medium without royalty provided the copyright
   4245 notice and this notice are preserved.
   4246