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