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