ChangeLog revision 1.1.1.22 1 1.1.1.22 mrg 2023-07-07 Release Manager
2 1.1.1.22 mrg
3 1.1.1.22 mrg * GCC 10.5.0 released.
4 1.1.1.22 mrg
5 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
6 1.1.1.22 mrg
7 1.1.1.22 mrg Backported from master:
8 1.1.1.22 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
9 1.1.1.22 mrg
10 1.1.1.22 mrg * testsuite/18_support/numeric_limits/lowest.cc: Use
11 1.1.1.22 mrg numeric_limits<T>::is_integer instead of is_integral<T>::value.
12 1.1.1.22 mrg
13 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
14 1.1.1.22 mrg
15 1.1.1.22 mrg Backported from master:
16 1.1.1.22 mrg 2023-06-01 Jonathan Wakely <jwakely (a] redhat.com>
17 1.1.1.22 mrg
18 1.1.1.22 mrg * doc/xml/manual/evolution.xml: Document removal of implicit
19 1.1.1.22 mrg allocator rebinding extensions in strict mode and for C++20.
20 1.1.1.22 mrg * doc/html/*: Regenerate.
21 1.1.1.22 mrg
22 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
23 1.1.1.22 mrg
24 1.1.1.22 mrg Backported from master:
25 1.1.1.22 mrg 2022-12-16 Jonathan Wakely <jwakely (a] redhat.com>
26 1.1.1.22 mrg
27 1.1.1.22 mrg PR libstdc++/108118
28 1.1.1.22 mrg * include/bits/shared_ptr_base.h (weak_ptr::operator=):
29 1.1.1.22 mrg Implement as move-and-swap exactly as specified in the standard.
30 1.1.1.22 mrg * testsuite/20_util/weak_ptr/cons/self_move.cc: New test.
31 1.1.1.22 mrg
32 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
33 1.1.1.22 mrg
34 1.1.1.22 mrg Backported from master:
35 1.1.1.22 mrg 2020-06-17 Jonathan Wakely <jwakely (a] redhat.com>
36 1.1.1.22 mrg
37 1.1.1.22 mrg PR libstdc++/94540
38 1.1.1.22 mrg * include/bits/stl_uninitialized.h (__uninitialized_default_1<true>):
39 1.1.1.22 mrg Construct the first value at *__first instead of on the stack.
40 1.1.1.22 mrg (__uninitialized_default_n_1<true>): Likewise.
41 1.1.1.22 mrg Improve comments on several of the non-standard algorithms.
42 1.1.1.22 mrg * testsuite/20_util/specialized_algorithms/uninitialized_default/94540.cc:
43 1.1.1.22 mrg New test.
44 1.1.1.22 mrg * testsuite/20_util/specialized_algorithms/uninitialized_default_n/94540.cc:
45 1.1.1.22 mrg New test.
46 1.1.1.22 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc:
47 1.1.1.22 mrg New test.
48 1.1.1.22 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc:
49 1.1.1.22 mrg New test.
50 1.1.1.22 mrg * testsuite/23_containers/vector/cons/94540.cc: New test.
51 1.1.1.22 mrg
52 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
53 1.1.1.22 mrg
54 1.1.1.22 mrg Backported from master:
55 1.1.1.22 mrg 2022-08-22 Jonathan Wakely <jwakely (a] redhat.com>
56 1.1.1.22 mrg
57 1.1.1.22 mrg PR libstdc++/106607
58 1.1.1.22 mrg * include/bits/regex_compiler.tcc (_Compiler::_M_cur_int_value):
59 1.1.1.22 mrg Use built-ins to check for integer overflow in back-reference
60 1.1.1.22 mrg number.
61 1.1.1.22 mrg * testsuite/28_regex/basic_regex/106607.cc: New test.
62 1.1.1.22 mrg
63 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
64 1.1.1.22 mrg
65 1.1.1.22 mrg Backported from master:
66 1.1.1.22 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
67 1.1.1.22 mrg
68 1.1.1.22 mrg * include/bits/regex.h (basic_regex, swap): Add noexcept to
69 1.1.1.22 mrg non-throwing functions.
70 1.1.1.22 mrg * include/bits/regex_automaton.h (_State_base, _State)
71 1.1.1.22 mrg (_NFA_base): Likewise.
72 1.1.1.22 mrg * include/bits/regex_compiler.h (_Compiler): Likewise.
73 1.1.1.22 mrg * include/bits/regex_error.h (regex_error::code()): Likewise.
74 1.1.1.22 mrg * include/bits/regex_scanner.h (_Scanner): Likewise.
75 1.1.1.22 mrg
76 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
77 1.1.1.22 mrg
78 1.1.1.22 mrg Backported from master:
79 1.1.1.22 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
80 1.1.1.22 mrg
81 1.1.1.22 mrg PR libstdc++/102447
82 1.1.1.22 mrg * include/bits/regex_compiler.h (_Compiler::_BracketState): New
83 1.1.1.22 mrg class.
84 1.1.1.22 mrg (_Compiler::_BrackeyMatcher): New alias template.
85 1.1.1.22 mrg (_Compiler::_M_expression_term): Change pair<bool, CharT>
86 1.1.1.22 mrg parameter to _BracketState. Process first character for
87 1.1.1.22 mrg ECMAScript syntax as well as POSIX.
88 1.1.1.22 mrg * include/bits/regex_compiler.tcc
89 1.1.1.22 mrg (_Compiler::_M_insert_bracket_matcher): Pass _BracketState.
90 1.1.1.22 mrg (_Compiler::_M_expression_term): Use _BracketState to store
91 1.1.1.22 mrg state between calls. Improve handling of dashes in ranges.
92 1.1.1.22 mrg * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
93 1.1.1.22 mrg Add more tests for ranges containing dashes. Check invalid
94 1.1.1.22 mrg ranges with character class at the beginning.
95 1.1.1.22 mrg
96 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
97 1.1.1.22 mrg
98 1.1.1.22 mrg Backported from master:
99 1.1.1.22 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
100 1.1.1.22 mrg
101 1.1.1.22 mrg * include/bits/regex_compiler.h (_Compiler::_S_validate): New
102 1.1.1.22 mrg function.
103 1.1.1.22 mrg * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Use
104 1.1.1.22 mrg _S_validate to check flags.
105 1.1.1.22 mrg * include/bits/regex_error.h (_S_grammar): New error code for
106 1.1.1.22 mrg internal use.
107 1.1.1.22 mrg * testsuite/28_regex/basic_regex/ctors/grammar.cc: New test.
108 1.1.1.22 mrg
109 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
110 1.1.1.22 mrg
111 1.1.1.22 mrg Backported from master:
112 1.1.1.22 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
113 1.1.1.22 mrg
114 1.1.1.22 mrg * include/bits/regex_compiler.tcc: Add line break in empty while
115 1.1.1.22 mrg statement.
116 1.1.1.22 mrg * include/bits/regex_executor.tcc: Avoid unused parameter
117 1.1.1.22 mrg warning.
118 1.1.1.22 mrg
119 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
120 1.1.1.22 mrg
121 1.1.1.22 mrg Backported from master:
122 1.1.1.22 mrg 2021-12-13 Jonathan Wakely <jwakely (a] redhat.com>
123 1.1.1.22 mrg
124 1.1.1.22 mrg PR libstdc++/103664
125 1.1.1.22 mrg * include/bits/regex.h (__regex_replace): Declare.
126 1.1.1.22 mrg (regex_replace): Use it.
127 1.1.1.22 mrg * include/bits/regex.tcc (__regex_replace): Replace regex_replace
128 1.1.1.22 mrg definition with __regex_replace.
129 1.1.1.22 mrg * testsuite/28_regex/algorithms/regex_replace/char/103664.cc: New test.
130 1.1.1.22 mrg
131 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
132 1.1.1.22 mrg
133 1.1.1.22 mrg Backported from master:
134 1.1.1.22 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
135 1.1.1.22 mrg
136 1.1.1.22 mrg PR libstdc++/84110
137 1.1.1.22 mrg * include/bits/regex_error.h (regex_constants::_S_null): New
138 1.1.1.22 mrg error code for internal use.
139 1.1.1.22 mrg * include/bits/regex_scanner.tcc (_Scanner::_M_scan_normal()):
140 1.1.1.22 mrg Check for null character.
141 1.1.1.22 mrg * testsuite/28_regex/basic_regex/84110.cc: New test.
142 1.1.1.22 mrg
143 1.1.1.22 mrg 2023-06-23 Jonathan Wakely <jwakely (a] redhat.com>
144 1.1.1.22 mrg
145 1.1.1.22 mrg Backported from master:
146 1.1.1.22 mrg 2020-09-11 Jonathan Wakely <jwakely (a] redhat.com>
147 1.1.1.22 mrg
148 1.1.1.22 mrg * include/bits/regex_error.h (__throw_regex_error): Fix
149 1.1.1.22 mrg parameter declaration and use reserved attribute names.
150 1.1.1.22 mrg
151 1.1.1.22 mrg 2023-06-23 Christophe Lyon <christophe.lyon (a] linaro.org>
152 1.1.1.22 mrg
153 1.1.1.22 mrg Backported from master:
154 1.1.1.22 mrg 2020-09-11 Christophe Lyon <christophe.lyon (a] linaro.org>
155 1.1.1.22 mrg
156 1.1.1.22 mrg * include/bits/regex_error.h: Avoid warning with -fno-exceptions.
157 1.1.1.22 mrg
158 1.1.1.22 mrg 2023-05-21 Iain Sandoe <iain (a] sandoe.co.uk>
159 1.1.1.22 mrg
160 1.1.1.22 mrg * include/bits/fs_path.h: Rename __null_terminated to __nul_terminated
161 1.1.1.22 mrg to avoid colliding with a macro in Darwin system headers.
162 1.1.1.22 mrg
163 1.1.1.22 mrg 2023-05-03 Jonathan Wakely <jwakely (a] redhat.com>
164 1.1.1.22 mrg
165 1.1.1.22 mrg PR libstdc++/105844
166 1.1.1.22 mrg * include/std/numeric (lcm): Ensure out-of-range result is
167 1.1.1.22 mrg detected in constant evaluation.
168 1.1.1.22 mrg * testsuite/26_numerics/lcm/105844.cc: Adjust dg-error string.
169 1.1.1.22 mrg
170 1.1.1.22 mrg 2023-05-03 Jonathan Wakely <jwakely (a] redhat.com>
171 1.1.1.22 mrg
172 1.1.1.22 mrg Backported from master:
173 1.1.1.22 mrg 2022-06-10 Jonathan Wakely <jwakely (a] redhat.com>
174 1.1.1.22 mrg
175 1.1.1.22 mrg PR libstdc++/105844
176 1.1.1.22 mrg * include/experimental/numeric (experimental::gcd): Simplify
177 1.1.1.22 mrg assertions. Use __abs_r instead of __absu.
178 1.1.1.22 mrg (experimental::lcm): Likewise. Remove use of __detail::__lcm so
179 1.1.1.22 mrg overflow can be detected.
180 1.1.1.22 mrg * include/std/numeric (__detail::__absu): Rename to __abs_r and
181 1.1.1.22 mrg change to allow signed result type, so overflow can be detected.
182 1.1.1.22 mrg (__detail::__lcm): Remove.
183 1.1.1.22 mrg (gcd): Simplify assertions. Use __abs_r instead of __absu.
184 1.1.1.22 mrg (lcm): Likewise. Remove use of __detail::__lcm so overflow can
185 1.1.1.22 mrg be detected.
186 1.1.1.22 mrg * testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error lines.
187 1.1.1.22 mrg * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
188 1.1.1.22 mrg * testsuite/26_numerics/gcd/105844.cc: New test.
189 1.1.1.22 mrg * testsuite/26_numerics/lcm/105844.cc: New test.
190 1.1.1.22 mrg
191 1.1.1.22 mrg 2023-05-03 Jonathan Wakely <jwakely (a] redhat.com>
192 1.1.1.22 mrg
193 1.1.1.22 mrg Backported from master:
194 1.1.1.22 mrg 2023-04-28 Jonathan Wakely <jwakely (a] redhat.com>
195 1.1.1.22 mrg
196 1.1.1.22 mrg * doc/doxygen/user.cfg.in (STRIP_FROM_PATH): Remove prefixes
197 1.1.1.22 mrg from header paths.
198 1.1.1.22 mrg
199 1.1.1.22 mrg 2023-04-28 Jonathan Wakely <jwakely (a] redhat.com>
200 1.1.1.22 mrg
201 1.1.1.22 mrg Backported from master:
202 1.1.1.22 mrg 2020-11-24 Jonathan Wakely <jwakely (a] redhat.com>
203 1.1.1.22 mrg
204 1.1.1.22 mrg PR libstdc++/67791
205 1.1.1.22 mrg * src/c++11/thread.cc (thread::_M_start_thread(_State_ptr, void (*)())):
206 1.1.1.22 mrg Check that gthreads is available before calling __gthread_create.
207 1.1.1.22 mrg
208 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
209 1.1.1.22 mrg
210 1.1.1.22 mrg Backported from master:
211 1.1.1.22 mrg 2023-04-04 Jonathan Wakely <jwakely (a] redhat.com>
212 1.1.1.22 mrg
213 1.1.1.22 mrg * doc/xml/manual/extensions.xml: Remove std::bad_exception from
214 1.1.1.22 mrg example program.
215 1.1.1.22 mrg * doc/html/manual/ext_demangling.html: Regenerate.
216 1.1.1.22 mrg
217 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
218 1.1.1.22 mrg
219 1.1.1.22 mrg Backported from master:
220 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
221 1.1.1.22 mrg
222 1.1.1.22 mrg * doc/doxygen/user.cfg.in (SOURCE_BROWSER): Only set to YES for
223 1.1.1.22 mrg HTML docs.
224 1.1.1.22 mrg * include/bits/gslice_array.h (_DEFINE_VALARRAY_OPERATOR): Omit
225 1.1.1.22 mrg from doxygen docs.
226 1.1.1.22 mrg * include/bits/indirect_array.h (_DEFINE_VALARRAY_OPERATOR):
227 1.1.1.22 mrg Likewise.
228 1.1.1.22 mrg * include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR):
229 1.1.1.22 mrg Likewise.
230 1.1.1.22 mrg * include/bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR):
231 1.1.1.22 mrg Likewise.
232 1.1.1.22 mrg * include/std/valarray (_DEFINE_VALARRAY_UNARY_OPERATOR)
233 1.1.1.22 mrg (_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT)
234 1.1.1.22 mrg (_DEFINE_VALARRAY_EXPR_AUGMENTED_ASSIGNMENT)
235 1.1.1.22 mrg (_DEFINE_BINARY_OPERATOR): Likewise.
236 1.1.1.22 mrg
237 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
238 1.1.1.22 mrg
239 1.1.1.22 mrg Backported from master:
240 1.1.1.22 mrg 2022-10-28 Jonathan Wakely <jwakely (a] redhat.com>
241 1.1.1.22 mrg
242 1.1.1.22 mrg * include/bits/fs_path.h (path::filename()): Fix dangling
243 1.1.1.22 mrg reference.
244 1.1.1.22 mrg
245 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
246 1.1.1.22 mrg
247 1.1.1.22 mrg PR libstdc++/109064
248 1.1.1.22 mrg * python/libstdcxx/v6/xmethods.py (SharedPtrUseCountWorker):
249 1.1.1.22 mrg Remove self-recursion in __init__. Add missing _supports.
250 1.1.1.22 mrg * testsuite/libstdc++-xmethods/shared_ptr.cc: Check use_count()
251 1.1.1.22 mrg and unique().
252 1.1.1.22 mrg
253 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
254 1.1.1.22 mrg
255 1.1.1.22 mrg Backported from master:
256 1.1.1.22 mrg 2023-02-28 Jonathan Wakely <jwakely (a] redhat.com>
257 1.1.1.22 mrg
258 1.1.1.22 mrg PR libstdc++/108952
259 1.1.1.22 mrg * include/std/memory (uses_allocator_construction_args):
260 1.1.1.22 mrg Implement LWG 3527.
261 1.1.1.22 mrg * testsuite/20_util/pair/astuple/get-2.cc: New test.
262 1.1.1.22 mrg * testsuite/20_util/scoped_allocator/108952.cc: New test.
263 1.1.1.22 mrg * testsuite/20_util/uses_allocator/lwg3527.cc: New test.
264 1.1.1.22 mrg
265 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
266 1.1.1.22 mrg
267 1.1.1.22 mrg Backported from master:
268 1.1.1.22 mrg 2023-02-16 Jonathan Wakely <jwakely (a] redhat.com>
269 1.1.1.22 mrg
270 1.1.1.22 mrg * include/experimental/optional: Fix header name in comment.
271 1.1.1.22 mrg
272 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
273 1.1.1.22 mrg
274 1.1.1.22 mrg Backported from master:
275 1.1.1.22 mrg 2022-07-20 Jonathan Wakely <jwakely (a] redhat.com>
276 1.1.1.22 mrg
277 1.1.1.22 mrg PR libstdc++/100823
278 1.1.1.22 mrg * include/bits/stl_iterator.h (common_iterator): Define move
279 1.1.1.22 mrg constructor and move assignment operator.
280 1.1.1.22 mrg (common_iterator::_M_assign): New function implementing
281 1.1.1.22 mrg assignment.
282 1.1.1.22 mrg (common_iterator::operator=): Use _M_assign.
283 1.1.1.22 mrg (common_iterator::_S_valueless): New constant.
284 1.1.1.22 mrg * testsuite/24_iterators/common_iterator/100823.cc: New test.
285 1.1.1.22 mrg
286 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
287 1.1.1.22 mrg
288 1.1.1.22 mrg Backported from master:
289 1.1.1.22 mrg 2022-07-20 Jonathan Wakely <jwakely (a] redhat.com>
290 1.1.1.22 mrg
291 1.1.1.22 mrg * include/bits/stl_iterator.h (common_iterator): Fix incorrect
292 1.1.1.22 mrg uses of is_nothrow_assignable_v. Fix inconsistent constraints on
293 1.1.1.22 mrg friend declaration. Do not move argument in copy constructor.
294 1.1.1.22 mrg * testsuite/24_iterators/common_iterator/1.cc: Check for
295 1.1.1.22 mrg noexcept constructibnle/assignable.
296 1.1.1.22 mrg
297 1.1.1.22 mrg 2023-04-27 Jonathan Wakely <jwakely (a] redhat.com>
298 1.1.1.22 mrg
299 1.1.1.22 mrg Backported from master:
300 1.1.1.22 mrg 2022-11-23 Jonathan Wakely <jwakely (a] redhat.com>
301 1.1.1.22 mrg
302 1.1.1.22 mrg PR libstdc++/107814
303 1.1.1.22 mrg * testsuite/experimental/filesystem/iterators/error_reporting.cc:
304 1.1.1.22 mrg Use a static buffer with space after it.
305 1.1.1.22 mrg
306 1.1.1.22 mrg 2023-03-16 Jonathan Wakely <jwakely (a] redhat.com>
307 1.1.1.22 mrg
308 1.1.1.22 mrg Backported from master:
309 1.1.1.22 mrg 2023-02-02 Jonathan Wakely <jwakely (a] redhat.com>
310 1.1.1.22 mrg
311 1.1.1.22 mrg PR libstdc++/108636
312 1.1.1.22 mrg * include/bits/fs_path.h (path::path(string_view, _Type))
313 1.1.1.22 mrg (path::_Cmpt::_Cmpt(string_view, _Type, size_t)): Move inline
314 1.1.1.22 mrg definitions to ...
315 1.1.1.22 mrg * src/c++17/fs_path.cc: ... here.
316 1.1.1.22 mrg * testsuite/27_io/filesystem/path/108636.cc: New test.
317 1.1.1.22 mrg
318 1.1.1.22 mrg 2022-11-08 Jonathan Wakely <jwakely (a] redhat.com>
319 1.1.1.22 mrg
320 1.1.1.22 mrg Backported from master:
321 1.1.1.22 mrg 2022-11-08 Jonathan Wakely <jwakely (a] redhat.com>
322 1.1.1.22 mrg
323 1.1.1.22 mrg * doc/xml/authors.xml: Remove empty author element.
324 1.1.1.22 mrg * doc/xml/manual/spine.xml: Likewise.
325 1.1.1.22 mrg * doc/html/*: Regenerate.
326 1.1.1.22 mrg
327 1.1.1.22 mrg 2022-08-03 Jonathan Wakely <jwakely (a] redhat.com>
328 1.1.1.22 mrg
329 1.1.1.22 mrg Backported from master:
330 1.1.1.22 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
331 1.1.1.22 mrg
332 1.1.1.22 mrg PR libstdc++/98421
333 1.1.1.22 mrg * include/std/span (span(Iter, size_type), span(Iter, Iter)):
334 1.1.1.22 mrg Add valid range checks.
335 1.1.1.22 mrg * testsuite/23_containers/span/cons_1_assert_neg.cc: New test.
336 1.1.1.22 mrg * testsuite/23_containers/span/cons_2_assert_neg.cc: New test.
337 1.1.1.22 mrg
338 1.1.1.22 mrg 2022-08-03 Jonathan Wakely <jwakely (a] redhat.com>
339 1.1.1.22 mrg
340 1.1.1.22 mrg * include/bits/list.tcc (list::merge) [!USE_CXX11_ABI]: Remove
341 1.1.1.22 mrg call to size() and try-catch block.
342 1.1.1.22 mrg
343 1.1.1.22 mrg 2022-08-03 Tim Adye <Tim.Adye (a] cern.ch>
344 1.1.1.22 mrg
345 1.1.1.22 mrg Backported from master:
346 1.1.1.22 mrg 2021-06-04 Tim Adye <Tim.Adye (a] cern.ch>
347 1.1.1.22 mrg
348 1.1.1.22 mrg * include/std/any (any::_Manager::_S_access): New static
349 1.1.1.22 mrg function to access the contained value.
350 1.1.1.22 mrg (any::emplace, __any_caster): Use _S_access member of the
351 1.1.1.22 mrg manager type.
352 1.1.1.22 mrg
353 1.1.1.22 mrg 2022-08-03 Jonathan Wakely <jwakely (a] redhat.com>
354 1.1.1.22 mrg
355 1.1.1.22 mrg Backported from master:
356 1.1.1.22 mrg 2021-06-15 Jonathan Wakely <jwakely (a] redhat.com>
357 1.1.1.22 mrg
358 1.1.1.22 mrg * include/std/ranges (subrange(i, s, n)): Remove assertion.
359 1.1.1.22 mrg * testsuite/std/ranges/subrange/constexpr.cc: New test.
360 1.1.1.22 mrg
361 1.1.1.22 mrg 2022-08-03 Jonathan Wakely <jwakely (a] redhat.com>
362 1.1.1.22 mrg
363 1.1.1.22 mrg Backported from master:
364 1.1.1.22 mrg 2021-11-10 Jonathan Wakely <jwakely (a] redhat.com>
365 1.1.1.22 mrg
366 1.1.1.22 mrg PR libstdc++/100748
367 1.1.1.22 mrg PR libstdc++/103133
368 1.1.1.22 mrg * config/os/gnu-linux/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
369 1.1.1.22 mrg Define for glibc 2.34 and later.
370 1.1.1.22 mrg
371 1.1.1.22 mrg 2022-07-23 Jonathan Wakely <jwakely (a] redhat.com>
372 1.1.1.22 mrg
373 1.1.1.22 mrg Backported from master:
374 1.1.1.22 mrg 2022-07-01 Jonathan Wakely <jwakely (a] redhat.com>
375 1.1.1.22 mrg
376 1.1.1.22 mrg PR libstdc++/106162
377 1.1.1.22 mrg * include/Makefile.am (largefile-config.h): Add
378 1.1.1.22 mrg stamp-${host_alias} prerequisite.
379 1.1.1.22 mrg * include/Makefile.in: Regenerate.
380 1.1.1.22 mrg
381 1.1.1.22 mrg 2022-07-23 Jonathan Wakely <jwakely (a] redhat.com>
382 1.1.1.22 mrg
383 1.1.1.22 mrg Backported from master:
384 1.1.1.22 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
385 1.1.1.22 mrg
386 1.1.1.22 mrg * include/bits/range_access.h (begin(valarray), end(valarray)):
387 1.1.1.22 mrg Add noexcept.
388 1.1.1.22 mrg
389 1.1.1.22 mrg 2022-07-22 Patrick Palka <ppalka (a] redhat.com>
390 1.1.1.22 mrg
391 1.1.1.22 mrg Backported from master:
392 1.1.1.22 mrg 2022-07-22 Patrick Palka <ppalka (a] redhat.com>
393 1.1.1.22 mrg
394 1.1.1.22 mrg PR libstdc++/106320
395 1.1.1.22 mrg * include/std/ranges (single_view): Relax constraints on
396 1.1.1.22 mrg default constructor so as to preserve pre-P2325R3 behavior.
397 1.1.1.22 mrg (filter_view): Likewise.
398 1.1.1.22 mrg (transform_view): Likewise.
399 1.1.1.22 mrg (take_while_view): Likewise.
400 1.1.1.22 mrg (drop_while_view): Likewise.
401 1.1.1.22 mrg * testsuite/std/ranges/adaptors/join.cc (test13): New test.
402 1.1.1.22 mrg * testsuite/std/ranges/p2325.cc: Fix S to be only non default
403 1.1.1.22 mrg constructible and not also non copy constructible. XFAIL the
404 1.1.1.22 mrg tests that verify a non default constructible functor makes a
405 1.1.1.22 mrg view non default constructible (lines 94, 97 and 98). XFAIL
406 1.1.1.22 mrg the test that effectively verifies a non default constructible
407 1.1.1.22 mrg element type makes single_view non default constructible (line
408 1.1.1.22 mrg 114).
409 1.1.1.22 mrg
410 1.1.1.21 mrg 2022-06-28 Release Manager
411 1.1.1.21 mrg
412 1.1.1.21 mrg * GCC 10.4.0 released.
413 1.1.1.21 mrg
414 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
415 1.1.1.21 mrg
416 1.1.1.21 mrg Backported from master:
417 1.1.1.21 mrg 2022-06-13 Jonathan Wakely <jwakely (a] redhat.com>
418 1.1.1.21 mrg
419 1.1.1.21 mrg * include/std/atomic (__atomic_val_t): Use __type_identity_t
420 1.1.1.21 mrg instead of atomic<T>::value_type, as per LWG 3220.
421 1.1.1.21 mrg * testsuite/29_atomics/atomic/lwg3220.cc: New test.
422 1.1.1.21 mrg
423 1.1.1.21 mrg 2022-06-15 Mark Mentovai <mark (a] mentovai.com>
424 1.1.1.21 mrg
425 1.1.1.21 mrg Backported from master:
426 1.1.1.21 mrg 2022-06-13 Mark Mentovai <mark (a] mentovai.com>
427 1.1.1.21 mrg
428 1.1.1.21 mrg * include/experimental/bits/fs_path.h (__detail::__null_terminated):
429 1.1.1.21 mrg Rename to __nul_terminated to avoid colliding with a macro in
430 1.1.1.21 mrg Apple's SDK.
431 1.1.1.21 mrg
432 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
433 1.1.1.21 mrg
434 1.1.1.21 mrg Backported from master:
435 1.1.1.21 mrg 2022-05-06 Jonathan Wakely <jwakely (a] redhat.com>
436 1.1.1.21 mrg
437 1.1.1.21 mrg PR libstdc++/104731
438 1.1.1.21 mrg * testsuite/27_io/filesystem/iterators/error_reporting.cc:
439 1.1.1.21 mrg Use a trailing char array as storage for dirent::d_name.
440 1.1.1.21 mrg
441 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
442 1.1.1.21 mrg
443 1.1.1.21 mrg Backported from master:
444 1.1.1.21 mrg 2022-02-02 Jonathan Wakely <jwakely (a] redhat.com>
445 1.1.1.21 mrg
446 1.1.1.21 mrg * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use
447 1.1.1.21 mrg autoconf macro to check whether d_type is present.
448 1.1.1.21 mrg * testsuite/experimental/filesystem/iterators/error_reporting.cc:
449 1.1.1.21 mrg Likewise.
450 1.1.1.21 mrg
451 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
452 1.1.1.21 mrg
453 1.1.1.21 mrg Backported from master:
454 1.1.1.21 mrg 2022-02-01 Jonathan Wakely <jwakely (a] redhat.com>
455 1.1.1.21 mrg
456 1.1.1.21 mrg * src/c++17/fs_dir.cc (recursive_directory_iterator::increment):
457 1.1.1.21 mrg Reset state to past-the-end iterator on error.
458 1.1.1.21 mrg (fs::recursive_directory_iterator::pop(error_code&)): Likewise.
459 1.1.1.21 mrg (fs::recursive_directory_iterator::pop()): Check _M_dirs before
460 1.1.1.21 mrg it might get reset.
461 1.1.1.21 mrg * src/filesystem/dir.cc (recursive_directory_iterator): Likewise,
462 1.1.1.21 mrg for the TS implementation.
463 1.1.1.21 mrg * testsuite/27_io/filesystem/iterators/error_reporting.cc: New test.
464 1.1.1.21 mrg * testsuite/experimental/filesystem/iterators/error_reporting.cc: New test.
465 1.1.1.21 mrg
466 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
467 1.1.1.21 mrg
468 1.1.1.21 mrg * testsuite/23_containers/map/allocator/move_cons.cc: New test.
469 1.1.1.21 mrg * testsuite/23_containers/multimap/allocator/move_cons.cc: New test.
470 1.1.1.21 mrg * testsuite/23_containers/multiset/allocator/move_cons.cc: New test.
471 1.1.1.21 mrg * testsuite/23_containers/set/allocator/move_cons.cc: New test.
472 1.1.1.21 mrg
473 1.1.1.21 mrg 2022-06-15 Jonathan Wakely <jwakely (a] redhat.com>
474 1.1.1.21 mrg
475 1.1.1.21 mrg Backported from master:
476 1.1.1.21 mrg 2021-12-01 Jonathan Wakely <jwakely (a] redhat.com>
477 1.1.1.21 mrg
478 1.1.1.21 mrg PR libstdc++/103501
479 1.1.1.21 mrg * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&, false_type)):
480 1.1.1.21 mrg Clear container if elements have been moved-from.
481 1.1.1.21 mrg * testsuite/23_containers/multiset/allocator/103501.cc: New test.
482 1.1.1.21 mrg * testsuite/23_containers/set/allocator/103501.cc: New test.
483 1.1.1.21 mrg
484 1.1.1.21 mrg 2022-06-14 Jonathan Wakely <jwakely (a] redhat.com>
485 1.1.1.21 mrg
486 1.1.1.21 mrg PR libstdc++/97944
487 1.1.1.21 mrg * testsuite/30_threads/jthread/95989.cc: Mark XFAIL.
488 1.1.1.21 mrg
489 1.1.1.21 mrg 2022-06-14 Jonathan Wakely <jwakely (a] redhat.com>
490 1.1.1.21 mrg
491 1.1.1.21 mrg Backported from master:
492 1.1.1.21 mrg 2020-11-24 Jonathan Wakely <jwakely (a] redhat.com>
493 1.1.1.21 mrg
494 1.1.1.21 mrg * testsuite/30_threads/jthread/95989.cc: Run all three test
495 1.1.1.21 mrg functions, not just the first one twice.
496 1.1.1.21 mrg
497 1.1.1.21 mrg 2022-06-14 Jonathan Wakely <jwakely (a] redhat.com>
498 1.1.1.21 mrg
499 1.1.1.21 mrg Backported from master:
500 1.1.1.21 mrg 2022-04-28 Jonathan Wakely <jwakely (a] redhat.com>
501 1.1.1.21 mrg
502 1.1.1.21 mrg PR libstdc++/99290
503 1.1.1.21 mrg * src/c++17/fs_ops.cc (fs::copy): Pass error_code to
504 1.1.1.21 mrg directory_iterator constructor, and check on each iteration.
505 1.1.1.21 mrg * src/filesystem/ops.cc (fs::copy): Likewise.
506 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/copy.cc: Check for
507 1.1.1.21 mrg errors during recursion.
508 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/copy.cc:
509 1.1.1.21 mrg Likewise.
510 1.1.1.21 mrg
511 1.1.1.21 mrg 2022-06-14 Jonathan Wakely <jwakely (a] redhat.com>
512 1.1.1.21 mrg
513 1.1.1.21 mrg Backported from master:
514 1.1.1.21 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
515 1.1.1.21 mrg
516 1.1.1.21 mrg * testsuite/lib/gdb-test.exp: Add target selector support to the
517 1.1.1.21 mrg dg-final directives.
518 1.1.1.21 mrg * testsuite/libstdc++-prettyprinters/80276.cc: Add xfail for
519 1.1.1.21 mrg C++20.
520 1.1.1.21 mrg * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
521 1.1.1.21 mrg * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Tweak
522 1.1.1.21 mrg comment.
523 1.1.1.21 mrg
524 1.1.1.21 mrg 2022-06-10 Jonathan Wakely <jwakely (a] redhat.com>
525 1.1.1.21 mrg
526 1.1.1.21 mrg Backported from master:
527 1.1.1.21 mrg 2022-06-10 Jonathan Wakely <jwakely (a] redhat.com>
528 1.1.1.21 mrg
529 1.1.1.21 mrg PR libstdc++/105915
530 1.1.1.21 mrg * include/experimental/bits/fs_path.h (path::begin, path::end):
531 1.1.1.21 mrg Remove noexcept from declarations.
532 1.1.1.21 mrg
533 1.1.1.21 mrg 2022-05-31 Patrick Palka <ppalka (a] redhat.com>
534 1.1.1.21 mrg
535 1.1.1.21 mrg Backported from master:
536 1.1.1.21 mrg 2021-07-16 Patrick Palka <ppalka (a] redhat.com>
537 1.1.1.21 mrg
538 1.1.1.21 mrg PR libstdc++/103904
539 1.1.1.21 mrg PR libstdc++/101231
540 1.1.1.21 mrg * include/std/ranges (_CachedPosition::_M_get): For non-forward
541 1.1.1.21 mrg ranges, just call __builtin_unreachable.
542 1.1.1.21 mrg * testsuite/std/ranges/istream_view.cc (test05): New test.
543 1.1.1.21 mrg
544 1.1.1.21 mrg 2022-05-31 Patrick Palka <ppalka (a] redhat.com>
545 1.1.1.21 mrg
546 1.1.1.21 mrg Backported from master:
547 1.1.1.21 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
548 1.1.1.21 mrg
549 1.1.1.21 mrg PR libstdc++/103904
550 1.1.1.21 mrg * include/bits/iterator_concepts.h (weakly_incrementable): Remove
551 1.1.1.21 mrg default_initializable requirement.
552 1.1.1.21 mrg * include/bits/stl_iterator.h (common_iterator): Constrain the
553 1.1.1.21 mrg default ctor.
554 1.1.1.21 mrg (counted_iterator): Likewise.
555 1.1.1.21 mrg * include/std/ranges (ranges::view): Remove default_initializable
556 1.1.1.21 mrg requirement.
557 1.1.1.21 mrg (subrange): Constrain the default ctor.
558 1.1.1.21 mrg (__detail::__box::operator=): Handle self-assignment.
559 1.1.1.21 mrg (single_view): Constraint the default ctor.
560 1.1.1.21 mrg (iota_view): Relax semiregular constraint to copyable.
561 1.1.1.21 mrg Constrain the default ctor.
562 1.1.1.21 mrg (iota_view::_Iterator): Constraint the default ctor.
563 1.1.1.21 mrg (filter_view): Likewise.
564 1.1.1.21 mrg (filter_view::_Iterator): Likewise.
565 1.1.1.21 mrg (transform_view): Likewise.
566 1.1.1.21 mrg (transform_view::_Iterator): Likewise.
567 1.1.1.21 mrg (take_view): Likewise.
568 1.1.1.21 mrg (take_view::_Iterator): Likewise.
569 1.1.1.21 mrg (take_while_view): Likewise.
570 1.1.1.21 mrg (take_while_view::_Iterator): Likewise.
571 1.1.1.21 mrg (drop_while_view): Likewise.
572 1.1.1.21 mrg (drop_while_view::_Iterator): Likewise.
573 1.1.1.21 mrg (join_view): Likewise.
574 1.1.1.21 mrg (split_view): Constrain the default ctor.
575 1.1.1.21 mrg (common_view): Likewise.
576 1.1.1.21 mrg (reverse_view): Likewise.
577 1.1.1.21 mrg (elements_view): Likewise.
578 1.1.1.21 mrg (elements_view::_Iterator): Likewise.
579 1.1.1.21 mrg * include/std/span (enable_view<span<_ElementType, _Extent>>):
580 1.1.1.21 mrg Define this partial specialization to true unconditionally.
581 1.1.1.21 mrg * testsuite/std/ranges/p2325.cc: New test.
582 1.1.1.21 mrg * testsuite/std/ranges/single_view.cc (test06): New test.
583 1.1.1.21 mrg * testsuite/std/ranges/view.cc: Adjust now that view doesn't
584 1.1.1.21 mrg require default_initializable.
585 1.1.1.21 mrg
586 1.1.1.21 mrg 2022-05-29 Iain Sandoe <iain (a] sandoe.co.uk>
587 1.1.1.21 mrg
588 1.1.1.21 mrg Backported from master:
589 1.1.1.21 mrg 2021-03-15 Iain Sandoe <iain (a] sandoe.co.uk>
590 1.1.1.21 mrg
591 1.1.1.21 mrg * testsuite/17_intro/names.cc: Exclude j from the list
592 1.1.1.21 mrg of test symbols for Darwin.
593 1.1.1.21 mrg
594 1.1.1.21 mrg 2022-05-29 Iain Sandoe <iain (a] sandoe.co.uk>
595 1.1.1.21 mrg
596 1.1.1.21 mrg Backported from master:
597 1.1.1.21 mrg 2021-11-19 Iain Sandoe <iain (a] sandoe.co.uk>
598 1.1.1.21 mrg
599 1.1.1.21 mrg * testsuite/lib/prune.exp: Prune dsymutil (ld64) warning.
600 1.1.1.21 mrg
601 1.1.1.21 mrg 2022-05-16 Jonathan Wakely <jwakely (a] redhat.com>
602 1.1.1.21 mrg
603 1.1.1.21 mrg Backported from master:
604 1.1.1.21 mrg 2022-05-16 Jonathan Wakely <jwakely (a] redhat.com>
605 1.1.1.21 mrg
606 1.1.1.21 mrg * doc/xml/manual/prerequisites.xml: Fix attributes for external
607 1.1.1.21 mrg hyperlink.
608 1.1.1.21 mrg * doc/html/manual/setup.html: Regenerate.
609 1.1.1.21 mrg
610 1.1.1.21 mrg 2022-05-16 Jonathan Wakely <jwakely (a] redhat.com>
611 1.1.1.21 mrg
612 1.1.1.21 mrg Backported from master:
613 1.1.1.21 mrg 2022-05-16 Jonathan Wakely <jwakely (a] redhat.com>
614 1.1.1.21 mrg
615 1.1.1.21 mrg * doc/html/manual/status.html: Regenerate.
616 1.1.1.21 mrg * doc/xml/manual/status_cxx2020.xml: Fix supported version for
617 1.1.1.21 mrg C++20 bit operations.
618 1.1.1.21 mrg
619 1.1.1.21 mrg 2022-05-09 Jonathan Wakely <jwakely (a] redhat.com>
620 1.1.1.21 mrg
621 1.1.1.21 mrg Backported from master:
622 1.1.1.21 mrg 2022-04-20 Jonathan Wakely <jwakely (a] redhat.com>
623 1.1.1.21 mrg
624 1.1.1.21 mrg PR libstdc++/93602
625 1.1.1.21 mrg * doc/xml/manual/prerequisites.xml: Document libiconv
626 1.1.1.21 mrg workarounds.
627 1.1.1.21 mrg * doc/html/manual/setup.html: Regenerate.
628 1.1.1.21 mrg * src/Makefile.am (CXXLINK): Add $(LTLIBICONV).
629 1.1.1.21 mrg * src/Makefile.in: Regenerate.
630 1.1.1.21 mrg
631 1.1.1.21 mrg 2022-05-09 Jonathan Wakely <jwakely (a] redhat.com>
632 1.1.1.21 mrg
633 1.1.1.21 mrg Backported from master:
634 1.1.1.21 mrg 2022-05-06 Jonathan Wakely <jwakely (a] redhat.com>
635 1.1.1.21 mrg
636 1.1.1.21 mrg PR libstdc++/105502
637 1.1.1.21 mrg * include/bits/random.tcc
638 1.1.1.21 mrg (operator>>(basic_istream<C,T>&, normal_distribution<R>&)):
639 1.1.1.21 mrg Update state when __state_avail is false.
640 1.1.1.21 mrg * testsuite/26_numerics/random/normal_distribution/operators/serialize.cc:
641 1.1.1.21 mrg Check that deserialized object equals serialized one.
642 1.1.1.21 mrg
643 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
644 1.1.1.21 mrg
645 1.1.1.21 mrg Backported from master:
646 1.1.1.21 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
647 1.1.1.21 mrg
648 1.1.1.21 mrg * include/bits/stl_iterator.h (operator==, operator<=>): Define
649 1.1.1.21 mrg overloads for homogeneous specializations of reverse_iterator,
650 1.1.1.21 mrg __normal_iterator and move_iterator.
651 1.1.1.21 mrg
652 1.1.1.21 mrg 2022-04-26 Patrick Palka <ppalka (a] redhat.com>
653 1.1.1.21 mrg
654 1.1.1.21 mrg Backported from master:
655 1.1.1.21 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
656 1.1.1.21 mrg
657 1.1.1.21 mrg * include/bits/stl_iterator.h (common_iterator::__arrow_proxy):
658 1.1.1.21 mrg Make fully constexpr as per LWG 3595.
659 1.1.1.21 mrg (common_iterator::__postfix_proxy): Likewise.
660 1.1.1.21 mrg
661 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
662 1.1.1.21 mrg
663 1.1.1.21 mrg Backported from master:
664 1.1.1.21 mrg 2022-01-18 Jonathan Wakely <jwakely (a] redhat.com>
665 1.1.1.21 mrg
666 1.1.1.21 mrg PR libstdc++/104098
667 1.1.1.21 mrg * include/bits/stl_iterator.h (reverse_iterator): Check
668 1.1.1.21 mrg __cpp_lib_concepts instead of __cplusplus.
669 1.1.1.21 mrg
670 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
671 1.1.1.21 mrg
672 1.1.1.21 mrg Backported from master:
673 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
674 1.1.1.21 mrg
675 1.1.1.21 mrg * include/bits/range_access.h (ranges::empty): Check whether
676 1.1.1.21 mrg conversion to bool can throw.
677 1.1.1.21 mrg * testsuite/std/ranges/access/empty.cc: Check for correct
678 1.1.1.21 mrg noexcept-specifier.
679 1.1.1.21 mrg
680 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
681 1.1.1.21 mrg
682 1.1.1.21 mrg PR libstdc++/102048
683 1.1.1.21 mrg * include/ext/rope (rope::erase(size_type)): Deprecate broken
684 1.1.1.21 mrg function.
685 1.1.1.21 mrg
686 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
687 1.1.1.21 mrg
688 1.1.1.21 mrg Backported from master:
689 1.1.1.21 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
690 1.1.1.21 mrg
691 1.1.1.21 mrg PR libstdc++/100153
692 1.1.1.21 mrg * include/bits/vector.tcc (vector<bool>::_M_shrink_to_fit()):
693 1.1.1.21 mrg When size() is zero just deallocate and reset.
694 1.1.1.21 mrg
695 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
696 1.1.1.21 mrg
697 1.1.1.21 mrg Backported from master:
698 1.1.1.21 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
699 1.1.1.21 mrg
700 1.1.1.21 mrg * include/std/span (span(Range&&)): Reorder constraints.
701 1.1.1.21 mrg
702 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
703 1.1.1.21 mrg
704 1.1.1.21 mrg Backported from master:
705 1.1.1.21 mrg 2021-11-09 Jonathan Wakely <jwakely (a] redhat.com>
706 1.1.1.21 mrg
707 1.1.1.21 mrg * testsuite/26_numerics/random/random_device/cons/token.cc:
708 1.1.1.21 mrg Retry if random devices produce the same value.
709 1.1.1.21 mrg
710 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
711 1.1.1.21 mrg
712 1.1.1.21 mrg Backported from master:
713 1.1.1.21 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
714 1.1.1.21 mrg
715 1.1.1.21 mrg * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
716 1.1.1.21 mrg Fix reads past the end of strings.
717 1.1.1.21 mrg * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
718 1.1.1.21 mrg Likewise.
719 1.1.1.21 mrg * testsuite/experimental/string_view/operations/compare/wchar_t/1.cc:
720 1.1.1.21 mrg Likewise.
721 1.1.1.21 mrg
722 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
723 1.1.1.21 mrg
724 1.1.1.21 mrg Backported from master:
725 1.1.1.21 mrg 2021-11-10 Jonathan Wakely <jwakely (a] redhat.com>
726 1.1.1.21 mrg
727 1.1.1.21 mrg PR libstdc++/100117
728 1.1.1.21 mrg * testsuite/17_intro/headers/c++1998/49745.cc: Explicitly list
729 1.1.1.21 mrg all C++ headers instead of including <bits/stdc++.h>
730 1.1.1.21 mrg
731 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
732 1.1.1.21 mrg
733 1.1.1.21 mrg Backported from master:
734 1.1.1.21 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
735 1.1.1.21 mrg
736 1.1.1.21 mrg PR libstdc++/103630
737 1.1.1.21 mrg * libsupc++/exception_ptr.h (make_exception_ptr): Decay the
738 1.1.1.21 mrg template parameter. Use typeid of the static type.
739 1.1.1.21 mrg * testsuite/18_support/exception_ptr/103630.cc: New test.
740 1.1.1.21 mrg
741 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
742 1.1.1.21 mrg
743 1.1.1.21 mrg Backported from master:
744 1.1.1.21 mrg 2022-01-17 Jonathan Wakely <jwakely (a] redhat.com>
745 1.1.1.21 mrg
746 1.1.1.21 mrg PR libstdc++/103650
747 1.1.1.21 mrg * include/Makefile.am: Rename LT_OBJDIR and STDC_HEADERS.
748 1.1.1.21 mrg * include/Makefile.in: Regenerate.
749 1.1.1.21 mrg * testsuite/17_intro/headers/c++1998/103650.cc: New test.
750 1.1.1.21 mrg
751 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
752 1.1.1.21 mrg
753 1.1.1.21 mrg Backported from master:
754 1.1.1.21 mrg 2022-02-04 Jonathan Wakely <jwakely (a] redhat.com>
755 1.1.1.21 mrg
756 1.1.1.21 mrg * include/experimental/bits/fs_ops.h (fs::copy_file): Remove
757 1.1.1.21 mrg noexcept.
758 1.1.1.21 mrg (fs::create_directories): Likewise.
759 1.1.1.21 mrg (fs::remove_all): Likewise.
760 1.1.1.21 mrg * src/filesystem/ops.cc (fs::copy_file): Remove noexcept.
761 1.1.1.21 mrg (fs::create_directories): Likewise.
762 1.1.1.21 mrg (fs::remove_all): Likewise.
763 1.1.1.21 mrg
764 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
765 1.1.1.21 mrg
766 1.1.1.21 mrg Backported from master:
767 1.1.1.21 mrg 2022-04-01 Jonathan Wakely <jwakely (a] redhat.com>
768 1.1.1.21 mrg
769 1.1.1.21 mrg * include/experimental/bits/fs_fwd.h (copy_file): Remove
770 1.1.1.21 mrg incorrect noexcept from declaration.
771 1.1.1.21 mrg * include/experimental/bits/fs_path.h (path::begin, path::end):
772 1.1.1.21 mrg Add noexcept to declarations, to match definitions.
773 1.1.1.21 mrg
774 1.1.1.21 mrg 2022-04-26 Timm Bder <tbaeder (a] redhat.com>
775 1.1.1.21 mrg
776 1.1.1.21 mrg Backported from master:
777 1.1.1.21 mrg 2022-04-01 Timm Bder <tbaeder (a] redhat.com>
778 1.1.1.21 mrg
779 1.1.1.21 mrg * include/bits/fs_ops.h: Fix filename in Doxygen comment.
780 1.1.1.21 mrg * include/experimental/bits/fs_ops.h: Likewise.
781 1.1.1.21 mrg
782 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
783 1.1.1.21 mrg
784 1.1.1.21 mrg Backported from master:
785 1.1.1.21 mrg 2022-04-20 Jonathan Wakely <jwakely (a] redhat.com>
786 1.1.1.21 mrg
787 1.1.1.21 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/constexpr.cc:
788 1.1.1.21 mrg Check correct feature test macro.
789 1.1.1.21 mrg
790 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
791 1.1.1.21 mrg
792 1.1.1.21 mrg Backported from master:
793 1.1.1.21 mrg 2022-04-14 Jonathan Wakely <jwakely (a] redhat.com>
794 1.1.1.21 mrg
795 1.1.1.21 mrg * doc/xml/manual/intro.xml: Fix comment.
796 1.1.1.21 mrg
797 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
798 1.1.1.21 mrg
799 1.1.1.21 mrg Backported from master:
800 1.1.1.21 mrg 2022-03-03 Jonathan Wakely <jwakely (a] redhat.com>
801 1.1.1.21 mrg
802 1.1.1.21 mrg * testsuite/17_intro/names.cc (func): Undef on AIX.
803 1.1.1.21 mrg
804 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
805 1.1.1.21 mrg
806 1.1.1.21 mrg Backported from master:
807 1.1.1.21 mrg 2022-01-27 Jonathan Wakely <jwakely (a] redhat.com>
808 1.1.1.21 mrg
809 1.1.1.21 mrg * include/bits/range_access.h (ranges::advance): Avoid signed
810 1.1.1.21 mrg overflow. Do nothing if already equal to desired result.
811 1.1.1.21 mrg * testsuite/24_iterators/range_operations/advance_overflow.cc:
812 1.1.1.21 mrg New test.
813 1.1.1.21 mrg
814 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
815 1.1.1.21 mrg
816 1.1.1.21 mrg Backported from master:
817 1.1.1.21 mrg 2022-01-06 Jonathan Wakely <jwakely (a] redhat.com>
818 1.1.1.21 mrg
819 1.1.1.21 mrg * testsuite/ext/rope/pthread7-rope.cc: Add dg-timeout-factor.
820 1.1.1.21 mrg
821 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
822 1.1.1.21 mrg
823 1.1.1.21 mrg Backported from master:
824 1.1.1.21 mrg 2022-01-06 Jonathan Wakely <jwakely (a] redhat.com>
825 1.1.1.21 mrg
826 1.1.1.21 mrg PR libstdc++/103911
827 1.1.1.21 mrg * include/std/charconv (__from_chars_alpha_to_num): Return
828 1.1.1.21 mrg char instead of unsigned char. Change invalid return value to
829 1.1.1.21 mrg 127 instead of using numeric trait.
830 1.1.1.21 mrg (__from_chars_alnum): Fix comment. Do not use std::isdigit.
831 1.1.1.21 mrg Change type of variable to char.
832 1.1.1.21 mrg
833 1.1.1.21 mrg 2022-04-26 Pavel I. Kryukov <pavel.kryukov (a] phystech.edu>
834 1.1.1.21 mrg
835 1.1.1.21 mrg Backported from master:
836 1.1.1.21 mrg 2022-01-06 Pavel I. Kryukov <pavel.kryukov (a] phystech.edu>
837 1.1.1.21 mrg Jonathan Wakely <jwakely (a] redhat.com>
838 1.1.1.21 mrg
839 1.1.1.21 mrg PR libstdc++/103853
840 1.1.1.21 mrg * include/bits/forward_list.tcc (forward_list::merge): Check for
841 1.1.1.21 mrg self-merge.
842 1.1.1.21 mrg * testsuite/23_containers/forward_list/operations/merge.cc: New test.
843 1.1.1.21 mrg
844 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
845 1.1.1.21 mrg
846 1.1.1.21 mrg Backported from master:
847 1.1.1.21 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
848 1.1.1.21 mrg
849 1.1.1.21 mrg * include/bits/regex_compiler.tcc (_Compiler::_M_match_token):
850 1.1.1.21 mrg Use reserved name for parameter.
851 1.1.1.21 mrg * testsuite/17_intro/names.cc: Check "token".
852 1.1.1.21 mrg
853 1.1.1.21 mrg 2022-04-26 Jonathan Wakely <jwakely (a] redhat.com>
854 1.1.1.21 mrg
855 1.1.1.21 mrg Backported from master:
856 1.1.1.21 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
857 1.1.1.21 mrg
858 1.1.1.21 mrg * testsuite/17_intro/names.cc: Check 'sz'.
859 1.1.1.21 mrg
860 1.1.1.21 mrg 2022-04-14 Jonathan Wakely <jwakely (a] redhat.com>
861 1.1.1.21 mrg
862 1.1.1.21 mrg * doc/xml/manual/status_cxx1998.xml: Refer to GCC 10 not
863 1.1.1.21 mrg mainline.
864 1.1.1.21 mrg * doc/xml/manual/status_cxx2011.xml: Likewise.
865 1.1.1.21 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
866 1.1.1.21 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
867 1.1.1.21 mrg * doc/xml/manual/status_cxx2020.xml: Likewise.
868 1.1.1.21 mrg * doc/xml/manual/status_cxxtr1.xml: Likewise.
869 1.1.1.21 mrg * doc/xml/manual/status_cxxtr24733.xml: Likewise.
870 1.1.1.21 mrg * doc/html/manual/status.html: Regenerate.
871 1.1.1.21 mrg
872 1.1.1.21 mrg 2022-02-17 Patrick Palka <ppalka (a] redhat.com>
873 1.1.1.21 mrg
874 1.1.1.21 mrg Backported from master:
875 1.1.1.21 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
876 1.1.1.21 mrg
877 1.1.1.21 mrg PR libstdc++/102358
878 1.1.1.21 mrg * include/bits/stl_iterator.h (__niter_base): Make constexpr
879 1.1.1.21 mrg for C++20.
880 1.1.1.21 mrg (__miter_base): Likewise.
881 1.1.1.21 mrg * testsuite/25_algorithms/move/constexpr.cc: New test.
882 1.1.1.21 mrg
883 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
884 1.1.1.21 mrg
885 1.1.1.21 mrg Backported from master:
886 1.1.1.21 mrg 2021-11-18 Jonathan Wakely <jwakely (a] redhat.com>
887 1.1.1.21 mrg
888 1.1.1.21 mrg * include/bits/char_traits.h (__gnu_cxx::char_traits::move):
889 1.1.1.21 mrg Do not compare unrelated pointers during constant evaluation.
890 1.1.1.21 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
891 1.1.1.21 mrg Improve tests for char_traits::move.
892 1.1.1.21 mrg
893 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
894 1.1.1.21 mrg
895 1.1.1.21 mrg Backported from master:
896 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
897 1.1.1.21 mrg
898 1.1.1.21 mrg PR libstdc++/103877
899 1.1.1.21 mrg * doc/xml/faq.xml: Add '-x c++' to preprocessor command.
900 1.1.1.21 mrg * doc/html/faq.html: Regenerate.
901 1.1.1.21 mrg
902 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
903 1.1.1.21 mrg
904 1.1.1.21 mrg Backported from master:
905 1.1.1.21 mrg 2021-12-04 Jonathan Wakely <jwakely (a] redhat.com>
906 1.1.1.21 mrg
907 1.1.1.21 mrg PR libstdc++/103549
908 1.1.1.21 mrg * include/bits/regex.h (match_results): Give names to template
909 1.1.1.21 mrg parameters in first declaration.
910 1.1.1.21 mrg (match_results::_M_begin): Add default member-initializer.
911 1.1.1.21 mrg
912 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
913 1.1.1.21 mrg
914 1.1.1.21 mrg Backported from master:
915 1.1.1.21 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
916 1.1.1.21 mrg
917 1.1.1.21 mrg PR libstdc++/103453
918 1.1.1.21 mrg * config/allocator/malloc_allocator_base.h
919 1.1.1.21 mrg (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define for Clang.
920 1.1.1.21 mrg * config/allocator/new_allocator_base.h
921 1.1.1.21 mrg (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Likewise.
922 1.1.1.21 mrg
923 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
924 1.1.1.21 mrg
925 1.1.1.21 mrg Backported from master:
926 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
927 1.1.1.21 mrg
928 1.1.1.21 mrg * python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Strip
929 1.1.1.21 mrg versioned namespace from the type name that is printed.
930 1.1.1.21 mrg
931 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
932 1.1.1.21 mrg
933 1.1.1.21 mrg Backported from master:
934 1.1.1.21 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
935 1.1.1.21 mrg
936 1.1.1.21 mrg * include/bits/alloc_traits.h (allocator_traits): Add explicit
937 1.1.1.21 mrg specialization for allocator<void>. Improve doxygen comments.
938 1.1.1.21 mrg * include/bits/allocator.h (allocator<void>): Restore for the
939 1.1.1.21 mrg versioned namespace.
940 1.1.1.21 mrg (allocator<void>::construct, allocator<void>::destroy): Remove.
941 1.1.1.21 mrg * include/ext/extptr_allocator.h (_Extptr_allocator<void>):
942 1.1.1.21 mrg Add default constructor and converting constructor.
943 1.1.1.21 mrg
944 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
945 1.1.1.21 mrg
946 1.1.1.21 mrg Backported from master:
947 1.1.1.21 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
948 1.1.1.21 mrg
949 1.1.1.21 mrg PR libstdc++/103086
950 1.1.1.21 mrg * testsuite/libstdc++-prettyprinters/cxx11.cc: Check unique_ptr
951 1.1.1.21 mrg with non-empty pointer and non-empty deleter.
952 1.1.1.21 mrg
953 1.1.1.21 mrg 2022-01-05 Jonathan Wakely <jwakely (a] redhat.com>
954 1.1.1.21 mrg
955 1.1.1.21 mrg Backported from master:
956 1.1.1.21 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
957 1.1.1.21 mrg
958 1.1.1.21 mrg PR libstdc++/103086
959 1.1.1.21 mrg * python/libstdcxx/v6/printers.py (_tuple_impl_get): New helper
960 1.1.1.21 mrg for accessing the tuple element stored in a _Tuple_impl node.
961 1.1.1.21 mrg (tuple_get): New function for accessing a tuple element.
962 1.1.1.21 mrg (unique_ptr_get): New function for accessing a unique_ptr.
963 1.1.1.21 mrg (UniquePointerPrinter, StdPathPrinter): Use unique_ptr_get.
964 1.1.1.21 mrg * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Cast
965 1.1.1.21 mrg tuple to its base class before accessing _M_head_impl.
966 1.1.1.21 mrg
967 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
968 1.1.1.21 mrg
969 1.1.1.21 mrg Backported from master:
970 1.1.1.21 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
971 1.1.1.21 mrg
972 1.1.1.21 mrg PR libstdc++/101571
973 1.1.1.21 mrg * include/bits/ranges_uninitialized.h (_DestroyGuard): Change
974 1.1.1.21 mrg constructor parameter to reference and use addressof.
975 1.1.1.21 mrg * testsuite/util/testsuite_iterators.h: Define deleted operator&
976 1.1.1.21 mrg overloads for test iterators.
977 1.1.1.21 mrg
978 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
979 1.1.1.21 mrg
980 1.1.1.21 mrg Backported from master:
981 1.1.1.21 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
982 1.1.1.21 mrg
983 1.1.1.21 mrg PR libstdc++/101965
984 1.1.1.21 mrg * include/std/charconv (__to_chars_i): Remove redundant check.
985 1.1.1.21 mrg
986 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
987 1.1.1.21 mrg
988 1.1.1.21 mrg Backported from master:
989 1.1.1.21 mrg 2021-10-22 Jonathan Wakely <jwakely (a] redhat.com>
990 1.1.1.21 mrg
991 1.1.1.21 mrg PR libstdc++/102894
992 1.1.1.21 mrg * include/std/any (make_any): Add SFINAE constraint.
993 1.1.1.21 mrg * testsuite/20_util/any/102894.cc: New test.
994 1.1.1.21 mrg
995 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
996 1.1.1.21 mrg
997 1.1.1.21 mrg PR libstdc++/102270
998 1.1.1.21 mrg * include/std/tuple (_Head_base, _Tuple_impl): Add
999 1.1.1.21 mrg _GLIBCXX20_CONSTEXPR to allocator-extended constructors.
1000 1.1.1.21 mrg (tuple<>::swap(tuple&)): Add _GLIBCXX20_CONSTEXPR.
1001 1.1.1.21 mrg * testsuite/20_util/tuple/cons/102270.cc: New test.
1002 1.1.1.21 mrg * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add
1003 1.1.1.21 mrg constexpr to constructor so it can be used for C++20 tests.
1004 1.1.1.21 mrg
1005 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1006 1.1.1.21 mrg
1007 1.1.1.21 mrg Backported from master:
1008 1.1.1.21 mrg 2021-08-09 Jonathan Wakely <jwakely (a] redhat.com>
1009 1.1.1.21 mrg
1010 1.1.1.21 mrg * testsuite/23_containers/unordered_map/cons/default.cc: Add
1011 1.1.1.21 mrg equality comparison operators to allocator.
1012 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/default.cc:
1013 1.1.1.21 mrg Likewise.
1014 1.1.1.21 mrg
1015 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1016 1.1.1.21 mrg
1017 1.1.1.21 mrg Backported from master:
1018 1.1.1.21 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
1019 1.1.1.21 mrg
1020 1.1.1.21 mrg PR libstdc++/100863
1021 1.1.1.21 mrg * include/bits/hashtable.h (_Hashtable): Conditionally delete
1022 1.1.1.21 mrg default constructor by deriving from _Enable_default_constructor.
1023 1.1.1.21 mrg Construct that base-class explicitly in all non-forwarding,
1024 1.1.1.21 mrg non-defaulted constructors.
1025 1.1.1.21 mrg * testsuite/23_containers/unordered_map/cons/default.cc: New test.
1026 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/default.cc: New test.
1027 1.1.1.21 mrg
1028 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1029 1.1.1.21 mrg
1030 1.1.1.21 mrg Backported from master:
1031 1.1.1.21 mrg 2021-06-02 Jonathan Wakely <jwakely (a] redhat.com>
1032 1.1.1.21 mrg
1033 1.1.1.21 mrg PR libstdc++/100863
1034 1.1.1.21 mrg PR libstdc++/65816
1035 1.1.1.21 mrg * include/bits/hashtable_policy.h (_Hashtable_ebo_helper):
1036 1.1.1.21 mrg Value-initialize subobject.
1037 1.1.1.21 mrg * testsuite/23_containers/unordered_map/allocator/default_init.cc:
1038 1.1.1.21 mrg Remove XFAIL.
1039 1.1.1.21 mrg * testsuite/23_containers/unordered_set/allocator/default_init.cc:
1040 1.1.1.21 mrg Remove XFAIL.
1041 1.1.1.21 mrg
1042 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1043 1.1.1.21 mrg
1044 1.1.1.21 mrg Backported from master:
1045 1.1.1.21 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
1046 1.1.1.21 mrg
1047 1.1.1.21 mrg * include/bits/move.h (forward(remove_reference_t<T>&&)):
1048 1.1.1.21 mrg Improve text of static_assert.
1049 1.1.1.21 mrg * testsuite/20_util/forward/c_neg.cc: Adjust dg-error.
1050 1.1.1.21 mrg * testsuite/20_util/forward/f_neg.cc: Likewise.
1051 1.1.1.21 mrg
1052 1.1.1.21 mrg 2021-11-26 Antony Polukhin <antoshkka (a] gmail.com>
1053 1.1.1.21 mrg
1054 1.1.1.21 mrg Backported from master:
1055 1.1.1.21 mrg 2021-08-17 Antony Polukhin <antoshkka (a] gmail.com>
1056 1.1.1.21 mrg Jonathan Wakely <jwakely (a] redhat.com>
1057 1.1.1.21 mrg
1058 1.1.1.21 mrg * include/bits/random.tcc (seed_seq::seed_seq): Reserve capacity
1059 1.1.1.21 mrg if distance is O(1).
1060 1.1.1.21 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
1061 1.1.1.21 mrg line number.
1062 1.1.1.21 mrg
1063 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1064 1.1.1.21 mrg
1065 1.1.1.21 mrg Backported from master:
1066 1.1.1.21 mrg 2021-08-12 Jonathan Wakely <jwakely (a] redhat.com>
1067 1.1.1.21 mrg
1068 1.1.1.21 mrg PR libstdc++/101870
1069 1.1.1.21 mrg * include/c_global/cmath (hypot): Use __promoted_t.
1070 1.1.1.21 mrg (lerp): Add new overload accepting any arithmetic types.
1071 1.1.1.21 mrg * include/ext/type_traits.h (__promoted_t): New alias template.
1072 1.1.1.21 mrg * testsuite/26_numerics/lerp.cc: Moved to...
1073 1.1.1.21 mrg * testsuite/26_numerics/lerp/1.cc: ...here.
1074 1.1.1.21 mrg * testsuite/26_numerics/lerp/constexpr.cc: New test.
1075 1.1.1.21 mrg * testsuite/26_numerics/lerp/version.cc: New test.
1076 1.1.1.21 mrg
1077 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1078 1.1.1.21 mrg
1079 1.1.1.21 mrg * testsuite/27_io/types/1.cc: Add c++11 target selector to
1080 1.1.1.21 mrg warnings.
1081 1.1.1.21 mrg
1082 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1083 1.1.1.21 mrg
1084 1.1.1.21 mrg Backported from master:
1085 1.1.1.21 mrg 2021-05-11 Jonathan Wakely <jwakely (a] redhat.com>
1086 1.1.1.21 mrg
1087 1.1.1.21 mrg * testsuite/20_util/headers/memory/synopsis.cc: Define C++98
1088 1.1.1.21 mrg alternative for macro.
1089 1.1.1.21 mrg * testsuite/20_util/shared_ptr/creation/99006.cc: Add effective
1090 1.1.1.21 mrg target keyword.
1091 1.1.1.21 mrg * testsuite/25_algorithms/copy/debug/99402.cc: Avoid C++11
1092 1.1.1.21 mrg syntax.
1093 1.1.1.21 mrg
1094 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1095 1.1.1.21 mrg
1096 1.1.1.21 mrg * testsuite/23_containers/array/comparison_operators/96851.cc:
1097 1.1.1.21 mrg Skip test in debug mode.
1098 1.1.1.21 mrg
1099 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1100 1.1.1.21 mrg
1101 1.1.1.21 mrg * include/bits/stl_iterator.h: Include required header for
1102 1.1.1.21 mrg std::iterator class template and iterator category tags.
1103 1.1.1.21 mrg
1104 1.1.1.21 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
1105 1.1.1.21 mrg
1106 1.1.1.21 mrg Backported from master:
1107 1.1.1.21 mrg 2021-11-25 Jonathan Wakely <jwakely (a] redhat.com>
1108 1.1.1.21 mrg
1109 1.1.1.21 mrg PR libstdc++/101608
1110 1.1.1.21 mrg * include/bits/ranges_algobase.h (__fill_n_fn): Check for
1111 1.1.1.21 mrg constant evaluation before using memset.
1112 1.1.1.21 mrg * testsuite/25_algorithms/fill_n/constrained.cc: Check
1113 1.1.1.21 mrg byte-sized values as well.
1114 1.1.1.21 mrg
1115 1.1.1.21 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
1116 1.1.1.21 mrg
1117 1.1.1.21 mrg Backported from master:
1118 1.1.1.21 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
1119 1.1.1.21 mrg
1120 1.1.1.21 mrg PR libstdc++/103381
1121 1.1.1.21 mrg * include/ext/bitmap_allocator.h: Include <bits/stl_function.h>
1122 1.1.1.21 mrg instead of <functional>.
1123 1.1.1.21 mrg
1124 1.1.1.21 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1125 1.1.1.21 mrg
1126 1.1.1.21 mrg * include/std/valarray (begin, end): Remove nodiscard attribute.
1127 1.1.1.21 mrg
1128 1.1.1.21 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1129 1.1.1.21 mrg
1130 1.1.1.21 mrg Backported from master:
1131 1.1.1.21 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1132 1.1.1.21 mrg
1133 1.1.1.21 mrg PR libstdc++/103022
1134 1.1.1.21 mrg * include/std/valarray (begin, end): Do not dereference an empty
1135 1.1.1.21 mrg valarray. Add noexcept and [[nodiscard]].
1136 1.1.1.21 mrg * testsuite/26_numerics/valarray/range_access.cc: Check empty
1137 1.1.1.21 mrg valarray. Check iterator properties. Run as well as compiling.
1138 1.1.1.21 mrg * testsuite/26_numerics/valarray/range_access2.cc: Likewise.
1139 1.1.1.21 mrg * testsuite/26_numerics/valarray/103022.cc: New test.
1140 1.1.1.21 mrg
1141 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1142 1.1.1.21 mrg
1143 1.1.1.21 mrg Backported from master:
1144 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1145 1.1.1.21 mrg
1146 1.1.1.21 mrg * testsuite/28_regex/match_results/102667.C: Moved to...
1147 1.1.1.21 mrg * testsuite/28_regex/match_results/102667.cc: ...here.
1148 1.1.1.21 mrg
1149 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1150 1.1.1.21 mrg
1151 1.1.1.21 mrg * testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc:
1152 1.1.1.21 mrg Use -std=gnu++17 option.
1153 1.1.1.21 mrg
1154 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1155 1.1.1.21 mrg
1156 1.1.1.21 mrg Backported from master:
1157 1.1.1.21 mrg 2021-08-20 Jonathan Wakely <jwakely (a] redhat.com>
1158 1.1.1.21 mrg
1159 1.1.1.21 mrg PR libstdc++/90787
1160 1.1.1.21 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc:
1161 1.1.1.21 mrg Use new __gnu_test::permissions_are_testable() function.
1162 1.1.1.21 mrg * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
1163 1.1.1.21 mrg Likewise.
1164 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/exists.cc: Likewise.
1165 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
1166 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/remove.cc: Likewise.
1167 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
1168 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/status.cc: Likewise.
1169 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/symlink_status.cc:
1170 1.1.1.21 mrg Likewise.
1171 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc:
1172 1.1.1.21 mrg Likewise.
1173 1.1.1.21 mrg * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1174 1.1.1.21 mrg Likewise.
1175 1.1.1.21 mrg * testsuite/experimental/filesystem/iterators/recursive_directory_iterator.cc:
1176 1.1.1.21 mrg Likewise.
1177 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/exists.cc:
1178 1.1.1.21 mrg Likewise.
1179 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/is_empty.cc:
1180 1.1.1.21 mrg Likewise.
1181 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/remove.cc:
1182 1.1.1.21 mrg Likewise.
1183 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/remove_all.cc:
1184 1.1.1.21 mrg Likewise.
1185 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1186 1.1.1.21 mrg Likewise.
1187 1.1.1.21 mrg * testsuite/util/testsuite_fs.h (__gnu_test::permissions_are_testable):
1188 1.1.1.21 mrg New function to guess whether testing permissions will work.
1189 1.1.1.21 mrg
1190 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1191 1.1.1.21 mrg
1192 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Remove
1193 1.1.1.21 mrg test directory after making it writable again.
1194 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/remove_all.cc:
1195 1.1.1.21 mrg Likewise.
1196 1.1.1.21 mrg
1197 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1198 1.1.1.21 mrg
1199 1.1.1.21 mrg Backported from master:
1200 1.1.1.21 mrg 2021-06-22 Jonathan Wakely <jwakely (a] redhat.com>
1201 1.1.1.21 mrg
1202 1.1.1.21 mrg * include/bits/random.h (seed_seq): Constrain initializer-list
1203 1.1.1.21 mrg constructor.
1204 1.1.1.21 mrg * include/bits/random.tcc (seed_seq): Add template parameter.
1205 1.1.1.21 mrg * testsuite/26_numerics/random/seed_seq/cons/default.cc: Check
1206 1.1.1.21 mrg for noexcept.
1207 1.1.1.21 mrg * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Check
1208 1.1.1.21 mrg constraints.
1209 1.1.1.21 mrg
1210 1.1.1.21 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1211 1.1.1.21 mrg
1212 1.1.1.21 mrg Backported from master:
1213 1.1.1.21 mrg 2021-05-12 Jonathan Wakely <jwakely (a] redhat.com>
1214 1.1.1.21 mrg
1215 1.1.1.21 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
1216 1.1.1.21 mrg Increase dg-timeout-factor to 4. Fix -Wunused-parameter
1217 1.1.1.21 mrg warnings. Replace bitwise AND with logical AND in loop
1218 1.1.1.21 mrg condition.
1219 1.1.1.21 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
1220 1.1.1.21 mrg Replace bitwise AND with logical AND in loop condition.
1221 1.1.1.21 mrg * testsuite/util/pstl/test_utils.h: Remove unused parameter
1222 1.1.1.21 mrg names.
1223 1.1.1.21 mrg
1224 1.1.1.21 mrg 2021-10-13 Patrick Palka <ppalka (a] redhat.com>
1225 1.1.1.21 mrg
1226 1.1.1.21 mrg Backported from master:
1227 1.1.1.21 mrg 2021-04-28 Patrick Palka <ppalka (a] redhat.com>
1228 1.1.1.21 mrg
1229 1.1.1.21 mrg PR libstdc++/100187
1230 1.1.1.21 mrg PR libstdc++/100237
1231 1.1.1.21 mrg PR libstdc++/100249
1232 1.1.1.21 mrg PR libstdc++/100287
1233 1.1.1.21 mrg * include/bits/ranges_algo.h (__search_n_fn::operator()): Give
1234 1.1.1.21 mrg the __value_comp lambda an explicit bool return type.
1235 1.1.1.21 mrg (__is_permutation_fn::operator()): Give the __proj_scan local
1236 1.1.1.21 mrg variable auto&& return type. Give the __comp_scan lambda an
1237 1.1.1.21 mrg explicit bool return type.
1238 1.1.1.21 mrg (__remove_fn::operator()): Give the __pred lambda an explicit
1239 1.1.1.21 mrg bool return type.
1240 1.1.1.21 mrg (__partition_fn::operator()): Don't std::move __first twice
1241 1.1.1.21 mrg when returning an empty subrange.
1242 1.1.1.21 mrg (__min_fn::operator()): Don't std::move __comp.
1243 1.1.1.21 mrg (__max_fn::operator()): Likewise.
1244 1.1.1.21 mrg (__minmax_fn::operator()): Likewise.
1245 1.1.1.21 mrg
1246 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1247 1.1.1.21 mrg
1248 1.1.1.21 mrg Backported from master:
1249 1.1.1.21 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
1250 1.1.1.21 mrg
1251 1.1.1.21 mrg PR libstdc++/101599
1252 1.1.1.21 mrg * include/bits/ranges_algo.h (__reverse_copy_fn::operator()):
1253 1.1.1.21 mrg Add missing std::move in return statement.
1254 1.1.1.21 mrg (__partition_copy_fn::operator()): Rename templtae parameter
1255 1.1.1.21 mrg _O2 to _Out2. Uglify function parameters out_true and out_false.
1256 1.1.1.21 mrg * include/bits/ranges_algobase.h (__copy_or_move): Add missing
1257 1.1.1.21 mrg std::move to recursive call that unwraps a __normal_iterator
1258 1.1.1.21 mrg output iterator.
1259 1.1.1.21 mrg * testsuite/25_algorithms/copy/constrained.cc (test06): New test.
1260 1.1.1.21 mrg * testsuite/25_algorithms/move/constrained.cc (test05): New test.
1261 1.1.1.21 mrg
1262 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1263 1.1.1.21 mrg
1264 1.1.1.21 mrg Backported from master:
1265 1.1.1.21 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
1266 1.1.1.21 mrg
1267 1.1.1.21 mrg PR libstdc++/101589
1268 1.1.1.21 mrg * include/std/ranges (lazy_split_view::_InnerIter::base): Make
1269 1.1.1.21 mrg the const& overload unconstrained and return a const reference
1270 1.1.1.21 mrg as per LWG 3533. Make unconditionally noexcept.
1271 1.1.1.21 mrg (elements_view::base): Revert accidental r12-569 change.
1272 1.1.1.21 mrg (elements_view::_Iterator::base): Make the const& overload
1273 1.1.1.21 mrg unconstrained and return a const reference as per LWG 3533.
1274 1.1.1.21 mrg Make unconditionally noexcept.
1275 1.1.1.21 mrg
1276 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1277 1.1.1.21 mrg
1278 1.1.1.21 mrg Backported from master:
1279 1.1.1.21 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
1280 1.1.1.21 mrg
1281 1.1.1.21 mrg PR libstdc++/101483
1282 1.1.1.21 mrg * include/std/ranges (join_view::_Iterator::_Iterator): Add
1283 1.1.1.21 mrg missing std::move.
1284 1.1.1.21 mrg
1285 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1286 1.1.1.21 mrg
1287 1.1.1.21 mrg Backported from master:
1288 1.1.1.21 mrg 2021-06-20 Patrick Palka <ppalka (a] redhat.com>
1289 1.1.1.21 mrg
1290 1.1.1.21 mrg * include/std/ranges (split_view::_InnerIter::base): Define as
1291 1.1.1.21 mrg per P2210.
1292 1.1.1.21 mrg
1293 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1294 1.1.1.21 mrg
1295 1.1.1.21 mrg Backported from master:
1296 1.1.1.21 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
1297 1.1.1.21 mrg
1298 1.1.1.21 mrg * include/std/ranges (transform_view::_Iterator::_S_iter_concept):
1299 1.1.1.21 mrg Consider _Base instead of _Vp as per LWG 3555.
1300 1.1.1.21 mrg (elements_view::_Iterator::_S_iter_concept): Likewise.
1301 1.1.1.21 mrg
1302 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1303 1.1.1.21 mrg
1304 1.1.1.21 mrg Backported from master:
1305 1.1.1.21 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
1306 1.1.1.21 mrg
1307 1.1.1.21 mrg * include/std/ranges (split_view::_OuterIter::value_type::begin):
1308 1.1.1.21 mrg Remove the non-const overload, and remove the copyable constraint
1309 1.1.1.21 mrg on the const overload as per LWG 3553.
1310 1.1.1.21 mrg
1311 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1312 1.1.1.21 mrg
1313 1.1.1.21 mrg Backported from master:
1314 1.1.1.21 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
1315 1.1.1.21 mrg
1316 1.1.1.21 mrg * include/bits/stl_iterator.h
1317 1.1.1.21 mrg (__detail::__common_iter_use_postfix_proxy): Add
1318 1.1.1.21 mrg move_constructible constraint as per LWG 3546.
1319 1.1.1.21 mrg (common_iterator::__postfix_proxy): Adjust initializer of
1320 1.1.1.21 mrg _M_keep as per LWG 3546.
1321 1.1.1.21 mrg
1322 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1323 1.1.1.21 mrg
1324 1.1.1.21 mrg Backported from master:
1325 1.1.1.21 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
1326 1.1.1.21 mrg
1327 1.1.1.21 mrg PR libstdc++/100387
1328 1.1.1.21 mrg * include/bits/ranges_algo.h (__minmax_fn::operator()): Rewrite
1329 1.1.1.21 mrg to limit comparison complexity to 3*N/2.
1330 1.1.1.21 mrg (__minmax_element_fn::operator()): Likewise.
1331 1.1.1.21 mrg (shift_right): Avoid premature std::move of __result.
1332 1.1.1.21 mrg * testsuite/25_algorithms/minmax/constrained.cc (test04, test05):
1333 1.1.1.21 mrg New tests.
1334 1.1.1.21 mrg * testsuite/25_algorithms/minmax_element/constrained.cc (test02):
1335 1.1.1.21 mrg Likewise.
1336 1.1.1.21 mrg
1337 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1338 1.1.1.21 mrg
1339 1.1.1.21 mrg Backported from master:
1340 1.1.1.21 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
1341 1.1.1.21 mrg
1342 1.1.1.21 mrg * include/std/concepts (convertible_to): Just use declval as per
1343 1.1.1.21 mrg LWG 3557.
1344 1.1.1.21 mrg
1345 1.1.1.21 mrg 2021-10-12 Patrick Palka <ppalka (a] redhat.com>
1346 1.1.1.21 mrg
1347 1.1.1.21 mrg Backported from master:
1348 1.1.1.21 mrg 2021-05-21 Patrick Palka <ppalka (a] redhat.com>
1349 1.1.1.21 mrg
1350 1.1.1.21 mrg PR libstdc++/100606
1351 1.1.1.21 mrg * include/std/ranges (drop_while_view::begin): Assert the
1352 1.1.1.21 mrg precondition added by LWG 3490.
1353 1.1.1.21 mrg
1354 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1355 1.1.1.21 mrg
1356 1.1.1.21 mrg Backported from master:
1357 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1358 1.1.1.21 mrg
1359 1.1.1.21 mrg * testsuite/20_util/tuple/comparison_operators/overloaded.cc:
1360 1.1.1.21 mrg Restore test for operator<.
1361 1.1.1.21 mrg
1362 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1363 1.1.1.21 mrg
1364 1.1.1.21 mrg Backported from master:
1365 1.1.1.21 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1366 1.1.1.21 mrg
1367 1.1.1.21 mrg * testsuite/27_io/basic_filebuf/close/81256.cc: Moved to...
1368 1.1.1.21 mrg * testsuite/27_io/basic_filebuf/close/wchar_t/81256.cc: ...here.
1369 1.1.1.21 mrg
1370 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1371 1.1.1.21 mrg
1372 1.1.1.21 mrg Backported from master:
1373 1.1.1.21 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
1374 1.1.1.21 mrg
1375 1.1.1.21 mrg * testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc:
1376 1.1.1.21 mrg New test.
1377 1.1.1.21 mrg * testsuite/23_containers/span/trivially_copyable.cc: New test.
1378 1.1.1.21 mrg
1379 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1380 1.1.1.21 mrg
1381 1.1.1.21 mrg Backported from master:
1382 1.1.1.21 mrg 2021-08-16 Jonathan Wakely <jwakely (a] redhat.com>
1383 1.1.1.21 mrg
1384 1.1.1.21 mrg * python/Makefile.am [GLIBCXX_BUILD_DEBUG] (install-data-local):
1385 1.1.1.21 mrg Install another copy of the GDB hook.
1386 1.1.1.21 mrg * python/Makefile.in: Regenerate.
1387 1.1.1.21 mrg
1388 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1389 1.1.1.21 mrg
1390 1.1.1.21 mrg Backported from master:
1391 1.1.1.21 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
1392 1.1.1.21 mrg
1393 1.1.1.21 mrg * python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Define.
1394 1.1.1.21 mrg (build_libstdcxx_dictionary): Register printer for
1395 1.1.1.21 mrg std::error_code and std::error_condition.
1396 1.1.1.21 mrg * testsuite/libstdc++-prettyprinters/cxx11.cc: Test it.
1397 1.1.1.21 mrg
1398 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1399 1.1.1.21 mrg
1400 1.1.1.21 mrg Backported from master:
1401 1.1.1.21 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
1402 1.1.1.21 mrg
1403 1.1.1.21 mrg PR libstdc++/102425
1404 1.1.1.21 mrg * src/c++11/system_error.cc
1405 1.1.1.21 mrg (system_error_category::default_error_condition): Add 0 to
1406 1.1.1.21 mrg switch.
1407 1.1.1.21 mrg * testsuite/19_diagnostics/error_category/102425.cc: New test.
1408 1.1.1.21 mrg
1409 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1410 1.1.1.21 mrg
1411 1.1.1.21 mrg Backported from master:
1412 1.1.1.21 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
1413 1.1.1.21 mrg
1414 1.1.1.21 mrg * include/bits/fs_path.h (advance): Remove non-deducible
1415 1.1.1.21 mrg template parameter.
1416 1.1.1.21 mrg
1417 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1418 1.1.1.21 mrg
1419 1.1.1.21 mrg Backported from master:
1420 1.1.1.21 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
1421 1.1.1.21 mrg
1422 1.1.1.21 mrg PR libstdc++/99876
1423 1.1.1.21 mrg * src/c++17/fs_ops.cc (fs::absolute): Call non-throwing form,
1424 1.1.1.21 mrg to avoid unnecessary current_path() call.
1425 1.1.1.21 mrg
1426 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1427 1.1.1.21 mrg
1428 1.1.1.21 mrg Backported from master:
1429 1.1.1.21 mrg 2021-09-17 Jonathan Wakely <jwakely (a] redhat.com>
1430 1.1.1.21 mrg
1431 1.1.1.21 mrg * testsuite/26_numerics/valarray/dr630-3.C: Moved to...
1432 1.1.1.21 mrg * testsuite/26_numerics/valarray/dr630-3.cc: ...here.
1433 1.1.1.21 mrg * testsuite/27_io/basic_iostream/cons/16251.C: Moved to...
1434 1.1.1.21 mrg * testsuite/27_io/basic_iostream/cons/16251.cc: ...here.
1435 1.1.1.21 mrg
1436 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1437 1.1.1.21 mrg
1438 1.1.1.21 mrg Backported from master:
1439 1.1.1.21 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
1440 1.1.1.21 mrg
1441 1.1.1.21 mrg PR libstdc++/102280
1442 1.1.1.21 mrg * include/std/span (span(Range&&)): Add constraint to deduction
1443 1.1.1.21 mrg guide.
1444 1.1.1.21 mrg
1445 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1446 1.1.1.21 mrg
1447 1.1.1.21 mrg Backported from master:
1448 1.1.1.21 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
1449 1.1.1.21 mrg
1450 1.1.1.21 mrg * testsuite/25_algorithms/is_permutation/2.cc: Include <iterator>.
1451 1.1.1.21 mrg
1452 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1453 1.1.1.21 mrg
1454 1.1.1.21 mrg Backported from master:
1455 1.1.1.21 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
1456 1.1.1.21 mrg
1457 1.1.1.21 mrg * testsuite/20_util/integer_comparisons/greater.cc: New test.
1458 1.1.1.21 mrg
1459 1.1.1.21 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1460 1.1.1.21 mrg
1461 1.1.1.21 mrg Backported from master:
1462 1.1.1.21 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1463 1.1.1.21 mrg
1464 1.1.1.21 mrg PR libstdc++/102667
1465 1.1.1.21 mrg * include/bits/regex.h (match_result::empty()): Optimize by
1466 1.1.1.21 mrg calling the base function directly.
1467 1.1.1.21 mrg (match_results::end()): Check _Base_type::empty() not empty().
1468 1.1.1.21 mrg * testsuite/28_regex/match_results/102667.C: New test.
1469 1.1.1.21 mrg
1470 1.1.1.21 mrg 2021-08-23 Jonathan Wakely <jwakely (a] redhat.com>
1471 1.1.1.21 mrg
1472 1.1.1.21 mrg Backported from master:
1473 1.1.1.21 mrg 2021-08-23 Jonathan Wakely <jwakely (a] redhat.com>
1474 1.1.1.21 mrg
1475 1.1.1.21 mrg * include/std/ranges (basic_istream_view): Add default template
1476 1.1.1.21 mrg argument.
1477 1.1.1.21 mrg * testsuite/std/ranges/istream_view.cc: Check it.
1478 1.1.1.21 mrg
1479 1.1.1.21 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
1480 1.1.1.21 mrg
1481 1.1.1.21 mrg Backported from master:
1482 1.1.1.21 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
1483 1.1.1.21 mrg
1484 1.1.1.21 mrg PR libstdc++/100139
1485 1.1.1.21 mrg * doc/xml/manual/status_cxx2020.xml: Add P1739R4 to status table.
1486 1.1.1.21 mrg * doc/html/manual/status.html: Regenerate.
1487 1.1.1.21 mrg
1488 1.1.1.21 mrg 2021-08-17 Thomas Schwinge <thomas (a] codesourcery.com>
1489 1.1.1.21 mrg
1490 1.1.1.21 mrg Backported from master:
1491 1.1.1.21 mrg 2021-08-17 Thomas Schwinge <thomas (a] codesourcery.com>
1492 1.1.1.21 mrg
1493 1.1.1.21 mrg * testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose,
1494 1.1.1.21 mrg continued.
1495 1.1.1.21 mrg
1496 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1497 1.1.1.21 mrg
1498 1.1.1.21 mrg Backported from master:
1499 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1500 1.1.1.21 mrg
1501 1.1.1.21 mrg PR libstdc++/101866
1502 1.1.1.21 mrg * testsuite/experimental/random/randint.cc: Loop and retry if
1503 1.1.1.21 mrg reseed() produces the same sequence.
1504 1.1.1.21 mrg
1505 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1506 1.1.1.21 mrg
1507 1.1.1.21 mrg Backported from master:
1508 1.1.1.21 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
1509 1.1.1.21 mrg
1510 1.1.1.21 mrg PR libstdc++/101510
1511 1.1.1.21 mrg * src/c++17/fs_ops.cc (fs::create_directories): Use status
1512 1.1.1.21 mrg instead of symlink_status.
1513 1.1.1.21 mrg * src/filesystem/ops.cc (fs::create_directories): Likewise.
1514 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/create_directories.cc:
1515 1.1.1.21 mrg Check symlink to existing directory.
1516 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/create_directory.cc: Do
1517 1.1.1.21 mrg not test with symlinks on Windows.
1518 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/create_directories.cc:
1519 1.1.1.21 mrg Check symlink to existing directory.
1520 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/create_directory.cc:
1521 1.1.1.21 mrg Do not test with symlinks on Windows.
1522 1.1.1.21 mrg
1523 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1524 1.1.1.21 mrg
1525 1.1.1.21 mrg Backported from master:
1526 1.1.1.21 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
1527 1.1.1.21 mrg
1528 1.1.1.21 mrg PR libstdc++/101510
1529 1.1.1.21 mrg * src/c++17/fs_ops.cc (create_dir): Adjust whitespace.
1530 1.1.1.21 mrg * testsuite/27_io/filesystem/operations/create_directory.cc:
1531 1.1.1.21 mrg Test creating directory with name of existing symlink to
1532 1.1.1.21 mrg directory.
1533 1.1.1.21 mrg * testsuite/experimental/filesystem/operations/create_directory.cc:
1534 1.1.1.21 mrg Likewise.
1535 1.1.1.21 mrg
1536 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1537 1.1.1.21 mrg
1538 1.1.1.21 mrg Backported from master:
1539 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1540 1.1.1.21 mrg
1541 1.1.1.21 mrg PR libstdc++/101056
1542 1.1.1.21 mrg * libsupc++/compare (compare_partial_order_fallback): Add
1543 1.1.1.21 mrg constraint using reversed parameter order, as per LWG 3465.
1544 1.1.1.21 mrg * testsuite/18_support/comparisons/algorithms/fallback.cc:
1545 1.1.1.21 mrg Adjust expected result.
1546 1.1.1.21 mrg
1547 1.1.1.21 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
1548 1.1.1.21 mrg
1549 1.1.1.21 mrg Backported from master:
1550 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1551 1.1.1.21 mrg
1552 1.1.1.21 mrg * libsupc++/compare (__decayed_same_as): New helper concept.
1553 1.1.1.21 mrg (strong_order, weak_order, partial_order): Constrain with new
1554 1.1.1.21 mrg concept instead of using static_assert.
1555 1.1.1.21 mrg (compare_strong_order_fallback, compare_weak_order_fallback)
1556 1.1.1.21 mrg (compare_partial_order_fallback): Likewise. Do not deduce return
1557 1.1.1.21 mrg types. Remove redundant if-constexpr checks.
1558 1.1.1.21 mrg * testsuite/18_support/comparisons/algorithms/fallback.cc: New test.
1559 1.1.1.21 mrg
1560 1.1.1.21 mrg 2021-08-10 Jonathan Wakely <jwakely (a] redhat.com>
1561 1.1.1.21 mrg
1562 1.1.1.21 mrg Backported from master:
1563 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1564 1.1.1.21 mrg
1565 1.1.1.21 mrg PR libstdc++/100894
1566 1.1.1.21 mrg * include/std/type_traits (__common_ref_impl<X&, Y&>): Only
1567 1.1.1.21 mrg use the type if it's a reference.
1568 1.1.1.21 mrg * testsuite/20_util/common_reference/100894.cc: New test.
1569 1.1.1.21 mrg
1570 1.1.1.21 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
1571 1.1.1.21 mrg
1572 1.1.1.21 mrg Backported from master:
1573 1.1.1.21 mrg 2021-04-15 Jonathan Wakely <jwakely (a] redhat.com>
1574 1.1.1.21 mrg
1575 1.1.1.21 mrg PR libstdc++/96657
1576 1.1.1.21 mrg * libsupc++/Makefile.am: Add atomicity.cc here.
1577 1.1.1.21 mrg * src/c++98/Makefile.am: Remove it from here.
1578 1.1.1.21 mrg * libsupc++/Makefile.in: Regenerate.
1579 1.1.1.21 mrg * src/c++98/Makefile.in: Regenerate.
1580 1.1.1.21 mrg * testsuite/18_support/exception_ptr/96657.cc: New test.
1581 1.1.1.21 mrg
1582 1.1.1.21 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
1583 1.1.1.21 mrg
1584 1.1.1.21 mrg Backported from master:
1585 1.1.1.21 mrg 2021-06-07 Jonathan Wakely <jwakely (a] redhat.com>
1586 1.1.1.21 mrg
1587 1.1.1.21 mrg PR libstdc++/98842
1588 1.1.1.21 mrg * include/std/optional (operator<=>(const optional<T>& const U&)):
1589 1.1.1.21 mrg Add missing constraint and add workaround for template
1590 1.1.1.21 mrg recursion.
1591 1.1.1.21 mrg * testsuite/20_util/optional/relops/three_way.cc: Check that
1592 1.1.1.21 mrg type without equality comparison cannot be compared when wrapped
1593 1.1.1.21 mrg in std::optional.
1594 1.1.1.21 mrg
1595 1.1.1.21 mrg 2021-07-14 Jonathan Wakely <jwakely (a] redhat.com>
1596 1.1.1.21 mrg
1597 1.1.1.21 mrg Backported from master:
1598 1.1.1.21 mrg 2021-07-13 Jonathan Wakely <jwakely (a] redhat.com>
1599 1.1.1.21 mrg
1600 1.1.1.21 mrg PR c++/101361
1601 1.1.1.21 mrg * include/std/string_view (ends_with): Use traits_type::compare
1602 1.1.1.21 mrg directly.
1603 1.1.1.21 mrg
1604 1.1.1.21 mrg 2021-07-14 Jonathan Wakely <jwakely (a] redhat.com>
1605 1.1.1.21 mrg
1606 1.1.1.21 mrg Backported from master:
1607 1.1.1.21 mrg 2021-07-12 Jonathan Wakely <jwakely (a] redhat.com>
1608 1.1.1.21 mrg
1609 1.1.1.21 mrg PR libstdc++/101411
1610 1.1.1.21 mrg * include/std/span (as_writable_bytes): Add requires-clause.
1611 1.1.1.21 mrg * testsuite/23_containers/span/101411.cc: New test.
1612 1.1.1.21 mrg
1613 1.1.1.21 mrg 2021-07-06 Avi Kivity <avi (a] scylladb.com>
1614 1.1.1.21 mrg
1615 1.1.1.21 mrg Backported from master:
1616 1.1.1.21 mrg 2021-06-07 Avi Kivity <avi (a] scylladb.com>
1617 1.1.1.21 mrg
1618 1.1.1.21 mrg PR libstdc++/100900
1619 1.1.1.21 mrg * include/std/ranges (elements_view::__iter_cat::_S_iter_cat):
1620 1.1.1.21 mrg Add missing typename.
1621 1.1.1.21 mrg
1622 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1623 1.1.1.21 mrg
1624 1.1.1.21 mrg Backported from master:
1625 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1626 1.1.1.21 mrg
1627 1.1.1.21 mrg PR libstdc++/95833
1628 1.1.1.21 mrg * include/std/numeric (reduce(Iter, Iter, T, BinaryOp)): Replace
1629 1.1.1.21 mrg incorrect static_assert with ones matching the 'Mandates'
1630 1.1.1.21 mrg conditions in the standard.
1631 1.1.1.21 mrg * testsuite/26_numerics/reduce/95833.cc: New test.
1632 1.1.1.21 mrg
1633 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1634 1.1.1.21 mrg
1635 1.1.1.21 mrg * include/std/variant (__same_types, __check_visitor_results):
1636 1.1.1.21 mrg Remove.
1637 1.1.1.21 mrg
1638 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1639 1.1.1.21 mrg
1640 1.1.1.21 mrg Backported from master:
1641 1.1.1.21 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1642 1.1.1.21 mrg
1643 1.1.1.21 mrg * include/std/future (promise::set_value): Check for existence
1644 1.1.1.21 mrg of shared state before dereferncing it.
1645 1.1.1.21 mrg (promise::set_exception, promise::set_value_at_thread_exit)
1646 1.1.1.21 mrg (promise::set_exception_at_thread_exit): Likewise.
1647 1.1.1.21 mrg (promise<R&>::set_value, promise<R&>::set_exception)
1648 1.1.1.21 mrg (promise<R&>::set_value_at_thread_exit)
1649 1.1.1.21 mrg (promise<R&>::set_exception_at_thread_exit): Likewise.
1650 1.1.1.21 mrg (promise<void>::set_value, promise<void>::set_exception)
1651 1.1.1.21 mrg (promise<void>::set_value_at_thread_exit)
1652 1.1.1.21 mrg (promise<void>::set_exception_at_thread_exit): Likewise.
1653 1.1.1.21 mrg * testsuite/30_threads/promise/members/at_thread_exit2.cc:
1654 1.1.1.21 mrg Remove unused variable.
1655 1.1.1.21 mrg
1656 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1657 1.1.1.21 mrg
1658 1.1.1.21 mrg Backported from master:
1659 1.1.1.21 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1660 1.1.1.21 mrg
1661 1.1.1.21 mrg * include/bits/basic_string.h (basic_string(const CharT*, const A&)):
1662 1.1.1.21 mrg Do not do arithmetic on null pointer.
1663 1.1.1.21 mrg
1664 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1665 1.1.1.21 mrg
1666 1.1.1.21 mrg Backported from master:
1667 1.1.1.21 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1668 1.1.1.21 mrg
1669 1.1.1.21 mrg * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
1670 1.1.1.21 mrg (find_key_pointer(key_const_reference, false_type))
1671 1.1.1.21 mrg (find_key_pointer(key_const_reference, true_type)): Do not
1672 1.1.1.21 mrg dereference null pointer.
1673 1.1.1.21 mrg
1674 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1675 1.1.1.21 mrg
1676 1.1.1.21 mrg Backported from master:
1677 1.1.1.21 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1678 1.1.1.21 mrg
1679 1.1.1.21 mrg * testsuite/20_util/from_chars/3.cc: Use unsigned type to avoid
1680 1.1.1.21 mrg overflow.
1681 1.1.1.21 mrg * testsuite/24_iterators/reverse_iterator/2.cc: Do not add
1682 1.1.1.21 mrg non-zero value to null pointer.
1683 1.1.1.21 mrg * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc:
1684 1.1.1.21 mrg Use past-the-end iterator for result.
1685 1.1.1.21 mrg * testsuite/25_algorithms/move_backward/69478.cc: Likewise.
1686 1.1.1.21 mrg * testsuite/25_algorithms/move_backward/93872.cc: Likewise.
1687 1.1.1.21 mrg
1688 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1689 1.1.1.21 mrg
1690 1.1.1.21 mrg Backported from master:
1691 1.1.1.21 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1692 1.1.1.21 mrg
1693 1.1.1.21 mrg PR libstdc++/100384
1694 1.1.1.21 mrg * include/std/variant (__get_t): New alias template yielding the
1695 1.1.1.21 mrg return type of std::get<N> on a variant.
1696 1.1.1.21 mrg (__visit_result_t): New alias template yielding the result of
1697 1.1.1.21 mrg std::visit.
1698 1.1.1.21 mrg (__same_types): Move into namespace __detail::__variant.
1699 1.1.1.21 mrg (__check_visitor_results): Likewise. Use __invoke_result_t and
1700 1.1.1.21 mrg __get_t.
1701 1.1.1.21 mrg (__check_visitor_result): Remove.
1702 1.1.1.21 mrg (visit): Use __visit_result_t for return type.
1703 1.1.1.21 mrg * testsuite/20_util/variant/100384.cc: New test.
1704 1.1.1.21 mrg
1705 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1706 1.1.1.21 mrg
1707 1.1.1.21 mrg Backported from master:
1708 1.1.1.21 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
1709 1.1.1.21 mrg
1710 1.1.1.21 mrg PR libstdc++/99006
1711 1.1.1.21 mrg * include/bits/shared_ptr.h (allocate_shared): Assert that _Tp
1712 1.1.1.21 mrg is not an array type.
1713 1.1.1.21 mrg * include/bits/shared_ptr_base.h (__allocate_shared): Likewise.
1714 1.1.1.21 mrg * testsuite/20_util/shared_ptr/creation/99006.cc: New test.
1715 1.1.1.21 mrg
1716 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1717 1.1.1.21 mrg
1718 1.1.1.21 mrg Backported from master:
1719 1.1.1.21 mrg 2021-05-11 Jonathan Wakely <jwakely (a] redhat.com>
1720 1.1.1.21 mrg
1721 1.1.1.21 mrg * include/bits/allocator.h (allocator<void>) [C++20]: Add
1722 1.1.1.21 mrg missing noexcept to constructor. Restore missing POCMA and
1723 1.1.1.21 mrg is_always_equal_traits.
1724 1.1.1.21 mrg * include/bits/memoryfwd.h (allocator_traits): Declare.
1725 1.1.1.21 mrg * include/ext/malloc_allocator.h (malloc_allocator::allocate):
1726 1.1.1.21 mrg Add nodiscard attribute. Add static assertion for LWG 3307.
1727 1.1.1.21 mrg * include/ext/new_allocator.h (new_allocator::allocate): Add
1728 1.1.1.21 mrg static assertion for LWG 3307.
1729 1.1.1.21 mrg * testsuite/20_util/allocator/void.cc: Check that converting
1730 1.1.1.21 mrg constructor is noexcept. Check for propagation traits and
1731 1.1.1.21 mrg size_type and difference_type. Check that pointer and
1732 1.1.1.21 mrg const_pointer are gone in C++20.
1733 1.1.1.21 mrg
1734 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1735 1.1.1.21 mrg
1736 1.1.1.21 mrg Backported from master:
1737 1.1.1.21 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
1738 1.1.1.21 mrg
1739 1.1.1.21 mrg * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)):
1740 1.1.1.21 mrg Initialize a non-reference deleter from an rvalue, as per LWG
1741 1.1.1.21 mrg 3548.
1742 1.1.1.21 mrg (__shared_ptr::_UniqCompatible): Add missing constraint.
1743 1.1.1.21 mrg * testsuite/20_util/shared_ptr/cons/lwg3548.cc: New test.
1744 1.1.1.21 mrg * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Check
1745 1.1.1.21 mrg constraints.
1746 1.1.1.21 mrg
1747 1.1.1.21 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
1748 1.1.1.21 mrg
1749 1.1.1.21 mrg Backported from master:
1750 1.1.1.21 mrg 2021-06-17 Jonathan Wakely <jwakely (a] redhat.com>
1751 1.1.1.21 mrg
1752 1.1.1.21 mrg PR libstdc++/91488
1753 1.1.1.21 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string): Only
1754 1.1.1.21 mrg define C++20 value when std::is_constant_evaluated is available.
1755 1.1.1.21 mrg * include/bits/char_traits.h (__cpp_lib_constexpr_char_traits):
1756 1.1.1.21 mrg Likewise.
1757 1.1.1.21 mrg (__constant_string_p, __constant_array_p): Give external
1758 1.1.1.21 mrg linkage.
1759 1.1.1.21 mrg * include/std/version (__cpp_lib_constexpr_char_traits)
1760 1.1.1.21 mrg (__cpp_lib_constexpr_string): Only define C++20 values when
1761 1.1.1.21 mrg is_constant_evaluated is available.
1762 1.1.1.21 mrg
1763 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1764 1.1.1.21 mrg
1765 1.1.1.21 mrg Backported from master:
1766 1.1.1.21 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
1767 1.1.1.21 mrg
1768 1.1.1.21 mrg * testsuite/20_util/scoped_allocator/69293_neg.cc: Add dg-error
1769 1.1.1.21 mrg for additional errors in C++20.
1770 1.1.1.21 mrg * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
1771 1.1.1.21 mrg * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
1772 1.1.1.21 mrg
1773 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1774 1.1.1.21 mrg
1775 1.1.1.21 mrg Backported from master:
1776 1.1.1.21 mrg 2021-06-09 Jonathan Wakely <jwakely (a] redhat.com>
1777 1.1.1.21 mrg
1778 1.1.1.21 mrg PR libstdc++/100982
1779 1.1.1.21 mrg * include/std/optional (optional::operator=(const optional<U>&)):
1780 1.1.1.21 mrg Fix value category used in is_assignable check.
1781 1.1.1.21 mrg * testsuite/20_util/optional/assignment/100982.cc: New test.
1782 1.1.1.21 mrg
1783 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1784 1.1.1.21 mrg
1785 1.1.1.21 mrg Backported from master:
1786 1.1.1.21 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
1787 1.1.1.21 mrg
1788 1.1.1.21 mrg PR libstdc++/101034
1789 1.1.1.21 mrg * include/std/any (any(in_place_t<T>, initializer_list<U>, A&&...))
1790 1.1.1.21 mrg (any::emplace<T>(initializer_list<U>, A&&...)): Fix constraint
1791 1.1.1.21 mrg to use lvalue.
1792 1.1.1.21 mrg * testsuite/20_util/any/cons/101034.cc: New test.
1793 1.1.1.21 mrg
1794 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1795 1.1.1.21 mrg
1796 1.1.1.21 mrg Backported from master:
1797 1.1.1.21 mrg 2021-06-03 Patrick Palka <ppalka (a] redhat.com>
1798 1.1.1.21 mrg
1799 1.1.1.21 mrg PR libstdc++/100770
1800 1.1.1.21 mrg * include/bits/ranges_algo.h (__detail::__can_reread_output):
1801 1.1.1.21 mrg Factor out this concept from ...
1802 1.1.1.21 mrg (__unique_copy_fn::operator()): ... here. Use the concept
1803 1.1.1.21 mrg throughout.
1804 1.1.1.21 mrg * testsuite/std/ranges/range.cc: Remove now ill-formed use
1805 1.1.1.21 mrg of range_value_t on an output_range.
1806 1.1.1.21 mrg * testsuite/util/testsuite_iterators.h (output_iterator_wrapper):
1807 1.1.1.21 mrg Define value_type, pointer and reference member types to void.
1808 1.1.1.21 mrg
1809 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1810 1.1.1.21 mrg
1811 1.1.1.21 mrg Backported from master:
1812 1.1.1.21 mrg 2021-05-21 Patrick Palka <ppalka (a] redhat.com>
1813 1.1.1.21 mrg
1814 1.1.1.21 mrg PR libstdc++/100690
1815 1.1.1.21 mrg * include/std/ranges (iota_view::_Sentinel::_M_distance_from):
1816 1.1.1.21 mrg Split out this member function from ...
1817 1.1.1.21 mrg (iota_view::_Sentinel::operator-): ... here, for sake of access
1818 1.1.1.21 mrg control.
1819 1.1.1.21 mrg * testsuite/std/ranges/iota/iota_view.cc (test05): New test.
1820 1.1.1.21 mrg
1821 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1822 1.1.1.21 mrg
1823 1.1.1.21 mrg Backported from master:
1824 1.1.1.21 mrg 2021-05-06 Patrick Palka <ppalka (a] redhat.com>
1825 1.1.1.21 mrg
1826 1.1.1.21 mrg * include/std/ranges (filter_view::_Iterator::base): Make the
1827 1.1.1.21 mrg const& overload unconstrained and return a const reference as
1828 1.1.1.21 mrg per LWG 3533. Make unconditionally noexcept.
1829 1.1.1.21 mrg (transform_view::_Iterator::base): Likewise.
1830 1.1.1.21 mrg (elements_view::_Iterator::base): Likewise.
1831 1.1.1.21 mrg
1832 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1833 1.1.1.21 mrg
1834 1.1.1.21 mrg Backported from master:
1835 1.1.1.21 mrg 2021-05-06 Patrick Palka <ppalka (a] redhat.com>
1836 1.1.1.21 mrg
1837 1.1.1.21 mrg * include/bits/stl_iterator.h (move_iterator::base): Make the
1838 1.1.1.21 mrg const& overload unconstrained and return a const reference as
1839 1.1.1.21 mrg per LWG 3391. Make unconditionally noexcept.
1840 1.1.1.21 mrg (counted_iterator::base): Likewise.
1841 1.1.1.21 mrg * testsuite/24_iterators/move_iterator/lwg3391.cc: New test.
1842 1.1.1.21 mrg * testsuite/24_iterators/move_iterator/move_only.cc: Adjust
1843 1.1.1.21 mrg has_member_base concept to decay-copy the result of base().
1844 1.1.1.21 mrg
1845 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1846 1.1.1.21 mrg
1847 1.1.1.21 mrg Backported from master:
1848 1.1.1.21 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
1849 1.1.1.21 mrg
1850 1.1.1.21 mrg PR libstdc++/100631
1851 1.1.1.21 mrg * include/std/ranges (elements_view::_Sentinel::operator-): Use
1852 1.1.1.21 mrg _M_distance_from in the other operator- overload too.
1853 1.1.1.21 mrg * testsuite/std/ranges/adaptors/elements.cc (test06): Augment test.
1854 1.1.1.21 mrg
1855 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1856 1.1.1.21 mrg
1857 1.1.1.21 mrg Backported from master:
1858 1.1.1.21 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
1859 1.1.1.21 mrg
1860 1.1.1.21 mrg PR libstdc++/100631
1861 1.1.1.21 mrg * include/std/ranges (elements_view::_Iterator): Also befriend
1862 1.1.1.21 mrg _Sentinel<!_Const>.
1863 1.1.1.21 mrg (elements_view::_Sentinel::_M_equal): Templatize.
1864 1.1.1.21 mrg (elements_view::_Sentinel::_M_distance_from): Split out from ...
1865 1.1.1.21 mrg (elements_view::_Sentinel::operator-): ... here. Depend on
1866 1.1.1.21 mrg _Base2 instead of _Base in the return type.
1867 1.1.1.21 mrg * testsuite/std/ranges/adaptors/elements.cc (test06, test07):
1868 1.1.1.21 mrg New tests.
1869 1.1.1.21 mrg
1870 1.1.1.21 mrg 2021-06-10 Patrick Palka <ppalka (a] redhat.com>
1871 1.1.1.21 mrg
1872 1.1.1.21 mrg Backported from master:
1873 1.1.1.21 mrg 2021-05-20 Patrick Palka <ppalka (a] redhat.com>
1874 1.1.1.21 mrg
1875 1.1.1.21 mrg PR libstdc++/100639
1876 1.1.1.21 mrg * include/bits/stl_iterator.h (reverse_iterator::difference_type):
1877 1.1.1.21 mrg In C++20 mode, define in terms of iter_difference_t as per P0896R4.
1878 1.1.1.21 mrg (reverse_iterator::reference): Likewise, but with iter_reference_t.
1879 1.1.1.21 mrg (reverse_iterator::value_type): Likewise, but with iter_value_t.
1880 1.1.1.21 mrg * testsuite/std/ranges/adaptors/reverse.cc (test08): New test.
1881 1.1.1.21 mrg * testsuite/24_iterators/reverse_iterator/100639.cc: New test.
1882 1.1.1.21 mrg
1883 1.1.1.21 mrg 2021-06-03 Jonathan Wakely <jwakely (a] redhat.com>
1884 1.1.1.21 mrg
1885 1.1.1.21 mrg Backported from master:
1886 1.1.1.21 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
1887 1.1.1.21 mrg
1888 1.1.1.21 mrg PR libstdc++/100833
1889 1.1.1.21 mrg * include/bits/range_access.h (ranges::advance(iter, n, sentinel)):
1890 1.1.1.21 mrg Fix return value for no-op case.
1891 1.1.1.21 mrg * testsuite/24_iterators/range_operations/advance.cc: Test
1892 1.1.1.21 mrg return values of three-argument overload.
1893 1.1.1.21 mrg
1894 1.1.1.21 mrg 2021-06-03 Jonathan Wakely <jwakely (a] redhat.com>
1895 1.1.1.21 mrg
1896 1.1.1.21 mrg Backported from master:
1897 1.1.1.21 mrg 2021-05-26 Jonathan Wakely <jwakely (a] redhat.com>
1898 1.1.1.21 mrg
1899 1.1.1.21 mrg PR libstdc++/100768
1900 1.1.1.21 mrg * include/bits/range_access.h (ranges::advance)
1901 1.1.1.21 mrg (ranges::distance, ranges::next, ranges::prev): Replace
1902 1.1.1.21 mrg function templates with function objects.
1903 1.1.1.21 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
1904 1.1.1.21 mrg Adjust for changes to function objects.
1905 1.1.1.21 mrg * testsuite/std/ranges/adaptors/elements.cc: Add using
1906 1.1.1.21 mrg declarations for names from namespace ranges.
1907 1.1.1.21 mrg * testsuite/std/ranges/adaptors/transform.cc: Likewise.
1908 1.1.1.21 mrg * testsuite/24_iterators/range_operations/100768.cc: New test.
1909 1.1.1.21 mrg
1910 1.1.1.21 mrg 2021-06-03 Jonathan Wakely <jwakely (a] redhat.com>
1911 1.1.1.21 mrg
1912 1.1.1.21 mrg Backported from master:
1913 1.1.1.21 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
1914 1.1.1.21 mrg
1915 1.1.1.21 mrg PR libstdc++/99453
1916 1.1.1.21 mrg * python/Makefile.am: Use archive name for printer hook if no
1917 1.1.1.21 mrg dynamic library name is available.
1918 1.1.1.21 mrg * python/Makefile.in: Regenerate.
1919 1.1.1.21 mrg
1920 1.1.1.21 mrg 2021-06-03 Philippe Blain <levraiphilippeblain (a] gmail.com>
1921 1.1.1.21 mrg
1922 1.1.1.21 mrg Backported from master:
1923 1.1.1.21 mrg 2021-04-21 Philippe Blain <levraiphilippeblain (a] gmail.com>
1924 1.1.1.21 mrg Jonathan Wakely <jwakely (a] redhat.com>
1925 1.1.1.21 mrg
1926 1.1.1.21 mrg PR libstdc++/99453
1927 1.1.1.21 mrg * python/Makefile.am: Install libstdc++*-gdb.py more robustly.
1928 1.1.1.21 mrg * python/Makefile.in: Regenerate.
1929 1.1.1.21 mrg
1930 1.1.1.21 mrg 2021-05-17 Jonathan Wakely <jwakely (a] redhat.com>
1931 1.1.1.21 mrg
1932 1.1.1.21 mrg PR libstdc++/100630
1933 1.1.1.21 mrg * include/bits/fs_path.h (__is_constructible_from): Test
1934 1.1.1.21 mrg construction from a const lvalue, not an rvalue.
1935 1.1.1.21 mrg * include/experimental/bits/fs_path.h (__is_constructible_from):
1936 1.1.1.21 mrg Likewise.
1937 1.1.1.21 mrg * testsuite/27_io/filesystem/path/construct/100630.cc: New test.
1938 1.1.1.21 mrg * testsuite/experimental/filesystem/path/construct/100630.cc:
1939 1.1.1.21 mrg New test.
1940 1.1.1.21 mrg
1941 1.1.1.21 mrg 2021-05-17 Jonathan Wakely <jwakely (a] redhat.com>
1942 1.1.1.21 mrg
1943 1.1.1.21 mrg Backported from master:
1944 1.1.1.21 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
1945 1.1.1.21 mrg
1946 1.1.1.21 mrg * python/libstdcxx/v6/printers.py (find_type): Use tag attribute
1947 1.1.1.21 mrg instead of unqualified() method.
1948 1.1.1.21 mrg
1949 1.1.1.21 mrg 2021-05-05 Patrick Palka <ppalka (a] redhat.com>
1950 1.1.1.21 mrg
1951 1.1.1.21 mrg Backported from master:
1952 1.1.1.21 mrg 2021-05-05 Patrick Palka <ppalka (a] redhat.com>
1953 1.1.1.21 mrg
1954 1.1.1.21 mrg * include/std/ranges (transform_view::_Iterator::iter_swap):
1955 1.1.1.21 mrg Remove as per LWG 3520.
1956 1.1.1.21 mrg (join_view::_Iterator::iter_swap): Add indirectly_swappable
1957 1.1.1.21 mrg constraint as per LWG 3517.
1958 1.1.1.21 mrg
1959 1.1.1.21 mrg 2021-05-04 Patrick Palka <ppalka (a] redhat.com>
1960 1.1.1.21 mrg
1961 1.1.1.21 mrg Backported from master:
1962 1.1.1.21 mrg 2021-04-30 Patrick Palka <ppalka (a] redhat.com>
1963 1.1.1.21 mrg
1964 1.1.1.21 mrg * include/std/ranges (split_view::_InnerIter::operator++):
1965 1.1.1.21 mrg Depend on _Base instead of _Vp directly, as per LWG 3532.
1966 1.1.1.21 mrg
1967 1.1.1.21 mrg 2021-05-04 Patrick Palka <ppalka (a] redhat.com>
1968 1.1.1.21 mrg
1969 1.1.1.21 mrg Backported from master:
1970 1.1.1.21 mrg 2021-04-20 Patrick Palka <ppalka (a] redhat.com>
1971 1.1.1.21 mrg
1972 1.1.1.21 mrg PR libstdc++/95983
1973 1.1.1.21 mrg * include/bits/stl_iterator.h (__detail::__move_iter_cat):
1974 1.1.1.21 mrg Define.
1975 1.1.1.21 mrg (move_iterator): Derive from the above in C++20 in order to
1976 1.1.1.21 mrg conditionally define iterator_category as per P2259.
1977 1.1.1.21 mrg (move_iterator::__base_cat): No longer used, so remove.
1978 1.1.1.21 mrg (move_iterator::iterator_category): Remove in C++20.
1979 1.1.1.21 mrg (__detail::__common_iter_use_postfix_proxy): Define.
1980 1.1.1.21 mrg (common_iterator::_Proxy): Rename to ...
1981 1.1.1.21 mrg (common_iterator:__arrow_proxy): ... this.
1982 1.1.1.21 mrg (common_iterator::__postfix_proxy): Define as per P2259.
1983 1.1.1.21 mrg (common_iterator::operator->): Adjust.
1984 1.1.1.21 mrg (common_iterator::operator++): Adjust as per P2259.
1985 1.1.1.21 mrg (iterator_traits<common_iterator>::_S_iter_cat): Define.
1986 1.1.1.21 mrg (iterator_traits<common_iterator>::iterator_category): Change as
1987 1.1.1.21 mrg per P2259.
1988 1.1.1.21 mrg (__detail::__counted_iter_value_type): Define.
1989 1.1.1.21 mrg (__detail::__counted_iter_concept): Define.
1990 1.1.1.21 mrg (__detail::__counted_iter_cat): Define.
1991 1.1.1.21 mrg (counted_iterator): Derive from the above three classes in order
1992 1.1.1.21 mrg to conditionally define value_type, iterator_concept and
1993 1.1.1.21 mrg iterator category respectively as per P2259.
1994 1.1.1.21 mrg (counted_iterator::operator->): Define as per P2259.
1995 1.1.1.21 mrg (incrementable_traits<counted_iterator>): Remove as per P2259.
1996 1.1.1.21 mrg (iterator_traits<counted_iterator>): Adjust as per P2259.
1997 1.1.1.21 mrg * include/std/ranges (__detail::__iota_view_iter_cat): Define.
1998 1.1.1.21 mrg (iota_view::_Iterator): Derive from the above in order to
1999 1.1.1.21 mrg conditionally define iterator_category as per P2259.
2000 1.1.1.21 mrg (iota_view::_S_iter_cat): Rename to ...
2001 1.1.1.21 mrg (iota_view::_S_iter_concept): ... this.
2002 1.1.1.21 mrg (iota_view::iterator_concept): Use it to apply LWG 3291 changes.
2003 1.1.1.21 mrg (iota_view::iterator_category): Remove.
2004 1.1.1.21 mrg (__detail::__filter_view_iter_cat): Define.
2005 1.1.1.21 mrg (filter_view::_Iterator): Derive from the above in order to
2006 1.1.1.21 mrg conditionally define iterator_category as per P2259.
2007 1.1.1.21 mrg (filter_view::_Iterator): Move to struct __filter_view_iter_cat.
2008 1.1.1.21 mrg (filter_view::_Iterator::iterator_category): Remove.
2009 1.1.1.21 mrg (transform_view::_Base): Define.
2010 1.1.1.21 mrg (transform_view::__iter_cat): Define.
2011 1.1.1.21 mrg (transform_view::_Iterator): Derive from the above in order to
2012 1.1.1.21 mrg conditionally define iterator_category as per P2259.
2013 1.1.1.21 mrg (transform_view::_Iterator::_Base): Just alias
2014 1.1.1.21 mrg transform_view::_Base.
2015 1.1.1.21 mrg (transform_view::_Iterator::_S_iter_cat): Move to struct
2016 1.1.1.21 mrg transform_view::__iter_cat.
2017 1.1.1.21 mrg (transform_view::_Iterator::iterator_category): Remove.
2018 1.1.1.21 mrg (transform_view::_Sentinel::_Base): Just alias
2019 1.1.1.21 mrg transform_view::_Base.
2020 1.1.1.21 mrg (join_view::_Base): Define.
2021 1.1.1.21 mrg (join_view::_Outer_iter): Define.
2022 1.1.1.21 mrg (join_view::_Inner_iter): Define.
2023 1.1.1.21 mrg (join_view::_S_ref_is_glvalue): Define.
2024 1.1.1.21 mrg (join_view::__iter_cat): Define.
2025 1.1.1.21 mrg (join_view::_Iterator): Derive from it in order to conditionally
2026 1.1.1.21 mrg define iterator_category as per P2259.
2027 1.1.1.21 mrg (join_view::_Iterator::_Base): Just alias join_view::_Base.
2028 1.1.1.21 mrg (join_view::_Iterator::_S_ref_is_glvalue): Just alias
2029 1.1.1.21 mrg join_view::_S_ref_is_glvalue.
2030 1.1.1.21 mrg (join_view::_Iterator::_S_iter_cat): Move to struct
2031 1.1.1.21 mrg transform_view::__iter_cat.
2032 1.1.1.21 mrg (join_view::_Iterator::_Outer_iter): Just alias
2033 1.1.1.21 mrg join_view::_Outer_iter.
2034 1.1.1.21 mrg (join_view::_Iterator::_Inner_iter): Just alias
2035 1.1.1.21 mrg join_view::_Inner_iter.
2036 1.1.1.21 mrg (join_view::_Iterator::iterator_category): Remove.
2037 1.1.1.21 mrg (join_view::_Sentinel::_Base): Just alias join_view::_Base.
2038 1.1.1.21 mrg (__detail::__split_view_outer_iter_cat): Define.
2039 1.1.1.21 mrg (__detail::__split_view_inner_iter_cat): Define.
2040 1.1.1.21 mrg (split_view::_Base): Define.
2041 1.1.1.21 mrg (split_view::_Outer_iter): Derive from __split_view_outer_iter_cat
2042 1.1.1.21 mrg in order to conditionally define iterator_category as per P2259.
2043 1.1.1.21 mrg (split_view::_Outer_iter::iterator_category): Remove.
2044 1.1.1.21 mrg (split_view::_Inner_iter): Derive from __split_view_inner_iter_cat
2045 1.1.1.21 mrg in order to conditionally define iterator_category as per P2259.
2046 1.1.1.21 mrg (split_view::_Inner_iter::_S_iter_cat): Move to
2047 1.1.1.21 mrg __split_view_inner_iter_cat.
2048 1.1.1.21 mrg (split_view::_Inner_iter::iterator_category): Remove.
2049 1.1.1.21 mrg (elements_view::_Base): Define.
2050 1.1.1.21 mrg (elements_view::__iter_cat): Define.
2051 1.1.1.21 mrg (elements_view::_Iterator): Derive from the above in order to
2052 1.1.1.21 mrg conditionall define iterator_category as per P2259.
2053 1.1.1.21 mrg (elements_view::_Iterator::_Base): Just alias
2054 1.1.1.21 mrg elements_view::_Base.
2055 1.1.1.21 mrg (elements_view::_Iterator::_S_iter_concept)
2056 1.1.1.21 mrg (elements_view::_Iterator::iterator_concept): Define as per
2057 1.1.1.21 mrg P2259.
2058 1.1.1.21 mrg (elements_view::_Iterator::iterator_category): Remove.
2059 1.1.1.21 mrg (elements_view::_Sentinel::_Base): Just alias
2060 1.1.1.21 mrg elements_view::_Base.
2061 1.1.1.21 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
2062 1.1.1.21 mrg Adjust constraints on iterator_traits<counted_iterator>.
2063 1.1.1.21 mrg * testsuite/std/ranges/p2259.cc: New test.
2064 1.1.1.21 mrg
2065 1.1.1.21 mrg 2021-05-03 Patrick Palka <ppalka (a] redhat.com>
2066 1.1.1.21 mrg
2067 1.1.1.21 mrg Backported from master:
2068 1.1.1.21 mrg 2021-04-27 Patrick Palka <ppalka (a] redhat.com>
2069 1.1.1.21 mrg
2070 1.1.1.21 mrg PR libstdc++/100290
2071 1.1.1.21 mrg * include/std/ranges (join_view::_Iterator::operator++): Correct
2072 1.1.1.21 mrg the return type of the lambda to avoid returning a copy of
2073 1.1.1.21 mrg _M_parent->_M_inner.
2074 1.1.1.21 mrg * testsuite/std/ranges/adaptors/join.cc (test10): New test.
2075 1.1.1.21 mrg
2076 1.1.1.21 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
2077 1.1.1.21 mrg
2078 1.1.1.21 mrg Backported from master:
2079 1.1.1.21 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
2080 1.1.1.21 mrg
2081 1.1.1.21 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string):
2082 1.1.1.21 mrg Only define for C++17 and later.
2083 1.1.1.21 mrg
2084 1.1.1.21 mrg 2021-04-29 Jonathan Wakely <jwakely (a] redhat.com>
2085 1.1.1.21 mrg
2086 1.1.1.21 mrg Backported from master:
2087 1.1.1.21 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
2088 1.1.1.21 mrg
2089 1.1.1.21 mrg PR libstdc++/100259
2090 1.1.1.21 mrg * include/experimental/internet (net::ip::make_error_code)
2091 1.1.1.21 mrg (net::ip::make_error_condition, net::ip::make_network_v4)
2092 1.1.1.21 mrg (net::ip::operator==(const udp&, const udp&)): Add 'inline'.
2093 1.1.1.21 mrg
2094 1.1.1.21 mrg 2021-04-29 Jonathan Wakely <jwakely (a] redhat.com>
2095 1.1.1.21 mrg
2096 1.1.1.21 mrg Backported from master:
2097 1.1.1.21 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
2098 1.1.1.21 mrg
2099 1.1.1.21 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string): Define.
2100 1.1.1.21 mrg * include/std/version (__cpp_lib_constexpr_string): Define.
2101 1.1.1.21 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
2102 1.1.1.21 mrg Check for __cpp_lib_constexpr_string.
2103 1.1.1.21 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
2104 1.1.1.21 mrg Likewise.
2105 1.1.1.21 mrg * testsuite/21_strings/char_traits/requirements/version.cc: New test.
2106 1.1.1.21 mrg
2107 1.1.1.21 mrg 2021-04-21 Jonathan Wakely <jwakely (a] redhat.com>
2108 1.1.1.21 mrg
2109 1.1.1.21 mrg PR libstdc++/100180
2110 1.1.1.21 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
2111 1.1.1.21 mrg Require gthreads.
2112 1.1.1.21 mrg
2113 1.1.1.21 mrg 2021-04-21 Patrick Palka <ppalka (a] redhat.com>
2114 1.1.1.21 mrg
2115 1.1.1.21 mrg Backported from master:
2116 1.1.1.21 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
2117 1.1.1.21 mrg
2118 1.1.1.21 mrg * include/std/ranges (__detail::find): Define.
2119 1.1.1.21 mrg (split_view::_OuterIter::operator++): Apply proposed resolution
2120 1.1.1.21 mrg of LWG 3505.
2121 1.1.1.21 mrg * testsuite/std/ranges/adaptors/split.cc (test10): New test.
2122 1.1.1.21 mrg
2123 1.1.1.21 mrg 2021-04-21 Patrick Palka <ppalka (a] redhat.com>
2124 1.1.1.21 mrg
2125 1.1.1.21 mrg Backported from master:
2126 1.1.1.21 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
2127 1.1.1.21 mrg
2128 1.1.1.21 mrg * include/std/ranges (__detail::find_if): Simplify.
2129 1.1.1.21 mrg (__detail::find_if_not): Likewise.
2130 1.1.1.21 mrg (__detail::min): Remove.
2131 1.1.1.21 mrg (__detail::mismatch): Simplify.
2132 1.1.1.21 mrg (take_view::size): Use std::min instead of __detail::min.
2133 1.1.1.21 mrg
2134 1.1.1.21 mrg 2021-04-21 Patrick Palka <ppalka (a] redhat.com>
2135 1.1.1.21 mrg
2136 1.1.1.21 mrg Backported from master:
2137 1.1.1.21 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
2138 1.1.1.21 mrg
2139 1.1.1.21 mrg * include/std/ranges (__detail::__returnable_element): New
2140 1.1.1.21 mrg concept.
2141 1.1.1.21 mrg (elements_view): Use this concept in its constraints. Add
2142 1.1.1.21 mrg missing private access specifier.
2143 1.1.1.21 mrg (elements_view::_S_get_element): Define as per LWG 3502.
2144 1.1.1.21 mrg (elements_view::operator*, elements_view::operator[]): Use
2145 1.1.1.21 mrg _S_get_element.
2146 1.1.1.21 mrg (elements_view::operator++): Remove unnecessary constraint
2147 1.1.1.21 mrg as per LWG 3492.
2148 1.1.1.21 mrg * testsuite/std/ranges/adaptors/elements.cc (test05): New test.
2149 1.1.1.21 mrg
2150 1.1.1.21 mrg 2021-04-21 Patrick Palka <ppalka (a] redhat.com>
2151 1.1.1.21 mrg
2152 1.1.1.21 mrg Backported from master:
2153 1.1.1.21 mrg 2020-10-31 Patrick Palka <ppalka (a] redhat.com>
2154 1.1.1.21 mrg
2155 1.1.1.21 mrg PR libstdc++/97600
2156 1.1.1.21 mrg * include/std/ranges (basic_istream_view::begin): Initialize
2157 1.1.1.21 mrg _Iterator from 'this' instead of '*this'.
2158 1.1.1.21 mrg (basic_istream_view::_Iterator::_Iterator): Adjust constructor
2159 1.1.1.21 mrg accordingly.
2160 1.1.1.21 mrg (filter_view::_Iterator::_Iterator): Take a filter_view*
2161 1.1.1.21 mrg argument instead of a filter_view& argument.
2162 1.1.1.21 mrg (filter_view::_Sentinel::_Sentinel): Likewise.
2163 1.1.1.21 mrg (filter_view::begin): Initialize _Iterator from 'this' instead
2164 1.1.1.21 mrg of '*this'.
2165 1.1.1.21 mrg (filter_view::end): Likewise.
2166 1.1.1.21 mrg (transform_view::_Iterator::_Iterator): Take a _Parent* instead
2167 1.1.1.21 mrg of a _Parent&.
2168 1.1.1.21 mrg (filter_view::_Iterator::operator+): Adjust accordingly.
2169 1.1.1.21 mrg (filter_view::_Iterator::operator-): Likewise.
2170 1.1.1.21 mrg (filter_view::begin): Initialize _Iterator from 'this' instead
2171 1.1.1.21 mrg of '*this'.
2172 1.1.1.21 mrg (filter_view::end): Likewise.
2173 1.1.1.21 mrg (join_view::_Iterator): Take a _Parent* instead of a _Parent&.
2174 1.1.1.21 mrg (join_view::_Sentinel): Likewise.
2175 1.1.1.21 mrg (join_view::begin): Initialize _Iterator from 'this' instead of
2176 1.1.1.21 mrg '*this'.
2177 1.1.1.21 mrg (join_view::end): Initialize _Sentinel from 'this' instead of
2178 1.1.1.21 mrg '*this'.
2179 1.1.1.21 mrg (split_view::_OuterIter): Take a _Parent& instead of a _Parent*.
2180 1.1.1.21 mrg (split_view::begin): Initialize _OuterIter from 'this' instead
2181 1.1.1.21 mrg of '*this'.
2182 1.1.1.21 mrg (split_view::end): Likewise.
2183 1.1.1.21 mrg * testsuite/std/ranges/97600.cc: New test.
2184 1.1.1.21 mrg
2185 1.1.1.21 mrg 2021-04-19 Franois Dumont <fdumont (a] gcc.gnu.org>
2186 1.1.1.21 mrg
2187 1.1.1.21 mrg PR libstdc++/99402
2188 1.1.1.21 mrg * include/debug/helper_functions.h (__can_advance(_InputIterator,
2189 1.1.1.21 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
2190 1.1.1.21 mrg (__can_advance(const _Safe_iterator<>&,
2191 1.1.1.21 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
2192 1.1.1.21 mrg * include/debug/macros.h (__glibcxx_check_can_increment_dist): New,
2193 1.1.1.21 mrg use latter.
2194 1.1.1.21 mrg (__glibcxx_check_can_increment_range): Adapt to use latter.
2195 1.1.1.21 mrg (__glibcxx_check_can_decrement_range): Likewise.
2196 1.1.1.21 mrg * include/debug/safe_iterator.h
2197 1.1.1.21 mrg (_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
2198 1.1.1.21 mrg int)): New.
2199 1.1.1.21 mrg (__can_advance(const _Safe_iterator<>&,
2200 1.1.1.21 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
2201 1.1.1.21 mrg * include/debug/safe_iterator.tcc
2202 1.1.1.21 mrg (_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
2203 1.1.1.21 mrg int)): New.
2204 1.1.1.21 mrg (_Safe_iterator<>::_M_valid_range(const _Safe_iterator<>&,
2205 1.1.1.21 mrg std::pair<difference_type, _Distance_precision>&, bool)): Adapt for
2206 1.1.1.21 mrg __dp_sign_max_size.
2207 1.1.1.21 mrg (__copy_move_a): Adapt to use __glibcxx_check_can_increment_dist.
2208 1.1.1.21 mrg (__copy_move_backward_a): Likewise.
2209 1.1.1.21 mrg (__equal_aux): Likewise.
2210 1.1.1.21 mrg * include/debug/stl_iterator.h (__can_advance(const std::reverse_iterator<>&,
2211 1.1.1.21 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
2212 1.1.1.21 mrg (__can_advance(const std::move_iterator<>&,
2213 1.1.1.21 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
2214 1.1.1.21 mrg * testsuite/25_algorithms/copy/debug/99402.cc: New test.
2215 1.1.1.21 mrg
2216 1.1.1.21 mrg 2021-04-19 Jonathan Wakely <jwakely (a] redhat.com>
2217 1.1.1.21 mrg
2218 1.1.1.21 mrg Backported from master:
2219 1.1.1.21 mrg 2020-10-26 Jonathan Wakely <jwakely (a] redhat.com>
2220 1.1.1.21 mrg
2221 1.1.1.21 mrg PR libstdc++/97570
2222 1.1.1.21 mrg * libsupc++/new_opa.cc: Declare size_t in global namespace.
2223 1.1.1.21 mrg Remove unused header.
2224 1.1.1.21 mrg
2225 1.1.1.21 mrg 2021-04-13 Jonathan Wakely <jwakely (a] redhat.com>
2226 1.1.1.21 mrg
2227 1.1.1.21 mrg Backported from master:
2228 1.1.1.21 mrg 2021-04-13 Jonathan Wakely <jwakely (a] redhat.com>
2229 1.1.1.21 mrg
2230 1.1.1.21 mrg PR libstdc++/100060
2231 1.1.1.21 mrg * include/std/bit: Only include <ext/numeric_traits.h> for
2232 1.1.1.21 mrg hosted build, use <limits> otherwise.
2233 1.1.1.21 mrg
2234 1.1.1.21 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
2235 1.1.1.21 mrg
2236 1.1.1.21 mrg Backported from master:
2237 1.1.1.21 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
2238 1.1.1.21 mrg
2239 1.1.1.21 mrg PR libstdc++/100044
2240 1.1.1.21 mrg * include/std/ranges (__detail::__iterator_sentinel_pair):
2241 1.1.1.21 mrg Remove helper concept.
2242 1.1.1.21 mrg (subrange(_Pr), subrange(Pr, __make_unsigned_like<...>)): Remove
2243 1.1.1.21 mrg deduction guides, as per LWG 3404.
2244 1.1.1.21 mrg * testsuite/std/ranges/subrange/lwg3282_neg.cc: Check that class
2245 1.1.1.21 mrg template argument deduction fails.
2246 1.1.1.21 mrg
2247 1.1.1.21 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
2248 1.1.1.21 mrg
2249 1.1.1.21 mrg Backported from master:
2250 1.1.1.21 mrg 2020-08-24 Jonathan Wakely <jwakely (a] redhat.com>
2251 1.1.1.21 mrg
2252 1.1.1.21 mrg * include/bits/iterator_concepts.h (indirectly_readable): Add
2253 1.1.1.21 mrg partial specializations to resolve ambiguities (LWG 3446).
2254 1.1.1.21 mrg * testsuite/24_iterators/associated_types/readable.traits.cc:
2255 1.1.1.21 mrg Check types with both value_type and element_type.
2256 1.1.1.21 mrg
2257 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2258 1.1.1.21 mrg
2259 1.1.1.21 mrg PR bootstrap/99983
2260 1.1.1.21 mrg * include/bits/hashtable.h (_Hashtable): Fix noexcept-speciofier
2261 1.1.1.21 mrg on definition to match the one on the declaration.
2262 1.1.1.21 mrg
2263 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2264 1.1.1.21 mrg
2265 1.1.1.21 mrg Backported from master:
2266 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2267 1.1.1.21 mrg
2268 1.1.1.21 mrg PR libstdc++/99985
2269 1.1.1.21 mrg * include/bits/hashtable.h (_Hashtable::_S_nothrow_move()): Fix
2270 1.1.1.21 mrg to be a valid constexpr function in C++11.
2271 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/99985.cc: New test.
2272 1.1.1.21 mrg
2273 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2274 1.1.1.21 mrg
2275 1.1.1.21 mrg Backported from master:
2276 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2277 1.1.1.21 mrg
2278 1.1.1.21 mrg * include/bits/fs_fwd.h: Fix doxygen group command.
2279 1.1.1.21 mrg * include/bits/streambuf_iterator.h: Likewise.
2280 1.1.1.21 mrg * include/std/chrono: Likewise.
2281 1.1.1.21 mrg * include/std/memory: Likewise.
2282 1.1.1.21 mrg * include/std/thread: Likewise.
2283 1.1.1.21 mrg * include/tr1/complex: Likewise.
2284 1.1.1.21 mrg
2285 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2286 1.1.1.21 mrg
2287 1.1.1.21 mrg Backported from master:
2288 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2289 1.1.1.21 mrg
2290 1.1.1.21 mrg * include/bits/basic_string.h: Tweak doxygen comment.
2291 1.1.1.21 mrg
2292 1.1.1.21 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
2293 1.1.1.21 mrg
2294 1.1.1.21 mrg Backported from master:
2295 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2296 1.1.1.21 mrg
2297 1.1.1.21 mrg * include/bits/random.h: Fix doxygen group commands.
2298 1.1.1.21 mrg * include/bits/regex_constants.h: Likewise.
2299 1.1.1.21 mrg * include/tr1/random.h: Likewise.
2300 1.1.1.21 mrg
2301 1.1.1.21 mrg 2021-04-08 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.21 mrg 2020-07-30 Jonathan Wakely <jwakely (a] redhat.com>
2305 1.1.1.21 mrg
2306 1.1.1.21 mrg * testsuite/23_containers/unordered_multiset/cons/noexcept_default_construct.cc:
2307 1.1.1.21 mrg Use allocator with the correct value type.
2308 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/noexcept_default_construct.cc:
2309 1.1.1.21 mrg Likewise.
2310 1.1.1.21 mrg
2311 1.1.1.21 mrg 2021-04-08 Franois Dumont <fdumont (a] gcc.gnu.org>
2312 1.1.1.21 mrg
2313 1.1.1.21 mrg Backported from master:
2314 1.1.1.21 mrg 2020-07-29 Franois Dumont <fdumont (a] gcc.gnu.org>
2315 1.1.1.21 mrg
2316 1.1.1.21 mrg PR libstdc++/96029
2317 1.1.1.21 mrg * include/bits/hashtable.h
2318 1.1.1.21 mrg (_Hashtable(_Hashtable&& __ht, __node_alloc_type&& __a, true_type)):
2319 1.1.1.21 mrg Add noexcept qualification.
2320 1.1.1.21 mrg (_Hashtable(_Hashtable&&)): Fix noexcept qualification.
2321 1.1.1.21 mrg (_Hashtable(_Hashtable&&, const allocator_type&)): Add noexcept
2322 1.1.1.21 mrg qualification.
2323 1.1.1.21 mrg * include/bits/unordered_map.h
2324 1.1.1.21 mrg (unordered_map(unordered_map&&, const allocator_type&)): Add noexcept
2325 1.1.1.21 mrg qualification.
2326 1.1.1.21 mrg (unordered_multimap(unordered_multimap&&, const allocator_type&)):
2327 1.1.1.21 mrg Likewise.
2328 1.1.1.21 mrg * include/bits/unordered_set.h
2329 1.1.1.21 mrg (unordered_set(unordered_set&&, const allocator_type&)): Likewise.
2330 1.1.1.21 mrg (unordered_multiset(unordered_multiset&&, const allocator_type&)):
2331 1.1.1.21 mrg Likewise.
2332 1.1.1.21 mrg * include/debug/unordered_map
2333 1.1.1.21 mrg (unordered_map(unordered_map&&, const allocator_type&)): Likewise.
2334 1.1.1.21 mrg (unordered_multimap(unordered_multimap&&, const allocator_type&)):
2335 1.1.1.21 mrg Likewise.
2336 1.1.1.21 mrg * include/debug/unordered_set
2337 1.1.1.21 mrg (unordered_set(unordered_set&&, const allocator_type&)): Likewise.
2338 1.1.1.21 mrg (unordered_multiset(unordered_multiset&&, const allocator_type&)):
2339 1.1.1.21 mrg Likewise.
2340 1.1.1.21 mrg * testsuite/23_containers/unordered_map/allocator/default_init.cc:
2341 1.1.1.21 mrg New test.
2342 1.1.1.21 mrg * testsuite/23_containers/unordered_map/cons/noexcept_default_construct.cc:
2343 1.1.1.21 mrg New test.
2344 1.1.1.21 mrg * testsuite/23_containers/unordered_map/cons/noexcept_move_construct.cc:
2345 1.1.1.21 mrg New test.
2346 1.1.1.21 mrg * testsuite/23_containers/unordered_map/modifiers/move_assign.cc:
2347 1.1.1.21 mrg New test.
2348 1.1.1.21 mrg * testsuite/23_containers/unordered_multimap/cons/noexcept_default_construct.cc:
2349 1.1.1.21 mrg New test.
2350 1.1.1.21 mrg * testsuite/23_containers/unordered_multimap/cons/noexcept_move_construct.cc:
2351 1.1.1.21 mrg New test.
2352 1.1.1.21 mrg * testsuite/23_containers/unordered_multiset/cons/noexcept_default_construct.cc:
2353 1.1.1.21 mrg New test.
2354 1.1.1.21 mrg * testsuite/23_containers/unordered_multiset/cons/noexcept_move_construct.cc:
2355 1.1.1.21 mrg New test.
2356 1.1.1.21 mrg * testsuite/23_containers/unordered_set/allocator/default_init.cc:
2357 1.1.1.21 mrg New test.
2358 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/noexcept_default_construct.cc:
2359 1.1.1.21 mrg New test.
2360 1.1.1.21 mrg * testsuite/23_containers/unordered_set/cons/noexcept_move_construct.cc:
2361 1.1.1.21 mrg New test.
2362 1.1.1.21 mrg
2363 1.1.1.21 mrg 2021-04-08 Franois Dumont <fdumont (a] gcc.gnu.org>
2364 1.1.1.21 mrg
2365 1.1.1.21 mrg Backported from master:
2366 1.1.1.21 mrg 2020-07-08 Franois Dumont <fdumont (a] gcc.gnu.org>
2367 1.1.1.21 mrg
2368 1.1.1.21 mrg PR libstdc++/96029
2369 1.1.1.21 mrg * include/bits/stl_tree.h (_Rb_tree_impl(_Rb_tree_impl&&)): Add noexcept
2370 1.1.1.21 mrg qualification based only on _Compare one.
2371 1.1.1.21 mrg * testsuite/23_containers/map/cons/noexcept_move_construct.cc: Add
2372 1.1.1.21 mrg static asserts.
2373 1.1.1.21 mrg * testsuite/23_containers/multimap/cons/noexcept_move_construct.cc:
2374 1.1.1.21 mrg Likewise.
2375 1.1.1.21 mrg * testsuite/23_containers/multiset/cons/noexcept_move_construct.cc:
2376 1.1.1.21 mrg Likewise.
2377 1.1.1.21 mrg * testsuite/23_containers/set/cons/noexcept_move_construct.cc: Likewise.
2378 1.1.1.21 mrg
2379 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2380 1.1.1.21 mrg
2381 1.1.1.21 mrg Backported from master:
2382 1.1.1.21 mrg 2021-04-07 Jonathan Wakely <jwakely (a] redhat.com>
2383 1.1.1.21 mrg
2384 1.1.1.21 mrg PR libstdc++/99805
2385 1.1.1.21 mrg * src/c++17/fs_path.cc (path::_M_split_cmpts): Do not call
2386 1.1.1.21 mrg non-const member on _M_pathname, to avoid copy-on-write.
2387 1.1.1.21 mrg * testsuite/27_io/filesystem/path/decompose/parent_path.cc:
2388 1.1.1.21 mrg Check construction from strings that might be shared.
2389 1.1.1.21 mrg
2390 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2391 1.1.1.21 mrg
2392 1.1.1.21 mrg * doc/xml/manual/status_cxx2017.xml: Replace Intel parallelstl
2393 1.1.1.21 mrg link with LLVM repo for PSTL.
2394 1.1.1.21 mrg * doc/html/manual/status.html: Regenerate.
2395 1.1.1.21 mrg
2396 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2397 1.1.1.21 mrg
2398 1.1.1.21 mrg Backported from master:
2399 1.1.1.21 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
2400 1.1.1.21 mrg
2401 1.1.1.21 mrg * include/bits/alloc_traits.h: Use markdown for code font.
2402 1.1.1.21 mrg * include/bits/basic_string.h: Fix @param names.
2403 1.1.1.21 mrg * include/bits/regex.h: Fix duplicate @retval names, and rename.
2404 1.1.1.21 mrg * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Add
2405 1.1.1.21 mrg group open to match existing group close.
2406 1.1.1.21 mrg * include/ext/pb_ds/priority_queue.hpp: Add blank line before group
2407 1.1.1.21 mrg open.
2408 1.1.1.21 mrg
2409 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2410 1.1.1.21 mrg
2411 1.1.1.21 mrg Backported from master:
2412 1.1.1.21 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
2413 1.1.1.21 mrg
2414 1.1.1.21 mrg * include/bits/atomic_base.h: Fix doxygen group close.
2415 1.1.1.21 mrg * include/bits/basic_ios.h: Likewise.
2416 1.1.1.21 mrg * include/bits/forward_list.h: Likewise.
2417 1.1.1.21 mrg * include/bits/fs_dir.h: Likewise.
2418 1.1.1.21 mrg * include/bits/fs_ops.h: Likewise.
2419 1.1.1.21 mrg * include/bits/fs_path.h: Likewise.
2420 1.1.1.21 mrg * include/bits/functional_hash.h: Likewise.
2421 1.1.1.21 mrg * include/bits/gslice.h: Likewise.
2422 1.1.1.21 mrg * include/bits/gslice_array.h: Likewise.
2423 1.1.1.21 mrg * include/bits/hashtable_policy.h: Likewise.
2424 1.1.1.21 mrg * include/bits/indirect_array.h: Likewise.
2425 1.1.1.21 mrg * include/bits/locale_classes.h: Likewise.
2426 1.1.1.21 mrg * include/bits/locale_facets.h: Likewise.
2427 1.1.1.21 mrg * include/bits/locale_facets_nonio.h: Likewise.
2428 1.1.1.21 mrg * include/bits/mask_array.h: Likewise.
2429 1.1.1.21 mrg * include/bits/refwrap.h: Likewise.
2430 1.1.1.21 mrg * include/bits/regex.h: Likewise.
2431 1.1.1.21 mrg * include/bits/regex_automaton.h: Likewise.
2432 1.1.1.21 mrg * include/bits/regex_compiler.h: Likewise.
2433 1.1.1.21 mrg * include/bits/regex_constants.h: Likewise.
2434 1.1.1.21 mrg * include/bits/regex_error.h: Likewise.
2435 1.1.1.21 mrg * include/bits/regex_executor.h: Likewise.
2436 1.1.1.21 mrg * include/bits/regex_scanner.h: Likewise.
2437 1.1.1.21 mrg * include/bits/shared_ptr.h: Likewise.
2438 1.1.1.21 mrg * include/bits/shared_ptr_atomic.h: Likewise.
2439 1.1.1.21 mrg * include/bits/shared_ptr_base.h: Likewise.
2440 1.1.1.21 mrg * include/bits/slice_array.h: Likewise.
2441 1.1.1.21 mrg * include/bits/specfun.h: Likewise.
2442 1.1.1.21 mrg * include/bits/std_function.h: Likewise.
2443 1.1.1.21 mrg * include/bits/std_mutex.h: Likewise.
2444 1.1.1.21 mrg * include/bits/stl_deque.h: Likewise.
2445 1.1.1.21 mrg * include/bits/stl_iterator.h: Likewise.
2446 1.1.1.21 mrg * include/bits/stl_iterator_base_types.h: Likewise.
2447 1.1.1.21 mrg * include/bits/stl_map.h: Likewise.
2448 1.1.1.21 mrg * include/bits/stl_multimap.h: Likewise.
2449 1.1.1.21 mrg * include/bits/stl_multiset.h: Likewise.
2450 1.1.1.21 mrg * include/bits/stl_numeric.h: Likewise.
2451 1.1.1.21 mrg * include/bits/stl_pair.h: Likewise.
2452 1.1.1.21 mrg * include/bits/stl_set.h: Likewise.
2453 1.1.1.21 mrg * include/bits/stl_uninitialized.h: Likewise.
2454 1.1.1.21 mrg * include/bits/stream_iterator.h: Likewise.
2455 1.1.1.21 mrg * include/bits/streambuf_iterator.h: Likewise.
2456 1.1.1.21 mrg * include/bits/unique_ptr.h: Likewise.
2457 1.1.1.21 mrg * include/bits/unordered_map.h: Likewise.
2458 1.1.1.21 mrg * include/bits/unordered_set.h: Likewise.
2459 1.1.1.21 mrg * include/decimal/decimal: Likewise.
2460 1.1.1.21 mrg * include/experimental/any: Likewise.
2461 1.1.1.21 mrg * include/experimental/array: Likewise.
2462 1.1.1.21 mrg * include/experimental/bits/fs_dir.h: Likewise.
2463 1.1.1.21 mrg * include/experimental/bits/fs_fwd.h: Likewise.
2464 1.1.1.21 mrg * include/experimental/bits/fs_ops.h: Likewise.
2465 1.1.1.21 mrg * include/experimental/bits/fs_path.h: Likewise.
2466 1.1.1.21 mrg * include/experimental/buffer: Likewise.
2467 1.1.1.21 mrg * include/experimental/internet: Likewise.
2468 1.1.1.21 mrg * include/experimental/optional: Likewise.
2469 1.1.1.21 mrg * include/experimental/propagate_const: Likewise.
2470 1.1.1.21 mrg * include/experimental/socket: Likewise.
2471 1.1.1.21 mrg * include/ext/pb_ds/assoc_container.hpp: Likewise.
2472 1.1.1.21 mrg * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
2473 1.1.1.21 mrg Likewise.
2474 1.1.1.21 mrg * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Likewise.
2475 1.1.1.21 mrg * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Likewise.
2476 1.1.1.21 mrg * include/ext/pb_ds/detail/types_traits.hpp: Likewise.
2477 1.1.1.21 mrg * include/ext/pb_ds/exception.hpp: Likewise.
2478 1.1.1.21 mrg * include/ext/pb_ds/priority_queue.hpp: Likewise.
2479 1.1.1.21 mrg * include/ext/pb_ds/tag_and_trait.hpp: Likewise.
2480 1.1.1.21 mrg * include/ext/random: Likewise.
2481 1.1.1.21 mrg * include/std/any: Likewise.
2482 1.1.1.21 mrg * include/std/atomic: Likewise.
2483 1.1.1.21 mrg * include/std/bitset: Likewise.
2484 1.1.1.21 mrg * include/std/chrono: Likewise.
2485 1.1.1.21 mrg * include/std/complex: Likewise.
2486 1.1.1.21 mrg * include/std/condition_variable: Likewise.
2487 1.1.1.21 mrg * include/std/fstream: Likewise.
2488 1.1.1.21 mrg * include/std/future: Likewise.
2489 1.1.1.21 mrg * include/std/istream: Likewise.
2490 1.1.1.21 mrg * include/std/iostream: Likewise.
2491 1.1.1.21 mrg * include/std/mutex: Likewise.
2492 1.1.1.21 mrg * include/std/numeric: Likewise.
2493 1.1.1.21 mrg * include/std/ostream: Likewise.
2494 1.1.1.21 mrg * include/std/ratio: Likewise.
2495 1.1.1.21 mrg * include/std/shared_mutex: Likewise.
2496 1.1.1.21 mrg * include/std/stdexcept: Likewise.
2497 1.1.1.21 mrg * include/std/streambuf: Likewise.
2498 1.1.1.21 mrg * include/std/system_error: Likewise.
2499 1.1.1.21 mrg * include/std/valarray: Likewise.
2500 1.1.1.21 mrg * include/std/variant: Likewise.
2501 1.1.1.21 mrg * include/tr1/cmath: Likewise.
2502 1.1.1.21 mrg * include/tr1/regex: Likewise.
2503 1.1.1.21 mrg * include/tr2/dynamic_bitset: Likewise.
2504 1.1.1.21 mrg * libsupc++/atomic_lockfree_defines.h: Likewise.
2505 1.1.1.21 mrg * libsupc++/exception: Likewise.
2506 1.1.1.21 mrg * libsupc++/exception.h: Likewise.
2507 1.1.1.21 mrg * libsupc++/exception_ptr.h: Likewise.
2508 1.1.1.21 mrg * libsupc++/nested_exception.h: Likewise.
2509 1.1.1.21 mrg
2510 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2511 1.1.1.21 mrg
2512 1.1.1.21 mrg Backported from master:
2513 1.1.1.21 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
2514 1.1.1.21 mrg
2515 1.1.1.21 mrg * include/std/string_view: Adjust Doxygen @file comment.
2516 1.1.1.21 mrg
2517 1.1.1.20 mrg 2021-04-08 Release Manager
2518 1.1.1.16 mrg
2519 1.1.1.20 mrg * GCC 10.3.0 released.
2520 1.1.1.19 mrg
2521 1.1.1.20 mrg 2021-04-01 Jonathan Wakely <jwakely (a] redhat.com>
2522 1.1.1.19 mrg
2523 1.1.1.20 mrg Backported from master:
2524 1.1.1.20 mrg 2021-02-14 Jonathan Wakely <jwakely (a] redhat.com>
2525 1.1.1.19 mrg
2526 1.1.1.20 mrg PR libstdc++/99096
2527 1.1.1.20 mrg * testsuite/util/testsuite_fs.h: Always include <unistd.h>.
2528 1.1.1.19 mrg
2529 1.1.1.20 mrg 2021-04-01 Jonathan Wakely <jwakely (a] redhat.com>
2530 1.1.1.19 mrg
2531 1.1.1.20 mrg Backported from master:
2532 1.1.1.20 mrg 2020-12-17 Jonathan Wakely <jwakely (a] redhat.com>
2533 1.1.1.19 mrg
2534 1.1.1.20 mrg * config.h.in: Regenerate.
2535 1.1.1.20 mrg * config/os/djgpp/error_constants.h: Test POSIX errno macros
2536 1.1.1.20 mrg directly, instead of corresponding _GLIBCXX_HAVE_EXXX macros.
2537 1.1.1.20 mrg * config/os/mingw32-w64/error_constants.h: Likewise.
2538 1.1.1.20 mrg * config/os/mingw32/error_constants.h: Likewise.
2539 1.1.1.20 mrg * configure: Regenerate.
2540 1.1.1.19 mrg
2541 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2542 1.1.1.19 mrg
2543 1.1.1.20 mrg Backported from master:
2544 1.1.1.20 mrg 2020-11-30 Jonathan Wakely <jwakely (a] redhat.com>
2545 1.1.1.19 mrg
2546 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/pstl/*: Add
2547 1.1.1.20 mrg dg-timeout-factor.
2548 1.1.1.20 mrg * testsuite/25_algorithms/pstl/*: Likewise.
2549 1.1.1.20 mrg * testsuite/26_numerics/pstl/*: Likewise.
2550 1.1.1.20 mrg * testsuite/28_regex/*: Likewise.
2551 1.1.1.19 mrg
2552 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2553 1.1.1.19 mrg
2554 1.1.1.20 mrg Backported from master:
2555 1.1.1.20 mrg 2020-11-26 Jonathan Wakely <jwakely (a] redhat.com>
2556 1.1.1.19 mrg
2557 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/basic/string_range_01_03.cc:
2558 1.1.1.20 mrg Add dg-timeout-factor directive.
2559 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
2560 1.1.1.20 mrg Likewise.
2561 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc:
2562 1.1.1.20 mrg Likewise.
2563 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
2564 1.1.1.20 mrg Likewise.
2565 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
2566 1.1.1.20 mrg Likewise.
2567 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
2568 1.1.1.20 mrg Likewise.
2569 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc:
2570 1.1.1.20 mrg Likewise.
2571 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
2572 1.1.1.20 mrg Likewise.
2573 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_search/61720.cc: Likewise.
2574 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
2575 1.1.1.20 mrg Likewise.
2576 1.1.1.20 mrg * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
2577 1.1.1.20 mrg Likewise.
2578 1.1.1.20 mrg * testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
2579 1.1.1.19 mrg
2580 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2581 1.1.1.19 mrg
2582 1.1.1.20 mrg Backported from master:
2583 1.1.1.20 mrg 2020-08-11 Jonathan Wakely <jwakely (a] redhat.com>
2584 1.1.1.19 mrg
2585 1.1.1.20 mrg * include/std/stop_token: Check _GLIBCXX_HAS_GTHREADS using
2586 1.1.1.20 mrg #ifdef instead of #if.
2587 1.1.1.20 mrg (stop_token::_S_yield()): Check _GLIBCXX_HAS_GTHREADS before
2588 1.1.1.20 mrg using __gthread_yield.
2589 1.1.1.19 mrg
2590 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2591 1.1.1.19 mrg
2592 1.1.1.20 mrg Backported from master:
2593 1.1.1.20 mrg 2020-06-19 Jonathan Wakely <jwakely (a] redhat.com>
2594 1.1.1.19 mrg
2595 1.1.1.20 mrg PR libstdc++/95765
2596 1.1.1.20 mrg * include/bits/stl_algobase.h (__size_to_integer(float))
2597 1.1.1.20 mrg (__size_to_integer(double), __size_to_integer(long double))
2598 1.1.1.20 mrg (__size_to_integer(__float128)): Cast return type explicitly.
2599 1.1.1.19 mrg
2600 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2601 1.1.1.18 mrg
2602 1.1.1.20 mrg Backported from master:
2603 1.1.1.20 mrg 2020-11-25 Jonathan Wakely <jwakely (a] redhat.com>
2604 1.1.1.18 mrg
2605 1.1.1.20 mrg * testsuite/17_intro/names.cc: Do not test 'v' on AIX.
2606 1.1.1.18 mrg
2607 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2608 1.1.1.18 mrg
2609 1.1.1.20 mrg Backported from master:
2610 1.1.1.20 mrg 2020-07-30 Jonathan Wakely <jwakely (a] redhat.com>
2611 1.1.1.18 mrg
2612 1.1.1.20 mrg * include/bits/basic_string.h (size_type, difference_type):
2613 1.1.1.20 mrg Use allocator_traits to obtain the allocator's size_type and
2614 1.1.1.20 mrg difference_type.
2615 1.1.1.18 mrg
2616 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2617 1.1.1.18 mrg
2618 1.1.1.20 mrg Backported from master:
2619 1.1.1.20 mrg 2020-09-01 Jonathan Wakely <jwakely (a] redhat.com>
2620 1.1.1.18 mrg
2621 1.1.1.20 mrg * include/std/chrono (duration::_S_gcd(intmax_t, intmax_t)):
2622 1.1.1.20 mrg New helper function for finding GCD of two positive intmax_t
2623 1.1.1.20 mrg values.
2624 1.1.1.20 mrg (duration::__divide): New helper alias for dividing one period
2625 1.1.1.20 mrg by another.
2626 1.1.1.20 mrg (duration::__is_harmonic): Use __divide not ratio_divide.
2627 1.1.1.20 mrg (duration(const duration<R2, P2>&)): Require the duration rep
2628 1.1.1.20 mrg types to be convertible.
2629 1.1.1.20 mrg * testsuite/20_util/duration/cons/dr2094.cc: New test.
2630 1.1.1.20 mrg * testsuite/20_util/duration/requirements/reduced_period.cc:
2631 1.1.1.20 mrg Fix definition of unused member functions in test type.
2632 1.1.1.20 mrg * testsuite/20_util/duration/requirements/typedefs_neg2.cc:
2633 1.1.1.20 mrg Adjust expected errors.
2634 1.1.1.18 mrg
2635 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2636 1.1.1.18 mrg
2637 1.1.1.20 mrg Backported from master:
2638 1.1.1.20 mrg 2020-08-27 Jonathan Wakely <jwakely (a] redhat.com>
2639 1.1.1.18 mrg
2640 1.1.1.20 mrg * include/std/chrono (__duration_common_type): Ensure the
2641 1.1.1.20 mrg reduced ratio is used. Remove unused partial specialization
2642 1.1.1.20 mrg using __failure_type.
2643 1.1.1.20 mrg (common_type): Pass reduced ratios to __duration_common_type.
2644 1.1.1.20 mrg Add partial specializations for simple cases involving a single
2645 1.1.1.20 mrg duration or time_point type.
2646 1.1.1.20 mrg (duration::period): Use reduced ratio.
2647 1.1.1.20 mrg (duration::operator+(), duration::operator-()): Return duration
2648 1.1.1.20 mrg type using the reduced ratio.
2649 1.1.1.20 mrg * testsuite/20_util/duration/requirements/typedefs_neg2.cc:
2650 1.1.1.20 mrg Adjust expected errors.
2651 1.1.1.20 mrg * testsuite/20_util/duration/requirements/reduced_period.cc: New test.
2652 1.1.1.18 mrg
2653 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2654 1.1.1.18 mrg
2655 1.1.1.20 mrg Backported from master:
2656 1.1.1.20 mrg 2020-09-03 Jonathan Wakely <jwakely (a] redhat.com>
2657 1.1.1.18 mrg
2658 1.1.1.20 mrg PR libstdc++/96592
2659 1.1.1.20 mrg * include/std/tuple (_TupleConstraints<true, T...>): Use
2660 1.1.1.20 mrg alternative is_constructible instead of std::is_constructible.
2661 1.1.1.20 mrg * testsuite/20_util/tuple/cons/96592.cc: New test.
2662 1.1.1.19 mrg
2663 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2664 1.1.1.18 mrg
2665 1.1.1.20 mrg Backported from master:
2666 1.1.1.20 mrg 2020-07-31 Jonathan Wakely <jwakely (a] redhat.com>
2667 1.1.1.18 mrg
2668 1.1.1.20 mrg * testsuite/20_util/is_aggregate/value.cc: Adjust for changes to
2669 1.1.1.20 mrg definition of aggregates in C++20.
2670 1.1.1.20 mrg * testsuite/20_util/optional/requirements.cc: Adjust for
2671 1.1.1.20 mrg defaulted comparisons in C++20.
2672 1.1.1.18 mrg
2673 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2674 1.1.1.18 mrg
2675 1.1.1.20 mrg Backported from master:
2676 1.1.1.20 mrg 2020-07-31 Jonathan Wakely <jwakely (a] redhat.com>
2677 1.1.1.18 mrg
2678 1.1.1.20 mrg * testsuite/20_util/tuple/78939.cc: Suppress warnings about
2679 1.1.1.20 mrg deprecation of volatile-qualified structured bindings in C++20.
2680 1.1.1.20 mrg * testsuite/20_util/variable_templates_for_traits.cc: Likewise
2681 1.1.1.20 mrg for deprecation of is_pod in C++20
2682 1.1.1.18 mrg
2683 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2684 1.1.1.18 mrg
2685 1.1.1.20 mrg Backported from master:
2686 1.1.1.20 mrg 2020-06-09 Jonathan Wakely <jwakely (a] redhat.com>
2687 1.1.1.18 mrg
2688 1.1.1.20 mrg * include/std/optional (bad_optional_access): Define default
2689 1.1.1.20 mrg constructor and destructor as defaulted.
2690 1.1.1.20 mrg * testsuite/20_util/optional/bad_access.cc: New test.
2691 1.1.1.19 mrg
2692 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2693 1.1.1.19 mrg
2694 1.1.1.20 mrg Backported from master:
2695 1.1.1.20 mrg 2020-06-04 Jonathan Wakely <jwakely (a] redhat.com>
2696 1.1.1.18 mrg
2697 1.1.1.20 mrg * include/bits/ranges_algobase.h (__copy_n_fn): Only call
2698 1.1.1.20 mrg ranges::copy for positive values.
2699 1.1.1.20 mrg * include/bits/stl_algo.h (copy_n): Convert Size argument to an
2700 1.1.1.20 mrg integral type and only call __copy_n for positive values.
2701 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h
2702 1.1.1.20 mrg (random_access_iterator_wrapper::operator+=): Fix range check for
2703 1.1.1.20 mrg negative values.
2704 1.1.1.20 mrg (output_container, input_container, forward_container)
2705 1.1.1.20 mrg (bidirectional_container, random_access_container): New alias
2706 1.1.1.20 mrg templates.
2707 1.1.1.20 mrg * testsuite/25_algorithms/copy_n/5.cc: New test.
2708 1.1.1.19 mrg
2709 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2710 1.1.1.19 mrg
2711 1.1.1.20 mrg Backported from master:
2712 1.1.1.20 mrg 2020-06-16 Jonathan Wakely <jwakely (a] redhat.com>
2713 1.1.1.18 mrg
2714 1.1.1.20 mrg * include/std/atomic (atomic): Add static assertions.
2715 1.1.1.20 mrg * testsuite/29_atomics/atomic/requirements/types_neg.cc: New test.
2716 1.1.1.16 mrg
2717 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2718 1.1.1.19 mrg
2719 1.1.1.20 mrg Backported from master:
2720 1.1.1.20 mrg 2020-06-09 Jonathan Wakely <jwakely (a] redhat.com>
2721 1.1.1.19 mrg
2722 1.1.1.20 mrg * include/bits/stl_iterator.h (move_iterator::operator=): Define.
2723 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/dr3265.cc: New test.
2724 1.1.1.19 mrg
2725 1.1.1.20 mrg 2021-03-29 Paul Keir <paul.keir (a] uws.ac.uk>
2726 1.1.1.19 mrg
2727 1.1.1.20 mrg Backported from master:
2728 1.1.1.20 mrg 2020-06-15 Paul Keir <paul.keir (a] uws.ac.uk>
2729 1.1.1.19 mrg
2730 1.1.1.20 mrg * include/bits/char_traits.h (char_traits::move): constexpr move with
2731 1.1.1.20 mrg overlap was using copy_backward incorrectly.
2732 1.1.1.20 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
2733 1.1.1.20 mrg New test.
2734 1.1.1.19 mrg
2735 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2736 1.1.1.19 mrg
2737 1.1.1.20 mrg Backported from master:
2738 1.1.1.20 mrg 2020-07-31 Jonathan Wakely <jwakely (a] redhat.com>
2739 1.1.1.19 mrg
2740 1.1.1.20 mrg * testsuite/20_util/time_point_cast/rounding.cc: Remove
2741 1.1.1.20 mrg duplicate dg-do directive and add c++17 effective target.
2742 1.1.1.19 mrg
2743 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2744 1.1.1.19 mrg
2745 1.1.1.20 mrg Backported from master:
2746 1.1.1.20 mrg 2020-08-11 Jonathan Wakely <jwakely (a] redhat.com>
2747 1.1.1.19 mrg
2748 1.1.1.20 mrg * testsuite/30_threads/thread/cons/84535.cc: Use a custom
2749 1.1.1.20 mrg namespace.
2750 1.1.1.20 mrg * testsuite/30_threads/thread/cons/lwg2097.cc: Likewise.
2751 1.1.1.19 mrg
2752 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2753 1.1.1.19 mrg
2754 1.1.1.20 mrg Backported from master:
2755 1.1.1.20 mrg 2020-11-26 Jonathan Wakely <jwakely (a] redhat.com>
2756 1.1.1.19 mrg
2757 1.1.1.20 mrg * testsuite/lib/libstdc++.exp (libstdc++_init): Only set
2758 1.1.1.20 mrg tool_timeout if it hasn't been set by the user already.
2759 1.1.1.16 mrg
2760 1.1.1.20 mrg 2021-03-29 Moritz Sichert <sichert (a] in.tum.de>
2761 1.1.1.19 mrg
2762 1.1.1.20 mrg Backported from master:
2763 1.1.1.20 mrg 2021-03-23 Moritz Sichert <sichert (a] in.tum.de>
2764 1.1.1.19 mrg
2765 1.1.1.20 mrg * include/std/ranges (reverse_view::begin, reverse_view::end):
2766 1.1.1.20 mrg Qualify make_reverse_iterator calls to avoid ADL.
2767 1.1.1.20 mrg * testsuite/std/ranges/adaptors/reverse.cc: Test that
2768 1.1.1.20 mrg views::reverse works when make_reverse_iterator is defined
2769 1.1.1.20 mrg in an associated namespace.
2770 1.1.1.19 mrg
2771 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2772 1.1.1.19 mrg
2773 1.1.1.20 mrg Backported from master:
2774 1.1.1.20 mrg 2021-03-22 Jonathan Wakely <jwakely (a] redhat.com>
2775 1.1.1.19 mrg
2776 1.1.1.20 mrg * include/bits/range_access.h (begin(T (&)[N]), end(T (&)[N])):
2777 1.1.1.20 mrg Add missing 'noexcept' as per LWG 2280.
2778 1.1.1.20 mrg (rbegin(T (&)[N]), rend(T (&)[N]), rbegin(initializer_list<T>))
2779 1.1.1.20 mrg (rend(initializer_list<T>)): Add 'noexcept' as per LWG 3537.
2780 1.1.1.20 mrg * testsuite/24_iterators/range_access/range_access.cc: Check for
2781 1.1.1.20 mrg expected noexcept specifiers. Check result types of generic
2782 1.1.1.20 mrg std::begin and std::end overloads.
2783 1.1.1.20 mrg * testsuite/24_iterators/range_access/range_access_cpp14.cc:
2784 1.1.1.20 mrg Check for expected noexcept specifiers.
2785 1.1.1.20 mrg * testsuite/24_iterators/range_access/range_access_cpp17.cc:
2786 1.1.1.19 mrg Likewise.
2787 1.1.1.18 mrg
2788 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2789 1.1.1.19 mrg
2790 1.1.1.20 mrg Backported from master:
2791 1.1.1.20 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
2792 1.1.1.19 mrg
2793 1.1.1.20 mrg PR libstdc++/99537
2794 1.1.1.20 mrg * include/std/stop_token (_Stop_state_t::_M_release_ownership):
2795 1.1.1.20 mrg Use acq_rel memory ordering.
2796 1.1.1.19 mrg
2797 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2798 1.1.1.19 mrg
2799 1.1.1.20 mrg Backported from master:
2800 1.1.1.20 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
2801 1.1.1.18 mrg
2802 1.1.1.20 mrg PR libstdc++/99533
2803 1.1.1.20 mrg * src/c++17/fs_dir.cc (recursive_directory_iterator): Use new
2804 1.1.1.20 mrg helper function to check for permission denied errors.
2805 1.1.1.20 mrg * src/filesystem/dir.cc (recursive_directory_iterator):
2806 1.1.1.20 mrg Likewise.
2807 1.1.1.20 mrg * src/filesystem/dir-common.h (is_permission_denied_error): New
2808 1.1.1.20 mrg helper function.
2809 1.1.1.18 mrg
2810 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2811 1.1.1.18 mrg
2812 1.1.1.20 mrg Backported from master:
2813 1.1.1.20 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
2814 1.1.1.16 mrg
2815 1.1.1.20 mrg PR libstdc++/99536
2816 1.1.1.20 mrg * include/bits/random.h (normal_distribution): Use
2817 1.1.1.20 mrg default-initializer for _M_saved and _M_saved_available.
2818 1.1.1.16 mrg
2819 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2820 1.1.1.19 mrg
2821 1.1.1.20 mrg Backported from master:
2822 1.1.1.20 mrg 2021-03-10 Jonathan Wakely <jwakely (a] redhat.com>
2823 1.1.1.19 mrg
2824 1.1.1.20 mrg * include/bits/range_cmp.h (__eq_builtin_ptr_cmp): Remove.
2825 1.1.1.20 mrg (ranges::equal_to, ranges::not_equal_to): Do not constrain
2826 1.1.1.20 mrg with __eq_builtin_ptr_cmp.
2827 1.1.1.20 mrg (ranges::less, ranges::greater, ranges::less_equal)
2828 1.1.1.20 mrg (ranges::greater_equal): Do not constrain with
2829 1.1.1.20 mrg __less_builtin_ptr_cmp.
2830 1.1.1.20 mrg * libsupc++/compare (compare_three_way): Do not constrain with
2831 1.1.1.20 mrg __3way_builtin_ptr_cmp.
2832 1.1.1.20 mrg * testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc: Moved to...
2833 1.1.1.20 mrg * testsuite/18_support/comparisons/object/lwg3530.cc: ...here.
2834 1.1.1.20 mrg * testsuite/20_util/function_objects/range.cmp/lwg3530.cc: New test.
2835 1.1.1.19 mrg
2836 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2837 1.1.1.19 mrg
2838 1.1.1.20 mrg Backported from master:
2839 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2840 1.1.1.16 mrg
2841 1.1.1.20 mrg * doc/xml/manual/status_cxx2014.xml: Document implementation
2842 1.1.1.20 mrg specific properties of std::experimental::filesystem::rename.
2843 1.1.1.20 mrg * doc/xml/manual/status_cxx2017.xml: Document implementation
2844 1.1.1.20 mrg specific properties of std::filesystem::rename.
2845 1.1.1.16 mrg * doc/html/*: Regenerate.
2846 1.1.1.20 mrg * src/c++17/fs_ops.cc (fs::rename): Implement correct behaviour
2847 1.1.1.20 mrg for directories on Windows.
2848 1.1.1.20 mrg * src/filesystem/ops-common.h (__gnu_posix::rename): Use
2849 1.1.1.20 mrg MoveFileExW on Windows.
2850 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/rename.cc: New test.
2851 1.1.1.20 mrg * testsuite/experimental/filesystem/operations/rename.cc: New test.
2852 1.1.1.20 mrg
2853 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2854 1.1.1.20 mrg
2855 1.1.1.20 mrg Backported from master:
2856 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2857 1.1.1.20 mrg
2858 1.1.1.20 mrg * testsuite/util/testsuite_fs.h (nonexistent_path): Add
2859 1.1.1.20 mrg random number to the path.
2860 1.1.1.20 mrg
2861 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2862 1.1.1.20 mrg
2863 1.1.1.20 mrg Backported from master:
2864 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2865 1.1.1.20 mrg
2866 1.1.1.20 mrg * include/experimental/internet (address_v6::to_string): Include
2867 1.1.1.20 mrg scope ID in string.
2868 1.1.1.20 mrg (address_v6::loopback): Fix to be constexpr in C++14.
2869 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
2870 1.1.1.20 mrg Test to_string() results.
2871 1.1.1.20 mrg
2872 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2873 1.1.1.20 mrg
2874 1.1.1.20 mrg Backported from master:
2875 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2876 1.1.1.20 mrg
2877 1.1.1.20 mrg * include/experimental/internet (address_v6::any): Avoid using
2878 1.1.1.20 mrg memcpy in constexpr function.
2879 1.1.1.20 mrg (address_v6::loopback): Likewise.
2880 1.1.1.20 mrg (make_address_v6): Fix missing return statements on error paths.
2881 1.1.1.20 mrg * include/experimental/io_context: Avoid -Wdangling-else
2882 1.1.1.20 mrg warning.
2883 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v4/members.cc:
2884 1.1.1.20 mrg Remove unused variables.
2885 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
2886 1.1.1.20 mrg New test.
2887 1.1.1.16 mrg
2888 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2889 1.1.1.16 mrg
2890 1.1.1.20 mrg Backported from master:
2891 1.1.1.20 mrg 2020-10-29 Jonathan Wakely <jwakely (a] redhat.com>
2892 1.1.1.16 mrg
2893 1.1.1.20 mrg * testsuite/25_algorithms/all_of/constexpr.cc: Check result of
2894 1.1.1.20 mrg the algorithm.
2895 1.1.1.20 mrg * testsuite/25_algorithms/any_of/constexpr.cc: Likewise.
2896 1.1.1.20 mrg * testsuite/25_algorithms/binary_search/constexpr.cc: Likewise.
2897 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/constexpr.cc: Likewise.
2898 1.1.1.20 mrg * testsuite/25_algorithms/count/constexpr.cc: Likewise.
2899 1.1.1.20 mrg * testsuite/25_algorithms/equal/constexpr.cc: Likewise.
2900 1.1.1.20 mrg * testsuite/25_algorithms/equal_range/constexpr.cc: Likewise.
2901 1.1.1.20 mrg * testsuite/25_algorithms/fill/constexpr.cc: Likewise.
2902 1.1.1.20 mrg * testsuite/25_algorithms/find_end/constexpr.cc: Likewise.
2903 1.1.1.20 mrg * testsuite/25_algorithms/find_if/constexpr.cc: Likewise.
2904 1.1.1.20 mrg * testsuite/25_algorithms/is_partitioned/constexpr.cc: Likewise.
2905 1.1.1.20 mrg * testsuite/25_algorithms/is_permutation/constexpr.cc: Likewise.
2906 1.1.1.20 mrg * testsuite/25_algorithms/is_sorted_until/constexpr.cc:
2907 1.1.1.20 mrg Likewise.
2908 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/constexpr.cc:
2909 1.1.1.20 mrg Likewise.
2910 1.1.1.20 mrg * testsuite/25_algorithms/lower_bound/constexpr.cc: Likewise.
2911 1.1.1.20 mrg * testsuite/25_algorithms/merge/constexpr.cc: Likewise.
2912 1.1.1.20 mrg * testsuite/25_algorithms/mismatch/constexpr.cc: Likewise.
2913 1.1.1.20 mrg * testsuite/25_algorithms/none_of/constexpr.cc: Likewise.
2914 1.1.1.20 mrg * testsuite/25_algorithms/partition_copy/constexpr.cc: Likewise.
2915 1.1.1.20 mrg * testsuite/25_algorithms/remove_copy/constexpr.cc: Likewise.
2916 1.1.1.20 mrg * testsuite/25_algorithms/remove_copy_if/constexpr.cc: Likewise.
2917 1.1.1.20 mrg * testsuite/25_algorithms/remove_if/constexpr.cc: Likewise.
2918 1.1.1.20 mrg * testsuite/25_algorithms/replace_if/constexpr.cc: Likewise.
2919 1.1.1.20 mrg * testsuite/25_algorithms/reverse/constexpr.cc: Likewise.
2920 1.1.1.20 mrg * testsuite/25_algorithms/reverse_copy/constexpr.cc: Likewise.
2921 1.1.1.20 mrg * testsuite/25_algorithms/rotate_copy/constexpr.cc: Likewise.
2922 1.1.1.20 mrg * testsuite/25_algorithms/search/constexpr.cc: Likewise.
2923 1.1.1.20 mrg * testsuite/25_algorithms/set_difference/constexpr.cc: Likewise.
2924 1.1.1.20 mrg * testsuite/25_algorithms/set_intersection/constexpr.cc:
2925 1.1.1.20 mrg Likewise.
2926 1.1.1.20 mrg * testsuite/25_algorithms/set_symmetric_difference/constexpr.cc:
2927 1.1.1.20 mrg Likewise.
2928 1.1.1.20 mrg * testsuite/25_algorithms/set_union/constexpr.cc: Likewise.
2929 1.1.1.20 mrg * testsuite/25_algorithms/unique_copy/constexpr.cc: Likewise.
2930 1.1.1.20 mrg * testsuite/25_algorithms/upper_bound/constexpr.cc: Likewise.
2931 1.1.1.20 mrg
2932 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2933 1.1.1.20 mrg
2934 1.1.1.20 mrg Backported from master:
2935 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2936 1.1.1.20 mrg
2937 1.1.1.20 mrg PR libstdc++/99077
2938 1.1.1.20 mrg * src/c++11/cxx11-ios_failure.cc (__ios_failure(const char*, int)):
2939 1.1.1.20 mrg Change int parameter to error_code, to match std::ios_failure.
2940 1.1.1.20 mrg (__throw_ios_failure(const char*, int)): Construct error_code
2941 1.1.1.20 mrg from int parameter.
2942 1.1.1.20 mrg
2943 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2944 1.1.1.20 mrg
2945 1.1.1.20 mrg Backported from master:
2946 1.1.1.20 mrg 2021-02-11 Jonathan Wakely <jwakely (a] redhat.com>
2947 1.1.1.20 mrg
2948 1.1.1.20 mrg PR libstdc++/99058
2949 1.1.1.20 mrg * doc/xml/manual/status_cxx2011.xml: Document when support
2950 1.1.1.20 mrg became stable.
2951 1.1.1.20 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
2952 1.1.1.20 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
2953 1.1.1.20 mrg * doc/html/manual/status.html: Regenerate.
2954 1.1.1.19 mrg
2955 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2956 1.1.1.19 mrg
2957 1.1.1.20 mrg Backported from master:
2958 1.1.1.20 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
2959 1.1.1.19 mrg
2960 1.1.1.20 mrg PR libstdc++/88881
2961 1.1.1.20 mrg * src/c++17/fs_ops.cc (fs::symlink_status): Re-enable workaround.
2962 1.1.1.19 mrg
2963 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2964 1.1.1.19 mrg
2965 1.1.1.20 mrg Backported from master:
2966 1.1.1.20 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
2967 1.1.1.19 mrg
2968 1.1.1.20 mrg PR libstdc++/88881
2969 1.1.1.20 mrg * src/c++17/fs_ops.cc (fs::status): Re-enable workaround.
2970 1.1.1.19 mrg
2971 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2972 1.1.1.19 mrg
2973 1.1.1.20 mrg Backported from master:
2974 1.1.1.20 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
2975 1.1.1.18 mrg
2976 1.1.1.20 mrg * src/c++17/fs_ops.cc (fs::create_hard_link, fs::equivalent)
2977 1.1.1.20 mrg (fs::remove): Use std::system_category() for error codes from
2978 1.1.1.20 mrg GetLastError().
2979 1.1.1.20 mrg * src/filesystem/ops.cc (fs::create_hard_link, fs::remove):
2980 1.1.1.20 mrg Likewise.
2981 1.1.1.16 mrg
2982 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2983 1.1.1.19 mrg
2984 1.1.1.20 mrg Backported from master:
2985 1.1.1.20 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
2986 1.1.1.19 mrg
2987 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/proximate.cc: Fix typo
2988 1.1.1.20 mrg in __MINGW32__ macro name.
2989 1.1.1.20 mrg * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
2990 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generation/proximate.cc:
2991 1.1.1.20 mrg Likewise.
2992 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generation/relative.cc:
2993 1.1.1.20 mrg Likewise.
2994 1.1.1.20 mrg * testsuite/util/testsuite_fs.h: Likewise.
2995 1.1.1.16 mrg
2996 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
2997 1.1.1.16 mrg
2998 1.1.1.20 mrg Backported from master:
2999 1.1.1.20 mrg 2021-02-03 Jonathan Wakely <jwakely (a] redhat.com>
3000 1.1.1.19 mrg
3001 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/not_equal.cc:
3002 1.1.1.20 mrg Add comparison with same category and different values.
3003 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/less.cc:
3004 1.1.1.20 mrg Likewise. Fix comparison involving different categories.
3005 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/three_way.cc:
3006 1.1.1.19 mrg Likewise.
3007 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/less.cc:
3008 1.1.1.20 mrg Add comment.
3009 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/three_way.cc:
3010 1.1.1.19 mrg Likewise.
3011 1.1.1.19 mrg
3012 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3013 1.1.1.19 mrg
3014 1.1.1.20 mrg Backported from master:
3015 1.1.1.20 mrg 2020-12-16 Jonathan Wakely <jwakely (a] redhat.com>
3016 1.1.1.19 mrg
3017 1.1.1.20 mrg PR libstdc++/98319
3018 1.1.1.20 mrg * include/experimental/random: Only define contents for C++14
3019 1.1.1.20 mrg and later.
3020 1.1.1.20 mrg * include/experimental/source_location: Likewise.
3021 1.1.1.20 mrg * include/experimental/utility: Likewise.
3022 1.1.1.20 mrg * testsuite/experimental/feat-lib-fund.cc: Include all LFTS
3023 1.1.1.20 mrg headers that are present. Allow test to run for all modes.
3024 1.1.1.19 mrg
3025 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3026 1.1.1.19 mrg
3027 1.1.1.20 mrg Backported from master:
3028 1.1.1.20 mrg 2020-12-16 Jonathan Wakely <jwakely (a] redhat.com>
3029 1.1.1.19 mrg
3030 1.1.1.20 mrg PR libstdc++/93151
3031 1.1.1.20 mrg * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Remove.
3032 1.1.1.20 mrg * configure.ac: Regenerate.
3033 1.1.1.20 mrg * config/os/generic/error_constants.h: Test POSIX errno macros
3034 1.1.1.20 mrg directly, instead of corresponding _GLIBCXX_HAVE_EXXX macros.
3035 1.1.1.20 mrg * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
3036 1.1.1.20 mrg Likewise.
3037 1.1.1.20 mrg * testsuite/19_diagnostics/headers/system_error/93151.cc: New
3038 1.1.1.20 mrg test.
3039 1.1.1.19 mrg
3040 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3041 1.1.1.19 mrg
3042 1.1.1.20 mrg Backported from master:
3043 1.1.1.20 mrg 2020-12-10 Jonathan Wakely <jwakely (a] redhat.com>
3044 1.1.1.19 mrg
3045 1.1.1.20 mrg PR libstdc++/98226
3046 1.1.1.20 mrg * include/std/bit (__countl_one, __countr_one): Remove redundant
3047 1.1.1.20 mrg branches.
3048 1.1.1.19 mrg
3049 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3050 1.1.1.19 mrg
3051 1.1.1.20 mrg Backported from master:
3052 1.1.1.20 mrg 2020-11-09 Jonathan Wakely <jwakely (a] redhat.com>
3053 1.1.1.19 mrg
3054 1.1.1.20 mrg * include/std/bit (__popcount): Remove redundant check for zero.
3055 1.1.1.19 mrg
3056 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3057 1.1.1.19 mrg
3058 1.1.1.20 mrg Backported from master:
3059 1.1.1.20 mrg 2020-10-30 Jonathan Wakely <jwakely (a] redhat.com>
3060 1.1.1.19 mrg
3061 1.1.1.20 mrg * include/std/ranges (enable_borrowed_view<take_view<T>>)
3062 1.1.1.20 mrg (enable_borrowed_view<drop_view<T>>)
3063 1.1.1.20 mrg (enable_borrowed_view<drop_while_view<T>>)
3064 1.1.1.20 mrg (enable_borrowed_view<reverse_view<T>>)
3065 1.1.1.20 mrg (enable_borrowed_view<common_view<T>>)
3066 1.1.1.20 mrg (enable_borrowed_view<elements_view<T>>): Add partial
3067 1.1.1.20 mrg specializations as per P2017R1.
3068 1.1.1.20 mrg * testsuite/std/ranges/adaptors/conditionally_borrowed.cc:
3069 1.1.1.20 mrg New test.
3070 1.1.1.19 mrg
3071 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3072 1.1.1.19 mrg
3073 1.1.1.20 mrg Backported from master:
3074 1.1.1.20 mrg 2020-10-29 Jonathan Wakely <jwakely (a] redhat.com>
3075 1.1.1.19 mrg
3076 1.1.1.20 mrg * include/std/ranges (subrange::subrange(R&&)): Use
3077 1.1.1.20 mrg direct-initialization instead of list-initialization, so a
3078 1.1.1.20 mrg potential narrowing conversion from ranges::size(r) to the
3079 1.1.1.20 mrg stored size isn't ill-formed.
3080 1.1.1.19 mrg
3081 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3082 1.1.1.16 mrg
3083 1.1.1.20 mrg Backported from master:
3084 1.1.1.20 mrg 2020-10-08 Jonathan Wakely <jwakely (a] redhat.com>
3085 1.1.1.19 mrg
3086 1.1.1.20 mrg PR libstdc++/82584
3087 1.1.1.20 mrg * include/bits/random.tcc
3088 1.1.1.20 mrg (discrete_distribution::param_type::_M_initialize)
3089 1.1.1.20 mrg (piecewise_constant_distribution::param_type::_M_initialize)
3090 1.1.1.20 mrg (piecewise_linear_distribution::param_type::_M_initialize):
3091 1.1.1.20 mrg Add assertions for positive sums..
3092 1.1.1.20 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
3093 1.1.1.20 mrg line.
3094 1.1.1.19 mrg
3095 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3096 1.1.1.19 mrg
3097 1.1.1.20 mrg Backported from master:
3098 1.1.1.20 mrg 2020-10-08 Jonathan Wakely <jwakely (a] redhat.com>
3099 1.1.1.18 mrg
3100 1.1.1.20 mrg * include/bits/random.h (__detail::_Mod): Revert last change.
3101 1.1.1.20 mrg (__detail::__mod): Do not use _Mod for a==0 case.
3102 1.1.1.20 mrg * testsuite/26_numerics/random/linear_congruential_engine/operators/call.cc:
3103 1.1.1.20 mrg Check other cases with a==0. Also check runtime results.
3104 1.1.1.20 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
3105 1.1.1.20 mrg line.
3106 1.1.1.18 mrg
3107 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3108 1.1.1.18 mrg
3109 1.1.1.20 mrg Backported from master:
3110 1.1.1.20 mrg 2020-10-07 Jonathan Wakely <jwakely (a] redhat.com>
3111 1.1.1.18 mrg
3112 1.1.1.20 mrg * include/bits/random.h (__detail::_Mod): Avoid divide by zero.
3113 1.1.1.20 mrg * testsuite/26_numerics/random/linear_congruential_engine/operators/call.cc:
3114 1.1.1.20 mrg New test.
3115 1.1.1.18 mrg
3116 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3117 1.1.1.18 mrg
3118 1.1.1.20 mrg Backported from master:
3119 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3120 1.1.1.18 mrg
3121 1.1.1.20 mrg * include/std/ranges (drop_view::begin()): Adjust constraints
3122 1.1.1.20 mrg to match the correct condition for O(1) ranges::next (LWG 3482).
3123 1.1.1.20 mrg * testsuite/std/ranges/adaptors/drop.cc: Check that iterator is
3124 1.1.1.20 mrg cached for non-sized_range.
3125 1.1.1.16 mrg
3126 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3127 1.1.1.16 mrg
3128 1.1.1.20 mrg Backported from master:
3129 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3130 1.1.1.16 mrg
3131 1.1.1.20 mrg * include/std/ranges (transform_view, elements_view): Relax
3132 1.1.1.20 mrg constraints on operator- for iterators, as per LWG 3483.
3133 1.1.1.20 mrg * testsuite/std/ranges/adaptors/elements.cc: Check that we
3134 1.1.1.20 mrg can take the difference of two iterators from a non-random
3135 1.1.1.20 mrg access range.
3136 1.1.1.20 mrg * testsuite/std/ranges/adaptors/transform.cc: Likewise.
3137 1.1.1.16 mrg
3138 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3139 1.1.1.16 mrg
3140 1.1.1.20 mrg Backported from master:
3141 1.1.1.20 mrg 2020-10-28 Jonathan Wakely <jwakely (a] redhat.com>
3142 1.1.1.19 mrg
3143 1.1.1.20 mrg PR libstdc++/95592
3144 1.1.1.20 mrg * include/bits/valarray_after.h (_DEFINE_EXPR_UNARY_OPERATOR)
3145 1.1.1.20 mrg (_DEFINE_EXPR_BINARY_OPERATOR, _DEFINE_EXPR_BINARY_FUNCTION):
3146 1.1.1.20 mrg Use elaborated-type-specifier and qualified-id to avoid
3147 1.1.1.20 mrg ambiguities with QNX system headers.
3148 1.1.1.20 mrg * testsuite/26_numerics/valarray/95592.cc: New test.
3149 1.1.1.19 mrg
3150 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3151 1.1.1.19 mrg
3152 1.1.1.20 mrg Backported from master:
3153 1.1.1.20 mrg 2020-10-27 Jonathan Wakely <jwakely (a] redhat.com>
3154 1.1.1.19 mrg
3155 1.1.1.20 mrg * include/bits/locale_conv.h (__str_codecvt_out_all):
3156 1.1.1.20 mrg Add cast to compare operands of the same signedness.
3157 1.1.1.20 mrg * include/bits/locale_facets_nonio.tcc
3158 1.1.1.20 mrg (time_get::_M_extract_wday_or_month): Likewise.
3159 1.1.1.20 mrg * include/bits/sstream.tcc (basic_stringbuf::overflow):
3160 1.1.1.20 mrg Likewise.
3161 1.1.1.20 mrg * include/tr1/legendre_function.tcc (__sph_legendre): Use
3162 1.1.1.20 mrg unsigned for loop variable.
3163 1.1.1.19 mrg
3164 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3165 1.1.1.19 mrg
3166 1.1.1.20 mrg Backported from master:
3167 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3168 1.1.1.19 mrg
3169 1.1.1.20 mrg * include/bits/locale_conv.h (__do_str_codecvt, __str_codecvt_in_all):
3170 1.1.1.20 mrg Add casts to compare types of the same signedness.
3171 1.1.1.19 mrg
3172 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3173 1.1.1.19 mrg
3174 1.1.1.20 mrg Backported from master:
3175 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3176 1.1.1.19 mrg
3177 1.1.1.20 mrg * include/bits/ranges_algobase.h (__equal_fn): Remove unused
3178 1.1.1.20 mrg typedef.
3179 1.1.1.19 mrg
3180 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3181 1.1.1.19 mrg
3182 1.1.1.20 mrg Backported from master:
3183 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3184 1.1.1.19 mrg
3185 1.1.1.20 mrg * include/experimental/bits/shared_ptr.h (shared_ptr(auto_ptr&&))
3186 1.1.1.20 mrg (operator=(auto_ptr&&)): Add diagnostic pragmas to suppress
3187 1.1.1.20 mrg warnings for uses of std::auto_ptr.
3188 1.1.1.20 mrg * include/experimental/type_traits (is_literal_type_v):
3189 1.1.1.20 mrg Likewise, for use of std::is_literal_type.
3190 1.1.1.20 mrg * include/std/condition_variable (condition_variable_any::_Unlock):
3191 1.1.1.20 mrg Likewise, for use of std::uncaught_exception.
3192 1.1.1.19 mrg
3193 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3194 1.1.1.19 mrg
3195 1.1.1.20 mrg Backported from master:
3196 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3197 1.1.1.19 mrg
3198 1.1.1.20 mrg * include/bits/fs_path.h (path::_List::type()): Avoid narrowing
3199 1.1.1.20 mrg conversion.
3200 1.1.1.19 mrg
3201 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3202 1.1.1.16 mrg
3203 1.1.1.20 mrg Backported from master:
3204 1.1.1.20 mrg 2020-09-07 Jonathan Wakely <jwakely (a] redhat.com>
3205 1.1.1.16 mrg
3206 1.1.1.20 mrg * include/std/ranges (__box): Simplify constraints as per LWG 3477.
3207 1.1.1.16 mrg
3208 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3209 1.1.1.19 mrg
3210 1.1.1.20 mrg Backported from master:
3211 1.1.1.20 mrg 2020-08-24 Jonathan Wakely <jwakely (a] redhat.com>
3212 1.1.1.16 mrg
3213 1.1.1.20 mrg * include/std/ranges (ranges::iota_view::size()): Perform all
3214 1.1.1.20 mrg calculations in the right unsigned types.
3215 1.1.1.20 mrg * testsuite/std/ranges/iota/size.cc: New test.
3216 1.1.1.16 mrg
3217 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3218 1.1.1.16 mrg
3219 1.1.1.20 mrg Backported from master:
3220 1.1.1.20 mrg 2020-08-11 Jonathan Wakely <jwakely (a] redhat.com>
3221 1.1.1.16 mrg
3222 1.1.1.20 mrg * include/experimental/executor (system_context::_M_run()):
3223 1.1.1.20 mrg Fix predicate.
3224 1.1.1.20 mrg (system_context::join()): Do not join unless joinable.
3225 1.1.1.20 mrg * testsuite/experimental/net/system_context/1.cc: New test.
3226 1.1.1.18 mrg
3227 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3228 1.1.1.18 mrg
3229 1.1.1.20 mrg Backported from master:
3230 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
3231 1.1.1.18 mrg
3232 1.1.1.20 mrg * include/bits/stl_iterator.h (inserter): Do not deduce
3233 1.1.1.20 mrg iterator type (LWG 561).
3234 1.1.1.20 mrg * testsuite/24_iterators/insert_iterator/dr561.cc: New test.
3235 1.1.1.18 mrg
3236 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3237 1.1.1.19 mrg
3238 1.1.1.20 mrg Backported from master:
3239 1.1.1.20 mrg 2020-10-27 Jonathan Wakely <jwakely (a] redhat.com>
3240 1.1.1.19 mrg
3241 1.1.1.20 mrg * include/bits/fs_path.h (path::_List::begin, path::_List::end):
3242 1.1.1.20 mrg Add noexcept to match definitions in src/c++17/fs_path.cc.
3243 1.1.1.19 mrg
3244 1.1.1.20 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
3245 1.1.1.19 mrg
3246 1.1.1.20 mrg Backported from master:
3247 1.1.1.20 mrg 2020-10-27 Jonathan Wakely <jwakely (a] redhat.com>
3248 1.1.1.19 mrg
3249 1.1.1.20 mrg * src/c++17/fs_dir.cc (fs::directory_iterator::operator*):
3250 1.1.1.20 mrg Add noexcept. Do not throw on precondition violation.
3251 1.1.1.19 mrg
3252 1.1.1.20 mrg 2021-03-19 Jakub Jelinek <jakub (a] redhat.com>
3253 1.1.1.19 mrg
3254 1.1.1.20 mrg Backported from master:
3255 1.1.1.20 mrg 2021-02-23 Jakub Jelinek <jakub (a] redhat.com>
3256 1.1.1.19 mrg
3257 1.1.1.20 mrg PR libstdc++/99181
3258 1.1.1.20 mrg * testsuite/21_strings/char_traits/requirements/char/99181.cc: New
3259 1.1.1.20 mrg test.
3260 1.1.1.19 mrg
3261 1.1.1.20 mrg 2021-03-19 Jakub Jelinek <jakub (a] redhat.com>
3262 1.1.1.19 mrg
3263 1.1.1.20 mrg Backported from master:
3264 1.1.1.20 mrg 2021-02-23 Jakub Jelinek <jakub (a] redhat.com>
3265 1.1.1.19 mrg
3266 1.1.1.20 mrg PR libstdc++/99181
3267 1.1.1.20 mrg * include/bits/char_traits.h (char_traits<char>::compare): For
3268 1.1.1.20 mrg constexpr evaluation don't call
3269 1.1.1.20 mrg __gnu_cxx::char_traits<char_type>::compare but do the comparison loop
3270 1.1.1.20 mrg directly.
3271 1.1.1.19 mrg
3272 1.1.1.20 mrg 2021-02-09 Jonathan Wakely <jwakely (a] redhat.com>
3273 1.1.1.19 mrg
3274 1.1.1.20 mrg Backported from master:
3275 1.1.1.20 mrg 2021-02-09 Jonathan Wakely <jwakely (a] redhat.com>
3276 1.1.1.19 mrg
3277 1.1.1.20 mrg PR libstdc++/99021
3278 1.1.1.20 mrg * include/std/coroutine (coroutine_handle<P>::from_address): Add
3279 1.1.1.20 mrg noexcept.
3280 1.1.1.19 mrg
3281 1.1.1.20 mrg 2021-01-13 Jonathan Wakely <jwakely (a] redhat.com>
3282 1.1.1.19 mrg
3283 1.1.1.20 mrg PR libstdc++/98605
3284 1.1.1.20 mrg * include/std/mutex (call_once): Use NOLINT to suppress clang
3285 1.1.1.20 mrg analyzer warnings.
3286 1.1.1.19 mrg
3287 1.1.1.20 mrg 2021-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3288 1.1.1.19 mrg
3289 1.1.1.20 mrg Backported from master:
3290 1.1.1.20 mrg 2020-12-02 Jonathan Wakely <jwakely (a] redhat.com>
3291 1.1.1.19 mrg
3292 1.1.1.20 mrg * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Store the
3293 1.1.1.20 mrg name of the type and pass it to the iterator.
3294 1.1.1.20 mrg (StdPathPrinter): Likewise.
3295 1.1.1.20 mrg * testsuite/libstdc++-prettyprinters/filesystem-ts.cc: New test.
3296 1.1.1.19 mrg
3297 1.1.1.20 mrg 2021-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3298 1.1.1.19 mrg
3299 1.1.1.20 mrg Backported from master:
3300 1.1.1.20 mrg 2020-12-16 Jonathan Wakely <jwakely (a] redhat.com>
3301 1.1.1.19 mrg
3302 1.1.1.20 mrg PR libstdc++/96083
3303 1.1.1.20 mrg * include/ext/throw_allocator.h: Use __has_builtin to check for
3304 1.1.1.20 mrg __builtin_sprintf support, and use std::sprintf if necessary.
3305 1.1.1.19 mrg
3306 1.1.1.20 mrg 2021-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3307 1.1.1.19 mrg
3308 1.1.1.20 mrg Backported from master:
3309 1.1.1.20 mrg 2020-12-02 Jonathan Wakely <jwakely (a] redhat.com>
3310 1.1.1.19 mrg
3311 1.1.1.20 mrg PR libstdc++/65480
3312 1.1.1.20 mrg PR libstdc++/68735
3313 1.1.1.20 mrg * python/libstdcxx/v6/printers.py (function_pointer_to_name):
3314 1.1.1.20 mrg New helper function to get the name of a function from its
3315 1.1.1.20 mrg address.
3316 1.1.1.20 mrg (StdExpAnyPrinter.__init__): Use it.
3317 1.1.1.19 mrg
3318 1.1.1.20 mrg 2021-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3319 1.1.1.18 mrg
3320 1.1.1.20 mrg Backported from master:
3321 1.1.1.20 mrg 2020-07-31 Jonathan Wakely <jwakely (a] redhat.com>
3322 1.1.1.18 mrg
3323 1.1.1.20 mrg * testsuite/experimental/filesystem/filesystem_error/cons.cc:
3324 1.1.1.20 mrg Remove -std=gnu++17 option.
3325 1.1.1.18 mrg
3326 1.1.1.20 mrg 2021-01-08 Iain Sandoe <iain (a] sandoe.co.uk>
3327 1.1.1.18 mrg
3328 1.1.1.20 mrg Backported from master:
3329 1.1.1.20 mrg 2020-07-17 Iain Sandoe <iain (a] sandoe.co.uk>
3330 1.1.1.16 mrg
3331 1.1.1.20 mrg * include/std/coroutine: Mark the methods of the
3332 1.1.1.20 mrg trivial awaitables as constexpr.
3333 1.1.1.16 mrg
3334 1.1.1.20 mrg 2021-01-03 Iain Sandoe <iain (a] sandoe.co.uk>
3335 1.1.1.20 mrg Jakub Jelinek <jakub (a] redhat.com>
3336 1.1.1.18 mrg
3337 1.1.1.20 mrg PR target/97865
3338 1.1.1.20 mrg * configure: Regenerate.
3339 1.1.1.18 mrg
3340 1.1.1.20 mrg 2020-12-03 Jonathan Wakely <jwakely (a] redhat.com>
3341 1.1.1.18 mrg
3342 1.1.1.20 mrg Backported from master:
3343 1.1.1.20 mrg 2020-12-03 Jonathan Wakely <jwakely (a] redhat.com>
3344 1.1.1.18 mrg
3345 1.1.1.20 mrg * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt:
3346 1.1.1.20 mrg Update.
3347 1.1.1.20 mrg * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3348 1.1.1.20 mrg Update.
3349 1.1.1.18 mrg
3350 1.1.1.20 mrg 2020-12-01 Patrick Palka <ppalka (a] redhat.com>
3351 1.1.1.16 mrg
3352 1.1.1.20 mrg Backported from master:
3353 1.1.1.20 mrg 2020-10-12 Patrick Palka <ppalka (a] redhat.com>
3354 1.1.1.18 mrg
3355 1.1.1.20 mrg PR libstdc++/95322
3356 1.1.1.20 mrg * include/std/ranges (take_view::_CI): Define this alias
3357 1.1.1.20 mrg template as per LWG 3449 and remove ...
3358 1.1.1.20 mrg (take_view::_Sentinel::_CI): ... this type alias.
3359 1.1.1.20 mrg (take_view::_Sentinel::operator==): Adjust use of _CI
3360 1.1.1.20 mrg accordingly. Define a second overload that accepts an iterator
3361 1.1.1.20 mrg of the opposite constness as per LWG 3449.
3362 1.1.1.20 mrg (take_while_view::_Sentinel::operator==): Likewise.
3363 1.1.1.20 mrg * testsuite/std/ranges/adaptors/95322.cc: Add tests for LWG 3449.
3364 1.1.1.18 mrg
3365 1.1.1.20 mrg 2020-11-26 Jonathan Wakely <jwakely (a] redhat.com>
3366 1.1.1.18 mrg
3367 1.1.1.20 mrg Backported from master:
3368 1.1.1.20 mrg 2020-11-26 Jonathan Wakely <jwakely (a] redhat.com>
3369 1.1.1.19 mrg
3370 1.1.1.20 mrg PR libstdc++/98001
3371 1.1.1.20 mrg * testsuite/ext/stdio_filebuf/char/79820.cc: Do not pass invalid
3372 1.1.1.20 mrg FILE* to constructor.
3373 1.1.1.19 mrg
3374 1.1.1.20 mrg 2020-11-25 Jonathan Wakely <jwakely (a] redhat.com>
3375 1.1.1.19 mrg
3376 1.1.1.20 mrg Backported from master:
3377 1.1.1.20 mrg 2020-11-25 Jonathan Wakely <jwakely (a] redhat.com>
3378 1.1.1.19 mrg
3379 1.1.1.20 mrg PR libstdc++/97935
3380 1.1.1.20 mrg * include/bits/iterator_concepts.h (__detail::__iter_without_category):
3381 1.1.1.20 mrg New helper concept.
3382 1.1.1.20 mrg (__iterator_traits::__cat): Use __detail::__iter_without_category.
3383 1.1.1.20 mrg * testsuite/24_iterators/associated_types/iterator.traits.cc: New test.
3384 1.1.1.19 mrg
3385 1.1.1.20 mrg 2020-11-25 Jonathan Wakely <jwakely (a] redhat.com>
3386 1.1.1.19 mrg
3387 1.1.1.20 mrg Backported from master:
3388 1.1.1.20 mrg 2020-06-04 Jonathan Wakely <jwakely (a] redhat.com>
3389 1.1.1.19 mrg
3390 1.1.1.20 mrg * include/bits/iterator_concepts.h (__detail::__ptr, __detail::__ref)
3391 1.1.1.20 mrg (__detail::__cat, __detail::__diff): Move to class scope in the
3392 1.1.1.20 mrg relevant __iterator_traits specializations.
3393 1.1.1.20 mrg (__iterator_traits<>): Use nested class templates instead of ones from
3394 1.1.1.20 mrg namespace __detail.
3395 1.1.1.20 mrg * include/bits/stl_iterator.h (__detail::__common_iter_ptr): Move to
3396 1.1.1.20 mrg class scope in iterator_traits<common_iterator<I, S>>.
3397 1.1.1.20 mrg (iterator_traits<common_iterator<I, S>>): Use nested class template
3398 1.1.1.20 mrg instead of __detail::__common_iter_ptr.
3399 1.1.1.19 mrg
3400 1.1.1.20 mrg 2020-11-24 Jonathan Wakely <jwakely (a] redhat.com>
3401 1.1.1.19 mrg
3402 1.1.1.20 mrg Backported from master:
3403 1.1.1.20 mrg 2020-10-02 Jonathan Wakely <jwakely (a] redhat.com>
3404 1.1.1.19 mrg
3405 1.1.1.20 mrg * testsuite/29_atomics/atomic_float/value_init.cc: Use float
3406 1.1.1.20 mrg instead of double so that __atomic_load_8 isn't needed.
3407 1.1.1.19 mrg
3408 1.1.1.20 mrg 2020-11-20 Jonathan Wakely <jwakely (a] redhat.com>
3409 1.1.1.18 mrg
3410 1.1.1.20 mrg Backported from master:
3411 1.1.1.20 mrg 2020-11-20 Jonathan Wakely <jwakely (a] redhat.com>
3412 1.1.1.18 mrg
3413 1.1.1.20 mrg PR libstdc++/92546
3414 1.1.1.20 mrg * include/std/regex (pmr::smatch, pmr::wsmatch): Declare using
3415 1.1.1.20 mrg underlying __normal_iterator type, not nested typedef
3416 1.1.1.20 mrg basic_string::const_iterator.
3417 1.1.1.16 mrg
3418 1.1.1.20 mrg 2020-11-20 Jonathan Wakely <jwakely (a] redhat.com>
3419 1.1.1.16 mrg
3420 1.1.1.20 mrg PR libstdc++/97876
3421 1.1.1.20 mrg * include/std/stop_token (_Stop_state_t): Define default
3422 1.1.1.20 mrg constructor as user-provided not defaulted.
3423 1.1.1.19 mrg
3424 1.1.1.20 mrg 2020-11-20 Jonathan Wakely <jwakely (a] redhat.com>
3425 1.1.1.19 mrg
3426 1.1.1.20 mrg Backported from master:
3427 1.1.1.20 mrg 2020-11-19 Jonathan Wakely <jwakely (a] redhat.com>
3428 1.1.1.16 mrg
3429 1.1.1.20 mrg PR libstdc++/95989
3430 1.1.1.20 mrg * config/os/gnu-linux/os_defines.h (_GLIBCXX_NATIVE_THREAD_ID):
3431 1.1.1.20 mrg Define new macro to get reliable thread ID.
3432 1.1.1.20 mrg * include/std/stop_token (_Stop_state_t::_M_request_stop):
3433 1.1.1.20 mrg Use new macro if it's defined.
3434 1.1.1.20 mrg (_Stop_state_t::_M_remove_callback): Likewise.
3435 1.1.1.20 mrg * include/std/thread (this_thread::get_id): Likewise.
3436 1.1.1.20 mrg * testsuite/30_threads/jthread/95989.cc: New test.
3437 1.1.1.20 mrg * testsuite/30_threads/this_thread/95989.cc: New test.
3438 1.1.1.16 mrg
3439 1.1.1.20 mrg 2020-11-18 Patrick Palka <ppalka (a] redhat.com>
3440 1.1.1.16 mrg
3441 1.1.1.20 mrg Backported from master:
3442 1.1.1.20 mrg 2020-11-18 Patrick Palka <ppalka (a] redhat.com>
3443 1.1.1.16 mrg
3444 1.1.1.20 mrg * include/std/ranges (join_view::_Iterator::_M_satisfy): Uglify
3445 1.1.1.20 mrg local variable inner.
3446 1.1.1.20 mrg (join_view::_Iterator::operator->): Use _Inner_iter instead of
3447 1.1.1.20 mrg _Outer_iter in the function signature as per LWG 3500.
3448 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join.cc (test08): Test it.
3449 1.1.1.19 mrg
3450 1.1.1.20 mrg 2020-11-18 Jonathan Wakely <jwakely (a] redhat.com>
3451 1.1.1.19 mrg
3452 1.1.1.20 mrg Backported from master:
3453 1.1.1.20 mrg 2020-10-06 Jonathan Wakely <jwakely (a] redhat.com>
3454 1.1.1.16 mrg
3455 1.1.1.20 mrg * include/std/ranges (join_view): Remove deduction guide.
3456 1.1.1.20 mrg (views::join): Add explicit template argument list to prevent
3457 1.1.1.20 mrg deducing the wrong type.
3458 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join.cc: Move test for LWG 3474
3459 1.1.1.20 mrg here, from ...
3460 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join_lwg3474.cc: Removed.
3461 1.1.1.16 mrg
3462 1.1.1.20 mrg 2020-11-18 Jonathan Wakely <jwakely (a] redhat.com>
3463 1.1.1.16 mrg
3464 1.1.1.20 mrg Backported from master:
3465 1.1.1.20 mrg 2020-08-24 Jonathan Wakely <jwakely (a] redhat.com>
3466 1.1.1.16 mrg
3467 1.1.1.20 mrg * include/std/ranges (join_view): Add deduction guide (LWG 3474).
3468 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join_lwg3474.cc: New test.
3469 1.1.1.16 mrg
3470 1.1.1.20 mrg 2020-11-18 Jonathan Wakely <jwakely (a] redhat.com>
3471 1.1.1.16 mrg
3472 1.1.1.20 mrg Backported from master:
3473 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3474 1.1.1.16 mrg
3475 1.1.1.20 mrg * include/std/version (__cpp_lib_array_constexpr)
3476 1.1.1.20 mrg (__cpp_lib_constexpr_char_traits): Only define C++17 value when
3477 1.1.1.20 mrg compiling C++17.
3478 1.1.1.16 mrg
3479 1.1.1.20 mrg 2020-11-18 Jonathan Wakely <jwakely (a] redhat.com>
3480 1.1.1.18 mrg
3481 1.1.1.20 mrg Backported from master:
3482 1.1.1.20 mrg 2020-06-15 Jonathan Wakely <jwakely (a] redhat.com>
3483 1.1.1.19 mrg
3484 1.1.1.20 mrg * include/bits/char_traits.h (__cpp_lib_constexpr_char_traits):
3485 1.1.1.20 mrg Update value for C++20.
3486 1.1.1.20 mrg * include/std/version (__cpp_lib_constexpr_char_traits): Likewise.
3487 1.1.1.20 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
3488 1.1.1.20 mrg Update expected value.
3489 1.1.1.19 mrg
3490 1.1.1.20 mrg 2020-11-18 Jonathan Wakely <jwakely (a] redhat.com>
3491 1.1.1.18 mrg
3492 1.1.1.20 mrg Backported from master:
3493 1.1.1.20 mrg 2020-11-17 Jonathan Wakely <jwakely (a] redhat.com>
3494 1.1.1.18 mrg
3495 1.1.1.20 mrg PR libstdc++/97869
3496 1.1.1.20 mrg * include/precompiled/stdc++.h: Include <coroutine>.
3497 1.1.1.20 mrg * include/std/version (__cpp_lib_span): Check __cpp_lib_concepts
3498 1.1.1.20 mrg before defining.
3499 1.1.1.18 mrg
3500 1.1.1.20 mrg 2020-11-17 Patrick Palka <ppalka (a] redhat.com>
3501 1.1.1.18 mrg
3502 1.1.1.20 mrg Backported from master:
3503 1.1.1.20 mrg 2020-11-17 Patrick Palka <ppalka (a] redhat.com>
3504 1.1.1.18 mrg
3505 1.1.1.20 mrg PR libstdc++/97828
3506 1.1.1.20 mrg * include/bits/ranges_algo.h (__search_n_fn::operator()): Check
3507 1.1.1.20 mrg random_access_iterator before using the backtracking
3508 1.1.1.20 mrg implementation. When the backwards scan fails prematurely,
3509 1.1.1.20 mrg reset __remainder appropriately.
3510 1.1.1.20 mrg * testsuite/25_algorithms/search_n/97828.cc: New test.
3511 1.1.1.18 mrg
3512 1.1.1.20 mrg 2020-11-16 Jonathan Wakely <jwakely (a] redhat.com>
3513 1.1.1.18 mrg
3514 1.1.1.20 mrg Backported from master:
3515 1.1.1.20 mrg 2020-11-13 Jonathan Wakely <jwakely (a] redhat.com>
3516 1.1.1.18 mrg
3517 1.1.1.20 mrg PR libstdc++/93456
3518 1.1.1.20 mrg * src/c++11/futex.cc (relative_timespec): Remove redundant check
3519 1.1.1.20 mrg negative values.
3520 1.1.1.20 mrg * testsuite/30_threads/future/members/93456.cc: New.
3521 1.1.1.19 mrg
3522 1.1.1.20 mrg 2020-11-16 Jonathan Wakely <jwakely (a] redhat.com>
3523 1.1.1.19 mrg
3524 1.1.1.20 mrg Backported from master:
3525 1.1.1.20 mrg 2020-11-16 Jonathan Wakely <jwakely (a] redhat.com>
3526 1.1.1.18 mrg
3527 1.1.1.20 mrg * src/c++11/futex.cc (relative_timespec): New function to
3528 1.1.1.20 mrg create relative time from two absolute times.
3529 1.1.1.20 mrg (__atomic_futex_unsigned_base::_M_futex_wait_until): Use
3530 1.1.1.20 mrg relative_timespec.
3531 1.1.1.18 mrg
3532 1.1.1.20 mrg 2020-11-16 Jonathan Wakely <jwakely (a] redhat.com>
3533 1.1.1.18 mrg
3534 1.1.1.20 mrg Backported from master:
3535 1.1.1.20 mrg 2020-11-12 Jonathan Wakely <jwakely (a] redhat.com>
3536 1.1.1.19 mrg
3537 1.1.1.20 mrg * include/std/future (future::wait_for): Do not wait for
3538 1.1.1.20 mrg durations less than or equal to zero.
3539 1.1.1.20 mrg * testsuite/30_threads/future/members/poll.cc: New test.
3540 1.1.1.18 mrg
3541 1.1.1.20 mrg 2020-11-13 Jonathan Wakely <jwakely (a] redhat.com>
3542 1.1.1.18 mrg
3543 1.1.1.20 mrg Backported from master:
3544 1.1.1.20 mrg 2020-11-13 Jonathan Wakely <jwakely (a] redhat.com>
3545 1.1.1.18 mrg
3546 1.1.1.20 mrg PR libstdc++/97798
3547 1.1.1.20 mrg * include/ext/numeric_traits.h (__glibcxx_signed)
3548 1.1.1.20 mrg (__glibcxx_digits, __glibcxx_min, __glibcxx_max): Remove
3549 1.1.1.20 mrg macros.
3550 1.1.1.20 mrg (__is_integer_nonstrict::__width): Define new constant.
3551 1.1.1.20 mrg (__numeric_traits_integer): Define constants in terms of each
3552 1.1.1.20 mrg other and __is_integer_nonstrict::__width, rather than the
3553 1.1.1.20 mrg removed macros.
3554 1.1.1.20 mrg (_GLIBCXX_INT_N_TRAITS): Macro to define explicit
3555 1.1.1.20 mrg specializations for non-standard integer types.
3556 1.1.1.18 mrg
3557 1.1.1.20 mrg 2020-11-13 Jonathan Wakely <jwakely (a] redhat.com>
3558 1.1.1.19 mrg
3559 1.1.1.20 mrg PR libstdc++/96042
3560 1.1.1.20 mrg * testsuite/std/ranges/iota/96042.cc: Only assert that the
3561 1.1.1.20 mrg difference type is wider than long long if __int128 is
3562 1.1.1.20 mrg supported.
3563 1.1.1.19 mrg
3564 1.1.1.20 mrg 2020-11-12 Jonathan Wakely <jwakely (a] redhat.com>
3565 1.1.1.19 mrg
3566 1.1.1.20 mrg Backported from master:
3567 1.1.1.20 mrg 2020-08-20 Jonathan Wakely <jwakely (a] redhat.com>
3568 1.1.1.19 mrg
3569 1.1.1.20 mrg * include/bits/iterator_concepts.h [__STRICT_ANSI__]
3570 1.1.1.20 mrg (incrementable_traits<__int128>): Define specialization.
3571 1.1.1.20 mrg (incrementable_traits<unsigned __int128>): Likewise.
3572 1.1.1.20 mrg * testsuite/std/ranges/iota/96042.cc: Test iota_view with
3573 1.1.1.20 mrg __int128.
3574 1.1.1.19 mrg
3575 1.1.1.20 mrg 2020-11-12 Jonathan Wakely <jwakely (a] redhat.com>
3576 1.1.1.19 mrg
3577 1.1.1.20 mrg Backported from master:
3578 1.1.1.20 mrg 2020-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3579 1.1.1.20 mrg Patrick Palka <ppalka (a] redhat.com>
3580 1.1.1.19 mrg
3581 1.1.1.20 mrg PR libstdc++/96042
3582 1.1.1.20 mrg * include/bits/range_access.h (__detail::__to_unsigned_like):
3583 1.1.1.20 mrg Do not use make_unsigned_t<T> in the return type, as it can
3584 1.1.1.20 mrg result in an error before the integral<T> constraint is checked.
3585 1.1.1.20 mrg [__STRICT_ANSI__]: Add overloads for 128-bit integer types.
3586 1.1.1.20 mrg (__detail::__make_unsigned_like_t): Define as the return type
3587 1.1.1.20 mrg of __to_unsigned_like.
3588 1.1.1.20 mrg * testsuite/std/ranges/subrange/96042.cc: New test.
3589 1.1.1.19 mrg
3590 1.1.1.20 mrg 2020-11-12 Jonathan Wakely <jwakely (a] redhat.com>
3591 1.1.1.18 mrg
3592 1.1.1.20 mrg Backported from master:
3593 1.1.1.20 mrg 2020-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3594 1.1.1.19 mrg
3595 1.1.1.20 mrg PR libstdc++/96042
3596 1.1.1.20 mrg * include/ext/numeric_traits.h (__is_integer_nonstrict): New
3597 1.1.1.20 mrg trait which is true for 128-bit integers even in strict modes.
3598 1.1.1.20 mrg (__numeric_traits_integer, __numeric_traits): Use
3599 1.1.1.20 mrg __is_integer_nonstrict instead of __is_integer.
3600 1.1.1.20 mrg * include/std/limits [__STRICT_ANSI__ && __SIZEOF_INT128__]
3601 1.1.1.20 mrg (numeric_limits<__int128>, (numeric_limits<unsigned __int128>):
3602 1.1.1.20 mrg Define.
3603 1.1.1.20 mrg * testsuite/std/ranges/iota/96042.cc: New test.
3604 1.1.1.19 mrg
3605 1.1.1.20 mrg 2020-11-11 Paul Scharnofske <asynts (a] gmail.com>
3606 1.1.1.19 mrg
3607 1.1.1.20 mrg Backported from master:
3608 1.1.1.20 mrg 2020-11-11 Paul Scharnofske <asynts (a] gmail.com>
3609 1.1.1.19 mrg
3610 1.1.1.20 mrg * include/std/thread (jthread::operator=(jthread&&)): Transfer
3611 1.1.1.20 mrg any existing state to a temporary that will request a stop and
3612 1.1.1.20 mrg then join.
3613 1.1.1.20 mrg * testsuite/30_threads/jthread/jthread.cc: Test move assignment.
3614 1.1.1.19 mrg
3615 1.1.1.20 mrg 2020-11-05 Jonathan Wakely <jwakely (a] redhat.com>
3616 1.1.1.20 mrg
3617 1.1.1.20 mrg Backported from master:
3618 1.1.1.20 mrg 2020-11-05 Jonathan Wakely <jwakely (a] redhat.com>
3619 1.1.1.20 mrg
3620 1.1.1.20 mrg PR libstdc++/96269
3621 1.1.1.20 mrg * include/std/optional (operator==, operator!=, operator<)
3622 1.1.1.20 mrg (operator>, operator<=, operator>=): Fix types used in
3623 1.1.1.20 mrg SFINAE constraints.
3624 1.1.1.20 mrg * testsuite/20_util/optional/relops/96269.cc: New test.
3625 1.1.1.20 mrg
3626 1.1.1.20 mrg 2020-11-05 Jonathan Wakely <jwakely (a] redhat.com>
3627 1.1.1.20 mrg
3628 1.1.1.20 mrg Backported from master:
3629 1.1.1.20 mrg 2020-11-05 Jonathan Wakely <jwakely (a] redhat.com>
3630 1.1.1.20 mrg
3631 1.1.1.20 mrg PR libstdc++/97731
3632 1.1.1.20 mrg * src/filesystem/dir.cc (recursive_directory_iterator): Call the
3633 1.1.1.20 mrg right overload of _Dir::advance.
3634 1.1.1.20 mrg * testsuite/experimental/filesystem/iterators/97731.cc: New test.
3635 1.1.1.20 mrg
3636 1.1.1.20 mrg 2020-11-05 Jonathan Wakely <jwakely (a] redhat.com>
3637 1.1.1.20 mrg
3638 1.1.1.20 mrg Backported from master:
3639 1.1.1.20 mrg 2020-10-10 Jonathan Wakely <jwakely (a] redhat.com>
3640 1.1.1.20 mrg
3641 1.1.1.20 mrg PR libstdc++/97362
3642 1.1.1.20 mrg * doc/html/manual/source_code_style.html: Regenerate.
3643 1.1.1.20 mrg * doc/xml/manual/appendix_contributing.xml: Add __deref to
3644 1.1.1.20 mrg BADNAMES.
3645 1.1.1.20 mrg * include/debug/functions.h (_Irreflexive_checker::__deref):
3646 1.1.1.20 mrg Rename to __ref.
3647 1.1.1.20 mrg * testsuite/17_intro/badnames.cc: Check __deref.
3648 1.1.1.20 mrg
3649 1.1.1.20 mrg 2020-11-04 Jonathan Wakely <jwakely (a] redhat.com>
3650 1.1.1.20 mrg
3651 1.1.1.20 mrg Backported from master:
3652 1.1.1.20 mrg 2020-11-04 Jonathan Wakely <jwakely (a] redhat.com>
3653 1.1.1.20 mrg
3654 1.1.1.20 mrg PR libstdc++/92285
3655 1.1.1.20 mrg * doc/xml/manual/evolution.xml: Document change to base class.
3656 1.1.1.20 mrg * doc/html/manual/api.html: Regenerate.
3657 1.1.1.20 mrg
3658 1.1.1.20 mrg 2020-11-04 Jonathan Wakely <jwakely (a] redhat.com>
3659 1.1.1.20 mrg
3660 1.1.1.20 mrg * doc/xml/manual/evolution.xml: Document new C++20 headers.
3661 1.1.1.20 mrg * doc/html/*: Regenerate.
3662 1.1.1.20 mrg
3663 1.1.1.20 mrg 2020-11-04 Jonathan Wakely <jwakely (a] redhat.com>
3664 1.1.1.20 mrg
3665 1.1.1.20 mrg Backported from master:
3666 1.1.1.20 mrg 2020-06-01 Jonathan Wakely <jwakely (a] redhat.com>
3667 1.1.1.20 mrg
3668 1.1.1.20 mrg * doc/xml/manual/evolution.xml: Document deprecation of
3669 1.1.1.20 mrg __is_nullptr_t and removal of std::allocator members.
3670 1.1.1.20 mrg * doc/html/manual/api.html: Regenerate.
3671 1.1.1.20 mrg
3672 1.1.1.20 mrg 2020-11-04 Jonathan Wakely <jwakely (a] redhat.com>
3673 1.1.1.20 mrg
3674 1.1.1.20 mrg Backported from master:
3675 1.1.1.20 mrg 2020-06-01 Jonathan Wakely <jwakely (a] redhat.com>
3676 1.1.1.20 mrg
3677 1.1.1.20 mrg * doc/xml/manual/containers.xml: Replace <xref> with <link>.
3678 1.1.1.20 mrg * doc/xml/manual/evolution.xml: Likewise.
3679 1.1.1.20 mrg * doc/html/manual/api.html: Regenerate.
3680 1.1.1.20 mrg * doc/html/manual/containers.html: Regenerate.
3681 1.1.1.20 mrg
3682 1.1.1.20 mrg 2020-10-29 Patrick Palka <ppalka (a] redhat.com>
3683 1.1.1.20 mrg
3684 1.1.1.20 mrg Backported from master:
3685 1.1.1.20 mrg 2020-10-29 Patrick Palka <ppalka (a] redhat.com>
3686 1.1.1.20 mrg
3687 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/constrained.cc:
3688 1.1.1.20 mrg (test03): Fix initializing the vector vy with the array y of size 4.
3689 1.1.1.20 mrg
3690 1.1.1.20 mrg 2020-10-28 Patrick Palka <ppalka (a] redhat.com>
3691 1.1.1.20 mrg
3692 1.1.1.20 mrg Backported from master:
3693 1.1.1.20 mrg 2020-10-23 Patrick Palka <ppalka (a] redhat.com>
3694 1.1.1.20 mrg
3695 1.1.1.20 mrg * include/std/ranges (single_view::single_view): Mark the
3696 1.1.1.20 mrg in place constructor explicit as per LWG 3428.
3697 1.1.1.20 mrg (take_view): Remove the constraint on the deduction guide's
3698 1.1.1.20 mrg template parameter as per LWG 3447.
3699 1.1.1.20 mrg
3700 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3701 1.1.1.20 mrg
3702 1.1.1.20 mrg Backported from master:
3703 1.1.1.20 mrg 2020-09-22 Patrick Palka <ppalka (a] redhat.com>
3704 1.1.1.20 mrg
3705 1.1.1.20 mrg * include/std/span (span::front): Remove static_assert.
3706 1.1.1.20 mrg (span::back): Likewise.
3707 1.1.1.20 mrg (span::operator[]): Likewise.
3708 1.1.1.20 mrg * testsuite/23_containers/span/back_neg.cc: Rewrite to verify
3709 1.1.1.20 mrg that we check the preconditions of back() only when it's called.
3710 1.1.1.20 mrg * testsuite/23_containers/span/front_neg.cc: Likewise for
3711 1.1.1.20 mrg front().
3712 1.1.1.20 mrg * testsuite/23_containers/span/index_op_neg.cc: Likewise for
3713 1.1.1.20 mrg operator[].
3714 1.1.1.20 mrg
3715 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3716 1.1.1.20 mrg
3717 1.1.1.20 mrg Backported from master:
3718 1.1.1.20 mrg 2020-10-12 Patrick Palka <ppalka (a] redhat.com>
3719 1.1.1.20 mrg
3720 1.1.1.20 mrg * include/std/ranges (take_while_view::begin): Constrain the
3721 1.1.1.20 mrg const overload further as per LWG 3450.
3722 1.1.1.20 mrg (take_while_view::end): Likewise.
3723 1.1.1.20 mrg * testsuite/std/ranges/adaptors/take_while.cc: Add test for LWG
3724 1.1.1.20 mrg 3450.
3725 1.1.1.20 mrg
3726 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3727 1.1.1.20 mrg
3728 1.1.1.20 mrg Backported from master:
3729 1.1.1.20 mrg 2020-09-22 Patrick Palka <ppalka (a] redhat.com>
3730 1.1.1.20 mrg
3731 1.1.1.20 mrg * include/bits/stl_algo.h (__sample): Exit early when the
3732 1.1.1.20 mrg input range is empty.
3733 1.1.1.20 mrg * testsuite/25_algorithms/sample/3.cc: New test.
3734 1.1.1.20 mrg
3735 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3736 1.1.1.20 mrg
3737 1.1.1.20 mrg Backported from master:
3738 1.1.1.20 mrg 2020-09-22 Patrick Palka <ppalka (a] redhat.com>
3739 1.1.1.20 mrg
3740 1.1.1.20 mrg * include/bits/stl_algo.h (for_each_n): Mark constexpr for C++20.
3741 1.1.1.20 mrg (search): Likewise for the overload that takes a searcher.
3742 1.1.1.20 mrg * testsuite/25_algorithms/for_each/constexpr.cc: Test constexpr
3743 1.1.1.20 mrg std::for_each_n.
3744 1.1.1.20 mrg * testsuite/25_algorithms/search/constexpr.cc: Test constexpr
3745 1.1.1.20 mrg std::search overload that takes a searcher.
3746 1.1.1.20 mrg
3747 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3748 1.1.1.20 mrg
3749 1.1.1.20 mrg Backported from master:
3750 1.1.1.20 mrg 2020-08-27 Patrick Palka <ppalka (a] redhat.com>
3751 1.1.1.20 mrg
3752 1.1.1.20 mrg PR libstdc++/95322
3753 1.1.1.20 mrg * include/std/ranges (transform_view::sentinel::__distance_from):
3754 1.1.1.20 mrg Give this a deduced return type.
3755 1.1.1.20 mrg (transform_view::sentinel::operator-): Adjust the return type so
3756 1.1.1.20 mrg that it's based on the constness of the iterator rather than
3757 1.1.1.20 mrg that of the sentinel.
3758 1.1.1.20 mrg * testsuite/std/ranges/adaptors/95322.cc: Refer to LWG 3488.
3759 1.1.1.20 mrg
3760 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3761 1.1.1.20 mrg
3762 1.1.1.20 mrg Backported from master:
3763 1.1.1.20 mrg 2020-08-27 Patrick Palka <ppalka (a] redhat.com>
3764 1.1.1.20 mrg
3765 1.1.1.20 mrg * include/std/ranges (elements_view::begin): Adjust constraints.
3766 1.1.1.20 mrg (elements_view::end): Likewise.
3767 1.1.1.20 mrg (elements_view::_Sentinel::operator==): Templatize to take both
3768 1.1.1.20 mrg _Iterator<true> and _Iterator<false>.
3769 1.1.1.20 mrg (elements_view::_Sentinel::operator-): Likewise.
3770 1.1.1.20 mrg * testsuite/std/ranges/adaptors/elements.cc: Add testcase for
3771 1.1.1.20 mrg the example from P1994R1.
3772 1.1.1.20 mrg * testsuite/std/ranges/adaptors/lwg3406.cc: New test.
3773 1.1.1.20 mrg
3774 1.1.1.20 mrg 2020-10-21 Patrick Palka <ppalka (a] redhat.com>
3775 1.1.1.20 mrg
3776 1.1.1.20 mrg Backported from master:
3777 1.1.1.20 mrg 2020-08-27 Patrick Palka <ppalka (a] redhat.com>
3778 1.1.1.20 mrg
3779 1.1.1.20 mrg * include/std/ranges (elements_view::end): Replace these two
3780 1.1.1.20 mrg overloads with four new overloads.
3781 1.1.1.20 mrg (elements_view::_Iterator::operator==): Remove.
3782 1.1.1.20 mrg (elements_view::_Iterator::operator-): Likewise.
3783 1.1.1.20 mrg (elements_view::_Sentinel): Define.
3784 1.1.1.20 mrg
3785 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3786 1.1.1.20 mrg
3787 1.1.1.20 mrg Backported from master:
3788 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
3789 1.1.1.20 mrg
3790 1.1.1.20 mrg * python/libstdcxx/v6/printers.py (UniquePointerPrinter.__init__):
3791 1.1.1.20 mrg Use gdb.Type.strip_typedefs().
3792 1.1.1.20 mrg * testsuite/libstdc++-prettyprinters/compat.cc: Use a typedef in
3793 1.1.1.20 mrg the emulated old type.
3794 1.1.1.20 mrg
3795 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3796 1.1.1.20 mrg
3797 1.1.1.20 mrg Backported from master:
3798 1.1.1.20 mrg 2020-10-14 Jonathan Wakely <jwakely (a] redhat.com>
3799 1.1.1.20 mrg
3800 1.1.1.20 mrg * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
3801 1.1.1.20 mrg (basic_string(const _CharT*, const _Alloc&)): Constrain to
3802 1.1.1.20 mrg require an allocator-like type to fix CTAD ambiguity (LWG 3706).
3803 1.1.1.20 mrg Define inline.
3804 1.1.1.20 mrg * include/bits/basic_string.tcc [!_GLIBCXX_USE_CXX11_ABI]
3805 1.1.1.20 mrg (basic_string(const _CharT*, const _Alloc&)): Remove non-inline
3806 1.1.1.20 mrg definition.
3807 1.1.1.20 mrg * testsuite/21_strings/basic_string/cons/char/deduction.cc:
3808 1.1.1.20 mrg Remove dg-skip-if.
3809 1.1.1.20 mrg * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
3810 1.1.1.20 mrg Likewise.
3811 1.1.1.20 mrg
3812 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3813 1.1.1.20 mrg
3814 1.1.1.20 mrg Backported from master:
3815 1.1.1.20 mrg 2020-10-14 Jonathan Wakely <jwakely (a] redhat.com>
3816 1.1.1.20 mrg
3817 1.1.1.20 mrg * testsuite/21_strings/basic_string/allocator/char/minimal.cc:
3818 1.1.1.20 mrg Do not require cxx11-abi effective target.
3819 1.1.1.20 mrg * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
3820 1.1.1.20 mrg Likewise.
3821 1.1.1.20 mrg * testsuite/27_io/basic_fstream/cons/base.cc: Likewise.
3822 1.1.1.20 mrg
3823 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3824 1.1.1.20 mrg
3825 1.1.1.20 mrg Backported from master:
3826 1.1.1.20 mrg 2020-10-08 Jonathan Wakely <jwakely (a] redhat.com>
3827 1.1.1.20 mrg
3828 1.1.1.20 mrg * include/bits/ios_base.h (ios_base::failure): Add constructors
3829 1.1.1.20 mrg takeing error_code argument. Add code() member function.
3830 1.1.1.20 mrg * testsuite/27_io/ios_base/failure/cxx11.cc: Allow test to
3831 1.1.1.20 mrg run for the old ABI but do not check for derivation from
3832 1.1.1.20 mrg std::system_error.
3833 1.1.1.20 mrg * testsuite/27_io/ios_base/failure/error_code.cc: New test.
3834 1.1.1.20 mrg
3835 1.1.1.20 mrg 2020-10-20 Nuno Lopes <nuno.lopes (a] ist.utl.pt>
3836 1.1.1.20 mrg
3837 1.1.1.20 mrg Backported from master:
3838 1.1.1.20 mrg 2020-10-13 Nuno Lopes <nuno.lopes (a] ist.utl.pt>
3839 1.1.1.20 mrg
3840 1.1.1.20 mrg * include/bits/stl_algo.h (any_of): Fix incorrect description
3841 1.1.1.20 mrg in comment.
3842 1.1.1.20 mrg
3843 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3844 1.1.1.20 mrg
3845 1.1.1.20 mrg Backported from master:
3846 1.1.1.20 mrg 2020-10-12 Jonathan Wakely <jwakely (a] redhat.com>
3847 1.1.1.20 mrg
3848 1.1.1.20 mrg * include/bits/stl_algobase.h (copy, move, copy_backward)
3849 1.1.1.20 mrg (move_backward): Fix documentation for returned iterator.
3850 1.1.1.20 mrg
3851 1.1.1.20 mrg 2020-10-20 Jonathan Wakely <jwakely (a] redhat.com>
3852 1.1.1.20 mrg
3853 1.1.1.20 mrg Backported from master:
3854 1.1.1.20 mrg 2020-09-24 Jonathan Wakely <jwakely (a] redhat.com>
3855 1.1.1.20 mrg
3856 1.1.1.20 mrg * doc/xml/manual/configure.xml: Correct name of option.
3857 1.1.1.20 mrg * doc/html/*: Regenerate.
3858 1.1.1.20 mrg
3859 1.1.1.20 mrg 2020-10-19 Jonathan Wakely <jwakely (a] redhat.com>
3860 1.1.1.20 mrg
3861 1.1.1.20 mrg Backported from master:
3862 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3863 1.1.1.20 mrg
3864 1.1.1.20 mrg PR libstdc++/97132
3865 1.1.1.20 mrg * include/std/memory (assume_aligned): Do not use
3866 1.1.1.20 mrg __builtin_assume_aligned during constant evaluation.
3867 1.1.1.20 mrg * testsuite/20_util/assume_aligned/1.cc: Improve test.
3868 1.1.1.20 mrg * testsuite/20_util/assume_aligned/97132.cc: New test.
3869 1.1.1.20 mrg
3870 1.1.1.20 mrg 2020-10-15 Jonathan Wakely <jwakely (a] redhat.com>
3871 1.1.1.20 mrg
3872 1.1.1.20 mrg Backported from master:
3873 1.1.1.20 mrg 2020-10-15 Jonathan Wakely <jwakely (a] redhat.com>
3874 1.1.1.20 mrg
3875 1.1.1.20 mrg * include/std/concepts: Fix typos in copyright notice.
3876 1.1.1.20 mrg * include/std/ranges: Likewise.
3877 1.1.1.20 mrg
3878 1.1.1.20 mrg 2020-10-15 Jonathan Wakely <jwakely (a] redhat.com>
3879 1.1.1.20 mrg
3880 1.1.1.20 mrg * doc/xml/manual/status_cxx2020.xml: Remove red background for
3881 1.1.1.20 mrg completed feature.
3882 1.1.1.20 mrg * doc/html/manual/status.html: Regenerate.
3883 1.1.1.20 mrg
3884 1.1.1.20 mrg 2020-10-13 Patrick Palka <ppalka (a] redhat.com>
3885 1.1.1.20 mrg
3886 1.1.1.20 mrg Backported from master:
3887 1.1.1.20 mrg 2020-10-08 Patrick Palka <ppalka (a] redhat.com>
3888 1.1.1.20 mrg
3889 1.1.1.20 mrg PR libstdc++/95788
3890 1.1.1.20 mrg * include/bits/ranges_uninitialized.h:
3891 1.1.1.20 mrg (__construct_at_fn::operator()): Rewrite in terms of
3892 1.1.1.20 mrg std::construct_at. Declare it conditionally noexcept. Qualify
3893 1.1.1.20 mrg calls to declval in its requires-clause.
3894 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/construct_at/95788.cc:
3895 1.1.1.20 mrg New test.
3896 1.1.1.20 mrg
3897 1.1.1.20 mrg 2020-10-08 Jonathan Wakely <jwakely (a] redhat.com>
3898 1.1.1.20 mrg
3899 1.1.1.20 mrg Backported from master:
3900 1.1.1.20 mrg 2020-10-07 Jonathan Wakely <jwakely (a] redhat.com>
3901 1.1.1.20 mrg
3902 1.1.1.20 mrg * include/bits/random.h (seed_seq(initializer_list<T>)): Rename
3903 1.1.1.20 mrg parameter to use reserved name.
3904 1.1.1.20 mrg * include/bits/ranges_algo.h (shift_left, shift_right): Rename
3905 1.1.1.20 mrg template parameters to use reserved name.
3906 1.1.1.20 mrg * testsuite/17_intro/names.cc: Check "il". Do not check "d" and
3907 1.1.1.20 mrg "y" in C++20 mode.
3908 1.1.1.20 mrg
3909 1.1.1.20 mrg 2020-10-06 Patrick Palka <ppalka (a] redhat.com>
3910 1.1.1.20 mrg
3911 1.1.1.20 mrg Backported from master:
3912 1.1.1.20 mrg 2020-10-02 Patrick Palka <ppalka (a] redhat.com>
3913 1.1.1.20 mrg
3914 1.1.1.20 mrg * include/bits/stl_iterator.h (reverse_iterator::iter_move):
3915 1.1.1.20 mrg Define for C++20 as per P0896.
3916 1.1.1.20 mrg (reverse_iterator::iter_swap): Likewise.
3917 1.1.1.20 mrg (move_iterator::operator*): Apply P0896 changes for C++20.
3918 1.1.1.20 mrg (move_iterator::operator[]): Likewise.
3919 1.1.1.20 mrg * testsuite/24_iterators/reverse_iterator/cust.cc: New test.
3920 1.1.1.20 mrg
3921 1.1.1.20 mrg 2020-09-22 Jonathan Wakely <jwakely (a] redhat.com>
3922 1.1.1.20 mrg
3923 1.1.1.20 mrg Backported from master:
3924 1.1.1.20 mrg 2020-09-22 Jonathan Wakely <jwakely (a] redhat.com>
3925 1.1.1.20 mrg
3926 1.1.1.20 mrg PR libstdc++/97167
3927 1.1.1.20 mrg * src/c++17/fs_path.cc (path::_Parser::root_path()): Check
3928 1.1.1.20 mrg for empty string before inspecting the first character.
3929 1.1.1.20 mrg * testsuite/27_io/filesystem/path/append/source.cc: Append
3930 1.1.1.20 mrg empty string_view to path.
3931 1.1.1.20 mrg
3932 1.1.1.20 mrg 2020-09-22 Jonathan Wakely <jwakely (a] redhat.com>
3933 1.1.1.20 mrg
3934 1.1.1.20 mrg Backported from master:
3935 1.1.1.20 mrg 2020-09-22 Jonathan Wakely <jwakely (a] redhat.com>
3936 1.1.1.20 mrg
3937 1.1.1.20 mrg PR libstdc++/96803
3938 1.1.1.20 mrg * include/std/tuple
3939 1.1.1.20 mrg (_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl<U...>&)):
3940 1.1.1.20 mrg Use correct value category in __use_alloc call.
3941 1.1.1.20 mrg * testsuite/20_util/tuple/cons/96803.cc: Check with constructors
3942 1.1.1.20 mrg that require correct value category to be used.
3943 1.1.1.20 mrg
3944 1.1.1.20 mrg 2020-09-22 Jonathan Wakely <jwakely (a] redhat.com>
3945 1.1.1.20 mrg
3946 1.1.1.20 mrg Backported from master:
3947 1.1.1.20 mrg 2020-08-26 Jonathan Wakely <jwakely (a] redhat.com>
3948 1.1.1.20 mrg
3949 1.1.1.20 mrg PR libstdc++/96803
3950 1.1.1.20 mrg * include/std/tuple
3951 1.1.1.20 mrg (_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl<U...>&)):
3952 1.1.1.20 mrg Replace parameter pack with a type parameter and a pack and pass
3953 1.1.1.20 mrg the first type to __use_alloc.
3954 1.1.1.20 mrg * testsuite/20_util/tuple/cons/96803.cc: New test.
3955 1.1.1.20 mrg
3956 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3957 1.1.1.20 mrg
3958 1.1.1.20 mrg Backported from master:
3959 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
3960 1.1.1.20 mrg
3961 1.1.1.20 mrg PR libstdc++/94681
3962 1.1.1.20 mrg * src/c++17/fs_ops.cc (read_symlink): Use posix::lstat instead
3963 1.1.1.20 mrg of calling ::lstat directly.
3964 1.1.1.20 mrg * src/filesystem/ops.cc (read_symlink): Likewise.
3965 1.1.1.20 mrg
3966 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3967 1.1.1.20 mrg
3968 1.1.1.20 mrg Backported from master:
3969 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
3970 1.1.1.20 mrg
3971 1.1.1.20 mrg PR libstdc++/94681
3972 1.1.1.20 mrg * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Do not depend on
3973 1.1.1.20 mrg $enable_libstdcxx_filesystem_ts.
3974 1.1.1.20 mrg * configure: Regenerate.
3975 1.1.1.20 mrg
3976 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3977 1.1.1.20 mrg
3978 1.1.1.20 mrg Backported from master:
3979 1.1.1.20 mrg 2020-09-20 Jonathan Wakely <jwakely (a] redhat.com>
3980 1.1.1.20 mrg
3981 1.1.1.20 mrg PR libstdc++/97101
3982 1.1.1.20 mrg * include/std/functional (bind_front): Fix order of parameters
3983 1.1.1.20 mrg in is_nothrow_constructible_v specialization.
3984 1.1.1.20 mrg * testsuite/20_util/function_objects/bind_front/97101.cc: New test.
3985 1.1.1.20 mrg
3986 1.1.1.20 mrg 2020-09-21 Jonathan Wakely <jwakely (a] redhat.com>
3987 1.1.1.20 mrg
3988 1.1.1.20 mrg Backported from master:
3989 1.1.1.20 mrg 2020-09-10 Jonathan Wakely <jwakely (a] redhat.com>
3990 1.1.1.20 mrg
3991 1.1.1.20 mrg PR libstdc++/94160
3992 1.1.1.20 mrg * src/c++17/memory_resource.cc (munge_options): Round
3993 1.1.1.20 mrg max_blocks_per_chunk to a multiple of four.
3994 1.1.1.20 mrg (__pool_resource::_M_alloc_pools()): Simplify slightly.
3995 1.1.1.20 mrg * testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
3996 1.1.1.20 mrg Check that valid pointers are returned when small values are
3997 1.1.1.20 mrg used for max_blocks_per_chunk.
3998 1.1.1.20 mrg
3999 1.1.1.20 mrg 2020-09-03 Jonathan Wakely <jwakely (a] redhat.com>
4000 1.1.1.20 mrg
4001 1.1.1.20 mrg Backported from master:
4002 1.1.1.20 mrg 2020-07-07 Jonathan Wakely <jwakely (a] redhat.com>
4003 1.1.1.20 mrg
4004 1.1.1.20 mrg * include/Makefile.am: Remove bits/int_limits.h.
4005 1.1.1.20 mrg * include/Makefile.in: Regenerate.
4006 1.1.1.20 mrg * include/bits/int_limits.h: Removed.
4007 1.1.1.20 mrg * include/bits/parse_numbers.h (_Select_int_base): Replace
4008 1.1.1.20 mrg __int_limits with __int_traits.
4009 1.1.1.20 mrg * include/bits/range_access.h (_SSize::operator()): Likewise.
4010 1.1.1.20 mrg * include/ext/numeric_traits.h (__numeric_traits_integer): Add
4011 1.1.1.20 mrg static assertion.
4012 1.1.1.20 mrg (__int_traits): New alias template.
4013 1.1.1.20 mrg * include/std/bit (__rotl, __rotr, __countl_zero, __countl_one)
4014 1.1.1.20 mrg (__countr_zero, __countr_one, __popcount, __bit_ceil)
4015 1.1.1.20 mrg (__bit_floor, __bit_width) Replace __int_limits with
4016 1.1.1.20 mrg __int_traits.
4017 1.1.1.20 mrg * include/std/charconv (__to_chars_8, __from_chars_binary)
4018 1.1.1.20 mrg (__from_chars_alpha_to_num, from_chars): Likewise.
4019 1.1.1.20 mrg * include/std/memory_resource (polymorphic_allocator::allocate)
4020 1.1.1.20 mrg (polymorphic_allocator::allocate_object): Likewise.
4021 1.1.1.20 mrg * include/std/string_view (basic_string_view::_S_compare):
4022 1.1.1.20 mrg Likewise.
4023 1.1.1.20 mrg * include/std/utility (cmp_equal, cmp_less, in_range): Likewise.
4024 1.1.1.20 mrg
4025 1.1.1.20 mrg 2020-09-02 Jonathan Wakely <jwakely (a] redhat.com>
4026 1.1.1.20 mrg
4027 1.1.1.20 mrg Backported from master:
4028 1.1.1.20 mrg 2020-08-28 Jonathan Wakely <jwakely (a] redhat.com>
4029 1.1.1.20 mrg
4030 1.1.1.20 mrg PR libstdc++/92978
4031 1.1.1.20 mrg * include/std/numeric (__abs_integral): Replace with ...
4032 1.1.1.20 mrg (__detail::__absu): New function template that returns an
4033 1.1.1.20 mrg unsigned type, guaranteeing it can represent the most
4034 1.1.1.20 mrg negative signed value.
4035 1.1.1.20 mrg (__detail::__gcd, __detail::__lcm): Require arguments to
4036 1.1.1.20 mrg be unsigned and therefore already non-negative.
4037 1.1.1.20 mrg (gcd, lcm): Convert arguments to absolute value as unsigned
4038 1.1.1.20 mrg type before calling __detail::__gcd or __detail::__lcm.
4039 1.1.1.20 mrg * include/experimental/numeric (gcd, lcm): Likewise.
4040 1.1.1.20 mrg * testsuite/26_numerics/gcd/gcd_neg.cc: Adjust expected
4041 1.1.1.20 mrg errors.
4042 1.1.1.20 mrg * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
4043 1.1.1.20 mrg * testsuite/26_numerics/gcd/92978.cc: New test.
4044 1.1.1.20 mrg * testsuite/26_numerics/lcm/92978.cc: New test.
4045 1.1.1.20 mrg * testsuite/experimental/numeric/92978.cc: New test.
4046 1.1.1.20 mrg
4047 1.1.1.20 mrg 2020-09-02 Jonathan Wakely <jwakely (a] redhat.com>
4048 1.1.1.20 mrg
4049 1.1.1.20 mrg Backported from master:
4050 1.1.1.20 mrg 2020-09-02 Jonathan Wakely <jwakely (a] redhat.com>
4051 1.1.1.20 mrg
4052 1.1.1.20 mrg PR libstdc++/96851
4053 1.1.1.20 mrg * include/bits/cpp_type_traits.h (__is_memcmp_ordered):
4054 1.1.1.20 mrg New trait that says if memcmp can be used for ordering.
4055 1.1.1.20 mrg (__is_memcmp_ordered_with): Likewise, for two types.
4056 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn):
4057 1.1.1.20 mrg Use new traits instead of __is_byte and __numeric_traits.
4058 1.1.1.20 mrg * include/bits/stl_algobase.h (__lexicographical_compare_aux1)
4059 1.1.1.20 mrg (__is_byte_iter): Likewise.
4060 1.1.1.20 mrg * include/std/array (operator<=>): Likewise. Only use memcmp
4061 1.1.1.20 mrg when std::is_constant_evaluated() is false.
4062 1.1.1.20 mrg * testsuite/23_containers/array/comparison_operators/96851.cc:
4063 1.1.1.20 mrg New test.
4064 1.1.1.20 mrg * testsuite/23_containers/array/tuple_interface/get_neg.cc:
4065 1.1.1.20 mrg Adjust dg-error line numbers.
4066 1.1.1.20 mrg
4067 1.1.1.20 mrg 2020-09-02 Jonathan Wakely <jwakely (a] redhat.com>
4068 1.1.1.20 mrg
4069 1.1.1.20 mrg * include/bits/stl_iterator.h (counted_iterator::operator++(int)):
4070 1.1.1.20 mrg Use __throw_exception_again macro.
4071 1.1.1.20 mrg
4072 1.1.1.20 mrg 2020-08-26 Jonathan Wakely <jwakely (a] redhat.com>
4073 1.1.1.20 mrg
4074 1.1.1.20 mrg Backported from master:
4075 1.1.1.20 mrg 2020-08-26 Jonathan Wakely <jwakely (a] redhat.com>
4076 1.1.1.20 mrg
4077 1.1.1.20 mrg PR libstdc++/71960
4078 1.1.1.20 mrg * include/experimental/string_view (basic_string_view):
4079 1.1.1.20 mrg Enable debug assertions.
4080 1.1.1.20 mrg * include/std/string_view (basic_string_view):
4081 1.1.1.20 mrg Likewise.
4082 1.1.1.20 mrg
4083 1.1.1.20 mrg 2020-08-26 Jonathan Wakely <jwakely (a] redhat.com>
4084 1.1.1.20 mrg
4085 1.1.1.20 mrg Backported from master:
4086 1.1.1.20 mrg 2020-08-24 Jonathan Wakely <jwakely (a] redhat.com>
4087 1.1.1.20 mrg
4088 1.1.1.20 mrg PR libstdc++/96766
4089 1.1.1.20 mrg * include/std/variant (_Variant_storage): Replace implicit
4090 1.1.1.20 mrg conversions from size_t to __index_type with explicit casts.
4091 1.1.1.20 mrg
4092 1.1.1.20 mrg 2020-08-21 Jonathan Wakely <jwakely (a] redhat.com>
4093 1.1.1.20 mrg
4094 1.1.1.20 mrg Backported from master:
4095 1.1.1.20 mrg 2020-08-21 Jonathan Wakely <jwakely (a] redhat.com>
4096 1.1.1.20 mrg
4097 1.1.1.20 mrg PR libstdc++/96718
4098 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-2.cc: Require
4099 1.1.1.20 mrg tbb-backend effective target.
4100 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-3.cc: Likewise.
4101 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-5.cc: Likewise.
4102 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test.cc: Likewise.
4103 1.1.1.20 mrg
4104 1.1.1.20 mrg 2020-08-19 Jonathan Wakely <jwakely (a] redhat.com>
4105 1.1.1.20 mrg
4106 1.1.1.20 mrg Backported from master:
4107 1.1.1.20 mrg 2020-08-19 Jonathan Wakely <jwakely (a] redhat.com>
4108 1.1.1.20 mrg
4109 1.1.1.20 mrg * include/bits/c++config (_GLIBCXX_DEPRECATED_SUGGEST): New
4110 1.1.1.20 mrg macro for "use 'foo' instead" message in deprecated warnings.
4111 1.1.1.20 mrg * include/bits/ios_base.h (io_state, open_mode, seek_dir)
4112 1.1.1.20 mrg (streampos, streamoff): Use _GLIBCXX_DEPRECATED_SUGGEST.
4113 1.1.1.20 mrg * include/std/streambuf (stossc): Replace C++11 attribute
4114 1.1.1.20 mrg with _GLIBCXX_DEPRECATED_SUGGEST.
4115 1.1.1.20 mrg * include/std/type_traits (__is_nullptr_t): Use
4116 1.1.1.20 mrg _GLIBCXX_DEPRECATED_SUGGEST instead of _GLIBCXX_DEPRECATED.
4117 1.1.1.20 mrg * testsuite/27_io/types/1.cc: Check for deprecated warnings.
4118 1.1.1.20 mrg Also check for io_state, open_mode and seek_dir typedefs.
4119 1.1.1.20 mrg
4120 1.1.1.20 mrg 2020-08-11 Jonathan Wakely <jwakely (a] redhat.com>
4121 1.1.1.20 mrg
4122 1.1.1.20 mrg PR libstdc++/89760
4123 1.1.1.20 mrg * testsuite/experimental/net/execution_context/make_service.cc:
4124 1.1.1.20 mrg Add dg-require-gthreads.
4125 1.1.1.20 mrg * testsuite/experimental/net/executor/1.cc: Likewise.
4126 1.1.1.20 mrg * testsuite/experimental/net/headers.cc: Likewise.
4127 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v4/comparisons.cc:
4128 1.1.1.20 mrg Likewise.
4129 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v4/cons.cc:
4130 1.1.1.20 mrg Likewise.
4131 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v4/creation.cc:
4132 1.1.1.20 mrg Likewise.
4133 1.1.1.20 mrg * testsuite/experimental/net/internet/address/v4/members.cc:
4134 1.1.1.20 mrg Likewise.
4135 1.1.1.20 mrg * testsuite/experimental/net/internet/resolver/base.cc:
4136 1.1.1.20 mrg Likewise.
4137 1.1.1.20 mrg * testsuite/experimental/net/internet/resolver/ops/lookup.cc:
4138 1.1.1.20 mrg Likewise.
4139 1.1.1.20 mrg * testsuite/experimental/net/internet/resolver/ops/reverse.cc:
4140 1.1.1.20 mrg Likewise.
4141 1.1.1.20 mrg * testsuite/experimental/net/socket/basic_socket.cc: Likewise.
4142 1.1.1.20 mrg * testsuite/experimental/net/timer/waitable/cons.cc: Likewise.
4143 1.1.1.20 mrg * testsuite/experimental/net/timer/waitable/dest.cc: Likewise.
4144 1.1.1.20 mrg * testsuite/experimental/net/timer/waitable/ops.cc: Likewise.
4145 1.1.1.20 mrg
4146 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
4147 1.1.1.20 mrg
4148 1.1.1.20 mrg Backported from master:
4149 1.1.1.20 mrg 2020-08-10 Jonathan Wakely <jwakely (a] redhat.com>
4150 1.1.1.20 mrg
4151 1.1.1.20 mrg PR libstdc++/95749
4152 1.1.1.20 mrg * src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
4153 1.1.1.20 mrg (stat_type): Change to __stat64.
4154 1.1.1.20 mrg (stat): Use _wstat64.
4155 1.1.1.20 mrg
4156 1.1.1.20 mrg 2020-08-07 Jonathan Wakely <jwakely (a] redhat.com>
4157 1.1.1.20 mrg
4158 1.1.1.20 mrg Backported from master:
4159 1.1.1.20 mrg 2020-08-07 Jonathan Wakely <jwakely (a] redhat.com>
4160 1.1.1.20 mrg
4161 1.1.1.20 mrg PR libstdc++/96303
4162 1.1.1.20 mrg * include/debug/bitset (bitset::operator==): Call _M_base() on
4163 1.1.1.20 mrg right operand.
4164 1.1.1.20 mrg (bitset::operator!=): Likewise, but don't define it at all when
4165 1.1.1.20 mrg default comparisons are supported by the compiler.
4166 1.1.1.20 mrg * testsuite/23_containers/bitset/operations/96303.cc: New test.
4167 1.1.1.20 mrg
4168 1.1.1.20 mrg 2020-08-06 Jonathan Wakely <jwakely (a] redhat.com>
4169 1.1.1.20 mrg
4170 1.1.1.20 mrg Backported from master:
4171 1.1.1.20 mrg 2020-08-06 Jonathan Wakely <jwakely (a] redhat.com>
4172 1.1.1.20 mrg
4173 1.1.1.20 mrg PR libstdc++/96484
4174 1.1.1.20 mrg * src/c++17/fs_ops.cc (fs::read_symlink): Return an error
4175 1.1.1.20 mrg immediately for non-symlinks.
4176 1.1.1.20 mrg * src/filesystem/ops.cc (fs::read_symlink): Likewise.
4177 1.1.1.20 mrg
4178 1.1.1.20 mrg 2020-07-23 Release Manager
4179 1.1.1.20 mrg
4180 1.1.1.20 mrg * GCC 10.2.0 released.
4181 1.1.1.20 mrg
4182 1.1.1.20 mrg 2020-07-09 Jonathan Wakely <jwakely (a] redhat.com>
4183 1.1.1.20 mrg
4184 1.1.1.20 mrg Backported from master:
4185 1.1.1.20 mrg 2020-06-08 Jonathan Wakely <jwakely (a] redhat.com>
4186 1.1.1.20 mrg
4187 1.1.1.20 mrg * include/bits/unique_ptr.h (operator<<): Define for C++20.
4188 1.1.1.20 mrg * testsuite/20_util/unique_ptr/io/lwg2948.cc: New test.
4189 1.1.1.20 mrg * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error
4190 1.1.1.20 mrg line number.
4191 1.1.1.20 mrg * testsuite/20_util/default_delete/void_neg.cc: Likewise.
4192 1.1.1.20 mrg
4193 1.1.1.20 mrg 2020-07-09 Jonathan Wakely <jwakely (a] redhat.com>
4194 1.1.1.20 mrg
4195 1.1.1.20 mrg Backported from master:
4196 1.1.1.20 mrg 2020-05-27 Jonathan Wakely <jwakely (a] redhat.com>
4197 1.1.1.20 mrg
4198 1.1.1.20 mrg PR libstdc++/95322
4199 1.1.1.20 mrg * include/std/ranges (transform_view::_Sentinel): Allow hidden
4200 1.1.1.20 mrg friends to work with _Iterator<true> and _Iterator<false>.
4201 1.1.1.20 mrg (join_view::_Sentinel): Likewise.
4202 1.1.1.20 mrg * testsuite/std/ranges/adaptors/95322.cc: New test.
4203 1.1.1.20 mrg
4204 1.1.1.20 mrg 2020-07-09 Jonathan Wakely <jwakely (a] redhat.com>
4205 1.1.1.20 mrg
4206 1.1.1.20 mrg Backported from master:
4207 1.1.1.20 mrg 2020-05-04 Jonathan Wakely <jwakely (a] redhat.com>
4208 1.1.1.20 mrg
4209 1.1.1.20 mrg PR libstdc++/94936
4210 1.1.1.20 mrg * src/c++17/memory_resource.cc (synchronized_pool_resource::_TPools):
4211 1.1.1.20 mrg Add comment about single-threaded behaviour.
4212 1.1.1.20 mrg (synchronized_pool_resource::_TPools::move_nonempty_chunks()): Hoist
4213 1.1.1.20 mrg class member access out of loop.
4214 1.1.1.20 mrg (synchronized_pool_resource::synchronized_pool_resource())
4215 1.1.1.20 mrg (synchronized_pool_resource::~synchronized_pool_resource())
4216 1.1.1.20 mrg (synchronized_pool_resource::release()): Check __gthread_active_p
4217 1.1.1.20 mrg before creating and/or deleting the thread-specific data key.
4218 1.1.1.20 mrg (synchronized_pool_resource::_M_thread_specific_pools()): Adjust
4219 1.1.1.20 mrg assertions.
4220 1.1.1.20 mrg (synchronized_pool_resource::do_allocate(size_t, size_t)): Add fast
4221 1.1.1.20 mrg path for single-threaded case.
4222 1.1.1.20 mrg (synchronized_pool_resource::do_deallocate(void*, size_t, size_t)):
4223 1.1.1.20 mrg Likewise. Return if unable to find a pool that owns the allocation.
4224 1.1.1.20 mrg * testsuite/20_util/synchronized_pool_resource/allocate_single.cc:
4225 1.1.1.20 mrg New test.
4226 1.1.1.20 mrg * testsuite/20_util/synchronized_pool_resource/cons_single.cc: New
4227 1.1.1.20 mrg test.
4228 1.1.1.20 mrg * testsuite/20_util/synchronized_pool_resource/release_single.cc: New
4229 1.1.1.20 mrg test.
4230 1.1.1.20 mrg
4231 1.1.1.20 mrg 2020-07-09 Jonathan Wakely <jwakely (a] redhat.com>
4232 1.1.1.20 mrg
4233 1.1.1.20 mrg Backported from master:
4234 1.1.1.20 mrg 2020-05-19 Jonathan Wakely <jwakely (a] redhat.com>
4235 1.1.1.20 mrg
4236 1.1.1.20 mrg PR libstdc++/94087
4237 1.1.1.20 mrg * src/c++11/random.cc (__x86_rdseed): Allow fallback function to be
4238 1.1.1.20 mrg passed in.
4239 1.1.1.20 mrg (__x86_rdseed_rdrand): New function that uses rdseed with rdrand
4240 1.1.1.20 mrg fallback.
4241 1.1.1.20 mrg (random_device::_M_init): Use __x86_rdseed_rdrand when both
4242 1.1.1.20 mrg instructions are available.
4243 1.1.1.20 mrg * testsuite/26_numerics/random/random_device/94087.cc: New test.
4244 1.1.1.20 mrg
4245 1.1.1.20 mrg 2020-07-02 Ville Voutilainen <ville.voutilainen (a] gmail.com>
4246 1.1.1.20 mrg
4247 1.1.1.20 mrg Backported from master:
4248 1.1.1.20 mrg 2020-07-02 Ville Voutilainen <ville.voutilainen (a] gmail.com>
4249 1.1.1.20 mrg
4250 1.1.1.20 mrg PR libstdc++/91807
4251 1.1.1.20 mrg * include/std/variant
4252 1.1.1.20 mrg (_Copy_assign_base::operator=(const _Copy_assign_base&):
4253 1.1.1.20 mrg Do the move-assignment from a temporary so that the temporary
4254 1.1.1.20 mrg is constructed with an explicit index.
4255 1.1.1.20 mrg * testsuite/20_util/variant/91807.cc: New.
4256 1.1.1.20 mrg
4257 1.1.1.20 mrg 2020-07-02 Jonathan Wakely <jwakely.gcc (a] gmail.com>
4258 1.1.1.20 mrg
4259 1.1.1.20 mrg Backported from master:
4260 1.1.1.20 mrg 2020-07-02 Jonathan Wakely <jwakely.gcc (a] gmail.com>
4261 1.1.1.20 mrg
4262 1.1.1.20 mrg PR libstdc++/91153
4263 1.1.1.20 mrg PR target/93224
4264 1.1.1.20 mrg * testsuite/29_atomics/atomic_float/1.cc: Use different values
4265 1.1.1.20 mrg for tests.
4266 1.1.1.20 mrg * testsuite/29_atomics/atomic_ref/float.cc: Likewise.
4267 1.1.1.20 mrg
4268 1.1.1.20 mrg 2020-07-01 Jonathan Wakely <jwakely (a] redhat.com>
4269 1.1.1.20 mrg
4270 1.1.1.20 mrg Backported from master:
4271 1.1.1.20 mrg 2020-06-16 Jonathan Wakely <jwakely (a] redhat.com>
4272 1.1.1.20 mrg
4273 1.1.1.20 mrg PR libstdc++/95282
4274 1.1.1.20 mrg * include/bits/atomic_base.h (__atomic_impl::load): Add
4275 1.1.1.20 mrg const-qualifier to parameter so that _Tp is deduced as the
4276 1.1.1.20 mrg non-const type, and use _Val to get the unqualified type.
4277 1.1.1.20 mrg (__atomic_impl::exchange): Use the _Val alias to remove
4278 1.1.1.20 mrg volatile from the reinterpret_cast result type.
4279 1.1.1.20 mrg * testsuite/29_atomics/atomic_float/95282.cc: New test.
4280 1.1.1.20 mrg
4281 1.1.1.20 mrg 2020-07-01 Jonathan Wakely <jwakely (a] redhat.com>
4282 1.1.1.20 mrg
4283 1.1.1.20 mrg Backported from master:
4284 1.1.1.20 mrg 2020-07-01 Jonathan Wakely <jwakely (a] redhat.com>
4285 1.1.1.20 mrg
4286 1.1.1.20 mrg PR libstdc++/94627
4287 1.1.1.20 mrg * include/bits/regex.h (operator==, operator!=): Remove noexcept
4288 1.1.1.20 mrg equality comparisons for match_results.
4289 1.1.1.20 mrg * testsuite/28_regex/match_results/94627.cc: New test.
4290 1.1.1.20 mrg
4291 1.1.1.20 mrg 2020-06-29 Ville Voutilainen <ville.voutilainen (a] gmail.com>
4292 1.1.1.20 mrg
4293 1.1.1.20 mrg Backported from master:
4294 1.1.1.20 mrg 2020-06-28 Ville Voutilainen <ville.voutilainen (a] gmail.com>
4295 1.1.1.20 mrg
4296 1.1.1.20 mrg PR libstdc++/95915
4297 1.1.1.20 mrg * include/std/variant (_Uninitialized):
4298 1.1.1.20 mrg Adjust the condition and the comment.
4299 1.1.1.20 mrg * testsuite/20_util/variant/95915.cc: New.
4300 1.1.1.20 mrg * testsuite/20_util/variant/compile.cc: Add new test.
4301 1.1.1.20 mrg
4302 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4303 1.1.1.20 mrg
4304 1.1.1.20 mrg Backported from master:
4305 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4306 1.1.1.20 mrg
4307 1.1.1.20 mrg * include/std/charconv (__from_chars_binary): Ignore leading zeros.
4308 1.1.1.20 mrg * testsuite/20_util/from_chars/1.cc: Check "0x1" for all bases,
4309 1.1.1.20 mrg not just 10 and 16.
4310 1.1.1.20 mrg * testsuite/20_util/from_chars/3.cc: New test.
4311 1.1.1.20 mrg
4312 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4313 1.1.1.20 mrg
4314 1.1.1.20 mrg Backported from master:
4315 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4316 1.1.1.20 mrg
4317 1.1.1.20 mrg * include/bits/stl_algobase.h (__find_if): Add FALLTHRU markers.
4318 1.1.1.20 mrg * include/std/charconv (__detail::__to_chars): Avoid
4319 1.1.1.20 mrg -Wsign-compare warning.
4320 1.1.1.20 mrg
4321 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4322 1.1.1.20 mrg
4323 1.1.1.20 mrg Backported from master:
4324 1.1.1.20 mrg 2020-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4325 1.1.1.20 mrg
4326 1.1.1.20 mrg PR libstdc++/95851
4327 1.1.1.20 mrg * include/std/charconv (__to_chars_i): Check for zero-sized
4328 1.1.1.20 mrg buffer unconditionally.
4329 1.1.1.20 mrg * testsuite/20_util/to_chars/95851.cc: New test.
4330 1.1.1.20 mrg
4331 1.1.1.20 mrg 2020-06-22 Jason Merrill <jason (a] redhat.com>
4332 1.1.1.20 mrg
4333 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/rel_ops_c++20.cc:
4334 1.1.1.20 mrg Remove greedy_ops tests.
4335 1.1.1.20 mrg * testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc:
4336 1.1.1.20 mrg Remove greedy_ops tests.
4337 1.1.1.20 mrg
4338 1.1.1.20 mrg 2020-06-11 Patrick Palka <ppalka (a] redhat.com>
4339 1.1.1.20 mrg
4340 1.1.1.20 mrg PR libstdc++/95578
4341 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn):
4342 1.1.1.20 mrg Also check that the iterator and sentinel have the same type before
4343 1.1.1.20 mrg applying the unwrapping optimization for __normal_iterator.
4344 1.1.1.20 mrg Split the check into two, one for the first iterator/sentinel
4345 1.1.1.20 mrg pair and another for second iterator/sentinel pair. Remove uses
4346 1.1.1.20 mrg of __niter_base, and remove uses of std::move on a
4347 1.1.1.20 mrg __normal_iterator.
4348 1.1.1.20 mrg * include/bits/ranges_algobase.h (__equal_fn): Likewise.
4349 1.1.1.20 mrg (__copy_or_move): Likewise. Perform similar adjustments for
4350 1.1.1.20 mrg the reverse_iterator and move_iterator optimizations. Inline
4351 1.1.1.20 mrg the checks into the if-constexprs, and use using-declarations to
4352 1.1.1.20 mrg make them less visually noisy. Remove uses of __niter_wrap.
4353 1.1.1.20 mrg (__copy_or_move_backward): Likewise.
4354 1.1.1.20 mrg * testsuite/25_algorithms/copy/95578.cc: New test.
4355 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/95578.cc: New test.
4356 1.1.1.20 mrg * testsuite/25_algorithms/equal/95578.cc: New test.
4357 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/95578.cc: New test.
4358 1.1.1.20 mrg * testsuite/25_algorithms/move/95578.cc: New test.
4359 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/95578.cc: New test.
4360 1.1.1.20 mrg
4361 1.1.1.20 mrg 2020-05-28 Patrick Palka <ppalka (a] redhat.com>
4362 1.1.1.20 mrg
4363 1.1.1.20 mrg PR libstdc++/95322
4364 1.1.1.20 mrg * include/bits/stl_iterator.h (__detail::_Common_iter_proxy):
4365 1.1.1.20 mrg Remove and instead define it ...
4366 1.1.1.20 mrg (common_iterator::_Proxy): ... here.
4367 1.1.1.20 mrg (common_iterator::operator->): Use it.
4368 1.1.1.20 mrg * testsuite/24_iterators/common_iterator/2.cc: New test.
4369 1.1.1.20 mrg * testsuite/std/ranges/adaptors/95322.cc: New test.
4370 1.1.1.20 mrg
4371 1.1.1.20 mrg 2020-05-26 Alexandre Oliva <oliva (a] adacore.com>
4372 1.1.1.20 mrg
4373 1.1.1.20 mrg PR libstdc++/77691
4374 1.1.1.20 mrg * include/experimental/memory_resource
4375 1.1.1.20 mrg (__resource_adaptor_imp::do_allocate): Handle max_align_t on
4376 1.1.1.20 mrg x86-vxworks as on x86-solaris.
4377 1.1.1.20 mrg (__resource_adaptor_imp::do_deallocate): Likewise.
4378 1.1.1.20 mrg * testsuite/experimental/memory_resource/new_delete_resource.cc:
4379 1.1.1.20 mrg Drop xfail.
4380 1.1.1.20 mrg (BAD_MAX_ALIGN_T): Define on x86-vxworks as on x86-solaris.
4381 1.1.1.20 mrg (test03): Drop max-align test for char-aligned alloc.
4382 1.1.1.20 mrg
4383 1.1.1.20 mrg 2020-05-23 Jonathan Wakely <jwakely (a] redhat.com>
4384 1.1.1.20 mrg
4385 1.1.1.20 mrg Backport from mainline
4386 1.1.1.20 mrg 2020-05-23 Jonathan Wakely <jwakely (a] redhat.com>
4387 1.1.1.20 mrg
4388 1.1.1.20 mrg * include/bits/fs_path.h (__detail::_S_range_begin)
4389 1.1.1.20 mrg (__detail::_S_range_end): Remove unintentional static specifiers.
4390 1.1.1.20 mrg * include/experimental/bits/fs_path.h (__detail::_S_range_begin)
4391 1.1.1.20 mrg (__detail::_S_range_end): Likewise.
4392 1.1.1.20 mrg
4393 1.1.1.20 mrg 2020-05-23 Jonathan Wakely <jwakely (a] redhat.com>
4394 1.1.1.20 mrg
4395 1.1.1.20 mrg Backport from mainline
4396 1.1.1.20 mrg 2020-05-23 Jonathan Wakely <jwakely (a] redhat.com>
4397 1.1.1.20 mrg
4398 1.1.1.20 mrg PR libstdc++/95289
4399 1.1.1.20 mrg * include/debug/helper_functions.h (__get_distance): Only declare
4400 1.1.1.20 mrg as a constexpr function for C++14 and up.
4401 1.1.1.20 mrg * testsuite/25_algorithms/copy/debug/95289.cc: New test.
4402 1.1.1.20 mrg
4403 1.1.1.20 mrg 2020-05-21 Jonathan Wakely <jwakely (a] redhat.com>
4404 1.1.1.20 mrg
4405 1.1.1.20 mrg Backport from mainline
4406 1.1.1.20 mrg 2020-05-21 Jonathan Wakely <jwakely (a] redhat.com>
4407 1.1.1.20 mrg
4408 1.1.1.20 mrg * include/experimental/executor (use_future_t::use_future_t()): Fix
4409 1.1.1.20 mrg incorrect noexcept-specifier.
4410 1.1.1.20 mrg * include/experimental/internet (basic_resolver_results): Adjust
4411 1.1.1.20 mrg whitespace.
4412 1.1.1.20 mrg * include/experimental/socket (__basic_socket_impl::release): Add
4413 1.1.1.20 mrg member function.
4414 1.1.1.20 mrg (basic_socket(io_context&, const endpoint_type&)): Fix argument to
4415 1.1.1.20 mrg target constructor.
4416 1.1.1.20 mrg (basic_socket::release(), basic_socket::release(error_code&)): Add
4417 1.1.1.20 mrg missing member functions.
4418 1.1.1.20 mrg (basic_socket::is_open()): Add nodiscard attribute.
4419 1.1.1.20 mrg (basic_socket::close(error_code&)): Pass argument to base function.
4420 1.1.1.20 mrg (basic_socket_acceptor::release())
4421 1.1.1.20 mrg (basic_socket_acceptor::release(error_code&)): Add missing member
4422 1.1.1.20 mrg functions.
4423 1.1.1.20 mrg (basic_socket_acceptor::is_open()): Add nodiscard attribute.
4424 1.1.1.20 mrg (basic_socket_streambuf::error()): Add noexcept.
4425 1.1.1.20 mrg (basic_socket_iostream::error()): Likewise.
4426 1.1.1.20 mrg * testsuite/experimental/net/socket/basic_socket.cc: New test.
4427 1.1.1.20 mrg
4428 1.1.1.20 mrg 2020-05-21 Jonathan Wakely <jwakely (a] redhat.com>
4429 1.1.1.20 mrg
4430 1.1.1.20 mrg Backport from mainline
4431 1.1.1.20 mrg 2020-05-21 Jonathan Wakely <jwakely (a] redhat.com>
4432 1.1.1.20 mrg
4433 1.1.1.20 mrg PR libstdc++/93983
4434 1.1.1.20 mrg * include/bits/iterator_concepts.h (__detail::__cpp17_iterator):
4435 1.1.1.20 mrg Reorder constraints to avoid recursion when constructors use
4436 1.1.1.20 mrg iterator_traits (LWG 3420).
4437 1.1.1.20 mrg * testsuite/24_iterators/customization_points/lwg3420.cc: New test.
4438 1.1.1.20 mrg
4439 1.1.1.20 mrg 2020-05-12 Jonathan Wakely <jwakely (a] redhat.com>
4440 1.1.1.20 mrg
4441 1.1.1.20 mrg Backport from mainline
4442 1.1.1.20 mrg 2020-05-04 Jonathan Wakely <jwakely (a] redhat.com>
4443 1.1.1.20 mrg
4444 1.1.1.20 mrg PR libstdc++/94906
4445 1.1.1.20 mrg * src/c++17/memory_resource.cc
4446 1.1.1.20 mrg (monotonic_buffer_resource::_Chunk::release): Use size_t for shift
4447 1.1.1.20 mrg operands.
4448 1.1.1.20 mrg
4449 1.1.1.20 mrg Backport from mainline
4450 1.1.1.20 mrg 2020-05-03 Jonathan Wakely <jwakely (a] redhat.com>
4451 1.1.1.20 mrg
4452 1.1.1.20 mrg PR libstdc++/94933
4453 1.1.1.20 mrg * include/bits/stl_algobase.h (__fill_a1): Make overload for byte types
4454 1.1.1.20 mrg usable in constant expressions.
4455 1.1.1.20 mrg * testsuite/25_algorithms/fill_n/constexpr.cc: Test with bytes and
4456 1.1.1.20 mrg non-scalars.
4457 1.1.1.20 mrg
4458 1.1.1.20 mrg 2020-05-07 Jonathan Wakely <jwakely (a] redhat.com>
4459 1.1.1.20 mrg
4460 1.1.1.20 mrg Backport from mainline
4461 1.1.1.20 mrg 2020-05-01 Jonathan Wakely <jwakely (a] redhat.com>
4462 1.1.1.20 mrg Patrick Palka <ppalka (a] redhat.com>
4463 1.1.1.20 mrg
4464 1.1.1.20 mrg PR libstdc++/92894
4465 1.1.1.20 mrg * include/bits/iterator_concepts.h (ranges::__cust_imove::_IMove):
4466 1.1.1.20 mrg Add trait to determine return type and an alias for it.
4467 1.1.1.20 mrg (ranges::__cust_imove::_IMove::operator()): Use __result instead of
4468 1.1.1.20 mrg deduced return type.
4469 1.1.1.20 mrg * testsuite/24_iterators/customization_points/92894.cc: New test.
4470 1.1.1.20 mrg * testsuite/24_iterators/indirect_callable/92894.cc: New test.
4471 1.1.1.20 mrg
4472 1.1.1.20 mrg 2020-05-07 Release Manager
4473 1.1.1.20 mrg
4474 1.1.1.20 mrg * GCC 10.1.0 released.
4475 1.1.1.20 mrg
4476 1.1.1.20 mrg 2020-05-07 Eric Botcazou <ebotcazou (a] adacore.com>
4477 1.1.1.20 mrg
4478 1.1.1.20 mrg * config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: Update.
4479 1.1.1.20 mrg * config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: Likewise.
4480 1.1.1.20 mrg
4481 1.1.1.20 mrg 2020-05-06 H.J. Lu <hongjiu.lu (a] intel.com>
4482 1.1.1.20 mrg
4483 1.1.1.20 mrg * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
4484 1.1.1.20 mrg
4485 1.1.1.20 mrg 2020-05-06 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
4486 1.1.1.20 mrg
4487 1.1.1.20 mrg * config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
4488 1.1.1.20 mrg * config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
4489 1.1.1.20 mrg Likewise.
4490 1.1.1.20 mrg * config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
4491 1.1.1.20 mrg * config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
4492 1.1.1.20 mrg Likewise.
4493 1.1.1.20 mrg
4494 1.1.1.20 mrg 2020-05-06 Jonathan Wakely <jwakely (a] redhat.com>
4495 1.1.1.20 mrg
4496 1.1.1.20 mrg * doc/xml/manual/abi.xml (abi.versioning.history): Document library
4497 1.1.1.20 mrg versions for GCC 9.[123] and 10.1 releases.
4498 1.1.1.20 mrg * doc/html/*: Regenerate.
4499 1.1.1.20 mrg
4500 1.1.1.20 mrg 2020-05-06 Jakub Jelinek <jakub (a] redhat.com>
4501 1.1.1.20 mrg
4502 1.1.1.20 mrg * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
4503 1.1.1.20 mrg * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
4504 1.1.1.20 mrg * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
4505 1.1.1.19 mrg * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
4506 1.1.1.19 mrg * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
4507 1.1.1.19 mrg * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
4508 1.1.1.19 mrg * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
4509 1.1.1.19 mrg
4510 1.1.1.20 mrg 2020-05-04 Jonathan Wakely <jwakely (a] redhat.com>
4511 1.1.1.20 mrg
4512 1.1.1.20 mrg * doc/xml/faq.xml: Use working link for SGI STL FAQ.
4513 1.1.1.20 mrg * doc/html/*: Regenerate.
4514 1.1.1.20 mrg
4515 1.1.1.20 mrg 2020-05-01 Jonathan Wakely <jwakely (a] redhat.com>
4516 1.1.1.20 mrg
4517 1.1.1.20 mrg Backport from mainline
4518 1.1.1.20 mrg 2020-05-01 Jonathan Wakely <jwakely (a] redhat.com>
4519 1.1.1.20 mrg
4520 1.1.1.20 mrg PR libstdc++/94901
4521 1.1.1.20 mrg * include/std/type_traits (__is_complete_or_unbounded): Replace
4522 1.1.1.20 mrg BADNAME _T with _Tp.
4523 1.1.1.20 mrg * testsuite/17_intro/badnames.cc: New test.
4524 1.1.1.20 mrg
4525 1.1.1.20 mrg 2020-04-30 Jonathan Wakely <jwakely (a] redhat.com>
4526 1.1.1.20 mrg
4527 1.1.1.20 mrg PR libstdc++/89510
4528 1.1.1.20 mrg * include/bits/alloc_traits.h (allocator_traits::_S_construct)
4529 1.1.1.20 mrg (allocator_traits::_S_destroy)
4530 1.1.1.20 mrg (allocator_traits<allocator<T>>::construct): Use traits in
4531 1.1.1.20 mrg noexcept-specifiers.
4532 1.1.1.20 mrg * include/bits/allocator.h (allocator<void>::construct)
4533 1.1.1.20 mrg (allocator<void>::destroy): Likewise.
4534 1.1.1.20 mrg * include/ext/malloc_allocator.h (malloc_allocator::construct)
4535 1.1.1.20 mrg (malloc_allocator::destroy): Likewise.
4536 1.1.1.20 mrg * include/ext/new_allocator.h (new_allocator::construct)
4537 1.1.1.20 mrg (new_allocator::destroy): Likewise.
4538 1.1.1.20 mrg * testsuite/20_util/allocator/89510.cc: New test.
4539 1.1.1.20 mrg * testsuite/ext/malloc_allocator/89510.cc: New test.
4540 1.1.1.20 mrg * testsuite/ext/new_allocator/89510.cc: New test.
4541 1.1.1.20 mrg
4542 1.1.1.20 mrg 2020-04-29 Jonathan Wakely <jwakely (a] redhat.com>
4543 1.1.1.20 mrg
4544 1.1.1.20 mrg PR libstdc++/94854
4545 1.1.1.20 mrg * include/bits/basic_string.tcc: Update comment about explicit
4546 1.1.1.20 mrg instantiations.
4547 1.1.1.20 mrg
4548 1.1.1.20 mrg 2020-04-28 Jonathan Wakely <jwakely (a] redhat.com>
4549 1.1.1.20 mrg
4550 1.1.1.20 mrg PR libstdc++/91480
4551 1.1.1.20 mrg * include/bits/allocator.h (__cpp_lib_allocator_is_always_equal):
4552 1.1.1.20 mrg Remove non-standard macro.
4553 1.1.1.20 mrg * include/bits/stl_iterator.h (__cpp_lib_constexpr_iterator): Define
4554 1.1.1.20 mrg to indicate P1032R1 support.
4555 1.1.1.20 mrg * include/bits/stl_pair.h (__cpp_lib_constexpr_utility): Likewise.
4556 1.1.1.20 mrg * include/std/string_view (__cpp_lib_constexpr_string_view): Likewise.
4557 1.1.1.20 mrg * include/std/tuple (__cpp_lib_constexpr_tuple): Likewise.
4558 1.1.1.20 mrg * include/std/version (__cpp_lib_allocator_is_always_equal): Remove.
4559 1.1.1.20 mrg (__cpp_lib_constexpr_iterator, __cpp_lib_constexpr_string_view)
4560 1.1.1.20 mrg (__cpp_lib_constexpr_tuple, __cpp_lib_constexpr_utility): Define.
4561 1.1.1.20 mrg * testsuite/20_util/function_objects/constexpr_searcher.cc: Check
4562 1.1.1.20 mrg feature test macro.
4563 1.1.1.20 mrg * testsuite/20_util/tuple/cons/constexpr_allocator_arg_t.cc: Likewise.
4564 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/
4565 1.1.1.20 mrg constexpr.cc: Likewise.
4566 1.1.1.20 mrg * testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise.
4567 1.1.1.20 mrg
4568 1.1.1.20 mrg PR libstdc++/94831
4569 1.1.1.20 mrg * include/bits/alloc_traits.h (_S_construct): Restore placement
4570 1.1.1.20 mrg new-expression for C++11/14/17 and call std::construct_at directly
4571 1.1.1.20 mrg for C++20.
4572 1.1.1.20 mrg * include/bits/stl_construct.h (_Construct): Revert to non-constexpr
4573 1.1.1.20 mrg function returning void.
4574 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/
4575 1.1.1.20 mrg uninitialized_value_construct/94831.cc: New test.
4576 1.1.1.20 mrg * testsuite/23_containers/vector/cons/94831.cc: New test.
4577 1.1.1.20 mrg
4578 1.1.1.20 mrg 2020-04-28 Patrick Palka <ppalka (a] redhat.com>
4579 1.1.1.20 mrg
4580 1.1.1.20 mrg LWG 3433 subrange::advance(n) has UB when n < 0
4581 1.1.1.20 mrg * include/std/ranges (subrange::prev): Fix typo.
4582 1.1.1.20 mrg (subrange::advance): Handle a negative argument as per the proposed
4583 1.1.1.20 mrg resolution of LWG 3433.
4584 1.1.1.20 mrg * testsuite/std/ranges/subrange/lwg3433.cc: New test.
4585 1.1.1.20 mrg
4586 1.1.1.20 mrg 2020-04-28 Jonathan Wakely <jwakely (a] redhat.com>
4587 1.1.1.20 mrg Iain Sandoe <iain (a] sandoe.co.uk>
4588 1.1.1.20 mrg
4589 1.1.1.20 mrg PR c++/94759
4590 1.1.1.20 mrg * include/std/coroutine: Implement handing for non-
4591 1.1.1.20 mrg class coroutine return types.
4592 1.1.1.20 mrg
4593 1.1.1.20 mrg 2020-04-24 Jonathan Wakely <jwakely (a] redhat.com>
4594 1.1.1.20 mrg
4595 1.1.1.20 mrg * include/experimental/executor (service_already_exists): Make default
4596 1.1.1.20 mrg constructor public (LWG 3414).
4597 1.1.1.20 mrg * testsuite/experimental/net/execution_context/make_service.cc: Check
4598 1.1.1.20 mrg the service_already_exists can be default constructed.
4599 1.1.1.20 mrg
4600 1.1.1.20 mrg 2020-04-24 Kamlesh Kumar <kamleshbhalui (a] gmail.com>
4601 1.1.1.20 mrg Jonathan Wakely <jwakely (a] redhat.com>
4602 1.1.1.20 mrg
4603 1.1.1.20 mrg PR libstdc++/90415
4604 1.1.1.20 mrg PR libstdc++/92156
4605 1.1.1.20 mrg * include/std/any (any): Rename template parameters for consistency
4606 1.1.1.20 mrg with the standard.
4607 1.1.1.20 mrg (any::_Decay): Rename to _Decay_if_not_any.
4608 1.1.1.20 mrg (any::any(T&&):: Remove is_constructible from constraints. Remove
4609 1.1.1.20 mrg non-standard overload.
4610 1.1.1.20 mrg (any::any(in_place_type_t<T>, Args&&...))
4611 1.1.1.20 mrg (any::any(in_place_type_t<T>, initializer_list<U>, Args&&...))
4612 1.1.1.20 mrg (any::emplace(Args&&...))
4613 1.1.1.20 mrg (any::emplace(initializer_list<U>, Args&&...)):
4614 1.1.1.20 mrg Use decay_t instead of _Decay.
4615 1.1.1.20 mrg * testsuite/20_util/any/cons/90415.cc: New test.
4616 1.1.1.20 mrg * testsuite/20_util/any/cons/92156.cc: New Test.
4617 1.1.1.20 mrg * testsuite/20_util/any/misc/any_cast_neg.cc: Make dg-error directives
4618 1.1.1.20 mrg more robust.
4619 1.1.1.20 mrg * testsuite/20_util/any/modifiers/92156.cc: New test.
4620 1.1.1.20 mrg
4621 1.1.1.20 mrg 2020-04-23 Jonathan Wakely <jwakely (a] redhat.com>
4622 1.1.1.20 mrg
4623 1.1.1.20 mrg * doc/xml/manual/status_cxx2020.xml: Update C++20 status table.
4624 1.1.1.20 mrg * doc/html/*: Regenerate.
4625 1.1.1.20 mrg
4626 1.1.1.20 mrg * include/bits/stl_iterator.h (__cpp_lib_array_constexpr): Revert
4627 1.1.1.20 mrg value for C++17 to 201803L because P0858R0 is supported for C++17.
4628 1.1.1.20 mrg * include/std/version (__cpp_lib_array_constexpr): Likewise.
4629 1.1.1.20 mrg * testsuite/23_containers/array/element_access/constexpr_c++17.cc:
4630 1.1.1.20 mrg Check for value corresponding to P0031R0 features being tested.
4631 1.1.1.20 mrg * testsuite/23_containers/array/requirements/constexpr_iter.cc:
4632 1.1.1.20 mrg Check for value corresponding to P0858R0 features being tested.
4633 1.1.1.20 mrg
4634 1.1.1.20 mrg * include/std/version (__cpp_lib_three_way_comparison): Define for
4635 1.1.1.20 mrg freestanding builds.
4636 1.1.1.20 mrg
4637 1.1.1.20 mrg 2020-04-23 Thomas Rodgers <rodgert (a] appliantology.com>
4638 1.1.1.20 mrg
4639 1.1.1.20 mrg * include/experimental/net/executor (system_context): Mark
4640 1.1.1.20 mrg system_context::system_context() = delete.
4641 1.1.1.20 mrg * testsuite/experimental/net/executor/1.cc: Add new
4642 1.1.1.20 mrg test to check system_context is not default constructible.
4643 1.1.1.20 mrg
4644 1.1.1.20 mrg 2020-04-23 Iain Sandoe <iain (a] sandoe.co.uk>
4645 1.1.1.20 mrg
4646 1.1.1.20 mrg * include/std/coroutine: Update the inline namespace to __n4861.
4647 1.1.1.20 mrg Add the __cpp_lib_coroutine define, set to 201902L.
4648 1.1.1.20 mrg * include/std/version: Add __cpp_lib_coroutine, set to 201902L.
4649 1.1.1.20 mrg
4650 1.1.1.20 mrg 2020-04-22 Jonathan Wakely <jwakely (a] redhat.com>
4651 1.1.1.20 mrg
4652 1.1.1.20 mrg * include/std/execution (__cpp_lib_execution): Define to indicate
4653 1.1.1.20 mrg support for P0024R2 and P1001R2.
4654 1.1.1.20 mrg * include/std/version (__cpp_lib_execution): Define.
4655 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test.cc: Only test macro
4656 1.1.1.20 mrg defined by <algorithm>, move other tests to new tests ...
4657 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-2.cc: New test.
4658 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-3.cc: New test.
4659 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-4.cc: New test.
4660 1.1.1.20 mrg * testsuite/25_algorithms/pstl/feature_test-5.cc: New test.
4661 1.1.1.20 mrg
4662 1.1.1.20 mrg * include/bits/stl_iterator.h (__cpp_lib_array_constexpr): Define
4663 1.1.1.20 mrg different values for C++17 and C++20, to indicate different feature
4664 1.1.1.20 mrg sets. Update value for C++20 to indicate P1032R1 support.
4665 1.1.1.20 mrg * include/std/version (__cpp_lib_array_constexpr): Likewise.
4666 1.1.1.20 mrg * testsuite/23_containers/array/comparison_operators/constexpr.cc:
4667 1.1.1.20 mrg Check feature test macro.
4668 1.1.1.20 mrg * testsuite/23_containers/array/element_access/constexpr_c++17.cc:
4669 1.1.1.20 mrg New test.
4670 1.1.1.20 mrg * testsuite/23_containers/array/requirements/constexpr_fill.cc: Check
4671 1.1.1.20 mrg feature test macro.
4672 1.1.1.20 mrg * testsuite/23_containers/array/requirements/constexpr_iter.cc: Test
4673 1.1.1.20 mrg in C++17 mode and check feature test macro.
4674 1.1.1.20 mrg
4675 1.1.1.20 mrg * include/std/utility (__cpp_lib_constexpr_algorithms): Do not define
4676 1.1.1.20 mrg here.
4677 1.1.1.20 mrg * testsuite/20_util/exchange/constexpr.cc: Do not expect macro to be
4678 1.1.1.20 mrg defined by <utility>.
4679 1.1.1.20 mrg
4680 1.1.1.20 mrg * include/std/functional (__cpp_lib_concepts): Update macro value to
4681 1.1.1.20 mrg indicate P1964R2 support.
4682 1.1.1.20 mrg * include/std/version (__cpp_lib_concepts): Likewise.
4683 1.1.1.20 mrg * testsuite/std/concepts/1.cc: Adjust expected value.
4684 1.1.1.20 mrg * testsuite/std/concepts/2.cc: Likewise.
4685 1.1.1.20 mrg
4686 1.1.1.20 mrg * include/std/functional (__cpp_lib_constexpr_invoke): Rename to
4687 1.1.1.20 mrg __cpp_lib_constexpr_functional.
4688 1.1.1.20 mrg * include/std/version (__cpp_lib_constexpr_invoke): Likewise.
4689 1.1.1.20 mrg * testsuite/20_util/function_objects/invoke/constexpr.cc: Adjust.
4690 1.1.1.20 mrg
4691 1.1.1.20 mrg * include/bits/ptr_traits.h (__cpp_lib_constexpr_memory): Define to
4692 1.1.1.20 mrg indicate P1006R1 support.
4693 1.1.1.20 mrg (__cpp_lib_to_address): Define to indicate P0653R2 support.
4694 1.1.1.20 mrg * include/bits/range_access.h (__cpp_lib_ssize): Define to indicate
4695 1.1.1.20 mrg P1227R2 support.
4696 1.1.1.20 mrg * include/bits/ranges_algo.h (__cpp_lib_shift): Define to indicate
4697 1.1.1.20 mrg P0769R2 support.
4698 1.1.1.20 mrg * include/std/atomic (__cpp_lib_atomic_float): Define to indicate
4699 1.1.1.20 mrg P0020R6 support.
4700 1.1.1.20 mrg * include/std/memory (__cpp_lib_assume_aligned): Define to indicate
4701 1.1.1.20 mrg P1007R3 support.
4702 1.1.1.20 mrg * include/std/memory_resource (__cpp_lib_polymorphic_allocator):
4703 1.1.1.20 mrg Define to indicate P0339R6 support.
4704 1.1.1.20 mrg * include/std/string_view (__cpp_lib_starts_ends_with): Define to
4705 1.1.1.20 mrg indicate P0457R2 support.
4706 1.1.1.20 mrg * include/std/type_traits (__cpp_lib_is_nothrow_convertible): Define
4707 1.1.1.20 mrg to indicate P0758R1 support.
4708 1.1.1.20 mrg (__cpp_lib_remove_cvref): Define to indicate P0550R2 support.
4709 1.1.1.20 mrg (__cpp_lib_type_identity): Define to indicate P0887R1 support.
4710 1.1.1.20 mrg * include/std/version (__cpp_lib_atomic_float)
4711 1.1.1.20 mrg (__cpp_lib_is_nothrow_convertible, __cpp_lib_remove_cvref)
4712 1.1.1.20 mrg (__cpp_lib_type_identity, __cpp_lib_assume_aligned)
4713 1.1.1.20 mrg (__cpp_lib_constexpr_memory, __cpp_lib_polymorphic_allocator)
4714 1.1.1.20 mrg (__cpp_lib_shift, __cpp_lib_ssize, __cpp_lib_starts_ends_with)
4715 1.1.1.20 mrg (__cpp_lib_to_address): Define.
4716 1.1.1.20 mrg * testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line number.
4717 1.1.1.20 mrg
4718 1.1.1.20 mrg * include/bits/stl_map.h (__cpp_lib_map_insertion): Remove old
4719 1.1.1.20 mrg macro.
4720 1.1.1.20 mrg * include/bits/unordered_map.h (__cpp_lib_unordered_map_insertion):
4721 1.1.1.20 mrg Likewise.
4722 1.1.1.20 mrg * include/std/version (__cpp_lib_map_insertion)
4723 1.1.1.20 mrg (__cpp_lib_unordered_map_insertion): Remove.
4724 1.1.1.20 mrg
4725 1.1.1.20 mrg * include/std/condition_variable (__cpp_lib_jthread): Remove
4726 1.1.1.20 mrg redundant definition.
4727 1.1.1.20 mrg * include/std/stop_token (__cpp_lib_jthread): Update macro value to
4728 1.1.1.20 mrg indicate P1869R1 support.
4729 1.1.1.20 mrg * include/std/version (__cpp_lib_jthread): Update value.
4730 1.1.1.20 mrg * testsuite/30_threads/condition_variable_any/stop_token/1.cc: Check
4731 1.1.1.20 mrg for updated macro value.
4732 1.1.1.20 mrg * testsuite/30_threads/condition_variable_any/stop_token/2.cc:
4733 1.1.1.20 mrg Likewise.
4734 1.1.1.20 mrg * testsuite/30_threads/jthread/1.cc: Likewise.
4735 1.1.1.20 mrg * testsuite/30_threads/jthread/2.cc: Likewise.
4736 1.1.1.20 mrg * testsuite/30_threads/stop_token/1.cc: Likewise.
4737 1.1.1.20 mrg * testsuite/30_threads/stop_token/2.cc: Likewise.
4738 1.1.1.20 mrg
4739 1.1.1.20 mrg * testsuite/21_strings/basic_string/erasure.cc: Check for
4740 1.1.1.20 mrg __cpp_lib_erase_if macro.
4741 1.1.1.20 mrg * testsuite/23_containers/deque/erasure.cc: Add header name to #error
4742 1.1.1.20 mrg messages.
4743 1.1.1.20 mrg * testsuite/23_containers/forward_list/erasure.cc: Likewise.
4744 1.1.1.20 mrg * testsuite/23_containers/list/erasure.cc: Likewise.
4745 1.1.1.20 mrg * testsuite/23_containers/map/erasure.cc: Likewise.
4746 1.1.1.20 mrg * testsuite/23_containers/set/erasure.cc: Likewise.
4747 1.1.1.20 mrg * testsuite/23_containers/unordered_map/erasure.cc: Likewise.
4748 1.1.1.20 mrg * testsuite/23_containers/unordered_set/erasure.cc: Likewise.
4749 1.1.1.20 mrg * testsuite/23_containers/vector/erasure.cc: Likewise.
4750 1.1.1.20 mrg
4751 1.1.1.20 mrg 2020-04-21 Jonathan Wakely <jwakely (a] redhat.com>
4752 1.1.1.20 mrg
4753 1.1.1.20 mrg * include/bits/stl_iterator.h (__normal_iterator): Use synth-three-way
4754 1.1.1.20 mrg to define operator<=>.
4755 1.1.1.20 mrg * testsuite/24_iterators/normal_iterator/cmp_c++20.cc: New test.
4756 1.1.1.20 mrg
4757 1.1.1.20 mrg * doc/Makefile.am (xml_sources_manual): Add missing XML files.
4758 1.1.1.20 mrg * doc/Makefile.in: Regenerate.
4759 1.1.1.20 mrg * doc/xml/manual/status_cxx1998.xml: Refer to "this section" instead
4760 1.1.1.20 mrg of "this page".
4761 1.1.1.20 mrg * doc/xml/manual/status_cxx2011.xml: Formatting and other corrections
4762 1.1.1.20 mrg to the C++11 status table.
4763 1.1.1.20 mrg * doc/xml/manual/status_cxx2014.xml: Replace list of C++14 feature
4764 1.1.1.20 mrg proposals with table matching contents of the C++14 standard.
4765 1.1.1.20 mrg * doc/xml/manual/status_cxx2017.xml: Add table matching contents of
4766 1.1.1.20 mrg the C++17 standard.
4767 1.1.1.20 mrg * doc/html/*: Regenerate.
4768 1.1.1.20 mrg
4769 1.1.1.20 mrg PR c++/94149
4770 1.1.1.20 mrg * include/std/type_traits (__is_nt_constructible_impl): Add partial
4771 1.1.1.20 mrg specializations for bounded arrays with non-empty initializers.
4772 1.1.1.20 mrg * testsuite/20_util/is_nothrow_constructible/value_c++20.cc: New test.
4773 1.1.1.20 mrg
4774 1.1.1.20 mrg 2020-04-20 Thomas Rodgers <trodgers (a] redhat.com>
4775 1.1.1.20 mrg
4776 1.1.1.20 mrg * testsuite/lib/libstdc++.exp: Add additional_flags=
4777 1.1.1.20 mrg -DTBB_SUPRESS_DEPRECATED_MESSAGES=1 to suppress warnings when
4778 1.1.1.20 mrg compiling with a newer Thread Building Blocks.
4779 1.1.1.20 mrg
4780 1.1.1.20 mrg 2020-04-20 Jonathan Wakely <jwakely (a] redhat.com>
4781 1.1.1.20 mrg
4782 1.1.1.20 mrg * testsuite/24_iterators/istreambuf_iterator/sentinel.cc: New test.
4783 1.1.1.20 mrg
4784 1.1.1.20 mrg * testsuite/20_util/is_constructible/51185.cc: Make test class a
4785 1.1.1.20 mrg non-aggregate so that the test verifies the same thing in all -std
4786 1.1.1.20 mrg modes.
4787 1.1.1.20 mrg * testsuite/20_util/is_constructible/value-2.cc: Adjust expected
4788 1.1.1.20 mrg results for some types when paren-init for aggregates is supported.
4789 1.1.1.20 mrg
4790 1.1.1.20 mrg * include/std/version (__cpp_lib_three_way_comparison): Update value.
4791 1.1.1.20 mrg * libsupc++/compare (__cpp_lib_three_way_comparison): Likewise.
4792 1.1.1.20 mrg (__detail::__synth3way): Add noexcept-specifier.
4793 1.1.1.20 mrg
4794 1.1.1.20 mrg * include/bits/stl_map.h (map): Define operator<=> and remove
4795 1.1.1.20 mrg operator< for C++20.
4796 1.1.1.20 mrg * include/bits/stl_multimap.h (multimap): Likewise.
4797 1.1.1.20 mrg * include/bits/stl_multiset.h (multiset): Likewise.
4798 1.1.1.20 mrg * include/bits/stl_set.h (set): Likewise.
4799 1.1.1.20 mrg * include/bits/stl_tree.h (_Rb_tree): Likewise.
4800 1.1.1.20 mrg (_Rb_tree_iterator, _Rb_tree_const_iterator): Remove redundant
4801 1.1.1.20 mrg operator!= for C++20.
4802 1.1.1.20 mrg * include/debug/map.h (__gnu_debug::map): Define operator<=> for C++20.
4803 1.1.1.20 mrg * include/debug/multimap.h (__gnu_debug::multimap): Likewise.
4804 1.1.1.20 mrg * include/debug/multiset.h (__gnu_debug::multiset): Likewise.
4805 1.1.1.20 mrg * include/debug/set.h (__gnu_debug::set): Likewise.
4806 1.1.1.20 mrg * testsuite/23_containers/map/operators/cmp_c++20.cc: New test.
4807 1.1.1.20 mrg * testsuite/23_containers/multimap/operators/cmp_c++20.cc: New test.
4808 1.1.1.20 mrg * testsuite/23_containers/multiset/operators/cmp_c++20.cc: New test.
4809 1.1.1.20 mrg * testsuite/23_containers/set/operators/cmp_c++20.cc: New test.
4810 1.1.1.20 mrg
4811 1.1.1.20 mrg 2020-04-20 Matthias Kretz <kretz (a] kde.org>
4812 1.1.1.20 mrg
4813 1.1.1.20 mrg * testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose.
4814 1.1.1.20 mrg
4815 1.1.1.20 mrg 2020-04-19 Jonathan Wakely <jwakely (a] redhat.com>
4816 1.1.1.20 mrg
4817 1.1.1.20 mrg * include/bits/stl_queue.h (queue): Define operator<=> for C++20.
4818 1.1.1.20 mrg * include/bits/stl_stack.h (stack): Likewise.
4819 1.1.1.20 mrg * testsuite/23_containers/queue/cmp_c++20.cc: New test.
4820 1.1.1.20 mrg * testsuite/23_containers/stack/cmp_c++20.cc: New test.
4821 1.1.1.20 mrg
4822 1.1.1.20 mrg * include/bits/unordered_map.h (unordered_map, unordered_multimap):
4823 1.1.1.20 mrg Remove redundant operator!= for C++20.
4824 1.1.1.20 mrg * include/bits/unordered_set.h (unordered_set, unordered_multiset):
4825 1.1.1.20 mrg Likewise.
4826 1.1.1.20 mrg * include/debug/unordered_map (unordered_map, unordered_multimap):
4827 1.1.1.20 mrg Likewise.
4828 1.1.1.20 mrg * include/debug/unordered_set (unordered_set, unordered_multiset):
4829 1.1.1.20 mrg Likewise.
4830 1.1.1.20 mrg
4831 1.1.1.20 mrg PR other/94629
4832 1.1.1.20 mrg * include/debug/formatter.h (_Error_formatter::_Parameter): Fix
4833 1.1.1.20 mrg redundant assignment in constructor.
4834 1.1.1.20 mrg
4835 1.1.1.20 mrg 2020-04-18 Jonathan Wakely <jwakely (a] redhat.com>
4836 1.1.1.20 mrg
4837 1.1.1.20 mrg * include/std/chrono (duration, time_point): Define operator<=> and
4838 1.1.1.20 mrg remove redundant operator!= for C++20.
4839 1.1.1.20 mrg * testsuite/20_util/duration/comparison_operators/three_way.cc: New
4840 1.1.1.20 mrg test.
4841 1.1.1.20 mrg * testsuite/20_util/time_point/comparison_operators/three_way.cc: New
4842 1.1.1.20 mrg test.
4843 1.1.1.20 mrg
4844 1.1.1.20 mrg * testsuite/util/native_type/native_priority_queue.hpp: Use
4845 1.1.1.20 mrg allocator_traits to rebind allocator.
4846 1.1.1.20 mrg
4847 1.1.1.20 mrg 2020-04-17 Jonathan Wakely <jwakely (a] redhat.com>
4848 1.1.1.20 mrg
4849 1.1.1.20 mrg * include/bits/forward_list.h (forward_list): Define operator<=> and
4850 1.1.1.20 mrg remove redundant comparison operators for C++20.
4851 1.1.1.20 mrg * include/bits/stl_bvector.h (vector<bool, Alloc>): Likewise.
4852 1.1.1.20 mrg * include/bits/stl_deque.h (deque): Likewise.
4853 1.1.1.20 mrg * include/bits/stl_iterator.h (__normal_iterator): Likewise.
4854 1.1.1.20 mrg * include/bits/stl_list.h (list): Likewise.
4855 1.1.1.20 mrg * include/bits/stl_vector.h (vector): Likewise.
4856 1.1.1.20 mrg * include/debug/deque (__gnu_debug::deque): Likewise.
4857 1.1.1.20 mrg * include/debug/forward_list (__gnu_debug::forward_list): Likewise.
4858 1.1.1.20 mrg * include/debug/list (__gnu_debug::list): Likewise.
4859 1.1.1.20 mrg * include/debug/safe_iterator.h (__gnu_debug::_Safe_iterator):
4860 1.1.1.20 mrg Likewise.
4861 1.1.1.20 mrg * include/debug/vector (__gnu_debug::vector): Likewise.
4862 1.1.1.20 mrg * include/ext/pointer.h (__gnu_cxx::_Pointer_adapter): Define
4863 1.1.1.20 mrg operator<=> for C++20.
4864 1.1.1.20 mrg * testsuite/23_containers/deque/operators/cmp_c++20.cc: New test.
4865 1.1.1.20 mrg * testsuite/23_containers/forward_list/cmp_c++20.cc: New test.
4866 1.1.1.20 mrg * testsuite/23_containers/list/cmp_c++20.cc: New test.
4867 1.1.1.20 mrg * testsuite/23_containers/vector/bool/cmp_c++20.cc: New test.
4868 1.1.1.20 mrg * testsuite/23_containers/vector/cmp_c++20.cc: New test.
4869 1.1.1.20 mrg
4870 1.1.1.20 mrg * include/bits/basic_string.h (basic_string): Define operator<=> and
4871 1.1.1.20 mrg remove redundant comparison operators for C++20.
4872 1.1.1.20 mrg * include/bits/char_traits.h (__gnu_cxx::char_traits, char_traits):
4873 1.1.1.20 mrg Add comparison_category members.
4874 1.1.1.20 mrg (__detail::__char_traits_cmp_cat): New helper to get comparison
4875 1.1.1.20 mrg category from char traits class.
4876 1.1.1.20 mrg * include/bits/regex.h (regex_traits::_RegexMask::operator!=): Do not
4877 1.1.1.20 mrg define for C++20.
4878 1.1.1.20 mrg (sub_match): Define operator<=> and remove redundant comparison
4879 1.1.1.20 mrg operators for C++20.
4880 1.1.1.20 mrg (match_results): Remove redundant operator!= for C++20.
4881 1.1.1.20 mrg * include/std/string_view (basic_string_view): Define operator<=> and
4882 1.1.1.20 mrg remove redundant comparison operators for C++20.
4883 1.1.1.20 mrg * testsuite/21_strings/basic_string/operators/char/cmp_c++20.cc: New
4884 1.1.1.20 mrg test.
4885 1.1.1.20 mrg * testsuite/21_strings/basic_string/operators/wchar_t/cmp_c++20.cc:
4886 1.1.1.20 mrg New test.
4887 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/
4888 1.1.1.20 mrg constexpr.cc: Initialize variable.
4889 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/
4890 1.1.1.20 mrg constexpr.cc: Likewise.
4891 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operators/char/2.cc: Add
4892 1.1.1.20 mrg dg-do directive and remove comments showing incorrect signatures.
4893 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
4894 1.1.1.20 mrg Likewise.
4895 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operators/char/cmp_c++20.cc:
4896 1.1.1.20 mrg New test.
4897 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operators/wchar_t/cmp_c++20.cc:
4898 1.1.1.20 mrg New test.
4899 1.1.1.20 mrg * testsuite/28_regex/sub_match/compare_c++20.cc: New test.
4900 1.1.1.20 mrg
4901 1.1.1.20 mrg 2020-04-16 Jonathan Wakely <jwakely (a] redhat.com>
4902 1.1.1.20 mrg
4903 1.1.1.20 mrg * testsuite/20_util/unsynchronized_pool_resource/allocate.cc: Remove
4904 1.1.1.20 mrg name of unused parameter.
4905 1.1.1.20 mrg
4906 1.1.1.20 mrg 2020-04-15 Jonathan Wakely <jwakely (a] redhat.com>
4907 1.1.1.20 mrg
4908 1.1.1.20 mrg * include/bits/fs_dir.h (file_status): Define operator== for C++20.
4909 1.1.1.20 mrg (directory_entry): Define operator<=> and remove redundant comparison
4910 1.1.1.20 mrg operators for C++20.
4911 1.1.1.20 mrg * include/bits/fs_fwd.h (space_info): Define operator== for C++20.
4912 1.1.1.20 mrg * include/bits/fs_path.h (path): Define operator<=> and remove
4913 1.1.1.20 mrg redundant comparison operators for C++20.
4914 1.1.1.20 mrg * testsuite/27_io/filesystem/path/compare/compare.cc: Fix comment.
4915 1.1.1.20 mrg * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
4916 1.1.1.20 mrg * testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
4917 1.1.1.20 mrg * testsuite/27_io/filesystem/path/compare/strings.cc: Likewise.
4918 1.1.1.20 mrg
4919 1.1.1.20 mrg * include/bits/allocator.h (operator!=): Do not define for C++20.
4920 1.1.1.20 mrg * include/bits/locale_classes.h (operator!=): Likewise.
4921 1.1.1.20 mrg * include/bits/std_function.h (operator==(nullptr_t, const function&))
4922 1.1.1.20 mrg (operator!=(const function&, nullptr_t))
4923 1.1.1.20 mrg (operator!=(nullptr_t, const function&)): Likewise.
4924 1.1.1.20 mrg * include/ext/bitmap_allocator.h (operator!=): Likewise.
4925 1.1.1.20 mrg * include/ext/debug_allocator.h (operator!=): Likewise.
4926 1.1.1.20 mrg * include/ext/extptr_allocator.h (operator!=): Likewise.
4927 1.1.1.20 mrg * include/ext/malloc_allocator.h (operator!=): Likewise.
4928 1.1.1.20 mrg * include/ext/mt_allocator.h (operator!=): Likewise.
4929 1.1.1.20 mrg * include/ext/new_allocator.h (operator!=): Likewise.
4930 1.1.1.20 mrg * include/ext/pool_allocator.h (operator!=): Likewise.
4931 1.1.1.20 mrg * include/ext/throw_allocator.h (operator!=): Likewise.
4932 1.1.1.20 mrg * include/std/bitset (bitset::operator!=): Likewise.
4933 1.1.1.20 mrg * include/std/memory_resource (operator!=): Likewise.
4934 1.1.1.20 mrg * include/std/scoped_allocator (operator!=): Likewise.
4935 1.1.1.20 mrg
4936 1.1.1.20 mrg * include/std/typeindex (operator<=>): Define for C++20.
4937 1.1.1.20 mrg * testsuite/20_util/typeindex/comparison_operators_c++20.cc: New test.
4938 1.1.1.20 mrg
4939 1.1.1.20 mrg 2020-04-14 Jonathan Wakely <jwakely (a] redhat.com>
4940 1.1.1.20 mrg
4941 1.1.1.20 mrg * libsupc++/compare (compare_three_way): Fix constraint so that
4942 1.1.1.20 mrg BUILTIN-PTR-THREE-WAY does not require three_way_comparable_with.
4943 1.1.1.20 mrg * testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc:
4944 1.1.1.20 mrg New test.
4945 1.1.1.20 mrg
4946 1.1.1.20 mrg PR libstdc++/94562
4947 1.1.1.20 mrg * include/bits/shared_ptr.h (operator<=>): Define for C++20.
4948 1.1.1.20 mrg * include/bits/shared_ptr_base.h (operator<=>): Likewise.
4949 1.1.1.20 mrg * include/bits/unique_ptr.h (operator<=>): Add inline specifier.
4950 1.1.1.20 mrg * testsuite/20_util/shared_ptr/comparison/cmp_c++20.cc: New test.
4951 1.1.1.20 mrg * testsuite/20_util/shared_ptr/comparison/less.cc: Do not expect
4952 1.1.1.20 mrg std::less<A*> to be used when comparing std::shared_ptr<A> objects in
4953 1.1.1.20 mrg C++20.
4954 1.1.1.20 mrg
4955 1.1.1.20 mrg PR libstdc++/94565
4956 1.1.1.20 mrg * libsupc++/compare (__unspec): Add noexcept-specifier to constructor.
4957 1.1.1.20 mrg * testsuite/18_support/comparisons/categories/94565.cc: New test.
4958 1.1.1.20 mrg
4959 1.1.1.20 mrg 2020-04-13 Iain Sandoe <iain (a] sandoe.co.uk>
4960 1.1.1.20 mrg
4961 1.1.1.20 mrg * include/std/coroutine: Update coroutines builtin define,
4962 1.1.1.20 mrg per n4861.
4963 1.1.1.20 mrg
4964 1.1.1.20 mrg 2020-04-09 Jonathan Wakely <jwakely (a] redhat.com>
4965 1.1.1.20 mrg
4966 1.1.1.20 mrg * libsupc++/compare (compare_three_way): Fix noexcept-specifier.
4967 1.1.1.20 mrg (strong_order, weak_order, partial_order): Replace uses of <=> with
4968 1.1.1.20 mrg compare_three_way function object (LWG 3324).
4969 1.1.1.20 mrg * testsuite/18_support/comparisons/algorithms/partial_order.cc: Add
4970 1.1.1.20 mrg equality operator so that X satisfies three_way_comparable.
4971 1.1.1.20 mrg * testsuite/18_support/comparisons/algorithms/strong_order.cc:
4972 1.1.1.20 mrg Likewise.
4973 1.1.1.20 mrg * testsuite/18_support/comparisons/algorithms/weak_order.cc: Likewise.
4974 1.1.1.20 mrg
4975 1.1.1.20 mrg * include/bits/unique_ptr.h (operator<=>): Define for C++20.
4976 1.1.1.20 mrg * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line.
4977 1.1.1.20 mrg * testsuite/20_util/default_delete/void_neg.cc: Likewise.
4978 1.1.1.20 mrg * testsuite/20_util/unique_ptr/comparison/compare.cc: New test.
4979 1.1.1.20 mrg * testsuite/20_util/unique_ptr/comparison/compare_c++20.cc: New test.
4980 1.1.1.20 mrg
4981 1.1.1.20 mrg 2020-04-08 Jonathan Wakely <jwakely (a] redhat.com>
4982 1.1.1.20 mrg
4983 1.1.1.20 mrg * include/bits/slice_array.h (operator==(const slice&, const slice&)):
4984 1.1.1.20 mrg Define for C++20.
4985 1.1.1.20 mrg * include/std/complex (operator==(const T&, const complex<T>&))
4986 1.1.1.20 mrg (operator!=(const complex<T>&, const complex<T>&))
4987 1.1.1.20 mrg (operator!=(const complex<T>&, const T&))
4988 1.1.1.20 mrg (operator!=(const T&, const complex<T>&)): Do not declare for C++20.
4989 1.1.1.20 mrg * testsuite/26_numerics/slice/compare.cc: New test.
4990 1.1.1.20 mrg
4991 1.1.1.20 mrg * include/std/charconv (to_chars_result, from_chars_result): Add
4992 1.1.1.20 mrg defaulted equality comparisons for C++20.
4993 1.1.1.20 mrg * testsuite/20_util/from_chars/compare.cc: New test.
4994 1.1.1.20 mrg * testsuite/20_util/to_chars/compare.cc: New test.
4995 1.1.1.20 mrg
4996 1.1.1.20 mrg 2020-04-07 Jonathan Wakely <jwakely (a] redhat.com>
4997 1.1.1.20 mrg
4998 1.1.1.20 mrg PR libstdc++/94520
4999 1.1.1.20 mrg * include/std/charconv (__integer_to_chars_result_type)
5000 1.1.1.20 mrg (__integer_from_chars_result_type): Use __or_ instead of __or_v_ to
5001 1.1.1.20 mrg allow use in C++14.
5002 1.1.1.20 mrg * testsuite/20_util/from_chars/1.cc: Run test as C++14 and replace
5003 1.1.1.20 mrg use of std::string_view with std::string.
5004 1.1.1.20 mrg * testsuite/20_util/from_chars/2.cc: Likewise.
5005 1.1.1.20 mrg * testsuite/20_util/to_chars/1.cc: Likewise.
5006 1.1.1.20 mrg * testsuite/20_util/to_chars/2.cc: Likewise.
5007 1.1.1.20 mrg
5008 1.1.1.20 mrg 2020-04-06 Jonathan Wakely <jwakely (a] redhat.com>
5009 1.1.1.20 mrg
5010 1.1.1.20 mrg PR libstdc++/94498
5011 1.1.1.20 mrg * include/bits/char_traits.h (__gnu_cxx::char_traits::move): Make it
5012 1.1.1.20 mrg usable in constant expressions for C++20.
5013 1.1.1.20 mrg (__gnu_cxx::char_traits::copy, __gnu_cxx::char_traits::assign): Add
5014 1.1.1.20 mrg _GLIBCXX20_CONSTEXPR.
5015 1.1.1.20 mrg (std::char_traits<char>, std::char_traits<wchar_t>)
5016 1.1.1.20 mrg (std::char_traits<char8_t>): Make move, copy and assign usable in
5017 1.1.1.20 mrg constant expressions for C++20.
5018 1.1.1.20 mrg (std::char_traits<char16_t>, std::char_traits<char32_t>): Make move
5019 1.1.1.20 mrg and copy usable in constant expressions for C++20.
5020 1.1.1.20 mrg * include/std/string_view (basic_string_view::copy): Add
5021 1.1.1.20 mrg _GLIBCXX20_CONSTEXPR.
5022 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/
5023 1.1.1.20 mrg constexpr.cc: New test.
5024 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/
5025 1.1.1.20 mrg constexpr.cc: New test.
5026 1.1.1.20 mrg
5027 1.1.1.20 mrg 2020-04-05 Gerald Pfeifer <gerald (a] pfeifer.com>
5028 1.1.1.20 mrg
5029 1.1.1.20 mrg * doc/xml/manual/appendix_contributing.xml: Refer to Git
5030 1.1.1.20 mrg documentation instead of Subversion. Switch to https.
5031 1.1.1.20 mrg * doc/html/manual/appendix_contributing.html: Regenerate.
5032 1.1.1.20 mrg
5033 1.1.1.20 mrg 2020-04-03 Jonathan Wakely <jwakely (a] redhat.com>
5034 1.1.1.20 mrg
5035 1.1.1.20 mrg PR libstdc++/93960
5036 1.1.1.20 mrg * include/bits/ptr_traits.h (__to_address): Add special case for debug
5037 1.1.1.20 mrg iterators, to avoid dereferenceable check.
5038 1.1.1.20 mrg * testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line number.
5039 1.1.1.20 mrg * testsuite/20_util/to_address/debug.cc: New test.
5040 1.1.1.20 mrg
5041 1.1.1.20 mrg 2020-04-01 Andrea Corallo <andrea.corallo (a] arm.com>
5042 1.1.1.20 mrg
5043 1.1.1.20 mrg * testsuite/experimental/net/execution_context/use_service.cc:
5044 1.1.1.20 mrg Require pthread and gthreads.
5045 1.1.1.20 mrg
5046 1.1.1.20 mrg 2020-04-01 Gerald Pfeifer <gerald (a] pfeifer.com>
5047 1.1.1.20 mrg
5048 1.1.1.20 mrg * doc/xml/manual/appendix_free.xml: Move "free books" list from
5049 1.1.1.20 mrg fsf.org to gnu.org.
5050 1.1.1.20 mrg * doc/html/manual/appendix_free.html: Regenerate.
5051 1.1.1.20 mrg
5052 1.1.1.20 mrg 2020-03-31 Ville Voutilainen <ville.voutilainen (a] gmail.com>
5053 1.1.1.20 mrg
5054 1.1.1.20 mrg Library-side tests for parenthesized aggregate init
5055 1.1.1.20 mrg
5056 1.1.1.20 mrg PR c++/92878
5057 1.1.1.20 mrg PR c++/92947
5058 1.1.1.20 mrg
5059 1.1.1.20 mrg * testsuite/20_util/allocator_traits/members/92878_92947.cc: New.
5060 1.1.1.20 mrg * testsuite/20_util/any/assign/92878_92947.cc: Likewise.
5061 1.1.1.20 mrg * testsuite/20_util/any/cons/92878_92947.cc: Likewise.
5062 1.1.1.20 mrg * testsuite/20_util/is_constructible/92878_92947.cc: Likewise.
5063 1.1.1.20 mrg * testsuite/20_util/optional/assignment/92878_92947.cc: Likewise.
5064 1.1.1.20 mrg * testsuite/20_util/optional/cons/92878_92947.cc: Likewise.
5065 1.1.1.20 mrg * testsuite/20_util/pair/cons/92878_92947.cc: Likewise.
5066 1.1.1.20 mrg * testsuite/20_util/shared_ptr/creation/92878_92947.cc: Likewise.
5067 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/construct_at/92878_92947.cc:
5068 1.1.1.20 mrg Likewise.
5069 1.1.1.20 mrg * testsuite/20_util/unique_ptr/creation/92878_92947.cc: Likewise.
5070 1.1.1.20 mrg * testsuite/20_util/uses_allocator/92878_92947.cc: Likewise.
5071 1.1.1.20 mrg * testsuite/20_util/variant/92878_92947.cc: Likewise.
5072 1.1.1.20 mrg * testsuite/23_containers/deque/modifiers/emplace/92878_92947.cc:
5073 1.1.1.20 mrg Likewise.
5074 1.1.1.20 mrg * testsuite/23_containers/forward_list/modifiers/92878_92947.cc:
5075 1.1.1.20 mrg Likewise.
5076 1.1.1.20 mrg * testsuite/23_containers/list/modifiers/emplace/92878_92947.cc:
5077 1.1.1.20 mrg Likewise.
5078 1.1.1.20 mrg * testsuite/23_containers/map/modifiers/emplace/92878_92947.cc:
5079 1.1.1.20 mrg Likewise.
5080 1.1.1.20 mrg * testsuite/23_containers/multimap/modifiers/emplace/92878_92947.cc:
5081 1.1.1.20 mrg Likewise.
5082 1.1.1.20 mrg * testsuite/23_containers/multiset/modifiers/emplace/92878_92947.cc:
5083 1.1.1.20 mrg Likewise.
5084 1.1.1.20 mrg * testsuite/23_containers/priority_queue/92878_92947.cc: Likewise.
5085 1.1.1.20 mrg * testsuite/23_containers/queue/92878_92947.cc: Likewise.
5086 1.1.1.20 mrg * testsuite/23_containers/set/modifiers/emplace/92878_92947.cc:
5087 1.1.1.20 mrg Likewise.
5088 1.1.1.20 mrg * testsuite/23_containers/stack/92878_92947.cc: Likewise.
5089 1.1.1.20 mrg * testsuite/23_containers/unordered_map/modifiers/92878_92947.cc:
5090 1.1.1.20 mrg Likewise.
5091 1.1.1.20 mrg * testsuite/23_containers/unordered_multimap/modifiers/92878_92947.cc:
5092 1.1.1.20 mrg Likewise.
5093 1.1.1.20 mrg * testsuite/23_containers/unordered_multiset/modifiers/92878_92947.cc:
5094 1.1.1.20 mrg Likewise.
5095 1.1.1.20 mrg * testsuite/23_containers/unordered_set/modifiers/92878_92947.cc:
5096 1.1.1.20 mrg Likewise.
5097 1.1.1.20 mrg * testsuite/23_containers/vector/modifiers/emplace/92878_92947.cc:
5098 1.1.1.20 mrg Likewise.
5099 1.1.1.20 mrg
5100 1.1.1.20 mrg 2020-03-28 Jonathan Wakely <jwakely (a] redhat.com>
5101 1.1.1.20 mrg
5102 1.1.1.20 mrg * testsuite/20_util/is_constructible/value-2.cc: Fix test to account
5103 1.1.1.20 mrg for changes due to parenthesized aggregate-initialization in C++20.
5104 1.1.1.20 mrg * testsuite/20_util/time_point/cons/81468.cc: Fix test to not clash
5105 1.1.1.20 mrg with std::chrono::sys_time in C++20.
5106 1.1.1.20 mrg
5107 1.1.1.20 mrg * include/bits/stl_iterator.h (reverse_iterator): Use requires-clause
5108 1.1.1.20 mrg to constrain C++20 versions of comparison operators. Fix backwards
5109 1.1.1.20 mrg logic of relational operators.
5110 1.1.1.20 mrg (move_iterator): Use requires-clause to constrain comparison operators
5111 1.1.1.20 mrg in C++20. Do not declare non-standard same-type overloads for C++20.
5112 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/rel_ops_c++20.cc: Check result
5113 1.1.1.20 mrg of comparisons and check using greedy_ops type.
5114 1.1.1.20 mrg * testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc: Likewise.
5115 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/greedy_ops.cc: Remove redundant
5116 1.1.1.20 mrg main function from compile-only test.
5117 1.1.1.20 mrg * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: Likewise.
5118 1.1.1.20 mrg
5119 1.1.1.20 mrg 2020-03-27 Jonathan Wakely <jwakely (a] redhat.com>
5120 1.1.1.20 mrg
5121 1.1.1.20 mrg * include/bits/range_cmp.h (__cpp_lib_ranges): Define.
5122 1.1.1.20 mrg * include/bits/stl_iterator.h: Check value of __cpp_concepts so that
5123 1.1.1.20 mrg C++20 concepts are required.
5124 1.1.1.20 mrg * include/bits/stl_iterator_base_types.h: Likewise.
5125 1.1.1.20 mrg * include/std/concepts: Likewise.
5126 1.1.1.20 mrg * include/std/version: Likewise.
5127 1.1.1.20 mrg * testsuite/std/ranges/headers/ranges/synopsis.cc: Check feature test
5128 1.1.1.20 mrg macro.
5129 1.1.1.20 mrg
5130 1.1.1.20 mrg * include/bits/stl_iterator.h (reverse_iterator::iterator_concept)
5131 1.1.1.20 mrg (reverse_iterator::iterator_category): Define for C++20.
5132 1.1.1.20 mrg (reverse_iterator): Define comparison operators correctly for C++20.
5133 1.1.1.20 mrg (__normal_iterator): Add constraints to comparison operators for C++20.
5134 1.1.1.20 mrg (move_iterator::operator++(int)) [__cpp_lib_concepts]: Define new
5135 1.1.1.20 mrg overload for input iterators.
5136 1.1.1.20 mrg (move_iterator): Add constraints to comparison operators for C++20.
5137 1.1.1.20 mrg Define operator<=> for C++20.
5138 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/input_iterator.cc: New test.
5139 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/move_only.cc: New test.
5140 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/rel_ops_c++20.cc: New test.
5141 1.1.1.20 mrg * testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc: New test.
5142 1.1.1.20 mrg
5143 1.1.1.20 mrg * include/bits/iterator_concepts.h (__detail::__decay_copy)
5144 1.1.1.20 mrg (__detail::__member_begin, __detail::__adl_begin): Move here from
5145 1.1.1.20 mrg <bits/range_access.h>.
5146 1.1.1.20 mrg (__detail::__ranges_begin, __detail::__range_iter_t): Define.
5147 1.1.1.20 mrg * bits/range_access.h (__cust_access::__decay_copy)
5148 1.1.1.20 mrg (__cust_access::__member_begin, __cust_access::__adl_begin): Move to
5149 1.1.1.20 mrg <bits/iterator_concepts.h>.
5150 1.1.1.20 mrg (ranges::iterator_t): Use __detail::__range_iter_t.
5151 1.1.1.20 mrg * include/bits/stl_iterator.h (back_insert_iterator): Simplify
5152 1.1.1.20 mrg conditional compilation. Add _GLIBCXX20_CONSTEXPR to all members.
5153 1.1.1.20 mrg (front_insert_iterator): Likewise.
5154 1.1.1.20 mrg (insert_iterator): Implement changes from P0896R4 for C++20.
5155 1.1.1.20 mrg * testsuite/24_iterators/back_insert_iterator/constexpr.cc: New test.
5156 1.1.1.20 mrg * testsuite/24_iterators/front_insert_iterator/constexpr.cc: New test.
5157 1.1.1.20 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc: Adjust
5158 1.1.1.20 mrg for inclusion in synopsis_c++20.cc which expects different signatures
5159 1.1.1.20 mrg for some function templates.
5160 1.1.1.20 mrg * testsuite/24_iterators/insert_iterator/constexpr.cc: New test.
5161 1.1.1.20 mrg
5162 1.1.1.20 mrg * include/std/type_traits (__is_array_convertible): Move definition
5163 1.1.1.20 mrg to immediately after is_convertible.
5164 1.1.1.20 mrg
5165 1.1.1.20 mrg 2020-03-26 Jonathan Wakely <jwakely (a] redhat.com>
5166 1.1.1.20 mrg
5167 1.1.1.20 mrg * include/std/chrono (chrono::days, chrono::weeks, chrono::years)
5168 1.1.1.20 mrg (chrono::months, chrono::sys_days, chrono::local_t)
5169 1.1.1.20 mrg (chrono::local_time, chrono::local_seconds, chrono::local_days):
5170 1.1.1.20 mrg Define for C++20.
5171 1.1.1.20 mrg (chrono::time_point): Add missing static assert.
5172 1.1.1.20 mrg * testsuite/20_util/time_point/requirements/duration_neg.cc: New test.
5173 1.1.1.20 mrg * testsuite/std/time/clock/file/overview.cc: New test.
5174 1.1.1.20 mrg * testsuite/std/time/clock/file/members.cc: New test.
5175 1.1.1.20 mrg * testsuite/std/time/syn_c++20.cc: New test.
5176 1.1.1.20 mrg
5177 1.1.1.20 mrg 2020-03-25 Mike Crowe <mac (a] mcrowe.com>
5178 1.1.1.20 mrg
5179 1.1.1.20 mrg * testsuite/30_threads/shared_timed_mutex/try_lock_until/1.cc: New
5180 1.1.1.20 mrg test.
5181 1.1.1.20 mrg * testsuite/30_threads/shared_timed_mutex/try_lock_until/2.cc: New
5182 1.1.1.20 mrg test.
5183 1.1.1.20 mrg
5184 1.1.1.20 mrg 2020-03-25 Jonathan Wakely <jwakely (a] redhat.com>
5185 1.1.1.19 mrg
5186 1.1.1.20 mrg * include/bits/fs_fwd.h (filesystem::__file_clock): Move to ...
5187 1.1.1.20 mrg * include/std/chrono (filesystem::__file_clock): Here.
5188 1.1.1.20 mrg (filesystem::__file_clock::from_sys, filesystem::__file_clock::to_sys):
5189 1.1.1.20 mrg Define public member functions for C++20.
5190 1.1.1.20 mrg (is_clock, is_clock_v): Define traits for C++20.
5191 1.1.1.20 mrg * include/std/condition_variable (condition_variable::wait_until): Add
5192 1.1.1.20 mrg check for valid clock.
5193 1.1.1.20 mrg * include/std/future (_State_baseV2::wait_until): Likewise.
5194 1.1.1.20 mrg * include/std/mutex (__timed_mutex_impl::_M_try_lock_until): Likewise.
5195 1.1.1.20 mrg * include/std/shared_mutex (shared_timed_mutex::try_lock_shared_until):
5196 1.1.1.20 mrg Likewise.
5197 1.1.1.20 mrg * include/std/thread (this_thread::sleep_until): Likewise.
5198 1.1.1.20 mrg * testsuite/30_threads/condition_variable/members/2.cc: Qualify
5199 1.1.1.20 mrg slow_clock with new namespace.
5200 1.1.1.20 mrg * testsuite/30_threads/condition_variable/members/clock_neg.cc: New
5201 1.1.1.20 mrg test.
5202 1.1.1.20 mrg * testsuite/30_threads/condition_variable_any/members/clock_neg.cc:
5203 1.1.1.20 mrg New test.
5204 1.1.1.20 mrg * testsuite/30_threads/future/members/clock_neg.cc: New test.
5205 1.1.1.20 mrg * testsuite/30_threads/recursive_timed_mutex/try_lock_until/3.cc:
5206 1.1.1.20 mrg Qualify slow_clock with new namespace.
5207 1.1.1.20 mrg * testsuite/30_threads/recursive_timed_mutex/try_lock_until/
5208 1.1.1.20 mrg clock_neg.cc: New test.
5209 1.1.1.20 mrg * testsuite/30_threads/shared_future/members/clock_neg.cc: New
5210 1.1.1.20 mrg test.
5211 1.1.1.20 mrg * testsuite/30_threads/shared_lock/locking/clock_neg.cc: New test.
5212 1.1.1.20 mrg * testsuite/30_threads/shared_timed_mutex/try_lock_until/clock_neg.cc:
5213 1.1.1.20 mrg New test.
5214 1.1.1.20 mrg * testsuite/30_threads/timed_mutex/try_lock_until/3.cc: Qualify
5215 1.1.1.20 mrg slow_clock with new namespace.
5216 1.1.1.20 mrg * testsuite/30_threads/timed_mutex/try_lock_until/4.cc: Likewise.
5217 1.1.1.20 mrg * testsuite/30_threads/timed_mutex/try_lock_until/clock_neg.cc: New
5218 1.1.1.20 mrg test.
5219 1.1.1.20 mrg * testsuite/30_threads/unique_lock/locking/clock_neg.cc: New test.
5220 1.1.1.20 mrg * testsuite/std/time/traits/is_clock.cc: New test.
5221 1.1.1.20 mrg * testsuite/util/slow_clock.h (slow_clock): Move to __gnu_test
5222 1.1.1.20 mrg namespace.
5223 1.1.1.20 mrg
5224 1.1.1.20 mrg 2020-03-21 Jonathan Wakely <jwakely (a] redhat.com>
5225 1.1.1.20 mrg
5226 1.1.1.20 mrg PR libstdc++/93245
5227 1.1.1.20 mrg * include/experimental/bits/fs_path.h (path::generic_string<C,T,A>()):
5228 1.1.1.20 mrg * testsuite/experimental/filesystem/path/generic/generic_string.cc:
5229 1.1.1.20 mrg Improve test coverage.
5230 1.1.1.20 mrg
5231 1.1.1.20 mrg PR libstdc++/94242
5232 1.1.1.20 mrg * include/bits/fs_path.h (path::_S_str_convert): Replace first
5233 1.1.1.20 mrg parameter with basic_string_view so that strings with different
5234 1.1.1.20 mrg allocators can be accepted.
5235 1.1.1.20 mrg (path::generic_string<C,T,A>()): Use basic_string object that uses the
5236 1.1.1.20 mrg right allocator type.
5237 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/94242.cc: New test.
5238 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc: Improve
5239 1.1.1.20 mrg test coverage.
5240 1.1.1.20 mrg
5241 1.1.1.20 mrg 2020-03-18 Jonathan Wakely <jwakely (a] redhat.com>
5242 1.1.1.20 mrg
5243 1.1.1.20 mrg PR libstdc++/94033
5244 1.1.1.20 mrg * include/std/type_traits (__is_nt_default_constructible_atom): Remove.
5245 1.1.1.20 mrg (__is_nt_default_constructible_impl): Remove.
5246 1.1.1.20 mrg (__is_nothrow_default_constructible_impl): Remove.
5247 1.1.1.20 mrg (__is_nt_constructible_impl): Add bool template parameter. Adjust
5248 1.1.1.20 mrg partial specializations.
5249 1.1.1.20 mrg (__is_nothrow_constructible_impl): Replace class template with alias
5250 1.1.1.20 mrg template.
5251 1.1.1.20 mrg (is_nothrow_default_constructible): Derive from alias template
5252 1.1.1.20 mrg __is_nothrow_constructible_impl instead of
5253 1.1.1.20 mrg __is_nothrow_default_constructible_impl.
5254 1.1.1.20 mrg * testsuite/20_util/is_nothrow_constructible/94003.cc: New test.
5255 1.1.1.20 mrg
5256 1.1.1.20 mrg * include/std/stop_token (stop_token::_Stop_state_ref): Define
5257 1.1.1.20 mrg comparison operators explicitly if the compiler won't synthesize them.
5258 1.1.1.20 mrg
5259 1.1.1.20 mrg * include/bits/stl_algobase.h (__lexicographical_compare_aux): Check
5260 1.1.1.20 mrg __cpp_lib_concepts before using iter_reference_t.
5261 1.1.1.20 mrg * include/bits/stream_iterator.h (istream_iterator): Check
5262 1.1.1.20 mrg __cpp_lib_concepts before using default_sentinel_t.
5263 1.1.1.20 mrg * include/bits/streambuf_iterator.h (istreambuf_iterator): Likewise.
5264 1.1.1.20 mrg
5265 1.1.1.20 mrg PR libstdc++/94203
5266 1.1.1.20 mrg * include/experimental/executor (executor::executor(Executor)): Call
5267 1.1.1.20 mrg make_shared directly instead of _M_create. Create _Tgt1 object.
5268 1.1.1.20 mrg (executor::executor(allocator_arg_t, const ProtoAlloc&, Executor)):
5269 1.1.1.20 mrg Call allocate_shared directly instead of _M_create. Create _Tgt2
5270 1.1.1.20 mrg object.
5271 1.1.1.20 mrg (executor::target_type): Add cast needed for new _Tgt interface.
5272 1.1.1.20 mrg (executor::target): Define when RTTI is disabled. Use _Tgt::_M_func.
5273 1.1.1.20 mrg (executor::_Tgt): Define the same interface whether RTTI is enabled or
5274 1.1.1.20 mrg not.
5275 1.1.1.20 mrg (executor::_Tgt::target_type, executor::_Tgt::target): Do not use
5276 1.1.1.20 mrg std::type_info in the interface.
5277 1.1.1.20 mrg (executor::_Tgt::_M_func): Add data member.
5278 1.1.1.20 mrg (executor::_TgtImpl): Replace with _Tgt1 and _Tgt2 class templates.
5279 1.1.1.20 mrg (executor::_Tgt1::_S_func): Define function to access target without
5280 1.1.1.20 mrg depending on RTTI.
5281 1.1.1.20 mrg (executor::_M_create): Remove.
5282 1.1.1.20 mrg (operator==, operator!=): Simplify comparisons for executor.
5283 1.1.1.20 mrg * include/experimental/socket (is_error_code_enum<socket_errc>):
5284 1.1.1.20 mrg Define specialization before use.
5285 1.1.1.20 mrg * testsuite/experimental/net/executor/1.cc: New test.
5286 1.1.1.20 mrg
5287 1.1.1.20 mrg 2020-03-16 Jonathan Wakely <jwakely (a] redhat.com>
5288 1.1.1.20 mrg
5289 1.1.1.20 mrg PR libstdc++/94199
5290 1.1.1.20 mrg * include/experimental/executor (service_already_exists): Add default
5291 1.1.1.20 mrg constructor. Declare make_service to be a friend.
5292 1.1.1.20 mrg * testsuite/experimental/net/execution_context/make_service.cc: New
5293 1.1.1.20 mrg test.
5294 1.1.1.19 mrg
5295 1.1.1.20 mrg 2020-03-12 Jonathan Wakely <jwakely (a] redhat.com>
5296 1.1.1.19 mrg
5297 1.1.1.20 mrg * testsuite/tr1/8_c_compatibility/cstdlib/functions.cc: Do not pass
5298 1.1.1.20 mrg a null pointer to functions with nonnull(1) attribute.
5299 1.1.1.20 mrg
5300 1.1.1.20 mrg 2020-03-11 Patrick Palka <ppalka (a] redhat.com>
5301 1.1.1.20 mrg
5302 1.1.1.20 mrg * include/std/ranges (split_view::_OuterIter::_OuterIter): Typo fix,
5303 1.1.1.20 mrg 'address' -> 'std::__addressof'.
5304 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Test taking the split_view of
5305 1.1.1.20 mrg a non-forward input_range.
5306 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (output_iterator_wrapper): Make
5307 1.1.1.20 mrg default constructor protected instead of deleted, like with
5308 1.1.1.20 mrg input_iterator_wrapper.
5309 1.1.1.20 mrg (test_range::iterator): Add comment explaining that this type is used
5310 1.1.1.20 mrg only when the underlying wrapper is input_iterator_wrapper or
5311 1.1.1.20 mrg output_iterator_wrapper. Remove delegating defaulted constructor so
5312 1.1.1.20 mrg that the inherited default constructor is used instead.
5313 1.1.1.20 mrg
5314 1.1.1.20 mrg LWG 3286 ranges::size is not required to be valid after a call to
5315 1.1.1.20 mrg ranges::begin on an input range
5316 1.1.1.20 mrg * include/std/ranges (subrange::subrange): Split single-argument
5317 1.1.1.20 mrg constructor into two, one constrained by _S_store_size and another by
5318 1.1.1.20 mrg !_S_store_size.
5319 1.1.1.20 mrg (take_view::begin): Call size() before calling ranges::begin(_M_base).
5320 1.1.1.20 mrg * testsuite/std/ranges/adaptors/lwg3286.cc: New test.
5321 1.1.1.20 mrg * testsuite/std/ranges/subrange/lwg3286.cc: New test.
5322 1.1.1.20 mrg
5323 1.1.1.20 mrg 2020-03-10 Jonathan Wakely <jwakely (a] redhat.com>
5324 1.1.1.20 mrg
5325 1.1.1.20 mrg * include/std/ranges (split_view::_OuterIter::__at_end): Use __current
5326 1.1.1.20 mrg instead of _M_current.
5327 1.1.1.20 mrg (split_view::_OuterIter::operator++): Likewise.
5328 1.1.1.20 mrg
5329 1.1.1.20 mrg * include/std/ranges (transform_view::_Iterator::__iter_move): Remove.
5330 1.1.1.20 mrg (transform_view::_Iterator::operator*): Add noexcept-specifier.
5331 1.1.1.20 mrg (transform_view::_Iterator::iter_move): Inline __iter_move body here.
5332 1.1.1.20 mrg (split_view::_OuterIter::__current): Add noexcept.
5333 1.1.1.20 mrg (split_view::_InnerIter::__iter_swap): Remove.
5334 1.1.1.20 mrg (split_view::_InnerIter::__iter_move): Remove.
5335 1.1.1.20 mrg (split_view::_InnerIter::_M_i_current): New accessors.
5336 1.1.1.20 mrg (split_view::_InnerIter::__at_end): Use _M_i_current().
5337 1.1.1.20 mrg (split_view::_InnerIter::operator*): Likewise.
5338 1.1.1.20 mrg (split_view::_InnerIter::operator++): Likewise.
5339 1.1.1.20 mrg (iter_move(const _InnerIter&)): Likewise.
5340 1.1.1.20 mrg (iter_swap(const _InnerIter&, const _InnerIter&)): Likewise.
5341 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Check noexcept-specifier
5342 1.1.1.20 mrg for iter_move and iter_swap on split_view's inner iterator.
5343 1.1.1.20 mrg
5344 1.1.1.20 mrg PR c++/94117
5345 1.1.1.20 mrg * include/std/ranges (ranges::transform_view::_Iterator::iter_move):
5346 1.1.1.20 mrg Change expression in noexcept-specifier to match function body.
5347 1.1.1.20 mrg
5348 1.1.1.20 mrg * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Add
5349 1.1.1.20 mrg comment explaining multiple dg-do directives.
5350 1.1.1.20 mrg * testsuite/24_iterators/ostream_iterator/1.cc: Fix do-do directive
5351 1.1.1.20 mrg so test is run as well as compiled.
5352 1.1.1.20 mrg
5353 1.1.1.20 mrg 2020-03-09 Jonathan Wakely <jwakely (a] redhat.com>
5354 1.1.1.20 mrg
5355 1.1.1.20 mrg PR libstdc++/94063
5356 1.1.1.20 mrg * src/c++17/fs_path.cc (path::operator+=(const path&)): Add kluge to
5357 1.1.1.20 mrg handle concatenations that change the type of the first component.
5358 1.1.1.20 mrg (path::operator+=(basic_string_view<value_type>)): Likewise.
5359 1.1.1.20 mrg * testsuite/27_io/filesystem/path/concat/94063.cc: New test.
5360 1.1.1.20 mrg
5361 1.1.1.20 mrg 2020-03-06 Patrick Palka <ppalka (a] redhat.com>
5362 1.1.1.20 mrg
5363 1.1.1.20 mrg * include/std/ranges (join_view::_Sentinel<_Const>): Befriend
5364 1.1.1.20 mrg join_view::_Sentinel<!_Const>.
5365 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join.cc: Augment test.
5366 1.1.1.20 mrg
5367 1.1.1.20 mrg PR libstdc++/93978
5368 1.1.1.20 mrg * include/bits/range_access.h (__cust_access::_Empty::operator()):
5369 1.1.1.20 mrg Declare return type to be bool instead of auto.
5370 1.1.1.20 mrg * testsuite/std/ranges/adaptors/93978.cc: New test.
5371 1.1.1.20 mrg
5372 1.1.1.20 mrg 2020-03-06 Jonathan Wakely <jwakely (a] redhat.com>
5373 1.1.1.20 mrg
5374 1.1.1.20 mrg PR libstdc++/94069
5375 1.1.1.20 mrg * include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER]
5376 1.1.1.20 mrg (__shared_mutex_pthread::__shared_mutex_pthread()): Remove incorrect
5377 1.1.1.20 mrg second argument to __glibcxx_rwlock_init.
5378 1.1.1.20 mrg * testsuite/30_threads/shared_timed_mutex/94069.cc: New test.
5379 1.1.1.20 mrg
5380 1.1.1.20 mrg PR libstdc++/93244
5381 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc: Adjust
5382 1.1.1.20 mrg test to not fail due to PR 94063.
5383 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
5384 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
5385 1.1.1.20 mrg
5386 1.1.1.20 mrg 2020-03-06 Andreas Krebbel <krebbel (a] linux.ibm.com>
5387 1.1.1.20 mrg
5388 1.1.1.20 mrg * src/c++11/system_error.cc: Omit the ENOTSUP case statement if it
5389 1.1.1.20 mrg would match ENOSYS.
5390 1.1.1.20 mrg
5391 1.1.1.20 mrg 2020-03-05 Jonathan Wakely <jwakely (a] redhat.com>
5392 1.1.1.19 mrg
5393 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/all.cc: Mark unused variable.
5394 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/copy.cc: Fix typo.
5395 1.1.1.20 mrg * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
5396 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/file_size.cc: Use correct type
5397 1.1.1.20 mrg for return value, and in comparison.
5398 1.1.1.20 mrg * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
5399 1.1.1.20 mrg
5400 1.1.1.20 mrg PR libstdc++/94051
5401 1.1.1.20 mrg * include/std/string_view: Include <bits/ostream_insert.h>.
5402 1.1.1.20 mrg * testsuite/21_strings/basic_string_view/inserters/94051.cc: New test.
5403 1.1.1.20 mrg
5404 1.1.1.20 mrg 2020-03-04 Jonathan Wakely <jwakely (a] redhat.com>
5405 1.1.1.20 mrg
5406 1.1.1.20 mrg * include/bits/cpp_type_traits.h (__memcpyable): Fix comment.
5407 1.1.1.20 mrg
5408 1.1.1.20 mrg 2020-03-04 Patrick Palka <ppalka (a] redhat.com>
5409 1.1.1.20 mrg
5410 1.1.1.20 mrg PR libstdc++/94017
5411 1.1.1.20 mrg * include/bits/ranges_algobase.h (__fill_n_fn::operator()): Refine
5412 1.1.1.20 mrg condition for when to use memset, making sure to additionally check that
5413 1.1.1.20 mrg the output pointer's value type is a non-volatile byte type. Instead of
5414 1.1.1.20 mrg requiring that the fill type is a byte type, just require that it's an
5415 1.1.1.20 mrg integral type.
5416 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill/94017.cc:
5417 1.1.1.20 mrg New test.
5418 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/94017.cc:
5419 1.1.1.19 mrg New test.
5420 1.1.1.20 mrg * testsuite/25_algorithms/fill/94013.cc: Uncomment part of test that was
5421 1.1.1.20 mrg blocked by PR 94017.
5422 1.1.1.20 mrg * testsuite/25_algorithms/fill/94017.cc: New test.
5423 1.1.1.20 mrg * testsuite/25_algorithms/fill_n/94017.cc: New test.
5424 1.1.1.20 mrg
5425 1.1.1.20 mrg LWG 3355 The memory algorithms should support move-only input iterators
5426 1.1.1.20 mrg introduced by P1207
5427 1.1.1.20 mrg * include/bits/ranges_uninitialized.h
5428 1.1.1.20 mrg (__uninitialized_copy_fn::operator()): Use std::move to avoid attempting
5429 1.1.1.20 mrg to copy __ifirst, which could be a move-only input iterator. Use
5430 1.1.1.20 mrg operator- instead of ranges::distance to compute distance from a sized
5431 1.1.1.20 mrg sentinel.
5432 1.1.1.20 mrg (__uninitialized_copy_n_fn::operator()): Likewise.
5433 1.1.1.20 mrg (__uninitialized_move_fn::operator()): Likewise.
5434 1.1.1.20 mrg (__uninitialized_move_n_fn::operator()): Likewise.
5435 1.1.1.20 mrg (__uninitialized_destroy_fn::operator()): Use std::move to avoid
5436 1.1.1.20 mrg attempting to copy __first.
5437 1.1.1.20 mrg (__uninitialized_destroy_n_fn::operator()): Likewise.
5438 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/destroy/constrained.cc:
5439 1.1.1.20 mrg Augment test.
5440 1.1.1.20 mrg * .../specialized_algorithms/uninitialized_copy/constrained.cc:
5441 1.1.1.20 mrg Likewise.
5442 1.1.1.20 mrg * .../specialized_algorithms/uninitialized_move/constrained.cc:
5443 1.1.1.20 mrg Likewise.
5444 1.1.1.20 mrg
5445 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (test_range::get_iterator): Make
5446 1.1.1.20 mrg protected instead of private.
5447 1.1.1.20 mrg (test_sized_range_sized_sent): New.
5448 1.1.1.20 mrg
5449 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (input_iterator_wrapper_nocopy):
5450 1.1.1.20 mrg New testsuite iterator.
5451 1.1.1.20 mrg * testsuite/24_iterators/counted_iterator/lwg3389.cc: use it.
5452 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/lwg3390.cc: Likewise.
5453 1.1.1.20 mrg
5454 1.1.1.20 mrg * include/bits/ranges_uninitialized.h
5455 1.1.1.20 mrg (uninitialized_copy_fn::operator()): Pass a reference type as the first
5456 1.1.1.20 mrg argument to is_nothrow_assignable_v.
5457 1.1.1.20 mrg (uninitialized_copy_fn::operator()): Likewise.
5458 1.1.1.20 mrg (uninitialized_move_fn::operator()): Likewise. Return an in_out_result
5459 1.1.1.20 mrg with the input iterator stripped of its move_iterator.
5460 1.1.1.20 mrg (uninitialized_move_n_fn::operator()): Likewise.
5461 1.1.1.20 mrg (uninitialized_fill_fn::operator()): Pass a reference type as the first
5462 1.1.1.20 mrg argument to is_nothrow_assignable_v.
5463 1.1.1.20 mrg (uninitialized_fill_n_fn::operator()): Likewise.
5464 1.1.1.20 mrg
5465 1.1.1.20 mrg 2020-03-03 Jonathan Wakely <jwakely (a] redhat.com>
5466 1.1.1.20 mrg
5467 1.1.1.20 mrg PR libstdc++/94013
5468 1.1.1.20 mrg * include/bits/cpp_type_traits.h (__memcpyable, __memcmpable): New
5469 1.1.1.20 mrg traits to control when to use memmove and memcmp optimizations.
5470 1.1.1.20 mrg (__is_nonvolatile_trivially_copyable): New helper trait.
5471 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn): Do not
5472 1.1.1.20 mrg use memcmp optimization with volatile data.
5473 1.1.1.20 mrg * include/bits/ranges_algobase.h (__equal_fn): Use __memcmpable.
5474 1.1.1.20 mrg (__copy_or_move, __copy_or_move_backward): Use __memcpyable.
5475 1.1.1.20 mrg * include/bits/stl_algobase.h (__copy_move_a2): Use __memcpyable.
5476 1.1.1.20 mrg (__copy_move_backward_a2): Likewise.
5477 1.1.1.20 mrg (__equal_aux1): Use __memcmpable.
5478 1.1.1.20 mrg (__lexicographical_compare_aux): Do not use memcmp optimization with
5479 1.1.1.20 mrg volatile data.
5480 1.1.1.20 mrg * testsuite/25_algorithms/copy/94013.cc: New test.
5481 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/94013.cc: New test.
5482 1.1.1.20 mrg * testsuite/25_algorithms/equal/94013.cc: New test.
5483 1.1.1.20 mrg * testsuite/25_algorithms/fill/94013.cc: New test.
5484 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/94013.cc: New test.
5485 1.1.1.20 mrg * testsuite/25_algorithms/move/94013.cc: New test.
5486 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/94013.cc: New test.
5487 1.1.1.20 mrg
5488 1.1.1.20 mrg * include/bits/stl_algobase.h (lexicographical_compare_three_way):
5489 1.1.1.20 mrg Avoid redundant iterator comparisons (LWG 3410).
5490 1.1.1.20 mrg
5491 1.1.1.20 mrg 2020-03-02 Jonathan Wakely <jwakely (a] redhat.com>
5492 1.1.1.20 mrg
5493 1.1.1.20 mrg PR libstdc++/93972
5494 1.1.1.20 mrg * include/bits/stl_algobase.h (__memcmp): Allow pointer types to
5495 1.1.1.20 mrg differ.
5496 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/uchar.cc: New test.
5497 1.1.1.20 mrg
5498 1.1.1.20 mrg * include/std/ranges (__detail::__maybe_empty_t): Rename to
5499 1.1.1.20 mrg __maybe_present_t.
5500 1.1.1.20 mrg (__adaptor::_RangeAdaptor, join_view, split_view): Use new name.
5501 1.1.1.19 mrg
5502 1.1.1.20 mrg * include/bits/ranges_algo.h (shift_right): Add 'typename' to
5503 1.1.1.20 mrg dependent type.
5504 1.1.1.19 mrg
5505 1.1.1.20 mrg 2020-03-01 H.J. Lu <hongjiu.lu (a] intel.com>
5506 1.1.1.20 mrg
5507 1.1.1.20 mrg * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
5508 1.1.1.20 mrg
5509 1.1.1.20 mrg 2020-02-29 John David Anglin <danglin (a] gcc.gnu.org>
5510 1.1.1.20 mrg
5511 1.1.1.20 mrg * testsuite/17_intro/headers/c++1998/charset.cc: Skip on *-*-hpux*.
5512 1.1.1.19 mrg * testsuite/17_intro/headers/c++2011/charset.cc: Likewise.
5513 1.1.1.19 mrg * testsuite/17_intro/headers/c++2014/charset.cc: Likewise.
5514 1.1.1.19 mrg * testsuite/17_intro/headers/c++2017/charset.cc: Likewise.
5515 1.1.1.19 mrg * testsuite/17_intro/headers/c++2020/charset.cc: Likewise.
5516 1.1.1.19 mrg
5517 1.1.1.20 mrg * testsuite/30_threads/condition_variable_any/stop_token/wait_on.cc:
5518 1.1.1.20 mrg Add libatomic option.
5519 1.1.1.20 mrg * testsuite/30_threads/jthread/jthread.cc: Likewise.
5520 1.1.1.20 mrg
5521 1.1.1.20 mrg 2020-02-29 Franois Dumont <fdumont (a] gcc.gnu.org>
5522 1.1.1.20 mrg
5523 1.1.1.20 mrg * include/bits/stl_algo.h
5524 1.1.1.20 mrg (__find_if, __count_if, __is_permutation, std::is_permutation): Move...
5525 1.1.1.20 mrg * include/bits/stl_algobase.h: ...here.
5526 1.1.1.20 mrg * include/bits/hashtable_policy.h: Remove <bits/stl_algo.h> include.
5527 1.1.1.20 mrg
5528 1.1.1.20 mrg 2020-02-29 John David Anglin <danglin (a] gcc.gnu.org>
5529 1.1.1.19 mrg
5530 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback.cc: Add libatomic
5531 1.1.1.20 mrg option.
5532 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/deadlock-mt.cc:
5533 1.1.1.20 mrg Likewise.
5534 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/deadlock.cc: Likewise.
5535 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/destroy.cc: Likewise.
5536 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/invoke.cc: Likewise.
5537 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_source.cc: Likewise.
5538 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_source/assign.cc: Likewise.
5539 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_token.cc: Likewise.
5540 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_token/stop_possible.cc:
5541 1.1.1.20 mrg Likewise.
5542 1.1.1.19 mrg
5543 1.1.1.20 mrg PR libstdc++/92906
5544 1.1.1.20 mrg * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
5545 1.1.1.19 mrg
5546 1.1.1.20 mrg 2020-02-28 Patrick Palka <ppalka (a] redhat.com>
5547 1.1.1.19 mrg
5548 1.1.1.20 mrg PR libstdc++/93972
5549 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn::operator()):
5550 1.1.1.20 mrg Fix condition for when to use memcmp, making it consistent with the
5551 1.1.1.20 mrg corresponding condition used in std::lexicographical_compare.
5552 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/93972.cc: New test.
5553 1.1.1.20 mrg
5554 1.1.1.20 mrg * testsuite/26_numerics/headers/numeric/synopsis.cc: Add signatures for
5555 1.1.1.20 mrg functions introduced in C++11, C++17 and C++2a. Add 'constexpr' to
5556 1.1.1.20 mrg existing signatures for C++2a.
5557 1.1.1.20 mrg
5558 1.1.1.20 mrg 2020-02-28 Jonathan Wakely <jwakely (a] redhat.com>
5559 1.1.1.20 mrg
5560 1.1.1.20 mrg * testsuite/24_iterators/range_operations/advance_debug_neg.cc: Run
5561 1.1.1.20 mrg test instead of just compiling it.
5562 1.1.1.20 mrg
5563 1.1.1.20 mrg 2020-02-28 Patrick Palka <ppalka (a] redhat.com>
5564 1.1.1.20 mrg
5565 1.1.1.20 mrg * include/std/ranges (reverse_view::_S_needs_cached_begin): Set to false
5566 1.1.1.20 mrg whenever the underlying range models common_range.
5567 1.1.1.20 mrg
5568 1.1.1.20 mrg * include/std/ranges (__detail::_CachedPosition): New struct.
5569 1.1.1.20 mrg (views::filter_view::_S_needs_cached_begin): New member variable.
5570 1.1.1.20 mrg (views::filter_view::_M_cached_begin): New member variable.
5571 1.1.1.20 mrg (views::filter_view::begin): Use _M_cached_begin to cache its
5572 1.1.1.20 mrg result.
5573 1.1.1.20 mrg (views::drop_view::_S_needs_cached_begin): New static member variable.
5574 1.1.1.20 mrg (views::drop_view::_M_cached_begin): New member variable.
5575 1.1.1.20 mrg (views::drop_view::begin): Use _M_cached_begin to cache its result
5576 1.1.1.20 mrg when _S_needs_cached_begin.
5577 1.1.1.20 mrg (views::drop_while_view::_M_cached_begin): New member variable.
5578 1.1.1.20 mrg (views::drop_while_view::begin): Use _M_cached_begin to cache its
5579 1.1.1.20 mrg result.
5580 1.1.1.20 mrg (views::reverse_view::_S_needs_cached_begin): New static member
5581 1.1.1.20 mrg variable.
5582 1.1.1.20 mrg (views::reverse_view::_M_cached_begin): New member variable.
5583 1.1.1.20 mrg (views::reverse_view::begin): Use _M_cached_begin to cache its result
5584 1.1.1.20 mrg when _S_needs_cached_begin.
5585 1.1.1.20 mrg * testsuite/std/ranges/adaptors/drop.cc: Augment test to check that
5586 1.1.1.20 mrg drop_view::begin caches its result.
5587 1.1.1.20 mrg * testsuite/std/ranges/adaptors/drop_while.cc: Augment test to check
5588 1.1.1.20 mrg that drop_while_view::begin caches its result.
5589 1.1.1.20 mrg * testsuite/std/ranges/adaptors/filter.cc: Augment test to check that
5590 1.1.1.20 mrg filter_view::begin caches its result.
5591 1.1.1.20 mrg * testsuite/std/ranges/adaptors/reverse.cc: Augment test to check that
5592 1.1.1.20 mrg reverse_view::begin caches its result.
5593 1.1.1.20 mrg
5594 1.1.1.20 mrg 2020-02-28 Jonathan Wakely <jwakely (a] redhat.com>
5595 1.1.1.20 mrg
5596 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/last_write_time.cc: Fixes for
5597 1.1.1.20 mrg filesystems that silently truncate timestamps.
5598 1.1.1.20 mrg * testsuite/experimental/filesystem/operations/last_write_time.cc:
5599 1.1.1.20 mrg Likewise.
5600 1.1.1.20 mrg
5601 1.1.1.20 mrg * testsuite/21_strings/basic_string/cons/char/1.cc: Disable
5602 1.1.1.20 mrg -Wstringop-overflow warnings.
5603 1.1.1.20 mrg
5604 1.1.1.20 mrg 2020-02-27 Jonathan Wakely <jwakely (a] redhat.com>
5605 1.1.1.20 mrg
5606 1.1.1.20 mrg * testsuite/lib/libstdc++.exp (v3_target_compile): Add
5607 1.1.1.20 mrg -fdiagnostics-urls=never to options.
5608 1.1.1.20 mrg
5609 1.1.1.20 mrg 2020-02-27 Patrick Palka <ppalka (a] redhat.com>
5610 1.1.1.20 mrg
5611 1.1.1.20 mrg * include/std/ranges (transform_view::_Iterator<_Const>): Befriend
5612 1.1.1.20 mrg _Iterator<!_Const>.
5613 1.1.1.20 mrg (transform_view::_Sentinel<_Const>): Befriend _Sentinel<!_Const>.
5614 1.1.1.20 mrg (take_view::_Sentinel<_Const>): Likewise.
5615 1.1.1.20 mrg (take_while_view::_Sentinel<_Const>): Likewise.
5616 1.1.1.20 mrg (split_view::_OuterIter<_Const>): Befriend _OuterIter<!_Const>.
5617 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Augment test.
5618 1.1.1.20 mrg * testsuite/std/ranges/adaptors/take.cc: Augment test.
5619 1.1.1.20 mrg * testsuite/std/ranges/adaptors/take_while.cc: Augment test.
5620 1.1.1.20 mrg * testsuite/std/ranges/adaptors/transform.cc: Augment test.
5621 1.1.1.20 mrg
5622 1.1.1.20 mrg * testsuite/25_algorithms/copy/constrained.cc: Don't assume that the
5623 1.1.1.20 mrg base() of a vector<>::iterator is a pointer.
5624 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/constrained.cc: Likewise.
5625 1.1.1.20 mrg * testsuite/25_algorithms/move/constrained.cc: Likewise.
5626 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/constrained.cc: Likewise.
5627 1.1.1.20 mrg * testsuite/25_algorithms/inplace_merge/constrained.cc: Use foo.data()
5628 1.1.1.20 mrg instead of &foo[0].
5629 1.1.1.20 mrg * testsuite/25_algorithms/partial_sort/constrained.cc: Likewise.
5630 1.1.1.20 mrg * testsuite/25_algorithms/partial_sort_copy/constrained.cc: Likewise.
5631 1.1.1.20 mrg * testsuite/25_algorithms/shuffle/constrained.cc: Likewise.
5632 1.1.1.20 mrg * testsuite/25_algorithms/sort/constrained.cc: Likewise.
5633 1.1.1.20 mrg * testsuite/25_algorithms/stable_sort/constrained.cc: Likewise.
5634 1.1.1.20 mrg
5635 1.1.1.20 mrg 2020-02-27 Jonathan Wakely <jwakely (a] redhat.com>
5636 1.1.1.20 mrg
5637 1.1.1.20 mrg * include/debug/array (operator<=>): Define for C++20.
5638 1.1.1.20 mrg * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
5639 1.1.1.20 mrg Adjust dg-error line numbers.
5640 1.1.1.20 mrg * testsuite/23_containers/array/tuple_interface/
5641 1.1.1.20 mrg tuple_element_debug_neg.cc: Likewise.
5642 1.1.1.20 mrg
5643 1.1.1.20 mrg * testsuite/23_containers/span/back_assert_neg.cc: Add #undef before
5644 1.1.1.20 mrg defining _GLIBCXX_ASSERTIONS.
5645 1.1.1.20 mrg * testsuite/23_containers/span/first_2_assert_neg.cc: Likewise.
5646 1.1.1.20 mrg * testsuite/23_containers/span/first_assert_neg.cc: Likewise.
5647 1.1.1.20 mrg * testsuite/23_containers/span/front_assert_neg.cc: Likewise.
5648 1.1.1.20 mrg * testsuite/23_containers/span/index_op_assert_neg.cc: Likewise.
5649 1.1.1.20 mrg * testsuite/23_containers/span/last_2_assert_neg.cc: Likewise.
5650 1.1.1.20 mrg * testsuite/23_containers/span/last_assert_neg.cc: Likewise.
5651 1.1.1.20 mrg * testsuite/23_containers/span/subspan_2_assert_neg.cc: Likewise.
5652 1.1.1.20 mrg * testsuite/23_containers/span/subspan_3_assert_neg.cc: Likewise.
5653 1.1.1.20 mrg * testsuite/23_containers/span/subspan_4_assert_neg.cc: Likewise.
5654 1.1.1.20 mrg * testsuite/23_containers/span/subspan_5_assert_neg.cc: Likewise.
5655 1.1.1.20 mrg * testsuite/23_containers/span/subspan_6_assert_neg.cc: Likewise.
5656 1.1.1.20 mrg * testsuite/23_containers/span/subspan_assert_neg.cc: Likewise.
5657 1.1.1.20 mrg
5658 1.1.1.20 mrg * include/debug/string (__gnu_debug::basic_string::insert): Fix for
5659 1.1.1.20 mrg C++98 where the member function of the base class returns void.
5660 1.1.1.20 mrg
5661 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (forward_iterator_wrapper): Add
5662 1.1.1.20 mrg equality comparisons that support value-initialized iterators.
5663 1.1.1.20 mrg
5664 1.1.1.20 mrg * include/bits/boost_concept_check.h (__function_requires): Add
5665 1.1.1.20 mrg _GLIBCXX14_CONSTEXPR.
5666 1.1.1.20 mrg * testsuite/25_algorithms/min/concept_checks.cc: New test.
5667 1.1.1.20 mrg
5668 1.1.1.20 mrg 2020-02-26 Patrick Palka <ppalka (a] redhat.com>
5669 1.1.1.20 mrg
5670 1.1.1.20 mrg PR libstdc++/93936
5671 1.1.1.20 mrg * include/std/ranges (split_view::_InnerIter::operator==): Compare
5672 1.1.1.20 mrg the operands' _M_i rather than their _M_i.current().
5673 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Augment test.
5674 1.1.1.20 mrg
5675 1.1.1.20 mrg P1645R1 constexpr for <numeric> algorithms
5676 1.1.1.20 mrg * include/bits/stl_numeric.h (iota, accumulate, inner_product,
5677 1.1.1.20 mrg partial_sum, adjacent_difference): Make conditionally constexpr for
5678 1.1.1.20 mrg C++20.
5679 1.1.1.20 mrg * include/std/numeric (__cpp_lib_constexpr_numeric): Define this feature
5680 1.1.1.20 mrg test macro.
5681 1.1.1.20 mrg (reduce, transform_reduce, exclusive_scan, inclusive_scan,
5682 1.1.1.20 mrg transform_exclusive_scan, transform_inclusive_scan): Make conditionally
5683 1.1.1.20 mrg constexpr for C++20.
5684 1.1.1.20 mrg * include/std/version (__cpp_lib_constexpr_numeric): Define.
5685 1.1.1.20 mrg * testsuite/26_numerics/accumulate/constexpr.cc: New test.
5686 1.1.1.20 mrg * testsuite/26_numerics/adjacent_difference/constexpr.cc: Likewise.
5687 1.1.1.20 mrg * testsuite/26_numerics/exclusive_scan/constexpr.cc: Likewise.
5688 1.1.1.20 mrg * testsuite/26_numerics/inclusive_scan/constexpr.cc: Likewise.
5689 1.1.1.20 mrg * testsuite/26_numerics/inner_product/constexpr.cc: Likewise.
5690 1.1.1.20 mrg * testsuite/26_numerics/iota/constexpr.cc: Likewise.
5691 1.1.1.20 mrg * testsuite/26_numerics/partial_sum/constexpr.cc: Likewise.
5692 1.1.1.20 mrg * testsuite/26_numerics/reduce/constexpr.cc: Likewise.
5693 1.1.1.20 mrg * testsuite/26_numerics/transform_exclusive_scan/constexpr.cc: Likewise.
5694 1.1.1.20 mrg * testsuite/26_numerics/transform_inclusive_scan/constexpr.cc: Likewise.
5695 1.1.1.20 mrg * testsuite/26_numerics/transform_reduce/constexpr.cc: Likewise.
5696 1.1.1.20 mrg
5697 1.1.1.20 mrg 2020-02-26 Jonathan Wakely <jwakely (a] redhat.com>
5698 1.1.1.20 mrg
5699 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn): Declare
5700 1.1.1.20 mrg variables in smaller scope and avoid calling ranges::distance when we
5701 1.1.1.20 mrg know they are pointers. Remove statically-unreachable use of
5702 1.1.1.20 mrg __builtin_unreachable().
5703 1.1.1.20 mrg * include/bits/stl_algobase.h (__lexicographical_compare::__lc):
5704 1.1.1.20 mrg Define inline.
5705 1.1.1.20 mrg
5706 1.1.1.20 mrg * include/std/ranges (__detail::__maybe_empty_t): Define new helper
5707 1.1.1.20 mrg alias.
5708 1.1.1.20 mrg (__detail::__maybe_const_t): Likewise.
5709 1.1.1.20 mrg (__adaptor::_RangeAdaptor): Use __maybe_empty_t.
5710 1.1.1.20 mrg (transform_view, take_view, take_while_view, elements_view): Use
5711 1.1.1.20 mrg __maybe_const_t.
5712 1.1.1.20 mrg (join_view, split_view): Use both.
5713 1.1.1.20 mrg
5714 1.1.1.20 mrg 2020-02-25 Patrick Palka <ppalka (a] redhat.com>
5715 1.1.1.20 mrg
5716 1.1.1.20 mrg LWG 3397 basic_istream_view::iterator should not provide
5717 1.1.1.20 mrg iterator_category
5718 1.1.1.20 mrg * include/std/ranges (basic_istream_view:_Iterator::iterator_category):
5719 1.1.1.20 mrg Rename to ...
5720 1.1.1.20 mrg (basic_istream_view:_Iterator::iterator_concept): ... this.
5721 1.1.1.20 mrg * testsuite/std/ranges/istream_view.cc: Augment test.
5722 1.1.1.20 mrg
5723 1.1.1.20 mrg LWG 3325 Constrain return type of transformation function for
5724 1.1.1.20 mrg transform_view
5725 1.1.1.20 mrg * include/std/ranges (transform_view): Constrain the return type of the
5726 1.1.1.20 mrg transformation function as per LWG 3325.
5727 1.1.1.20 mrg * testsuite/std/ranges/adaptors/lwg3325_neg.cc: New test.
5728 1.1.1.20 mrg
5729 1.1.1.20 mrg LWG 3313 join_view::_Iterator::operator-- is incorrectly constrained
5730 1.1.1.20 mrg * include/std/ranges (join_view::_Iterator::operator--): Require that
5731 1.1.1.20 mrg range_reference_t<_Base> models common_range.
5732 1.1.1.20 mrg * testsuite/std/ranges/adaptors/lwg3313_neg.cc: New test.
5733 1.1.1.20 mrg
5734 1.1.1.20 mrg LWG 3301 transform_view::_Iterator has incorrect iterator_category
5735 1.1.1.20 mrg * include/std/ranges (transform_view::_Iterator::_S_iter_cat): Adjust
5736 1.1.1.20 mrg determination of iterator_category as per LWG 3301.
5737 1.1.1.20 mrg * testsuite/std/ranges/adaptors/transform.cc: Augment test.
5738 1.1.1.20 mrg
5739 1.1.1.20 mrg LWG 3292 iota_view is under-constrained
5740 1.1.1.20 mrg * include/std/ranges (iota_view): Require that _Winc models semiregular
5741 1.1.1.20 mrg as per LWG 3292.
5742 1.1.1.20 mrg * testsuite/std/ranges/iota/lwg3292_neg.cc: New test.
5743 1.1.1.20 mrg
5744 1.1.1.20 mrg 2020-02-25 Jonathan Wakely <jwakely (a] redhat.com>
5745 1.1.1.20 mrg
5746 1.1.1.20 mrg * include/bits/ranges_algobase.h (__copy_or_move): Do not use memmove
5747 1.1.1.20 mrg during constant evaluation. Call __builtin_memmove directly instead of
5748 1.1.1.20 mrg __memmove.
5749 1.1.1.20 mrg (__copy_or_move_backward): Likewise.
5750 1.1.1.20 mrg * include/bits/stl_algobase.h (__memmove): Remove.
5751 1.1.1.20 mrg (__copy_move<M, true, random_access_iterator_tag>::__copy_m)
5752 1.1.1.20 mrg (__copy_move_backward<M, true, random_access_iterator_tag>::__copy_m):
5753 1.1.1.20 mrg Use __builtin_memmove directly instead of __memmove.
5754 1.1.1.20 mrg (__copy_move_a2): Do not use memmove during constant evaluation.
5755 1.1.1.20 mrg (__copy_move_backward_a2): Use _IsMove constant to select correct
5756 1.1.1.20 mrg __copy_move_backward specialization.
5757 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/constexpr.cc: Check for copies
5758 1.1.1.20 mrg begin turned into moves during constant evaluation.
5759 1.1.1.20 mrg
5760 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/93872.cc: Add test left out of
5761 1.1.1.20 mrg previous commit.
5762 1.1.1.20 mrg
5763 1.1.1.20 mrg PR libstdc++/93872
5764 1.1.1.20 mrg * include/bits/stl_algobase.h (__memmove): Cast away const before
5765 1.1.1.20 mrg doing move assignment.
5766 1.1.1.20 mrg * testsuite/25_algorithms/move/93872.cc: New test.
5767 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/93872.cc: New test.
5768 1.1.1.20 mrg
5769 1.1.1.20 mrg 2020-02-24 Patrick Palka <ppalka (a] redhat.com>
5770 1.1.1.20 mrg
5771 1.1.1.20 mrg PR libstdc++/93884
5772 1.1.1.20 mrg * include/bits/ranges_algobase.h (__copy_or_move,
5773 1.1.1.20 mrg __copy_or_move_backward): Don't inspect the iter_value_t of the output
5774 1.1.1.20 mrg iterator, instead inspect its iterator_traits directly.
5775 1.1.1.20 mrg * include/bits/stl_iterator.h (back_insert_iterator::container):
5776 1.1.1.20 mrg Conditionally initialize.
5777 1.1.1.20 mrg (back_insert_iterator::difference_type): Conditionally define.
5778 1.1.1.20 mrg (back_insert_iterator::back_insert_iterator): Conditionally define this
5779 1.1.1.20 mrg default constructor.
5780 1.1.1.20 mrg (front_insert_iterator::container): Conditionally initialize.
5781 1.1.1.20 mrg (front_insert_iterator::difference_type): Conditionally define.
5782 1.1.1.20 mrg (front_insert_iterator::front_insert_iterator): Conditionally define
5783 1.1.1.20 mrg this default constructor.
5784 1.1.1.20 mrg * 24_iterators/back_insert_iterator/pr93884.cc: New test.
5785 1.1.1.20 mrg * 24_iterators/front_insert_iterator/pr93884.cc: New test.
5786 1.1.1.20 mrg
5787 1.1.1.20 mrg P0769R2 Add shift to <algorithm>
5788 1.1.1.20 mrg * include/bits/ranges_algo.h (shift_left, shift_right): New.
5789 1.1.1.20 mrg * testsuite/25_algorithms/shift_left/1.cc: New test.
5790 1.1.1.20 mrg * testsuite/25_algorithms/shift_right/1.cc: New test.
5791 1.1.1.20 mrg
5792 1.1.1.20 mrg 2020-02-24 Jonathan Wakely <jwakely (a] redhat.com>
5793 1.1.1.20 mrg
5794 1.1.1.20 mrg * include/bits/stream_iterator.h (istream_iterator(default_sentinel_t)):
5795 1.1.1.20 mrg Make noexcept-specifier conditional.
5796 1.1.1.20 mrg * testsuite/24_iterators/istream_iterator/cons/sentinel.cc: Check
5797 1.1.1.20 mrg noexcept-specifier.
5798 1.1.1.20 mrg
5799 1.1.1.20 mrg * include/bits/stream_iterator.h (istream_iterator(default_sentinel_t)):
5800 1.1.1.20 mrg Add constructor.
5801 1.1.1.20 mrg (operator==(istream_iterator, default_sentinel_t)): Add operator.
5802 1.1.1.20 mrg (ostream_iterator::difference_type): Define to ptrdiff_t for C++20.
5803 1.1.1.20 mrg * include/bits/streambuf_iterator.h
5804 1.1.1.20 mrg (istreambuf_iterator(default_sentinel_t)): Add constructor.
5805 1.1.1.20 mrg (operator==(istreambuf_iterator, default_sentinel_t)): Add operator.
5806 1.1.1.20 mrg * testsuite/24_iterators/istream_iterator/cons/sentinel.cc:
5807 1.1.1.20 mrg New test.
5808 1.1.1.20 mrg * testsuite/24_iterators/istream_iterator/sentinel.cc: New test.
5809 1.1.1.20 mrg * testsuite/24_iterators/istreambuf_iterator/cons/sentinel.cc:
5810 1.1.1.19 mrg New test.
5811 1.1.1.20 mrg * testsuite/24_iterators/istreambuf_iterator/sentinel.cc: New test.
5812 1.1.1.19 mrg
5813 1.1.1.20 mrg * include/std/ranges (__deep_const_range, __enable_view_impl): Remove.
5814 1.1.1.20 mrg (ranges::enable_view): Simplify (LWG 3326).
5815 1.1.1.20 mrg * include/bits/range_access.h (ranges::enable_view): Declare.
5816 1.1.1.20 mrg * include/bits/regex.h (__enable_view_impl): Remove partial
5817 1.1.1.20 mrg specialization.
5818 1.1.1.20 mrg * include/bits/stl_multiset.h (__enable_view_impl): Likewise.
5819 1.1.1.20 mrg * include/bits/stl_set.h (__enable_view_impl): Likewise.
5820 1.1.1.20 mrg * include/bits/unordered_set.h (__enable_view_impl): Likewise.
5821 1.1.1.20 mrg * include/debug/multiset.h (__enable_view_impl): Likewise.
5822 1.1.1.20 mrg * include/debug/set.h (__enable_view_impl): Likewise.
5823 1.1.1.20 mrg * include/debug/unordered_set (__enable_view_impl): Likewise.
5824 1.1.1.20 mrg * include/experimental/string_view (ranges::enable_view): Define
5825 1.1.1.20 mrg partial specialization.
5826 1.1.1.20 mrg * include/std/span (ranges::enable_view): Likewise.
5827 1.1.1.20 mrg * include/std/string_view (ranges::enable_view): Likewise.
5828 1.1.1.20 mrg * testsuite/std/ranges/view.cc: Check satisfaction of updated concept.
5829 1.1.1.20 mrg
5830 1.1.1.20 mrg 2020-02-21 Jonathan Wakely <jwakely (a] redhat.com>
5831 1.1.1.20 mrg
5832 1.1.1.20 mrg * include/std/optional (operator<=>(optional<T>, optional<U>))
5833 1.1.1.20 mrg (operator<=>(optional<T>, nullopt), operator<=>(optional<T>, U)):
5834 1.1.1.20 mrg Define for C++20.
5835 1.1.1.20 mrg * include/std/tuple (__tuple_cmp): New helper function for <=>.
5836 1.1.1.20 mrg (operator<=>(tuple<T...>, tuple<U>...)): Define for C++20.
5837 1.1.1.20 mrg * include/std/variant (operator<=>(variant<T...>, variant<T...>))
5838 1.1.1.20 mrg (operator<=>(monostate, monostate)): Define for C++20.
5839 1.1.1.20 mrg * testsuite/20_util/optional/relops/three_way.cc: New test.
5840 1.1.1.20 mrg * testsuite/20_util/tuple/comparison_operators/three_way.cc: New test.
5841 1.1.1.20 mrg * testsuite/20_util/variant/89851.cc: Move to ...
5842 1.1.1.20 mrg * testsuite/20_util/variant/relops/89851.cc: ... here.
5843 1.1.1.20 mrg * testsuite/20_util/variant/90008.cc: Move to ...
5844 1.1.1.20 mrg * testsuite/20_util/variant/relops/90008.cc: ... here.
5845 1.1.1.20 mrg * testsuite/20_util/variant/relops/three_way.cc: New test.
5846 1.1.1.19 mrg
5847 1.1.1.20 mrg 2020-02-20 Patrick Palka <ppalka (a] redhat.com>
5848 1.1.1.19 mrg
5849 1.1.1.20 mrg * include/std/ranges (views::__adaptor::__maybe_refwrap): New utility
5850 1.1.1.20 mrg function.
5851 1.1.1.20 mrg (views::__adaptor::_RangeAdaptor::operator()): Add comments. Use
5852 1.1.1.20 mrg __maybe_refwrap to capture lvalue references by reference, and then use
5853 1.1.1.20 mrg unwrap_reference_t to forward the by-reference captures as references.
5854 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Augment test.
5855 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split_neg.cc: New test.
5856 1.1.1.20 mrg
5857 1.1.1.20 mrg * include/std/ranges (iota_view): Forward declare _Sentinel.
5858 1.1.1.20 mrg (iota_view::_Iterator): Befriend _Sentinel.
5859 1.1.1.20 mrg (iota_view::_Sentinel::_M_equal): New member function.
5860 1.1.1.20 mrg (iota_view::_Sentinel::operator==): Use it.
5861 1.1.1.20 mrg (views::_Iota::operator()): Forward __f using the correct type.
5862 1.1.1.20 mrg * testsuite/std/ranges/access/ssize.cc (test06): Don't call views::iota
5863 1.1.1.20 mrg with integers of different signedness, to appease iota_view's deduction
5864 1.1.1.20 mrg guide.
5865 1.1.1.20 mrg * testsuite/std/ranges/iota/iota_view.cc: Augment test.
5866 1.1.1.20 mrg
5867 1.1.1.20 mrg 2020-02-20 Jonathan Wakely <jwakely (a] redhat.com>
5868 1.1.1.20 mrg
5869 1.1.1.20 mrg * include/bits/range_access.h (ranges::begin): Reject array of
5870 1.1.1.20 mrg incomplete type.
5871 1.1.1.20 mrg (ranges::end, ranges::size): Require arrays to be bounded.
5872 1.1.1.20 mrg (ranges::data): Require lvalue or borrowed_range.
5873 1.1.1.20 mrg (ranges::iterator_t): Remove constraint.
5874 1.1.1.20 mrg * testsuite/std/ranges/access/begin.cc: Do not check array of
5875 1.1.1.20 mrg incomplete type.
5876 1.1.1.20 mrg * testsuite/std/ranges/access/begin_neg.cc: New test.
5877 1.1.1.20 mrg * testsuite/std/ranges/access/end_neg.cc: Adjust expected error.
5878 1.1.1.20 mrg * testsuite/std/ranges/access/size_neg.cc: Adjust expected error.
5879 1.1.1.20 mrg * testsuite/std/ranges/access/ssize.cc: Do not check array of
5880 1.1.1.20 mrg incomplete type.
5881 1.1.1.20 mrg
5882 1.1.1.20 mrg * include/std/system_error (error_category::operator<=>)
5883 1.1.1.20 mrg (operator<=>(const error_code&, const error_code&))
5884 1.1.1.20 mrg (operator<=>(const error_condition&, const error_condition&)): Define
5885 1.1.1.20 mrg for C++20.
5886 1.1.1.20 mrg * testsuite/19_diagnostics/error_category/operators/less.cc: New test.
5887 1.1.1.20 mrg * testsuite/19_diagnostics/error_category/operators/three_way.cc: New
5888 1.1.1.20 mrg test.
5889 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/equal.cc: Remove
5890 1.1.1.20 mrg incorrect comment.
5891 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/less.cc: New test.
5892 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Remove
5893 1.1.1.20 mrg incorrect comment.
5894 1.1.1.20 mrg * testsuite/19_diagnostics/error_code/operators/three_way.cc: New test.
5895 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/equal.cc: Remove
5896 1.1.1.20 mrg incorrect comment.
5897 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/less.cc: New test.
5898 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
5899 1.1.1.20 mrg Remove incorrect comment.
5900 1.1.1.20 mrg * testsuite/19_diagnostics/error_condition/operators/three_way.cc: New
5901 1.1.1.20 mrg test.
5902 1.1.1.19 mrg
5903 1.1.1.20 mrg * libsupc++/typeinfo (type_info::operator!=): Remove for C++20.
5904 1.1.1.19 mrg
5905 1.1.1.20 mrg * include/std/thread (thread::id::operator<=>): Define for C++20.
5906 1.1.1.20 mrg * testsuite/30_threads/thread/id/70294.cc: Do not take addresses of
5907 1.1.1.20 mrg functions in namespace std.
5908 1.1.1.20 mrg * testsuite/30_threads/thread/id/operators_c++20.cc: New test.
5909 1.1.1.20 mrg
5910 1.1.1.20 mrg 2020-02-19 Patrick Palka <ppalka (a] redhat.com>
5911 1.1.1.20 mrg
5912 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc (test03): Don't include the
5913 1.1.1.20 mrg null terminator of the underlying string as part of the test_range.
5914 1.1.1.20 mrg (main): Call test03.
5915 1.1.1.20 mrg
5916 1.1.1.20 mrg 2020-02-19 Jonathan Wakely <jwakely (a] redhat.com>
5917 1.1.1.20 mrg
5918 1.1.1.20 mrg * include/bits/stl_iterator.h (common_iterator): Add copyable<I>
5919 1.1.1.20 mrg requirement (LWG 3385).
5920 1.1.1.20 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc: Adjust
5921 1.1.1.20 mrg expected declaration.
5922 1.1.1.20 mrg
5923 1.1.1.20 mrg * include/std/ranges (take_while_view, drop_view, drop_while_view)
5924 1.1.1.20 mrg (elements_view:_Iterator): Initialize data members (LWG 3364).
5925 1.1.1.20 mrg
5926 1.1.1.20 mrg * libsupc++/compare (three_way_comparable): Remove always-false check
5927 1.1.1.20 mrg that should have been removed with weak_equality (P1959R0).
5928 1.1.1.20 mrg (three_way_comparable_with): Likewise. Reorder requirements (LWG 3360).
5929 1.1.1.20 mrg
5930 1.1.1.20 mrg * include/std/concepts (__detail::__partially_ordered_with): Move here
5931 1.1.1.20 mrg from <compare>.
5932 1.1.1.20 mrg (totally_ordered, totally_ordered_with): Use __partially_ordered_with
5933 1.1.1.20 mrg to simplify definition (LWG 3331).
5934 1.1.1.20 mrg * libsupc++/compare (__detail::__partially_ordered_with): Move to
5935 1.1.1.20 mrg <concepts>.
5936 1.1.1.20 mrg
5937 1.1.1.20 mrg * include/std/concepts (totally_ordered_with): Remove redundant
5938 1.1.1.20 mrg requirement (LWG 3329).
5939 1.1.1.20 mrg
5940 1.1.1.20 mrg * include/std/ranges (__detail::__convertible_to_non_slicing): New
5941 1.1.1.20 mrg helper concept.
5942 1.1.1.20 mrg (__detail::__pair_like_convertible_to): Remove.
5943 1.1.1.20 mrg (__detail::__pair_like_convertible_from): Add requirements for
5944 1.1.1.20 mrg non-slicing conversions.
5945 1.1.1.20 mrg (subrange): Constrain constructors with __convertible_to_non_slicing.
5946 1.1.1.20 mrg Remove constructors from pair-like types. Add new deduction guide.
5947 1.1.1.20 mrg * testsuite/std/ranges/subrange/lwg3282_neg.cc: New test.
5948 1.1.1.20 mrg
5949 1.1.1.20 mrg * include/bits/iterator_concepts.h (iter_move): Add declaration to
5950 1.1.1.20 mrg prevent unqualified lookup finding a suitable declaration (LWG 3247).
5951 1.1.1.20 mrg
5952 1.1.1.20 mrg * include/std/memory_resource (polymorphic_allocator::allocate)
5953 1.1.1.20 mrg (polymorphic_allocator::allocate_object): Change type of exception to
5954 1.1.1.20 mrg bad_array_new_length (LWG 3237).
5955 1.1.1.20 mrg * testsuite/20_util/polymorphic_allocator/lwg3237.cc: New test.
5956 1.1.1.20 mrg
5957 1.1.1.20 mrg * include/std/type_traits (__cpp_lib_unwrap_ref): Define (LWG 3348).
5958 1.1.1.20 mrg * include/std/version (__cpp_lib_unwrap_ref): Likewise.
5959 1.1.1.20 mrg * testsuite/20_util/unwrap_reference/1.cc: Check macro.
5960 1.1.1.20 mrg * testsuite/20_util/unwrap_reference/3.cc: New test.
5961 1.1.1.20 mrg
5962 1.1.1.20 mrg * include/std/numeric (midpoint(T8, T*)): Do not check for complete
5963 1.1.1.20 mrg type during overload resolution, use static assert instead (LWG 3200).
5964 1.1.1.20 mrg * testsuite/26_numerics/midpoint/pointer.cc: Do not test with
5965 1.1.1.20 mrg incomplete type.
5966 1.1.1.20 mrg * testsuite/26_numerics/midpoint/pointer_neg.cc: New test.
5967 1.1.1.20 mrg
5968 1.1.1.20 mrg * include/std/span (span(T (&)[N])): Use non-deduced context to
5969 1.1.1.20 mrg prevent first parameter from interfering with class template argument
5970 1.1.1.20 mrg deduction (LWG 3369).
5971 1.1.1.20 mrg * testsuite/23_containers/span/deduction.cc: Add missing 'const'.
5972 1.1.1.20 mrg * testsuite/23_containers/span/lwg3255.cc: Check for construction from
5973 1.1.1.20 mrg rvalues.
5974 1.1.1.20 mrg
5975 1.1.1.20 mrg * include/std/span (span::const_iterator, span::const_reverse_iterator)
5976 1.1.1.20 mrg (span::cbegin(), span::cend(), span::crbegin(), span::crend()):
5977 1.1.1.20 mrg Remove (LWG 3320).
5978 1.1.1.20 mrg * testsuite/23_containers/span/everything.cc: Replace uses of cbegin
5979 1.1.1.20 mrg and cend.
5980 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/destroy/constrained.cc:
5981 1.1.1.20 mrg Likewise.
5982 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/
5983 1.1.1.20 mrg constrained.cc: Likewise.
5984 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/
5985 1.1.1.20 mrg uninitialized_default_construct/constrained.cc: Likewise.
5986 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill/
5987 1.1.1.20 mrg constrained.cc: Likewise.
5988 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/uninitialized_move/
5989 1.1.1.20 mrg constrained.cc: Likewise.
5990 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/
5991 1.1.1.20 mrg uninitialized_value_construct/constrained.cc: Likewise.
5992 1.1.1.20 mrg
5993 1.1.1.20 mrg * include/bits/range_access.h (range_size_t): Define alias template.
5994 1.1.1.20 mrg * include/std/ranges (all_view): Rename to views::all_t (LWG 3335).
5995 1.1.1.20 mrg * testsuite/std/ranges/adaptors/filter.cc: Adjust to new name.
5996 1.1.1.20 mrg
5997 1.1.1.20 mrg * include/std/ranges (filter_view, transform_view, take_view)
5998 1.1.1.20 mrg (join_view, split_view, reverse_view): Remove commented-out converting
5999 1.1.1.20 mrg constructors (LWG 3280).
6000 1.1.1.18 mrg
6001 1.1.1.20 mrg * include/std/memory (uninitialized_construct_using_allocator): Use
6002 1.1.1.20 mrg std::construct_at (LWG 3321).
6003 1.1.1.18 mrg
6004 1.1.1.20 mrg * include/std/memory_resource (polymorphic_allocator::allocate_bytes)
6005 1.1.1.20 mrg (polymorphic_allocator::allocate_object)
6006 1.1.1.20 mrg (polymorphic_allocator::new_object): Add nodiscard attribute (LWG3304).
6007 1.1.1.20 mrg
6008 1.1.1.20 mrg LWG 3379. "safe" in several library names is misleading
6009 1.1.1.20 mrg * include/bits/range_access.h (enable_safe_range): Rename to
6010 1.1.1.20 mrg enable_borrowed_range.
6011 1.1.1.20 mrg (__detail::__maybe_safe_range): Rename to __maybe_borrowed_range.
6012 1.1.1.20 mrg (safe_range): Rename to borrowed_range.
6013 1.1.1.20 mrg * include/bits/ranges_algo.h: Adjust to use new names.
6014 1.1.1.20 mrg * include/bits/ranges_algobase.h: Likewise.
6015 1.1.1.20 mrg * include/bits/ranges_uninitialized.h: Likewise.
6016 1.1.1.20 mrg * include/std/ranges: Likewise.
6017 1.1.1.20 mrg (safe_iterator_t): Rename to borrowed_iterator_t.
6018 1.1.1.20 mrg (safe_subrange_t): Rename to borrowed_subrange_t.
6019 1.1.1.20 mrg * include/std/span: Adjust to use new names.
6020 1.1.1.20 mrg * include/std/string_view: Likewise.
6021 1.1.1.20 mrg * include/experimental/string_view: Likewise.
6022 1.1.1.20 mrg * testsuite/std/ranges/access/begin.cc: Likewise.
6023 1.1.1.20 mrg * testsuite/std/ranges/access/cbegin.cc: Likewise.
6024 1.1.1.20 mrg * testsuite/std/ranges/access/cdata.cc: Likewise.
6025 1.1.1.20 mrg * testsuite/std/ranges/access/cend.cc: Likewise.
6026 1.1.1.20 mrg * testsuite/std/ranges/access/crbegin.cc: Likewise.
6027 1.1.1.20 mrg * testsuite/std/ranges/access/crend.cc: Likewise.
6028 1.1.1.20 mrg * testsuite/std/ranges/access/data.cc: Likewise.
6029 1.1.1.20 mrg * testsuite/std/ranges/access/end.cc: Likewise.
6030 1.1.1.20 mrg * testsuite/std/ranges/access/rbegin.cc: Likewise.
6031 1.1.1.20 mrg * testsuite/std/ranges/access/rend.cc: Likewise.
6032 1.1.1.20 mrg * testsuite/std/ranges/safe_range.cc: Likewise.
6033 1.1.1.20 mrg * testsuite/std/ranges/safe_range_types.cc: Likewise.
6034 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h: Likewise.
6035 1.1.1.20 mrg
6036 1.1.1.20 mrg * include/std/ranges (tuple_element<0, const subrange<I, S, K>>)
6037 1.1.1.20 mrg (tuple_element<1, const subrange<I, S, K>>): Add partial
6038 1.1.1.20 mrg specializations (LWG 3398).
6039 1.1.1.20 mrg * testsuite/std/ranges/subrange/tuple_like.cc: New test.
6040 1.1.1.20 mrg
6041 1.1.1.20 mrg * include/bits/ranges_algo.h (__find_fn, __find_first_of_fn)
6042 1.1.1.20 mrg (__adjacent_find_fn, __remove_if_fn, __remove_copy_if_fn)
6043 1.1.1.20 mrg (__unique_fn, __unique_copy_fn): Remove redundant conversions to bool.
6044 1.1.1.20 mrg
6045 1.1.1.20 mrg 2020-02-18 Patrick Palka <ppalka (a] redhat.com>
6046 1.1.1.20 mrg
6047 1.1.1.20 mrg P1983R0 Wording for GB301, US296, US292, US291, and US283
6048 1.1.1.20 mrg * include/std/ranges (filter_view::pred): New member function.
6049 1.1.1.20 mrg (join_view::_Iterator::_Iterator): Remove now-redundant comment since
6050 1.1.1.20 mrg P1983R0 fixes the highlighted issue in the same way.
6051 1.1.1.20 mrg (join_view::_Iterator<_Const>): Add friend
6052 1.1.1.20 mrg join_view::_Iterator<!_Const>.
6053 1.1.1.20 mrg (join_view::_M_inner): Remove mutable specifier, effectively reverting
6054 1.1.1.20 mrg the proposed wording changes of P3278.
6055 1.1.1.20 mrg (join_view::begin): Refine the condition for when to return a const
6056 1.1.1.20 mrg iterator.
6057 1.1.1.20 mrg (split_view::_OuterIter::_OuterIter): Adjust constraints.
6058 1.1.1.20 mrg * testsuite/std/ranges/adaptors/filter.cc: Test that filter_view::pred
6059 1.1.1.20 mrg exists and works.
6060 1.1.1.20 mrg
6061 1.1.1.20 mrg 2020-02-18 Jonathan Wakely <jwakely (a] redhat.com>
6062 1.1.1.20 mrg
6063 1.1.1.20 mrg PR libstdc++/93818
6064 1.1.1.20 mrg * include/std/ranges (_RangeAdaptor): Add deduction guide.
6065 1.1.1.20 mrg (filter_view::_Iterator): Add alias _Vp_iter and use in place of
6066 1.1.1.20 mrg iterator_t<_Vp>.
6067 1.1.1.20 mrg (filter_view::_Iterator::_S_iter_cat()): Add 'typename'.
6068 1.1.1.20 mrg (transform_view::_Iterator): Add alias _Base_iter and use in place of
6069 1.1.1.20 mrg iterator_t<_Base>.
6070 1.1.1.20 mrg (transform_view::_Iterator::_S_iter_cat()): Add 'typename'.
6071 1.1.1.20 mrg (join_view::_Iterator): Add _Outer_iter and _Inner_iter aliases.
6072 1.1.1.20 mrg (join_view::_Iterator::_S_iter_cat()): Add 'typename'.
6073 1.1.1.20 mrg (split_view::_InnerIter::_S_iter_cat()): Likewise.
6074 1.1.1.20 mrg
6075 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/equal.cc: Fix invalid
6076 1.1.1.20 mrg assumption that long is wider than int.
6077 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/greater_equal.cc: Likewise.
6078 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less.cc: Likewise.
6079 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less_equal.cc: Likewise.
6080 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/not_equal.cc: Likewise.
6081 1.1.1.20 mrg
6082 1.1.1.20 mrg P1976R2 Fixed-size span construction from dynamic range
6083 1.1.1.20 mrg * include/std/span (__cpp_lib_span): Update value.
6084 1.1.1.20 mrg (span(It, size_type), span(It, End)): Make conditionally explicit. Add
6085 1.1.1.20 mrg assertion.
6086 1.1.1.20 mrg (span(R&&), span(const span<OType, OExtent>&)): Likewise and relax
6087 1.1.1.20 mrg constraints.
6088 1.1.1.20 mrg (span::first<Count>(), span::last<Count>()): Use explicit type in
6089 1.1.1.20 mrg return statement.
6090 1.1.1.20 mrg (as_bytes, as_writable_bytes): Likewise.
6091 1.1.1.20 mrg * include/std/version (__cpp_lib_span): Update value.
6092 1.1.1.20 mrg * testsuite/23_containers/span/1.cc: Check new value.
6093 1.1.1.20 mrg * testsuite/23_containers/span/2.cc: Check new value.
6094 1.1.1.20 mrg * testsuite/23_containers/span/explicit.cc: New test.
6095 1.1.1.20 mrg
6096 1.1.1.20 mrg * include/std/span (span::__is_compatible_array): Simplify alias
6097 1.1.1.20 mrg template by using requires-clause.
6098 1.1.1.20 mrg (span::__is_compatible_ref): New alias template for constraining
6099 1.1.1.20 mrg constructors.
6100 1.1.1.20 mrg (span::__is_compatible_iterator, span::__is_compatible_range): Remove.
6101 1.1.1.20 mrg (span(It, size_type), span(It, End)): Use __is_compatible_ref.
6102 1.1.1.20 mrg (span(T(&)[N], span(array<T, N>&), span(const array<T, N>&)): Remove
6103 1.1.1.20 mrg redundant parentheses.
6104 1.1.1.20 mrg (span(R&&)): Add missing constraints.
6105 1.1.1.20 mrg
6106 1.1.1.20 mrg * include/std/span (span): Reorder members and rename template
6107 1.1.1.20 mrg parameters to match declarations in the C++2a working paper.
6108 1.1.1.20 mrg
6109 1.1.1.20 mrg P2116R0 Remove tuple-like protocol support from fixed-extent span
6110 1.1.1.20 mrg * include/std/span (get, tuple_size, tuple_element): Remove.
6111 1.1.1.20 mrg * testsuite/23_containers/span/everything.cc: Remove checks for
6112 1.1.1.20 mrg tuple-like API.
6113 1.1.1.20 mrg * testsuite/23_containers/span/get_neg.cc: Remove.
6114 1.1.1.20 mrg * testsuite/23_containers/span/tuple_element_dynamic_neg.cc: Remove.
6115 1.1.1.20 mrg * testsuite/23_containers/span/tuple_element_oob_neg.cc: Remove.
6116 1.1.1.20 mrg * testsuite/23_containers/span/tuple_size_neg.cc: Remove.
6117 1.1.1.20 mrg
6118 1.1.1.20 mrg 2020-02-17 Patrick Palka <ppalka (a] redhat.com>
6119 1.1.1.20 mrg
6120 1.1.1.20 mrg P2106R0 Alternative wording for GB315 and GB316
6121 1.1.1.20 mrg * include/bits/ranges_algo.h (in_fun_result): New.
6122 1.1.1.20 mrg (for_each_result, for_each_n_result): Change into an alias of
6123 1.1.1.20 mrg in_fun_result.
6124 1.1.1.20 mrg (in_in_result): New.
6125 1.1.1.20 mrg (mismatch_result): Change into an alias of in_in_result.
6126 1.1.1.20 mrg (copy_if_result): Change into an alias of in_out_result.
6127 1.1.1.20 mrg (swap_ranges_result): Change into an alias of in_in_result.
6128 1.1.1.20 mrg (unary_transform_result): Change into an alias of in_out_result.
6129 1.1.1.20 mrg (in_in_out_result): New.
6130 1.1.1.20 mrg (binary_transform_result): Change into an alias of in_in_out_result.
6131 1.1.1.20 mrg (replace_copy_result, replace_copy_if_result, remove_copy_if_result,
6132 1.1.1.20 mrg remove_copy_result, unique_copy_result, reverse_copy_result,
6133 1.1.1.20 mrg rotate_copy_result, partial_sort_copy_result): Change into an alias of
6134 1.1.1.20 mrg in_out_result.
6135 1.1.1.20 mrg (in_out_out_result): New.
6136 1.1.1.20 mrg (partition_copy_result, merge_result): Change into an alias of
6137 1.1.1.20 mrg in_out_out_result.
6138 1.1.1.20 mrg (set_union_result, set_intersection_result): Change into an alias of
6139 1.1.1.20 mrg in_in_out_result.
6140 1.1.1.20 mrg (set_difference_result): Change into an alias of in_out_result.
6141 1.1.1.20 mrg (set_symmetric_difference): Change into an alias of in_in_out_result.
6142 1.1.1.20 mrg (min_max_result): New.
6143 1.1.1.20 mrg (minmax_result, minmax_element_result): Change into an alias of
6144 1.1.1.20 mrg min_max_result.
6145 1.1.1.20 mrg (in_found_result): New.
6146 1.1.1.20 mrg (next_permutation_result, prev_permutation_result): Change into an alias
6147 1.1.1.20 mrg of in_found_result.
6148 1.1.1.20 mrg (__next_permutation_fn::operator(), __prev_permutation_fn::operator()):
6149 1.1.1.20 mrg Adjust following changes to next_permutation_result and
6150 1.1.1.20 mrg prev_permutation_result.
6151 1.1.1.20 mrg * include/bits/ranges_algobase.h (in_out_result): New.
6152 1.1.1.20 mrg (copy_result, move_result, move_backward_result, copy_backward_result,
6153 1.1.1.20 mrg copy_n_result): Change into an alias of in_out_result.
6154 1.1.1.20 mrg * include/bits/ranges_uninitialized.h (uninitialized_copy_result,
6155 1.1.1.20 mrg uninitialized_copy_n_result, uninitialized_move_result,
6156 1.1.1.20 mrg uninitialized_move_n_result): Likewise.
6157 1.1.1.20 mrg * testsuite/25_algorithms/next_permutation/constrained.cc: Adjust uses of
6158 1.1.1.20 mrg structured bindings.
6159 1.1.1.20 mrg * testsuite/25_algorithms/prev_permutation/constrained.cc: Likewise.
6160 1.1.1.20 mrg
6161 1.1.1.20 mrg P1243R4 Rangify new algorithms
6162 1.1.1.20 mrg * include/bits/ranges_algo.h (for_each_n_result, __for_each_n_fn,
6163 1.1.1.20 mrg for_each_n, __sample_fn, sample, __clamp_fn, clamp): New.
6164 1.1.1.20 mrg * testsuite/25_algorithms/clamp/constrained.cc: New test.
6165 1.1.1.20 mrg * testsuite/25_algorithms/for_each/constrained.cc: Augment test.
6166 1.1.1.20 mrg * testsuite/25_algorithms/sample/constrained.cc: New test.
6167 1.1.1.20 mrg
6168 1.1.1.20 mrg 2020-02-17 Jonathan Wakely <jwakely (a] redhat.com>
6169 1.1.1.20 mrg
6170 1.1.1.20 mrg P1964R2 Wording for boolean-testable
6171 1.1.1.20 mrg * include/bits/ranges_algo.h (__find_fn, __find_first_of_fn)
6172 1.1.1.20 mrg (__adjacent_find_fn): Cast result of predicate to bool.
6173 1.1.1.20 mrg * include/std/concepts (__boolean): Remove.
6174 1.1.1.20 mrg (__detail::__boolean_testable_impl, __detail::__boolean_testable): Add
6175 1.1.1.20 mrg new helper concepts.
6176 1.1.1.20 mrg (__detail::__weakly_eq_cmp_with, totally_ordered, totally_ordered_with)
6177 1.1.1.20 mrg (predicate): Use __boolean_testable instead of boolean.
6178 1.1.1.20 mrg * libsupc++/compare (__detail::__partially_ordered, _Synth3way):
6179 1.1.1.20 mrg Likewise.
6180 1.1.1.20 mrg
6181 1.1.1.20 mrg P1970R2 Consistency for size() functions: Add ranges::ssize
6182 1.1.1.20 mrg * include/bits/range_access.h (_SSize, ssize): Define for C++20.
6183 1.1.1.20 mrg * testsuite/std/ranges/access/ssize.cc: New test.
6184 1.1.1.20 mrg
6185 1.1.1.20 mrg P1956R1 On the names of low-level bit manipulation functions
6186 1.1.1.20 mrg * include/bits/hashtable_policy.h: Update comment.
6187 1.1.1.20 mrg * include/std/bit (__ispow2, __ceil2, __floor2, __log2p1): Rename.
6188 1.1.1.20 mrg (ispow2, ceil2, floor2, log2p1): Likewise.
6189 1.1.1.20 mrg (__cpp_lib_int_pow2): Add feature test macro.
6190 1.1.1.20 mrg * include/std/charconv (__to_chars_len_2): Adjust use of __log2p1.
6191 1.1.1.20 mrg * include/std/memory (assume_aligned): Adjust use of ispow2.
6192 1.1.1.20 mrg * include/std/version (__cpp_lib_int_pow2): Add.
6193 1.1.1.20 mrg * libsupc++/new_opa.cc: Adjust use of __ispow2.
6194 1.1.1.20 mrg * src/c++17/memory_resource.cc: Likewise, and for __ceil2 and __log2p1.
6195 1.1.1.20 mrg * testsuite/17_intro/freestanding.cc: Adjust use of ispow2.
6196 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Rename to ...
6197 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc: ... here.
6198 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2_neg.cc: Rename to ...
6199 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_ceil_neg.cc: ... here.
6200 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/floor2.cc: Rename to ...
6201 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc: ... here.
6202 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/log2p1.cc: Rename to ...
6203 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_width.cc: ... here.
6204 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ispow2.cc: Rename to ...
6205 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc: ... here.
6206 1.1.1.20 mrg
6207 1.1.1.20 mrg * include/std/charconv: Add comment.
6208 1.1.1.20 mrg
6209 1.1.1.20 mrg PR libstdc++/92546 (partial)
6210 1.1.1.20 mrg * include/bits/random.h (uniform_random_bit_generator): Move definition
6211 1.1.1.20 mrg to <bits/uniform_int_dist.h>.
6212 1.1.1.20 mrg * include/bits/ranges_algo.h: Include <bits/uniform_int_dist.h> instead
6213 1.1.1.20 mrg of <bits/random.h>.
6214 1.1.1.20 mrg * include/bits/ranges_algobase.h: Do not include <cmath>.
6215 1.1.1.20 mrg * include/bits/uniform_int_dist.h (uniform_random_bit_generator):
6216 1.1.1.20 mrg Move here.
6217 1.1.1.20 mrg * include/std/ranges: Do not include <limits>.
6218 1.1.1.20 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
6219 1.1.1.20 mrg
6220 1.1.1.20 mrg PR libstdc++/92546 (partial)
6221 1.1.1.20 mrg * include/Makefile.am: Add new header.
6222 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6223 1.1.1.20 mrg * include/bits/int_limits.h: New header.
6224 1.1.1.20 mrg * include/bits/parse_numbers.h (__select_int::_Select_int): Replace
6225 1.1.1.20 mrg numeric_limits with __detail::__int_limits.
6226 1.1.1.20 mrg * include/std/bit (__rotl, __rotr, __countl_zero, __countl_one)
6227 1.1.1.20 mrg (__countr_zero, __countr_one, __popcount, __ceil2, __floor2, __log2p1):
6228 1.1.1.20 mrg Likewise.
6229 1.1.1.20 mrg * include/std/charconv (__to_chars_8, __from_chars_binary)
6230 1.1.1.20 mrg (__from_chars_alpha_to_num, from_chars): Likewise.
6231 1.1.1.20 mrg * include/std/memory_resource (polymorphic_allocator::allocate)
6232 1.1.1.20 mrg (polymorphic_allocator::allocate_object): Likewise.
6233 1.1.1.20 mrg * include/std/string_view (basic_string_view::_S_compare): Likewise.
6234 1.1.1.20 mrg * include/std/utility (in_range): Likewise.
6235 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/in_range_neg.cc: Adjust for
6236 1.1.1.20 mrg extra error about incomplete type __int_limits<bool>.
6237 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.count/countl_one.cc: Include <limits>.
6238 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.count/countl_zero.cc: Likewise.
6239 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.count/countr_one.cc: Likewise.
6240 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.count/countr_zero.cc: Likewise.
6241 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.count/popcount.cc: Likewise.
6242 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2_neg.cc: Likewise.
6243 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Likewise.
6244 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/floor2.cc: Likewise.
6245 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/ispow2.cc: Likewise.
6246 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.pow.two/log2p1.cc: Likewise.
6247 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.rotate/rotl.cc: Likewise.
6248 1.1.1.20 mrg * testsuite/26_numerics/bit/bit.rotate/rotr.cc: Likewise.
6249 1.1.1.20 mrg
6250 1.1.1.20 mrg * python/libstdcxx/v6/printers.py (StdCmpCatPrinter.to_string): Update
6251 1.1.1.20 mrg value for partial_ordering::unordered.
6252 1.1.1.18 mrg
6253 1.1.1.20 mrg * include/bits/iterator_concepts.h (indirectly_copyable_storable): Add
6254 1.1.1.20 mrg const-qualified expression variations.
6255 1.1.1.20 mrg * include/std/concepts (copyable): Likewise.
6256 1.1.1.20 mrg
6257 1.1.1.20 mrg * include/std/type_traits (__is_standard_integer): New helper trait.
6258 1.1.1.20 mrg * include/std/utility (cmp_equal, cmp_not_equal, cmp_less, cmp_greater)
6259 1.1.1.20 mrg (cmp_less_equal, cmp_greater_equal, in_range): Define for C++20.
6260 1.1.1.20 mrg * include/std/version (__cpp_lib_integer_comparison_functions): Define.
6261 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/1.cc: New test.
6262 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/2.cc: New test.
6263 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/equal.cc: New test.
6264 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/equal_neg.cc: New test.
6265 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/greater_equal.cc: New test.
6266 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/greater_equal_neg.cc: New test.
6267 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/greater_neg.cc: New test.
6268 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/in_range.cc: New test.
6269 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/in_range_neg.cc: New test.
6270 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less.cc: New test.
6271 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less_equal.cc: New test.
6272 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less_equal_neg.cc: New test.
6273 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/less_neg.cc: New test.
6274 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/not_equal.cc: New test.
6275 1.1.1.20 mrg * testsuite/20_util/integer_comparisons/not_equal_neg.cc: New test.
6276 1.1.1.20 mrg
6277 1.1.1.20 mrg 2020-02-16 Patrick Palka <ppalka (a] redhat.com>
6278 1.1.1.20 mrg
6279 1.1.1.20 mrg * include/bits/ranges_algo.h (__lexicographical_compare_fn::operator()):
6280 1.1.1.20 mrg Move code after an early exit constexpr if to under an else branch.
6281 1.1.1.20 mrg * include/bits/ranges_algobase.h (__equal_fn::operator()): Likewise.
6282 1.1.1.20 mrg
6283 1.1.1.20 mrg 2020-02-15 Patrick Palka <ppalka (a] redhat.com>
6284 1.1.1.20 mrg
6285 1.1.1.20 mrg * include/bits/ranges_algo.h: Adjust whitespace and formatting.
6286 1.1.1.20 mrg * include/bits/ranges_algobase.h: Likewise.
6287 1.1.1.20 mrg * include/bits/ranges_uninitialized.h: Likewise.
6288 1.1.1.20 mrg
6289 1.1.1.20 mrg * include/bits/ranges_algo.h: (adjacent_find, all_of, any_of,
6290 1.1.1.20 mrg binary_search, copy_if, count, count_if, equal_range, find, find_end,
6291 1.1.1.20 mrg find_first_of, find_if, find_if_not, for_each, generate, generate_n,
6292 1.1.1.20 mrg includes, inplace_merge, is_heap, is_heap_until, is_partitioned,
6293 1.1.1.20 mrg is_permutation, is_sorted, is_sorted_until, lexicographical_compare,
6294 1.1.1.20 mrg lower_bound, make_heap, max, max_element, merge, min, min_element,
6295 1.1.1.20 mrg minmax, minmax_element, mismatch, next_permutation, none_of,
6296 1.1.1.20 mrg nth_element, partial_sort, partial_sort_copy, partition, partition_copy,
6297 1.1.1.20 mrg partition_point, pop_heap, prev_permutation, push_heap, remove,
6298 1.1.1.20 mrg remove_copy, remove_copy_if, remove_if, replace, replace_copy,
6299 1.1.1.20 mrg replace_copy_if, replace_if, reverse, reverse_copy, rotate, rotate_copy,
6300 1.1.1.20 mrg search, search_n, set_difference, set_intersection,
6301 1.1.1.20 mrg set_symmetric_difference, set_union, shuffle, sort, sort_heap,
6302 1.1.1.20 mrg stable_partition, stable_sort, swap_ranges, transform, unique,
6303 1.1.1.20 mrg unique_copy, upper_bound): Convert into function objects.
6304 1.1.1.20 mrg * include/bits/ranges_algobase.h: (equal, copy, move, copy_n, fill_n,
6305 1.1.1.20 mrg fill, move_backward, copy_backward): Likewise.
6306 1.1.1.20 mrg * include/bits/ranges_uninitialized.h (uninitialized_default_construct,
6307 1.1.1.20 mrg uninitialized_default_construct_n, uninitialized_value_construct,
6308 1.1.1.20 mrg uninitialized_value_construct_n, uninitialized_copy,
6309 1.1.1.20 mrg uninitialized_copy_n, uninitialized_move, uninitialized_move_n,
6310 1.1.1.20 mrg uninitialized_fill, uninitialized_fill_n, construct_at, destroy_at,
6311 1.1.1.20 mrg destroy, destroy_n): Likewise.
6312 1.1.1.20 mrg
6313 1.1.1.20 mrg * include/bits/ranges_algo.h (ranges::__find_end): Fold into ...
6314 1.1.1.20 mrg (ranges::find_end): ... here.
6315 1.1.1.20 mrg (ranges::__lexicographical_compare): Fold into ...
6316 1.1.1.20 mrg (ranges::lexicographical_compare): ... here.
6317 1.1.1.20 mrg * include/bits/ranges_algobase.h (ranges::__equal): Fold into ...
6318 1.1.1.20 mrg (ranges::equal): ... here.
6319 1.1.1.18 mrg
6320 1.1.1.20 mrg 2020-02-15 Jonathan Wakely <jwakely (a] redhat.com>
6321 1.1.1.18 mrg
6322 1.1.1.20 mrg * include/bits/erase_if.h (__cpp_lib_erase_if): Define to 202002L.
6323 1.1.1.20 mrg * include/std/deque: Likewise.
6324 1.1.1.20 mrg * include/std/forward_list: Likewise.
6325 1.1.1.20 mrg * include/std/list: Likewise.
6326 1.1.1.20 mrg * include/std/string: Likewise.
6327 1.1.1.20 mrg * include/std/vector: Likewise.
6328 1.1.1.20 mrg * include/std/version: Likewise.
6329 1.1.1.20 mrg * testsuite/23_containers/deque/erasure.cc: Test for new value.
6330 1.1.1.20 mrg * testsuite/23_containers/forward_list/erasure.cc: Likewise.
6331 1.1.1.20 mrg * testsuite/23_containers/list/erasure.cc: Likewise.
6332 1.1.1.20 mrg * testsuite/23_containers/map/erasure.cc: Likewise.
6333 1.1.1.20 mrg * testsuite/23_containers/set/erasure.cc: Likewise.
6334 1.1.1.20 mrg * testsuite/23_containers/unordered_map/erasure.cc: Likewise.
6335 1.1.1.20 mrg * testsuite/23_containers/unordered_set/erasure.cc: Likewise.
6336 1.1.1.20 mrg * testsuite/23_containers/vector/erasure.cc: Likewise.
6337 1.1.1.16 mrg
6338 1.1.1.20 mrg 2020-02-15 Jonathan Wakely <jwakely (a] redhat.com>
6339 1.1.1.16 mrg
6340 1.1.1.20 mrg * include/bits/random.h (uniform_random_bit_generator): Require min()
6341 1.1.1.20 mrg and max() to be constant expressions and min() to be less than max().
6342 1.1.1.20 mrg * testsuite/26_numerics/random/concept.cc: Check additional cases.
6343 1.1.1.20 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
6344 1.1.1.15 mrg
6345 1.1.1.20 mrg 2020-02-13 Patrick Palka <ppalka (a] redhat.com>
6346 1.1.1.15 mrg
6347 1.1.1.20 mrg * include/Makefile.am: Add <bits/ranges_uninitialized.h>.
6348 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6349 1.1.1.20 mrg * include/bits/ranges_uninitialized.h: New header.
6350 1.1.1.20 mrg * include/std/memory: Include it.
6351 1.1.1.20 mrg * testsuite/20_util/specialized_algorithms/destroy/constrained.cc: New
6352 1.1.1.19 mrg test.
6353 1.1.1.20 mrg * .../uninitialized_copy/constrained.cc: New test.
6354 1.1.1.20 mrg * .../uninitialized_default_construct/constrained.cc: New test.
6355 1.1.1.20 mrg * .../uninitialized_fill/constrained.cc: New test.
6356 1.1.1.20 mrg * .../uninitialized_move/constrained.cc: New test.
6357 1.1.1.20 mrg * .../uninitialized_value_construct/constrained.cc: New test.
6358 1.1.1.20 mrg
6359 1.1.1.20 mrg * include/Makefile.am: Add bits/ranges_algobase.h
6360 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6361 1.1.1.20 mrg * bits/ranges_algo.h: Include <bits/ranges_algobase.h> and refactor
6362 1.1.1.20 mrg existing #includes.
6363 1.1.1.20 mrg (__detail::__is_normal_iterator, __detail::is_reverse_iterator,
6364 1.1.1.20 mrg __detail::__is_move_iterator, copy_result, move_result,
6365 1.1.1.20 mrg __equal, equal, copy_result, move_result, move_backward_result,
6366 1.1.1.20 mrg copy_backward_result, __copy_or_move_backward, __copy_or_move, copy,
6367 1.1.1.20 mrg move, copy_backward, move_backward, copy_n_result, copy_n, fill_n,
6368 1.1.1.20 mrg fill): Split out into ...
6369 1.1.1.20 mrg * bits/range_algobase.h: ... this new header.
6370 1.1.1.20 mrg
6371 1.1.1.20 mrg 2020-02-12 Patrick Palka <ppalka (a] redhat.com>
6372 1.1.1.20 mrg
6373 1.1.1.20 mrg LWG 3389 and LWG 3390
6374 1.1.1.20 mrg * include/bits/stl_iterator.h (move_move_iterator): Use std::move when
6375 1.1.1.20 mrg constructing the move_iterator with __i.
6376 1.1.1.20 mrg (counted_iterator::counted_iterator): Use std::move when initializing
6377 1.1.1.20 mrg M_current with __i.
6378 1.1.1.20 mrg * testsuite/24_iterators/counted_iterator/lwg3389.cc: New test.
6379 1.1.1.20 mrg * testsuite/24_iterators/move_iterator/lwg3390.cc: New test.
6380 1.1.1.20 mrg
6381 1.1.1.20 mrg 2020-02-12 Sandra Loosemore <sandra (a] codesourcery.com>
6382 1.1.1.20 mrg
6383 1.1.1.20 mrg PR libstdc++/79193
6384 1.1.1.20 mrg PR libstdc++/88999
6385 1.1.1.20 mrg
6386 1.1.1.20 mrg * configure: Regenerated.
6387 1.1.1.20 mrg
6388 1.1.1.20 mrg 2020-02-12 Franois Dumont <fdumont (a] gcc.gnu.org>
6389 1.1.1.20 mrg
6390 1.1.1.20 mrg * include/bits/hashtable.h
6391 1.1.1.20 mrg (_Hashtable<>(_Hashtable&&, std::allocator_type&)): Add
6392 1.1.1.20 mrg missing std namespace qualification to forward call.
6393 1.1.1.20 mrg
6394 1.1.1.20 mrg 2020-02-09 Jonathan Wakely <jwakely (a] redhat.com>
6395 1.1.1.15 mrg
6396 1.1.1.20 mrg * testsuite/20_util/function_objects/range.cmp/equal_to.cc: Fix
6397 1.1.1.20 mrg comment.
6398 1.1.1.20 mrg * testsuite/20_util/function_objects/range.cmp/less.ccL Likewise.
6399 1.1.1.15 mrg
6400 1.1.1.20 mrg * include/std/ranges: Fix non-ASCII characters in comment.
6401 1.1.1.19 mrg
6402 1.1.1.20 mrg * include/bits/range_cmp.h (__detail::__eq_builtin_ptr_cmp): Require
6403 1.1.1.20 mrg equality comparison to be valid and return bool.
6404 1.1.1.20 mrg (__detail::__less_builtin_ptr_cmp): Likewise for less-than comparison.
6405 1.1.1.20 mrg * testsuite/20_util/function_objects/range.cmp/equal_to.cc: Check
6406 1.1.1.20 mrg type with ambiguous conversion to fundamental types.
6407 1.1.1.20 mrg * testsuite/20_util/function_objects/range.cmp/less.cc: Likewise.
6408 1.1.1.20 mrg
6409 1.1.1.20 mrg 2020-02-07 Jonathan Wakely <jwakely (a] redhat.com>
6410 1.1.1.20 mrg
6411 1.1.1.20 mrg * include/bits/iterator_concepts.h (iter_difference_t, iter_value_t):
6412 1.1.1.20 mrg Use remove_cvref_t.
6413 1.1.1.20 mrg (readable_traits): Rename to indirectly_readable_traits.
6414 1.1.1.20 mrg (readable): Rename to indirectly_readable.
6415 1.1.1.20 mrg (writable): Rename to indirectly_writable.
6416 1.1.1.20 mrg (__detail::__iter_exchange_move): Do not use remove_reference_t.
6417 1.1.1.20 mrg (indirectly_swappable): Adjust requires expression parameter types.
6418 1.1.1.20 mrg expression.
6419 1.1.1.20 mrg * include/bits/ranges_algo.h (ranges::transform, ranges::replace)
6420 1.1.1.20 mrg (ranges::replace_if, ranges::generate_n, ranges::generate)
6421 1.1.1.20 mrg (ranges::remove): Use new name for writable.
6422 1.1.1.20 mrg * include/bits/stl_iterator.h (__detail::__common_iter_has_arrow):
6423 1.1.1.20 mrg Use new name for readable.
6424 1.1.1.20 mrg * include/ext/pointer.h (readable_traits<_Pointer_adapter<P>>): Use
6425 1.1.1.20 mrg new name for readable_traits.
6426 1.1.1.20 mrg * testsuite/24_iterators/associated_types/readable.traits.cc: Likewise.
6427 1.1.1.20 mrg * testsuite/24_iterators/indirect_callable/projected.cc: Adjust for
6428 1.1.1.20 mrg new definition of indirectly_readable.
6429 1.1.1.20 mrg
6430 1.1.1.20 mrg * include/bits/stl_iterator.h (__detail::__common_iter_ptr): Change
6431 1.1.1.20 mrg to take parameters of common_iterator, instead of the common_iterator
6432 1.1.1.20 mrg type itself. Fix argument for __common_iter_has_arrow constraint.
6433 1.1.1.20 mrg (iterator_traits<common_iterator<I, S>>::pointer): Adjust.
6434 1.1.1.20 mrg
6435 1.1.1.20 mrg 2020-02-07 Jonathan Wakely <jwakely (a] redhat.com>
6436 1.1.1.20 mrg
6437 1.1.1.20 mrg * include/std/ranges (iota_view): Add braces to prevent -Wempty-body
6438 1.1.1.20 mrg warning.
6439 1.1.1.20 mrg (basic_istream_view::_Iterator::operator++()): Add missing return.
6440 1.1.1.20 mrg
6441 1.1.1.20 mrg 2020-02-07 Patrick Palka <ppalka (a] redhat.com>
6442 1.1.1.20 mrg
6443 1.1.1.20 mrg * include/bits/ranges_algo.h: Remove extraneous &&.
6444 1.1.1.20 mrg
6445 1.1.1.20 mrg * include/std/ranges (ranges::__detail::__stream_extractable,
6446 1.1.1.20 mrg ranges::basic_istream_view, ranges::istream_view): Define.
6447 1.1.1.20 mrg * testsuite/std/ranges/istream_view: New test.
6448 1.1.1.20 mrg
6449 1.1.1.20 mrg Implement C++20 range adaptors
6450 1.1.1.20 mrg * include/std/ranges: Include <bits/refwrap.h> and <tuple>.
6451 1.1.1.20 mrg (subrange::_S_store_size): Mark as const instead of constexpr to
6452 1.1.1.20 mrg avoid what seems to be a bug in GCC.
6453 1.1.1.20 mrg (__detail::__box): Give it defaulted copy and move constructors.
6454 1.1.1.20 mrg (ranges::views::_Single::operator()): Mark constexpr.
6455 1.1.1.20 mrg (ranges::views::_Iota::operator()): Mark constexpr.
6456 1.1.1.20 mrg (__detail::Empty): Define.
6457 1.1.1.20 mrg (ranges::views::__closure::_RangeAdaptor,
6458 1.1.1.20 mrg ranges::views::__closure::_RangeAdaptorClosure, ref_view, all_view,
6459 1.1.1.20 mrg ranges::views::all, ranges::__detail::find_if,
6460 1.1.1.20 mrg ranges::__detail::find_if_not, ranges::__detail::mismatch,
6461 1.1.1.20 mrg ranges::detail::min, filter_view, ranges::views::filter, transform_view,
6462 1.1.1.20 mrg ranges::views::transform, take_view, ranges::views::take,
6463 1.1.1.20 mrg take_while_view, ranges::views::take_while, drop_view,
6464 1.1.1.20 mrg ranges::views::drop, join_view, ranges::views::join,
6465 1.1.1.20 mrg __detail::require_constant, __detail::tiny_range, split_view,
6466 1.1.1.20 mrg ranges::views::split, ranges::views::_Counted, ranges::views::counted,
6467 1.1.1.20 mrg common_view, ranges::views::common, reverse_view,
6468 1.1.1.20 mrg ranges::views::reverse,
6469 1.1.1.20 mrg ranges::views::__detail::__is_reversible_subrange,
6470 1.1.1.20 mrg ranges::views::__detail::__is_reverse_view, reverse_view,
6471 1.1.1.20 mrg ranges::views::reverse, __detail::__has_tuple_element, elements_view,
6472 1.1.1.20 mrg ranges::views::elements, ranges::views::keys, ranges::views::values):
6473 1.1.1.20 mrg Define.
6474 1.1.1.20 mrg (views): Alias for ranges::views.
6475 1.1.1.20 mrg (tuple_size<ranges::subrange<>>, tuple_element<0, ranges::subrange>,
6476 1.1.1.20 mrg tuple_element<1, ranges::subrange>): New partial specializations.
6477 1.1.1.20 mrg * testsuite/std/ranges/adaptors/all.cc: New test.
6478 1.1.1.20 mrg * testsuite/std/ranges/adaptors/common.cc: Likewise.
6479 1.1.1.20 mrg * testsuite/std/ranges/adaptors/counted.cc: Likewise.
6480 1.1.1.20 mrg * testsuite/std/ranges/adaptors/drop.cc: Likewise.
6481 1.1.1.20 mrg * testsuite/std/ranges/adaptors/drop_while.cc: Likewise.
6482 1.1.1.20 mrg * testsuite/std/ranges/adaptors/elements.cc: Likewise.
6483 1.1.1.20 mrg * testsuite/std/ranges/adaptors/filter.cc: Likewise.
6484 1.1.1.20 mrg * testsuite/std/ranges/adaptors/join.cc: Likewise.
6485 1.1.1.20 mrg * testsuite/std/ranges/adaptors/reverse.cc: Likewise.
6486 1.1.1.20 mrg * testsuite/std/ranges/adaptors/split.cc: Likewise.
6487 1.1.1.20 mrg * testsuite/std/ranges/adaptors/take.cc: Likewise.
6488 1.1.1.20 mrg * testsuite/std/ranges/adaptors/take_while.cc: Likewise.
6489 1.1.1.20 mrg * testsuite/std/ranges/adaptors/transform.cc: Likewise.
6490 1.1.1.20 mrg
6491 1.1.1.20 mrg 2020-02-07 Jonathan Wakely <jwakely (a] redhat.com>
6492 1.1.1.20 mrg
6493 1.1.1.20 mrg * libsupc++/compare (__cmp_cat::type): Define typedef for underlying
6494 1.1.1.20 mrg type of enumerations and comparison category types.
6495 1.1.1.20 mrg (__cmp_cat::_Ord, __cmp_cat::_Ncmp): Add underlying type.
6496 1.1.1.20 mrg (__cmp_cat::_Ncmp::unordered): Change value to 2.
6497 1.1.1.20 mrg (partial_ordering::_M_value, weak_ordering::_M_value)
6498 1.1.1.20 mrg (strong_ordering::_M_value): Change type to __cmp_cat::type.
6499 1.1.1.20 mrg (partial_ordering::_M_is_ordered): Remove data member.
6500 1.1.1.20 mrg (partial_ordering): Use second bit of _M_value for unordered. Adjust
6501 1.1.1.20 mrg comparison operators.
6502 1.1.1.20 mrg (weak_ordering::operator partial_ordering): Simplify to remove
6503 1.1.1.20 mrg branches.
6504 1.1.1.20 mrg (operator<=>(unspecified, weak_ordering)): Likewise.
6505 1.1.1.20 mrg (strong_ordering::operator partial_ordering): Likewise.
6506 1.1.1.20 mrg (strong_ordering::operator weak_ordering): Likewise.
6507 1.1.1.20 mrg (operator<=>(unspecified, strong_ordering)): Likewise.
6508 1.1.1.20 mrg * testsuite/18_support/comparisons/categories/partialord.cc: New test.
6509 1.1.1.20 mrg * testsuite/18_support/comparisons/categories/strongord.cc: New test.
6510 1.1.1.20 mrg * testsuite/18_support/comparisons/categories/weakord.cc: New test.
6511 1.1.1.20 mrg
6512 1.1.1.20 mrg * include/std/ranges (iota_view::_Iterator): Fix typo in name of
6513 1.1.1.20 mrg __cpp_lib_three_way_comparison macro and use deduced return type for
6514 1.1.1.20 mrg operator<=>.
6515 1.1.1.20 mrg * testsuite/std/ranges/iota/iterator.cc: New test.
6516 1.1.1.19 mrg
6517 1.1.1.20 mrg 2020-02-07 Patrick Palka <ppalka (a] redhat.com>
6518 1.1.1.20 mrg Jonathan Wakely <jwakely (a] redhat.com>
6519 1.1.1.19 mrg
6520 1.1.1.20 mrg Implement C++20 constrained algorithms
6521 1.1.1.20 mrg * include/Makefile.am: Add new header.
6522 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6523 1.1.1.20 mrg * include/std/algorithm: Include <bits/ranges_algo.h>.
6524 1.1.1.20 mrg * include/bits/ranges_algo.h: New file.
6525 1.1.1.20 mrg * testsuite/25_algorithms/adjacent_find/constrained.cc: New test.
6526 1.1.1.20 mrg * testsuite/25_algorithms/all_of/constrained.cc: New test.
6527 1.1.1.20 mrg * testsuite/25_algorithms/any_of/constrained.cc: New test.
6528 1.1.1.20 mrg * testsuite/25_algorithms/binary_search/constrained.cc: New test.
6529 1.1.1.20 mrg * testsuite/25_algorithms/copy/constrained.cc: New test.
6530 1.1.1.20 mrg * testsuite/25_algorithms/copy_backward/constrained.cc: New test.
6531 1.1.1.20 mrg * testsuite/25_algorithms/copy_if/constrained.cc: New test.
6532 1.1.1.20 mrg * testsuite/25_algorithms/copy_n/constrained.cc: New test.
6533 1.1.1.20 mrg * testsuite/25_algorithms/count/constrained.cc: New test.
6534 1.1.1.20 mrg * testsuite/25_algorithms/count_if/constrained.cc: New test.
6535 1.1.1.20 mrg * testsuite/25_algorithms/equal/constrained.cc: New test.
6536 1.1.1.20 mrg * testsuite/25_algorithms/equal_range/constrained.cc: New test.
6537 1.1.1.20 mrg * testsuite/25_algorithms/fill/constrained.cc: New test.
6538 1.1.1.20 mrg * testsuite/25_algorithms/fill_n/constrained.cc: New test.
6539 1.1.1.20 mrg * testsuite/25_algorithms/find/constrained.cc: New test.
6540 1.1.1.20 mrg * testsuite/25_algorithms/find_end/constrained.cc: New test.
6541 1.1.1.20 mrg * testsuite/25_algorithms/find_first_of/constrained.cc: New test.
6542 1.1.1.20 mrg * testsuite/25_algorithms/find_if/constrained.cc: New test.
6543 1.1.1.20 mrg * testsuite/25_algorithms/find_if_not/constrained.cc: New test.
6544 1.1.1.20 mrg * testsuite/25_algorithms/for_each/constrained.cc: New test.
6545 1.1.1.20 mrg * testsuite/25_algorithms/generate/constrained.cc: New test.
6546 1.1.1.20 mrg * testsuite/25_algorithms/generate_n/constrained.cc: New test.
6547 1.1.1.20 mrg * testsuite/25_algorithms/heap/constrained.cc: New test.
6548 1.1.1.20 mrg * testsuite/25_algorithms/includes/constrained.cc: New test.
6549 1.1.1.20 mrg * testsuite/25_algorithms/inplace_merge/constrained.cc: New test.
6550 1.1.1.20 mrg * testsuite/25_algorithms/is_partitioned/constrained.cc: New test.
6551 1.1.1.20 mrg * testsuite/25_algorithms/is_permutation/constrained.cc: New test.
6552 1.1.1.20 mrg * testsuite/25_algorithms/is_sorted/constrained.cc: New test.
6553 1.1.1.20 mrg * testsuite/25_algorithms/is_sorted_until/constrained.cc: New test.
6554 1.1.1.20 mrg * testsuite/25_algorithms/lexicographical_compare/constrained.cc: New
6555 1.1.1.19 mrg test.
6556 1.1.1.20 mrg * testsuite/25_algorithms/lower_bound/constrained.cc: New test.
6557 1.1.1.20 mrg * testsuite/25_algorithms/max/constrained.cc: New test.
6558 1.1.1.20 mrg * testsuite/25_algorithms/max_element/constrained.cc: New test.
6559 1.1.1.20 mrg * testsuite/25_algorithms/merge/constrained.cc: New test.
6560 1.1.1.20 mrg * testsuite/25_algorithms/min/constrained.cc: New test.
6561 1.1.1.20 mrg * testsuite/25_algorithms/min_element/constrained.cc: New test.
6562 1.1.1.20 mrg * testsuite/25_algorithms/minmax/constrained.cc: New test.
6563 1.1.1.20 mrg * testsuite/25_algorithms/minmax_element/constrained.cc: New test.
6564 1.1.1.20 mrg * testsuite/25_algorithms/mismatch/constrained.cc: New test.
6565 1.1.1.20 mrg * testsuite/25_algorithms/move/constrained.cc: New test.
6566 1.1.1.20 mrg * testsuite/25_algorithms/move_backward/constrained.cc: New test.
6567 1.1.1.20 mrg * testsuite/25_algorithms/next_permutation/constrained.cc: New test.
6568 1.1.1.20 mrg * testsuite/25_algorithms/none_of/constrained.cc: New test.
6569 1.1.1.20 mrg * testsuite/25_algorithms/nth_element/constrained.cc: New test.
6570 1.1.1.20 mrg * testsuite/25_algorithms/partial_sort/constrained.cc: New test.
6571 1.1.1.20 mrg * testsuite/25_algorithms/partial_sort_copy/constrained.cc: New test.
6572 1.1.1.20 mrg * testsuite/25_algorithms/partition/constrained.cc: New test.
6573 1.1.1.20 mrg * testsuite/25_algorithms/partition_copy/constrained.cc: New test.
6574 1.1.1.20 mrg * testsuite/25_algorithms/partition_point/constrained.cc: New test.
6575 1.1.1.20 mrg * testsuite/25_algorithms/prev_permutation/constrained.cc: New test.
6576 1.1.1.20 mrg * testsuite/25_algorithms/remove/constrained.cc: New test.
6577 1.1.1.20 mrg * testsuite/25_algorithms/remove_copy/constrained.cc: New test.
6578 1.1.1.20 mrg * testsuite/25_algorithms/remove_copy_if/constrained.cc: New test.
6579 1.1.1.20 mrg * testsuite/25_algorithms/remove_if/constrained.cc: New test.
6580 1.1.1.20 mrg * testsuite/25_algorithms/replace/constrained.cc: New test.
6581 1.1.1.20 mrg * testsuite/25_algorithms/replace_copy/constrained.cc: New test.
6582 1.1.1.20 mrg * testsuite/25_algorithms/replace_copy_if/constrained.cc: New test.
6583 1.1.1.20 mrg * testsuite/25_algorithms/replace_if/constrained.cc: New test.
6584 1.1.1.20 mrg * testsuite/25_algorithms/reverse/constrained.cc: New test.
6585 1.1.1.20 mrg * testsuite/25_algorithms/reverse_copy/constrained.cc: New test.
6586 1.1.1.20 mrg * testsuite/25_algorithms/rotate/constrained.cc: New test.
6587 1.1.1.20 mrg * testsuite/25_algorithms/rotate_copy/constrained.cc: New test.
6588 1.1.1.20 mrg * testsuite/25_algorithms/search/constrained.cc: New test.
6589 1.1.1.20 mrg * testsuite/25_algorithms/search_n/constrained.cc: New test.
6590 1.1.1.20 mrg * testsuite/25_algorithms/set_difference/constrained.cc: New test.
6591 1.1.1.20 mrg * testsuite/25_algorithms/set_intersection/constrained.cc: New test.
6592 1.1.1.20 mrg * testsuite/25_algorithms/set_symmetric_difference/constrained.cc: New
6593 1.1.1.20 mrg test.
6594 1.1.1.20 mrg * testsuite/25_algorithms/set_union/constrained.cc: New test.
6595 1.1.1.20 mrg * testsuite/25_algorithms/shuffle/constrained.cc: New test.
6596 1.1.1.20 mrg * testsuite/25_algorithms/sort/constrained.cc: New test.
6597 1.1.1.20 mrg * testsuite/25_algorithms/stable_partition/constrained.cc: New test.
6598 1.1.1.20 mrg * testsuite/25_algorithms/stable_sort/constrained.cc: New test.
6599 1.1.1.20 mrg * testsuite/25_algorithms/swap_ranges/constrained.cc: New test.
6600 1.1.1.20 mrg * testsuite/25_algorithms/transform/constrained.cc: New test.
6601 1.1.1.20 mrg * testsuite/25_algorithms/unique/constrained.cc: New test.
6602 1.1.1.20 mrg * testsuite/25_algorithms/unique_copy/constrained.cc: New test.
6603 1.1.1.20 mrg * testsuite/25_algorithms/upper_bound/constrained.cc: New test.
6604 1.1.1.20 mrg
6605 1.1.1.20 mrg 2020-02-06 Jonathan Wakely <jwakely (a] redhat.com>
6606 1.1.1.20 mrg
6607 1.1.1.20 mrg * include/bits/stl_iterator.h (__detail::__common_iter_ptr): Fix PR
6608 1.1.1.20 mrg number in comment. Fix indentation.
6609 1.1.1.20 mrg
6610 1.1.1.20 mrg * include/bits/stl_algobase.h (__iter_swap, __iter_swap<true>): Remove
6611 1.1.1.20 mrg redundant _GLIBCXX20_CONSTEXPR.
6612 1.1.1.20 mrg
6613 1.1.1.20 mrg * include/std/ranges (viewable_range): Replace decay_t with
6614 1.1.1.20 mrg remove_cvref_t (LWG 3375).
6615 1.1.1.20 mrg
6616 1.1.1.20 mrg 2020-02-05 Jonathan Wakely <jwakely (a] redhat.com>
6617 1.1.1.20 mrg
6618 1.1.1.20 mrg * include/bits/iterator_concepts.h (iter_reference_t)
6619 1.1.1.20 mrg (iter_rvalue_reference_t, iter_common_reference_t, indirect_result_t):
6620 1.1.1.20 mrg Remove workarounds for PR c++/67704.
6621 1.1.1.20 mrg * testsuite/24_iterators/aliases.cc: New test.
6622 1.1.1.20 mrg
6623 1.1.1.20 mrg 2020-02-05 Patrick Palka <ppalka (a] redhat.com>
6624 1.1.1.20 mrg
6625 1.1.1.20 mrg * include/bits/stl_iterator.h (move_iterator::move_iterator): Move __i
6626 1.1.1.20 mrg when initializing _M_current.
6627 1.1.1.20 mrg (move_iterator::base): Split into two overloads differing in
6628 1.1.1.20 mrg ref-qualifiers as in P1207R4 for C++20.
6629 1.1.1.15 mrg
6630 1.1.1.20 mrg 2020-02-04 Jonathan Wakely <jwakely (a] redhat.com>
6631 1.1.1.15 mrg
6632 1.1.1.20 mrg * include/std/functional (_GLIBCXX_NOT_FN_CALL_OP): Un-define after
6633 1.1.1.20 mrg use.
6634 1.1.1.20 mrg
6635 1.1.1.20 mrg PR libstdc++/93562
6636 1.1.1.20 mrg * include/bits/unique_ptr.h (__uniq_ptr_impl::swap): Define.
6637 1.1.1.20 mrg (unique_ptr::swap, unique_ptr<T[], D>::swap): Call it.
6638 1.1.1.20 mrg * testsuite/20_util/unique_ptr/modifiers/93562.cc: New test.
6639 1.1.1.20 mrg
6640 1.1.1.20 mrg 2020-02-01 Andrew Burgess <andrew.burgess (a] embecosm.com>
6641 1.1.1.20 mrg
6642 1.1.1.20 mrg * configure: Regenerate.
6643 1.1.1.20 mrg
6644 1.1.1.20 mrg 2020-01-31 Patrick Palka <ppalka (a] redhat.com>
6645 1.1.1.20 mrg
6646 1.1.1.20 mrg * testsuite/24_iterators/range_operations/distance.cc: Do not assume
6647 1.1.1.20 mrg test_range::end() returns the same type as test_range::begin().
6648 1.1.1.20 mrg * testsuite/24_iterators/range_operations/next.cc: Likewise.
6649 1.1.1.20 mrg * testsuite/24_iterators/range_operations/prev.cc: Likewise.
6650 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (__gnu_test::test_range::end):
6651 1.1.1.20 mrg Always return a sentinel<I>.
6652 1.1.1.20 mrg
6653 1.1.1.20 mrg 2020-01-29 Jonathan Wakely <jwakely (a] redhat.com>
6654 1.1.1.20 mrg
6655 1.1.1.20 mrg PR libstdc++/92895
6656 1.1.1.20 mrg * include/std/stop_token (stop_token::stop_possible()): Call new
6657 1.1.1.20 mrg _M_stop_possible() function.
6658 1.1.1.20 mrg (stop_token::stop_requested()): Do not use stop_possible().
6659 1.1.1.20 mrg (stop_token::binary_semaphore): New class, as temporary stand-in for
6660 1.1.1.20 mrg std::binary_semaphore.
6661 1.1.1.20 mrg (stop_token::_Stop_cb::_M_callback): Add noexcept to type.
6662 1.1.1.20 mrg (stop_token::_Stop_cb::_M_destroyed, stop_token::_Stop_cb::_M_done):
6663 1.1.1.20 mrg New data members for symchronization with stop_callback destruction.
6664 1.1.1.20 mrg (stop_token::_Stop_cb::_Stop_cb): Make non-template.
6665 1.1.1.20 mrg (stop_token::_Stop_cb::_M_linked, stop_token::_Stop_cb::_S_execute):
6666 1.1.1.20 mrg Remove.
6667 1.1.1.20 mrg (stop_token::_Stop_cb::_M_run): New member function.
6668 1.1.1.20 mrg (stop_token::_Stop_state::_M_stopped, stop_token::_Stop_state::_M_mtx):
6669 1.1.1.20 mrg Remove.
6670 1.1.1.20 mrg (stop_token::_Stop_state::_M_owners): New data member to track
6671 1.1.1.20 mrg reference count for ownership.
6672 1.1.1.20 mrg (stop_token::_Stop_state::_M_value): New data member combining a
6673 1.1.1.20 mrg spinlock, the stop requested flag, and the reference count for
6674 1.1.1.20 mrg associated stop_source objects.
6675 1.1.1.20 mrg (stop_token::_Stop_state::_M_requester): New data member for
6676 1.1.1.20 mrg synchronization with stop_callback destruction.
6677 1.1.1.20 mrg (stop_token::_Stop_state::_M_stop_possible()): New member function.
6678 1.1.1.20 mrg (stop_token::_Stop_state::_M_stop_requested()): Inspect relevant bit
6679 1.1.1.20 mrg of _M_value.
6680 1.1.1.20 mrg (stop_token::_Stop_state::_M_add_owner)
6681 1.1.1.20 mrg (stop_token::_Stop_state::_M_release_ownership)
6682 1.1.1.20 mrg (stop_token::_Stop_state::_M_add_ssrc)
6683 1.1.1.20 mrg (stop_token::_Stop_state::_M_sub_ssrc): New member functions for
6684 1.1.1.20 mrg updating reference counts.
6685 1.1.1.20 mrg (stop_token::_Stop_state::_M_lock, stop_token::_Stop_state::_M_unlock)
6686 1.1.1.20 mrg (stop_token::_Stop_state::_M_lock, stop_token::_Stop_state::_M_unlock)
6687 1.1.1.20 mrg (stop_token::_Stop_state::_M_try_lock)
6688 1.1.1.20 mrg (stop_token::_Stop_state::_M_try_lock_and_stop)
6689 1.1.1.20 mrg (stop_token::_Stop_state::_M_do_try_lock): New member functions for
6690 1.1.1.20 mrg managing spinlock.
6691 1.1.1.20 mrg (stop_token::_Stop_state::_M_request_stop): Use atomic operations to
6692 1.1.1.20 mrg read and update state. Release lock while running callbacks. Use new
6693 1.1.1.20 mrg data members to synchronize with callback destruction.
6694 1.1.1.20 mrg (stop_token::_Stop_state::_M_remove_callback): Likewise.
6695 1.1.1.20 mrg (stop_token::_Stop_state::_M_register_callback): Use atomic operations
6696 1.1.1.20 mrg to read and update state.
6697 1.1.1.20 mrg (stop_token::_Stop_state_ref): Handle type to manage _Stop_state,
6698 1.1.1.20 mrg replacing shared_ptr.
6699 1.1.1.20 mrg (stop_source::stop_source(const stop_source&)): Update reference count.
6700 1.1.1.20 mrg (stop_source::operator=(const stop_source&)): Likewise.
6701 1.1.1.20 mrg (stop_source::~stop_source()): Likewise.
6702 1.1.1.20 mrg (stop_source::stop_source(stop_source&&)): Define as defaulted.
6703 1.1.1.20 mrg (stop_source::operator=(stop_source&&)): Establish postcondition on
6704 1.1.1.20 mrg parameter.
6705 1.1.1.20 mrg (stop_callback): Enforce preconditions on template parameter. Replace
6706 1.1.1.20 mrg base class with data member of new _Cb_impl type.
6707 1.1.1.20 mrg (stop_callback::stop_callback(const stop_token&, Cb&&))
6708 1.1.1.20 mrg (stop_callback::stop_callback(stop_token&&, Cb&&)): Fix TOCTTOU race.
6709 1.1.1.20 mrg (stop_callback::_Cb_impl): New type wrapping _Callback member and
6710 1.1.1.20 mrg defining the _S_execute member function.
6711 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/deadlock-mt.cc: New
6712 1.1.1.20 mrg test.
6713 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/deadlock.cc: New test.
6714 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/destroy.cc: New test.
6715 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/destructible_neg.cc:
6716 1.1.1.19 mrg New test.
6717 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/invocable_neg.cc: New
6718 1.1.1.20 mrg test.
6719 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_callback/invoke.cc: New test.
6720 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_source/assign.cc: New test.
6721 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_token/stop_possible.cc: New
6722 1.1.1.20 mrg test.
6723 1.1.1.15 mrg
6724 1.1.1.20 mrg * libsupc++/compare (__detail::__3way_builtin_ptr_cmp): Use
6725 1.1.1.20 mrg three_way_comparable_with.
6726 1.1.1.20 mrg (__detail::__3way_cmp_with): Remove workaround for fixed bug.
6727 1.1.1.20 mrg (compare_three_way::operator()): Remove redundant constraint from
6728 1.1.1.20 mrg requires-clause.
6729 1.1.1.20 mrg (__detail::_Synth3way::operator()): Use three_way_comparable_with
6730 1.1.1.20 mrg instead of workaround.
6731 1.1.1.20 mrg * testsuite/18_support/comparisons/object/93479.cc: Prune extra
6732 1.1.1.20 mrg output due to simplified constraints on compare_three_way::operator().
6733 1.1.1.20 mrg
6734 1.1.1.20 mrg PR libstdc++/93479
6735 1.1.1.20 mrg * libsupc++/compare (__3way_builtin_ptr_cmp): Require <=> to be valid.
6736 1.1.1.20 mrg * testsuite/18_support/comparisons/object/93479.cc: New test.
6737 1.1.1.20 mrg
6738 1.1.1.20 mrg * testsuite/std/ranges/access/end.cc: Do not assume test_range::end()
6739 1.1.1.20 mrg returns the same type as test_range::begin(). Add comments.
6740 1.1.1.20 mrg * testsuite/std/ranges/access/rbegin.cc: Likewise.
6741 1.1.1.20 mrg * testsuite/std/ranges/access/rend.cc: Likewise.
6742 1.1.1.20 mrg * testsuite/std/ranges/range.cc: Do not assume the sentinel for
6743 1.1.1.20 mrg test_range is the same as its iterator type.
6744 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h (test_range::sentinel): Add
6745 1.1.1.20 mrg operator- overloads to satisfy sized_sentinel_for when the iterator
6746 1.1.1.20 mrg satisfies random_access_iterator.
6747 1.1.1.15 mrg
6748 1.1.1.20 mrg 2020-01-28 Jonathan Wakely <jwakely (a] redhat.com>
6749 1.1.1.15 mrg
6750 1.1.1.20 mrg PR libstdc++/93470
6751 1.1.1.20 mrg * include/bits/refwrap.h (reference_wrapper::operator()): Restrict
6752 1.1.1.20 mrg static assertion to object types.
6753 1.1.1.15 mrg
6754 1.1.1.20 mrg PR libstdc++/93325
6755 1.1.1.20 mrg * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Use AC_SEARCH_LIBS for
6756 1.1.1.20 mrg clock_gettime instead of explicit glibc version check.
6757 1.1.1.20 mrg * configure: Regenerate.
6758 1.1.1.13 mrg
6759 1.1.1.20 mrg 2020-01-28 Martin Liska <mliska (a] suse.cz>
6760 1.1.1.13 mrg
6761 1.1.1.20 mrg PR libstdc++/93478
6762 1.1.1.20 mrg * include/std/atomic: Fix typo.
6763 1.1.1.20 mrg * include/std/optional: Likewise.
6764 1.1.1.18 mrg
6765 1.1.1.20 mrg 2020-01-27 Andrew Burgess <andrew.burgess (a] embecosm.com>
6766 1.1.1.18 mrg
6767 1.1.1.19 mrg * configure: Regenerate.
6768 1.1.1.18 mrg
6769 1.1.1.20 mrg 2020-01-27 Jonathan Wakely <jwakely (a] redhat.com>
6770 1.1.1.18 mrg
6771 1.1.1.20 mrg PR libstdc++/93426
6772 1.1.1.20 mrg * include/std/span (span): Fix deduction guide.
6773 1.1.1.20 mrg * testsuite/23_containers/span/deduction.cc: New test.
6774 1.1.1.18 mrg
6775 1.1.1.20 mrg 2020-01-24 Jonathan Wakely <jwakely (a] redhat.com>
6776 1.1.1.19 mrg
6777 1.1.1.20 mrg * libsupc++/compare (__cmp_cat::_Eq): Remove enumeration type.
6778 1.1.1.20 mrg (__cmp_cat::_Ord::equivalent): Add enumerator.
6779 1.1.1.20 mrg (__cmp_cat::_Ord::_Less, __cmp_cat::_Ord::_Greater): Rename to less
6780 1.1.1.20 mrg and greater.
6781 1.1.1.20 mrg (partial_ordering, weak_ordering, strong_ordering): Remove
6782 1.1.1.20 mrg constructors taking __cmp_cat::_Eq parameters. Use renamed
6783 1.1.1.20 mrg enumerators.
6784 1.1.1.19 mrg
6785 1.1.1.20 mrg 2020-01-24 Maciej W. Rozycki <macro (a] wdc.com>
6786 1.1.1.18 mrg
6787 1.1.1.20 mrg * acinclude.m4: Handle `--with-toolexeclibdir='.
6788 1.1.1.20 mrg * Makefile.in: Regenerate.
6789 1.1.1.20 mrg * aclocal.m4: Regenerate.
6790 1.1.1.20 mrg * configure: Regenerate.
6791 1.1.1.20 mrg * doc/Makefile.in: Regenerate.
6792 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6793 1.1.1.20 mrg * libsupc++/Makefile.in: Regenerate.
6794 1.1.1.20 mrg * po/Makefile.in: Regenerate.
6795 1.1.1.20 mrg * python/Makefile.in: Regenerate.
6796 1.1.1.20 mrg * src/Makefile.in: Regenerate.
6797 1.1.1.20 mrg * src/c++11/Makefile.in: Regenerate.
6798 1.1.1.20 mrg * src/c++17/Makefile.in: Regenerate.
6799 1.1.1.20 mrg * src/c++98/Makefile.in: Regenerate.
6800 1.1.1.20 mrg * src/filesystem/Makefile.in: Regenerate.
6801 1.1.1.20 mrg * testsuite/Makefile.in: Regenerate.
6802 1.1.1.19 mrg
6803 1.1.1.20 mrg 2020-01-23 Alexandre Oliva <oliva (a] adacore.com>
6804 1.1.1.19 mrg
6805 1.1.1.20 mrg * crossconfig.m4 (GLIBCXX_CHECK_MATH_DECL): Reject macros.
6806 1.1.1.20 mrg * configure: Rebuild.
6807 1.1.1.19 mrg
6808 1.1.1.20 mrg * testsuite/27_io/fpos/mbstate_t/1.cc: Zero-init mbstate_t.
6809 1.1.1.19 mrg
6810 1.1.1.20 mrg 2020-01-23 Jonathan Wakely <jwakely (a] redhat.com>
6811 1.1.1.18 mrg
6812 1.1.1.20 mrg PR libstdc++/91947
6813 1.1.1.20 mrg * include/Makefile.am (${host_builddir}/largefile-config.h): Simplify
6814 1.1.1.20 mrg rule.
6815 1.1.1.20 mrg * include/Makefile.in: Regenerate.
6816 1.1.1.19 mrg
6817 1.1.1.20 mrg 2020-01-20 Jonathan Wakely <jwakely (a] redhat.com>
6818 1.1.1.19 mrg
6819 1.1.1.20 mrg * doc/xml/faq.xml: Fix grammar.
6820 1.1.1.20 mrg * doc/xml/manual/appendix_contributing.xml: Improve instructions.
6821 1.1.1.20 mrg * doc/xml/manual/spine.xml: Update copyright years.
6822 1.1.1.20 mrg * doc/html/*: Regenerate.
6823 1.1.1.19 mrg
6824 1.1.1.20 mrg 2020-01-19 Eric S. Raymond <esr (a] thyrsus.com>
6825 1.1.1.19 mrg
6826 1.1.1.20 mrg * doc/xml/faq.xml: Update for SVN -> Git transition.
6827 1.1.1.20 mrg * doc/xml/manual/appendix_contributing.xml: Likewise.
6828 1.1.1.20 mrg * doc/xml/manual/status_cxx1998.xml: Likewise.
6829 1.1.1.20 mrg * doc/xml/manual/status_cxx2011.xml: Likewise.
6830 1.1.1.20 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
6831 1.1.1.20 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
6832 1.1.1.20 mrg * doc/xml/manual/status_cxx2020.xml: Likewise.
6833 1.1.1.20 mrg * doc/xml/manual/status_cxxtr1.xml: Likewise.
6834 1.1.1.20 mrg * doc/xml/manual/status_cxxtr24733.xml: Likewise.
6835 1.1.1.18 mrg
6836 1.1.1.20 mrg 2020-01-18 Iain Sandoe <iain (a] sandoe.co.uk>
6837 1.1.1.18 mrg
6838 1.1.1.20 mrg * include/Makefile.am: Add coroutine to the std set.
6839 1.1.1.20 mrg * include/Makefile.in: Regenerated.
6840 1.1.1.20 mrg * include/std/coroutine: New file.
6841 1.1.1.19 mrg
6842 1.1.1.20 mrg 2020-01-17 Jonathan Wakely <jwakely (a] redhat.com>
6843 1.1.1.19 mrg
6844 1.1.1.20 mrg PR libstdc++/92376
6845 1.1.1.20 mrg * include/bits/c++config: Only do PSTL config when the header is
6846 1.1.1.20 mrg present, to fix freestanding.
6847 1.1.1.20 mrg * libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Declare allocation
6848 1.1.1.20 mrg functions if they were detected by configure.
6849 1.1.1.19 mrg
6850 1.1.1.20 mrg 2020-01-16 Kai-Uwe Eckhardt <kuehro (a] gmx.de>
6851 1.1.1.20 mrg Matthew Bauer <mjbauer95 (a] gmail.com>
6852 1.1.1.19 mrg Jonathan Wakely <jwakely (a] redhat.com>
6853 1.1.1.19 mrg
6854 1.1.1.20 mrg PR bootstrap/64271 (partial)
6855 1.1.1.20 mrg * config/os/bsd/netbsd/ctype_base.h (ctype_base::mask): Change type
6856 1.1.1.20 mrg to unsigned short.
6857 1.1.1.20 mrg (ctype_base::alpha, ctype_base::digit, ctype_base::xdigit)
6858 1.1.1.20 mrg (ctype_base::print, ctype_base::graph, ctype_base::alnum): Sync
6859 1.1.1.20 mrg definitions with NetBSD upstream.
6860 1.1.1.20 mrg (ctype_base::blank): Use _CTYPE_BL.
6861 1.1.1.20 mrg * config/os/bsd/netbsd/ctype_configure_char.cc (_C_ctype_): Remove
6862 1.1.1.20 mrg Declaration.
6863 1.1.1.20 mrg (ctype<char>::classic_table): Use _C_ctype_tab_ instead of _C_ctype_.
6864 1.1.1.20 mrg (ctype<char>::do_toupper, ctype<char>::do_tolower): Cast char
6865 1.1.1.20 mrg parameters to unsigned char.
6866 1.1.1.20 mrg * config/os/bsd/netbsd/ctype_inline.h (ctype<char>::is): Likewise.
6867 1.1.1.20 mrg
6868 1.1.1.20 mrg 2020-01-16 Franois Dumont <fdumont (a] gcc.gnu.org>
6869 1.1.1.20 mrg
6870 1.1.1.20 mrg PR libstdc++/91263
6871 1.1.1.20 mrg * include/bits/hashtable.h (_Hashtable<>): Make _Equality<> friend.
6872 1.1.1.20 mrg * include/bits/hashtable_policy.h: Include <bits/stl_algo.h>.
6873 1.1.1.20 mrg (_Equality_base): Remove.
6874 1.1.1.20 mrg (_Equality<>::_M_equal): Review implementation. Use
6875 1.1.1.20 mrg std::is_permutation.
6876 1.1.1.20 mrg * testsuite/23_containers/unordered_multiset/operators/1.cc
6877 1.1.1.20 mrg (Hash, Equal, test02, test03): New.
6878 1.1.1.20 mrg * testsuite/23_containers/unordered_set/operators/1.cc
6879 1.1.1.20 mrg (Hash, Equal, test02, test03): New.
6880 1.1.1.20 mrg
6881 1.1.1.20 mrg 2020-01-15 Jonathan Wakely <jwakely (a] redhat.com>
6882 1.1.1.20 mrg
6883 1.1.1.20 mrg PR libstdc++/93267
6884 1.1.1.20 mrg * include/bits/iterator_concepts.h (__max_diff_type, __max_size_type):
6885 1.1.1.20 mrg Move here from <bits/range_access.h> and define using __int128 when
6886 1.1.1.20 mrg available.
6887 1.1.1.20 mrg (__is_integer_like, __is_signed_integer_like): Move here from
6888 1.1.1.20 mrg <bits/range_access.h>.
6889 1.1.1.20 mrg (weakly_incrementable): Use __is_signed_integer_like.
6890 1.1.1.20 mrg * include/bits/range_access.h (__max_diff_type, __max_size_type)
6891 1.1.1.20 mrg (__is_integer_like, __is_signed_integer_like): Move to
6892 1.1.1.20 mrg <bits/iterator_concepts.h>.
6893 1.1.1.20 mrg (__make_unsigned_like_t): Move here from <ranges>.
6894 1.1.1.20 mrg * include/std/ranges (__make_unsigned_like_t): Move to
6895 1.1.1.20 mrg <bits/range_access.h>.
6896 1.1.1.20 mrg (iota_view): Replace using-directive with using-declarations.
6897 1.1.1.20 mrg * testsuite/std/ranges/iota/93267.cc: New test.
6898 1.1.1.20 mrg * testsuite/std/ranges/iota_view.cc: Move to new 'iota' sub-directory.
6899 1.1.1.18 mrg
6900 1.1.1.20 mrg 2020-01-13 Jonathan Wakely <jwakely (a] redhat.com>
6901 1.1.1.18 mrg
6902 1.1.1.20 mrg PR libstdc++/93244
6903 1.1.1.20 mrg * include/bits/fs_path.h (path::generic_string<C,A>)
6904 1.1.1.20 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Convert root-dir to forward-slash.
6905 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc: Check
6906 1.1.1.20 mrg root-dir is converted to forward slash in generic pathname.
6907 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/utf.cc: New test.
6908 1.1.1.20 mrg * testsuite/27_io/filesystem/path/generic/wchar_t.cc: New test.
6909 1.1.1.18 mrg
6910 1.1.1.20 mrg PR libstdc++/58605
6911 1.1.1.20 mrg * include/bits/atomic_base.h (__cpp_lib_atomic_value_initialization):
6912 1.1.1.19 mrg Define.
6913 1.1.1.20 mrg (__atomic_flag_base, __atomic_base, __atomic_base<_PTp*>)
6914 1.1.1.20 mrg (__atomic_float): Add default member initializer for C++20.
6915 1.1.1.20 mrg * include/std/atomic (atomic): Likewise.
6916 1.1.1.20 mrg (atomic::atomic()): Remove noexcept-specifier on default constructor.
6917 1.1.1.20 mrg * include/std/version (__cpp_lib_atomic_value_initialization): Define.
6918 1.1.1.20 mrg * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error line
6919 1.1.1.20 mrg number.
6920 1.1.1.20 mrg * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
6921 1.1.1.20 mrg * testsuite/29_atomics/atomic/cons/value_init.cc: New test.
6922 1.1.1.20 mrg * testsuite/29_atomics/atomic_flag/cons/value_init.cc: New test.
6923 1.1.1.20 mrg * testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Adjust
6924 1.1.1.20 mrg expected result for is_trivially_default_constructible.
6925 1.1.1.20 mrg * testsuite/29_atomics/atomic_float/requirements.cc: Likewise.
6926 1.1.1.20 mrg * testsuite/29_atomics/atomic_float/value_init.cc: New test.
6927 1.1.1.20 mrg * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
6928 1.1.1.20 mrg * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
6929 1.1.1.20 mrg * testsuite/29_atomics/atomic_integral/cons/value_init.cc
6930 1.1.1.20 mrg * testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Adjust
6931 1.1.1.20 mrg expected results for is_trivially_default_constructible.
6932 1.1.1.20 mrg * testsuite/util/testsuite_common_types.h (has_trivial_dtor): Add
6933 1.1.1.20 mrg new test generator.
6934 1.1.1.20 mrg
6935 1.1.1.20 mrg 2020-01-10 Jonathan Wakely <jwakely (a] redhat.com>
6936 1.1.1.20 mrg
6937 1.1.1.20 mrg * testsuite/util/testsuite_iterators.h: Improve comment.
6938 1.1.1.20 mrg
6939 1.1.1.20 mrg * testsuite/25_algorithms/equal/deque_iterators/1.cc: Don't use C++11
6940 1.1.1.20 mrg initialization syntax.
6941 1.1.1.20 mrg
6942 1.1.1.20 mrg PR libstdc++/92285
6943 1.1.1.20 mrg * include/bits/streambuf_iterator.h (istreambuf_iterator): Make type
6944 1.1.1.20 mrg of base class independent of __cplusplus value.
6945 1.1.1.20 mrg [__cplusplus < 201103L] (istreambuf_iterator::reference): Override the
6946 1.1.1.20 mrg type defined in the base class
6947 1.1.1.20 mrg * testsuite/24_iterators/istreambuf_iterator/92285.cc: New test.
6948 1.1.1.20 mrg * testsuite/24_iterators/istreambuf_iterator/requirements/
6949 1.1.1.20 mrg base_classes.cc: Adjust expected base class for C++98.
6950 1.1.1.20 mrg
6951 1.1.1.20 mrg 2020-01-09 Olivier Hainque <hainque (a] adacore.com>
6952 1.1.1.20 mrg
6953 1.1.1.20 mrg * doc/xml/manual/appendix_contributing.xml: Document _C2
6954 1.1.1.20 mrg as a reserved identifier, by VxWorks.
6955 1.1.1.20 mrg * include/bits/stl_map.h: Rename _C2 template typenames as _Cmp2.
6956 1.1.1.20 mrg * include/bits/stl_multimap.h: Likewise.
6957 1.1.1.20 mrg
6958 1.1.1.20 mrg 2020-01-09 Jonathan Wakely <jwakely (a] redhat.com>
6959 1.1.1.20 mrg
6960 1.1.1.20 mrg * include/ext/extptr_allocator.h (_ExtPtr_allocator::operator==)
6961 1.1.1.20 mrg (_ExtPtr_allocator::operator!=): Add missing const qualifiers.
6962 1.1.1.20 mrg * include/ext/pointer.h (readable_traits<_Pointer_adapter<S>>): Add
6963 1.1.1.20 mrg partial specialization to disambiguate the two constrained
6964 1.1.1.20 mrg specializations.
6965 1.1.1.20 mrg
6966 1.1.1.20 mrg * include/experimental/type_traits (experimental::is_pod_v): Disable
6967 1.1.1.20 mrg -Wdeprecated-declarations warnings around reference to std::is_pod.
6968 1.1.1.20 mrg * include/std/type_traits (is_pod_v): Likewise.
6969 1.1.1.20 mrg * testsuite/18_support/max_align_t/requirements/2.cc: Also check
6970 1.1.1.20 mrg is_standard_layout and is_trivial. Do not check is_pod for C++20.
6971 1.1.1.20 mrg * testsuite/20_util/is_pod/requirements/explicit_instantiation.cc:
6972 1.1.1.20 mrg Add -Wno-deprecated for C++20.
6973 1.1.1.20 mrg * testsuite/20_util/is_pod/requirements/typedefs.cc: Likewise.
6974 1.1.1.20 mrg * testsuite/20_util/is_pod/value.cc: Likewise.
6975 1.1.1.20 mrg * testsuite/experimental/type_traits/value.cc: Likewise.
6976 1.1.1.20 mrg
6977 1.1.1.20 mrg 2020-01-09 JeanHeyd "ThePhD" Meneide <phdofthehouse (a] gmail.com>
6978 1.1.1.20 mrg
6979 1.1.1.20 mrg * include/bits/c++config (_GLIBCXX20_DEPRECATED): Add new macro.
6980 1.1.1.20 mrg * include/std/type_traits (is_pod, is_pod_v): Deprecate for C++20.
6981 1.1.1.20 mrg * testuite/20_util/is_pod/deprecated-2a.cc: New test.
6982 1.1.1.20 mrg
6983 1.1.1.20 mrg 2020-01-09 Jonathan Wakely <jwakely (a] redhat.com>
6984 1.1.1.20 mrg
6985 1.1.1.20 mrg PR libstdc++/93205
6986 1.1.1.20 mrg * include/bits/random.h (operator>>): Check stream operation succeeds.
6987 1.1.1.20 mrg * include/bits/random.tcc (operator<<): Remove redundant __ostream_type
6988 1.1.1.20 mrg typedefs.
6989 1.1.1.20 mrg (operator>>): Remove redundant __istream_type typedefs. Check stream
6990 1.1.1.20 mrg operations succeed.
6991 1.1.1.20 mrg (__extract_params): New function to fill a vector from a stream.
6992 1.1.1.20 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error line.
6993 1.1.1.20 mrg
6994 1.1.1.20 mrg PR libstdc++/93208
6995 1.1.1.20 mrg * config/abi/pre/gnu.ver: Add new exports.
6996 1.1.1.20 mrg * include/std/memory_resource (memory_resource::~memory_resource()):
6997 1.1.1.20 mrg Do not define inline.
6998 1.1.1.20 mrg (monotonic_buffer_resource::~monotonic_buffer_resource()): Likewise.
6999 1.1.1.20 mrg * src/c++17/memory_resource.cc (memory_resource::~memory_resource()):
7000 1.1.1.19 mrg Define.
7001 1.1.1.20 mrg (monotonic_buffer_resource::~monotonic_buffer_resource()): Define.
7002 1.1.1.20 mrg * testsuite/20_util/monotonic_buffer_resource/93208.cc: New test.
7003 1.1.1.17 mrg
7004 1.1.1.20 mrg 2020-01-09 Franois Dumont <fdumont (a] gcc.gnu.org>
7005 1.1.1.11 mrg
7006 1.1.1.20 mrg PR libstdc++/92124
7007 1.1.1.20 mrg * include/bits/hashtable.h (_Hashtable<>::__alloc_node_gen_t): New
7008 1.1.1.20 mrg template alias.
7009 1.1.1.20 mrg (_Hashtable<>::__fwd_value_for): New.
7010 1.1.1.20 mrg (_Hashtable<>::_M_assign_elements<>): Remove _NodeGenerator template
7011 1.1.1.20 mrg parameter.
7012 1.1.1.20 mrg (_Hashtable<>::_M_assign<>): Add _Ht template parameter.
7013 1.1.1.20 mrg (_Hashtable<>::operator=(const _Hashtable<>&)): Adapt.
7014 1.1.1.20 mrg (_Hashtable<>::_M_move_assign): Adapt. Replace std::move_if_noexcept
7015 1.1.1.20 mrg with std::move.
7016 1.1.1.20 mrg (_Hashtable<>::_Hashtable(const _Hashtable&)): Adapt.
7017 1.1.1.20 mrg (_Hashtable<>::_Hashtable(const _Hashtable&, const allocator_type&)):
7018 1.1.1.20 mrg Adapt.
7019 1.1.1.20 mrg (_Hashtable<>::_Hashtable(_Hashtable&&, const allocator_type&)):
7020 1.1.1.20 mrg Adapt.
7021 1.1.1.20 mrg * testsuite/23_containers/unordered_set/92124.cc: New.
7022 1.1.1.20 mrg
7023 1.1.1.20 mrg 2020-01-08 Jonathan Wakely <jwakely (a] redhat.com>
7024 1.1.1.20 mrg
7025 1.1.1.20 mrg PR libstdc++/93201
7026 1.1.1.20 mrg * src/c++17/fs_ops.cc (do_remove_all): New function implementing more
7027 1.1.1.20 mrg detailed error reporting for remove_all. Check result of recursive
7028 1.1.1.20 mrg call before incrementing iterator.
7029 1.1.1.20 mrg (remove_all(const path&), remove_all(const path&, error_code&)): Use
7030 1.1.1.20 mrg do_remove_all.
7031 1.1.1.20 mrg * src/filesystem/ops.cc (remove_all(const path&, error_code&)): Check
7032 1.1.1.20 mrg result of recursive call before incrementing iterator.
7033 1.1.1.20 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Check errors
7034 1.1.1.20 mrg are reported correctly.
7035 1.1.1.20 mrg * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
7036 1.1.1.20 mrg
7037 1.1.1.20 mrg 2020-01-07 Thomas Rodgers <trodgers (a] redhat.com>
7038 1.1.1.20 mrg
7039 1.1.1.20 mrg * include/std/condition_variable
7040 1.1.1.20 mrg (condition_variable_any::wait_on): Rename to match current draft
7041 1.1.1.20 mrg standard.
7042 1.1.1.20 mrg (condition_variable_any::wait_on_until): Likewise.
7043 1.1.1.20 mrg (condition_variable_any::wait_on_for): Likewise.
7044 1.1.1.20 mrg * testsuite/30_threads/condition_variable_any/stop_token/wait_on.cc:
7045 1.1.1.20 mrg Adjust tests to account for renamed methods.
7046 1.1.1.20 mrg
7047 1.1.1.20 mrg 2020-01-07 Franois Dumont <fdumont (a] gcc.gnu.org>
7048 1.1.1.20 mrg
7049 1.1.1.20 mrg PR libstdc++/92124
7050 1.1.1.20 mrg * include/bits/stl_tree.h
7051 1.1.1.20 mrg (_Rb_tree<>::_M_move_assign(_Rb_tree&, false_type)): Replace
7052 1.1.1.20 mrg std::move_if_noexcept by std::move.
7053 1.1.1.20 mrg * testsuite/23_containers/map/92124.cc: New.
7054 1.1.1.20 mrg * testsuite/23_containers/set/92124.cc: New.
7055 1.1.1.20 mrg
7056 1.1.1.20 mrg 2020-01-06 Jonathan Wakely <jwakely (a] redhat.com>
7057 1.1.1.20 mrg
7058 1.1.1.20 mrg * include/std/stop_token (stop_token): Remove operator!= (LWG 3254).
7059 1.1.1.20 mrg (stop_source): Likewise (LWG 3362).
7060 1.1.1.20 mrg * testsuite/30_threads/stop_token/stop_source.cc: Test equality
7061 1.1.1.20 mrg comparisons.
7062 1.1.1.20 mrg
7063 1.1.1.20 mrg * include/bits/stl_algobase.h (__is_byte_iter, __min_cmp)
7064 1.1.1.20 mrg (lexicographical_compare_three_way): Do not depend on
7065 1.1.1.20 mrg __cpp_lib_concepts.
7066 1.1.1.20 mrg * include/std/version (__cpp_lib_three_way_comparison): Only define
7067 1.1.1.20 mrg when __cpp_lib_concepts is defined.
7068 1.1.1.20 mrg * libsupc++/compare (__cpp_lib_three_way_comparison): Likewise.
7069 1.1.1.20 mrg
7070 1.1.1.20 mrg 2020-01-03 Jonathan Wakely <jwakely (a] redhat.com>
7071 1.1.1.20 mrg
7072 1.1.1.20 mrg * include/bits/stl_algobase.h (lexicographical_compare_three_way):
7073 1.1.1.20 mrg Only define four-argument overload when __cpp_lib_concepts is defined.
7074 1.1.1.20 mrg
7075 1.1.1.20 mrg 2020-01-01 John David Anglin <danglin (a] gcc.gnu.org>
7076 1.1.1.20 mrg
7077 1.1.1.20 mrg * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
7078 1.1.1.14 mrg
7079 1.1.1.20 mrg 2020-01-01 Jakub Jelinek <jakub (a] redhat.com>
7080 1.1 mrg
7081 1.1.1.9 mrg Update copyright years.
7082 1.1.1.3 mrg
7084 1.1 mrg Copyright (C) 2020 Free Software Foundation, Inc.
7085 1.1.1.3 mrg
7086 1.1.1.3 mrg Copying and distribution of this file, with or without modification,
7087 1.1.1.3 mrg are permitted in any medium without royalty provided the copyright
7088 notice and this notice are preserved.
7089