ChangeLog-2021 revision 1.1 1 1.1 mrg 2021-12-15 Franois Dumont <fdumont (a] gcc.gnu.org>
2 1.1 mrg
3 1.1 mrg * include/bits/stl_iterator.h
4 1.1 mrg (std::pointer_traits<__gnu_cxx::__normal_iterator<>>): Remove.
5 1.1 mrg (std::__to_address(const __gnu_cxx::__normal_iterator<>&)): New for C++11 to C++17.
6 1.1 mrg * include/debug/safe_iterator.h
7 1.1 mrg (std::__to_address(const __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<>,
8 1.1 mrg _Sequence>&)): New for C++11 to C++17.
9 1.1 mrg * testsuite/24_iterators/normal_iterator/to_address.cc: Add check on std::vector::iterator
10 1.1 mrg to validate both __gnu_cxx::__normal_iterator<> __to_address overload in normal mode and
11 1.1 mrg __gnu_debug::_Safe_iterator in _GLIBCXX_DEBUG mode.
12 1.1 mrg
13 1.1 mrg 2021-12-15 Jakub Jelinek <jakub (a] redhat.com>
14 1.1 mrg
15 1.1 mrg PR libstdc++/71557
16 1.1 mrg * include/bits/locale_facets_nonio.tcc (_M_extract_via_format):
17 1.1 mrg Compare characters other than format specifiers and whitespace
18 1.1 mrg case insensitively.
19 1.1 mrg (_M_extract_name): Compare characters case insensitively.
20 1.1 mrg * testsuite/22_locale/time_get/get/char/71557.cc: New test.
21 1.1 mrg * testsuite/22_locale/time_get/get/wchar_t/71557.cc: New test.
22 1.1 mrg
23 1.1 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
24 1.1 mrg
25 1.1 mrg PR libstdc++/103687
26 1.1 mrg * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Restore
27 1.1 mrg original locale before returning.
28 1.1 mrg * testsuite/22_locale/time_get/get_time/char/2.cc: Check for %p
29 1.1 mrg in locale's T_FMT and adjust accordingly.
30 1.1 mrg * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
31 1.1 mrg
32 1.1 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
33 1.1 mrg
34 1.1 mrg PR libstdc++/102447
35 1.1 mrg * include/bits/regex_compiler.h (_Compiler::_BracketState): New
36 1.1 mrg class.
37 1.1 mrg (_Compiler::_BrackeyMatcher): New alias template.
38 1.1 mrg (_Compiler::_M_expression_term): Change pair<bool, CharT>
39 1.1 mrg parameter to _BracketState. Process first character for
40 1.1 mrg ECMAScript syntax as well as POSIX.
41 1.1 mrg * include/bits/regex_compiler.tcc
42 1.1 mrg (_Compiler::_M_insert_bracket_matcher): Pass _BracketState.
43 1.1 mrg (_Compiler::_M_expression_term): Use _BracketState to store
44 1.1 mrg state between calls. Improve handling of dashes in ranges.
45 1.1 mrg * testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
46 1.1 mrg Add more tests for ranges containing dashes. Check invalid
47 1.1 mrg ranges with character class at the beginning.
48 1.1 mrg
49 1.1 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
50 1.1 mrg
51 1.1 mrg * include/ext/pointer.h (_Relative_pointer_impl::_UIntPtrType):
52 1.1 mrg Rename to uintptr_t and define as __UINTPTR_TYPE__.
53 1.1 mrg
54 1.1 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
55 1.1 mrg
56 1.1 mrg * include/bits/regex_constants.h (__syntax_option, __match_flag):
57 1.1 mrg Remove.
58 1.1 mrg (syntax_option_type, match_flag_type): Define enumerators.
59 1.1 mrg Use to initialize globals. Add constexpr to compound assignment
60 1.1 mrg operators.
61 1.1 mrg * include/bits/regex_error.h (error_type): Add comment.
62 1.1 mrg * testsuite/28_regex/constants/constexpr.cc: Remove comment.
63 1.1 mrg * testsuite/28_regex/constants/error_type.cc: Improve comment.
64 1.1 mrg * testsuite/28_regex/constants/match_flag_type.cc: Check bitmask
65 1.1 mrg requirements.
66 1.1 mrg * testsuite/28_regex/constants/syntax_option_type.cc: Likewise.
67 1.1 mrg
68 1.1 mrg 2021-12-14 Jonathan Wakely <jwakely (a] redhat.com>
69 1.1 mrg
70 1.1 mrg * include/bits/regex_compiler.tcc (_Compiler::_M_match_token):
71 1.1 mrg Use reserved name for parameter.
72 1.1 mrg * testsuite/17_intro/names.cc: Check "token".
73 1.1 mrg
74 1.1 mrg 2021-12-13 Jonathan Wakely <jwakely (a] redhat.com>
75 1.1 mrg
76 1.1 mrg * scripts/make_exports.pl: Replace '?' with '.' when turning
77 1.1 mrg a glob into a regex.
78 1.1 mrg
79 1.1 mrg 2021-12-13 Jonathan Wakely <jwakely (a] redhat.com>
80 1.1 mrg
81 1.1 mrg * include/bits/ranges_base.h (ranges::size, ranges::empty): Add
82 1.1 mrg explicit check for unbounded arrays before using ranges::begin.
83 1.1 mrg * testsuite/std/ranges/access/empty.cc: Check handling of unbounded
84 1.1 mrg arrays.
85 1.1 mrg * testsuite/std/ranges/access/size.cc: Likewise.
86 1.1 mrg
87 1.1 mrg 2021-12-13 Jonathan Wakely <jwakely (a] redhat.com>
88 1.1 mrg
89 1.1 mrg PR libstdc++/103664
90 1.1 mrg * include/bits/regex.h (__regex_replace): Declare.
91 1.1 mrg (regex_replace): Use it.
92 1.1 mrg * include/bits/regex.tcc (__regex_replace): Replace regex_replace
93 1.1 mrg definition with __regex_replace.
94 1.1 mrg * testsuite/28_regex/algorithms/regex_replace/char/103664.cc: New test.
95 1.1 mrg
96 1.1 mrg 2021-12-11 Jason Merrill <jason (a] redhat.com>
97 1.1 mrg
98 1.1 mrg PR c++/103534
99 1.1 mrg * include/bits/basic_string.h (append (basic_string)): Call pointer
100 1.1 mrg append instead of _M_append directly.
101 1.1 mrg
102 1.1 mrg 2021-12-10 Jakub Jelinek <jakub (a] redhat.com>
103 1.1 mrg
104 1.1 mrg PR libstdc++/71367
105 1.1 mrg * config/locale/dragonfly/time_members.cc (_M_initialize_timepunct):
106 1.1 mrg Initialize "C" _M_am_pm_format to %I:%M:%S %p rather than empty
107 1.1 mrg string.
108 1.1 mrg * config/locale/gnu/time_members.cc (_M_initialize_timepunct):
109 1.1 mrg Likewise.
110 1.1 mrg * config/locale/generic/time_members.cc (_M_initialize_timepunct):
111 1.1 mrg Likewise.
112 1.1 mrg * include/bits/locale_facets_nonio.h (_M_am_pm_format): New method.
113 1.1 mrg * include/bits/locale_facets_nonio.tcc (_M_extract_via_format): Handle
114 1.1 mrg %r.
115 1.1 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.30): Export _M_am_pm_format
116 1.1 mrg with const _CharT** argument, ensure it isn't exported in GLIBCXX_3.4.
117 1.1 mrg * testsuite/22_locale/time_get/get/char/71367.cc: New test.
118 1.1 mrg * testsuite/22_locale/time_get/get/wchar_t/71367.cc: New test.
119 1.1 mrg
120 1.1 mrg 2021-12-10 Jakub Jelinek <jakub (a] redhat.com>
121 1.1 mrg
122 1.1 mrg PR libstdc++/78714
123 1.1 mrg * include/bits/locale_facets_nonio.tcc (_M_extract_via_format):
124 1.1 mrg Mention in function comment it interprets strptime format string
125 1.1 mrg rather than strftime. Handle %a and %A the same by accepting both
126 1.1 mrg full and abbreviated names. Similarly handle %h, %b and %B the same.
127 1.1 mrg Handle %d and %e the same by accepting possibly optional single space
128 1.1 mrg and 1 or 2 digits. For %I store tm_hour 0 instead of tm_hour 12. For
129 1.1 mrg %t and %n skip any whitespace. Handle %p and %%. For whitespace in
130 1.1 mrg the string skip any whitespace.
131 1.1 mrg (_M_extract_num): For __len == 2 accept 1 or 2 digits rather than
132 1.1 mrg always 2. Don't punt early if __value * __mult is larget than __max
133 1.1 mrg or smaller than __min - __mult, instead punt if __value > __max.
134 1.1 mrg At the end verify __value is in between __min and __max and punt
135 1.1 mrg otherwise.
136 1.1 mrg (_M_extract_name): Allow non-unique names or names which are prefixes
137 1.1 mrg of other names. Don't recompute lengths of names for every character.
138 1.1 mrg * testsuite/22_locale/time_get/get/char/3.cc: New test.
139 1.1 mrg * testsuite/22_locale/time_get/get/wchar_t/3.cc: New test.
140 1.1 mrg * testsuite/22_locale/time_get/get_date/char/12791.cc (test01): Use
141 1.1 mrg 62 instead 60 and expect 6 to be accepted and thus *ret01 == '2'.
142 1.1 mrg * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc (test01):
143 1.1 mrg Similarly.
144 1.1 mrg * testsuite/22_locale/time_get/get_time/char/2.cc (test02): Add " PM"
145 1.1 mrg to the string.
146 1.1 mrg * testsuite/22_locale/time_get/get_time/char/5.cc (test01): Expect
147 1.1 mrg tm_hour 1 rather than 0.
148 1.1 mrg * testsuite/22_locale/time_get/get_time/wchar_t/2.cc (test02): Add
149 1.1 mrg " PM" to the string.
150 1.1 mrg * testsuite/22_locale/time_get/get_time/wchar_t/5.cc (test01): Expect
151 1.1 mrg tm_hour 1 rather than 0.
152 1.1 mrg
153 1.1 mrg 2021-12-10 Jonathan Wakely <jwakely (a] redhat.com>
154 1.1 mrg
155 1.1 mrg PR libstdc++/103638
156 1.1 mrg * include/bits/atomic_timed_wait.h: Check _GLIBCXX_HAS_GTHREADS
157 1.1 mrg before using std::mutex and std::__condvar.
158 1.1 mrg
159 1.1 mrg 2021-12-10 Jonathan Wakely <jwakely (a] redhat.com>
160 1.1 mrg
161 1.1 mrg * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add _GLIBCXX_
162 1.1 mrg prefix to NO_SLEEP macro.
163 1.1 mrg * config.h.in: Regenerate.
164 1.1 mrg * configure: Regenerate.
165 1.1 mrg
166 1.1 mrg 2021-12-10 Jonathan Wakely <jwakely (a] redhat.com>
167 1.1 mrg
168 1.1 mrg * include/bits/char_traits.h: Change pragma push to pop.
169 1.1 mrg
170 1.1 mrg 2021-12-10 Thomas Rodgers <rodgert (a] twrodgers.com>
171 1.1 mrg
172 1.1 mrg PR libstdc++/102994
173 1.1 mrg * include/bits/atomic_base.h (__atomic_base<_PTp*>::wait()):
174 1.1 mrg Add const qualifier.
175 1.1 mrg * include/std/atomic (atomic<_Tp*>::wait(), atomic_wait()):
176 1.1 mrg Likewise.
177 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/102994.cc:
178 1.1 mrg New test.
179 1.1 mrg
180 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
181 1.1 mrg
182 1.1 mrg * include/bits/stl_iterator.h (operator==, operator<=>): Define
183 1.1 mrg overloads for homogeneous specializations of reverse_iterator,
184 1.1 mrg __normal_iterator and move_iterator.
185 1.1 mrg
186 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
187 1.1 mrg
188 1.1 mrg * testsuite/20_util/scoped_allocator/69293_neg.cc: Remove
189 1.1 mrg dg-error for c++20.
190 1.1 mrg
191 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
192 1.1 mrg
193 1.1 mrg PR libstdc++/85813
194 1.1 mrg * libsupc++/exception_ptr.h (__dest_thunk): Add macro for
195 1.1 mrg destructor calling convention.
196 1.1 mrg (make_exception_ptr): Enable non-throwing implementation for
197 1.1 mrg -fno-exceptions and for non-standard calling conventions. Use
198 1.1 mrg always_inline attribute on the useless no-rtti no-exceptions
199 1.1 mrg definition.
200 1.1 mrg * testsuite/18_support/exception_ptr/64241.cc: Add -fno-rtti so
201 1.1 mrg the no-op implementation is still used.
202 1.1 mrg
203 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
204 1.1 mrg
205 1.1 mrg PR libstdc++/103630
206 1.1 mrg * libsupc++/exception_ptr.h (exception_ptr): Fix exception
207 1.1 mrg specifications on inline definitions.
208 1.1 mrg (make_exception_ptr): Decay the template parameter. Use typeid
209 1.1 mrg of the static type.
210 1.1 mrg * testsuite/18_support/exception_ptr/103630.cc: New test.
211 1.1 mrg
212 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
213 1.1 mrg
214 1.1 mrg PR libstdc++/59769
215 1.1 mrg * config/io/basic_file_stdio.cc (fopen_mode): Add support for
216 1.1 mrg exclusive mode.
217 1.1 mrg * include/bits/ios_base.h (_S_noreplace): Define new enumerator.
218 1.1 mrg (ios_base::__noreplace): Define.
219 1.1 mrg (ios_base::noreplace): Define for C++23.
220 1.1 mrg * include/std/version (__cpp_lib_ios_noreplace): Define.
221 1.1 mrg * testsuite/27_io/basic_ofstream/open/char/noreplace.cc: New test.
222 1.1 mrg * testsuite/27_io/basic_ofstream/open/wchar_t/noreplace.cc: New test.
223 1.1 mrg
224 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
225 1.1 mrg
226 1.1 mrg PR libstdc++/103382
227 1.1 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Do not export old
228 1.1 mrg symbol if .symver renaming is supported.
229 1.1 mrg (GLIBCXX_3.4.30): Export new symbol if .symver renaming is
230 1.1 mrg supported.
231 1.1 mrg * doc/xml/manual/evolution.xml: Document change.
232 1.1 mrg * doc/html/manual/api.html: Regenerate.
233 1.1 mrg * include/bits/std_mutex.h (__condvar::wait, __condvar::wait_until):
234 1.1 mrg Remove noexcept.
235 1.1 mrg * include/std/condition_variable (condition_variable::wait):
236 1.1 mrg Likewise.
237 1.1 mrg * src/c++11/condition_variable.cc (condition_variable::wait):
238 1.1 mrg Likewise.
239 1.1 mrg * src/c++11/compatibility-condvar.cc (__nothrow_wait_cv::wait):
240 1.1 mrg Define nothrow wrapper around std::condition_variable::wait and
241 1.1 mrg export the old symbol as an alias to it.
242 1.1 mrg * testsuite/30_threads/condition_variable/members/103382.cc: New test.
243 1.1 mrg
244 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
245 1.1 mrg
246 1.1 mrg PR libstdc++/92300
247 1.1 mrg * include/bits/stl_map.h (insert(Pair&&), emplace(Args&&...)):
248 1.1 mrg Check whether the arguments can be looked up directly without
249 1.1 mrg constructing a temporary node first.
250 1.1 mrg * include/bits/stl_pair.h (__is_pair): Move to here, from ...
251 1.1 mrg * include/bits/uses_allocator_args.h (__is_pair): ... here.
252 1.1 mrg * testsuite/23_containers/map/modifiers/emplace/92300.cc: New test.
253 1.1 mrg * testsuite/23_containers/map/modifiers/insert/92300.cc: New test.
254 1.1 mrg
255 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
256 1.1 mrg
257 1.1 mrg * include/bits/cow_string.h (basic_string::_M_leak_hard): Do not
258 1.1 mrg reallocate an empty string.
259 1.1 mrg
260 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
261 1.1 mrg
262 1.1 mrg PR libstdc++/103332
263 1.1 mrg PR libstdc++/102958
264 1.1 mrg PR libstdc++/103483
265 1.1 mrg * include/bits/char_traits.h: Suppress stringop and array-bounds
266 1.1 mrg warnings.
267 1.1 mrg
268 1.1 mrg 2021-12-09 Jonathan Wakely <jwakely (a] redhat.com>
269 1.1 mrg
270 1.1 mrg PR libstdc++/64135
271 1.1 mrg * config/allocator/new_allocator_base.h: Include
272 1.1 mrg <bits/new_allocator.h> instead of <ext/new_allocator.h>.
273 1.1 mrg (__allocator_base): Use std::__new_allocator instead of
274 1.1 mrg __gnu_cxx::new_allocator.
275 1.1 mrg * doc/xml/manual/allocator.xml: Document new default base class
276 1.1 mrg for std::allocator.
277 1.1 mrg * doc/xml/manual/evolution.xml: Likewise.
278 1.1 mrg * doc/html/*: Regenerate.
279 1.1 mrg * include/Makefile.am: Add bits/new_allocator.h.
280 1.1 mrg * include/Makefile.in: Regenerate.
281 1.1 mrg * include/experimental/memory_resource (new_delete_resource):
282 1.1 mrg Use std::__new_allocator instead of __gnu_cxx::new_allocator.
283 1.1 mrg * include/ext/new_allocator.h (new_allocator): Derive from
284 1.1 mrg std::__new_allocator. Move implementation to ...
285 1.1 mrg * include/bits/new_allocator.h: New file.
286 1.1 mrg * testsuite/20_util/allocator/64135.cc: New test.
287 1.1 mrg
288 1.1 mrg 2021-12-08 Jonathan Wakely <jwakely (a] redhat.com>
289 1.1 mrg
290 1.1 mrg * include/bits/shared_ptr_base.h (_Sp_counted_base::_M_release()):
291 1.1 mrg Make shift width conditional on __double_word condition.
292 1.1 mrg
293 1.1 mrg 2021-12-08 Franois Dumont <fdumont (a] gcc.gnu.org>
294 1.1 mrg
295 1.1 mrg * include/std/deque (erase_if): Use _GLIBCXX_STD_C container reference and
296 1.1 mrg __niter_wrap to limit _GLIBCXX_DEBUG mode impact.
297 1.1 mrg * include/std/vector (erase_if): Likewise.
298 1.1 mrg
299 1.1 mrg 2021-12-08 Maged Michael <maged.michael (a] gmail.com>
300 1.1 mrg Jonathan Wakely <jwakely (a] redhat.com>
301 1.1 mrg
302 1.1 mrg * include/bits/c++config (_GLIBCXX_TSAN): Define macro
303 1.1 mrg indicating that TSan is in use.
304 1.1 mrg * include/bits/shared_ptr_base.h (_Sp_counted_base::_M_release):
305 1.1 mrg Replace definition in primary template with explicit
306 1.1 mrg specializations for _S_mutex and _S_atomic policies.
307 1.1 mrg (_Sp_counted_base<_S_mutex>::_M_release): New specialization.
308 1.1 mrg (_Sp_counted_base<_S_atomic>::_M_release): New specialization,
309 1.1 mrg using a single atomic load to access both reference counts at
310 1.1 mrg once.
311 1.1 mrg (_Sp_counted_base::_M_release_last_use): New member function.
312 1.1 mrg
313 1.1 mrg 2021-12-07 Tamar Christina <tamar.christina (a] arm.com>
314 1.1 mrg
315 1.1 mrg Revert:
316 1.1 mrg 2021-11-19 Tamar Christina <tamar.christina (a] arm.com>
317 1.1 mrg
318 1.1 mrg PR libstdc++/103305
319 1.1 mrg * config/os/newlib/ctype_base.h (upper, lower, alpha, digit, xdigit,
320 1.1 mrg space, print, graph, cntrl, punct, alnum, blank): Use short or long
321 1.1 mrg names depending on if short ones are defined.
322 1.1 mrg
323 1.1 mrg 2021-12-04 Jonathan Wakely <jwakely (a] redhat.com>
324 1.1 mrg
325 1.1 mrg PR libstdc++/103549
326 1.1 mrg * include/bits/regex.h (match_results): Give names to template
327 1.1 mrg parameters in first declaration.
328 1.1 mrg (match_results::_M_begin): Add default member-initializer.
329 1.1 mrg
330 1.1 mrg 2021-12-03 Jonathan Wakely <jwakely (a] redhat.com>
331 1.1 mrg
332 1.1 mrg * include/bits/stl_tree.h (_Rb_tree::_Auto_node): Define new
333 1.1 mrg RAII helper for creating and inserting new nodes.
334 1.1 mrg (_Rb_tree::_M_insert_node): Use trailing-return-type to simplify
335 1.1 mrg out-of-line definition.
336 1.1 mrg (_Rb_tree::_M_insert_lower_node): Likewise.
337 1.1 mrg (_Rb_tree::_M_insert_equal_lower_node): Likewise.
338 1.1 mrg (_Rb_tree::_M_emplace_unique): Likewise. Use _Auto_node.
339 1.1 mrg (_Rb_tree::_M_emplace_equal): Likewise.
340 1.1 mrg (_Rb_tree::_M_emplace_hint_unique): Likewise.
341 1.1 mrg (_Rb_tree::_M_emplace_hint_equal): Likewise.
342 1.1 mrg
343 1.1 mrg 2021-12-02 Jonathan Wakely <jwakely (a] redhat.com>
344 1.1 mrg
345 1.1 mrg * src/c++11/cow-stdexcept.cc [_GLIBCXX_FULLY_DYNAMIC_STRING]
346 1.1 mrg (logic_error, runtime_error): Remove custom definitions.
347 1.1 mrg
348 1.1 mrg 2021-12-02 Jonathan Wakely <jwakely (a] redhat.com>
349 1.1 mrg
350 1.1 mrg PR libstdc++/103340
351 1.1 mrg PR libstdc++/103400
352 1.1 mrg PR libstdc++/103381
353 1.1 mrg * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Remove mt, bitmap
354 1.1 mrg and pool options.
355 1.1 mrg * configure: Regenerate.
356 1.1 mrg * config/allocator/bitmap_allocator_base.h: Removed.
357 1.1 mrg * config/allocator/mt_allocator_base.h: Removed.
358 1.1 mrg * config/allocator/pool_allocator_base.h: Removed.
359 1.1 mrg * doc/xml/manual/allocator.xml: Update.
360 1.1 mrg * doc/xml/manual/configure.xml: Update.
361 1.1 mrg * doc/xml/manual/evolution.xml: Document removal.
362 1.1 mrg * doc/xml/manual/mt_allocator.xml: Editorial tweaks.
363 1.1 mrg * doc/html/manual/*: Regenerate.
364 1.1 mrg
365 1.1 mrg 2021-12-02 Jonathan Wakely <jwakely (a] redhat.com>
366 1.1 mrg
367 1.1 mrg * include/bits/cow_string.h (basic_string::_M_is_leaked()):
368 1.1 mrg Revert change to check __is_single_threaded() before using
369 1.1 mrg atomic load.
370 1.1 mrg
371 1.1 mrg 2021-12-01 Jonathan Wakely <jwakely (a] redhat.com>
372 1.1 mrg
373 1.1 mrg PR libstdc++/103501
374 1.1 mrg * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&, false_type)):
375 1.1 mrg Clear container if elements have been moved-from.
376 1.1 mrg * testsuite/23_containers/map/allocator/move_cons.cc: Expect
377 1.1 mrg moved-from container to be empty.
378 1.1 mrg * testsuite/23_containers/multimap/allocator/move_cons.cc:
379 1.1 mrg Likewise.
380 1.1 mrg * testsuite/23_containers/multiset/allocator/103501.cc: New test.
381 1.1 mrg * testsuite/23_containers/set/allocator/103501.cc: New test.
382 1.1 mrg
383 1.1 mrg 2021-12-01 Jonathan Wakely <jwakely (a] redhat.com>
384 1.1 mrg
385 1.1 mrg * doc/doxygen/user.cfg.in (PREDEFINED): Change macro name.
386 1.1 mrg * include/bits/allocator.h (allocate, deallocate): Use
387 1.1 mrg std::__is_constant_evaluated() unconditionally, instead of
388 1.1 mrg checking whether std::is_constant_evaluated() (or the built-in)
389 1.1 mrg can be used.
390 1.1 mrg * include/bits/basic_string.h: Check new macro. call
391 1.1 mrg std::is_constant_evaluated() directly in C++20-only code that is
392 1.1 mrg guarded by a suitable macro.
393 1.1 mrg * include/bits/basic_string.tcc: Likewise.
394 1.1 mrg * include/bits/c++config (__is_constant_evaluated): Define.
395 1.1 mrg (_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED): Replace with ...
396 1.1 mrg (_GLIBCXX_HAVE_IS_CONSTANT_EVALUATED): New macro.
397 1.1 mrg * include/bits/char_traits.h (char_traits): Replace conditional
398 1.1 mrg calls to std::is_constant_evaluated with unconditional calls to
399 1.1 mrg std::__is_constant_evaluated.
400 1.1 mrg * include/bits/cow_string.h: Use new macro.
401 1.1 mrg * include/bits/ranges_algobase.h (__copy_or_move): Replace
402 1.1 mrg conditional calls to std::is_constant_evaluated with unconditional
403 1.1 mrg calls to std::__is_constant_evaluated.
404 1.1 mrg (__copy_or_move_backward, __fill_n_fn): Likewise.
405 1.1 mrg * include/bits/ranges_cmp.h (ranges::less): Likewise.
406 1.1 mrg * include/bits/stl_algobase.h (lexicographical_compare_three_way):
407 1.1 mrg Likewise.
408 1.1 mrg * include/bits/stl_bvector.h: Call std::is_constant_evaluated
409 1.1 mrg directly in C++20-only code that is guarded by a suitable macro.
410 1.1 mrg * include/bits/stl_construct.h (_Construct, _Destroy, _Destroy_n):
411 1.1 mrg Replace is_constant_evaluated with __is_constant_evaluated.
412 1.1 mrg * include/bits/stl_function.h (greater, less, greater_equal)
413 1.1 mrg (less_equal): Replace __builtin_is_constant_evaluated and
414 1.1 mrg __builtin_constant_p with __is_constant_evaluated.
415 1.1 mrg * include/bits/stl_vector.h: Call std::is_constant_evaluated()
416 1.1 mrg in C++20-only code.
417 1.1 mrg * include/debug/helper_functions.h (__check_singular): Use
418 1.1 mrg __is_constant_evaluated instead of built-in, or remove check
419 1.1 mrg entirely.
420 1.1 mrg * include/std/array (operator<=>): Use __is_constant_evaluated
421 1.1 mrg unconditionally.
422 1.1 mrg * include/std/bit (__bit_ceil): Likewise.
423 1.1 mrg * include/std/type_traits (is_constant_evaluated): Define using
424 1.1 mrg 'if consteval' if possible.
425 1.1 mrg * include/std/version: Use new macro.
426 1.1 mrg * libsupc++/compare: Use __is_constant_evaluated instead of
427 1.1 mrg __builtin_is_constant_evaluated.
428 1.1 mrg * testsuite/23_containers/array/tuple_interface/get_neg.cc:
429 1.1 mrg Adjust dg-error lines.
430 1.1 mrg
431 1.1 mrg 2021-12-01 Jonathan Wakely <jwakely (a] redhat.com>
432 1.1 mrg
433 1.1 mrg * include/bits/cow_string.h (basic_string::_M_is_leaked): Use
434 1.1 mrg non-atomic load when __is_single_threaded() is true.
435 1.1 mrg (basic_string::_M_is_shared): Likewise.
436 1.1 mrg (basic_string::(basic_string&&)) [_GLIBCXX_FULLY_DYNAMIC_STRING]:
437 1.1 mrg Use non-atomic store when rvalue is not shared.
438 1.1 mrg
439 1.1 mrg 2021-12-01 Jonathan Wakely <jwakely (a] redhat.com>
440 1.1 mrg
441 1.1 mrg * src/c++17/fs_path.cc (path::_M_split_cmpts()): Remove
442 1.1 mrg micro-optimization for "/" path.
443 1.1 mrg * src/filesystem/path.cc (path::_M_split_cmpts()): Only access
444 1.1 mrg the contents of _M_pathname using const member functions.
445 1.1 mrg
446 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
447 1.1 mrg
448 1.1 mrg * testsuite/21_strings/basic_string/cons/char/moveable.cc: Allow
449 1.1 mrg moved-from string to be non-empty.
450 1.1 mrg * testsuite/21_strings/basic_string/cons/char/moveable2.cc:
451 1.1 mrg Likewise.
452 1.1 mrg * testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc:
453 1.1 mrg Likewise.
454 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc:
455 1.1 mrg Likewise.
456 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
457 1.1 mrg Likewise.
458 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
459 1.1 mrg Likewise.
460 1.1 mrg * testsuite/21_strings/basic_string/modifiers/assign/char/87749.cc:
461 1.1 mrg Construct empty string before setting oom flag.
462 1.1 mrg * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/87749.cc:
463 1.1 mrg Likewise.
464 1.1 mrg
465 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
466 1.1 mrg
467 1.1 mrg * include/bits/cow_string.h (basic_string(basic_string&&)): Fix
468 1.1 mrg mem-initializer for _GLIBCXX_FULLY_DYNAMIC_STRING==0 case.
469 1.1 mrg * testsuite/21_strings/basic_string/cons/char/noexcept_move_construct.cc:
470 1.1 mrg Remove outdated comment.
471 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/noexcept_move_construct.cc:
472 1.1 mrg Likewise.
473 1.1 mrg
474 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
475 1.1 mrg
476 1.1 mrg * src/c++20/sstream-inst.cc (_GLIBCXX_USE_CXX11_ABI): Define to
477 1.1 mrg select new ABI.
478 1.1 mrg
479 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
480 1.1 mrg
481 1.1 mrg * include/bits/stl_vector.h (vector::_S_do_relocate): Remove
482 1.1 mrg C++20 constexpr specifier.
483 1.1 mrg (vector::_S_relocate) [__cpp_if_constexpr]: Call __relocate_a
484 1.1 mrg directly without tag dispatching.
485 1.1 mrg
486 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
487 1.1 mrg
488 1.1 mrg PR libstdc++/103453
489 1.1 mrg * config/allocator/malloc_allocator_base.h
490 1.1 mrg (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define for Clang.
491 1.1 mrg * config/allocator/new_allocator_base.h
492 1.1 mrg (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Likewise.
493 1.1 mrg
494 1.1 mrg 2021-11-30 Jonathan Wakely <jwakely (a] redhat.com>
495 1.1 mrg
496 1.1 mrg * doc/xml/manual/debug_mode.xml: Replace "his or her" with "their".
497 1.1 mrg * doc/html/manual/debug_mode_design.html: Regenerate.
498 1.1 mrg
499 1.1 mrg 2021-11-30 Jakub Jelinek <jakub (a] redhat.com>
500 1.1 mrg
501 1.1 mrg * include/std/bit (byteswap): Add [[nodiscard]].
502 1.1 mrg
503 1.1 mrg 2021-11-28 Jakub Jelinek <jakub (a] redhat.com>
504 1.1 mrg
505 1.1 mrg * include/std/bit (__cpp_lib_byteswap, byteswap): Define.
506 1.1 mrg * include/std/version (__cpp_lib_byteswap): Define.
507 1.1 mrg * testsuite/26_numerics/bit/bit.byteswap/byteswap.cc: New test.
508 1.1 mrg * testsuite/26_numerics/bit/bit.byteswap/version.cc: New test.
509 1.1 mrg
510 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
511 1.1 mrg
512 1.1 mrg * testsuite/24_iterators/move_iterator/dr3265.cc: Fix test to
513 1.1 mrg account for LWG 3435 resolution.
514 1.1 mrg
515 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
516 1.1 mrg
517 1.1 mrg * include/bits/stl_uninitialized.h (__relocate_a_1): Do not use
518 1.1 mrg memmove during constant evaluation.
519 1.1 mrg * include/bits/stl_vector.h (vector::_S_use_relocate()): Do not
520 1.1 mrg check is_constant_evaluated in always-constexpr function.
521 1.1 mrg
522 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
523 1.1 mrg
524 1.1 mrg PR libstdc++/96592
525 1.1 mrg * include/std/tuple (tuple::is_constructible): Remove.
526 1.1 mrg
527 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
528 1.1 mrg
529 1.1 mrg * testsuite/29_atomics/atomic_float/1.cc: Reorder directives.
530 1.1 mrg
531 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
532 1.1 mrg
533 1.1 mrg * testsuite/23_containers/unordered_map/modifiers/move_assign.cc:
534 1.1 mrg Change dg-do compile to run.
535 1.1 mrg * testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499.cc:
536 1.1 mrg Likewise.
537 1.1 mrg
538 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
539 1.1 mrg
540 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
541 1.1 mrg Remove xfail selector.
542 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
543 1.1 mrg Likewise.
544 1.1 mrg Likewise.
545 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
546 1.1 mrg Likewise.
547 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
548 1.1 mrg Likewise.
549 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
550 1.1 mrg Likewise.
551 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
552 1.1 mrg Likewise.
553 1.1 mrg * testsuite/23_containers/span/101411.cc: Likewise.
554 1.1 mrg * testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Likewise.
555 1.1 mrg * testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc:
556 1.1 mrg Likewise.
557 1.1 mrg * testsuite/25_algorithms/equal/constexpr_neg.cc: Likewise.
558 1.1 mrg * testsuite/25_algorithms/equal/debug/constexpr_neg.cc: Likewise.
559 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc:
560 1.1 mrg Likewise.
561 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc:
562 1.1 mrg Likewise.
563 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc:
564 1.1 mrg Likewise.
565 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc:
566 1.1 mrg Likewise.
567 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc:
568 1.1 mrg Likewise.
569 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc:
570 1.1 mrg Likewise.
571 1.1 mrg
572 1.1 mrg 2021-11-26 Jonathan Wakely <jwakely (a] redhat.com>
573 1.1 mrg
574 1.1 mrg * testsuite/20_util/pointer_traits/lwg3545.cc: Move to_address
575 1.1 mrg tests to ...
576 1.1 mrg * testsuite/20_util/to_address/lwg3545.cc: ... here. Add -std
577 1.1 mrg option before checking effective target.
578 1.1 mrg
579 1.1 mrg 2021-11-25 Jonathan Wakely <jwakely (a] redhat.com>
580 1.1 mrg
581 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded2.cc:
582 1.1 mrg Remove dg-error for C++11_only error.
583 1.1 mrg
584 1.1 mrg 2021-11-25 Jonathan Wakely <jwakely (a] redhat.com>
585 1.1 mrg
586 1.1 mrg PR libstdc++/96416
587 1.1 mrg * include/bits/ptr_traits.h (pointer_traits): Reimplement to be
588 1.1 mrg SFINAE-friendly (LWG 3545).
589 1.1 mrg * testsuite/20_util/pointer_traits/lwg3545.cc: New test.
590 1.1 mrg * testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line.
591 1.1 mrg * testsuite/20_util/to_address/lwg3545.cc: New test.
592 1.1 mrg
593 1.1 mrg 2021-11-25 Jonathan Wakely <jwakely (a] redhat.com>
594 1.1 mrg
595 1.1 mrg PR libstdc++/101608
596 1.1 mrg * include/bits/ranges_algobase.h (__fill_n_fn): Check for
597 1.1 mrg constant evaluation before using memset.
598 1.1 mrg * testsuite/25_algorithms/fill_n/constrained.cc: Check
599 1.1 mrg byte-sized values as well.
600 1.1 mrg
601 1.1 mrg 2021-11-24 Jonathan Wakely <jwakely (a] redhat.com>
602 1.1 mrg
603 1.1 mrg * testsuite/libstdc++-prettyprinters/80276.cc: Add xfail for
604 1.1 mrg debug mode.
605 1.1 mrg * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
606 1.1 mrg
607 1.1 mrg 2021-11-24 Jonathan Wakely <jwakely (a] redhat.com>
608 1.1 mrg
609 1.1 mrg * testsuite/lib/libstdc++.exp: Rename effective target keywords
610 1.1 mrg to avoid dashes in the name.
611 1.1 mrg * testsuite/*: Update effective targe keywords.
612 1.1 mrg
613 1.1 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
614 1.1 mrg
615 1.1 mrg PR libstdc++/103086
616 1.1 mrg * testsuite/libstdc++-prettyprinters/cxx11.cc: Check unique_ptr
617 1.1 mrg with non-empty pointer and non-empty deleter.
618 1.1 mrg
619 1.1 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
620 1.1 mrg
621 1.1 mrg * testsuite/18_support/50594.cc: Check effective target.
622 1.1 mrg * testsuite/20_util/allocator/1.cc: Likewise.
623 1.1 mrg * testsuite/20_util/allocator/overaligned.cc: Likewise.
624 1.1 mrg * testsuite/23_containers/unordered_map/96088.cc: Likewise.
625 1.1 mrg * testsuite/23_containers/unordered_multimap/96088.cc: Likewise.
626 1.1 mrg * testsuite/23_containers/unordered_multiset/96088.cc: Likewise.
627 1.1 mrg * testsuite/23_containers/unordered_set/96088.cc: Likewise.
628 1.1 mrg * testsuite/ext/throw_allocator/check_delete.cc: Likewise.
629 1.1 mrg * testsuite/ext/throw_allocator/check_new.cc: Likewise.
630 1.1 mrg * testsuite/lib/libstdc++.exp (check_effective_target_std_allocator_new):
631 1.1 mrg Define new proc.
632 1.1 mrg
633 1.1 mrg 2021-11-23 Jonathan Wakely <jwakely (a] redhat.com>
634 1.1 mrg
635 1.1 mrg PR libstdc++/103381
636 1.1 mrg * include/ext/bitmap_allocator.h: Include <bits/stl_function.h>
637 1.1 mrg instead of <functional>.
638 1.1 mrg
639 1.1 mrg 2021-11-22 Jonathan Wakely <jwakely (a] redhat.com>
640 1.1 mrg
641 1.1 mrg * include/bits/c++config (_GLIBCXX14_DEPRECATED): Fix condition
642 1.1 mrg checking for C++14.
643 1.1 mrg
644 1.1 mrg 2021-11-20 Franois Dumont <fdumont (a] gcc.gnu.org>
645 1.1 mrg
646 1.1 mrg * include/bits/erase_if.h (__erase_nodes_if): Add _UnsafeContainer template
647 1.1 mrg parameter. Use it to get iterators to work with.
648 1.1 mrg * include/debug/macros.h (__glibcxx_check_erase2): New.
649 1.1 mrg * include/debug/map.h (map<>::erase(_Base_const_iterator)): New.
650 1.1 mrg (map<>::erase(const_iterator)): Use latter.
651 1.1 mrg * include/debug/multimap.h (multimap<>::erase(_Base_const_iterator)): New.
652 1.1 mrg (multimap<>::erase(const_iterator)): Use latter.
653 1.1 mrg * include/debug/multiset.h (multiset<>::erase(_Base_const_iterator)): New.
654 1.1 mrg (multiset<>::erase(const_iterator)): Use latter.
655 1.1 mrg * include/debug/set.h (set<>::erase(_Base_const_iterator)): New.
656 1.1 mrg (set<>::erase(const_iterator)): Use latter.
657 1.1 mrg * include/debug/unordered_map (unordered_map<>::erase(_Base_const_iterator)): New.
658 1.1 mrg (unordered_multimap<>::erase(const_iterator)): New.
659 1.1 mrg * include/debug/unordered_set (unordered_set<>::erase(_Base_const_iterator)): New.
660 1.1 mrg (unordered_multiset<>::erase(const_iterator)): New.
661 1.1 mrg * include/experimental/map (erase_if): Adapt.
662 1.1 mrg * include/experimental/set (erase_if): Adapt.
663 1.1 mrg * include/experimental/unordered_map (erase_if): Adapt.
664 1.1 mrg * include/experimental/unordered_set (erase_if): Adapt.
665 1.1 mrg * include/std/map (erase_if): Adapt.
666 1.1 mrg * include/std/set (erase_if): Adapt.
667 1.1 mrg * include/std/unordered_map (erase_if): Adapt.
668 1.1 mrg * include/std/unordered_set (erase_if): Adapt.
669 1.1 mrg
670 1.1 mrg 2021-11-19 Jonathan Wakely <jwakely (a] redhat.com>
671 1.1 mrg
672 1.1 mrg * testsuite/27_io/basic_istringstream/cons/char/1.cc: Check all
673 1.1 mrg constructors.
674 1.1 mrg * testsuite/27_io/basic_istringstream/cons/wchar_t/1.cc:
675 1.1 mrg Likewise.
676 1.1 mrg * testsuite/27_io/basic_ostringstream/cons/char/1.cc: Likewise.
677 1.1 mrg * testsuite/27_io/basic_ostringstream/cons/wchar_t/1.cc:
678 1.1 mrg Likewise.
679 1.1 mrg * testsuite/27_io/basic_stringstream/cons/char/1.cc: Likewise.
680 1.1 mrg * testsuite/27_io/basic_stringstream/cons/wchar_t/1.cc:
681 1.1 mrg Likewise.
682 1.1 mrg
683 1.1 mrg 2021-11-19 Jonathan Wakely <jwakely (a] redhat.com>
684 1.1 mrg
685 1.1 mrg * src/c++98/locale_init.cc (_S_initialize_once): Check if
686 1.1 mrg initialization has already been done.
687 1.1 mrg (_S_initialize): Replace __gthread_active_p with
688 1.1 mrg __is_single_threaded. Use __builtin_expect.
689 1.1 mrg
690 1.1 mrg 2021-11-19 Jonathan Wakely <jwakely (a] redhat.com>
691 1.1 mrg
692 1.1 mrg PR libstdc++/103295
693 1.1 mrg * include/bits/basic_string.tcc (_M_construct): Use the
694 1.1 mrg traits assign member to write into allcoated memory.
695 1.1 mrg
696 1.1 mrg 2021-11-19 Iain Sandoe <iain (a] sandoe.co.uk>
697 1.1 mrg
698 1.1 mrg * testsuite/lib/prune.exp: Prune dsymutil (ld64) warning.
699 1.1 mrg
700 1.1 mrg 2021-11-19 Jonathan Wakely <jwakely (a] redhat.com>
701 1.1 mrg
702 1.1 mrg PR libstdc++/103332
703 1.1 mrg PR libstdc++/102958
704 1.1 mrg * testsuite/21_strings/basic_string/capacity/char/1.cc: Add
705 1.1 mrg -Wno-stringop-overflow.
706 1.1 mrg * testsuite/21_strings/basic_string/operators/char/1.cc:
707 1.1 mrg Likewise.
708 1.1 mrg * testsuite/experimental/filesystem/path/factory/u8path-char8_t.cc:
709 1.1 mrg Add -Wno-stringop-overread.
710 1.1 mrg
711 1.1 mrg 2021-11-19 Jonathan Wakely <jwakely (a] redhat.com>
712 1.1 mrg
713 1.1 mrg PR libstdc++/103295
714 1.1 mrg * include/bits/basic_string.h (_Alloc_traits): Replace typedef
715 1.1 mrg with struct for C++20 mode.
716 1.1 mrg * include/bits/basic_string.tcc (_M_replace): Use _Alloc_traits
717 1.1 mrg for allocation.
718 1.1 mrg * include/bits/char_traits.h (__gnu_cxx::char_traits::assign):
719 1.1 mrg Use std::_Construct during constant evaluation.
720 1.1 mrg (__gnu_cxx::char_traits::assign(CharT*, const CharT*, size_t)):
721 1.1 mrg Likewise. Replace std::fill_n with memset or manual loop.
722 1.1 mrg (__gnu_cxx::char_traits::copy): Likewise, replacing std::copy
723 1.1 mrg with memcpy.
724 1.1 mrg * include/ext/vstring.h: Include <bits/stl_algobase.h> for
725 1.1 mrg std::min.
726 1.1 mrg * include/std/string_view: Likewise.
727 1.1 mrg * testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
728 1.1 mrg Add constexpr test.
729 1.1 mrg
730 1.1 mrg 2021-11-19 Tamar Christina <tamar.christina (a] arm.com>
731 1.1 mrg
732 1.1 mrg PR libstdc++/103305
733 1.1 mrg * config/os/newlib/ctype_base.h (upper, lower, alpha, digit, xdigit,
734 1.1 mrg space, print, graph, cntrl, punct, alnum, blank): Use short or long
735 1.1 mrg names depending on if short ones are defined.
736 1.1 mrg
737 1.1 mrg 2021-11-18 Jonathan Wakely <jwakely (a] redhat.com>
738 1.1 mrg
739 1.1 mrg * include/bits/char_traits.h (__gnu_cxx::char_traits::move):
740 1.1 mrg Do not compare unrelated pointers during constant evaluation.
741 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
742 1.1 mrg Improve tests for char_traits::move.
743 1.1 mrg
744 1.1 mrg 2021-11-18 Jonathan Wakely <jwakely (a] redhat.com>
745 1.1 mrg
746 1.1 mrg * acinclude.m4: Replace AC_CACHE_VAL with AC_CACHE_CHECK.
747 1.1 mrg * configure: Regenerate.
748 1.1 mrg
749 1.1 mrg 2021-11-17 Jonathan Wakely <jwakely (a] redhat.com>
750 1.1 mrg
751 1.1 mrg * include/experimental/internet (address): Use std::_Construct
752 1.1 mrg to initialize union members.
753 1.1 mrg
754 1.1 mrg 2021-11-17 Jonathan Wakely <jwakely (a] redhat.com>
755 1.1 mrg
756 1.1 mrg * include/bits/basic_string.h (_M_construct_aux): Only define
757 1.1 mrg for C++98. Remove constexpr.
758 1.1 mrg (_M_construct_aux_2): Likewise.
759 1.1 mrg (_M_construct(InputIter, InputIter)): Remove.
760 1.1 mrg (basic_string(const basic_string&)): Call _M_construct with
761 1.1 mrg iterator category argument.
762 1.1 mrg (basic_string(const basic_string&, size_type, const Alloc&)):
763 1.1 mrg Likewise.
764 1.1 mrg (basic_string(const basic_string&, size_type, size_type)):
765 1.1 mrg Likewise.
766 1.1 mrg (basic_string(const charT*, size_type, const Alloc&)): Likewise.
767 1.1 mrg Check for null pointer.
768 1.1 mrg (basic_string(const charT*, const Alloc&)): Likewise.
769 1.1 mrg (basic_string(initializer_list<charT>, const Alloc&)): Call
770 1.1 mrg _M_construct with iterator category argument.
771 1.1 mrg (basic_string(const basic_string&, const Alloc&)): Likewise.
772 1.1 mrg (basic_string(basic_string&&, const Alloc&)): Likewise.
773 1.1 mrg (basic_string(_InputIter, _InputIter, const Alloc&)): Likewise
774 1.1 mrg for C++11 and later, call _M_construct_aux for C++98.
775 1.1 mrg * include/bits/basic_string.tcc
776 1.1 mrg (_M_construct(I, I, input_iterator_tag)): Replace try-block with
777 1.1 mrg RAII type.
778 1.1 mrg (_M_construct(I, I, forward_iterator_tag)): Likewise. Remove
779 1.1 mrg __is_null_pointer check.
780 1.1 mrg
781 1.1 mrg 2021-11-17 Jonathan Wakely <jwakely (a] redhat.com>
782 1.1 mrg
783 1.1 mrg PR libstdc++/103295
784 1.1 mrg * include/bits/basic_string.h (_M_use_local_data()): New
785 1.1 mrg member function to make local buffer the active member.
786 1.1 mrg (assign(const basic_string&)): Use it.
787 1.1 mrg * include/bits/basic_string.tcc (_M_construct, reserve()):
788 1.1 mrg Likewise.
789 1.1 mrg
790 1.1 mrg 2021-11-17 Jonathan Wakely <jwakely (a] redhat.com>
791 1.1 mrg
792 1.1 mrg PR libstdc++/103240
793 1.1 mrg * libsupc++/tinfo2.cc (type_info::before): Use unadjusted name
794 1.1 mrg to check for the '*' prefix.
795 1.1 mrg * testsuite/util/testsuite_shared.cc: Add type_info object for
796 1.1 mrg use in new test.
797 1.1 mrg * testsuite/18_support/type_info/103240.cc: New test.
798 1.1 mrg
799 1.1 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
800 1.1 mrg
801 1.1 mrg * include/bits/basic_string.h (operator<=>): Use constexpr
802 1.1 mrg unconditionally.
803 1.1 mrg * testsuite/21_strings/basic_string/modifiers/constexpr.cc:
804 1.1 mrg Require cxx11-abit effective target.
805 1.1 mrg * testsuite/21_strings/headers/string/synopsis.cc: Add
806 1.1 mrg conditional constexpr to declarations, and adjust relational
807 1.1 mrg operators for C++20.
808 1.1 mrg
809 1.1 mrg 2021-11-16 Patrick Palka <ppalka (a] redhat.com>
810 1.1 mrg
811 1.1 mrg * src/c++17/ryu/MERGE: Update the commit hash.
812 1.1 mrg * src/c++17/ryu/d2s_intrinsics.h: Merge from Ryu's master
813 1.1 mrg branch.
814 1.1 mrg
815 1.1 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
816 1.1 mrg
817 1.1 mrg * include/bits/basic_string.h (basic_string, operator""s): Add
818 1.1 mrg constexpr for C++20.
819 1.1 mrg (basic_string::basic_string(basic_string&&)): Only copy
820 1.1 mrg initialized portion of the buffer.
821 1.1 mrg (basic_string::basic_string(basic_string&&, const Alloc&)):
822 1.1 mrg Likewise.
823 1.1 mrg * include/bits/basic_string.tcc (basic_string): Add constexpr
824 1.1 mrg for C++20.
825 1.1 mrg (basic_string::swap(basic_string&)): Only copy initialized
826 1.1 mrg portions of the buffers.
827 1.1 mrg (basic_string::_M_replace): Add constexpr implementation that
828 1.1 mrg doesn't depend on pointer comparisons.
829 1.1 mrg * include/bits/cow_string.h: Adjust comment.
830 1.1 mrg * include/ext/type_traits.h (__is_null_pointer): Add constexpr.
831 1.1 mrg * include/std/string (erase, erase_if): Add constexpr.
832 1.1 mrg * include/std/version (__cpp_lib_constexpr_string): Update
833 1.1 mrg value.
834 1.1 mrg * testsuite/21_strings/basic_string/cons/char/constexpr.cc:
835 1.1 mrg New test.
836 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/constexpr.cc:
837 1.1 mrg New test.
838 1.1 mrg * testsuite/21_strings/basic_string/literals/constexpr.cc:
839 1.1 mrg New test.
840 1.1 mrg * testsuite/21_strings/basic_string/modifiers/constexpr.cc: New test.
841 1.1 mrg * testsuite/21_strings/basic_string/modifiers/swap/char/constexpr.cc:
842 1.1 mrg New test.
843 1.1 mrg * testsuite/21_strings/basic_string/modifiers/swap/wchar_t/constexpr.cc:
844 1.1 mrg New test.
845 1.1 mrg * testsuite/21_strings/basic_string/version.cc: New test.
846 1.1 mrg
847 1.1 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
848 1.1 mrg
849 1.1 mrg * include/bits/stl_bvector.h (swap(_Bit_reference, _Bit_reference))
850 1.1 mrg (swap(_Bit_reference, bool&), swap(bool&, _Bit_reference)):
851 1.1 mrg Define as hidden friends of _Bit_reference.
852 1.1 mrg
853 1.1 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
854 1.1 mrg
855 1.1 mrg * testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
856 1.1 mrg Fix reads past the end of strings.
857 1.1 mrg * testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
858 1.1 mrg Likewise.
859 1.1 mrg * testsuite/experimental/string_view/operations/compare/wchar_t/1.cc:
860 1.1 mrg Likewise.
861 1.1 mrg
862 1.1 mrg 2021-11-16 Jonathan Wakely <jwakely (a] redhat.com>
863 1.1 mrg
864 1.1 mrg * testsuite/21_strings/basic_string/allocator/71964.cc: Fix
865 1.1 mrg typo.
866 1.1 mrg * testsuite/23_containers/set/allocator/71964.cc: Likewise.
867 1.1 mrg
868 1.1 mrg 2021-11-15 Jason Merrill <jason (a] redhat.com>
869 1.1 mrg
870 1.1 mrg * testsuite/20_util/to_address/1_neg.cc: Adjust error.
871 1.1 mrg * testsuite/26_numerics/random/concept.cc: Adjust asserts.
872 1.1 mrg
873 1.1 mrg 2021-11-15 Franois Dumont <fdumont (a] gcc.gnu.org>
874 1.1 mrg
875 1.1 mrg * include/bits/hashtable_policy.h:
876 1.1 mrg (_Hash_code_base<>::_M_hash_code(const _Hash&, const _Hash_node_value<_Value, true>&)): New.
877 1.1 mrg (_Hash_code_base<>::_M_hash_code<_H2>(const _H2&, const _Hash_node_value<>&)): New.
878 1.1 mrg * include/bits/hashtable.h (_Hashtable<>::_M_merge_unique): Use latter.
879 1.1 mrg (_Hashtable<>::_M_merge_multi): Likewise.
880 1.1 mrg * testsuite/23_containers/unordered_multiset/modifiers/merge.cc (test05): New test.
881 1.1 mrg * testsuite/23_containers/unordered_set/modifiers/merge.cc (test04): New test.
882 1.1 mrg
883 1.1 mrg 2021-11-15 Jason Merrill <jason (a] redhat.com>
884 1.1 mrg
885 1.1 mrg * src/c++17/memory_resource.cc: Add missing constexpr.
886 1.1 mrg * include/experimental/internet: Only mark copy constructor
887 1.1 mrg as constexpr with __cpp_constexpr_dynamic_alloc.
888 1.1 mrg
889 1.1 mrg 2021-11-14 Franois Dumont <fdumont (a] gcc.gnu.org>
890 1.1 mrg
891 1.1 mrg * include/debug/safe_container.h (_Safe_container<>::_M_safe): Remove.
892 1.1 mrg * include/debug/deque (deque::operator=(initializer_list<>)): Replace
893 1.1 mrg _M_base() call with _Base:: call.
894 1.1 mrg (deque::operator[](size_type)): Likewise.
895 1.1 mrg * include/debug/forward_list (forward_list(forward_list&&, const allocator_type&)):
896 1.1 mrg Remove _M_safe() and _M_base() calls.
897 1.1 mrg (forward_list::operator=(initializer_list<>)): Remove _M_base() calls.
898 1.1 mrg (forward_list::splice_after, forward_list::merge): Likewise.
899 1.1 mrg * include/debug/list (list(list&&, const allocator_type&)):
900 1.1 mrg Remove _M_safe() and _M_base() calls.
901 1.1 mrg (list::operator=(initializer_list<>)): Remove _M_base() calls.
902 1.1 mrg (list::splice, list::merge): Likewise.
903 1.1 mrg * include/debug/map.h (map(map&&, const allocator_type&)):
904 1.1 mrg Remove _M_safe() and _M_base() calls.
905 1.1 mrg (map::operator=(initializer_list<>)): Remove _M_base() calls.
906 1.1 mrg * include/debug/multimap.h (multimap(multimap&&, const allocator_type&)):
907 1.1 mrg Remove _M_safe() and _M_base() calls.
908 1.1 mrg (multimap::operator=(initializer_list<>)): Remove _M_base() calls.
909 1.1 mrg * include/debug/set.h (set(set&&, const allocator_type&)):
910 1.1 mrg Remove _M_safe() and _M_base() calls.
911 1.1 mrg (set::operator=(initializer_list<>)): Remove _M_base() calls.
912 1.1 mrg * include/debug/multiset.h (multiset(multiset&&, const allocator_type&)):
913 1.1 mrg Remove _M_safe() and _M_base() calls.
914 1.1 mrg (multiset::operator=(initializer_list<>)): Remove _M_base() calls.
915 1.1 mrg * include/debug/string (basic_string(basic_string&&, const allocator_type&)):
916 1.1 mrg Remove _M_safe() and _M_base() calls.
917 1.1 mrg (basic_string::operator=(initializer_list<>)): Remove _M_base() call.
918 1.1 mrg (basic_string::operator=(const _CharT*), basic_string::operator=(_CharT)): Likewise.
919 1.1 mrg (basic_string::operator[](size_type), basic_string::operator+=(const basic_string&)):
920 1.1 mrg Likewise.
921 1.1 mrg (basic_string::operator+=(const _Char*), basic_string::operator+=(_CharT)): Likewise.
922 1.1 mrg * include/debug/unordered_map (unordered_map(unordered_map&&, const allocator_type&)):
923 1.1 mrg Remove _M_safe() and _M_base() calls.
924 1.1 mrg (unordered_map::operator=(initializer_list<>), unordered_map::merge):
925 1.1 mrg Remove _M_base() calls.
926 1.1 mrg (unordered_multimap(unordered_multimap&&, const allocator_type&)):
927 1.1 mrg Remove _M_safe() and _M_base() calls.
928 1.1 mrg (unordered_multimap::operator=(initializer_list<>), unordered_multimap::merge):
929 1.1 mrg Remove _M_base() calls.
930 1.1 mrg * include/debug/unordered_set (unordered_set(unordered_set&&, const allocator_type&)):
931 1.1 mrg Remove _M_safe() and _M_base() calls.
932 1.1 mrg (unordered_set::operator=(initializer_list<>), unordered_set::merge):
933 1.1 mrg Remove _M_base() calls.
934 1.1 mrg (unordered_multiset(unordered_multiset&&, const allocator_type&)):
935 1.1 mrg Remove _M_safe() and _M_base() calls.
936 1.1 mrg (unordered_multiset::operator=(initializer_list<>), unordered_multiset::merge):
937 1.1 mrg Remove _M_base() calls.
938 1.1 mrg * include/debug/vector (vector(vector&&, const allocator_type&)):
939 1.1 mrg Remove _M_safe() and _M_base() calls.
940 1.1 mrg (vector::operator=(initializer_list<>)): Remove _M_base() calls.
941 1.1 mrg (vector::operator[](size_type)): Likewise.
942 1.1 mrg
943 1.1 mrg 2021-11-13 Jonathan Wakely <jwakely (a] redhat.com>
944 1.1 mrg
945 1.1 mrg * include/Makefile.am: Add spanstream header.
946 1.1 mrg * include/Makefile.in: Regenerate.
947 1.1 mrg * include/precompiled/stdc++.h: Add spanstream header.
948 1.1 mrg * include/std/version (__cpp_lib_spanstream): Define.
949 1.1 mrg * include/std/spanstream: New file.
950 1.1 mrg * testsuite/27_io/spanstream/1.cc: New test.
951 1.1 mrg * testsuite/27_io/spanstream/version.cc: New test.
952 1.1 mrg
953 1.1 mrg 2021-11-13 Hans-Peter Nilsson <hp (a] axis.com>
954 1.1 mrg
955 1.1 mrg PR libstdc++/103166
956 1.1 mrg * acinclude.m4 (GLIBCXX_CHECK_GETENTROPY, GLIBCXX_CHECK_ARC4RANDOM):
957 1.1 mrg Use GCC_TRY_COMPILE_OR_LINK instead of AC_TRY_COMPILE.
958 1.1 mrg * configure: Regenerate.
959 1.1 mrg
960 1.1 mrg 2021-11-12 Jonathan Wakely <jwakely (a] redhat.com>
961 1.1 mrg
962 1.1 mrg PR libstdc++/59675
963 1.1 mrg * acinclude.m4 (libtool_VERSION): Bump version.
964 1.1 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.30): Add version and
965 1.1 mrg export new symbol.
966 1.1 mrg * configure: Regenerate.
967 1.1 mrg * include/bits/c++config (__replacement_assert): Remove, declare
968 1.1 mrg __glibcxx_assert_fail instead.
969 1.1 mrg * src/c++11/debug.cc (__glibcxx_assert_fail): New function to
970 1.1 mrg replace __replacement_assert, writing to stderr instead of
971 1.1 mrg stdout.
972 1.1 mrg * testsuite/util/testsuite_abi.cc: Update latest version.
973 1.1 mrg
974 1.1 mrg 2021-11-12 Jonathan Wakely <jwakely (a] redhat.com>
975 1.1 mrg Josh Marshall <joshua.r.marshall.1991 (a] gmail.com>
976 1.1 mrg
977 1.1 mrg * include/bits/alloc_traits.h (_Destroy): Make constexpr for
978 1.1 mrg C++20 mode.
979 1.1 mrg * include/bits/allocator.h (__shrink_to_fit::_S_do_it):
980 1.1 mrg Likewise.
981 1.1 mrg * include/bits/stl_algobase.h (__fill_a1): Declare _Bit_iterator
982 1.1 mrg overload constexpr for C++20.
983 1.1 mrg * include/bits/stl_bvector.h (_Bit_type, _S_word_bit): Move out
984 1.1 mrg of inline namespace.
985 1.1 mrg (_Bit_reference, _Bit_iterator_base, _Bit_iterator)
986 1.1 mrg (_Bit_const_iterator, _Bvector_impl_data, _Bvector_base)
987 1.1 mrg (vector<bool, A>>): Add constexpr to every member function.
988 1.1 mrg (_Bvector_base::_M_allocate): Initialize storage during constant
989 1.1 mrg evaluation.
990 1.1 mrg (vector<bool, A>::_M_initialize_value): Use __fill_bvector_n
991 1.1 mrg instead of memset.
992 1.1 mrg (__fill_bvector_n): New helper function to replace memset during
993 1.1 mrg constant evaluation.
994 1.1 mrg * include/bits/stl_uninitialized.h (__uninitialized_copy<false>):
995 1.1 mrg Move logic to ...
996 1.1 mrg (__do_uninit_copy): New function.
997 1.1 mrg (__uninitialized_fill<false>): Move logic to ...
998 1.1 mrg (__do_uninit_fill): New function.
999 1.1 mrg (__uninitialized_fill_n<false>): Move logic to ...
1000 1.1 mrg (__do_uninit_fill_n): New function.
1001 1.1 mrg (__uninitialized_copy_a): Add constexpr. Use __do_uninit_copy.
1002 1.1 mrg (__uninitialized_move_a, __uninitialized_move_if_noexcept_a):
1003 1.1 mrg Add constexpr.
1004 1.1 mrg (__uninitialized_fill_a): Add constexpr. Use __do_uninit_fill.
1005 1.1 mrg (__uninitialized_fill_n_a): Add constexpr. Use
1006 1.1 mrg __do_uninit_fill_n.
1007 1.1 mrg (__uninitialized_default_n, __uninitialized_default_n_a)
1008 1.1 mrg (__relocate_a_1, __relocate_a): Add constexpr.
1009 1.1 mrg * include/bits/stl_vector.h (_Vector_impl_data, _Vector_impl)
1010 1.1 mrg (_Vector_base, vector): Add constexpr to every member function.
1011 1.1 mrg (_Vector_impl::_S_adjust): Disable ASan annotation during
1012 1.1 mrg constant evaluation.
1013 1.1 mrg (_Vector_base::_S_use_relocate): Disable bitwise-relocation
1014 1.1 mrg during constant evaluation.
1015 1.1 mrg (vector::_Temporary_value): Use a union for storage.
1016 1.1 mrg * include/bits/vector.tcc (vector, vector<bool>): Add constexpr
1017 1.1 mrg to every member function.
1018 1.1 mrg * include/std/vector (erase_if, erase): Add constexpr.
1019 1.1 mrg * testsuite/23_containers/headers/vector/synopsis.cc: Add
1020 1.1 mrg constexpr for C++20 mode.
1021 1.1 mrg * testsuite/23_containers/vector/bool/cmp_c++20.cc: Change to
1022 1.1 mrg compile-only test using constant expressions.
1023 1.1 mrg * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust
1024 1.1 mrg namespace for _S_word_bit.
1025 1.1 mrg * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
1026 1.1 mrg Likewise.
1027 1.1 mrg * testsuite/23_containers/vector/cmp_c++20.cc: Likewise.
1028 1.1 mrg * testsuite/23_containers/vector/cons/89164.cc: Adjust errors
1029 1.1 mrg for C++20 and move C++17 test to ...
1030 1.1 mrg * testsuite/23_containers/vector/cons/89164_c++17.cc: ... here.
1031 1.1 mrg * testsuite/23_containers/vector/bool/capacity/constexpr.cc: New test.
1032 1.1 mrg * testsuite/23_containers/vector/bool/cons/constexpr.cc: New test.
1033 1.1 mrg * testsuite/23_containers/vector/bool/element_access/constexpr.cc: New test.
1034 1.1 mrg * testsuite/23_containers/vector/bool/modifiers/assign/constexpr.cc: New test.
1035 1.1 mrg * testsuite/23_containers/vector/bool/modifiers/constexpr.cc: New test.
1036 1.1 mrg * testsuite/23_containers/vector/bool/modifiers/swap/constexpr.cc: New test.
1037 1.1 mrg * testsuite/23_containers/vector/capacity/constexpr.cc: New test.
1038 1.1 mrg * testsuite/23_containers/vector/cons/constexpr.cc: New test.
1039 1.1 mrg * testsuite/23_containers/vector/data_access/constexpr.cc: New test.
1040 1.1 mrg * testsuite/23_containers/vector/element_access/constexpr.cc: New test.
1041 1.1 mrg * testsuite/23_containers/vector/modifiers/assign/constexpr.cc: New test.
1042 1.1 mrg * testsuite/23_containers/vector/modifiers/constexpr.cc: New test.
1043 1.1 mrg * testsuite/23_containers/vector/modifiers/swap/constexpr.cc: New test.
1044 1.1 mrg
1045 1.1 mrg 2021-11-11 Jonathan Wakely <jwakely (a] redhat.com>
1046 1.1 mrg
1047 1.1 mrg * include/debug/deque (deque::operator=(const deque&)): Remove
1048 1.1 mrg definition.
1049 1.1 mrg * include/debug/list (list::operator=(const list&)): Likewise.
1050 1.1 mrg * include/debug/map.h (map::operator=(const map&)): Likewise.
1051 1.1 mrg * include/debug/multimap.h (multimap::operator=(const multimap&)):
1052 1.1 mrg Likewise.
1053 1.1 mrg * include/debug/multiset.h (multiset::operator=(const multiset&)):
1054 1.1 mrg Likewise.
1055 1.1 mrg * include/debug/set.h (set::operator=(const set&)): Likewise.
1056 1.1 mrg * include/debug/string (basic_string::operator=(const basic_string&)):
1057 1.1 mrg Likewise.
1058 1.1 mrg * include/debug/vector (vector::operator=(const vector&)):
1059 1.1 mrg Likewise.
1060 1.1 mrg (_Safe_vector::operator=(const _Safe_vector&)): Define for
1061 1.1 mrg C++98 as well.
1062 1.1 mrg
1063 1.1 mrg 2021-11-11 Jonathan Wakely <jwakely (a] redhat.com>
1064 1.1 mrg
1065 1.1 mrg * include/std/memory_resource (memory_resource::allocate):
1066 1.1 mrg Implicitly create objects in the returned storage.
1067 1.1 mrg
1068 1.1 mrg 2021-11-11 Jonathan Wakely <jwakely (a] redhat.com>
1069 1.1 mrg
1070 1.1 mrg * include/bits/stl_bvector.h (vector<bool>::data()): Give
1071 1.1 mrg protected access, and delete for C++11 and later.
1072 1.1 mrg
1073 1.1 mrg 2021-11-10 Jonathan Wakely <jwakely (a] redhat.com>
1074 1.1 mrg
1075 1.1 mrg PR libstdc++/100117
1076 1.1 mrg * testsuite/17_intro/headers/c++1998/49745.cc: Explicitly list
1077 1.1 mrg all C++ headers instead of including <bits/stdc++.h>
1078 1.1 mrg
1079 1.1 mrg 2021-11-10 Jonathan Wakely <jwakely (a] redhat.com>
1080 1.1 mrg
1081 1.1 mrg PR libstdc++/100748
1082 1.1 mrg PR libstdc++/103133
1083 1.1 mrg * config/os/gnu-linux/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
1084 1.1 mrg Define for glibc 2.34 and later.
1085 1.1 mrg
1086 1.1 mrg 2021-11-09 Franois Dumont <fdumont (a] gcc.gnu.org>
1087 1.1 mrg
1088 1.1 mrg * include/bits/hashtable_policy.h (__distance_fw): Replace class keyword with
1089 1.1 mrg typename.
1090 1.1 mrg * include/bits/hashtable.h (_Hashtable<>::_M_merge_unique): Remove noexcept
1091 1.1 mrg qualification. Use const_iterator for node extraction/reinsert.
1092 1.1 mrg (_Hashtable<>::_M_merge_multi): Likewise. Compute new hash code before extract.
1093 1.1 mrg * include/debug/safe_container.h (_Safe_container<>): Make all methods
1094 1.1 mrg protected.
1095 1.1 mrg * include/debug/safe_unordered_container.h
1096 1.1 mrg (_Safe_unordered_container<>::_UContInvalidatePred<_ExtractKey, _Source>): New.
1097 1.1 mrg (_Safe_unordered_container<>::_UMContInvalidatePred<_ExtractKey, _Source>): New.
1098 1.1 mrg (_Safe_unordered_container<>::_UContMergeGuard<_Source, _InvalidatePred>): New.
1099 1.1 mrg (_Safe_unordered_container<>::_S_uc_guard<_ExtractKey, _Source>): New.
1100 1.1 mrg (_Safe_unordered_container<>::_S_umc_guard<_ExtractKey, _Source>): New.
1101 1.1 mrg (_Safe_unordered_container<>::_M_invalide_all): Make public.
1102 1.1 mrg (_Safe_unordered_container<>::_M_invalide_if): Likewise.
1103 1.1 mrg (_Safe_unordered_container<>::_M_invalide_local_if): Likewise.
1104 1.1 mrg * include/debug/unordered_map
1105 1.1 mrg (unordered_map<>::mapped_type, pointer, const_pointer): New typedef.
1106 1.1 mrg (unordered_map<>::reference, const_reference, difference_type): New typedef.
1107 1.1 mrg (unordered_map<>::get_allocator, empty, size, max_size): Add usings.
1108 1.1 mrg (unordered_map<>::bucket_count, max_bucket_count, bucket): Add usings.
1109 1.1 mrg (unordered_map<>::hash_function, key_equal, count, contains): Add usings.
1110 1.1 mrg (unordered_map<>::operator[], at, rehash, reserve): Add usings.
1111 1.1 mrg (unordered_map<>::merge): New.
1112 1.1 mrg (unordered_multimap<>::mapped_type, pointer, const_pointer): New typedef.
1113 1.1 mrg (unordered_multimap<>::reference, const_reference, difference_type): New typedef.
1114 1.1 mrg (unordered_multimap<>::get_allocator, empty, size, max_size): Add usings.
1115 1.1 mrg (unordered_multimap<>::bucket_count, max_bucket_count, bucket): Add usings.
1116 1.1 mrg (unordered_multimap<>::hash_function, key_equal, count, contains): Add usings.
1117 1.1 mrg (unordered_multimap<>::rehash, reserve): Add usings.
1118 1.1 mrg (unordered_multimap<>::merge): New.
1119 1.1 mrg * include/debug/unordered_set
1120 1.1 mrg (unordered_set<>::mapped_type, pointer, const_pointer): New typedef.
1121 1.1 mrg (unordered_set<>::reference, const_reference, difference_type): New typedef.
1122 1.1 mrg (unordered_set<>::get_allocator, empty, size, max_size): Add usings.
1123 1.1 mrg (unordered_set<>::bucket_count, max_bucket_count, bucket): Add usings.
1124 1.1 mrg (unordered_set<>::hash_function, key_equal, count, contains): Add usings.
1125 1.1 mrg (unordered_set<>::rehash, reserve): Add usings.
1126 1.1 mrg (unordered_set<>::merge): New.
1127 1.1 mrg (unordered_multiset<>::mapped_type, pointer, const_pointer): New typedef.
1128 1.1 mrg (unordered_multiset<>::reference, const_reference, difference_type): New typedef.
1129 1.1 mrg (unordered_multiset<>::get_allocator, empty, size, max_size): Add usings.
1130 1.1 mrg (unordered_multiset<>::bucket_count, max_bucket_count, bucket): Add usings.
1131 1.1 mrg (unordered_multiset<>::hash_function, key_equal, count, contains): Add usings.
1132 1.1 mrg (unordered_multiset<>::rehash, reserve): Add usings.
1133 1.1 mrg (unordered_multiset<>::merge): New.
1134 1.1 mrg * testsuite/23_containers/unordered_map/debug/merge1_neg.cc: New test.
1135 1.1 mrg * testsuite/23_containers/unordered_map/debug/merge2_neg.cc: New test.
1136 1.1 mrg * testsuite/23_containers/unordered_map/debug/merge3_neg.cc: New test.
1137 1.1 mrg * testsuite/23_containers/unordered_map/debug/merge4_neg.cc: New test.
1138 1.1 mrg * testsuite/23_containers/unordered_multimap/debug/merge1_neg.cc: New test.
1139 1.1 mrg * testsuite/23_containers/unordered_multimap/debug/merge2_neg.cc: New test.
1140 1.1 mrg * testsuite/23_containers/unordered_multimap/debug/merge3_neg.cc: New test.
1141 1.1 mrg * testsuite/23_containers/unordered_multimap/debug/merge4_neg.cc: New test.
1142 1.1 mrg * testsuite/23_containers/unordered_multiset/debug/merge1_neg.cc: New test.
1143 1.1 mrg * testsuite/23_containers/unordered_multiset/debug/merge2_neg.cc: New test.
1144 1.1 mrg * testsuite/23_containers/unordered_multiset/debug/merge3_neg.cc: New test.
1145 1.1 mrg * testsuite/23_containers/unordered_multiset/debug/merge4_neg.cc: New test.
1146 1.1 mrg * testsuite/23_containers/unordered_set/debug/merge1_neg.cc: New test.
1147 1.1 mrg * testsuite/23_containers/unordered_set/debug/merge2_neg.cc: New test.
1148 1.1 mrg * testsuite/23_containers/unordered_set/debug/merge3_neg.cc: New test.
1149 1.1 mrg * testsuite/23_containers/unordered_set/debug/merge4_neg.cc: New test.
1150 1.1 mrg * testsuite/util/testsuite_abi.h: [_GLIBCXX_DEBUG] Use normal unordered
1151 1.1 mrg container implementation.
1152 1.1 mrg
1153 1.1 mrg 2021-11-09 Jonathan Wakely <jwakely (a] redhat.com>
1154 1.1 mrg
1155 1.1 mrg * testsuite/26_numerics/random/random_device/cons/token.cc:
1156 1.1 mrg Print results of random_device_available checks.
1157 1.1 mrg
1158 1.1 mrg 2021-11-09 Jonathan Wakely <jwakely (a] redhat.com>
1159 1.1 mrg
1160 1.1 mrg PR libstdc++/103146
1161 1.1 mrg * src/c++11/random.cc: Check __powerpc64__ not __powerpc__.
1162 1.1 mrg
1163 1.1 mrg 2021-11-09 Jonathan Wakely <jwakely (a] redhat.com>
1164 1.1 mrg
1165 1.1 mrg * acinclude.m4 (GLIBCXX_CHECK_GETENTROPY, GLIBCXX_CHECK_ARC4RANDOM):
1166 1.1 mrg Define.
1167 1.1 mrg * configure.ac (GLIBCXX_CHECK_GETENTROPY, GLIBCXX_CHECK_ARC4RANDOM):
1168 1.1 mrg Use them.
1169 1.1 mrg * config.h.in: Regenerate.
1170 1.1 mrg * configure: Regenerate.
1171 1.1 mrg * src/c++11/random.cc (random_device): Add getentropy and
1172 1.1 mrg arc4random as sources.
1173 1.1 mrg * testsuite/26_numerics/random/random_device/cons/token.cc:
1174 1.1 mrg Check new tokens.
1175 1.1 mrg * testsuite/26_numerics/random/random_device/entropy.cc:
1176 1.1 mrg Likewise.
1177 1.1 mrg
1178 1.1 mrg 2021-11-09 Jonathan Wakely <jwakely (a] redhat.com>
1179 1.1 mrg
1180 1.1 mrg * testsuite/26_numerics/random/random_device/cons/token.cc:
1181 1.1 mrg Retry if random devices produce the same value.
1182 1.1 mrg
1183 1.1 mrg 2021-11-09 Rasmus Villemoes <rasmus.villemoes (a] prevas.dk>
1184 1.1 mrg
1185 1.1 mrg * config/os/vxworks/os_defines.h (_GLIBCXX_HAVE_TLS): Only
1186 1.1 mrg define for VxWorks >= 6.6.
1187 1.1 mrg
1188 1.1 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
1189 1.1 mrg
1190 1.1 mrg * include/bits/range_access.h (begin(valarray), end(valarray)):
1191 1.1 mrg Add noexcept.
1192 1.1 mrg
1193 1.1 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
1194 1.1 mrg
1195 1.1 mrg * include/std/tuple (tuple_size_v): Fix pack expansion.
1196 1.1 mrg
1197 1.1 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
1198 1.1 mrg
1199 1.1 mrg * src/c++11/random.cc (__x86_rdrand, __x86_rdseed): Add
1200 1.1 mrg [[unlikely]] attribute.
1201 1.1 mrg
1202 1.1 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
1203 1.1 mrg
1204 1.1 mrg * src/c++11/random.cc [__powerpc__] (USE_DARN): Define.
1205 1.1 mrg (__ppc_darn): New function to use POWER9 DARN instruction.
1206 1.1 mrg (Which): Add 'darn' enumerator.
1207 1.1 mrg (which_source): Check for __ppc_darn.
1208 1.1 mrg (random_device::_M_init): Support "darn" and "hw" tokens.
1209 1.1 mrg (random_device::_M_getentropy): Add darn to switch.
1210 1.1 mrg * testsuite/26_numerics/random/random_device/cons/token.cc:
1211 1.1 mrg Check "darn" token.
1212 1.1 mrg * testsuite/26_numerics/random/random_device/entropy.cc:
1213 1.1 mrg Likewise.
1214 1.1 mrg
1215 1.1 mrg 2021-11-05 Jonathan Wakely <jwakely (a] redhat.com>
1216 1.1 mrg
1217 1.1 mrg * testsuite/lib/gdb-test.exp: Add target selector support to the
1218 1.1 mrg dg-final directives.
1219 1.1 mrg * testsuite/libstdc++-prettyprinters/80276.cc: Add xfail for
1220 1.1 mrg C++20.
1221 1.1 mrg * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
1222 1.1 mrg * testsuite/libstdc++-prettyprinters/prettyprinters.exp: Tweak
1223 1.1 mrg comment.
1224 1.1 mrg
1225 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1226 1.1 mrg
1227 1.1 mrg PR libstdc++/103086
1228 1.1 mrg * python/libstdcxx/v6/printers.py (_tuple_impl_get): New helper
1229 1.1 mrg for accessing the tuple element stored in a _Tuple_impl node.
1230 1.1 mrg (tuple_get): New function for accessing a tuple element.
1231 1.1 mrg (unique_ptr_get): New function for accessing a unique_ptr.
1232 1.1 mrg (UniquePointerPrinter, StdPathPrinter): Use unique_ptr_get.
1233 1.1 mrg * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Cast
1234 1.1 mrg tuple to its base class before accessing _M_head_impl.
1235 1.1 mrg
1236 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1237 1.1 mrg
1238 1.1 mrg * doc/xml/manual/evolution.xml: Document deprecations.
1239 1.1 mrg * doc/html/*: Regenerate.
1240 1.1 mrg * libsupc++/exception (unexpected_handler, unexpected)
1241 1.1 mrg (get_unexpected, set_unexpected): Add deprecated attribute.
1242 1.1 mrg Do not define without _GLIBCXX_USE_DEPRECATED for C++17 and up.
1243 1.1 mrg * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Disable
1244 1.1 mrg deprecated warnings.
1245 1.1 mrg * libsupc++/eh_ptr.cc (std::rethrow_exception): Likewise.
1246 1.1 mrg * libsupc++/eh_terminate.cc: Likewise.
1247 1.1 mrg * libsupc++/eh_throw.cc (__cxa_init_primary_exception):
1248 1.1 mrg Likewise.
1249 1.1 mrg * libsupc++/unwind-cxx.h (struct __cxa_exception): Use
1250 1.1 mrg terminate_handler instead of unexpected_handler.
1251 1.1 mrg (struct __cxa_dependent_exception): Likewise.
1252 1.1 mrg (__unexpected): Likewise.
1253 1.1 mrg * testsuite/18_support/headers/exception/synopsis.cc: Add
1254 1.1 mrg dg-warning for deprecated warning.
1255 1.1 mrg * testsuite/18_support/exception_ptr/60612-unexpected.cc:
1256 1.1 mrg Disable deprecated warnings.
1257 1.1 mrg * testsuite/18_support/set_unexpected.cc: Likewise.
1258 1.1 mrg * testsuite/18_support/unexpected_handler.cc: Likewise.
1259 1.1 mrg
1260 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1261 1.1 mrg
1262 1.1 mrg * include/bits/utility.h (__find_uniq_type_in_pack): Move
1263 1.1 mrg definition to here, ...
1264 1.1 mrg * include/std/tuple (__find_uniq_type_in_pack): ... from here.
1265 1.1 mrg * include/std/variant (__detail__variant::__index_of): Remove.
1266 1.1 mrg (__detail::__variant::__exactly_once): Define using
1267 1.1 mrg __find_uniq_type_in_pack instead of __index_of.
1268 1.1 mrg (get<T>, get_if<T>, variant::__index_of): Likewise.
1269 1.1 mrg
1270 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1271 1.1 mrg
1272 1.1 mrg * include/bits/stl_pair.h (tuple_size_v): Define partial
1273 1.1 mrg specializations for std::pair.
1274 1.1 mrg * include/bits/utility.h (_Nth_type): Move definition here
1275 1.1 mrg and define primary template.
1276 1.1 mrg (tuple_size_v): Move definition here.
1277 1.1 mrg * include/std/array (tuple_size_v): Define partial
1278 1.1 mrg specializations for std::array.
1279 1.1 mrg * include/std/tuple (tuple_size_v): Move primary template to
1280 1.1 mrg <bits/utility.h>. Define partial specializations for
1281 1.1 mrg std::tuple.
1282 1.1 mrg (tuple_element): Change definition to use _Nth_type.
1283 1.1 mrg * include/std/variant (_Nth_type): Move to <bits/utility.h>.
1284 1.1 mrg (variant_alternative, variant): Adjust qualification of
1285 1.1 mrg _Nth_type.
1286 1.1 mrg * testsuite/20_util/tuple/element_access/get_neg.cc: Prune
1287 1.1 mrg additional errors from _Nth_type.
1288 1.1 mrg
1289 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1290 1.1 mrg
1291 1.1 mrg * include/std/variant (__detail::__variant::__emplace): New
1292 1.1 mrg function template.
1293 1.1 mrg (_Copy_assign_base::operator=): Reorder conditions to match
1294 1.1 mrg bulleted list of effects in the standard. Use __emplace instead
1295 1.1 mrg of _M_reset followed by _Construct.
1296 1.1 mrg (_Move_assign_base::operator=): Likewise.
1297 1.1 mrg (__construct_by_index): Remove.
1298 1.1 mrg (variant::emplace): Use __emplace instead of _M_reset followed
1299 1.1 mrg by __construct_by_index.
1300 1.1 mrg (variant::swap): Hoist valueless cases out of visitor. Use
1301 1.1 mrg __emplace to replace _M_reset followed by _Construct.
1302 1.1 mrg
1303 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1304 1.1 mrg
1305 1.1 mrg * include/std/variant (_Nth_type): Define partial
1306 1.1 mrg specializations to reduce number of instantiations.
1307 1.1 mrg (variant_size_v): Define partial specializations to avoid
1308 1.1 mrg instantiations.
1309 1.1 mrg (variant_alternative): Use _Nth_type. Add static assert.
1310 1.1 mrg (__tuple_count, __tuple_count_v): Replace with ...
1311 1.1 mrg (__count): New variable template.
1312 1.1 mrg (_Variant_union): Add deleted constructor.
1313 1.1 mrg (variant::__to_type): Use _Nth_type.
1314 1.1 mrg (variant::emplace): Use _Nth_type. Add deleted overloads for
1315 1.1 mrg invalid types and indices.
1316 1.1 mrg
1317 1.1 mrg 2021-11-04 Jonathan Wakely <jwakely (a] redhat.com>
1318 1.1 mrg
1319 1.1 mrg PR libstdc++/102912
1320 1.1 mrg * include/std/variant (_Variant_storage::__index_of): Remove.
1321 1.1 mrg (__variant_construct_single): Remove.
1322 1.1 mrg (__variant_construct): Remove.
1323 1.1 mrg (_Copy_ctor_base::_Copy_ctor_base(const _Copy_ctor_base&)): Do
1324 1.1 mrg construction directly instead of using __variant_construct.
1325 1.1 mrg (_Move_ctor_base::_Move_ctor_base(_Move_ctor_base&&)): Likewise.
1326 1.1 mrg (_Move_ctor_base::_M_destructive_move()): Remove.
1327 1.1 mrg (_Move_ctor_base::_M_destructive_copy()): Remove.
1328 1.1 mrg (_Copy_assign_base::operator=(const _Copy_assign_base&)): Do
1329 1.1 mrg construction directly instead of using _M_destructive_copy.
1330 1.1 mrg (variant::swap): Do construction directly instead of using
1331 1.1 mrg _M_destructive_move.
1332 1.1 mrg * testsuite/20_util/variant/102912.cc: New test.
1333 1.1 mrg
1334 1.1 mrg 2021-11-03 Jonathan Wakely <jwakely (a] redhat.com>
1335 1.1 mrg
1336 1.1 mrg PR libstdc++/66742
1337 1.1 mrg * include/bits/list.tcc (list::sort): Use mutable iterators for
1338 1.1 mrg comparisons.
1339 1.1 mrg * include/bits/stl_list.h (_Scratch_list::_Ptr_cmp): Likewise.
1340 1.1 mrg * testsuite/23_containers/list/operations/66742.cc: Check
1341 1.1 mrg non-const comparisons.
1342 1.1 mrg
1343 1.1 mrg 2021-11-03 Jonathan Wakely <jwakely (a] redhat.com>
1344 1.1 mrg
1345 1.1 mrg * include/std/valarray (valarray::valarray()): Add noexcept.
1346 1.1 mrg (valarray::operator[]): Likewise.
1347 1.1 mrg
1348 1.1 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1349 1.1 mrg
1350 1.1 mrg * include/debug/stl_iterator.h (__valid_range): Add constexpr
1351 1.1 mrg for C++20. Qualify call to avoid ADL.
1352 1.1 mrg (__get_distance, __can_advance, __unsafe, __base): Likewise.
1353 1.1 mrg * testsuite/25_algorithms/move/constexpr.cc: Also check with
1354 1.1 mrg std::reverse_iterator arguments.
1355 1.1 mrg
1356 1.1 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1357 1.1 mrg
1358 1.1 mrg * include/std/span (span(Range&&)): Reorder constraints.
1359 1.1 mrg
1360 1.1 mrg 2021-11-01 Jonathan Wakely <jwakely (a] redhat.com>
1361 1.1 mrg
1362 1.1 mrg PR libstdc++/103022
1363 1.1 mrg * include/std/valarray (begin, end): Do not dereference an empty
1364 1.1 mrg valarray. Add noexcept and [[nodiscard]].
1365 1.1 mrg * testsuite/26_numerics/valarray/range_access.cc: Check empty
1366 1.1 mrg valarray. Check iterator properties. Run as well as compiling.
1367 1.1 mrg * testsuite/26_numerics/valarray/range_access2.cc: Likewise.
1368 1.1 mrg * testsuite/26_numerics/valarray/103022.cc: New test.
1369 1.1 mrg
1370 1.1 mrg 2021-10-29 Jonathan Wakely <jwakely (a] redhat.com>
1371 1.1 mrg
1372 1.1 mrg * testsuite/23_containers/stack/deduction.cc: Fix typo.
1373 1.1 mrg
1374 1.1 mrg 2021-10-26 Martin Sebor <msebor (a] redhat.com>
1375 1.1 mrg
1376 1.1 mrg * testsuite/21_strings/basic_string/capacity/1.cc: Also suppress
1377 1.1 mrg -Wstringop-overread.
1378 1.1 mrg * testsuite/27_io/filesystem/path/factory/u8path-char8_t.cc: Same.
1379 1.1 mrg
1380 1.1 mrg 2021-10-26 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1381 1.1 mrg
1382 1.1 mrg * testsuite/28_regex/basic_regex/84110.cc (test01)
1383 1.1 mrg [__cpp_exceptions]: Disambiguate extended.
1384 1.1 mrg
1385 1.1 mrg 2021-10-26 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1386 1.1 mrg
1387 1.1 mrg * testsuite/17_intro/names.cc [__sun__] (r, x): Undef.
1388 1.1 mrg
1389 1.1 mrg 2021-10-22 Jonathan Wakely <jwakely (a] redhat.com>
1390 1.1 mrg
1391 1.1 mrg PR libstdc++/102894
1392 1.1 mrg * include/std/any (make_any): Add SFINAE constraint.
1393 1.1 mrg * testsuite/20_util/any/102894.cc: New test.
1394 1.1 mrg
1395 1.1 mrg 2021-10-21 Jonathan Wakely <jwakely (a] redhat.com>
1396 1.1 mrg
1397 1.1 mrg * doc/doxygen/stdheader.cc: Refactor. Use C++23. Add new
1398 1.1 mrg headers.
1399 1.1 mrg * scripts/run_doxygen: Fix post-processing of #include
1400 1.1 mrg directives in man pages. Use new xg++ to compile helper program.
1401 1.1 mrg
1402 1.1 mrg 2021-10-21 Jonathan Wakely <jwakely (a] redhat.com>
1403 1.1 mrg
1404 1.1 mrg * include/bits/mofunc_impl.h: Add doxygen comments.
1405 1.1 mrg * include/std/functional: Likewise.
1406 1.1 mrg
1407 1.1 mrg 2021-10-21 Jonathan Wakely <jwakely (a] redhat.com>
1408 1.1 mrg
1409 1.1 mrg * include/bits/alloc_traits.h: Suppress doxygen documentation.
1410 1.1 mrg * include/bits/allocated_ptr.h: Likewise.
1411 1.1 mrg * include/bits/enable_special_members.h: Likewise.
1412 1.1 mrg * include/bits/hashtable.h: Likewise.
1413 1.1 mrg * include/bits/hashtable_policy.h: Likewise.
1414 1.1 mrg * include/bits/uses_allocator.h: Likewise.
1415 1.1 mrg * include/bits/node_handle.h: Document node handles and suppress
1416 1.1 mrg documentation for protected members.
1417 1.1 mrg * include/std/any: Suppress documentation for implementation
1418 1.1 mrg details.
1419 1.1 mrg
1420 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1421 1.1 mrg
1422 1.1 mrg PR libstdc++/102358
1423 1.1 mrg * include/bits/stl_iterator.h (__niter_base): Make constexpr
1424 1.1 mrg for C++20.
1425 1.1 mrg (__miter_base): Likewise.
1426 1.1 mrg * testsuite/25_algorithms/move/constexpr.cc: New test.
1427 1.1 mrg
1428 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1429 1.1 mrg
1430 1.1 mrg * include/std/ranges (istream_view): Replace this function
1431 1.1 mrg template with an alias template as per P2432R1.
1432 1.1 mrg (wistream_view): Define as per P2432R1.
1433 1.1 mrg (views::_Istream, views::istream): Likewise.
1434 1.1 mrg * testsuite/std/ranges/istream_view.cc (test07): New test.
1435 1.1 mrg
1436 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1437 1.1 mrg
1438 1.1 mrg * include/bits/ranges_util.h (views::_Drop): Forward declare.
1439 1.1 mrg (subrange): Befriend views::_Drop.
1440 1.1 mrg (subrange::_S_store_size): Declare constexpr instead of just
1441 1.1 mrg const, remove obsolete comment.
1442 1.1 mrg * include/std/ranges (views::__detail::__is_empty_view): Define.
1443 1.1 mrg (views::__detail::__is_basic_string_view): Likewise.
1444 1.1 mrg (views::__detail::__is_subrange): Likewise.
1445 1.1 mrg (views::__detail::__is_iota_view): Likewise.
1446 1.1 mrg (views::__detail::__can_take_view): Rename template parm _Tp to _Dp.
1447 1.1 mrg (views::_Take): Rename template parm _Tp to _Dp, make it non-deducible
1448 1.1 mrg and fix it to range_difference_t<_Range>. Implement P1739R4 and
1449 1.1 mrg LWG 3407 changes.
1450 1.1 mrg (views::__detail::__can_drop_view): Rename template parm _Tp to _Dp.
1451 1.1 mrg (views::_Drop): As with views::_Take.
1452 1.1 mrg (views::_Counted): Implement P1739R4 changes.
1453 1.1 mrg * include/std/span (__detail::__is_std_span): Rename to ...
1454 1.1 mrg (__detail::__is_span): ... this and turn it into a variable
1455 1.1 mrg template.
1456 1.1 mrg (__detail::__is_std_array): Turn it into a variable template.
1457 1.1 mrg (span::span): Adjust uses of __is_std_span and __is_std_array
1458 1.1 mrg accordingly.
1459 1.1 mrg * testsuite/std/ranges/adaptors/p1739.cc: New test.
1460 1.1 mrg
1461 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1462 1.1 mrg
1463 1.1 mrg * include/bits/stl_iterator.h (common_iterator::__arrow_proxy):
1464 1.1 mrg Make fully constexpr as per LWG 3595.
1465 1.1 mrg (common_iterator::__postfix_proxy): Likewise.
1466 1.1 mrg
1467 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1468 1.1 mrg
1469 1.1 mrg * include/std/ranges (lazy_split_view::base): Add forward_range
1470 1.1 mrg constraint as per LWG 3591.
1471 1.1 mrg (lazy_split_view::begin, lazy_split_view::end): Also check
1472 1.1 mrg simpleness of _Pattern as per LWG 3592.
1473 1.1 mrg (split_view::base): Relax copyable constraint as per LWG 3590.
1474 1.1 mrg
1475 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1476 1.1 mrg
1477 1.1 mrg * include/std/ranges (join_view::__iter_cat::_S_iter_cat): Adjust
1478 1.1 mrg criteria for returning bidirectional_iterator_tag as per LWG 3535.
1479 1.1 mrg (join_view::_Iterator::_S_iter_concept): Likewise.
1480 1.1 mrg
1481 1.1 mrg 2021-10-21 Patrick Palka <ppalka (a] redhat.com>
1482 1.1 mrg
1483 1.1 mrg * include/bits/ranges_base.h (viewable_range): Adjust as per
1484 1.1 mrg LWG 3481.
1485 1.1 mrg * testsuite/std/ranges/adaptors/all.cc (test07): New test.
1486 1.1 mrg
1487 1.1 mrg 2021-10-21 Jonathan Wakely <jwakely (a] redhat.com>
1488 1.1 mrg
1489 1.1 mrg PR libstdc++/102863
1490 1.1 mrg * include/std/optional (optional::and_then, optional::transform):
1491 1.1 mrg Remove requires-clause.
1492 1.1 mrg * testsuite/20_util/optional/monadic/and_then.cc: Check
1493 1.1 mrg overload resolution doesn't cause errors.
1494 1.1 mrg * testsuite/20_util/optional/monadic/transform.cc: Likewise.
1495 1.1 mrg
1496 1.1 mrg 2021-10-20 Jonathan Wakely <jwakely (a] redhat.com>
1497 1.1 mrg
1498 1.1 mrg * testsuite/20_util/optional/monadic/transform.cc: Check that
1499 1.1 mrg an rvalue result is not materialized too soon.
1500 1.1 mrg
1501 1.1 mrg 2021-10-19 Patrick Palka <ppalka (a] redhat.com>
1502 1.1 mrg
1503 1.1 mrg * include/std/ranges (iota_view::_Iterator::operator+): Adjust
1504 1.1 mrg definition as per LWG 3580.
1505 1.1 mrg (iota_view::_Iterator::operator-): Likewise.
1506 1.1 mrg
1507 1.1 mrg 2021-10-19 Patrick Palka <ppalka (a] redhat.com>
1508 1.1 mrg
1509 1.1 mrg * include/std/ranges (basic_istream_view::_M_object): Value
1510 1.1 mrg initialize as per LWG 3568.
1511 1.1 mrg
1512 1.1 mrg 2021-10-19 Patrick Palka <ppalka (a] redhat.com>
1513 1.1 mrg
1514 1.1 mrg * include/bits/ranges_util.h
1515 1.1 mrg (__detail::__uses_nonqualification_pointer_conversion): Define
1516 1.1 mrg and use it ...
1517 1.1 mrg (__detail::__convertible_to_nonslicing): ... here, as per LWG 3470.
1518 1.1 mrg * testsuite/std/ranges/subrange/1.cc: New test.
1519 1.1 mrg
1520 1.1 mrg 2021-10-19 Patrick Palka <ppalka (a] redhat.com>
1521 1.1 mrg
1522 1.1 mrg * include/std/ranges (iota_view::_Iterator): Befriend iota_view.
1523 1.1 mrg (iota_view::_Sentinel): Likewise.
1524 1.1 mrg (iota_view::iota_view): Add three overloads, each taking an
1525 1.1 mrg iterator/sentinel pair as per LWG 3523.
1526 1.1 mrg * testsuite/std/ranges/iota/iota_view.cc (test06): New test.
1527 1.1 mrg
1528 1.1 mrg 2021-10-19 Patrick Palka <ppalka (a] redhat.com>
1529 1.1 mrg
1530 1.1 mrg * include/bits/ranges_base.h (view_interface): Forward declare.
1531 1.1 mrg (__detail::__is_derived_from_view_interface_fn): Declare.
1532 1.1 mrg (__detail::__is_derived_from_view_interface): Define as per LWG 3549.
1533 1.1 mrg (enable_view): Adjust as per LWG 3549.
1534 1.1 mrg * include/bits/ranges_util.h (view_interface): Don't derive from
1535 1.1 mrg view_base.
1536 1.1 mrg * include/std/ranges (filter_view): Revert r11-3504 change.
1537 1.1 mrg (transform_view): Likewise.
1538 1.1 mrg (take_view): Likewise.
1539 1.1 mrg (take_while_view): Likewise.
1540 1.1 mrg (drop_view): Likewise.
1541 1.1 mrg (drop_while_view): Likewise.
1542 1.1 mrg (join_view): Likewise.
1543 1.1 mrg (lazy_split_view): Likewise.
1544 1.1 mrg (split_view): Likewise.
1545 1.1 mrg (reverse_view): Likewise.
1546 1.1 mrg * testsuite/std/ranges/adaptors/sizeof.cc: Update expected sizes.
1547 1.1 mrg * testsuite/std/ranges/view.cc (test_view::test_view): Remove
1548 1.1 mrg this default ctor since views no longer need to be default initable.
1549 1.1 mrg (test01): New test.
1550 1.1 mrg
1551 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1552 1.1 mrg
1553 1.1 mrg * src/c++11/random.cc (which_source): New helper function.
1554 1.1 mrg (random_device::_M_getentropy()): Use which_source and return
1555 1.1 mrg suitable values for sources other than device files.
1556 1.1 mrg * testsuite/26_numerics/random/random_device/entropy.cc: New test.
1557 1.1 mrg
1558 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1559 1.1 mrg
1560 1.1 mrg * doc/Makefile.am (stamp-html-doxygen, stamp-html-doxygen)
1561 1.1 mrg (stamp-latex-doxygen, stamp-man-doxygen): Fix recipes for
1562 1.1 mrg relative ${top_srcdir}.
1563 1.1 mrg * doc/Makefile.in: Regenerate.
1564 1.1 mrg
1565 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1566 1.1 mrg
1567 1.1 mrg * include/std/variant (_Uninitialized): Use an empty struct
1568 1.1 mrg for the unused union member, instead of char.
1569 1.1 mrg
1570 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1571 1.1 mrg
1572 1.1 mrg * include/bits/stl_stack.h (stack(Iterator, Iterator)): Remove
1573 1.1 mrg non-deducible template parameter from deduction guide.
1574 1.1 mrg * testsuite/23_containers/stack/deduction.cc: Check new C++23
1575 1.1 mrg deduction guides.
1576 1.1 mrg
1577 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1578 1.1 mrg
1579 1.1 mrg * include/std/optional (_Optional_payload_base::_Storage): Add
1580 1.1 mrg constructor taking a callable function to invoke.
1581 1.1 mrg (_Optional_payload_base::_M_apply): New function.
1582 1.1 mrg (__cpp_lib_monadic_optional): Define for C++23.
1583 1.1 mrg (optional::and_then, optional::transform, optional::or_else):
1584 1.1 mrg Define for C++23.
1585 1.1 mrg * include/std/ranges (__detail::__cached): Remove.
1586 1.1 mrg (__detail::__non_propagating_cache): Remove use of __cached for
1587 1.1 mrg contained value. Use _Optional_payload_base::_M_construct and
1588 1.1 mrg _Optional_payload_base::_M_apply to set the contained value.
1589 1.1 mrg * include/std/version (__cpp_lib_monadic_optional): Define.
1590 1.1 mrg * testsuite/20_util/optional/monadic/and_then.cc: New test.
1591 1.1 mrg * testsuite/20_util/optional/monadic/or_else.cc: New test.
1592 1.1 mrg * testsuite/20_util/optional/monadic/or_else_neg.cc: New test.
1593 1.1 mrg * testsuite/20_util/optional/monadic/transform.cc: New test.
1594 1.1 mrg * testsuite/20_util/optional/monadic/version.cc: New test.
1595 1.1 mrg
1596 1.1 mrg 2021-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1597 1.1 mrg
1598 1.1 mrg PR libstdc++/102825
1599 1.1 mrg * include/bits/mofunc_impl.h (move_only_function): Remove
1600 1.1 mrg invalid base initializer.
1601 1.1 mrg * testsuite/20_util/move_only_function/cons.cc: Instantiate
1602 1.1 mrg constructors to check bodies.
1603 1.1 mrg
1604 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1605 1.1 mrg
1606 1.1 mrg * include/bits/fs_path.h (path::_S_convert(T)): Avoid recursive
1607 1.1 mrg call to function with deduced return type.
1608 1.1 mrg
1609 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1610 1.1 mrg
1611 1.1 mrg * include/bits/basic_string.h (__cpp_lib_string_resize_and_overwrite):
1612 1.1 mrg Define for C++23.
1613 1.1 mrg (basic_string::resize_and_overwrite): Declare.
1614 1.1 mrg * include/bits/basic_string.tcc (basic_string::resize_and_overwrite):
1615 1.1 mrg Define.
1616 1.1 mrg * include/std/version (__cpp_lib_resize_and_overwrite): Define
1617 1.1 mrg for C++23.
1618 1.1 mrg * testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc:
1619 1.1 mrg New test.
1620 1.1 mrg
1621 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1622 1.1 mrg
1623 1.1 mrg PR libstdc++/101263
1624 1.1 mrg * include/std/ranges (__cached): New wrapper struct.
1625 1.1 mrg (__non_propagating_cache): Use __cached for contained value.
1626 1.1 mrg (__non_propagating_cache::_M_emplace_deref): Add constexpr. Use
1627 1.1 mrg std::construct_at instead of placement new.
1628 1.1 mrg * testsuite/std/ranges/adaptors/join.cc: Check constexpr works.
1629 1.1 mrg
1630 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1631 1.1 mrg
1632 1.1 mrg * include/std/variant (__cpp_lib_variant): Update value for
1633 1.1 mrg C++20.
1634 1.1 mrg (__variant_cast, __variant_construct): Add constexpr for C++20.
1635 1.1 mrg (__variant_construct_single, __construct_by_index) Likewise. Use
1636 1.1 mrg std::_Construct instead of placement new.
1637 1.1 mrg (_Uninitialized<T, false>) [__cplusplus >= 202002]: Replace
1638 1.1 mrg buffer with a union and define a destructor.
1639 1.1 mrg (_Variadic_union) [__cplusplus >= 202002]: Add a specialization
1640 1.1 mrg for non-trivial destruction.
1641 1.1 mrg (_Variant_storage::__index_of): New helper variable template.
1642 1.1 mrg (_Variant_storage::~_Variant_storage()): Add constexpr.
1643 1.1 mrg (_Variant_storage::_M_reset()): Likewise.
1644 1.1 mrg (_Copy_ctor_base, _Move_ctor_base): Likewise.
1645 1.1 mrg (_Copy_assign_base, _Move_assign_base): Likewise.
1646 1.1 mrg (variant, swap): Likewise.
1647 1.1 mrg * include/std/version (__cpp_lib_variant): Update value for
1648 1.1 mrg C++20.
1649 1.1 mrg * testsuite/20_util/optional/version.cc: Check for exact value
1650 1.1 mrg in C++17.
1651 1.1 mrg * testsuite/20_util/variant/87619.cc: Increase timeout for
1652 1.1 mrg C++20 mode.
1653 1.1 mrg * testsuite/20_util/variant/constexpr.cc: New test.
1654 1.1 mrg * testsuite/20_util/variant/version.cc: New test.
1655 1.1 mrg
1656 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1657 1.1 mrg
1658 1.1 mrg * include/std/variant (__detail::__variant::__get_storage):
1659 1.1 mrg Remove unused function.
1660 1.1 mrg (__variant_construct_by_index): Set index after construction is
1661 1.1 mrg complete. Rename to ...
1662 1.1 mrg (__detail::__variant::__construct_by_index): ... this.
1663 1.1 mrg (variant): Use new name for __variant_construct_by_index friend
1664 1.1 mrg declaration. Remove __get_storage friend declaration.
1665 1.1 mrg (variant::emplace): Use new name and remove try-blocks.
1666 1.1 mrg
1667 1.1 mrg 2021-10-15 Jonathan Wakely <jwakely (a] redhat.com>
1668 1.1 mrg
1669 1.1 mrg * include/std/variant (_Variant_storage::_M_storage()): Remove.
1670 1.1 mrg (__detail::__variant::__get_storage): Remove.
1671 1.1 mrg (variant): Remove friend declaration of __get_storage.
1672 1.1 mrg
1673 1.1 mrg 2021-10-15 Jason Merrill <jason (a] redhat.com>
1674 1.1 mrg
1675 1.1 mrg * testsuite/20_util/integer_comparisons/greater_equal_neg.cc:
1676 1.1 mrg * testsuite/20_util/integer_comparisons/greater_neg.cc:
1677 1.1 mrg * testsuite/20_util/integer_comparisons/less_equal_neg.cc:
1678 1.1 mrg Adjust expected message.
1679 1.1 mrg * testsuite/lib/prune.exp: Prune 'in constexpr expansion'.
1680 1.1 mrg
1681 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1682 1.1 mrg
1683 1.1 mrg * include/std/variant (__variant::__get(in_place_index_t<N>, U&&)):
1684 1.1 mrg Rename to __get_n and remove first argument. Replace pair of
1685 1.1 mrg overloads with a single function using 'if constexpr'.
1686 1.1 mrg (__variant::__get(Variant&&)): Adjust to use __get_n.
1687 1.1 mrg
1688 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1689 1.1 mrg
1690 1.1 mrg * include/bits/fs_path.h (path(path&&)): Make unconditionally
1691 1.1 mrg noexcept.
1692 1.1 mrg (path::_S_convert(T)): Add condtional noexcept.
1693 1.1 mrg
1694 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1695 1.1 mrg
1696 1.1 mrg PR libstdc++/102743
1697 1.1 mrg * include/bits/fs_path.h (path::_S_convert(T)): Fix condition
1698 1.1 mrg for returning the same string unchanged.
1699 1.1 mrg
1700 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1701 1.1 mrg
1702 1.1 mrg * include/bits/regex.h: Check __cpp_inline_variables instead of
1703 1.1 mrg __cplusplus.
1704 1.1 mrg
1705 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1706 1.1 mrg
1707 1.1 mrg * testsuite/20_util/is_layout_compatible/version.cc: Check
1708 1.1 mrg correct macro.
1709 1.1 mrg
1710 1.1 mrg 2021-10-14 Jonathan Wakely <jwakely (a] redhat.com>
1711 1.1 mrg
1712 1.1 mrg * include/bits/stl_construct.h (_Construct): Use
1713 1.1 mrg std::construct_at when constant evaluated.
1714 1.1 mrg * include/std/optional (_Storage, _Optional_payload, optional):
1715 1.1 mrg Add constexpr as specified by P2231R1.
1716 1.1 mrg * include/std/version (__cpp_lib_optional): Update value for
1717 1.1 mrg C++20.
1718 1.1 mrg * testsuite/20_util/optional/requirements.cc: Check feature test
1719 1.1 mrg macro.
1720 1.1 mrg * testsuite/20_util/optional/constexpr/assign.cc: New test.
1721 1.1 mrg * testsuite/20_util/optional/constexpr/cons/conv.cc: New test.
1722 1.1 mrg * testsuite/20_util/optional/constexpr/modifiers.cc: New test.
1723 1.1 mrg * testsuite/20_util/optional/constexpr/swap.cc: New test.
1724 1.1 mrg * testsuite/20_util/optional/version.cc: New test.
1725 1.1 mrg
1726 1.1 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1727 1.1 mrg
1728 1.1 mrg * include/bits/fs_path.h (__detail::__is_contiguous): Add
1729 1.1 mrg partial specializations for pointers and __normal_iterator.
1730 1.1 mrg
1731 1.1 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1732 1.1 mrg
1733 1.1 mrg * testsuite/27_io/filesystem/path/construct/102592.C: Moved to...
1734 1.1 mrg * testsuite/27_io/filesystem/path/construct/102592.cc: ...here.
1735 1.1 mrg * testsuite/28_regex/match_results/102667.C: Moved to...
1736 1.1 mrg * testsuite/28_regex/match_results/102667.cc: ...here.
1737 1.1 mrg
1738 1.1 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1739 1.1 mrg
1740 1.1 mrg * include/bits/fs_path.h (__detail::__is_contiguous): New
1741 1.1 mrg variable template to identify contiguous iterators.
1742 1.1 mrg (__detail::__unified_char8_t): New alias template to decide when
1743 1.1 mrg to treat char8_t as char without encoding conversion.
1744 1.1 mrg (__detail::__effective_range(const basic_string<C,T>&)): Use
1745 1.1 mrg std::char_traits<C> for returned string view.
1746 1.1 mrg (__detail::__effective_range(const basic_string_view<C,T>&)):
1747 1.1 mrg Likewise.
1748 1.1 mrg (__detail::__effective_range(const Source&)): Use
1749 1.1 mrg __is_contiguous to detect mode cases of contiguous iterators.
1750 1.1 mrg Use __unified_char8_t to return a std::string instead of
1751 1.1 mrg std::u8string.
1752 1.1 mrg
1753 1.1 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1754 1.1 mrg
1755 1.1 mrg PR libstdc++/102592
1756 1.1 mrg * include/bits/fs_path.h (path::path(Iter, Iter, format))
1757 1.1 mrg (path::append(Iter, Iter), path::concat(Iter, Iter)): Call
1758 1.1 mrg __string_from_range directly, instead of two-argument overload
1759 1.1 mrg of _S_convert.
1760 1.1 mrg (path::_S_convert(Iter, Iter)): Remove.
1761 1.1 mrg * testsuite/27_io/filesystem/path/construct/102592.C: New test.
1762 1.1 mrg
1763 1.1 mrg 2021-10-13 Jonathan Wakely <jwakely (a] redhat.com>
1764 1.1 mrg
1765 1.1 mrg * include/bits/c++config (__terminate): Add extern "C++".
1766 1.1 mrg
1767 1.1 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1768 1.1 mrg
1769 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded.cc:
1770 1.1 mrg Restore test for operator<.
1771 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded2.cc:
1772 1.1 mrg Adjust expected errors for C++20.
1773 1.1 mrg
1774 1.1 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1775 1.1 mrg
1776 1.1 mrg PR libstdc++/101960
1777 1.1 mrg * include/std/tuple (_Tuple_impl(_Tuple_impl&&)): Define as
1778 1.1 mrg defauled.
1779 1.1 mrg * testsuite/20_util/tuple/cons/101960.cc: Check tuples with
1780 1.1 mrg array elements before the last element.
1781 1.1 mrg
1782 1.1 mrg 2021-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1783 1.1 mrg
1784 1.1 mrg * include/bits/stl_iterator_base_funcs.h (__advance): Add
1785 1.1 mrg deleted overload to improve diagnostics.
1786 1.1 mrg (__distance): Likewise.
1787 1.1 mrg
1788 1.1 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1789 1.1 mrg
1790 1.1 mrg * include/bits/atomic_timed_wait.h: Remove unused header.
1791 1.1 mrg * include/bits/c++config (std:__terminate): Define.
1792 1.1 mrg * include/bits/semaphore_base.h: Remove <exception> and use
1793 1.1 mrg __terminate instead of terminate.
1794 1.1 mrg * include/bits/std_thread.h: Likewise.
1795 1.1 mrg * libsupc++/eh_terminate.cc (std::terminate): Use qualified-id
1796 1.1 mrg to call __cxxabiv1::__terminate.
1797 1.1 mrg
1798 1.1 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1799 1.1 mrg
1800 1.1 mrg * include/bits/regex.h (basic_regex::assign(Iter, Iter)): Avoid
1801 1.1 mrg std::__to_address by using poitner directly or using base()
1802 1.1 mrg member of __normal_iterator.
1803 1.1 mrg
1804 1.1 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1805 1.1 mrg
1806 1.1 mrg * testsuite/18_support/numeric_limits/lowest.cc: Use
1807 1.1 mrg numeric_limits<T>::is_integer instead of is_integral<T>::value.
1808 1.1 mrg
1809 1.1 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1810 1.1 mrg
1811 1.1 mrg PR libstdc++/89927
1812 1.1 mrg * include/bits/regex.h (basic_regex(const _Ch_type*, size_t)):
1813 1.1 mrg Add __glibcxx_requires_string_len assertion.
1814 1.1 mrg (basic_regex::assign(InputIterator, InputIterator)): Add
1815 1.1 mrg __glibcxx_requires_valid_range assertion.
1816 1.1 mrg * include/bits/regex_scanner.tcc (_Scanner::_M_advance())
1817 1.1 mrg (_Scanner::_M_scan_normal()): Use string literal in assertions.
1818 1.1 mrg
1819 1.1 mrg 2021-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1820 1.1 mrg
1821 1.1 mrg PR libstdc++/102667
1822 1.1 mrg * include/bits/regex.h (match_result::empty()): Optimize by
1823 1.1 mrg calling the base function directly.
1824 1.1 mrg (match_results::end()): Check _Base_type::empty() not empty().
1825 1.1 mrg * testsuite/28_regex/match_results/102667.C: New test.
1826 1.1 mrg
1827 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1828 1.1 mrg
1829 1.1 mrg PR libstdc++/98725
1830 1.1 mrg * testsuite/18_support/numeric_limits/lowest.cc: Remove use of
1831 1.1 mrg _GLIBCXX_USE_WCHAR_T.
1832 1.1 mrg * testsuite/18_support/numeric_limits/min_max.cc: Replace use of
1833 1.1 mrg _GLIBCXX_USE_WCHAR_T with checks for WCHAR_MIN and WCHAR_MAX.
1834 1.1 mrg * testsuite/20_util/from_chars/1_neg.cc: Remove use of
1835 1.1 mrg _GLIBCXX_USE_WCHAR_T.
1836 1.1 mrg * testsuite/20_util/function_objects/searchers.cc: Likewise. Use
1837 1.1 mrg char_traits<wchar_t>::length instead of wcslen.
1838 1.1 mrg * testsuite/20_util/hash/requirements/explicit_instantiation.cc:
1839 1.1 mrg Likewise.
1840 1.1 mrg * testsuite/20_util/is_arithmetic/value.cc: Likewise.
1841 1.1 mrg * testsuite/20_util/is_compound/value.cc: Likewise.
1842 1.1 mrg * testsuite/20_util/is_floating_point/value.cc: Likewise.
1843 1.1 mrg * testsuite/20_util/is_fundamental/value.cc: Likewise.
1844 1.1 mrg * testsuite/20_util/is_integral/value.cc: Likewise.
1845 1.1 mrg * testsuite/20_util/is_signed/value.cc: Likewise.
1846 1.1 mrg * testsuite/20_util/is_unsigned/value.cc: Likewise.
1847 1.1 mrg * testsuite/20_util/is_void/value.cc: Likewise.
1848 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-1.cc:
1849 1.1 mrg Likewise.
1850 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-2.cc:
1851 1.1 mrg Likewise.
1852 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-3.cc:
1853 1.1 mrg Likewise.
1854 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-4.cc:
1855 1.1 mrg Likewise.
1856 1.1 mrg * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
1857 1.1 mrg Likewise.
1858 1.1 mrg * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1859 1.1 mrg Likewise.
1860 1.1 mrg * testsuite/20_util/make_unsigned/requirements/typedefs-3.cc:
1861 1.1 mrg Likewise.
1862 1.1 mrg * testsuite/20_util/to_chars/3.cc: Likewise.
1863 1.1 mrg * testsuite/20_util/type_identity/requirements/typedefs.cc:
1864 1.1 mrg Likewise.
1865 1.1 mrg * testsuite/21_strings/basic_string/hash/debug.cc: Likewise.
1866 1.1 mrg * testsuite/21_strings/basic_string/hash/hash.cc: Likewise.
1867 1.1 mrg * testsuite/21_strings/basic_string/literals/types-char8_t.cc:
1868 1.1 mrg Likewise.
1869 1.1 mrg * testsuite/21_strings/basic_string/literals/types.cc: Likewise.
1870 1.1 mrg * testsuite/21_strings/basic_string/literals/values-char8_t.cc:
1871 1.1 mrg Likewise.
1872 1.1 mrg * testsuite/21_strings/basic_string/literals/values.cc:
1873 1.1 mrg Likewise.
1874 1.1 mrg * testsuite/21_strings/basic_string/modifiers/64422.cc:
1875 1.1 mrg Likewise.
1876 1.1 mrg * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
1877 1.1 mrg Likewise.
1878 1.1 mrg * testsuite/21_strings/basic_string/requirements/citerators.cc:
1879 1.1 mrg Likewise.
1880 1.1 mrg * testsuite/21_strings/basic_string/requirements/typedefs.cc:
1881 1.1 mrg Likewise.
1882 1.1 mrg * testsuite/21_strings/basic_string/types/pmr_typedefs.cc:
1883 1.1 mrg Likewise.
1884 1.1 mrg * testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
1885 1.1 mrg Likewise.
1886 1.1 mrg * testsuite/21_strings/basic_string_view/literals/types.cc:
1887 1.1 mrg Likewise.
1888 1.1 mrg * testsuite/21_strings/basic_string_view/literals/values-char8_t.cc:
1889 1.1 mrg Likewise.
1890 1.1 mrg * testsuite/21_strings/basic_string_view/literals/values.cc:
1891 1.1 mrg Likewise.
1892 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
1893 1.1 mrg Likewise.
1894 1.1 mrg * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
1895 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions.cc:
1896 1.1 mrg Likewise.
1897 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
1898 1.1 mrg Likewise.
1899 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
1900 1.1 mrg Likewise.
1901 1.1 mrg * testsuite/22_locale/ctype/is/string/89728_neg.cc: Likewise.
1902 1.1 mrg * testsuite/25_algorithms/fill/4.cc: Likewise.
1903 1.1 mrg * testsuite/25_algorithms/fill_n/1.cc: Likewise.
1904 1.1 mrg * testsuite/experimental/functional/searchers.cc: Likewise. Use
1905 1.1 mrg char_traits<wchar_t>::length instead of wcslen.
1906 1.1 mrg * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
1907 1.1 mrg Likewise.
1908 1.1 mrg * testsuite/experimental/string_view/literals/types-char8_t.cc:
1909 1.1 mrg Likewise.
1910 1.1 mrg * testsuite/experimental/string_view/literals/types.cc:
1911 1.1 mrg Likewise.
1912 1.1 mrg * testsuite/experimental/string_view/literals/values-char8_t.cc:
1913 1.1 mrg Likewise.
1914 1.1 mrg * testsuite/experimental/string_view/literals/values.cc:
1915 1.1 mrg Likewise.
1916 1.1 mrg * testsuite/experimental/string_view/range_access/wchar_t/1.cc:
1917 1.1 mrg Likewise.
1918 1.1 mrg * testsuite/experimental/string_view/requirements/typedefs.cc:
1919 1.1 mrg Likewise.
1920 1.1 mrg * testsuite/experimental/string_view/typedefs.cc: Likewise.
1921 1.1 mrg * testsuite/ext/vstring/range_access.cc: Likewise.
1922 1.1 mrg * testsuite/std/concepts/concepts.lang/concept.arithmetic/integral.cc:
1923 1.1 mrg Likewise.
1924 1.1 mrg * testsuite/std/concepts/concepts.lang/concept.arithmetic/signed_integral.cc:
1925 1.1 mrg Likewise.
1926 1.1 mrg * testsuite/std/concepts/concepts.lang/concept.arithmetic/unsigned_integral.cc:
1927 1.1 mrg Likewise.
1928 1.1 mrg * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc:
1929 1.1 mrg Likewise.
1930 1.1 mrg * testsuite/tr1/4_metaprogramming/is_compound/value.cc:
1931 1.1 mrg Likewise.
1932 1.1 mrg * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc:
1933 1.1 mrg Likewise.
1934 1.1 mrg * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc:
1935 1.1 mrg Likewise.
1936 1.1 mrg * testsuite/tr1/4_metaprogramming/is_integral/value.cc:
1937 1.1 mrg Likewise.
1938 1.1 mrg * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
1939 1.1 mrg * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc:
1940 1.1 mrg Likewise.
1941 1.1 mrg * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
1942 1.1 mrg * testsuite/tr1/6_containers/hash/24799.cc: Likewise.
1943 1.1 mrg
1944 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1945 1.1 mrg
1946 1.1 mrg PR libstdc++/98725
1947 1.1 mrg * include/std/ostream (operator<<(basic_ostream<char, Tr>&, wchar_t))
1948 1.1 mrg (operator<<(basic_ostream<char, Tr>&, const wchar_t*)): Always
1949 1.1 mrg define as deleted. Do not check _GLIBCXX_USE_WCHAR_T.
1950 1.1 mrg
1951 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1952 1.1 mrg
1953 1.1 mrg PR libstdc++/98725
1954 1.1 mrg * include/bits/locale_conv.h (wstring_convert, wbuffer_convert):
1955 1.1 mrg Define unconditionally. Do not check _GLIBCXX_USE_WCHAR_T.
1956 1.1 mrg
1957 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1958 1.1 mrg
1959 1.1 mrg PR libstdc++/98725
1960 1.1 mrg * include/c_global/cstddef [!_GLIBCXX_USE_WCHAR_T]
1961 1.1 mrg (__byte_operand<wchar_t>): Define specialization.
1962 1.1 mrg * include/std/type_traits (__make_signed<wchar_t>)
1963 1.1 mrg (__make_unsigned<wchar_t>): Remove redundant check for
1964 1.1 mrg __WCHAR_TYPE__ being defined.
1965 1.1 mrg * include/tr1/type_traits [!_GLIBCXX_USE_WCHAR_T]
1966 1.1 mrg (__is_integral_helper<wchar_t>): Likewise.
1967 1.1 mrg
1968 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1969 1.1 mrg
1970 1.1 mrg PR libstdc++/98725
1971 1.1 mrg * include/ext/rc_string_base.h [!_GLIBCXX_USE_WCHAR_T]
1972 1.1 mrg (__rc_string_base<wchar_t>): Define member function.
1973 1.1 mrg * include/ext/vstring.h [!_GLIBCXX_USE_WCHAR_T]
1974 1.1 mrg (hash<__gnu_cxx::__wvstring>): Define specialization.
1975 1.1 mrg * include/ext/vstring_fwd.h [!_GLIBCXX_USE_WCHAR_T] (__wvstring)
1976 1.1 mrg (__wsso_string, __wrc_string): Declare typedefs.
1977 1.1 mrg
1978 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1979 1.1 mrg
1980 1.1 mrg PR libstdc++/98725
1981 1.1 mrg * include/bits/char_traits.h (char_traits<wchar_t>): Define
1982 1.1 mrg explicit specialization unconditionally.
1983 1.1 mrg * include/bits/basic_string.h (hash<wstring>): Define
1984 1.1 mrg unconditionally. Do not check _GLIBCXX_USE_WCHAR_T.
1985 1.1 mrg * include/bits/stringfwd.h (wstring): Likewise.
1986 1.1 mrg * include/debug/string (wstring): Likewise.
1987 1.1 mrg * include/experimental/string_view (experimental::wstring_view)
1988 1.1 mrg (hash<experimental::wstring_view>): Likewise.
1989 1.1 mrg * include/std/string (pmr::wstring, hash<pmr::wstring>):
1990 1.1 mrg Likewise.
1991 1.1 mrg * include/std/string_view (wstring_view, hash<wstring_view>):
1992 1.1 mrg Likewise.
1993 1.1 mrg
1994 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
1995 1.1 mrg
1996 1.1 mrg * testsuite/27_io/basic_filebuf/close/81256.cc: Moved to...
1997 1.1 mrg * testsuite/27_io/basic_filebuf/close/wchar_t/81256.cc: ...here.
1998 1.1 mrg
1999 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2000 1.1 mrg
2001 1.1 mrg * testsuite/22_locale/conversions/buffer/1.cc: Check
2002 1.1 mrg _GLIBCXX_USE_WCHAR_T.
2003 1.1 mrg * testsuite/22_locale/conversions/buffer/3.cc: Likewise. Add
2004 1.1 mrg test using char16_t.
2005 1.1 mrg * testsuite/22_locale/conversions/string/1.cc: Check
2006 1.1 mrg _GLIBCXX_USE_WCHAR_T.
2007 1.1 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc:
2008 1.1 mrg Likewise.
2009 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/make_preferred.cc:
2010 1.1 mrg Likewise.
2011 1.1 mrg * testsuite/27_io/filesystem/path/native/alloc.cc: Likewise.
2012 1.1 mrg * testsuite/27_io/filesystem/path/native/string-char8_t.cc:
2013 1.1 mrg Likewise.
2014 1.1 mrg * testsuite/27_io/filesystem/path/native/string.cc: Likewise.
2015 1.1 mrg * testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
2016 1.1 mrg Likewise.
2017 1.1 mrg * testsuite/experimental/filesystem/path/generic/generic_string.cc:
2018 1.1 mrg Likewise.
2019 1.1 mrg * testsuite/experimental/filesystem/path/native/alloc.cc:
2020 1.1 mrg Likewise.
2021 1.1 mrg * testsuite/experimental/filesystem/path/native/string-char8_t.cc:
2022 1.1 mrg Likewise.
2023 1.1 mrg * testsuite/experimental/filesystem/path/native/string.cc:
2024 1.1 mrg Likewise.
2025 1.1 mrg
2026 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2027 1.1 mrg
2028 1.1 mrg * testsuite/26_numerics/bit/bit.rotate/rotr.cc:
2029 1.1 mrg * testsuite/util/testsuite_common_types.h:
2030 1.1 mrg
2031 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2032 1.1 mrg
2033 1.1 mrg * testsuite/18_support/numeric_limits/40856.cc: Replace use of
2034 1.1 mrg _GLIBCXX_USE_INT128.
2035 1.1 mrg * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
2036 1.1 mrg * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
2037 1.1 mrg * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
2038 1.1 mrg * testsuite/20_util/is_floating_point/value.cc: Likewise.
2039 1.1 mrg * testsuite/20_util/is_integral/value.cc: Likewise.
2040 1.1 mrg * testsuite/20_util/is_signed/value.cc: Likewise.
2041 1.1 mrg * testsuite/20_util/is_unsigned/value.cc: Likewise.
2042 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-1.cc:
2043 1.1 mrg Likewise.
2044 1.1 mrg * testsuite/20_util/make_signed/requirements/typedefs-2.cc:
2045 1.1 mrg Likewise.
2046 1.1 mrg * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
2047 1.1 mrg Likewise.
2048 1.1 mrg * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
2049 1.1 mrg Likewise.
2050 1.1 mrg * testsuite/20_util/type_identity/requirements/typedefs.cc:
2051 1.1 mrg Likewise.
2052 1.1 mrg * testsuite/26_numerics/bit/bit.count/countl_one.cc: Likewise.
2053 1.1 mrg * testsuite/26_numerics/bit/bit.count/countl_zero.cc: Likewise.
2054 1.1 mrg * testsuite/26_numerics/bit/bit.count/countr_one.cc: Likewise.
2055 1.1 mrg * testsuite/26_numerics/bit/bit.count/countr_zero.cc: Likewise.
2056 1.1 mrg * testsuite/26_numerics/bit/bit.count/popcount.cc: Likewise.
2057 1.1 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_ceil.cc: Likewise.
2058 1.1 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_floor.cc: Likewise.
2059 1.1 mrg * testsuite/26_numerics/bit/bit.pow.two/bit_width.cc: Likewise.
2060 1.1 mrg * testsuite/26_numerics/bit/bit.pow.two/has_single_bit.cc:
2061 1.1 mrg Likewise.
2062 1.1 mrg * testsuite/26_numerics/bit/bit.rotate/rotl.cc: Likewise.
2063 1.1 mrg
2064 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2065 1.1 mrg
2066 1.1 mrg * include/bits/hashtable_policy.h (_Select1st): Replace use of
2067 1.1 mrg std::get.
2068 1.1 mrg (_Select2nd): Remove.
2069 1.1 mrg (_NodeBuilder::_S_build): Use _NodeGenerator::__node_type
2070 1.1 mrg typedef instead of deducing it. Remove unnecessary piecewise
2071 1.1 mrg construction.
2072 1.1 mrg (_ReuseOrAllocNode): Make __node_type public.
2073 1.1 mrg (_Map_base): Adjust partial specialization to be able to extract
2074 1.1 mrg the mapped_type without using tuple_element.
2075 1.1 mrg (_Map_base::at): Define inline
2076 1.1 mrg * testsuite/23_containers/unordered_map/requirements/53339.cc:
2077 1.1 mrg Remove XFAIL.
2078 1.1 mrg * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
2079 1.1 mrg Likewise.
2080 1.1 mrg
2081 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2082 1.1 mrg
2083 1.1 mrg * include/bits/hashtable.h: Move static assertion to destructor.
2084 1.1 mrg * include/bits/hashtable_policy.h: Deduce value type from node
2085 1.1 mrg type without instantiating it.
2086 1.1 mrg
2087 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2088 1.1 mrg
2089 1.1 mrg * src/c++11/limits.cc: Fail if __cpp_inline_variables is
2090 1.1 mrg defined.
2091 1.1 mrg
2092 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2093 1.1 mrg
2094 1.1 mrg PR libstdc++/92546
2095 1.1 mrg * include/bits/ranges_algobase.h: Replace <iterator> with a
2096 1.1 mrg subset of the headers it includes.
2097 1.1 mrg
2098 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2099 1.1 mrg
2100 1.1 mrg * include/experimental/deque (erase, erase_if): Revert changes
2101 1.1 mrg to avoid debug mode overhead.
2102 1.1 mrg * include/experimental/map (erase, erase_if): Likewise.
2103 1.1 mrg * include/experimental/set (erase, erase_if): Likewise.
2104 1.1 mrg * include/experimental/unordered_map (erase, erase_if):
2105 1.1 mrg Likewise.
2106 1.1 mrg * include/experimental/unordered_set (erase, erase_if):
2107 1.1 mrg Likewise.
2108 1.1 mrg * include/experimental/vector (erase, erase_if): Likewise.
2109 1.1 mrg * include/std/deque (erase, erase_if): Likewise.
2110 1.1 mrg * include/std/map (erase, erase_if): Likewise.
2111 1.1 mrg * include/std/set (erase, erase_if): Likewise.
2112 1.1 mrg * include/std/unordered_map (erase, erase_if): Likewise.
2113 1.1 mrg * include/std/unordered_set (erase, erase_if): Likewise.
2114 1.1 mrg * include/std/vector (erase, erase_if): Likewise.
2115 1.1 mrg
2116 1.1 mrg 2021-10-08 Jonathan Wakely <jwakely (a] redhat.com>
2117 1.1 mrg
2118 1.1 mrg * include/std/chrono (__detail::__units_suffix_misc): New
2119 1.1 mrg helper function.
2120 1.1 mrg (__detail::__units_suffix): Likewise.
2121 1.1 mrg (chrono::operator<<(basic_ostream&, const duration&)): Define.
2122 1.1 mrg * testsuite/20_util/duration/io.cc: New test.
2123 1.1 mrg
2124 1.1 mrg 2021-10-07 Jonathan Wakely <jwakely (a] redhat.com>
2125 1.1 mrg
2126 1.1 mrg * include/Makefile.am: Add new header.
2127 1.1 mrg * include/Makefile.in: Regenerate.
2128 1.1 mrg * include/std/chrono (duration, time_point, system_clock)
2129 1.1 mrg (steady_clock, high_resolution_clock, chrono_literals, sys_time)
2130 1.1 mrg (file_clock, file_time): Move to ...
2131 1.1 mrg * include/bits/chrono.h: New file.
2132 1.1 mrg * include/bits/atomic_futex.h: Include new header instead of
2133 1.1 mrg <chrono>.
2134 1.1 mrg * include/bits/atomic_timed_wait.h: Likewise.
2135 1.1 mrg * include/bits/fs_fwd.h: Likewise.
2136 1.1 mrg * include/bits/semaphore_base.h: Likewise.
2137 1.1 mrg * include/bits/this_thread_sleep.h: Likewise.
2138 1.1 mrg * include/bits/unique_lock.h: Likewise.
2139 1.1 mrg * include/experimental/bits/fs_fwd.h: Likewise.
2140 1.1 mrg * include/experimental/chrono: Likewise.
2141 1.1 mrg * include/experimental/io_context: Likewise.
2142 1.1 mrg * include/experimental/netfwd: Likewise.
2143 1.1 mrg * include/experimental/timer: Likewise.
2144 1.1 mrg * include/std/condition_variable: Likewise.
2145 1.1 mrg * include/std/mutex: Likewise.
2146 1.1 mrg * include/std/shared_mutex: Likewise.
2147 1.1 mrg
2148 1.1 mrg 2021-10-07 Jonathan Wakely <jwakely (a] redhat.com>
2149 1.1 mrg
2150 1.1 mrg PR libstdc++/102377
2151 1.1 mrg * include/bits/atomic_wait.h (__waiter_pool_base:_S_align):
2152 1.1 mrg Hardcode to 64 instead of using non-constant constant.
2153 1.1 mrg
2154 1.1 mrg 2021-10-07 Jonathan Wakely <jwakely (a] redhat.com>
2155 1.1 mrg
2156 1.1 mrg * include/bits/erase_if.h (__erase_nodes_if): Remove redundant
2157 1.1 mrg __niter_base calls.
2158 1.1 mrg * include/std/string (erase, erase_if): Likewise.
2159 1.1 mrg * include/std/deque (erase, erase_if): Access non-debug
2160 1.1 mrg container directly.
2161 1.1 mrg * include/std/map (erase, erase_if): Likewise.
2162 1.1 mrg * include/std/set (erase, erase_if): Likewise.
2163 1.1 mrg * include/std/unordered_map (erase, erase_if): Likewise.
2164 1.1 mrg * include/std/unordered_set (erase, erase_if): Likewise.
2165 1.1 mrg * include/std/vector (erase, erase_if): Likewise.
2166 1.1 mrg * include/experimental/deque (erase, erase_if): Likewise.
2167 1.1 mrg * include/experimental/map (erase, erase_if): Likewise.
2168 1.1 mrg * include/experimental/set (erase, erase_if): Likewise.
2169 1.1 mrg * include/experimental/unordered_map (erase, erase_if):
2170 1.1 mrg Likewise.
2171 1.1 mrg * include/experimental/unordered_set (erase, erase_if):
2172 1.1 mrg Likewise.
2173 1.1 mrg * include/experimental/vector (erase, erase_if): Likewise.
2174 1.1 mrg
2175 1.1 mrg 2021-10-06 Jonathan Wakely <jwakely (a] redhat.com>
2176 1.1 mrg
2177 1.1 mrg * include/Makefile.am: Add new headers.
2178 1.1 mrg * include/Makefile.in: Regenerate.
2179 1.1 mrg * include/std/functional: Include <bits/move_only_function.h>.
2180 1.1 mrg * include/std/version (__cpp_lib_move_only_function): Define.
2181 1.1 mrg * include/bits/mofunc_impl.h: New file.
2182 1.1 mrg * include/bits/move_only_function.h: New file.
2183 1.1 mrg * testsuite/20_util/move_only_function/call.cc: New test.
2184 1.1 mrg * testsuite/20_util/move_only_function/cons.cc: New test.
2185 1.1 mrg * testsuite/20_util/move_only_function/move.cc: New test.
2186 1.1 mrg * testsuite/20_util/move_only_function/version.cc: New test.
2187 1.1 mrg
2188 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2189 1.1 mrg
2190 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc:
2191 1.1 mrg New test.
2192 1.1 mrg * testsuite/23_containers/span/trivially_copyable.cc: New test.
2193 1.1 mrg
2194 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2195 1.1 mrg
2196 1.1 mrg * include/bits/utility.h (__is_in_place_type_v): Define
2197 1.1 mrg variable template to detect in_place_type_t specializations.
2198 1.1 mrg (__is_in_place_type): Replace class template with alias
2199 1.1 mrg template using __is_in_place_type_v.
2200 1.1 mrg * include/std/any (any(T&&)): Check __is_in_place_type first and
2201 1.1 mrg avoid instantiating is_copy_constructible unnecessarily.
2202 1.1 mrg
2203 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2204 1.1 mrg
2205 1.1 mrg * testsuite/20_util/integer_comparisons/greater.cc: New test.
2206 1.1 mrg
2207 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2208 1.1 mrg
2209 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/volatile_ptr.cc:
2210 1.1 mrg Check result matches non-volatile pointer.
2211 1.1 mrg
2212 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2213 1.1 mrg
2214 1.1 mrg PR c++/102535
2215 1.1 mrg * testsuite/20_util/is_trivially_constructible/value.cc: Adjust
2216 1.1 mrg expected value for C++20.
2217 1.1 mrg
2218 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2219 1.1 mrg
2220 1.1 mrg * include/bits/std_function.h (_Any_data::_M_access): Add
2221 1.1 mrg noexcept.
2222 1.1 mrg (_Function_base::_Base_manager::_M_get_pointer): Likewise.
2223 1.1 mrg (_Function_base::_Base_manager::_M_not_empty_function):
2224 1.1 mrg Likewise.
2225 1.1 mrg
2226 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2227 1.1 mrg
2228 1.1 mrg * include/std/ostream (operator<<(const volatile void*)):
2229 1.1 mrg Add new overload, as per P1147R1.
2230 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/volatile_ptr.cc:
2231 1.1 mrg New test.
2232 1.1 mrg
2233 1.1 mrg 2021-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2234 1.1 mrg
2235 1.1 mrg * include/bits/stl_queue.h
2236 1.1 mrg (__cpp_lib_adaptor_iterator_pair_constructor): Set to correct
2237 1.1 mrg value.
2238 1.1 mrg * include/bits/stl_stack.h
2239 1.1 mrg (__cpp_lib_adaptor_iterator_pair_constructor): Likewise.
2240 1.1 mrg * include/std/version
2241 1.1 mrg (__cpp_lib_adaptor_iterator_pair_constructor): Likewise.
2242 1.1 mrg * testsuite/23_containers/queue/cons_from_iters.cc: Update
2243 1.1 mrg expected value.
2244 1.1 mrg * testsuite/23_containers/stack/cons_from_iters.cc: Likewise.
2245 1.1 mrg
2246 1.1 mrg 2021-10-04 Jonathan Wakely <jwakely (a] redhat.com>
2247 1.1 mrg
2248 1.1 mrg * include/bits/forward_list.h (forward_list): Use non-deduced
2249 1.1 mrg context for allocator parameter of allocator-extended copy and
2250 1.1 mrg move constructors.
2251 1.1 mrg * include/bits/stl_bvector.h (vector<bool>): Likewise.
2252 1.1 mrg * include/bits/stl_deque.h (deque): Likewise.
2253 1.1 mrg * include/bits/stl_list.h (list): Likewise.
2254 1.1 mrg * include/bits/stl_map.h (map): Likewise.
2255 1.1 mrg * include/bits/stl_multimap.h (multimap): Likewise.
2256 1.1 mrg * include/bits/stl_multiset.h (multiset): Likewise.
2257 1.1 mrg * include/bits/stl_set.h (set): Likewise.
2258 1.1 mrg * include/bits/stl_vector.h (vector): Likewise.
2259 1.1 mrg * include/bits/stl_queue.h (queue, priority_queue): Do not
2260 1.1 mrg constrain Allocator template parameter of deduction guides that
2261 1.1 mrg have a Container parameter.
2262 1.1 mrg * include/bits/stl_stack.h (stack): Likewise.
2263 1.1 mrg * include/debug/deque (__gnu_debug::deque): Use non-deduced
2264 1.1 mrg context for allocator parameter of allocator-extended copy and
2265 1.1 mrg move constructors.
2266 1.1 mrg * include/debug/list (__gnu_debug::list): Likewise.
2267 1.1 mrg * include/debug/map.h (__gnu_debug::map): Likewise.
2268 1.1 mrg * include/debug/multimap.h (__gnu_debug::multimap): Likewise.
2269 1.1 mrg * include/debug/multiset.h (__gnu_debug::multiset): Likewise.
2270 1.1 mrg * include/debug/set.h (__gnu_debug::set): Likewise.
2271 1.1 mrg * include/debug/vector (__gnu_debug::vector): Likewise.
2272 1.1 mrg * testsuite/23_containers/deque/cons/deduction.cc: Test class
2273 1.1 mrg template argument deduction with non-deduced allocator
2274 1.1 mrg arguments.
2275 1.1 mrg * testsuite/23_containers/forward_list/cons/deduction.cc:
2276 1.1 mrg Likewise.
2277 1.1 mrg * testsuite/23_containers/list/cons/deduction.cc: Likewise.
2278 1.1 mrg * testsuite/23_containers/map/cons/deduction.cc: Likewise.
2279 1.1 mrg * testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
2280 1.1 mrg * testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
2281 1.1 mrg * testsuite/23_containers/priority_queue/deduction.cc: Likewise.
2282 1.1 mrg * testsuite/23_containers/queue/deduction.cc: Likewise.
2283 1.1 mrg * testsuite/23_containers/set/cons/deduction.cc: Likewise.
2284 1.1 mrg * testsuite/23_containers/stack/deduction.cc: Likewise.
2285 1.1 mrg * testsuite/23_containers/unordered_map/cons/deduction.cc:
2286 1.1 mrg Likewise.
2287 1.1 mrg * testsuite/23_containers/unordered_multimap/cons/deduction.cc:
2288 1.1 mrg Likewise.
2289 1.1 mrg * testsuite/23_containers/unordered_multiset/cons/deduction.cc:
2290 1.1 mrg Likewise.
2291 1.1 mrg * testsuite/23_containers/unordered_set/cons/deduction.cc:
2292 1.1 mrg Likewise.
2293 1.1 mrg * testsuite/23_containers/vector/cons/deduction.cc: Likewise.
2294 1.1 mrg
2295 1.1 mrg 2021-10-04 Jonathan Wakely <jwakely (a] redhat.com>
2296 1.1 mrg
2297 1.1 mrg * include/std/variant (__detail::__variant::__as): Add missing
2298 1.1 mrg noexcept to first overload.
2299 1.1 mrg
2300 1.1 mrg 2021-10-04 Jonathan Wakely <jwakely (a] redhat.com>
2301 1.1 mrg
2302 1.1 mrg * include/bits/basic_string.h (basic_string(nullptr_t)): Define
2303 1.1 mrg as deleted.
2304 1.1 mrg (operator=(nullptr_t)): Likewise.
2305 1.1 mrg * include/bits/cow_string.h (basic_string(nullptr_t)): Likewise.
2306 1.1 mrg (operator=(nullptr_t)): Likewise.
2307 1.1 mrg * include/std/string_view (basic_string_view(nullptr_t)):
2308 1.1 mrg Likewise.
2309 1.1 mrg * testsuite/21_strings/basic_string/cons/char/nullptr.cc: New test.
2310 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/nonnull.cc:
2311 1.1 mrg Change dg-warning to dg-error.
2312 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc:
2313 1.1 mrg Likewise.
2314 1.1 mrg
2315 1.1 mrg 2021-10-02 Jonathan Wakely <jwakely (a] redhat.com>
2316 1.1 mrg
2317 1.1 mrg * src/c++17/fs_ops.cc (create_directory): Fix typo in enum name.
2318 1.1 mrg * src/filesystem/ops-common.h (__last_system_error): Add
2319 1.1 mrg explicit cast to avoid narrowing conversion.
2320 1.1 mrg (do_space): Fix type in function name.
2321 1.1 mrg
2322 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2323 1.1 mrg
2324 1.1 mrg PR libstdc++/102100
2325 1.1 mrg * include/Makefile.am (c++config.h): Define
2326 1.1 mrg _GLIBCXX_VERBOSE_ASSERT based on configure output.
2327 1.1 mrg * include/Makefile.in: Regenerate.
2328 1.1 mrg * include/bits/c++config: Fix condition for verbose assertions.
2329 1.1 mrg
2330 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2331 1.1 mrg
2332 1.1 mrg PR libstdc++/92546
2333 1.1 mrg * include/bits/erase_if.h (__erase_nodes_if): Use __niter_base to
2334 1.1 mrg unwrap debug iterators.
2335 1.1 mrg * include/bits/refwrap.h: Do not error if included in C++03.
2336 1.1 mrg * include/bits/stl_algo.h (__remove_if): Move to ...
2337 1.1 mrg * include/bits/stl_algobase.h (__remove_if): ... here.
2338 1.1 mrg * include/std/deque (erase, erase_if): Use __remove_if instead of
2339 1.1 mrg remove and remove_if.
2340 1.1 mrg * include/std/string (erase, erase_if): Likewise.
2341 1.1 mrg * include/std/vector (erase, erase_if): Likewise.
2342 1.1 mrg
2343 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2344 1.1 mrg
2345 1.1 mrg PR libstdc++/66742
2346 1.1 mrg * include/bits/list.tcc (list::sort()): Use _Scratch_list
2347 1.1 mrg objects for splicing and merging.
2348 1.1 mrg (list::sort(StrictWeakOrdering)): Likewise.
2349 1.1 mrg * include/bits/stl_list.h (__detail::_Scratch_list): New type.
2350 1.1 mrg * src/c++98/list.cc (_List_node_base::_M_transfer): Add
2351 1.1 mrg assertion for --enable-libstdcxx-debug library.
2352 1.1 mrg * testsuite/23_containers/list/operations/66742.cc: New test.
2353 1.1 mrg
2354 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2355 1.1 mrg
2356 1.1 mrg PR libstdc++/100612
2357 1.1 mrg * include/std/thread (__pmf_expects_stop_token): New variable
2358 1.1 mrg template to detect a pointer to member function that needs a
2359 1.1 mrg stop_token to be added to the arguments.
2360 1.1 mrg (jthread::__S_create): Use __pmf_expects_stop_token.
2361 1.1 mrg (jthread::__S_create_pmf): New function.
2362 1.1 mrg * testsuite/30_threads/jthread/100612.cc: New test.
2363 1.1 mrg
2364 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2365 1.1 mrg
2366 1.1 mrg * include/bits/stl_queue.h
2367 1.1 mrg (__cpp_lib_adaptor_iterator_pair_constructor): Define for C++23, as
2368 1.1 mrg per P1425R4.
2369 1.1 mrg (queue(InputIterator, InputIterator)): Likewise.
2370 1.1 mrg (queue(InputIterator, InputIterator, const Alloc&)): Likewise.
2371 1.1 mrg * include/bits/stl_stack.h
2372 1.1 mrg (__cpp_lib_adaptor_iterator_pair_constructor): Likewise.
2373 1.1 mrg (stack(InputIterator, InputIterator)): Likewise.
2374 1.1 mrg (stack(InputIterator, InputIterator, const Alloc&)): Likewise.
2375 1.1 mrg * include/std/version (__cpp_lib_adaptor_iterator_pair_constructor):
2376 1.1 mrg Define.
2377 1.1 mrg * testsuite/23_containers/queue/cons_from_iters.cc: New test.
2378 1.1 mrg * testsuite/23_containers/stack/cons_from_iters.cc: New test.
2379 1.1 mrg
2380 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2381 1.1 mrg
2382 1.1 mrg * include/bits/stl_queue.h (priority_queue): Add
2383 1.1 mrg allocator-extended overloads for constructors taking iterator.
2384 1.1 mrg * testsuite/23_containers/priority_queue/lwg3506.cc: New test.
2385 1.1 mrg
2386 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2387 1.1 mrg
2388 1.1 mrg * include/bits/stl_queue.h (priority_queue): Construct sequence
2389 1.1 mrg from iterators when no sequence argument is present (LWG 3529).
2390 1.1 mrg * testsuite/23_containers/priority_queue/lwg3529.cc: New test.
2391 1.1 mrg
2392 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2393 1.1 mrg
2394 1.1 mrg * include/bits/stl_queue.h (priority_queue): Constrain
2395 1.1 mrg constructors with InputIterator parameters (LWG 3522).
2396 1.1 mrg * testsuite/23_containers/priority_queue/lwg3522.cc: New test.
2397 1.1 mrg
2398 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2399 1.1 mrg
2400 1.1 mrg * include/bits/ranges_base.h (ranges::distance): Split overload
2401 1.1 mrg into two (LWG 3392).
2402 1.1 mrg * testsuite/24_iterators/range_operations/lwg3392.cc: New test.
2403 1.1 mrg
2404 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2405 1.1 mrg
2406 1.1 mrg * testsuite/30_threads/thread/cons/3.cc: Remove derivation from
2407 1.1 mrg std::unary_function.
2408 1.1 mrg * testsuite/30_threads/thread/cons/4.cc: Likewise.
2409 1.1 mrg * testsuite/30_threads/thread/cons/5.cc: Likewise.
2410 1.1 mrg
2411 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2412 1.1 mrg
2413 1.1 mrg * testsuite/ext/pb_ds/example/basic_multimap.cc: Remove
2414 1.1 mrg unnecesary derivation from std::unary_function.
2415 1.1 mrg * testsuite/ext/pb_ds/example/erase_if.cc: Likewise.
2416 1.1 mrg * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Likewise.
2417 1.1 mrg * testsuite/ext/pb_ds/example/hash_initial_size.cc: Likewise.
2418 1.1 mrg * testsuite/ext/pb_ds/example/hash_load_set_change.cc: Likewise.
2419 1.1 mrg * testsuite/ext/pb_ds/example/hash_mod.cc: Likewise.
2420 1.1 mrg * testsuite/ext/pb_ds/example/hash_resize.cc: Likewise.
2421 1.1 mrg * testsuite/ext/pb_ds/example/hash_shift_mask.cc: Likewise.
2422 1.1 mrg * testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc:
2423 1.1 mrg Likewise.
2424 1.1 mrg * testsuite/ext/pb_ds/example/ranged_hash.cc: Likewise.
2425 1.1 mrg * testsuite/ext/pb_ds/example/store_hash.cc: Likewise.
2426 1.1 mrg
2427 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2428 1.1 mrg
2429 1.1 mrg * src/c++11/functexcept.cc (__throw_out_of_range_fmt): Do not
2430 1.1 mrg expand the format string for freestanding, or non-vebose, or if
2431 1.1 mrg we're just going to abort anyway.
2432 1.1 mrg * src/c++11/snprintf_lite.cc: Remove unused header and
2433 1.1 mrg declaration.
2434 1.1 mrg
2435 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2436 1.1 mrg
2437 1.1 mrg * include/std/variant (__do_visit): Use variant_npos instead of
2438 1.1 mrg literal -1 that requires a narrowing conversion.
2439 1.1 mrg
2440 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2441 1.1 mrg
2442 1.1 mrg PR libstdc++/99327
2443 1.1 mrg * src/filesystem/ops-common.h (__unsupported): New function to
2444 1.1 mrg return a suitable error code for missing functionality.
2445 1.1 mrg (posix::off_t): New typedef.
2446 1.1 mrg (posix::*): Set errno to ENOSYS instead of ENOTSUP for no-op
2447 1.1 mrg fallback implementations.
2448 1.1 mrg (do_copy_file): Replace uses of errc::not_supported.
2449 1.1 mrg * src/c++17/fs_ops.cc (fs::copy, fs::copy_file, create_dir)
2450 1.1 mrg (fs::create_directory, fs::create_directory_symlink)
2451 1.1 mrg (fs::create_hard_link, fs::create_symlink, fs::current_path)
2452 1.1 mrg (fs::equivalent, do_stat, fs::file_size, fs::hard_link_count)
2453 1.1 mrg (fs::last_write_time, fs::permissions, fs::read_symlink):
2454 1.1 mrg Replace uses of errc::not_supported.
2455 1.1 mrg (fs::resize_file): Qualify off_t.
2456 1.1 mrg * src/filesystem/ops.cc (fs::copy, fs::copy_file, create_dir)
2457 1.1 mrg (fs::create_directory, fs::create_directory_symlink)
2458 1.1 mrg (fs::create_hard_link, fs::create_symlink, fs::current_path)
2459 1.1 mrg (fs::equivalent, do_stat, fs::file_size, fs::last_write_time)
2460 1.1 mrg (fs::permissions, fs::read_symlink, fs::system_complete):
2461 1.1 mrg Replace uses of errc::not_supported.
2462 1.1 mrg (fs::resize_file): Qualify off_t and enable unconditionally.
2463 1.1 mrg * testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
2464 1.1 mrg
2465 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2466 1.1 mrg
2467 1.1 mrg * src/filesystem/ops-common.h (last_error): New helper function.
2468 1.1 mrg (filesystem::do_space): Use last_error().
2469 1.1 mrg * src/c++17/fs_ops.cc (fs::absolute, fs::create_hard_link)
2470 1.1 mrg (fs::equivalent, fs::remove, fs::temp_directory_path): Use
2471 1.1 mrg last_error().
2472 1.1 mrg * src/filesystem/ops.cc (fs::create_hard_link)
2473 1.1 mrg (fs::remove, fs::temp_directory_path): Likewise.
2474 1.1 mrg
2475 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2476 1.1 mrg
2477 1.1 mrg * include/std/type_traits (__conditional): New class template
2478 1.1 mrg for internal uses of std::conditional.
2479 1.1 mrg (__conditional_t): New alias template to replace conditional_t.
2480 1.1 mrg (__and_, __or_, __result_of_memfun, __result_of_memobj): Use
2481 1.1 mrg __conditional_t instead of conditional::type.
2482 1.1 mrg * include/bits/atomic_base.h (__atomic_impl::_Diff): Likewise.
2483 1.1 mrg * include/bits/hashtable.h (_Hashtable): Likewise.
2484 1.1 mrg * include/bits/hashtable_policy.h (_Node_iterator, _Insert_base)
2485 1.1 mrg (_Local_iterator): Likewise. Replace typedefs with
2486 1.1 mrg using-declarations.
2487 1.1 mrg * include/bits/move.h (move_if_noexcept): Use __conditional_t.
2488 1.1 mrg * include/bits/parse_numbers.h (_Select_int_base): Likewise.
2489 1.1 mrg * include/bits/ptr_traits.h (__make_not_void): Likewise.
2490 1.1 mrg * include/bits/ranges_algobase.h (__copy_or_move_backward)
2491 1.1 mrg (__copy_or_move): Likewise.
2492 1.1 mrg * include/bits/ranges_base.h (borrowed_iterator_t): Likewise.
2493 1.1 mrg * include/bits/ranges_util.h (borrowed_subrange_t): Likewise.
2494 1.1 mrg * include/bits/regex_compiler.h (_BracketMatcher): Use
2495 1.1 mrg __conditional_t. Replace typedefs with using-declarations.
2496 1.1 mrg * include/bits/shared_ptr_base.h (__shared_count): Use
2497 1.1 mrg __conditional_t.
2498 1.1 mrg * include/bits/stl_algobase.h (__copy_move, __copy_move_backward):
2499 1.1 mrg Likewise.
2500 1.1 mrg * include/bits/stl_iterator.h (__detail::__clamp_iter_cat)
2501 1.1 mrg (reverse_iterator::iterator_concept)
2502 1.1 mrg (__make_move_if_noexcept_iterator)
2503 1.1 mrg (iterator_traits<common_iterator<_It, _Sent>>)
2504 1.1 mrg (iterator_traits<counted_iterator<_It>>): Likewise.
2505 1.1 mrg * include/bits/stl_pair.h (_PCC, pair::operator=): Likewise.
2506 1.1 mrg * include/bits/stl_tree.h (_Rb_tree::insert_return_type)
2507 1.1 mrg (_Rb_tree::_M_clone_node): Likewise.
2508 1.1 mrg * include/bits/unique_ptr.h (unique_ptr(unique_ptr<U,E>&&)):
2509 1.1 mrg Likewise.
2510 1.1 mrg * include/bits/uses_allocator.h (__uses_alloc): Likewise.
2511 1.1 mrg (__is_uses_allocator_predicate): Likewise.
2512 1.1 mrg * include/debug/functions.h (__foreign_iterator_aux2): Likewise.
2513 1.1 mrg * include/experimental/any (any::_Manager, __any_caster):
2514 1.1 mrg Likewise.
2515 1.1 mrg * include/experimental/executor (async_completion): Likewise.
2516 1.1 mrg * include/experimental/functional (__boyer_moore_base_t):
2517 1.1 mrg Likewise.
2518 1.1 mrg * include/std/any (any::_Manager): Likewise.
2519 1.1 mrg * include/std/functional (__boyer_moore_base_t): Likewise.
2520 1.1 mrg * include/std/ranges (borrowed_iterator_t)
2521 1.1 mrg (borrowed_subrange_t, __detail::__maybe_present_t)
2522 1.1 mrg (__detail::__maybe_const_t, split_view): Likewise.
2523 1.1 mrg * include/std/tuple (__empty_not_final, tuple::operator=):
2524 1.1 mrg Likewise.
2525 1.1 mrg * include/std/variant (__detail::__variant::__get_t): Likewise.
2526 1.1 mrg
2527 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2528 1.1 mrg
2529 1.1 mrg PR libstdc++/78113
2530 1.1 mrg * include/std/variant (__do_visit): Use a switch when we have a
2531 1.1 mrg single variant with a small number of alternatives.
2532 1.1 mrg
2533 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2534 1.1 mrg
2535 1.1 mrg PR libstdc++/90943
2536 1.1 mrg * include/std/variant (__cpp_lib_variant): Update value.
2537 1.1 mrg (__detail::__variant::__as): New helpers implementing the
2538 1.1 mrg as-variant exposition-only function templates.
2539 1.1 mrg (visit, visit<R>): Use __as to upcast the variant parameters.
2540 1.1 mrg * include/std/version (__cpp_lib_variant): Update value.
2541 1.1 mrg * testsuite/20_util/variant/visit_inherited.cc: New test.
2542 1.1 mrg
2543 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2544 1.1 mrg
2545 1.1 mrg * include/bits/stl_iterator.h (__normal_iterator): Simplify
2546 1.1 mrg converting constructor and do not require _Container::pointer.
2547 1.1 mrg
2548 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2549 1.1 mrg
2550 1.1 mrg * include/bits/cow_string.h [_GLIBCXX_FULLY_DYNAMIC_STRING]
2551 1.1 mrg (basic_string(basic_string&&)): Add noexcept and avoid
2552 1.1 mrg allocation, by sharing rep with the rvalue string.
2553 1.1 mrg
2554 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2555 1.1 mrg
2556 1.1 mrg * include/bits/stl_iterator.h (common_iterator::__arrow_proxy)
2557 1.1 mrg (common_iterator::__postfix_proxy): Add noexcept.
2558 1.1 mrg
2559 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2560 1.1 mrg
2561 1.1 mrg PR libstdc++/94418
2562 1.1 mrg * include/bits/stl_iterator.h (reverse_iterator): Use
2563 1.1 mrg conditional noexcept on constructors and assignment operators.
2564 1.1 mrg * testsuite/24_iterators/reverse_iterator/noexcept.cc: New test.
2565 1.1 mrg
2566 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2567 1.1 mrg
2568 1.1 mrg PR libstdc++/100153
2569 1.1 mrg * include/bits/vector.tcc (vector<bool>::_M_shrink_to_fit()):
2570 1.1 mrg When size() is zero just deallocate and reset.
2571 1.1 mrg
2572 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2573 1.1 mrg
2574 1.1 mrg PR libstdc++/96733
2575 1.1 mrg * include/bits/stl_algo.h (clamp): Use std::min and std::max.
2576 1.1 mrg
2577 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2578 1.1 mrg
2579 1.1 mrg * include/bits/regex.h (basic_regex::multiline): Define for
2580 1.1 mrg non-strict C++11 and C++14 modes.
2581 1.1 mrg * include/bits/regex_constants.h (regex_constants::multiline):
2582 1.1 mrg Add _GLIBCXX_RESOLVE_LIB_DEFECTS comment.
2583 1.1 mrg
2584 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2585 1.1 mrg
2586 1.1 mrg * testsuite/25_algorithms/is_permutation/2.cc: Include <iterator>.
2587 1.1 mrg
2588 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2589 1.1 mrg
2590 1.1 mrg * include/bits/stream_iterator.h (istream_iterator): Add
2591 1.1 mrg noexcept to constructors and non-throwing member functions and
2592 1.1 mrg friend functions.
2593 1.1 mrg (ostream_iterator): Likewise.
2594 1.1 mrg
2595 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2596 1.1 mrg
2597 1.1 mrg * include/bits/boost_concept_check.h (_Is_vector_bool_iterator):
2598 1.1 mrg New trait to identify vector<bool> iterators, including debug
2599 1.1 mrg ones.
2600 1.1 mrg (_ForwardIteratorReferenceConcept): Add default template
2601 1.1 mrg argument using _Is_vector_bool_iterator and use it in partial
2602 1.1 mrg specialization for the vector<bool> cases.
2603 1.1 mrg (_Mutable_ForwardIteratorReferenceConcept): Likewise.
2604 1.1 mrg * testsuite/24_iterators/operations/prev_neg.cc: Adjust dg-error
2605 1.1 mrg line number.
2606 1.1 mrg
2607 1.1 mrg 2021-10-01 Jonathan Wakely <jwakely (a] redhat.com>
2608 1.1 mrg
2609 1.1 mrg * include/bits/list.tcc (list::merge): Remove call to size() and
2610 1.1 mrg try-catch block. Use _Finalize_merge instead.
2611 1.1 mrg * include/bits/stl_list.h (list::_Finalize_merge): New
2612 1.1 mrg scope guard type to update _M_size members after a merge.
2613 1.1 mrg
2614 1.1 mrg 2021-09-30 Jonathan Wakely <jwakely (a] redhat.com>
2615 1.1 mrg
2616 1.1 mrg * include/bits/regex.h (basic_regex::multiline): Fix #if
2617 1.1 mrg condition.
2618 1.1 mrg
2619 1.1 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
2620 1.1 mrg
2621 1.1 mrg * include/bits/regex.h (basic_regex::multiline): Define constant
2622 1.1 mrg for C++17.
2623 1.1 mrg * include/bits/regex_constants.h (regex_constants::multiline):
2624 1.1 mrg Define constant for C++17.
2625 1.1 mrg (regex_constants::__multiline): Define duplicate constant for
2626 1.1 mrg internal use in C++11 and C++14.
2627 1.1 mrg * include/bits/regex_executor.h (_Executor::_M_match_multiline()):
2628 1.1 mrg New member function.
2629 1.1 mrg (_Executor::_M_is_line_terminator(_CharT)): New member function.
2630 1.1 mrg (_Executor::_M_at_begin(), _Executor::_M_at_end()): Use new
2631 1.1 mrg member functions to support multiline matches.
2632 1.1 mrg * testsuite/28_regex/algorithms/regex_match/multiline.cc: New test.
2633 1.1 mrg
2634 1.1 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
2635 1.1 mrg
2636 1.1 mrg * include/bits/regex_compiler.h (_Compiler::_S_validate): New
2637 1.1 mrg function.
2638 1.1 mrg * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Use
2639 1.1 mrg _S_validate to check flags.
2640 1.1 mrg * include/bits/regex_error.h (_S_grammar): New error code for
2641 1.1 mrg internal use.
2642 1.1 mrg * testsuite/28_regex/basic_regex/ctors/grammar.cc: New test.
2643 1.1 mrg
2644 1.1 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
2645 1.1 mrg
2646 1.1 mrg PR libstdc++/84110
2647 1.1 mrg * include/bits/regex_error.h (regex_constants::_S_null): New
2648 1.1 mrg error code for internal use.
2649 1.1 mrg * include/bits/regex_scanner.tcc (_Scanner::_M_scan_normal()):
2650 1.1 mrg Check for null character.
2651 1.1 mrg * testsuite/28_regex/basic_regex/84110.cc: New test.
2652 1.1 mrg
2653 1.1 mrg 2021-09-29 Jonathan Wakely <jwakely (a] redhat.com>
2654 1.1 mrg
2655 1.1 mrg * include/bits/regex.h (__detail::__is_contiguous_iter): Move
2656 1.1 mrg here from <bits/regex_compiler.h>.
2657 1.1 mrg (basic_regex::_M_compile): New function to compile an NFA from
2658 1.1 mrg a regular expression string.
2659 1.1 mrg (basic_regex::basic_regex): Use _M_compile instead of delegating
2660 1.1 mrg to other constructors.
2661 1.1 mrg (basic_regex::operator=(const basic_regex&)): Define as
2662 1.1 mrg defaulted.
2663 1.1 mrg (basic_regex::operator=(initializer_list<C>)): Use _M_compile.
2664 1.1 mrg (basic_regex::assign(const basic_regex&)): Use copy assignment.
2665 1.1 mrg (basic_regex::assign(basic_regex&&)): Use move assignment.
2666 1.1 mrg (basic_regex::assign(const C*, flag_type)): Use _M_compile
2667 1.1 mrg instead of constructing a temporary string.
2668 1.1 mrg (basic_regex::assign(const C*, size_t, flag_type)): Likewise.
2669 1.1 mrg (basic_regex::assign(const basic_string<C,T,A>&, flag_type)):
2670 1.1 mrg Use _M_compile instead of constructing a temporary basic_regex.
2671 1.1 mrg (basic_regex::assign(InputIter, InputIter, flag_type)): Avoid
2672 1.1 mrg constructing a temporary string for contiguous iterators of the
2673 1.1 mrg right value type.
2674 1.1 mrg * include/bits/regex_compiler.h (__is_contiguous_iter): Move to
2675 1.1 mrg <bits/regex.h>.
2676 1.1 mrg (__enable_if_contiguous_iter, __disable_if_contiguous_iter)
2677 1.1 mrg (__compile_nfa): Remove.
2678 1.1 mrg * testsuite/28_regex/basic_regex/assign/exception_safety.cc: New
2679 1.1 mrg test.
2680 1.1 mrg * testsuite/28_regex/basic_regex/ctors/char/other.cc: New test.
2681 1.1 mrg
2682 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2683 1.1 mrg
2684 1.1 mrg * include/bits/atomic_timed_wait.h (__platform_wait_until_impl):
2685 1.1 mrg Return false for ETIMEDOUT and true otherwise.
2686 1.1 mrg
2687 1.1 mrg 2021-09-28 Franois Dumont <fdumont (a] gcc.gnu.org>
2688 1.1 mrg
2689 1.1 mrg * testsuite/20_util/default_delete/48631_neg.cc: Adapt dg-prune-output message
2690 1.1 mrg to also match message with '__8' in it.
2691 1.1 mrg
2692 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2693 1.1 mrg
2694 1.1 mrg * include/bits/regex_automaton.h (_NFA_base::_SizeT): Remove.
2695 1.1 mrg * include/bits/regex_compiler.h (_Compiler::_IterT): Remove.
2696 1.1 mrg * include/bits/regex_compiler.tcc: Likewise.
2697 1.1 mrg * include/bits/regex_scanner.h (_Scanner::_IterT): Remove.
2698 1.1 mrg * include/bits/regex_scanner.tcc: Likewise.
2699 1.1 mrg
2700 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2701 1.1 mrg
2702 1.1 mrg * include/bits/regex_compiler.tcc: Add line break in empty while
2703 1.1 mrg statement.
2704 1.1 mrg * include/bits/regex_executor.tcc: Avoid unused parameter
2705 1.1 mrg warning.
2706 1.1 mrg
2707 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2708 1.1 mrg
2709 1.1 mrg * include/bits/regex.h (basic_regex, swap): Add noexcept to
2710 1.1 mrg non-throwing functions.
2711 1.1 mrg * include/bits/regex_automaton.h (_State_base, _State)
2712 1.1 mrg (_NFA_base): Likewise.
2713 1.1 mrg * include/bits/regex_compiler.h (_Compiler): Likewise.
2714 1.1 mrg * include/bits/regex_error.h (regex_error::code()): Likewise.
2715 1.1 mrg * include/bits/regex_scanner.h (_Scanner): Likewise.
2716 1.1 mrg
2717 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2718 1.1 mrg
2719 1.1 mrg * include/bits/atomic_wait.h (_GLIBCXX_HAVE_PLATFORM_WAIT):
2720 1.1 mrg Define before first attempt to check it.
2721 1.1 mrg
2722 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2723 1.1 mrg
2724 1.1 mrg * testsuite/23_containers/priority_queue/requirements/explicit_instantiation/1.cc:
2725 1.1 mrg Do not check non-default constructible sequences when
2726 1.1 mrg _GLIBCXX_CONCEPT_CHECKS is defined.
2727 1.1 mrg * testsuite/23_containers/priority_queue/requirements/explicit_instantiation/1_c++98.cc:
2728 1.1 mrg Likewise.
2729 1.1 mrg * testsuite/23_containers/queue/requirements/explicit_instantiation/1.cc:
2730 1.1 mrg Likewise.
2731 1.1 mrg * testsuite/23_containers/queue/requirements/explicit_instantiation/1_c++98.cc:
2732 1.1 mrg Likewise.
2733 1.1 mrg * testsuite/23_containers/stack/requirements/explicit_instantiation/1.cc:
2734 1.1 mrg Likewise.
2735 1.1 mrg * testsuite/23_containers/stack/requirements/explicit_instantiation/1_c++98.cc:
2736 1.1 mrg Likewise.
2737 1.1 mrg
2738 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2739 1.1 mrg
2740 1.1 mrg * testsuite/23_containers/deque/requirements/explicit_instantiation/3.cc:
2741 1.1 mrg Do not test implicit allocator rebinding when _GLIBCXX_CONCEPT_CHECKS
2742 1.1 mrg is defined.
2743 1.1 mrg * testsuite/23_containers/forward_list/requirements/explicit_instantiation/3.cc:
2744 1.1 mrg Likewise.
2745 1.1 mrg * testsuite/23_containers/list/requirements/explicit_instantiation/3.cc:
2746 1.1 mrg Likewise.
2747 1.1 mrg * testsuite/23_containers/list/requirements/explicit_instantiation/5.cc:
2748 1.1 mrg Likewise.
2749 1.1 mrg * testsuite/23_containers/map/requirements/explicit_instantiation/3.cc:
2750 1.1 mrg Likewise.
2751 1.1 mrg * testsuite/23_containers/map/requirements/explicit_instantiation/5.cc:
2752 1.1 mrg Likewise.
2753 1.1 mrg * testsuite/23_containers/multimap/requirements/explicit_instantiation/3.cc:
2754 1.1 mrg Likewise.
2755 1.1 mrg * testsuite/23_containers/multimap/requirements/explicit_instantiation/5.cc:
2756 1.1 mrg Likewise.
2757 1.1 mrg * testsuite/23_containers/multiset/requirements/explicit_instantiation/3.cc:
2758 1.1 mrg Likewise.
2759 1.1 mrg * testsuite/23_containers/multiset/requirements/explicit_instantiation/5.cc:
2760 1.1 mrg Likewise.
2761 1.1 mrg * testsuite/23_containers/set/requirements/explicit_instantiation/3.cc:
2762 1.1 mrg Likewise.
2763 1.1 mrg * testsuite/23_containers/set/requirements/explicit_instantiation/5.cc:
2764 1.1 mrg Likewise.
2765 1.1 mrg * testsuite/23_containers/unordered_map/requirements/explicit_instantiation/3.cc:
2766 1.1 mrg Likewise.
2767 1.1 mrg * testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/3.cc:
2768 1.1 mrg Likewise.
2769 1.1 mrg * testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/3.cc:
2770 1.1 mrg Likewise.
2771 1.1 mrg * testsuite/23_containers/unordered_set/requirements/explicit_instantiation/3.cc:
2772 1.1 mrg Likewise.
2773 1.1 mrg * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/3.cc:
2774 1.1 mrg Likewise.
2775 1.1 mrg * testsuite/23_containers/vector/requirements/explicit_instantiation/3.cc:
2776 1.1 mrg Likewise.
2777 1.1 mrg
2778 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2779 1.1 mrg
2780 1.1 mrg * include/bits/boost_concept_check.h (_ForwardIteratorConcept)
2781 1.1 mrg (_BidirectionalIteratorConcept, _RandomAccessIteratorConcept):
2782 1.1 mrg Check result types of iterator operations.
2783 1.1 mrg (_Mutable_ForwardIteratorConcept): Check that iterator's
2784 1.1 mrg reference type is a reference to its value type.
2785 1.1 mrg (_Mutable_BidirectionalIteratorConcept): Do not require the
2786 1.1 mrg value type to be assignable.
2787 1.1 mrg (_Mutable_RandomAccessIteratorConcept): Likewise.
2788 1.1 mrg * testsuite/24_iterators/operations/prev_neg.cc: Adjust dg-error
2789 1.1 mrg line number.
2790 1.1 mrg
2791 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2792 1.1 mrg
2793 1.1 mrg * testsuite/25_algorithms/copy/34595.cc: Add missing operation
2794 1.1 mrg for type used as an iterator.
2795 1.1 mrg * testsuite/25_algorithms/unique_copy/check_type.cc: Likewise.
2796 1.1 mrg
2797 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2798 1.1 mrg
2799 1.1 mrg * testsuite/20_util/is_nothrow_swappable/value.h: Use custom
2800 1.1 mrg comparison function for priority_queue of type with no
2801 1.1 mrg relational operators.
2802 1.1 mrg * testsuite/20_util/is_swappable/value.h: Likewise.
2803 1.1 mrg * testsuite/24_iterators/output/concept.cc: Add operator< to
2804 1.1 mrg type used in set.
2805 1.1 mrg
2806 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2807 1.1 mrg
2808 1.1 mrg * include/bits/boost_concept_check.h (_OutputIteratorConcept):
2809 1.1 mrg Use a function to preserve value category of the type.
2810 1.1 mrg * include/bits/stl_algobase.h (copy, move, fill_n): Use a
2811 1.1 mrg reference as the second argument for _OutputIteratorConcept.
2812 1.1 mrg (copy_backward, move_backward): Use _OutputIteratorConcept
2813 1.1 mrg instead of _ConvertibleConcept.
2814 1.1 mrg
2815 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2816 1.1 mrg
2817 1.1 mrg * include/bits/stl_iterator.h (pointer_traits): Define partial
2818 1.1 mrg specialization for __normal_iterator.
2819 1.1 mrg * testsuite/24_iterators/normal_iterator/to_address.cc: New test.
2820 1.1 mrg
2821 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2822 1.1 mrg
2823 1.1 mrg * include/bits/move.h (forward(remove_reference_t<T>&&)):
2824 1.1 mrg Improve text of static_assert.
2825 1.1 mrg * testsuite/20_util/forward/c_neg.cc: Adjust dg-error.
2826 1.1 mrg * testsuite/20_util/forward/f_neg.cc: Likewise.
2827 1.1 mrg
2828 1.1 mrg 2021-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2829 1.1 mrg
2830 1.1 mrg PR libstdc++/102499
2831 1.1 mrg * include/bits/fs_path.h (path::begin, path::end): Add noexcept
2832 1.1 mrg to declarations, to match definitions.
2833 1.1 mrg
2834 1.1 mrg 2021-09-24 Jonathan Wakely <jwakely (a] redhat.com>
2835 1.1 mrg
2836 1.1 mrg * include/bits/range_access.h (cbegin, cend): Remove redundant
2837 1.1 mrg 'inline' specifier.
2838 1.1 mrg
2839 1.1 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
2840 1.1 mrg
2841 1.1 mrg * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
2842 1.1 mrg Remove dg-error lines for C++20-only errors.
2843 1.1 mrg
2844 1.1 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
2845 1.1 mrg
2846 1.1 mrg * testsuite/19_diagnostics/headers/system_error/93151.cc:
2847 1.1 mrg Disable PCH.
2848 1.1 mrg
2849 1.1 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
2850 1.1 mrg
2851 1.1 mrg * src/c++11/system_error.cc (system_error_category) [_WIN32]:
2852 1.1 mrg Map Windows error codes to generic POSIX error numbers. Use
2853 1.1 mrg FormatMessage instead of strerror.
2854 1.1 mrg * testsuite/19_diagnostics/error_category/system_category.cc:
2855 1.1 mrg Adjust for new behaviour on Windows.
2856 1.1 mrg
2857 1.1 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
2858 1.1 mrg
2859 1.1 mrg * src/c++11/system_error.cc (generic_error_category): Define
2860 1.1 mrg class and virtual functions as 'final'.
2861 1.1 mrg (generic_error_category::equivalent(int, const error_condition&)):
2862 1.1 mrg Override.
2863 1.1 mrg (system_error_category): Define class and virtual functions as
2864 1.1 mrg 'final'.
2865 1.1 mrg (system_error_category::equivalent(int, const error_condition&)):
2866 1.1 mrg Override.
2867 1.1 mrg (generic_category_instance, system_category_instance): Use
2868 1.1 mrg constinit union to make the objects immortal.
2869 1.1 mrg
2870 1.1 mrg 2021-09-23 Jonathan Wakely <jwakely (a] redhat.com>
2871 1.1 mrg
2872 1.1 mrg PR libstdc++/102425
2873 1.1 mrg * src/c++11/system_error.cc
2874 1.1 mrg (system_error_category::default_error_condition): Add 0 to
2875 1.1 mrg switch.
2876 1.1 mrg * testsuite/19_diagnostics/error_category/102425.cc: New test.
2877 1.1 mrg
2878 1.1 mrg 2021-09-17 Jonathan Wakely <jwakely (a] redhat.com>
2879 1.1 mrg
2880 1.1 mrg * include/bits/fs_path.h (path::iterator): Add noexcept to all
2881 1.1 mrg member functions and friend functions.
2882 1.1 mrg (distance): Add noexcept.
2883 1.1 mrg (advance): Add noexcept and inline.
2884 1.1 mrg * include/experimental/bits/fs_path.h (path::iterator):
2885 1.1 mrg Add noexcept to all member functions.
2886 1.1 mrg
2887 1.1 mrg 2021-09-17 Jonathan Wakely <jwakely (a] redhat.com>
2888 1.1 mrg
2889 1.1 mrg PR libstdc++/102270
2890 1.1 mrg * include/std/tuple (_Tuple_impl): Add constexpr to constructor
2891 1.1 mrg missed in previous patch.
2892 1.1 mrg * testsuite/20_util/tuple/cons/102270.C: Moved to...
2893 1.1 mrg * testsuite/20_util/tuple/cons/102270.cc: ...here.
2894 1.1 mrg * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add
2895 1.1 mrg constexpr to constructor so it can be used for C++20 tests.
2896 1.1 mrg
2897 1.1 mrg 2021-09-17 Jonathan Wakely <jwakely (a] redhat.com>
2898 1.1 mrg
2899 1.1 mrg * testsuite/26_numerics/valarray/dr630-3.C: Moved to...
2900 1.1 mrg * testsuite/26_numerics/valarray/dr630-3.cc: ...here.
2901 1.1 mrg * testsuite/27_io/basic_iostream/cons/16251.C: Moved to...
2902 1.1 mrg * testsuite/27_io/basic_iostream/cons/16251.cc: ...here.
2903 1.1 mrg
2904 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2905 1.1 mrg
2906 1.1 mrg * src/Makefile.am (stamp-debug): Add all Makefiles as
2907 1.1 mrg prerequisites.
2908 1.1 mrg * src/Makefile.in: Regenerate.
2909 1.1 mrg
2910 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2911 1.1 mrg
2912 1.1 mrg * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Increase
2913 1.1 mrg timeout factor to 3.
2914 1.1 mrg * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise.
2915 1.1 mrg
2916 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2917 1.1 mrg
2918 1.1 mrg * doc/xml/manual/using.xml: Generalize to apply to more than
2919 1.1 mrg just -std=c++11.
2920 1.1 mrg * doc/html/manual/using_macros.html: Regenerate.
2921 1.1 mrg
2922 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2923 1.1 mrg
2924 1.1 mrg * include/std/optional (nullptr_t): Make constructor noexcept.
2925 1.1 mrg
2926 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2927 1.1 mrg
2928 1.1 mrg * include/bits/fs_path.h (advance): Remove non-deducible
2929 1.1 mrg template parameter.
2930 1.1 mrg
2931 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2932 1.1 mrg
2933 1.1 mrg PR libstdc++/102270
2934 1.1 mrg * include/std/tuple (_Head_base, _Tuple_impl): Add
2935 1.1 mrg _GLIBCXX20_CONSTEXPR to allocator-extended constructors.
2936 1.1 mrg (tuple<>::swap(tuple&)): Add _GLIBCXX20_CONSTEXPR.
2937 1.1 mrg * testsuite/20_util/tuple/cons/102270.C: New test.
2938 1.1 mrg
2939 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2940 1.1 mrg
2941 1.1 mrg PR libstdc++/102280
2942 1.1 mrg * include/std/span (span(Range&&)): Add constraint to deduction
2943 1.1 mrg guide.
2944 1.1 mrg
2945 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2946 1.1 mrg
2947 1.1 mrg * src/c++98/Makefile.am: Use CXXCOMPILE not LTCXXCOMPILE.
2948 1.1 mrg * src/c++98/Makefile.in: Regenerate.
2949 1.1 mrg
2950 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2951 1.1 mrg
2952 1.1 mrg * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
2953 1.1 mrg (to_string): Add noexcept if the type width is 32 bits or less.
2954 1.1 mrg
2955 1.1 mrg 2021-09-16 Jonathan Wakely <jwakely (a] redhat.com>
2956 1.1 mrg
2957 1.1 mrg * include/bits/unique_ptr.h (__uniq_ptr_impl::_M_ptr)
2958 1.1 mrg (__uniq_ptr_impl::_M_deleter): Add noexcept.
2959 1.1 mrg
2960 1.1 mrg 2021-09-16 Thomas Rodgers <rodgert (a] twrodgers.com>
2961 1.1 mrg
2962 1.1 mrg PR libstdc++/101761
2963 1.1 mrg * testsuite/29_atomics/atomic_ref/wait_notify.cc (test): Use
2964 1.1 mrg va and vb as arguments to wait/notify, remove unused bb local.
2965 1.1 mrg
2966 1.1 mrg 2021-09-15 Hugo Beauze-Luyssen <hugo (a] beauzee.fr>
2967 1.1 mrg
2968 1.1 mrg * crossconfig.m4: Check for TLS support on mingw.
2969 1.1 mrg * configure: Regenerate.
2970 1.1 mrg
2971 1.1 mrg 2021-09-13 Jason Merrill <jason (a] redhat.com>
2972 1.1 mrg
2973 1.1 mrg * include/std/version: Define __cpp_lib_hardware_interference_size.
2974 1.1 mrg * libsupc++/new: Define hardware interference size variables.
2975 1.1 mrg
2976 1.1 mrg 2021-09-10 Jonathan Wakely <jwakely (a] redhat.com>
2977 1.1 mrg
2978 1.1 mrg * testsuite/experimental/net/internet/resolver/ops/lookup.cc:
2979 1.1 mrg Fix invalid hostname to only match the .invalid TLD.
2980 1.1 mrg
2981 1.1 mrg 2021-09-02 Jonathan Wakely <jwakely (a] redhat.com>
2982 1.1 mrg
2983 1.1 mrg * include/bits/atomic_base.h (__atomic_base<P*>::compare_exchange_weak):
2984 1.1 mrg Add new functions.
2985 1.1 mrg * include/std/atomic (atomic<T*>::compare_exchange_weak): Use
2986 1.1 mrg it.
2987 1.1 mrg
2988 1.1 mrg 2021-09-02 Jonathan Wakely <jwakely (a] redhat.com>
2989 1.1 mrg
2990 1.1 mrg * include/std/atomic: Tweak whitespace.
2991 1.1 mrg
2992 1.1 mrg 2021-09-02 Jonathan Wakely <jwakely (a] redhat.com>
2993 1.1 mrg
2994 1.1 mrg PR c++/102177
2995 1.1 mrg * include/bits/atomic_base.h (__is_valid_cmpexch_failure_order):
2996 1.1 mrg New function to check if a memory order is valid for the failure
2997 1.1 mrg case of compare exchange operations.
2998 1.1 mrg (__atomic_base<I>::compare_exchange_weak): Simplify assertions
2999 1.1 mrg by using __is_valid_cmpexch_failure_order.
3000 1.1 mrg (__atomic_base<I>::compare_exchange_strong): Likewise.
3001 1.1 mrg (__atomic_base<P*>::compare_exchange_weak): Likewise.
3002 1.1 mrg (__atomic_base<P*>::compare_exchange_strong): Likewise.
3003 1.1 mrg (__atomic_impl::compare_exchange_weak): Add assertion.
3004 1.1 mrg (__atomic_impl::compare_exchange_strong): Likewise.
3005 1.1 mrg * include/std/atomic (atomic::compare_exchange_weak): Likewise.
3006 1.1 mrg (atomic::compare_exchange_strong): Likewise.
3007 1.1 mrg
3008 1.1 mrg 2021-09-02 Jonathan Wakely <jwakely (a] redhat.com>
3009 1.1 mrg
3010 1.1 mrg * include/std/functional (invoke_r): Define.
3011 1.1 mrg * include/std/version (__cpp_lib_invoke_r): Define.
3012 1.1 mrg * testsuite/20_util/function_objects/invoke/version.cc: Check
3013 1.1 mrg for __cpp_lib_invoke_r as well as __cpp_lib_invoke.
3014 1.1 mrg * testsuite/20_util/function_objects/invoke/4.cc: New test.
3015 1.1 mrg
3016 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3017 1.1 mrg
3018 1.1 mrg PR libstdc++/98421
3019 1.1 mrg * include/std/span (span(Iter, size_type), span(Iter, Iter)):
3020 1.1 mrg Add valid range checks.
3021 1.1 mrg * testsuite/23_containers/span/cons_1_assert_neg.cc: New test.
3022 1.1 mrg * testsuite/23_containers/span/cons_2_assert_neg.cc: New test.
3023 1.1 mrg
3024 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3025 1.1 mrg
3026 1.1 mrg * configure.ac: Fix checks for F_GETFL, F_SETFL and O_NONBLOCK.
3027 1.1 mrg * configure: Regenerate.
3028 1.1 mrg
3029 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3030 1.1 mrg
3031 1.1 mrg * src/c++11/system_error.cc (error_category::~error_category()):
3032 1.1 mrg Remove noexcept-specifier.
3033 1.1 mrg (system_error::~system_error()): Likewise.
3034 1.1 mrg * testsuite/19_diagnostics/error_category/noexcept.cc: New test.
3035 1.1 mrg * testsuite/19_diagnostics/system_error/noexcept.cc: New test.
3036 1.1 mrg
3037 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3038 1.1 mrg
3039 1.1 mrg PR libstdc++/102074
3040 1.1 mrg * include/bits/atomic_timed_wait.h (__timed_waiter_pool)
3041 1.1 mrg [!_GLIBCXX_HAVE_PLATFORM_TIMED_WAIT]: Add missing return.
3042 1.1 mrg
3043 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3044 1.1 mrg
3045 1.1 mrg * include/experimental/internet (__make_resolver_error_code):
3046 1.1 mrg Handle EAI_SYSTEM errors.
3047 1.1 mrg (basic_resolver_results): Use __make_resolver_error_code. Use
3048 1.1 mrg Glibc NI_MAXHOST and NI_MAXSERV values for buffer sizes.
3049 1.1 mrg
3050 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3051 1.1 mrg
3052 1.1 mrg * testsuite/experimental/net/internet/resolver/ops/lookup.cc:
3053 1.1 mrg Try other service if "http" fails.
3054 1.1 mrg
3055 1.1 mrg 2021-08-31 Jonathan Wakely <jwakely (a] redhat.com>
3056 1.1 mrg
3057 1.1 mrg * testsuite/17_intro/names.cc: Undefine some more names used
3058 1.1 mrg by Solaris system headers.
3059 1.1 mrg
3060 1.1 mrg 2021-08-30 Jason Merrill <jason (a] redhat.com>
3061 1.1 mrg
3062 1.1 mrg PR c++/96286
3063 1.1 mrg * testsuite/30_threads/promise/requirements/lwg3466.cc:
3064 1.1 mrg Remove dg-prune-outputs.
3065 1.1 mrg
3066 1.1 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
3067 1.1 mrg
3068 1.1 mrg * include/bits/alloc_traits.h (allocator_traits): Add explicit
3069 1.1 mrg specialization for allocator<void>. Improve doxygen comments.
3070 1.1 mrg * include/bits/allocator.h (allocator<void>): Restore for the
3071 1.1 mrg versioned namespace.
3072 1.1 mrg (allocator<void>::construct, allocator<void>::destroy): Remove.
3073 1.1 mrg * include/ext/extptr_allocator.h (_Extptr_allocator<void>):
3074 1.1 mrg Add default constructor and converting constructor.
3075 1.1 mrg
3076 1.1 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
3077 1.1 mrg
3078 1.1 mrg * include/bits/stl_uninitialized.h: Fix typo in comment.
3079 1.1 mrg
3080 1.1 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
3081 1.1 mrg
3082 1.1 mrg PR libstdc++/99876
3083 1.1 mrg * src/c++17/fs_ops.cc (fs::absolute): Call non-throwing form,
3084 1.1 mrg to avoid unnecessary current_path() call.
3085 1.1 mrg
3086 1.1 mrg 2021-08-28 Jonathan Wakely <jwakely (a] redhat.com>
3087 1.1 mrg
3088 1.1 mrg * include/bits/std_function.h (function::function(F&&)): Give
3089 1.1 mrg name to defaulted template parameter, to improve diagnostics.
3090 1.1 mrg Use markdown for more doxygen comments.
3091 1.1 mrg
3092 1.1 mrg 2021-08-26 Jonathan Wakely <jwakely (a] redhat.com>
3093 1.1 mrg
3094 1.1 mrg * include/bits/std_function.h (function): Adjust doxygen
3095 1.1 mrg comments.
3096 1.1 mrg * include/bits/unique_ptr.h (make_unique_for_overwrite):
3097 1.1 mrg Change parameter name to match doxygen comment.
3098 1.1 mrg
3099 1.1 mrg 2021-08-26 Jonathan Wakely <jwakely (a] redhat.com>
3100 1.1 mrg
3101 1.1 mrg * include/bits/std_function.h (_function_base::_Base_manager):
3102 1.1 mrg Replace _M_init_functor with a function template using a
3103 1.1 mrg forwarding reference, and a pair of _M_create function
3104 1.1 mrg templates. Reuse _M_create for the clone operation.
3105 1.1 mrg (function::_Decay_t): New alias template.
3106 1.1 mrg (function::_Callable): Simplify by using _Decay.
3107 1.1 mrg (function::function(F)): Change parameter to forwarding
3108 1.1 mrg reference, as per LWG 2447. Add noexcept-specifier. Simplify
3109 1.1 mrg constraints.
3110 1.1 mrg (function::operator=(F&&)): Add noexcept-specifier.
3111 1.1 mrg * testsuite/20_util/function/cons/lwg2774.cc: New test.
3112 1.1 mrg * testsuite/20_util/function/cons/noexcept.cc: New test.
3113 1.1 mrg
3114 1.1 mrg 2021-08-26 Jonathan Wakely <jwakely (a] redhat.com>
3115 1.1 mrg
3116 1.1 mrg * include/bits/std_function.h (function::function(F)): Add
3117 1.1 mrg static assertions to check constructibility requirements.
3118 1.1 mrg
3119 1.1 mrg 2021-08-26 Jonathan Wakely <jwakely (a] redhat.com>
3120 1.1 mrg
3121 1.1 mrg PR libstdc++/100285
3122 1.1 mrg * configure.ac: Check for O_NONBLOCK.
3123 1.1 mrg * configure: Regenerate.
3124 1.1 mrg * include/experimental/internet: Include <ws2tcpip.h> for
3125 1.1 mrg Windows. Use preprocessor conditions around more constants.
3126 1.1 mrg * include/experimental/socket: Use preprocessor conditions
3127 1.1 mrg around more constants.
3128 1.1 mrg * testsuite/experimental/net/internet/resolver/base.cc: Only use
3129 1.1 mrg constants when the corresponding C macro is defined.
3130 1.1 mrg * testsuite/experimental/net/socket/basic_socket.cc: Likewise.
3131 1.1 mrg * testsuite/experimental/net/socket/socket_base.cc: Likewise.
3132 1.1 mrg Make preprocessor checks more fine-grained.
3133 1.1 mrg
3134 1.1 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
3135 1.1 mrg
3136 1.1 mrg * testsuite/17_intro/names.cc: Check 'sz'.
3137 1.1 mrg
3138 1.1 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
3139 1.1 mrg
3140 1.1 mrg * testsuite/17_intro/names.cc: Adjust for Windows.
3141 1.1 mrg
3142 1.1 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
3143 1.1 mrg
3144 1.1 mrg * include/std/valarray: Uglify 'func' parameters.
3145 1.1 mrg * testsuite/17_intro/names.cc: Add 'func' to checks.
3146 1.1 mrg
3147 1.1 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
3148 1.1 mrg
3149 1.1 mrg PR libstdc++/102064
3150 1.1 mrg * include/bits/stl_uninitialized.h (_GLIBCXX_USE_ASSIGN_FOR_INIT):
3151 1.1 mrg Define macro to check conditions for optimizing trivial cases.
3152 1.1 mrg (__check_constructible): New function to do static assert.
3153 1.1 mrg (uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
3154 1.1 mrg Use new macro.
3155 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/1.cc:
3156 1.1 mrg Adjust dg-error pattern.
3157 1.1 mrg * testsuite/23_containers/vector/cons/89164.cc: Likewise. Add
3158 1.1 mrg C++17-specific checks from 89164_c++17.cc.
3159 1.1 mrg * testsuite/23_containers/vector/cons/89164_c++17.cc: Removed.
3160 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/102064.cc:
3161 1.1 mrg New test.
3162 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/102064.cc:
3163 1.1 mrg New test.
3164 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill/102064.cc:
3165 1.1 mrg New test.
3166 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/102064.cc:
3167 1.1 mrg New test.
3168 1.1 mrg
3169 1.1 mrg 2021-08-25 Jonathan Wakely <jwakely (a] redhat.com>
3170 1.1 mrg
3171 1.1 mrg PR libstdc++/102048
3172 1.1 mrg * include/ext/rope (rope::erase(size_type)): Remove broken
3173 1.1 mrg function.
3174 1.1 mrg
3175 1.1 mrg 2021-08-24 Jonathan Wakely <jwakely (a] redhat.com>
3176 1.1 mrg
3177 1.1 mrg * doc/xml/manual/status_cxx2020.xml: Update table.
3178 1.1 mrg * doc/html/manual/status.html: Regenerate.
3179 1.1 mrg
3180 1.1 mrg 2021-08-24 Jonathan Wakely <jwakely (a] redhat.com>
3181 1.1 mrg
3182 1.1 mrg * include/std/type_traits (is_layout_compatible): Define.
3183 1.1 mrg (is_corresponding_member): Define.
3184 1.1 mrg * include/std/version (__cpp_lib_is_layout_compatible): Define.
3185 1.1 mrg * testsuite/20_util/is_layout_compatible/is_corresponding_member.cc:
3186 1.1 mrg New test.
3187 1.1 mrg * testsuite/20_util/is_layout_compatible/value.cc: New test.
3188 1.1 mrg * testsuite/20_util/is_layout_compatible/version.cc: New test.
3189 1.1 mrg * testsuite/20_util/is_pointer_interconvertible/with_class.cc:
3190 1.1 mrg New test.
3191 1.1 mrg * testsuite/23_containers/span/layout_compat.cc: Do not use real
3192 1.1 mrg std::is_layout_compatible trait if available.
3193 1.1 mrg
3194 1.1 mrg 2021-08-24 Jonathan Wakely <jwakely (a] redhat.com>
3195 1.1 mrg
3196 1.1 mrg * src/c++11/cxx11-shim_facets.cc: Fix mismatched class-key in
3197 1.1 mrg explicit instantiation definitions.
3198 1.1 mrg
3199 1.1 mrg 2021-08-23 Jonathan Wakely <jwakely (a] redhat.com>
3200 1.1 mrg
3201 1.1 mrg * include/std/ranges (basic_istream_view): Add default template
3202 1.1 mrg argument.
3203 1.1 mrg * testsuite/std/ranges/istream_view.cc: Check it.
3204 1.1 mrg
3205 1.1 mrg 2021-08-23 Jonathan Wakely <jwakely (a] redhat.com>
3206 1.1 mrg
3207 1.1 mrg * libsupc++/dyncast.cc (__dynamic_cast): Add __builtin_expect to
3208 1.1 mrg precondition check.
3209 1.1 mrg
3210 1.1 mrg 2021-08-23 Jonathan Wakely <jwakely (a] redhat.com>
3211 1.1 mrg
3212 1.1 mrg PR libstdc++/90787
3213 1.1 mrg * testsuite/util/testsuite_fs.h (permissions_are_testable):
3214 1.1 mrg Define as inline.
3215 1.1 mrg
3216 1.1 mrg 2021-08-20 Jonathan Wakely <jwakely (a] redhat.com>
3217 1.1 mrg
3218 1.1 mrg PR libstdc++/90787
3219 1.1 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc:
3220 1.1 mrg Use new __gnu_test::permissions_are_testable() function.
3221 1.1 mrg * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
3222 1.1 mrg Likewise.
3223 1.1 mrg * testsuite/27_io/filesystem/operations/exists.cc: Likewise.
3224 1.1 mrg * testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
3225 1.1 mrg * testsuite/27_io/filesystem/operations/remove.cc: Likewise.
3226 1.1 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
3227 1.1 mrg * testsuite/27_io/filesystem/operations/status.cc: Likewise.
3228 1.1 mrg * testsuite/27_io/filesystem/operations/symlink_status.cc:
3229 1.1 mrg Likewise.
3230 1.1 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc:
3231 1.1 mrg Likewise.
3232 1.1 mrg * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
3233 1.1 mrg Likewise.
3234 1.1 mrg * testsuite/experimental/filesystem/iterators/recursive_directory_iterator.cc:
3235 1.1 mrg Likewise.
3236 1.1 mrg * testsuite/experimental/filesystem/operations/exists.cc:
3237 1.1 mrg Likewise.
3238 1.1 mrg * testsuite/experimental/filesystem/operations/is_empty.cc:
3239 1.1 mrg Likewise.
3240 1.1 mrg * testsuite/experimental/filesystem/operations/remove.cc:
3241 1.1 mrg Likewise.
3242 1.1 mrg * testsuite/experimental/filesystem/operations/remove_all.cc:
3243 1.1 mrg Likewise.
3244 1.1 mrg * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
3245 1.1 mrg Likewise.
3246 1.1 mrg * testsuite/util/testsuite_fs.h (__gnu_test::permissions_are_testable):
3247 1.1 mrg New function to guess whether testing permissions will work.
3248 1.1 mrg
3249 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3250 1.1 mrg
3251 1.1 mrg * doc/xml/manual/status_cxx2020.xml: Move row earlier in table.
3252 1.1 mrg * doc/html/manual/status.html: Regenerate.
3253 1.1 mrg
3254 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3255 1.1 mrg
3256 1.1 mrg * doc/doxygen/user.cfg.in: Update to Doxygen 1.9.2
3257 1.1 mrg
3258 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3259 1.1 mrg
3260 1.1 mrg PR libstdc++/101965
3261 1.1 mrg * include/std/charconv (__to_chars_i): Remove redundant check.
3262 1.1 mrg
3263 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3264 1.1 mrg
3265 1.1 mrg PR libstdc++/101960
3266 1.1 mrg * include/std/tuple (_Tuple_impl(_Tuple_impl&&)): Use base
3267 1.1 mrg class' move constructor. Define as defaulted for versioned
3268 1.1 mrg namespace.
3269 1.1 mrg * testsuite/20_util/tuple/cons/101960.cc: New test.
3270 1.1 mrg
3271 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3272 1.1 mrg
3273 1.1 mrg PR libstdc++/100139
3274 1.1 mrg * doc/xml/manual/status_cxx2020.xml: Add P1739R4 to status table.
3275 1.1 mrg * doc/html/manual/status.html: Regenerate.
3276 1.1 mrg
3277 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3278 1.1 mrg
3279 1.1 mrg * include/bits/shared_ptr.h: Add @since and @headerfile tags.
3280 1.1 mrg * include/bits/unique_ptr.h: Add @headerfile tags.
3281 1.1 mrg
3282 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3283 1.1 mrg
3284 1.1 mrg * src/filesystem/ops-common.h (filesystem::file_time): Improve
3285 1.1 mrg overflow check by using system_clock::duration::max().
3286 1.1 mrg
3287 1.1 mrg 2021-08-19 Jonathan Wakely <jwakely (a] redhat.com>
3288 1.1 mrg
3289 1.1 mrg * include/bits/stl_tree.h: Tweak whitespace.
3290 1.1 mrg
3291 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3292 1.1 mrg
3293 1.1 mrg * include/bits/unique_ptr.h (default_delete): Add @since tag.
3294 1.1 mrg (unique_ptr, unique_ptr<T[]>): Likewise. Improve @brief.
3295 1.1 mrg (make_unique, make_unique_for_overwrite): Likewise. Add @tparam,
3296 1.1 mrg @param, and @returns.
3297 1.1 mrg (_MakeUniq): Move to __detail namespace. Add alias template
3298 1.1 mrg helpers.
3299 1.1 mrg
3300 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3301 1.1 mrg
3302 1.1 mrg * include/bits/stl_function.h: Improve doxygen comments.
3303 1.1 mrg
3304 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3305 1.1 mrg
3306 1.1 mrg * doc/doxygen/user.cfg.in (PREDEFINED): Enable doxygen
3307 1.1 mrg processing for C++20 components and components that depend on
3308 1.1 mrg compiler features.
3309 1.1 mrg * include/bits/stl_algo.h (random_shuffle): Use @deprecated.
3310 1.1 mrg * include/std/type_traits: Improve doxygen comments for C++20
3311 1.1 mrg traits.
3312 1.1 mrg
3313 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3314 1.1 mrg
3315 1.1 mrg * include/ext/type_traits.h (__promote_2, __promote_3)
3316 1.1 mrg (__promote_4): Redfine as alias templates using __promoted_t.
3317 1.1 mrg * include/std/complex (__promote_2): Remove partial
3318 1.1 mrg specializations for std::complex.
3319 1.1 mrg
3320 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3321 1.1 mrg
3322 1.1 mrg * include/bits/stl_algo.h (min(initializer_list<T>))
3323 1.1 mrg (min(initializer_list<T>, Compare)): Call __min_element directly to
3324 1.1 mrg avoid redundant debug checks for valid ranges.
3325 1.1 mrg (max(initializer_list<T>), max(initializer_list<T>, Compare)):
3326 1.1 mrg Likewise, for __max_element.
3327 1.1 mrg (minmax(initializer_list<T>), minmax(initializer_list<T>, Compare)):
3328 1.1 mrg Likewise, for __minmax_element.
3329 1.1 mrg
3330 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3331 1.1 mrg
3332 1.1 mrg * include/debug/deque (deque(size_type, const T&, const A&)):
3333 1.1 mrg Prevent class template argument deduction and replace with a
3334 1.1 mrg deduction guide.
3335 1.1 mrg * include/debug/forward_list (forward_list(size_type, const T&, const A&)):
3336 1.1 mrg Likewise.
3337 1.1 mrg * include/debug/list (list(size_type, const T&, const A&)):
3338 1.1 mrg Likewise.
3339 1.1 mrg * include/debug/vector (vector(size_type, const T&, const A&)):
3340 1.1 mrg Likewise.
3341 1.1 mrg
3342 1.1 mrg 2021-08-18 Jonathan Wakely <jwakely (a] redhat.com>
3343 1.1 mrg
3344 1.1 mrg * python/libstdcxx/v6/printers.py (StdBitReferencePrinter): Use
3345 1.1 mrg 'std::vector<bool>::reference' as type name, not _Bit_reference.
3346 1.1 mrg (build_libstdcxx_dictionary): Register printers for vector<bool>
3347 1.1 mrg types in debug mode too.
3348 1.1 mrg * testsuite/libstdc++-prettyprinters/simple.cc: Adjust expected
3349 1.1 mrg output for invalid _Bit_reference. Use vector<bool>::reference
3350 1.1 mrg instead of _Bit_reference.
3351 1.1 mrg * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
3352 1.1 mrg
3353 1.1 mrg 2021-08-17 Thomas Schwinge <thomas (a] codesourcery.com>
3354 1.1 mrg
3355 1.1 mrg * testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose,
3356 1.1 mrg continued.
3357 1.1 mrg
3358 1.1 mrg 2021-08-17 Luc Michel <lmichel (a] kalray.eu>
3359 1.1 mrg Marc Poulhies <mpoulhies (a] kalrayinc.com>
3360 1.1 mrg
3361 1.1 mrg * testsuite/lib/gdb-test.exp (gdb_version_check)
3362 1.1 mrg (gdb_version_check_xmethods): Only check the GDB version for
3363 1.1 mrg local native targets.
3364 1.1 mrg
3365 1.1 mrg 2021-08-17 Antony Polukhin <antoshkka (a] gmail.com>
3366 1.1 mrg Jonathan Wakely <jwakely (a] redhat.com>
3367 1.1 mrg
3368 1.1 mrg * include/bits/random.tcc (seed_seq::seed_seq): Reserve capacity
3369 1.1 mrg if distance is O(1).
3370 1.1 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
3371 1.1 mrg line number.
3372 1.1 mrg
3373 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3374 1.1 mrg
3375 1.1 mrg * testsuite/26_numerics/random/seed_seq/cons/range.cc: Check
3376 1.1 mrg construction from input iterators.
3377 1.1 mrg
3378 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3379 1.1 mrg
3380 1.1 mrg * python/libstdcxx/v6/printers.py (StdErrorCatPrinter): Remove.
3381 1.1 mrg
3382 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3383 1.1 mrg
3384 1.1 mrg PR libstdc++/101923
3385 1.1 mrg * include/bits/std_function.h (function(function&&)): Check for
3386 1.1 mrg non-empty parameter before doing any work.
3387 1.1 mrg
3388 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3389 1.1 mrg
3390 1.1 mrg * include/bits/cow_string.h (basic_string::contains): Do not
3391 1.1 mrg define for -std=gnu++20.
3392 1.1 mrg
3393 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3394 1.1 mrg
3395 1.1 mrg * include/bits/ranges_util.h (__not_same_as): Rename to
3396 1.1 mrg __different_from.
3397 1.1 mrg * include/std/ranges (__not_same_as): Likewise.
3398 1.1 mrg
3399 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3400 1.1 mrg
3401 1.1 mrg * include/std/utility (exchange): Add noexcept-specifier.
3402 1.1 mrg * testsuite/20_util/exchange/noexcept.cc: New test.
3403 1.1 mrg
3404 1.1 mrg 2021-08-17 Jonathan Wakely <jwakely (a] redhat.com>
3405 1.1 mrg
3406 1.1 mrg * python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Define.
3407 1.1 mrg (build_libstdcxx_dictionary): Register printer for
3408 1.1 mrg std::error_code and std::error_condition.
3409 1.1 mrg * testsuite/libstdc++-prettyprinters/cxx11.cc: Test it.
3410 1.1 mrg
3411 1.1 mrg 2021-08-16 Jonathan Wakely <jwakely (a] redhat.com>
3412 1.1 mrg
3413 1.1 mrg PR libstdc++/101937
3414 1.1 mrg * src/c++11/debug.cc (PrintContext::_M_indent): Replace with a
3415 1.1 mrg static data member.
3416 1.1 mrg (print_word): Use qualified-id to access it.
3417 1.1 mrg
3418 1.1 mrg 2021-08-16 Jonathan Wakely <jwakely (a] redhat.com>
3419 1.1 mrg
3420 1.1 mrg * python/Makefile.am [GLIBCXX_BUILD_DEBUG] (install-data-local):
3421 1.1 mrg Install another copy of the GDB hook.
3422 1.1 mrg * python/Makefile.in: Regenerate.
3423 1.1 mrg
3424 1.1 mrg 2021-08-12 Jonathan Wakely <jwakely (a] redhat.com>
3425 1.1 mrg
3426 1.1 mrg PR libstdc++/101870
3427 1.1 mrg * include/c_global/cmath (hypot): Use __promoted_t.
3428 1.1 mrg (lerp): Add new overload accepting any arithmetic types.
3429 1.1 mrg * include/ext/type_traits.h (__promoted_t): New alias template.
3430 1.1 mrg * testsuite/26_numerics/lerp.cc: Moved to...
3431 1.1 mrg * testsuite/26_numerics/lerp/1.cc: ...here.
3432 1.1 mrg * testsuite/26_numerics/lerp/constexpr.cc: New test.
3433 1.1 mrg * testsuite/26_numerics/lerp/version.cc: New test.
3434 1.1 mrg
3435 1.1 mrg 2021-08-12 Jonathan Wakely <jwakely (a] redhat.com>
3436 1.1 mrg
3437 1.1 mrg * testsuite/26_numerics/lerp.cc: Add header name to #error.
3438 1.1 mrg * testsuite/26_numerics/midpoint/integral.cc: Likewise.
3439 1.1 mrg * testsuite/26_numerics/midpoint/version.cc: New test.
3440 1.1 mrg
3441 1.1 mrg 2021-08-12 Jonathan Wakely <jwakely (a] redhat.com>
3442 1.1 mrg
3443 1.1 mrg * include/experimental/random (experimental::randint): Add
3444 1.1 mrg nodiscard attribute.
3445 1.1 mrg
3446 1.1 mrg 2021-08-12 Jonathan Wakely <jwakely (a] redhat.com>
3447 1.1 mrg
3448 1.1 mrg * src/c++98/locale_init.cc: Require C++11.
3449 1.1 mrg * src/c++98/localename.cc: Likewise.
3450 1.1 mrg * src/c++98/misc-inst.cc: Require C++98.
3451 1.1 mrg
3452 1.1 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
3453 1.1 mrg
3454 1.1 mrg PR libstdc++/101866
3455 1.1 mrg * testsuite/experimental/random/randint.cc: Loop and retry if
3456 1.1 mrg reseed() produces the same sequence.
3457 1.1 mrg
3458 1.1 mrg 2021-08-11 Jonathan Wakely <jwakely (a] redhat.com>
3459 1.1 mrg
3460 1.1 mrg * include/std/type_traits (__cpp_lib_is_pointer_interconvertible)
3461 1.1 mrg (is_pointer_interconvertible_base_of_v)
3462 1.1 mrg (is_pointer_interconvertible_base_of): Define for C++20.
3463 1.1 mrg * include/std/version (__cpp_lib_is_pointer_interconvertible):
3464 1.1 mrg Define.
3465 1.1 mrg * testsuite/23_containers/span/layout_compat.cc: Use correct
3466 1.1 mrg feature test macro for std::is_layout_compatible_v.
3467 1.1 mrg * testsuite/20_util/is_pointer_interconvertible/value.cc: New test.
3468 1.1 mrg * testsuite/20_util/is_pointer_interconvertible/version.cc: New test.
3469 1.1 mrg
3470 1.1 mrg 2021-08-09 Jonathan Wakely <jwakely (a] redhat.com>
3471 1.1 mrg
3472 1.1 mrg * include/bits/regex.h (basic_regex::transform_primary): Use
3473 1.1 mrg _GLIBCXX_STD_C::vector for local variable.
3474 1.1 mrg * include/bits/regex.tcc (__regex_algo_impl): Use reference to
3475 1.1 mrg _GLIBCXX_STD_C::vector base class of match_results.
3476 1.1 mrg * include/bits/regex_automaton.tcc (_StateSeq:_M_clone): Use
3477 1.1 mrg _GLIBCXX_STD_C::map and _GLIBCXX_STD_C::deque for local
3478 1.1 mrg variables.
3479 1.1 mrg * include/bits/regex_compiler.h (_BracketMatcher): Use
3480 1.1 mrg _GLIBCXX_STD_C::vector for data members.
3481 1.1 mrg * include/bits/regex_executor.h (_Executor): Likewise.
3482 1.1 mrg * include/std/regex [_GLIBCXX_DEBUG]: Include <debug/vector>.
3483 1.1 mrg
3484 1.1 mrg 2021-08-09 Franois Dumont <fdumont (a] gcc.gnu.org>
3485 1.1 mrg
3486 1.1 mrg * include/debug/safe_container.h
3487 1.1 mrg (_Safe_container(_Safe_container&&, const _Alloc&, std::true_type)): New.
3488 1.1 mrg (_Safe_container(_Safe_container&&, const _Alloc&, std::false_type)): New.
3489 1.1 mrg (_Safe_container(_Safe_container&&, const _Alloc&)): Use latters.
3490 1.1 mrg
3491 1.1 mrg 2021-08-09 Jonathan Wakely <jwakely (a] redhat.com>
3492 1.1 mrg
3493 1.1 mrg * testsuite/23_containers/unordered_map/cons/default.cc: Add
3494 1.1 mrg equality comparison operators to allocator.
3495 1.1 mrg * testsuite/23_containers/unordered_set/cons/default.cc:
3496 1.1 mrg Likewise.
3497 1.1 mrg
3498 1.1 mrg 2021-08-08 Franois Dumont <fdumont (a] gcc.gnu.org>
3499 1.1 mrg
3500 1.1 mrg * testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Replace 'failed_assertion'
3501 1.1 mrg dg-prune-output reason with 'builtin_unreachable'.
3502 1.1 mrg * testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc: Likewise.
3503 1.1 mrg * testsuite/25_algorithms/equal/debug/constexpr_neg.cc: Likewise.
3504 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc: Likewise.
3505 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc: Likewise.
3506 1.1 mrg * testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc: Likewise.
3507 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc: Likewise.
3508 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc: Likewise.
3509 1.1 mrg * testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc: Likewise.
3510 1.1 mrg
3511 1.1 mrg 2021-08-08 Hans-Peter Nilsson <hp (a] bitrange.com>
3512 1.1 mrg
3513 1.1 mrg * testsuite/std/ranges/iota/max_size_type.cc: Set
3514 1.1 mrg dg-timeout-factor to 4.
3515 1.1 mrg
3516 1.1 mrg 2021-08-06 Jonathan Wakely <jwakely (a] redhat.com>
3517 1.1 mrg
3518 1.1 mrg * libsupc++/compare (compare_three_way, strong_order)
3519 1.1 mrg (weak_order, partial_order, compare_strong_order_fallback)
3520 1.1 mrg (compare_weak_order_fallback, compare_partial_order_fallback):
3521 1.1 mrg Move nodiscard attributes to correct location.
3522 1.1 mrg
3523 1.1 mrg 2021-08-05 Jonathan Wakely <jwakely (a] redhat.com>
3524 1.1 mrg
3525 1.1 mrg PR libstdc++/101782
3526 1.1 mrg * include/bits/ranges_base.h (ranges::begin, ranges::end)
3527 1.1 mrg (ranges::rbegin, ranges::rend, ranges::size, ranges::ssize)
3528 1.1 mrg (ranges::empty, ranges::data): Move attribute after the
3529 1.1 mrg declarator-id instead of at the end of the declarator.
3530 1.1 mrg * include/bits/stl_iterator.h (__gnu_cxx::__normal_iterator):
3531 1.1 mrg Move attributes back to the start of the function declarator,
3532 1.1 mrg but move the requires-clause to the end.
3533 1.1 mrg (common_iterator): Move attribute after the declarator-id.
3534 1.1 mrg * include/bits/stl_queue.h (queue): Remove ill-formed attributes
3535 1.1 mrg from friend declaration that are not definitions.
3536 1.1 mrg * include/std/ranges (views::all, views::filter)
3537 1.1 mrg (views::transform, views::take, views::take_while,
3538 1.1 mrg views::drop) (views::drop_while, views::join,
3539 1.1 mrg views::lazy_split) (views::split, views::counted,
3540 1.1 mrg views::common, views::reverse) (views::elements): Move
3541 1.1 mrg attributes after the declarator-id.
3542 1.1 mrg
3543 1.1 mrg 2021-08-05 Jonathan Wakely <jwakely (a] redhat.com>
3544 1.1 mrg
3545 1.1 mrg * libsupc++/compare (partial_ordering, weak_ordering)
3546 1.1 mrg (strong_ordering, is_eq, is_neq, is_lt, is_lteq, is_gt, is_gteq)
3547 1.1 mrg (compare_three_way, strong_order, weak_order, partial_order)
3548 1.1 mrg (compare_strong_order_fallback, compare_weak_order_fallback)
3549 1.1 mrg (compare_partial_order_fallback, __detail::__synth3way): Add
3550 1.1 mrg nodiscard attribute.
3551 1.1 mrg * testsuite/18_support/comparisons/categories/zero_neg.cc: Add
3552 1.1 mrg -Wno-unused-result to options.
3553 1.1 mrg
3554 1.1 mrg 2021-08-05 Jonathan Wakely <jwakely (a] redhat.com>
3555 1.1 mrg
3556 1.1 mrg PR libstdc++/101782
3557 1.1 mrg * include/bits/ranges_base.h (ranges::begin, ranges::end)
3558 1.1 mrg (ranges::rbegin, ranges::rend, ranges::size, ranges::ssize)
3559 1.1 mrg (ranges::empty, ranges::data): Move attribute to the end of
3560 1.1 mrg the declarator.
3561 1.1 mrg * include/bits/stl_iterator.h (__gnu_cxx::__normal_iterator)
3562 1.1 mrg (common_iterator): Likewise for non-member operator functions.
3563 1.1 mrg * include/std/ranges (views::all, views::filter)
3564 1.1 mrg (views::transform, views::take, views::take_while, views::drop)
3565 1.1 mrg (views::drop_while, views::join, views::lazy_split)
3566 1.1 mrg (views::split, views::counted, views::common, views::reverse)
3567 1.1 mrg (views::elements): Likewise.
3568 1.1 mrg * testsuite/std/ranges/access/101782.cc: New test.
3569 1.1 mrg
3570 1.1 mrg 2021-08-04 Jonathan Wakely <jwakely (a] redhat.com>
3571 1.1 mrg
3572 1.1 mrg * include/bits/forward_list.h: Add [[nodiscard]] to functions
3573 1.1 mrg with no side-effects.
3574 1.1 mrg * include/bits/stl_bvector.h: Likewise.
3575 1.1 mrg * include/bits/stl_deque.h: Likewise.
3576 1.1 mrg * include/bits/stl_list.h: Likewise.
3577 1.1 mrg * include/bits/stl_queue.h: Likewise.
3578 1.1 mrg * include/bits/stl_stack.h: Likewise.
3579 1.1 mrg * include/bits/stl_vector.h: Likewise.
3580 1.1 mrg * include/debug/deque: Likewise.
3581 1.1 mrg * include/debug/forward_list: Likewise.
3582 1.1 mrg * include/debug/list: Likewise.
3583 1.1 mrg * include/debug/safe_iterator.h: Likewise.
3584 1.1 mrg * include/debug/vector: Likewise.
3585 1.1 mrg * include/std/array: Likewise.
3586 1.1 mrg * testsuite/23_containers/array/creation/3_neg.cc: Use
3587 1.1 mrg -Wno-unused-result.
3588 1.1 mrg * testsuite/23_containers/array/debug/back1_neg.cc: Cast result
3589 1.1 mrg to void.
3590 1.1 mrg * testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
3591 1.1 mrg * testsuite/23_containers/array/debug/front1_neg.cc: Likewise.
3592 1.1 mrg * testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
3593 1.1 mrg * testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc:
3594 1.1 mrg Likewise.
3595 1.1 mrg * testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc:
3596 1.1 mrg Likewise.
3597 1.1 mrg * testsuite/23_containers/array/tuple_interface/get_neg.cc:
3598 1.1 mrg Adjust dg-error line numbers.
3599 1.1 mrg * testsuite/23_containers/deque/cons/clear_allocator.cc: Cast
3600 1.1 mrg result to void.
3601 1.1 mrg * testsuite/23_containers/deque/debug/invalidation/4.cc:
3602 1.1 mrg Likewise.
3603 1.1 mrg * testsuite/23_containers/deque/types/1.cc: Use
3604 1.1 mrg -Wno-unused-result.
3605 1.1 mrg * testsuite/23_containers/list/types/1.cc: Cast result to void.
3606 1.1 mrg * testsuite/23_containers/priority_queue/members/7161.cc:
3607 1.1 mrg Likewise.
3608 1.1 mrg * testsuite/23_containers/queue/members/7157.cc: Likewise.
3609 1.1 mrg * testsuite/23_containers/vector/59829.cc: Likewise.
3610 1.1 mrg * testsuite/23_containers/vector/ext_pointer/types/1.cc:
3611 1.1 mrg Likewise.
3612 1.1 mrg * testsuite/23_containers/vector/ext_pointer/types/2.cc:
3613 1.1 mrg Likewise.
3614 1.1 mrg * testsuite/23_containers/vector/types/1.cc: Use
3615 1.1 mrg -Wno-unused-result.
3616 1.1 mrg
3617 1.1 mrg 2021-08-04 Jonathan Wakely <jwakely (a] redhat.com>
3618 1.1 mrg
3619 1.1 mrg * include/bits/iterator_concepts.h (iter_move): Add
3620 1.1 mrg [[nodiscard]].
3621 1.1 mrg * include/bits/range_access.h (begin, end, cbegin, cend)
3622 1.1 mrg (rbegin, rend, crbegin, crend, size, data, ssize): Likewise.
3623 1.1 mrg * include/bits/ranges_base.h (ranges::begin, ranges::end)
3624 1.1 mrg (ranges::cbegin, ranges::cend, ranges::rbegin, ranges::rend)
3625 1.1 mrg (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize)
3626 1.1 mrg (ranges::empty, ranges::data, ranges::cdata): Likewise.
3627 1.1 mrg * include/bits/stl_iterator.h (reverse_iterator, __normal_iterator)
3628 1.1 mrg (back_insert_iterator, front_insert_iterator, insert_iterator)
3629 1.1 mrg (move_iterator, move_sentinel, common_iterator)
3630 1.1 mrg (counted_iterator): Likewise.
3631 1.1 mrg * include/bits/stl_iterator_base_funcs.h (distance, next, prev):
3632 1.1 mrg Likewise.
3633 1.1 mrg * include/bits/stream_iterator.h (istream_iterator)
3634 1.1 mrg (ostream_iterartor): Likewise.
3635 1.1 mrg * include/bits/streambuf_iterator.h (istreambuf_iterator)
3636 1.1 mrg (ostreambuf_iterator): Likewise.
3637 1.1 mrg * include/std/ranges (views::single, views::iota, views::all)
3638 1.1 mrg (views::filter, views::transform, views::take, views::take_while)
3639 1.1 mrg (views::drop, views::drop_while, views::join, views::lazy_split)
3640 1.1 mrg (views::split, views::counted, views::common, views::reverse)
3641 1.1 mrg (views::elements): Likewise.
3642 1.1 mrg * testsuite/20_util/rel_ops.cc: Use -Wno-unused-result.
3643 1.1 mrg * testsuite/24_iterators/move_iterator/greedy_ops.cc: Likewise.
3644 1.1 mrg * testsuite/24_iterators/normal_iterator/greedy_ops.cc:
3645 1.1 mrg Likewise.
3646 1.1 mrg * testsuite/24_iterators/reverse_iterator/2.cc: Likewise.
3647 1.1 mrg * testsuite/24_iterators/reverse_iterator/greedy_ops.cc:
3648 1.1 mrg Likewise.
3649 1.1 mrg * testsuite/21_strings/basic_string/range_access/char/1.cc:
3650 1.1 mrg Cast result to void.
3651 1.1 mrg * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
3652 1.1 mrg Likewise.
3653 1.1 mrg * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
3654 1.1 mrg Likewise.
3655 1.1 mrg * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
3656 1.1 mrg Likewise.
3657 1.1 mrg * testsuite/23_containers/array/range_access.cc: Likewise.
3658 1.1 mrg * testsuite/23_containers/deque/range_access.cc: Likewise.
3659 1.1 mrg * testsuite/23_containers/forward_list/range_access.cc:
3660 1.1 mrg Likewise.
3661 1.1 mrg * testsuite/23_containers/list/range_access.cc: Likewise.
3662 1.1 mrg * testsuite/23_containers/map/range_access.cc: Likewise.
3663 1.1 mrg * testsuite/23_containers/multimap/range_access.cc: Likewise.
3664 1.1 mrg * testsuite/23_containers/multiset/range_access.cc: Likewise.
3665 1.1 mrg * testsuite/23_containers/set/range_access.cc: Likewise.
3666 1.1 mrg * testsuite/23_containers/unordered_map/range_access.cc:
3667 1.1 mrg Likewise.
3668 1.1 mrg * testsuite/23_containers/unordered_multimap/range_access.cc:
3669 1.1 mrg Likewise.
3670 1.1 mrg * testsuite/23_containers/unordered_multiset/range_access.cc:
3671 1.1 mrg Likewise.
3672 1.1 mrg * testsuite/23_containers/unordered_set/range_access.cc:
3673 1.1 mrg Likewise.
3674 1.1 mrg * testsuite/23_containers/vector/range_access.cc: Likewise.
3675 1.1 mrg * testsuite/24_iterators/customization_points/iter_move.cc:
3676 1.1 mrg Likewise.
3677 1.1 mrg * testsuite/24_iterators/istream_iterator/sentinel.cc:
3678 1.1 mrg Likewise.
3679 1.1 mrg * testsuite/24_iterators/istreambuf_iterator/sentinel.cc:
3680 1.1 mrg Likewise.
3681 1.1 mrg * testsuite/24_iterators/move_iterator/dr2061.cc: Likewise.
3682 1.1 mrg * testsuite/24_iterators/operations/prev_neg.cc: Likewise.
3683 1.1 mrg * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise.
3684 1.1 mrg * testsuite/24_iterators/range_access/range_access.cc:
3685 1.1 mrg Likewise.
3686 1.1 mrg * testsuite/24_iterators/range_operations/100768.cc: Likewise.
3687 1.1 mrg * testsuite/26_numerics/valarray/range_access2.cc: Likewise.
3688 1.1 mrg * testsuite/28_regex/range_access.cc: Likewise.
3689 1.1 mrg * testsuite/experimental/string_view/range_access/char/1.cc:
3690 1.1 mrg Likewise.
3691 1.1 mrg * testsuite/experimental/string_view/range_access/wchar_t/1.cc:
3692 1.1 mrg Likewise.
3693 1.1 mrg * testsuite/ext/vstring/range_access.cc: Likewise.
3694 1.1 mrg * testsuite/std/ranges/adaptors/take.cc: Likewise.
3695 1.1 mrg * testsuite/std/ranges/p2259.cc: Likewise.
3696 1.1 mrg
3697 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3698 1.1 mrg
3699 1.1 mrg * include/bits/random.tcc (linear_congruential_engine): Do not
3700 1.1 mrg define static constexpr members when they are implicitly inline.
3701 1.1 mrg * include/std/ratio (ratio, __ratio_multiply, __ratio_divide)
3702 1.1 mrg (__ratio_add, __ratio_subtract): Likewise.
3703 1.1 mrg * include/std/type_traits (integral_constant): Likewise.
3704 1.1 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
3705 1.1 mrg line number.
3706 1.1 mrg
3707 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3708 1.1 mrg
3709 1.1 mrg * testsuite/util/testsuite_common_types.h: Replace uses of
3710 1.1 mrg tr1::unordered_map and tr1::unordered_set with their C++11
3711 1.1 mrg equivalents.
3712 1.1 mrg * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust
3713 1.1 mrg dg-error line number.
3714 1.1 mrg * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
3715 1.1 mrg * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
3716 1.1 mrg Likewise.
3717 1.1 mrg * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc:
3718 1.1 mrg Likewise.
3719 1.1 mrg * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
3720 1.1 mrg Likewise.
3721 1.1 mrg * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
3722 1.1 mrg Likewise.
3723 1.1 mrg * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
3724 1.1 mrg Likewise.
3725 1.1 mrg
3726 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3727 1.1 mrg
3728 1.1 mrg * include/std/memory_resource (polymorphic_allocator::delete_object):
3729 1.1 mrg Call destructor directly instead of using destroy.
3730 1.1 mrg (allocator_traits<polymorphic_allocator<T>>): Define partial
3731 1.1 mrg specialization.
3732 1.1 mrg
3733 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3734 1.1 mrg
3735 1.1 mrg * testsuite/20_util/function_objects/binders/3113.cc: Remove
3736 1.1 mrg trailing whitespace.
3737 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
3738 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
3739 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc:
3740 1.1 mrg Likewise.
3741 1.1 mrg * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
3742 1.1 mrg * testsuite/25_algorithms/headers/algorithm/synopsis.cc:
3743 1.1 mrg Likewise.
3744 1.1 mrg * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/2.cc:
3745 1.1 mrg Likewise.
3746 1.1 mrg * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/pod.cc:
3747 1.1 mrg Likewise.
3748 1.1 mrg
3749 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3750 1.1 mrg
3751 1.1 mrg * doc/xml/manual/evolution.xml: Document deprecation.
3752 1.1 mrg * doc/html/*: Regenerate.
3753 1.1 mrg * include/bits/c++config (_GLIBCXX14_DEPRECATED): Define.
3754 1.1 mrg (_GLIBCXX14_DEPRECATED_SUGGEST): Define.
3755 1.1 mrg * include/bits/stl_algo.h (random_shuffle): Deprecate for C++14
3756 1.1 mrg and later.
3757 1.1 mrg * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adjust
3758 1.1 mrg for C++11 and C++14 changes to std::random_shuffle and
3759 1.1 mrg std::shuffle.
3760 1.1 mrg * testsuite/25_algorithms/random_shuffle/1.cc: Add options to
3761 1.1 mrg use deprecated algorithms.
3762 1.1 mrg * testsuite/25_algorithms/random_shuffle/59603.cc: Likewise.
3763 1.1 mrg * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise.
3764 1.1 mrg * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/2.cc:
3765 1.1 mrg Likewise.
3766 1.1 mrg * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/pod.cc:
3767 1.1 mrg Likewise.
3768 1.1 mrg
3769 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3770 1.1 mrg
3771 1.1 mrg * testsuite/23_containers/forward_list/operations/3.cc:
3772 1.1 mrg Use lambda instead of std::bind2nd.
3773 1.1 mrg * testsuite/20_util/function_objects/binders/3113.cc: Add
3774 1.1 mrg options for testing deprecated features.
3775 1.1 mrg * testsuite/20_util/pair/cons/99957.cc: Likewise.
3776 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
3777 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
3778 1.1 mrg * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc:
3779 1.1 mrg Likewise.
3780 1.1 mrg * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
3781 1.1 mrg * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
3782 1.1 mrg * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
3783 1.1 mrg * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise.
3784 1.1 mrg * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise.
3785 1.1 mrg * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
3786 1.1 mrg * testsuite/ext/pb_ds/example/priority_queue_erase_if.cc:
3787 1.1 mrg Likewise.
3788 1.1 mrg * testsuite/ext/pb_ds/example/priority_queue_split_join.cc:
3789 1.1 mrg Likewise.
3790 1.1 mrg * testsuite/lib/dg-options.exp (dg_add_options_using-deprecated):
3791 1.1 mrg New proc.
3792 1.1 mrg
3793 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3794 1.1 mrg
3795 1.1 mrg * include/bits/regex_executor.h (_State_info): Replace
3796 1.1 mrg unique_ptr<bool[]> with array of bool.
3797 1.1 mrg * include/bits/regex_executor.tcc: Likewise.
3798 1.1 mrg * include/bits/regex_scanner.tcc: Replace std::strchr with
3799 1.1 mrg __builtin_strchr.
3800 1.1 mrg * include/std/regex: Replace standard headers with smaller
3801 1.1 mrg internal ones.
3802 1.1 mrg * testsuite/28_regex/traits/char/lookup_classname.cc: Include
3803 1.1 mrg <string.h> for strlen.
3804 1.1 mrg * testsuite/28_regex/traits/char/lookup_collatename.cc:
3805 1.1 mrg Likewise.
3806 1.1 mrg
3807 1.1 mrg 2021-08-03 Jonathan Wakely <jwakely (a] redhat.com>
3808 1.1 mrg
3809 1.1 mrg * include/bits/locale_conv.h (__detail::_Scoped_ptr): Define new
3810 1.1 mrg RAII class template.
3811 1.1 mrg (wstring_convert, wbuffer_convert): Use __detail::_Scoped_ptr
3812 1.1 mrg instead of unique_ptr.
3813 1.1 mrg
3814 1.1 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
3815 1.1 mrg
3816 1.1 mrg PR libstdc++/101599
3817 1.1 mrg * include/bits/ranges_algo.h (__reverse_copy_fn::operator()):
3818 1.1 mrg Add missing std::move in return statement.
3819 1.1 mrg (__partition_copy_fn::operator()): Rename templtae parameter
3820 1.1 mrg _O2 to _Out2. Uglify function parameters out_true and out_false.
3821 1.1 mrg * include/bits/ranges_algobase.h (__copy_or_move): Add missing
3822 1.1 mrg std::move to recursive call that unwraps a __normal_iterator
3823 1.1 mrg output iterator.
3824 1.1 mrg * testsuite/25_algorithms/copy/constrained.cc (test06): New test.
3825 1.1 mrg * testsuite/25_algorithms/move/constrained.cc (test05): New test.
3826 1.1 mrg
3827 1.1 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
3828 1.1 mrg
3829 1.1 mrg PR libstdc++/101589
3830 1.1 mrg * include/std/ranges (lazy_split_view::_InnerIter::base): Make
3831 1.1 mrg the const& overload unconstrained and return a const reference
3832 1.1 mrg as per LWG 3533. Make unconditionally noexcept.
3833 1.1 mrg (elements_view::base): Revert accidental r12-569 change.
3834 1.1 mrg (elements_view::_Iterator::base): Make the const& overload
3835 1.1 mrg unconstrained and return a const reference as per LWG 3533.
3836 1.1 mrg Make unconditionally noexcept.
3837 1.1 mrg
3838 1.1 mrg 2021-08-02 Patrick Palka <ppalka (a] redhat.com>
3839 1.1 mrg
3840 1.1 mrg PR libstdc++/101483
3841 1.1 mrg * include/std/ranges (join_view::_Iterator::_Iterator): Add
3842 1.1 mrg missing std::move.
3843 1.1 mrg
3844 1.1 mrg 2021-08-02 Jonathan Wakely <jwakely (a] redhat.com>
3845 1.1 mrg
3846 1.1 mrg PR libstdc++/101709
3847 1.1 mrg * src/filesystem/ops-common.h (get_temp_directory_from_env):
3848 1.1 mrg Add error_code parameter.
3849 1.1 mrg * src/c++17/fs_ops.cc (fs::temp_directory_path): Pass error_code
3850 1.1 mrg argument to get_temp_directory_from_env and check it.
3851 1.1 mrg * src/filesystem/ops.cc (fs::temp_directory_path): Likewise.
3852 1.1 mrg
3853 1.1 mrg 2021-08-02 Jonathan Wakely <jwakely (a] redhat.com>
3854 1.1 mrg
3855 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded2.cc:
3856 1.1 mrg Add dg-error for c++11_only target.
3857 1.1 mrg
3858 1.1 mrg 2021-07-30 Jonathan Wakely <jwakely (a] redhat.com>
3859 1.1 mrg
3860 1.1 mrg PR libstdc++/65018
3861 1.1 mrg * configure.ac: Check for secure_getenv.
3862 1.1 mrg * config.h.in: Regenerate.
3863 1.1 mrg * configure: Regenerate.
3864 1.1 mrg * src/filesystem/ops-common.h (get_temp_directory_from_env): New
3865 1.1 mrg helper function to obtain path from the environment.
3866 1.1 mrg * src/c++17/fs_ops.cc (fs::temp_directory_path): Use new helper.
3867 1.1 mrg * src/filesystem/ops.cc (fs::temp_directory_path): Likewise.
3868 1.1 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc:
3869 1.1 mrg Print messages if test cannot be run.
3870 1.1 mrg * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
3871 1.1 mrg Likewise. Fix incorrect condition. Use "TMP" to work with
3872 1.1 mrg Windows as well as POSIX.
3873 1.1 mrg
3874 1.1 mrg 2021-07-29 Hans-Peter Nilsson <hp (a] bitrange.com>
3875 1.1 mrg
3876 1.1 mrg * src/c++17/memory_resource.cc: Use __exchange instead
3877 1.1 mrg of std::exchange.
3878 1.1 mrg
3879 1.1 mrg 2021-07-27 Jonathan Wakely <jwakely (a] redhat.com>
3880 1.1 mrg
3881 1.1 mrg * include/experimental/optional (__throw_bad_optional_access):
3882 1.1 mrg Replace GNU attribute with C++11 attribute.
3883 1.1 mrg (optional::value, optional::value_or): Use if statements
3884 1.1 mrg instead of conditional expressions.
3885 1.1 mrg * include/std/optional (__throw_bad_optional_access)
3886 1.1 mrg (optional::value, optional::value_or): Likewise.
3887 1.1 mrg
3888 1.1 mrg 2021-07-27 Marek Polacek <polacek (a] redhat.com>
3889 1.1 mrg
3890 1.1 mrg DR 1512
3891 1.1 mrg PR c++/99701
3892 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded.cc:
3893 1.1 mrg Move a line...
3894 1.1 mrg * testsuite/20_util/tuple/comparison_operators/overloaded2.cc:
3895 1.1 mrg ...here. New test.
3896 1.1 mrg
3897 1.1 mrg 2021-07-27 Jonathan Wakely <jwakely (a] redhat.com>
3898 1.1 mrg
3899 1.1 mrg * include/bits/cow_string.h: Consistently use tab for
3900 1.1 mrg indentation.
3901 1.1 mrg
3902 1.1 mrg 2021-07-27 Jonathan Wakely <jwakely (a] redhat.com>
3903 1.1 mrg
3904 1.1 mrg * include/Makefile.am: Add new header.
3905 1.1 mrg * include/Makefile.in: Regenerate.
3906 1.1 mrg * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
3907 1.1 mrg (basic_string): Move definition of Copy-on-Write string to
3908 1.1 mrg new file.
3909 1.1 mrg * include/bits/basic_string.tcc: Likewise.
3910 1.1 mrg * include/bits/cow_string.h: New file.
3911 1.1 mrg
3912 1.1 mrg 2021-07-27 Jonathan Wakely <jwakely (a] redhat.com>
3913 1.1 mrg
3914 1.1 mrg * include/std/algorithm: Do not include <utility>.
3915 1.1 mrg * include/std/functional: Likewise.
3916 1.1 mrg * include/std/regex: Include <bits/stl_pair.h> instead of
3917 1.1 mrg <utility>.
3918 1.1 mrg * include/debug/map.h: Likewise.
3919 1.1 mrg * include/debug/multimap.h: Likewise.
3920 1.1 mrg * include/debug/multiset.h: Likewise.
3921 1.1 mrg * include/debug/set.h: Likewise.
3922 1.1 mrg * include/debug/vector: Likewise.
3923 1.1 mrg * include/bits/fs_path.h: Likewise.
3924 1.1 mrg * include/bits/unique_ptr.h: Do not include <utility>.
3925 1.1 mrg * include/experimental/any: Likewise.
3926 1.1 mrg * include/experimental/executor: Likewise.
3927 1.1 mrg * include/experimental/memory: Likewise.
3928 1.1 mrg * include/experimental/optional: Likewise.
3929 1.1 mrg * include/experimental/socket: Use __exchange instead
3930 1.1 mrg of std::exchange.
3931 1.1 mrg * src/filesystem/ops-common.h: Likewise.
3932 1.1 mrg * testsuite/20_util/default_delete/48631_neg.cc: Adjust expected
3933 1.1 mrg errors to not use a hardcoded line number.
3934 1.1 mrg * testsuite/20_util/default_delete/void_neg.cc: Likewise.
3935 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc:
3936 1.1 mrg Include <utility> for std::as_const.
3937 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constrained.cc:
3938 1.1 mrg Likewise.
3939 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc:
3940 1.1 mrg Likewise.
3941 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constrained.cc:
3942 1.1 mrg Likewise.
3943 1.1 mrg * testsuite/23_containers/vector/cons/destructible_debug_neg.cc:
3944 1.1 mrg Adjust dg-error line number.
3945 1.1 mrg
3946 1.1 mrg 2021-07-27 Jonathan Wakely <jwakely (a] redhat.com>
3947 1.1 mrg
3948 1.1 mrg * include/Makefile.am: Add bits/utility.h header.
3949 1.1 mrg * include/Makefile.in: Regenerate.
3950 1.1 mrg * include/bits/utility.h: New file.
3951 1.1 mrg * include/std/utility (tuple_size, tuple_element): Move
3952 1.1 mrg to new header.
3953 1.1 mrg * include/std/type_traits (__is_tuple_like_impl<tuple<T...>>):
3954 1.1 mrg Move to <tuple>.
3955 1.1 mrg (_Index_tuple, _Build_index_tuple, integer_sequence): Likewise.
3956 1.1 mrg (in_place_t, in_place_index_t, in_place_type_t): Likewise.
3957 1.1 mrg * include/bits/ranges_util.h: Include new header instead of
3958 1.1 mrg <utility>.
3959 1.1 mrg * include/bits/stl_pair.h (tuple_size, tuple_element): Move
3960 1.1 mrg partial specializations for std::pair here.
3961 1.1 mrg (get): Move overloads for std::pair here.
3962 1.1 mrg * include/std/any: Include new header instead of <utility>.
3963 1.1 mrg * include/std/array: Likewise.
3964 1.1 mrg * include/std/memory_resource: Likewise.
3965 1.1 mrg * include/std/optional: Likewise.
3966 1.1 mrg * include/std/variant: Likewise.
3967 1.1 mrg * include/std/tuple: Likewise.
3968 1.1 mrg (__is_tuple_like_impl<tuple<T...>>): Move here.
3969 1.1 mrg (get) Declare overloads for std::array.
3970 1.1 mrg * include/std/version (__cpp_lib_tuples_by_type): Change type
3971 1.1 mrg to long.
3972 1.1 mrg * testsuite/20_util/optional/84601.cc: Include <utility>.
3973 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill/constrained.cc:
3974 1.1 mrg Likewise.
3975 1.1 mrg * testsuite/23_containers/array/tuple_interface/get_neg.cc:
3976 1.1 mrg Adjust dg-error line numbers.
3977 1.1 mrg * testsuite/std/ranges/access/cbegin.cc: Include <utility>.
3978 1.1 mrg * testsuite/std/ranges/access/cend.cc: Likewise.
3979 1.1 mrg * testsuite/std/ranges/access/end.cc: Likewise.
3980 1.1 mrg * testsuite/std/ranges/single_view.cc: Likewise.
3981 1.1 mrg
3982 1.1 mrg 2021-07-23 Jonathan Wakely <jwakely (a] redhat.com>
3983 1.1 mrg
3984 1.1 mrg * include/std/future: Include <bits/atomic_base.h> instead of
3985 1.1 mrg <atomic>.
3986 1.1 mrg
3987 1.1 mrg 2021-07-23 Jonathan Wakely <jwakely (a] redhat.com>
3988 1.1 mrg
3989 1.1 mrg * include/bits/stl_relops.h: Update documentation comments.
3990 1.1 mrg
3991 1.1 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
3992 1.1 mrg
3993 1.1 mrg PR libstdc++/101583
3994 1.1 mrg * include/bits/hashtable.h (_Hashtable): Replace mixin with
3995 1.1 mrg _Enable_default_ctor. Construct it explicitly in all
3996 1.1 mrg non-forwarding, non-defaulted constructors.
3997 1.1 mrg * testsuite/23_containers/unordered_map/cons/default.cc: Check
3998 1.1 mrg non-default constructors can be used.
3999 1.1 mrg * testsuite/23_containers/unordered_set/cons/default.cc:
4000 1.1 mrg Likewise.
4001 1.1 mrg
4002 1.1 mrg 2021-07-22 David Edelsohn <dje.gcc (a] gmail.com>
4003 1.1 mrg
4004 1.1 mrg * config/os/aix/os_defines.h (__LIBC_NO_CPP_MATH_OVERLOADS__): Define.
4005 1.1 mrg
4006 1.1 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
4007 1.1 mrg
4008 1.1 mrg PR libstdc++/94295
4009 1.1 mrg * include/ext/new_allocator.h (_GLIBCXX_OPERATOR_NEW)
4010 1.1 mrg (_GLIBCXX_OPERATOR_DELETE, _GLIBCXX_SIZED_DEALLOC): Define.
4011 1.1 mrg (allocator::allocate, allocator::deallocate): Use new macros.
4012 1.1 mrg
4013 1.1 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
4014 1.1 mrg
4015 1.1 mrg PR libstdc++/101571
4016 1.1 mrg * include/bits/ranges_uninitialized.h (_DestroyGuard): Change
4017 1.1 mrg constructor parameter to reference and use addressof.
4018 1.1 mrg * testsuite/util/testsuite_iterators.h: Define deleted operator&
4019 1.1 mrg overloads for test iterators.
4020 1.1 mrg
4021 1.1 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
4022 1.1 mrg
4023 1.1 mrg * include/bits/std_function.h (_Function_base): Add
4024 1.1 mrg default member initializers and define constructor as defaulted.
4025 1.1 mrg (function::_M_invoker): Add default member initializer.
4026 1.1 mrg
4027 1.1 mrg 2021-07-22 Jonathan Wakely <jwakely (a] redhat.com>
4028 1.1 mrg
4029 1.1 mrg PR libstdc++/100682
4030 1.1 mrg * doc/xml/manual/debug_mode.xml: Update documentation about
4031 1.1 mrg debug capability of std::array.
4032 1.1 mrg * doc/html/*: Regenerate.
4033 1.1 mrg * include/debug/array: New file.
4034 1.1 mrg
4035 1.1 mrg 2021-07-21 Jonathan Wakely <jwakely (a] redhat.com>
4036 1.1 mrg
4037 1.1 mrg PR libstdc++/101542
4038 1.1 mrg * include/ext/rope (sequence_buffer): Add move constructor and
4039 1.1 mrg move assignment operator.
4040 1.1 mrg * testsuite/ext/rope/101542.cc: New test.
4041 1.1 mrg
4042 1.1 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
4043 1.1 mrg
4044 1.1 mrg PR libstdc++/101510
4045 1.1 mrg * src/c++17/fs_ops.cc (fs::create_directories): Use status
4046 1.1 mrg instead of symlink_status.
4047 1.1 mrg * src/filesystem/ops.cc (fs::create_directories): Likewise.
4048 1.1 mrg * testsuite/27_io/filesystem/operations/create_directories.cc:
4049 1.1 mrg Check symlink to existing directory.
4050 1.1 mrg * testsuite/27_io/filesystem/operations/create_directory.cc: Do
4051 1.1 mrg not test with symlinks on Windows.
4052 1.1 mrg * testsuite/experimental/filesystem/operations/create_directories.cc:
4053 1.1 mrg Check symlink to existing directory.
4054 1.1 mrg * testsuite/experimental/filesystem/operations/create_directory.cc:
4055 1.1 mrg Do not test with symlinks on Windows.
4056 1.1 mrg
4057 1.1 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
4058 1.1 mrg
4059 1.1 mrg PR libstdc++/100863
4060 1.1 mrg * include/bits/hashtable.h (_Hashtable): Conditionally delete
4061 1.1 mrg default constructor by deriving from _Enable_special_members.
4062 1.1 mrg * testsuite/23_containers/unordered_map/cons/default.cc: New test.
4063 1.1 mrg * testsuite/23_containers/unordered_set/cons/default.cc: New test.
4064 1.1 mrg
4065 1.1 mrg 2021-07-20 Jonathan Wakely <jwakely (a] redhat.com>
4066 1.1 mrg
4067 1.1 mrg PR libstdc++/101510
4068 1.1 mrg * src/c++17/fs_ops.cc (create_dir): Adjust whitespace.
4069 1.1 mrg * testsuite/27_io/filesystem/operations/create_directory.cc:
4070 1.1 mrg Test creating directory with name of existing symlink to
4071 1.1 mrg directory.
4072 1.1 mrg * testsuite/experimental/filesystem/operations/create_directory.cc:
4073 1.1 mrg Likewise.
4074 1.1 mrg
4075 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4076 1.1 mrg
4077 1.1 mrg * include/std/tuple (get<I>): Add deleted overload for bad
4078 1.1 mrg index.
4079 1.1 mrg * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust
4080 1.1 mrg expected errors.
4081 1.1 mrg
4082 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4083 1.1 mrg
4084 1.1 mrg * include/bits/max_size_type.h (numeric_limits<__max_size_type>):
4085 1.1 mrg Use __int_traits unconditionally.
4086 1.1 mrg
4087 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4088 1.1 mrg
4089 1.1 mrg * include/bits/random.h (_Shift::__value): Use constexpr.
4090 1.1 mrg (_Select_uint_least_t::type): Use using-declaration.
4091 1.1 mrg (_Mod): Likewise.
4092 1.1 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
4093 1.1 mrg line number.
4094 1.1 mrg
4095 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4096 1.1 mrg
4097 1.1 mrg * include/bits/cpp_type_traits.h (__INT_N): Use __extension__
4098 1.1 mrg instead of diagnostic pragmas.
4099 1.1 mrg * include/bits/functional_hash.h: Likewise.
4100 1.1 mrg * include/bits/iterator_concepts.h (__is_signed_int128)
4101 1.1 mrg (__is_unsigned_int128): Likewise.
4102 1.1 mrg * include/bits/max_size_type.h (__max_size_type): Likewise.
4103 1.1 mrg (numeric_limits<__max_size_type>): Likewise.
4104 1.1 mrg * include/bits/std_abs.h (abs): Likewise.
4105 1.1 mrg * include/bits/stl_algobase.h (__size_to_integer): Likewise.
4106 1.1 mrg * include/bits/uniform_int_dist.h (uniform_int_distribution):
4107 1.1 mrg Likewise.
4108 1.1 mrg * include/ext/numeric_traits.h (_GLIBCXX_INT_N_TRAITS):
4109 1.1 mrg Likewise.
4110 1.1 mrg * include/std/type_traits (__is_integral_helper<INT_N>)
4111 1.1 mrg (__is_signed_integer, __is_unsigned_integer)
4112 1.1 mrg (__make_unsigned<INT_N>, __make_signed<INT_N>): Likewise.
4113 1.1 mrg * include/std/limits (__INT_N): Add __extension__ keyword.
4114 1.1 mrg * include/bits/random.h (_Select_uint_least_t)
4115 1.1 mrg (random_device): Likewise.
4116 1.1 mrg
4117 1.1 mrg 2021-07-16 Patrick Palka <ppalka (a] redhat.com>
4118 1.1 mrg
4119 1.1 mrg PR libstdc++/101231
4120 1.1 mrg * include/std/ranges (_CachedPosition::_M_get): For non-forward
4121 1.1 mrg ranges, just call __builtin_unreachable.
4122 1.1 mrg * testsuite/std/ranges/istream_view.cc (test05): New test.
4123 1.1 mrg
4124 1.1 mrg 2021-07-16 Patrick Palka <ppalka (a] redhat.com>
4125 1.1 mrg
4126 1.1 mrg PR libstdc++/101214
4127 1.1 mrg * include/std/ranges (split_view::split_view): Use std::move.
4128 1.1 mrg (split_view::_Iterator::_Iterator): Remove redundant
4129 1.1 mrg default_initializable constraint.
4130 1.1 mrg (split_view::_Sentinel::_Sentinel): Declare.
4131 1.1 mrg * testsuite/std/ranges/adaptors/split.cc (test02): New test.
4132 1.1 mrg
4133 1.1 mrg 2021-07-16 Marek Polacek <polacek (a] redhat.com>
4134 1.1 mrg
4135 1.1 mrg * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Add
4136 1.1 mrg dg-error.
4137 1.1 mrg
4138 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4139 1.1 mrg
4140 1.1 mrg * include/bits/unique_ptr.h: Adjust doxygen markup.
4141 1.1 mrg
4142 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4143 1.1 mrg
4144 1.1 mrg PR libstdc++/101307
4145 1.1 mrg * include/std/type_traits: Adjust doxygen markup.
4146 1.1 mrg
4147 1.1 mrg 2021-07-16 Jonathan Wakely <jwakely (a] redhat.com>
4148 1.1 mrg
4149 1.1 mrg * include/bits/cpp_type_traits.h: Add diagnostic pragmas around
4150 1.1 mrg uses of non-standard integer types.
4151 1.1 mrg * include/bits/functional_hash.h: Likewise.
4152 1.1 mrg * include/bits/iterator_concepts.h: Likewise.
4153 1.1 mrg * include/bits/max_size_type.h: Likewise.
4154 1.1 mrg * include/bits/std_abs.h: Likewise.
4155 1.1 mrg * include/bits/stl_algobase.h: Likewise.
4156 1.1 mrg * include/bits/uniform_int_dist.h: Likewise.
4157 1.1 mrg * include/ext/numeric_traits.h: Likewise.
4158 1.1 mrg * include/std/type_traits: Likewise.
4159 1.1 mrg
4160 1.1 mrg 2021-07-15 Jonathan Wakely <jwakely (a] redhat.com>
4161 1.1 mrg
4162 1.1 mrg PR libstdc++/101427
4163 1.1 mrg * include/std/tuple (tuple_element): Improve static_assert text.
4164 1.1 mrg (__get_helper): Add deleted overload.
4165 1.1 mrg (get<i>(tuple<T...>&&), get<i>(const tuple<T...>&&)): Use
4166 1.1 mrg __get_helper directly.
4167 1.1 mrg (__get_helper2): Remove.
4168 1.1 mrg (__find_uniq_type_in_pack): New constexpr helper function.
4169 1.1 mrg (get<T>): Use __find_uniq_type_in_pack and __get_helper instead
4170 1.1 mrg of __get_helper2.
4171 1.1 mrg * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust
4172 1.1 mrg expected errors.
4173 1.1 mrg * testsuite/20_util/tuple/element_access/101427.cc: New test.
4174 1.1 mrg
4175 1.1 mrg 2021-07-15 Jonathan Wakely <jwakely (a] redhat.com>
4176 1.1 mrg
4177 1.1 mrg PR libstdc++/101429
4178 1.1 mrg * include/bits/c++config (__replacement_assert): Add noexcept.
4179 1.1 mrg [!_GLIBCXX_VERBOSE] (__glibcxx_assert_impl): Use __builtin_abort
4180 1.1 mrg instead of __replacement_assert.
4181 1.1 mrg
4182 1.1 mrg 2021-07-14 Jonathan Wakely <jwakely (a] redhat.com>
4183 1.1 mrg
4184 1.1 mrg * include/std/string_view (basic_string_view(It, End)): Add
4185 1.1 mrg noexcept-specifier.
4186 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/range.cc:
4187 1.1 mrg Check noexcept-specifier. Also check construction without CTAD.
4188 1.1 mrg
4189 1.1 mrg 2021-07-13 Jonathan Wakely <jwakely (a] redhat.com>
4190 1.1 mrg
4191 1.1 mrg PR c++/101361
4192 1.1 mrg * include/std/string_view (ends_with): Use traits_type::compare
4193 1.1 mrg directly.
4194 1.1 mrg
4195 1.1 mrg 2021-07-13 Jonathan Wakely <jwakely (a] redhat.com>
4196 1.1 mrg
4197 1.1 mrg * include/std/string_view: Only include <bits/ranges_base.h>
4198 1.1 mrg once, and only for C++20 and later.
4199 1.1 mrg
4200 1.1 mrg 2021-07-12 Jonathan Wakely <jwakely (a] redhat.com>
4201 1.1 mrg
4202 1.1 mrg PR libstdc++/101411
4203 1.1 mrg * include/std/span (as_writable_bytes): Add requires-clause.
4204 1.1 mrg * testsuite/23_containers/span/101411.cc: New test.
4205 1.1 mrg
4206 1.1 mrg 2021-07-09 Matheus Castanho <msc (a] linux.ibm.com>
4207 1.1 mrg
4208 1.1 mrg * include/std/mutex (__lock_impl): Check
4209 1.1 mrg _GLIBCXX_HAS_GTHREADS before using __gthread_yield.
4210 1.1 mrg
4211 1.1 mrg 2021-07-02 Jonathan Wakely <jwakely (a] redhat.com>
4212 1.1 mrg
4213 1.1 mrg PR libstdc++/101271
4214 1.1 mrg * include/bits/unique_ptr.h (unique_ptr<T[],D>::operator[]):
4215 1.1 mrg Remove noexcept-specifier.
4216 1.1 mrg (unique_ptr<T[],D>::_S_nothrow_deref): Remove.
4217 1.1 mrg * testsuite/20_util/unique_ptr/lwg2762.cc: Remove checks for
4218 1.1 mrg operator[].
4219 1.1 mrg
4220 1.1 mrg 2021-07-01 Jonathan Wakely <jwakely (a] redhat.com>
4221 1.1 mrg
4222 1.1 mrg * doc/doxygen/doxygroups.cc: Fix docs for std::literals.
4223 1.1 mrg * doc/doxygen/user.cfg.in: Exclude the Networking TS header.
4224 1.1 mrg Add some more predefined macros.
4225 1.1 mrg * include/bits/fs_fwd.h: Move @addtogroup commands inside
4226 1.1 mrg namespaces. Add better documentation.
4227 1.1 mrg * include/bits/fs_path.h: Likewise.
4228 1.1 mrg * include/experimental/bits/fs_fwd.h: Likewise.
4229 1.1 mrg * include/experimental/bits/fs_path.h: Likewise.
4230 1.1 mrg * include/ext/throw_allocator.h: Fix typo and improve docs.
4231 1.1 mrg * include/std/chrono: Move @addtogroup commands.
4232 1.1 mrg * include/std/system_error: Move @addtogroup commands.
4233 1.1 mrg * libsupc++/exception: Improve documentation.
4234 1.1 mrg * libsupc++/exception.h: Add @since documentation.
4235 1.1 mrg
4236 1.1 mrg 2021-06-30 Jonathan Wakely <jwakely (a] redhat.com>
4237 1.1 mrg
4238 1.1 mrg PR libstdc++/101258
4239 1.1 mrg * doc/doxygen/user.cfg.in (INPUT): Add <experimental/simd>.
4240 1.1 mrg (COLS_IN_ALPHA_INDEX): Remove obsolete tag.
4241 1.1 mrg (PREDEFINED): Add/fix some more macros that need to be expanded.
4242 1.1 mrg * include/bits/random.h: Stop Doxygen from documenting internal
4243 1.1 mrg implementation details.
4244 1.1 mrg * include/bits/random.tcc: Likewise.
4245 1.1 mrg * include/bits/this_thread_sleep.h: Fix @file name.
4246 1.1 mrg * include/experimental/bits/simd.h: Add to Doxygen group. Do not
4247 1.1 mrg document internal implementation details.
4248 1.1 mrg * include/experimental/bits/simd_detail.h: Do not document
4249 1.1 mrg internal implementation details.
4250 1.1 mrg * include/experimental/simd: Define Doxygen groups.
4251 1.1 mrg * include/experimental/type_traits: Improve documentation for
4252 1.1 mrg the header file. Define groups. Use @since commands.
4253 1.1 mrg * include/std/scoped_allocator (scoped_allocator_adaptor): Move
4254 1.1 mrg declaration before undocumented region.
4255 1.1 mrg * include/std/type_traits (true_type, false_type): Use using
4256 1.1 mrg declaration instead of typedef.
4257 1.1 mrg (is_invocable_v, is_nothrow_invocable_v, is_invocable_r_v)
4258 1.1 mrg (is_nothrow_invocable_r_v): Move definitions next to other C++17
4259 1.1 mrg variable templates.
4260 1.1 mrg Do not document internal implementation details. Move misplaced
4261 1.1 mrg group-end command. Define group for variable templates.
4262 1.1 mrg * include/std/variant: Do not document internal implementation
4263 1.1 mrg details.
4264 1.1 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
4265 1.1 mrg line number.
4266 1.1 mrg
4267 1.1 mrg 2021-06-30 Jonathan Wakely <jwakely (a] redhat.com>
4268 1.1 mrg
4269 1.1 mrg * include/experimental/simd: Do not define anything pre-C++17.
4270 1.1 mrg
4271 1.1 mrg 2021-06-30 Jonathan Wakely <jwakely (a] redhat.com>
4272 1.1 mrg
4273 1.1 mrg * include/bits/random.tcc [__cpp_inline_variables]: Remove
4274 1.1 mrg redundant definitions of static constexpr member variables.
4275 1.1 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
4276 1.1 mrg line number.
4277 1.1 mrg
4278 1.1 mrg 2021-06-28 Jonathan Wakely <jwakely (a] redhat.com>
4279 1.1 mrg
4280 1.1 mrg * include/bits/streambuf.tcc (__copy_streambufs_eof): Remove
4281 1.1 mrg explicit instantiation declarations.
4282 1.1 mrg * src/c++11/streambuf-inst.cc (__copy_streambufs_eof): Remove
4283 1.1 mrg explicit instantiation definitions.
4284 1.1 mrg
4285 1.1 mrg 2021-06-28 Jonathan Wakely <jwakely (a] redhat.com>
4286 1.1 mrg
4287 1.1 mrg PR libstdc++/97088
4288 1.1 mrg * testsuite/17_intro/names.cc: Fix #if condition for names used
4289 1.1 mrg by newlib headers.
4290 1.1 mrg
4291 1.1 mrg 2021-06-28 Jonathan Wakely <jwakely (a] redhat.com>
4292 1.1 mrg
4293 1.1 mrg PR libstdc++/101236
4294 1.1 mrg * include/bits/unique_ptr.h (unique_ptr<T[], D>::operator[]):
4295 1.1 mrg Fail gracefully if element_type is incomplete.
4296 1.1 mrg * testsuite/20_util/unique_ptr/cons/incomplete.cc: Clarify that
4297 1.1 mrg the standard doesn't require this test to work for array types.
4298 1.1 mrg * testsuite/20_util/unique_ptr/lwg2762.cc: Check that incomplete
4299 1.1 mrg types can be used with array specialization.
4300 1.1 mrg * testsuite/20_util/unique_ptr/101236.cc: New test.
4301 1.1 mrg
4302 1.1 mrg 2021-06-28 Jonathan Wakely <jwakely (a] redhat.com>
4303 1.1 mrg
4304 1.1 mrg * doc/xml/manual/intro.xml: Document LWG 415 change.
4305 1.1 mrg * doc/html/manual/bugs.html: Regenerate.
4306 1.1 mrg * include/bits/istream.tcc (ws): Create sentry and catch
4307 1.1 mrg exceptions.
4308 1.1 mrg * testsuite/27_io/basic_istream/ws/char/lwg415.cc: New test.
4309 1.1 mrg * testsuite/27_io/basic_istream/ws/wchar_t/lwg415.cc: New test.
4310 1.1 mrg
4311 1.1 mrg 2021-06-25 Jonathan Wakely <jwakely (a] redhat.com>
4312 1.1 mrg
4313 1.1 mrg * include/bits/ostream.tcc (basic_ostream::write): Call sputn
4314 1.1 mrg directly instead of using _M_write. Do setstate(__err) all
4315 1.1 mrg outside the try-catch block.
4316 1.1 mrg * include/std/ostream (basic_ostream::_M_write): Declare
4317 1.1 mrg private. Use __ostream_insert. Do not define for the versioned
4318 1.1 mrg namespace.
4319 1.1 mrg
4320 1.1 mrg 2021-06-25 Jonathan Wakely <jwakely (a] redhat.com>
4321 1.1 mrg
4322 1.1 mrg * doc/xml/manual/intro.xml: Document LWG 581 change.
4323 1.1 mrg * doc/html/manual/bugs.html: Regenerate.
4324 1.1 mrg * include/bits/basic_ios.tcc: Whitespace.
4325 1.1 mrg * include/bits/ostream.tcc (basic_ostream::flush()): Construct
4326 1.1 mrg sentry.
4327 1.1 mrg * testsuite/27_io/basic_ostream/flush/char/2.cc: Check
4328 1.1 mrg additional cases.
4329 1.1 mrg * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
4330 1.1 mrg Likewise.
4331 1.1 mrg * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
4332 1.1 mrg * testsuite/27_io/basic_ostream/flush/wchar_t/exceptions_badbit_throw.cc:
4333 1.1 mrg Likewise.
4334 1.1 mrg
4335 1.1 mrg 2021-06-25 Jonathan Wakely <jwakely (a] redhat.com>
4336 1.1 mrg
4337 1.1 mrg * include/bits/ostream.tcc (sentry): Only set failbit if badbit
4338 1.1 mrg is set, not if eofbit is set.
4339 1.1 mrg (tellp, seekp, seekp): Create sentry object. Do not set badbit
4340 1.1 mrg on exceptions.
4341 1.1 mrg * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
4342 1.1 mrg Adjust expected behaviour.
4343 1.1 mrg * testsuite/27_io/basic_ostream/seekp/wchar_t/exceptions_badbit_throw.cc:
4344 1.1 mrg Likewise.
4345 1.1 mrg * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
4346 1.1 mrg Likewise.
4347 1.1 mrg * testsuite/27_io/basic_ostream/tellp/wchar_t/exceptions_badbit_throw.cc:
4348 1.1 mrg Likewise.
4349 1.1 mrg * testsuite/27_io/basic_ostream/seekp/char/n3168.cc: New test.
4350 1.1 mrg * testsuite/27_io/basic_ostream/seekp/wchar_t/n3168.cc: New test.
4351 1.1 mrg * testsuite/27_io/basic_ostream/tellp/char/n3168.cc: New test.
4352 1.1 mrg * testsuite/27_io/basic_ostream/tellp/wchar_t/n3168.cc: New test.
4353 1.1 mrg
4354 1.1 mrg 2021-06-25 Jonathan Wakely <jwakely (a] redhat.com>
4355 1.1 mrg
4356 1.1 mrg * include/std/syncstream (basic_syncbuf::swap()): Remove
4357 1.1 mrg noexcept, as per LWG 3498.
4358 1.1 mrg
4359 1.1 mrg 2021-06-25 Jonathan Wakely <jwakely (a] redhat.com>
4360 1.1 mrg
4361 1.1 mrg PR libstdc++/97088
4362 1.1 mrg * testsuite/17_intro/names.cc: Undef more names for newlib and
4363 1.1 mrg also for arm-none-linux-gnueabi.
4364 1.1 mrg * testsuite/experimental/names.cc: Disable PCH.
4365 1.1 mrg
4366 1.1 mrg 2021-06-25 Matthias Kretz <m.kretz (a] gsi.de>
4367 1.1 mrg
4368 1.1 mrg * include/experimental/bits/simd.h (__bit_cast): Implement via
4369 1.1 mrg __builtin_bit_cast #if available.
4370 1.1 mrg (__proposed::simd_bit_cast): Add overloads for simd and
4371 1.1 mrg simd_mask, which use __builtin_bit_cast (or __bit_cast #if not
4372 1.1 mrg available), which return an object of the requested type with
4373 1.1 mrg the same bits as the argument.
4374 1.1 mrg * include/experimental/bits/simd_math.h: Use simd_bit_cast
4375 1.1 mrg instead of __bit_cast to allow casts to fixed_size_simd.
4376 1.1 mrg (copysign): Remove branch that was only required if __bit_cast
4377 1.1 mrg cannot be constexpr.
4378 1.1 mrg * testsuite/experimental/simd/tests/bits/test_values.h: Switch
4379 1.1 mrg from __bit_cast to __proposed::simd_bit_cast since the former
4380 1.1 mrg will not cast fixed_size objects anymore.
4381 1.1 mrg
4382 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4383 1.1 mrg
4384 1.1 mrg * include/experimental/bits/simd_math.h
4385 1.1 mrg (_GLIBCXX_SIMD_MATH_CALL2_): Rename arg2_ to __arg2.
4386 1.1 mrg (_GLIBCXX_SIMD_MATH_CALL3_): Rename arg2_ to __arg2 and arg3_ to
4387 1.1 mrg __arg3.
4388 1.1 mrg
4389 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4390 1.1 mrg
4391 1.1 mrg * include/experimental/bits/simd.h (__execute_on_index_sequence)
4392 1.1 mrg (__execute_on_index_sequence_with_return)
4393 1.1 mrg (__call_with_n_evaluations, __call_with_subscripts): Add flatten
4394 1.1 mrg attribute.
4395 1.1 mrg
4396 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4397 1.1 mrg
4398 1.1 mrg * include/experimental/bits/simd_x86.h (_S_trunc, _S_floor)
4399 1.1 mrg (_S_ceil): Set bit 8 (_MM_FROUND_NO_EXC) on AVX and SSE4.1
4400 1.1 mrg roundp[sd] calls.
4401 1.1 mrg
4402 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4403 1.1 mrg
4404 1.1 mrg * include/experimental/bits/simd_x86.h (_S_ldexp): The AVX512F
4405 1.1 mrg implementation doesn't require a _VecBltnBtmsk ABI tag, it
4406 1.1 mrg requires either a 64-Byte input (in which case AVX512F must be
4407 1.1 mrg available) or AVX512VL.
4408 1.1 mrg
4409 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4410 1.1 mrg
4411 1.1 mrg * include/experimental/bits/simd_math.h: Undefine internal
4412 1.1 mrg macros after use.
4413 1.1 mrg (frexp): Move #if to a more sensible position and reformat
4414 1.1 mrg preceding code.
4415 1.1 mrg (logb): Call _SimdImpl::_S_logb for fixed_size instead of
4416 1.1 mrg duplicating the code here.
4417 1.1 mrg (modf): Simplify condition.
4418 1.1 mrg
4419 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4420 1.1 mrg
4421 1.1 mrg * include/experimental/bits/simd_math.h (fabs): Remove
4422 1.1 mrg fabs(simd<integral>) overload.
4423 1.1 mrg
4424 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4425 1.1 mrg
4426 1.1 mrg * include/experimental/bits/simd_converter.h
4427 1.1 mrg (_SimdConverter::operator()): Pass _SimdTuple by const-ref.
4428 1.1 mrg * include/experimental/bits/simd_fixed_size.h
4429 1.1 mrg (_GLIBCXX_SIMD_FIXED_OP): Pass binary operator _SimdTuple
4430 1.1 mrg arguments by const-ref.
4431 1.1 mrg (_S_masked_unary): Pass _SimdTuple by const-ref.
4432 1.1 mrg
4433 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4434 1.1 mrg
4435 1.1 mrg * include/experimental/bits/simd_fixed_size.h
4436 1.1 mrg (_AbisInSimdTuple): Removed.
4437 1.1 mrg
4438 1.1 mrg 2021-06-24 Matthias Kretz <m.kretz (a] gsi.de>
4439 1.1 mrg
4440 1.1 mrg * include/experimental/bits/simd.h: Add missing operator~
4441 1.1 mrg overload for simd<floating-point> to __float_bitwise_operators.
4442 1.1 mrg * include/experimental/bits/simd_builtin.h
4443 1.1 mrg (_SimdImplBuiltin::_S_complement): Bitcast to int (and back) to
4444 1.1 mrg implement complement for floating-point vectors.
4445 1.1 mrg * include/experimental/bits/simd_fixed_size.h
4446 1.1 mrg (_SimdImplFixedSize::_S_copysign): New function, forwarding to
4447 1.1 mrg copysign implementation of _SimdTuple members.
4448 1.1 mrg * include/experimental/bits/simd_math.h (copysign): Call
4449 1.1 mrg _SimdImpl::_S_copysign for fixed_size arguments. Simplify
4450 1.1 mrg generic copysign implementation using the new ~ operator.
4451 1.1 mrg
4452 1.1 mrg 2021-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4453 1.1 mrg
4454 1.1 mrg * testsuite/experimental/simd/README.md: Fix typos.
4455 1.1 mrg
4456 1.1 mrg 2021-06-24 Jonathan Wakely <jwakely (a] redhat.com>
4457 1.1 mrg
4458 1.1 mrg * include/bits/shared_ptr_base.h (__shared_ptr_access::operator[]):
4459 1.1 mrg Add noexcept.
4460 1.1 mrg * include/bits/unique_ptr.h (unique_ptr::operator*): Add
4461 1.1 mrg conditional noexcept as per LWG 2762.
4462 1.1 mrg * testsuite/20_util/shared_ptr/observers/array.cc: Check that
4463 1.1 mrg dereferencing cannot throw.
4464 1.1 mrg * testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
4465 1.1 mrg * testsuite/20_util/optional/observers/lwg2762.cc: New test.
4466 1.1 mrg * testsuite/20_util/unique_ptr/lwg2762.cc: New test.
4467 1.1 mrg
4468 1.1 mrg 2021-06-23 Patrick Palka <ppalka (a] redhat.com>
4469 1.1 mrg
4470 1.1 mrg PR c++/101174
4471 1.1 mrg * testsuite/23_containers/multiset/cons/deduction.cc:
4472 1.1 mrg Uncomment CTAD example that was rejected by this bug.
4473 1.1 mrg * testsuite/23_containers/set/cons/deduction.cc: Likewise.
4474 1.1 mrg
4475 1.1 mrg 2021-06-23 Jonathan Wakely <jwakely (a] redhat.com>
4476 1.1 mrg
4477 1.1 mrg * include/std/chrono (chrono::year::is_leap()): Fix incorrect
4478 1.1 mrg logic in comment.
4479 1.1 mrg
4480 1.1 mrg 2021-06-23 Matthias Kretz <m.kretz (a] gsi.de>
4481 1.1 mrg
4482 1.1 mrg * testsuite/experimental/simd/README.md: New file.
4483 1.1 mrg
4484 1.1 mrg 2021-06-23 Matthias Kretz <m.kretz (a] gsi.de>
4485 1.1 mrg
4486 1.1 mrg * testsuite/experimental/simd/driver.sh: Rewrite output
4487 1.1 mrg verbosity logic. Add -p/--percentage option. Allow -v/--verbose
4488 1.1 mrg to be used twice. Add -x and -o short options. Parse long
4489 1.1 mrg options with = instead of separating space generically. Parce
4490 1.1 mrg contracted short options. Make unrecognized options an error.
4491 1.1 mrg If same-line output is active, trap on EXIT to increment the
4492 1.1 mrg progress (only with --percentage), erase the line and print the
4493 1.1 mrg current status.
4494 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: Initialize
4495 1.1 mrg helper files for progress account keeping. Update help target
4496 1.1 mrg for changes to DRIVEROPTS.
4497 1.1 mrg
4498 1.1 mrg 2021-06-23 Matthias Kretz <m.kretz (a] gsi.de>
4499 1.1 mrg
4500 1.1 mrg * testsuite/Makefile.am (check-simd): Remove -fno-tree-vrp flag
4501 1.1 mrg and associated warning.
4502 1.1 mrg * testsuite/Makefile.in: Regenerate.
4503 1.1 mrg
4504 1.1 mrg 2021-06-23 Cassio Neri <cassio.neri (a] gmail.com>
4505 1.1 mrg Jonathan Wakely <jwakely (a] redhat.com>
4506 1.1 mrg Ulrich Drepper <drepper (a] redhat.com>
4507 1.1 mrg
4508 1.1 mrg * include/std/chrono (chrono::year::is_leap()): Optimize.
4509 1.1 mrg
4510 1.1 mrg 2021-06-23 Patrick Palka <ppalka (a] redhat.com>
4511 1.1 mrg
4512 1.1 mrg PR c++/86439
4513 1.1 mrg * testsuite/23_containers/map/cons/deduction.cc: Replace ambiguous
4514 1.1 mrg CTAD examples.
4515 1.1 mrg * testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
4516 1.1 mrg * testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
4517 1.1 mrg Mention one of the replaced examples is broken due to PR101174.
4518 1.1 mrg * testsuite/23_containers/set/cons/deduction.cc: Likewise.
4519 1.1 mrg * testsuite/23_containers/unordered_map/cons/deduction.cc: Replace
4520 1.1 mrg ambiguous CTAD examples.
4521 1.1 mrg * testsuite/23_containers/unordered_multimap/cons/deduction.cc:
4522 1.1 mrg Likewise.
4523 1.1 mrg * testsuite/23_containers/unordered_multiset/cons/deduction.cc:
4524 1.1 mrg Likewise.
4525 1.1 mrg * testsuite/23_containers/unordered_set/cons/deduction.cc: Likewise.
4526 1.1 mrg
4527 1.1 mrg 2021-06-23 Jonathan Wakely <jwakely (a] redhat.com>
4528 1.1 mrg
4529 1.1 mrg * include/std/mutex (__detail::__try_lock_impl): Rename
4530 1.1 mrg parameter to avoid clashing with newlib's __lockable macro.
4531 1.1 mrg (try_lock): Add 'inline' specifier.
4532 1.1 mrg * testsuite/17_intro/names.cc: Add check for __lockable.
4533 1.1 mrg * testsuite/30_threads/try_lock/5.cc: Add options for pthreads.
4534 1.1 mrg
4535 1.1 mrg 2021-06-22 Jonathan Wakely <jwakely (a] redhat.com>
4536 1.1 mrg Matthias Kretz <m.kretz (a] gsi.de>
4537 1.1 mrg
4538 1.1 mrg * include/std/mutex (lock): Replace recursion with iteration
4539 1.1 mrg when lockables all have the same type.
4540 1.1 mrg (__detail::__try_lock_impl): Likewise. Pass lockables as
4541 1.1 mrg parameters, instead of a tuple. Always lock the first one, and
4542 1.1 mrg recurse for the rest.
4543 1.1 mrg (__detail::__lock_impl): Adjust call to __try_lock_impl.
4544 1.1 mrg (__detail::__try_to_lock): Remove.
4545 1.1 mrg * testsuite/30_threads/lock/3.cc: Check that mutexes are locked.
4546 1.1 mrg * testsuite/30_threads/lock/4.cc: Also test non-heterogeneous
4547 1.1 mrg arguments.
4548 1.1 mrg * testsuite/30_threads/unique_lock/cons/60497.cc: Also check
4549 1.1 mrg std::try_lock.
4550 1.1 mrg * testsuite/30_threads/try_lock/5.cc: New test.
4551 1.1 mrg
4552 1.1 mrg 2021-06-22 Jonathan Wakely <jwakely (a] redhat.com>
4553 1.1 mrg
4554 1.1 mrg * include/std/memory (declare_reachable, undeclare_reachable)
4555 1.1 mrg (declare_no_pointers, undeclare_no_pointers, get_pointer_safety)
4556 1.1 mrg (pointer_safety): Only define for C++11 to C++20 inclusive.
4557 1.1 mrg * testsuite/20_util/pointer_safety/1.cc: Do not run for C++23.
4558 1.1 mrg
4559 1.1 mrg 2021-06-22 Jonathan Wakely <jwakely (a] redhat.com>
4560 1.1 mrg
4561 1.1 mrg * include/bits/random.h (seed_seq): Constrain initializer-list
4562 1.1 mrg constructor.
4563 1.1 mrg * include/bits/random.tcc (seed_seq): Add template parameter.
4564 1.1 mrg * testsuite/26_numerics/random/seed_seq/cons/default.cc: Check
4565 1.1 mrg for noexcept.
4566 1.1 mrg * testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Check
4567 1.1 mrg constraints.
4568 1.1 mrg
4569 1.1 mrg 2021-06-22 Thomas Rodgers <rodgert (a] appliantology.com>
4570 1.1 mrg
4571 1.1 mrg PR libstdc++/100806
4572 1.1 mrg * include/bits/semaphore_base.h (__atomic_semaphore::_M_release):
4573 1.1 mrg Force _M_release() to wake all waiting threads.
4574 1.1 mrg * testsuite/30_threads/semaphore/100806.cc: New test.
4575 1.1 mrg
4576 1.1 mrg 2021-06-21 Jonathan Wakely <jwakely (a] redhat.com>
4577 1.1 mrg
4578 1.1 mrg * include/std/mutex (__try_to_lock): Move to __detail namespace.
4579 1.1 mrg (struct __try_lock_impl): Replace with ...
4580 1.1 mrg (__detail::__try_lock_impl<Idx>(tuple<Lockables...>&)): New
4581 1.1 mrg function templates to implement std::try_lock.
4582 1.1 mrg (try_lock): Use new __try_lock_impl.
4583 1.1 mrg (__detail::__lock_impl(int, int&, L0&, L1&...)): New function
4584 1.1 mrg template to implement std::lock.
4585 1.1 mrg (lock): Use __lock_impl.
4586 1.1 mrg
4587 1.1 mrg 2021-06-21 Patrick Palka <ppalka (a] redhat.com>
4588 1.1 mrg
4589 1.1 mrg * include/bits/ranges_cmp.h (__cpp_lib_ranges): Adjust value.
4590 1.1 mrg
4591 1.1 mrg 2021-06-20 Patrick Palka <ppalka (a] redhat.com>
4592 1.1 mrg
4593 1.1 mrg * include/std/ranges (__non_propagating_cache::operator bool):
4594 1.1 mrg Define for split_view::begin().
4595 1.1 mrg (split_view): Define as per P2210.
4596 1.1 mrg (views::__detail::__can_split_view): Define.
4597 1.1 mrg (views::_Split, views::split): Define.
4598 1.1 mrg * testsuite/std/ranges/adaptors/100577.cc (test01, test02):
4599 1.1 mrg Test views::split.
4600 1.1 mrg * testsuite/std/ranges/adaptors/split.cc: New test.
4601 1.1 mrg * testsuite/std/ranges/p2325.cc (test08a): New test.
4602 1.1 mrg * testsuite/std/ranges/p2367.cc (test01): Test views::split.
4603 1.1 mrg
4604 1.1 mrg 2021-06-20 Patrick Palka <ppalka (a] redhat.com>
4605 1.1 mrg
4606 1.1 mrg * include/std/ranges: Rename views::split to views::lazy_split,
4607 1.1 mrg split_view to lazy_split_view, etc. throughout.
4608 1.1 mrg * testsuite/std/ranges/*: Likewise.
4609 1.1 mrg * testsuite/std/ranges/adaptors/lazy_split.cc: New file.
4610 1.1 mrg * testsuite/std/ranges/adaptors/lazy_split_neg.cc: New file.
4611 1.1 mrg
4612 1.1 mrg 2021-06-20 Patrick Palka <ppalka (a] redhat.com>
4613 1.1 mrg
4614 1.1 mrg * include/std/ranges (split_view::_OuterIter::__at_end):
4615 1.1 mrg Check _M_trailing_empty.
4616 1.1 mrg (split_view::_OuterIter::_M_trailing_empty): Define this
4617 1.1 mrg data member.
4618 1.1 mrg (split_view::_OuterIter::operator++): Set _M_trailing_empty
4619 1.1 mrg appropriately.
4620 1.1 mrg (split_view::_OuterIter::operator==): Compare
4621 1.1 mrg _M_trailing_empty.
4622 1.1 mrg * testsuite/std/ranges/adaptors/100479.cc (test03): Expect two
4623 1.1 mrg split parts instead of one.
4624 1.1 mrg * testsuite/std/ranges/adaptors/split.cc (test11): New test.
4625 1.1 mrg
4626 1.1 mrg 2021-06-20 Patrick Palka <ppalka (a] redhat.com>
4627 1.1 mrg
4628 1.1 mrg * include/std/ranges (split_view::_InnerIter::base): Define as
4629 1.1 mrg per P2210.
4630 1.1 mrg
4631 1.1 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
4632 1.1 mrg
4633 1.1 mrg * include/std/ranges (transform_view::_Iterator::_S_iter_concept):
4634 1.1 mrg Consider _Base instead of _Vp as per LWG 3555.
4635 1.1 mrg (elements_view::_Iterator::_S_iter_concept): Likewise.
4636 1.1 mrg
4637 1.1 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
4638 1.1 mrg
4639 1.1 mrg * include/std/ranges (split_view::_OuterIter::value_type::begin):
4640 1.1 mrg Remove the non-const overload, and remove the copyable constraint
4641 1.1 mrg on the const overload as per LWG 3553.
4642 1.1 mrg
4643 1.1 mrg 2021-06-19 Patrick Palka <ppalka (a] redhat.com>
4644 1.1 mrg
4645 1.1 mrg * include/bits/stl_iterator.h
4646 1.1 mrg (__detail::__common_iter_use_postfix_proxy): Add
4647 1.1 mrg move_constructible constraint as per LWG 3546.
4648 1.1 mrg (common_iterator::__postfix_proxy): Adjust initializer of
4649 1.1 mrg _M_keep as per LWG 3546.
4650 1.1 mrg
4651 1.1 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
4652 1.1 mrg
4653 1.1 mrg PR libstdc++/100387
4654 1.1 mrg * include/bits/ranges_algo.h (__minmax_fn::operator()): Rewrite
4655 1.1 mrg to limit comparison complexity to 3*N/2.
4656 1.1 mrg (__minmax_element_fn::operator()): Likewise.
4657 1.1 mrg (shift_right): Avoid premature std::move of __result.
4658 1.1 mrg * testsuite/25_algorithms/minmax/constrained.cc (test04, test05):
4659 1.1 mrg New tests.
4660 1.1 mrg * testsuite/25_algorithms/minmax_element/constrained.cc (test02):
4661 1.1 mrg Likewise.
4662 1.1 mrg
4663 1.1 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
4664 1.1 mrg
4665 1.1 mrg * include/std/concepts (convertible_to): Just use declval as per
4666 1.1 mrg LWG 3557.
4667 1.1 mrg
4668 1.1 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
4669 1.1 mrg
4670 1.1 mrg PR libstdc++/95833
4671 1.1 mrg * include/std/numeric (reduce(Iter, Iter, T, BinaryOp)): Replace
4672 1.1 mrg incorrect static_assert with ones matching the 'Mandates'
4673 1.1 mrg conditions in the standard.
4674 1.1 mrg * testsuite/26_numerics/reduce/95833.cc: New test.
4675 1.1 mrg
4676 1.1 mrg 2021-06-18 Jonathan Wakely <jwakely (a] redhat.com>
4677 1.1 mrg
4678 1.1 mrg * testsuite/21_strings/basic_string/cons/char/1.cc: Use
4679 1.1 mrg diagnostic pragma to suppress -Wstringop-overread error.
4680 1.1 mrg
4681 1.1 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
4682 1.1 mrg
4683 1.1 mrg * include/bits/ranges_algo.h (__find_fn, find, __find_if_fn)
4684 1.1 mrg (find_if, __find_if_not_fn, find_if_not, _in_in_result)
4685 1.1 mrg (__mismatch_fn, mismatch, __search_fn, search): Move to ...
4686 1.1 mrg * include/bits/ranges_util.h: ... here.
4687 1.1 mrg * include/std/ranges (__detail::find, __detail::find_if)
4688 1.1 mrg (__detail::find_if_not, __detail::mismatch): Remove.
4689 1.1 mrg (filter_view): Use ranges::find_if instead.
4690 1.1 mrg (drop_while_view): Use ranges::find_if_not instead.
4691 1.1 mrg (split_view): Use ranges::find and ranges::mismatch instead.
4692 1.1 mrg
4693 1.1 mrg 2021-06-18 Patrick Palka <ppalka (a] redhat.com>
4694 1.1 mrg
4695 1.1 mrg * include/bits/iterator_concepts.h (weakly_incrementable): Remove
4696 1.1 mrg default_initializable requirement.
4697 1.1 mrg * include/bits/ranges_base.h (ranges::view): Likewise.
4698 1.1 mrg * include/bits/ranges_util.h (subrange): Constrain the default
4699 1.1 mrg ctor.
4700 1.1 mrg * include/bits/stl_iterator.h (back_insert_iterator): Remove the
4701 1.1 mrg default ctor.
4702 1.1 mrg (front_insert_iterator): Likewise.
4703 1.1 mrg (insert_iterator): Likewise. Remove NSDMIs.
4704 1.1 mrg (common_iterator): Constrain the default ctor.
4705 1.1 mrg (counted_iterator): Likewise.
4706 1.1 mrg * include/bits/stream_iterator.h (ostream_iterator): Remove the
4707 1.1 mrg default ctor.
4708 1.1 mrg * include/std/ranges (__detail::__box::operator=): Handle
4709 1.1 mrg self-assignment in the primary template.
4710 1.1 mrg (__detail::__box): In the partial specialization: adjust
4711 1.1 mrg constraints as per P2325. Add specialized operator= for the
4712 1.1 mrg case when the wrapped type is not copyable. Constrain the
4713 1.1 mrg default ctor. Avoid list-initialization.
4714 1.1 mrg (single_view): Constraint the default ctor.
4715 1.1 mrg (iota_view): Relax semiregular constraint to copyable.
4716 1.1 mrg Constrain the default ctor.
4717 1.1 mrg (iota_view::_Iterator): Constraint the default ctor.
4718 1.1 mrg (basic_istream_view): Remove the default ctor. Remove NSDMIs.
4719 1.1 mrg Remove redundant checks for empty _M_stream.
4720 1.1 mrg (basic_istream_view::_Iterator): Likewise.
4721 1.1 mrg (ref_view): Remove the default ctor. Remove NSDMIs.
4722 1.1 mrg (ref_view::_Iterator): Constrain the default ctor.
4723 1.1 mrg (__detail::__non_propagating_cache::operator=): Define overload
4724 1.1 mrg for assigning from a value of the underlying type.
4725 1.1 mrg (filter_view): Likewise.
4726 1.1 mrg (filter_view::_Iterator): Likewise.
4727 1.1 mrg (transform_view): Likewise.
4728 1.1 mrg (transform_view::_Iterator): Likewise.
4729 1.1 mrg (take_view): Likewise.
4730 1.1 mrg (take_view::_Iterator): Likewise.
4731 1.1 mrg (take_while_view): Likewise.
4732 1.1 mrg (take_while_view::_Iterator): Likewise.
4733 1.1 mrg (drop_while_view): Likewise.
4734 1.1 mrg (drop_while_view::_Iterator): Likewise.
4735 1.1 mrg (join_view): Likewise.
4736 1.1 mrg (split_view::_OuterIter::__current): Adjust after changing the
4737 1.1 mrg type of _M_current.
4738 1.1 mrg (split_view::_M_current): Wrap it in a __non_propagating_cache.
4739 1.1 mrg (split_view::split_view): Constrain the default ctor.
4740 1.1 mrg (common_view): Constrain the default ctor.
4741 1.1 mrg (reverse_view): Likewise.
4742 1.1 mrg (elements_view): Likewise.
4743 1.1 mrg * include/std/span (enable_view<span<_ElementType, _Extent>>):
4744 1.1 mrg Define this partial specialization to true unconditionally.
4745 1.1 mrg * include/std/version (__cpp_lib_ranges): Adjust value.
4746 1.1 mrg * testsuite/24_iterators/back_insert_iterator/constexpr.cc:
4747 1.1 mrg Don't attempt to default construct a back_insert_iterator.
4748 1.1 mrg * testsuite/24_iterators/front_insert_iterator/constexpr.cc:
4749 1.1 mrg Don't attempt to default construct a front_insert_iterator.
4750 1.1 mrg * testsuite/24_iterators/insert_iterator/constexpr.cc:
4751 1.1 mrg Don't attempt to default construct an insert_iterator.
4752 1.1 mrg * testsuite/24_iterators/ostream_iterator/requirements/constexpr.cc:
4753 1.1 mrg Remove this test for default constructibility of ostream_iterator.
4754 1.1 mrg * testsuite/std/ranges/97600.cc: Don't attempt to default
4755 1.1 mrg construct a basic_istream_view.
4756 1.1 mrg * testsuite/std/ranges/adaptors/detail/semiregular_box.cc:
4757 1.1 mrg Rename to ...
4758 1.1 mrg * testsuite/std/ranges/adaptors/detail/copyable_box.cc: ... this.
4759 1.1 mrg (test02): Adjust now that __box is copyable-box not
4760 1.1 mrg semiregular-box.
4761 1.1 mrg (test03): New test.
4762 1.1 mrg * testsuite/std/ranges/p2325.cc: New test.
4763 1.1 mrg * testsuite/std/ranges/single_view.cc (test06): New test.
4764 1.1 mrg * testsuite/std/ranges/view.cc: Adjust now that view doesn't
4765 1.1 mrg require default_initializable.
4766 1.1 mrg
4767 1.1 mrg 2021-06-17 Jonathan Wakely <jwakely (a] redhat.com>
4768 1.1 mrg
4769 1.1 mrg PR libstdc++/91488
4770 1.1 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string): Only
4771 1.1 mrg define when is_constant_evaluated is available.
4772 1.1 mrg * include/bits/char_traits.h (__cpp_lib_constexpr_char_traits):
4773 1.1 mrg Likewise.
4774 1.1 mrg (__constant_string_p, __constant_array_p): Remove.
4775 1.1 mrg (char_traits): Use is_constant_evaluated directly.
4776 1.1 mrg * include/std/version (__cpp_lib_constexpr_char_traits)
4777 1.1 mrg (__cpp_lib_constexpr_string): Only define when
4778 1.1 mrg is_constant_evaluated is available.
4779 1.1 mrg
4780 1.1 mrg 2021-06-17 Patrick Palka <ppalka (a] redhat.com>
4781 1.1 mrg
4782 1.1 mrg PR libstdc++/100940
4783 1.1 mrg * include/std/ranges (__adaptor::_Partial): For the "simple"
4784 1.1 mrg forwarding partial specializations, also require that
4785 1.1 mrg the extra arguments are trivially copyable.
4786 1.1 mrg * testsuite/std/ranges/adaptors/100577.cc (test04): New test.
4787 1.1 mrg
4788 1.1 mrg 2021-06-17 Patrick Palka <ppalka (a] redhat.com>
4789 1.1 mrg
4790 1.1 mrg PR libstdc++/100940
4791 1.1 mrg * include/std/ranges (__adaptor::_RangeAdaptor): Document the
4792 1.1 mrg template form of _S_has_simple_extra_args.
4793 1.1 mrg (__adaptor::__adaptor_has_simple_extra_args): Add _Args template
4794 1.1 mrg parameter pack. Try to treat _S_has_simple_extra_args as a
4795 1.1 mrg variable template parameterized by _Args.
4796 1.1 mrg (__adaptor::_Partial): Pass _Arg/_Args to the constraint
4797 1.1 mrg __adaptor_has_simple_extra_args.
4798 1.1 mrg (views::_Take::_S_has_simple_extra_args): Templatize according
4799 1.1 mrg to the type of the extra argument.
4800 1.1 mrg (views::_Drop::_S_has_simple_extra_args): Likewise.
4801 1.1 mrg (views::_Split::_S_has_simple_extra_args): Define.
4802 1.1 mrg * testsuite/std/ranges/adaptors/100577.cc (test01, test02):
4803 1.1 mrg Adjust after changes to _S_has_simple_extra_args mechanism.
4804 1.1 mrg (test03): Define.
4805 1.1 mrg
4806 1.1 mrg 2021-06-16 Jonathan Wakely <jwakely (a] redhat.com>
4807 1.1 mrg
4808 1.1 mrg * include/bits/iterator_concepts.h (__decay_copy): Name type.
4809 1.1 mrg
4810 1.1 mrg 2021-06-16 Jonathan Wakely <jwakely (a] redhat.com>
4811 1.1 mrg
4812 1.1 mrg * include/bits/ranges_base.h (ranges::begin, ranges::end)
4813 1.1 mrg (ranges::cbegin, ranges::cend, ranges::rbeing, ranges::rend)
4814 1.1 mrg (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize)
4815 1.1 mrg (ranges::empty, ranges::data, ranges::cdata): Remove final
4816 1.1 mrg keywords and deleted operator& overloads.
4817 1.1 mrg * testsuite/24_iterators/customization_points/iter_move.cc: Use
4818 1.1 mrg new is_customization_point_object function.
4819 1.1 mrg * testsuite/24_iterators/customization_points/iter_swap.cc:
4820 1.1 mrg Likewise.
4821 1.1 mrg * testsuite/std/concepts/concepts.lang/concept.swappable/swap.cc:
4822 1.1 mrg Likewise.
4823 1.1 mrg * testsuite/std/ranges/access/begin.cc: Likewise.
4824 1.1 mrg * testsuite/std/ranges/access/cbegin.cc: Likewise.
4825 1.1 mrg * testsuite/std/ranges/access/cdata.cc: Likewise.
4826 1.1 mrg * testsuite/std/ranges/access/cend.cc: Likewise.
4827 1.1 mrg * testsuite/std/ranges/access/crbegin.cc: Likewise.
4828 1.1 mrg * testsuite/std/ranges/access/crend.cc: Likewise.
4829 1.1 mrg * testsuite/std/ranges/access/data.cc: Likewise.
4830 1.1 mrg * testsuite/std/ranges/access/empty.cc: Likewise.
4831 1.1 mrg * testsuite/std/ranges/access/end.cc: Likewise.
4832 1.1 mrg * testsuite/std/ranges/access/rbegin.cc: Likewise.
4833 1.1 mrg * testsuite/std/ranges/access/rend.cc: Likewise.
4834 1.1 mrg * testsuite/std/ranges/access/size.cc: Likewise.
4835 1.1 mrg * testsuite/std/ranges/access/ssize.cc: Likewise.
4836 1.1 mrg * testsuite/util/testsuite_iterators.h
4837 1.1 mrg (is_customization_point_object): New function.
4838 1.1 mrg
4839 1.1 mrg 2021-06-15 Jonathan Wakely <jwakely (a] redhat.com>
4840 1.1 mrg
4841 1.1 mrg * include/bits/ranges_base.h (ranges::begin, ranges::end)
4842 1.1 mrg (ranges::cbegin, ranges::cend, ranges::rbeing, ranges::rend)
4843 1.1 mrg (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize)
4844 1.1 mrg (ranges::empty, ranges::data, ranges::cdata): Make types final.
4845 1.1 mrg Add deleted operator& overloads.
4846 1.1 mrg (ranges::advance, ranges::distance, ranges::next, ranges::prev):
4847 1.1 mrg Likewise.
4848 1.1 mrg * testsuite/std/ranges/headers/ranges/synopsis.cc: Replace
4849 1.1 mrg ill-formed & expressions with using-declarations. Add checks for
4850 1.1 mrg other function objects.
4851 1.1 mrg
4852 1.1 mrg 2021-06-15 Jonathan Wakely <jwakely (a] redhat.com>
4853 1.1 mrg
4854 1.1 mrg * include/bits/ranges_util.h (view_interface): Add noexcept to
4855 1.1 mrg empty, operator bool, data and size members.
4856 1.1 mrg (subrange): Add noexcept to constructors.
4857 1.1 mrg * include/std/ranges (single_view, ref_view): Add noexcept to
4858 1.1 mrg constructors.
4859 1.1 mrg (views::single, views::all): Add noexcept.
4860 1.1 mrg * testsuite/std/ranges/adaptors/all.cc: Check noexcept.
4861 1.1 mrg * testsuite/std/ranges/single_view.cc: Likewise.
4862 1.1 mrg
4863 1.1 mrg 2021-06-15 Jonathan Wakely <jwakely (a] redhat.com>
4864 1.1 mrg
4865 1.1 mrg * include/bits/ranges_util.h (subrange): Add __size_type typedef
4866 1.1 mrg and use it to simplify declarations.
4867 1.1 mrg (subrange(i, s, n)): Remove assertion.
4868 1.1 mrg * testsuite/std/ranges/subrange/constexpr.cc: New test.
4869 1.1 mrg
4870 1.1 mrg 2021-06-15 Jonathan Wakely <jwakely (a] redhat.com>
4871 1.1 mrg
4872 1.1 mrg * include/bits/iterator_concepts.h (__cust_access::__decay_copy):
4873 1.1 mrg Replace with function object.
4874 1.1 mrg (__cust_access::__member_begin, ___cust_access::_adl_begin): Use
4875 1.1 mrg __decay_copy unqualified.
4876 1.1 mrg * include/bits/ranges_base.h (__member_end, __adl_end):
4877 1.1 mrg Likewise. Use __range_iter_t for type of ranges::begin.
4878 1.1 mrg (__member_rend): Use correct value category for rbegin argument.
4879 1.1 mrg (__member_data): Use __decay_copy unqualified.
4880 1.1 mrg (__begin_data): Use __range_iter_t for type of ranges::begin.
4881 1.1 mrg
4882 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4883 1.1 mrg
4884 1.1 mrg * include/bits/ranges_base.h (ranges::empty): Check whether
4885 1.1 mrg conversion to bool can throw.
4886 1.1 mrg * testsuite/std/ranges/access/empty.cc: Check for correct
4887 1.1 mrg noexcept-specifier.
4888 1.1 mrg
4889 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4890 1.1 mrg
4891 1.1 mrg PR libstdc++/100894
4892 1.1 mrg * include/std/type_traits (__common_ref_impl<X&, Y&>): Only
4893 1.1 mrg use the type if it's a reference.
4894 1.1 mrg * testsuite/20_util/common_reference/100894.cc: New test.
4895 1.1 mrg
4896 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4897 1.1 mrg
4898 1.1 mrg * testsuite/experimental/filesystem/path/native/conv_c++23.cc:
4899 1.1 mrg Add dg-require-filesystem-ts directive.
4900 1.1 mrg
4901 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4902 1.1 mrg
4903 1.1 mrg PR libstdc++/101034
4904 1.1 mrg * include/std/any (any(in_place_t<T>, initializer_list<U>, A&&...))
4905 1.1 mrg (any::emplace<T>(initializer_list<U>, A&&...)): Fix constraint
4906 1.1 mrg to use lvalue.
4907 1.1 mrg * testsuite/20_util/any/cons/101034.cc: New test.
4908 1.1 mrg
4909 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4910 1.1 mrg
4911 1.1 mrg * testsuite/17_intro/headers/c++2017/all_attributes.cc: Add
4912 1.1 mrg -std=gnu++17 option.
4913 1.1 mrg
4914 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4915 1.1 mrg
4916 1.1 mrg PR libstdc++/101056
4917 1.1 mrg * libsupc++/compare (compare_partial_order_fallback): Add
4918 1.1 mrg constraint using reversed parameter order, as per LWG 3465.
4919 1.1 mrg * testsuite/18_support/comparisons/algorithms/fallback.cc:
4920 1.1 mrg Adjust expected result.
4921 1.1 mrg
4922 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4923 1.1 mrg
4924 1.1 mrg * libsupc++/compare (__decayed_same_as): New helper concept.
4925 1.1 mrg (strong_order, weak_order, partial_order): Constrain with new
4926 1.1 mrg concept instead of using static_assert.
4927 1.1 mrg (compare_strong_order_fallback, compare_weak_order_fallback)
4928 1.1 mrg (compare_partial_order_fallback): Likewise. Do not deduce return
4929 1.1 mrg types. Remove redundant if-constexpr checks.
4930 1.1 mrg * testsuite/18_support/comparisons/algorithms/fallback.cc: New test.
4931 1.1 mrg
4932 1.1 mrg 2021-06-14 Jonathan Wakely <jwakely (a] redhat.com>
4933 1.1 mrg
4934 1.1 mrg PR libstdc++/101055
4935 1.1 mrg * include/std/tuple: Use reserved form of attribute name.
4936 1.1 mrg * testsuite/17_intro/headers/c++2011/all_attributes.cc: Add
4937 1.1 mrg check for no_unique_address.
4938 1.1 mrg * testsuite/17_intro/headers/c++2014/all_attributes.cc:
4939 1.1 mrg Likewise.
4940 1.1 mrg * testsuite/17_intro/headers/c++2017/all_attributes.cc:
4941 1.1 mrg Likewise.
4942 1.1 mrg
4943 1.1 mrg 2021-06-11 Jonathan Wakely <jwakely (a] redhat.com>
4944 1.1 mrg
4945 1.1 mrg * include/bits/fs_path.h (operator==, operator<=>): Use new
4946 1.1 mrg _S_compare function.
4947 1.1 mrg (path::_S_compare): New function to call path::compare in a
4948 1.1 mrg context where path::iterator is complete.
4949 1.1 mrg * include/experimental/bits/fs_path.h (operator<, operator==):
4950 1.1 mrg Define after path::iterator is complete.
4951 1.1 mrg * testsuite/27_io/filesystem/path/native/conv_c++23.cc: New
4952 1.1 mrg test.
4953 1.1 mrg * testsuite/experimental/filesystem/path/native/conv_c++23.cc:
4954 1.1 mrg New test.
4955 1.1 mrg
4956 1.1 mrg 2021-06-09 Thomas Rodgers <rodgert (a] appliantology.com>
4957 1.1 mrg
4958 1.1 mrg * testsuite/29_atomics/atomic_ref/wait_notify.cc: Guard
4959 1.1 mrg test logic with constexpr check for is_always_lock_free.
4960 1.1 mrg
4961 1.1 mrg 2021-06-09 Jonathan Wakely <jwakely (a] redhat.com>
4962 1.1 mrg
4963 1.1 mrg PR libstdc++/100982
4964 1.1 mrg * include/std/optional (optional::operator=(const optional<U>&)):
4965 1.1 mrg Fix value category used in is_assignable check.
4966 1.1 mrg * testsuite/20_util/optional/assignment/100982.cc: New test.
4967 1.1 mrg
4968 1.1 mrg 2021-06-09 Jonathan Wakely <jwakely (a] redhat.com>
4969 1.1 mrg
4970 1.1 mrg * include/bits/allocator.h (allocator::is_always_equal): Deprecate.
4971 1.1 mrg * include/bits/iterator_concepts.h (indirectly_readable_traits):
4972 1.1 mrg Add LWG issue number to comment.
4973 1.1 mrg * include/std/memory_resource (polymorphic_allocator::release):
4974 1.1 mrg Deprecate.
4975 1.1 mrg * testsuite/20_util/allocator/requirements/typedefs.cc: Add
4976 1.1 mrg dg-warning for deprecation. Also check std::allocator<void>.
4977 1.1 mrg
4978 1.1 mrg 2021-06-08 Thomas Rodgers <rodgert (a] appliantology.com>
4979 1.1 mrg
4980 1.1 mrg PR libstdc++/100889
4981 1.1 mrg * include/bits/atomic_base.h (atomic_ref<_Tp*>::wait):
4982 1.1 mrg Change parameter type from _Tp to _Tp*.
4983 1.1 mrg * testsuite/29_atomics/atomic_ref/wait_notify.cc: Extend
4984 1.1 mrg coverage of types tested.
4985 1.1 mrg
4986 1.1 mrg 2021-06-08 Thomas Rodgers <rodgert (a] appliantology.com>
4987 1.1 mrg
4988 1.1 mrg * include/std/barrier (__tree_barrier::_M_arrive): Remove
4989 1.1 mrg unnecessary hasher instantiation.
4990 1.1 mrg
4991 1.1 mrg 2021-06-08 Jonathan Wakely <jwakely (a] redhat.com>
4992 1.1 mrg
4993 1.1 mrg * include/experimental/propagate_const (swap): Constrain.
4994 1.1 mrg * testsuite/experimental/propagate_const/swap/lwg3413.cc: New test.
4995 1.1 mrg
4996 1.1 mrg 2021-06-07 Avi Kivity <avi (a] scylladb.com>
4997 1.1 mrg
4998 1.1 mrg PR libstdc++/100900
4999 1.1 mrg * include/std/ranges (elements_view::__iter_cat::_S_iter_cat):
5000 1.1 mrg Add missing typename.
5001 1.1 mrg
5002 1.1 mrg 2021-06-07 Jonathan Wakely <jwakely (a] redhat.com>
5003 1.1 mrg
5004 1.1 mrg PR libstdc++/98842
5005 1.1 mrg * include/std/optional (operator<=>(const optional<T>& const U&)):
5006 1.1 mrg Add missing constraint and add workaround for template
5007 1.1 mrg recursion.
5008 1.1 mrg * testsuite/20_util/optional/relops/three_way.cc: Check that
5009 1.1 mrg type without equality comparison cannot be compared when wrapped
5010 1.1 mrg in std::optional.
5011 1.1 mrg
5012 1.1 mrg 2021-06-05 Jonathan Wakely <jwakely (a] redhat.com>
5013 1.1 mrg
5014 1.1 mrg PR libstdc++/100824
5015 1.1 mrg * include/bits/ranges_base.h (_SSize): Return signed type.
5016 1.1 mrg * testsuite/std/ranges/access/ssize.cc: Check with __int128.
5017 1.1 mrg
5018 1.1 mrg 2021-06-04 Jonathan Wakely <jwakely (a] redhat.com>
5019 1.1 mrg
5020 1.1 mrg * include/bits/ranges_base.h (_SSize): Return the result of
5021 1.1 mrg ranges::size converted to the wider of make-signed-like-t<S> and
5022 1.1 mrg ptrdiff_t, rather than the ranges different type.
5023 1.1 mrg * testsuite/std/ranges/access/ssize.cc: Adjust expected result
5024 1.1 mrg for an iota_view that uses an integer class type for its
5025 1.1 mrg difference_type.
5026 1.1 mrg
5027 1.1 mrg 2021-06-04 Jonathan Wakely <jwakely (a] redhat.com>
5028 1.1 mrg
5029 1.1 mrg PR libstdc++/100824
5030 1.1 mrg * include/bits/ranges_base.h (__member_data): Use __decay_copy.
5031 1.1 mrg * testsuite/std/ranges/access/data.cc: Add testcase from PR.
5032 1.1 mrg
5033 1.1 mrg 2021-06-04 Jonathan Wakely <jwakely (a] redhat.com>
5034 1.1 mrg
5035 1.1 mrg PR libstdc++/100824
5036 1.1 mrg * include/bits/iterator_concepts.h (__detail::__decay_copy)
5037 1.1 mrg (__detail::__member_begin, __detail::__adl_begin): Move to
5038 1.1 mrg namespace ranges::__cust_access.
5039 1.1 mrg (__detail::__ranges_begin): Likewise, and rename to __begin.
5040 1.1 mrg Remove redundant static assertion.
5041 1.1 mrg * include/bits/ranges_base.h (_Begin, _End, _RBegin, _REnd):
5042 1.1 mrg Use lvalue in noexcept specifier.
5043 1.1 mrg (__as_const): Add non-deduced parameter for value category.
5044 1.1 mrg (_CBegin, _CEnd, _CRBegin, _CREnd, _CData): Adjust uses of
5045 1.1 mrg __as_const.
5046 1.1 mrg (__member_size, __adl_size, __member_empty, __size0_empty):
5047 1.1 mrg (__eq_iter_empty, __adl_data): Use lvalue objects in
5048 1.1 mrg requirements.
5049 1.1 mrg (__sentinel_size): Likewise. Add check for conversion to
5050 1.1 mrg unsigned-like.
5051 1.1 mrg (__member_data): Allow non-lvalue types to satisfy the concept,
5052 1.1 mrg but use lvalue object in requirements.
5053 1.1 mrg (_Size, _SSize): Remove forwarding to always use an lvalue.
5054 1.1 mrg (_Data): Likewise. Add static assertion for arrays.
5055 1.1 mrg * testsuite/std/ranges/access/cdata.cc: Adjust expected
5056 1.1 mrg behaviour for rvalues. Add negative tests for ill-formed
5057 1.1 mrg expressions.
5058 1.1 mrg * testsuite/std/ranges/access/data.cc: Likewise.
5059 1.1 mrg * testsuite/std/ranges/access/empty.cc: Adjust expected
5060 1.1 mrg behaviour for rvalues.
5061 1.1 mrg * testsuite/std/ranges/access/size.cc: Likewise.
5062 1.1 mrg
5063 1.1 mrg 2021-06-04 Tim Adye <Tim.Adye (a] cern.ch>
5064 1.1 mrg
5065 1.1 mrg * include/std/any (any::_Manager::_S_access): New static
5066 1.1 mrg function to access the contained value.
5067 1.1 mrg (any::emplace, __any_caster): Use _S_access member of the
5068 1.1 mrg manager type.
5069 1.1 mrg
5070 1.1 mrg 2021-06-04 Jonathan Wakely <jwakely (a] redhat.com>
5071 1.1 mrg
5072 1.1 mrg * doc/xml/manual/status_cxx2020.xml:
5073 1.1 mrg * doc/html/*: Regenerate.
5074 1.1 mrg * include/bits/hashtable.h (__cpp_lib_generic_unordered_lookup):
5075 1.1 mrg Define.
5076 1.1 mrg * include/std/version (__cpp_lib_generic_unordered_lookup):
5077 1.1 mrg Define.
5078 1.1 mrg * testsuite/23_containers/unordered_map/operations/1.cc: Check
5079 1.1 mrg feature test macro.
5080 1.1 mrg * testsuite/23_containers/unordered_set/operations/1.cc:
5081 1.1 mrg Likewise.
5082 1.1 mrg
5083 1.1 mrg 2021-06-03 Patrick Palka <ppalka (a] redhat.com>
5084 1.1 mrg
5085 1.1 mrg * include/bits/ranges_algo.h (__detail::__can_reread_output):
5086 1.1 mrg Factor out this concept from ...
5087 1.1 mrg (__unique_copy_fn::operator()): ... here. Use the concept
5088 1.1 mrg throughout.
5089 1.1 mrg * testsuite/std/ranges/range.cc: Remove now ill-formed use
5090 1.1 mrg of range_value_t on an output_range.
5091 1.1 mrg * testsuite/util/testsuite_iterators.h (output_iterator_wrapper):
5092 1.1 mrg Define value_type, pointer and reference member types to void.
5093 1.1 mrg
5094 1.1 mrg 2021-06-03 Patrick Palka <ppalka (a] redhat.com>
5095 1.1 mrg
5096 1.1 mrg PR libstdc++/100577
5097 1.1 mrg * include/std/ranges (_RangeAdaptorClosure): Document
5098 1.1 mrg _S_has_simple_call_op mechanism.
5099 1.1 mrg (_RangeAdaptor): Document _S_has_simple_extra_args mechanism.
5100 1.1 mrg (__closure_has_simple_call_op): New concept.
5101 1.1 mrg (__adaptor_has_simple_extra_args): Likewise.
5102 1.1 mrg (_Partial<_Adaptor, _Args...>): New partial specialization.
5103 1.1 mrg (_Partial<_Adaptor, _Arg>): Likewise.
5104 1.1 mrg (_Pipe<_Lhs, _Rhs>): Likewise.
5105 1.1 mrg (views::_All::_S_has_simple_call_op): Define to true.
5106 1.1 mrg (views::_Filter::_S_has_simple_extra_args): Likewise.
5107 1.1 mrg (views::_Transform::_S_has_simple_extra_args): Likewise.
5108 1.1 mrg (views::_Take::_S_has_simple_extra_args): Likewise.
5109 1.1 mrg (views::_TakeWhile::_S_has_simple_extra_args): Likewise.
5110 1.1 mrg (views::_Drop::_S_has_simple_extra_args): Likewise.
5111 1.1 mrg (views::_DropWhile::_S_has_simple_extra_args): Likewise.
5112 1.1 mrg (views::_Join::_S_has_simple_call_op): Likewise.
5113 1.1 mrg (views::_Split): Document why we don't define
5114 1.1 mrg _S_has_simple_extra_args to true for this adaptor.
5115 1.1 mrg (views::_Common::_S_has_simple_call_op): Define to true.
5116 1.1 mrg (views::_Reverse::_S_has_simple_call_op): Likewise.
5117 1.1 mrg (views::_Elements::_S_has_simple_call_op): Likewise.
5118 1.1 mrg * testsuite/std/ranges/adaptors/100577.cc: New test.
5119 1.1 mrg
5120 1.1 mrg 2021-06-02 Jonathan Wakely <jwakely (a] redhat.com>
5121 1.1 mrg
5122 1.1 mrg PR libstdc++/100863
5123 1.1 mrg PR libstdc++/65816
5124 1.1 mrg * include/bits/hashtable_policy.h (_Hashtable_ebo_helper):
5125 1.1 mrg Value-initialize subobject.
5126 1.1 mrg * testsuite/23_containers/unordered_map/allocator/default_init.cc:
5127 1.1 mrg Remove XFAIL.
5128 1.1 mrg * testsuite/23_containers/unordered_set/allocator/default_init.cc:
5129 1.1 mrg Remove XFAIL.
5130 1.1 mrg
5131 1.1 mrg 2021-06-02 Jonathan Wakely <jwakely (a] redhat.com>
5132 1.1 mrg
5133 1.1 mrg PR libstdc++/96088
5134 1.1 mrg * testsuite/23_containers/unordered_map/96088.cc: Adjust
5135 1.1 mrg expected number of allocations.
5136 1.1 mrg * testsuite/23_containers/unordered_set/96088.cc: Likewise.
5137 1.1 mrg
5138 1.1 mrg 2021-06-02 Jonathan Wakely <jwakely (a] redhat.com>
5139 1.1 mrg
5140 1.1 mrg * doc/xml/manual/status_cxxis29124.xml: Improve punctuation.
5141 1.1 mrg * doc/xml/manual/status_cxxtr1.xml: Likewise.
5142 1.1 mrg * doc/xml/manual/status_cxxtr24733.xml: Likewise.
5143 1.1 mrg * doc/html/*: Regenerate.
5144 1.1 mrg
5145 1.1 mrg 2021-06-01 Patrick Palka <ppalka (a] redhat.com>
5146 1.1 mrg
5147 1.1 mrg PR c++/65816
5148 1.1 mrg * testsuite/23_containers/deque/allocator/default_init.cc,
5149 1.1 mrg testsuite/23_containers/forward_list/allocator/default_init.cc,
5150 1.1 mrg testsuite/23_containers/list/allocator/default_init.cc,
5151 1.1 mrg testsuite/23_containers/map/allocator/default_init.cc,
5152 1.1 mrg testsuite/23_containers/set/allocator/default_init.cc,
5153 1.1 mrg testsuite/23_containers/vector/allocator/default_init.cc,
5154 1.1 mrg testsuite/23_containers/vector/bool/allocator/default_init.cc:
5155 1.1 mrg Remove xfail.
5156 1.1 mrg
5157 1.1 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
5158 1.1 mrg
5159 1.1 mrg * testsuite/23_containers/unordered_map/96088.cc: Change
5160 1.1 mrg effective target to c++17.
5161 1.1 mrg * testsuite/23_containers/unordered_set/96088.cc: Likewise.
5162 1.1 mrg
5163 1.1 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
5164 1.1 mrg
5165 1.1 mrg * testsuite/22_locale/ctype/is/string/89728_neg.cc: Only test
5166 1.1 mrg isblank for C++11 and later.
5167 1.1 mrg
5168 1.1 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
5169 1.1 mrg
5170 1.1 mrg PR libstdc++/100833
5171 1.1 mrg * include/bits/ranges_base.h (ranges::advance(iter, n, sentinel)):
5172 1.1 mrg Fix return value for no-op case.
5173 1.1 mrg * testsuite/24_iterators/range_operations/advance.cc: Test
5174 1.1 mrg return values of three-argument overload.
5175 1.1 mrg
5176 1.1 mrg 2021-06-01 Jonathan Wakely <jwakely (a] redhat.com>
5177 1.1 mrg
5178 1.1 mrg PR libstdc++/99453
5179 1.1 mrg * python/Makefile.am: Use archive name for printer hook if no
5180 1.1 mrg dynamic library name is available.
5181 1.1 mrg * python/Makefile.in: Regenerate.
5182 1.1 mrg
5183 1.1 mrg 2021-05-30 Gerald Pfeifer <gerald (a] pfeifer.com>
5184 1.1 mrg
5185 1.1 mrg * doc/xml/manual/abi.xml: Remove dead reference to "Intel
5186 1.1 mrg Compilers for Linux: Compatibility with GNU Compilers" article.
5187 1.1 mrg * doc/html/manual/abi.html: Regenerate.
5188 1.1 mrg
5189 1.1 mrg 2021-05-26 Franois Dumont <fdumont (a] gcc.gnu.org>
5190 1.1 mrg
5191 1.1 mrg * include/debug/formatter.h
5192 1.1 mrg (_Error_formatter::_Parameter::_Named): New.
5193 1.1 mrg (_Error_formatter::_Parameter::_Type): Inherit latter.
5194 1.1 mrg (_Error_formatter::_Parameter::_M_integer): Likewise.
5195 1.1 mrg (_Error_formatter::_Parameter::_M_string): Likewise.
5196 1.1 mrg * src/c++11/debug.cc: Include <cstring>.
5197 1.1 mrg (_Print_func_t): New.
5198 1.1 mrg (print_raw(PrintContext&, const char*, ptrdiff_t)): New.
5199 1.1 mrg (print_word): Use '%.*s' format in fprintf to render only expected number of chars.
5200 1.1 mrg (pretty_print(PrintContext&, const char*, _Print_func_t)): New.
5201 1.1 mrg (print_type): Rename in...
5202 1.1 mrg (print_type_info): ...this. Use pretty_print.
5203 1.1 mrg (print_address, print_integer): New.
5204 1.1 mrg (print_named_name, print_iterator_constness, print_iterator_state): New.
5205 1.1 mrg (print_iterator_seq_type): New.
5206 1.1 mrg (print_named_field, print_type_field, print_instance_field, print_iterator_field): New.
5207 1.1 mrg (print_field): Use latters.
5208 1.1 mrg (print_quoted_named_name, print_type_type, print_type, print_instance): New.
5209 1.1 mrg (print_string(PrintContext&, const char*, const _Parameter*, size_t)):
5210 1.1 mrg Change signature to...
5211 1.1 mrg (print_string(PrintContext&, const char*, ptrdiff_t, const _Parameter*, size_t)):
5212 1.1 mrg ...this and adapt. Remove intermediate buffer to render input string.
5213 1.1 mrg (print_string(PrintContext&, const char*, ptrdiff_t)): New.
5214 1.1 mrg
5215 1.1 mrg 2021-05-26 Jonathan Wakely <jwakely (a] redhat.com>
5216 1.1 mrg
5217 1.1 mrg PR libstdc++/100768
5218 1.1 mrg * include/bits/ranges_base.h (advance, distance, next, prev):
5219 1.1 mrg Replace function templates with function objects.
5220 1.1 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
5221 1.1 mrg Adjust for changes to function objects.
5222 1.1 mrg * testsuite/std/ranges/adaptors/elements.cc: Add using
5223 1.1 mrg declarations for names from namespace ranges.
5224 1.1 mrg * testsuite/std/ranges/adaptors/transform.cc: Likewise.
5225 1.1 mrg * testsuite/24_iterators/range_operations/100768.cc: New test.
5226 1.1 mrg
5227 1.1 mrg 2021-05-24 Franois Dumont <fdumont (a] gcc.gnu.org>
5228 1.1 mrg
5229 1.1 mrg PR libstdc++/96088
5230 1.1 mrg * include/bits/hashtable_policy.h (_Select2nd): New.
5231 1.1 mrg (_NodeBuilder<>): New.
5232 1.1 mrg (_ReuseOrAllocNode<>::operator()): Use variadic template args.
5233 1.1 mrg (_AllocNode<>::operator()): Likewise.
5234 1.1 mrg * include/bits/hashtable.h
5235 1.1 mrg (_Hashtable<>::__node_builder_t): New.
5236 1.1 mrg (_Hashtable<>::_M_insert_unique<>(_Kt&&, _Arg&&, const _NodeGenerator&)):
5237 1.1 mrg New.
5238 1.1 mrg (_Hashtable<>::_S_forward_key): New.
5239 1.1 mrg (_Hashtable<>::_M_insert): Use latter.
5240 1.1 mrg (_Hashtable<>::_M_insert(const_iterator, _Arg&&, const _NodeGenerator&, false_type)):
5241 1.1 mrg Instantiate node first, compute hash code second.
5242 1.1 mrg * testsuite/23_containers/unordered_map/96088.cc: New test.
5243 1.1 mrg * testsuite/23_containers/unordered_multimap/96088.cc: New test.
5244 1.1 mrg * testsuite/23_containers/unordered_multiset/96088.cc: New test.
5245 1.1 mrg * testsuite/23_containers/unordered_set/96088.cc: New test.
5246 1.1 mrg * testsuite/util/replacement_memory_operators.h
5247 1.1 mrg (counter::_M_increment): New.
5248 1.1 mrg (counter::_M_decrement): New.
5249 1.1 mrg (counter::reset()): New.
5250 1.1 mrg
5251 1.1 mrg 2021-05-24 Patrick Palka <ppalka (a] redhat.com>
5252 1.1 mrg
5253 1.1 mrg PR libstdc++/100479
5254 1.1 mrg * include/std/ranges (__detail::__non_propagating_cache): Move
5255 1.1 mrg definition up to before that of _CachedPosition. Make base
5256 1.1 mrg class _Optional_base protected instead of private. Add const
5257 1.1 mrg overload for operator*.
5258 1.1 mrg (__detail::_CachedPosition): Rewrite the partial specialization
5259 1.1 mrg for forward ranges as a derived class of __non_propagating_cache.
5260 1.1 mrg Remove the size constraint on the partial specialization for
5261 1.1 mrg random access ranges. Add copy/move/copy-assignment/move-assignment
5262 1.1 mrg members to the offset partial specialization for random
5263 1.1 mrg access ranges that propagate the cached value but additionally
5264 1.1 mrg invalidate it in the source object on move.
5265 1.1 mrg * testsuite/std/ranges/adaptors/100479.cc: New test.
5266 1.1 mrg
5267 1.1 mrg 2021-05-24 Jonathan Wakely <jwakely (a] redhat.com>
5268 1.1 mrg
5269 1.1 mrg * testsuite/25_algorithms/inplace_merge/constrained.cc: Qualify
5270 1.1 mrg call to ranges::next.
5271 1.1 mrg * testsuite/25_algorithms/is_sorted/constrained.cc: Likewise.
5272 1.1 mrg * testsuite/25_algorithms/is_sorted_until/constrained.cc:
5273 1.1 mrg Likewise.
5274 1.1 mrg * testsuite/25_algorithms/swap_ranges/1.cc: Qualify call to
5275 1.1 mrg swap_ranges.
5276 1.1 mrg
5277 1.1 mrg 2021-05-21 Patrick Palka <ppalka (a] redhat.com>
5278 1.1 mrg
5279 1.1 mrg PR libstdc++/100606
5280 1.1 mrg * include/std/ranges (drop_while_view::begin): Assert the
5281 1.1 mrg precondition added by LWG 3490.
5282 1.1 mrg
5283 1.1 mrg 2021-05-21 Patrick Palka <ppalka (a] redhat.com>
5284 1.1 mrg
5285 1.1 mrg PR libstdc++/100690
5286 1.1 mrg * include/std/ranges (iota_view::_Sentinel::_M_distance_from):
5287 1.1 mrg Split out this member function from ...
5288 1.1 mrg (iota_view::_Sentinel::operator-): ... here, for sake of access
5289 1.1 mrg control.
5290 1.1 mrg * testsuite/std/ranges/iota/iota_view.cc (test05): New test.
5291 1.1 mrg
5292 1.1 mrg 2021-05-20 Jonathan Wakely <jwakely (a] redhat.com>
5293 1.1 mrg
5294 1.1 mrg * include/bits/random.tcc (__representable_as_double)
5295 1.1 mrg (__p1_representable_as_double): Add "" to static asserts.
5296 1.1 mrg
5297 1.1 mrg 2021-05-20 Jonathan Wakely <jwakely (a] redhat.com>
5298 1.1 mrg
5299 1.1 mrg PR libstdc++/100676
5300 1.1 mrg * include/bits/c++config (__glibcxx_assert_1): Rename to ...
5301 1.1 mrg (__glibcxx_constexpr_assert): ... this.
5302 1.1 mrg (__glibcxx_assert_impl): Use __glibcxx_constexpr_assert.
5303 1.1 mrg (__glibcxx_assert): Define as either __glibcxx_constexpr_assert
5304 1.1 mrg or __glibcxx_assert_impl.
5305 1.1 mrg (__glibcxx_assert_2): Remove
5306 1.1 mrg * include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_AT_F): Use
5307 1.1 mrg __glibcxx_constexpr_assert instead of __glibcxx_assert_1.
5308 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
5309 1.1 mrg Adjust expected error.
5310 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
5311 1.1 mrg Likewise.
5312 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
5313 1.1 mrg Likewise.
5314 1.1 mrg Likewise.
5315 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
5316 1.1 mrg Likewise.
5317 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
5318 1.1 mrg Likewise.
5319 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
5320 1.1 mrg Likewise.
5321 1.1 mrg * testsuite/23_containers/span/back_neg.cc: Likewise.
5322 1.1 mrg * testsuite/23_containers/span/front_neg.cc: Likewise.
5323 1.1 mrg * testsuite/23_containers/span/index_op_neg.cc: Likewise.
5324 1.1 mrg
5325 1.1 mrg 2021-05-20 Patrick Palka <ppalka (a] redhat.com>
5326 1.1 mrg
5327 1.1 mrg PR libstdc++/100639
5328 1.1 mrg * include/bits/stl_iterator.h (reverse_iterator::difference_type):
5329 1.1 mrg In C++20 mode, define in terms of iter_difference_t as per P0896R4.
5330 1.1 mrg (reverse_iterator::reference): Likewise, but with iter_reference_t.
5331 1.1 mrg (reverse_iterator::value_type): Likewise, but with iter_value_t.
5332 1.1 mrg * testsuite/std/ranges/adaptors/reverse.cc (test08): New test.
5333 1.1 mrg * testsuite/24_iterators/reverse_iterator/100639.cc: New test.
5334 1.1 mrg
5335 1.1 mrg 2021-05-20 Joern Rennecke <joern.rennecke (a] riscy-ip.com>
5336 1.1 mrg
5337 1.1 mrg PR libstdc++/100361
5338 1.1 mrg * include/std/charconv (to_chars): Hide the overloads for
5339 1.1 mrg floating-point types for 16 bit targets.
5340 1.1 mrg * src/c++17/floating_to_chars.cc: Don't compile for 16 bit targets.
5341 1.1 mrg * testsuite/20_util/to_chars/double.cc: Run this test only on
5342 1.1 mrg size32plus targets.
5343 1.1 mrg * testsuite/20_util/to_chars/float.cc: Likewise.
5344 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: Likewise.
5345 1.1 mrg
5346 1.1 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
5347 1.1 mrg
5348 1.1 mrg PR libstdc++/100631
5349 1.1 mrg * include/std/ranges (elements_view::_Sentinel::operator-): Use
5350 1.1 mrg _M_distance_from in the other operator- overload too.
5351 1.1 mrg * testsuite/std/ranges/adaptors/elements.cc (test06): Augment test.
5352 1.1 mrg
5353 1.1 mrg 2021-05-18 Thomas Schwinge <thomas (a] codesourcery.com>
5354 1.1 mrg
5355 1.1 mrg * testsuite/lib/prune.exp: Add note about 'dg-note'.
5356 1.1 mrg
5357 1.1 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
5358 1.1 mrg
5359 1.1 mrg PR libstdc++/100475
5360 1.1 mrg * include/std/ranges (__box::__box): Use non-list-initialization
5361 1.1 mrg in member initializer list of in-place constructor of the
5362 1.1 mrg partial specialization for semiregular types.
5363 1.1 mrg (__box::operator->): Use std::__addressof.
5364 1.1 mrg * testsuite/std/ranges/adaptors/detail/semiregular_box.cc
5365 1.1 mrg (test02): New test.
5366 1.1 mrg * testsuite/std/ranges/single_view.cc (test04): New test.
5367 1.1 mrg
5368 1.1 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
5369 1.1 mrg
5370 1.1 mrg PR libstdc++/100621
5371 1.1 mrg * include/std/ranges (reverse_view::_S_needs_cached_begin):
5372 1.1 mrg Set to true if the underlying non-common random-access range
5373 1.1 mrg doesn't have a sized sentinel.
5374 1.1 mrg
5375 1.1 mrg 2021-05-18 Patrick Palka <ppalka (a] redhat.com>
5376 1.1 mrg
5377 1.1 mrg PR libstdc++/100631
5378 1.1 mrg * include/std/ranges (elements_view::_Iterator): Also befriend
5379 1.1 mrg _Sentinel<!_Const>.
5380 1.1 mrg (elements_view::_Sentinel::_M_equal): Templatize.
5381 1.1 mrg (elements_view::_Sentinel::_M_distance_from): Split out from ...
5382 1.1 mrg (elements_view::_Sentinel::operator-): ... here. Depend on
5383 1.1 mrg _Base2 instead of _Base in the return type.
5384 1.1 mrg * testsuite/std/ranges/adaptors/elements.cc (test06, test07):
5385 1.1 mrg New tests.
5386 1.1 mrg
5387 1.1 mrg 2021-05-17 Thomas Rodgers <rodgert (a] twrodgers.com>
5388 1.1 mrg
5389 1.1 mrg * include/bits/atomic_wait.h (__waiter::_M_do_wait_v): loop
5390 1.1 mrg until value change observed.
5391 1.1 mrg (__waiter_base::_M_laundered): New member.
5392 1.1 mrg (__waiter_base::_M_notify): Check _M_laundered to determine
5393 1.1 mrg whether to wake one or all.
5394 1.1 mrg (__detail::__atomic_compare): Return true if call to
5395 1.1 mrg __builtin_memcmp() == 0.
5396 1.1 mrg (__waiter_base::_S_do_spin_v): Adjust predicate.
5397 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/100334.cc: New
5398 1.1 mrg test.
5399 1.1 mrg
5400 1.1 mrg 2021-05-17 Jonathan Wakely <jwakely (a] redhat.com>
5401 1.1 mrg
5402 1.1 mrg PR libstdc++/100630
5403 1.1 mrg * include/experimental/bits/fs_path.h (__is_constructible_from):
5404 1.1 mrg Test construction from a const lvalue, not an rvalue.
5405 1.1 mrg * testsuite/27_io/filesystem/path/construct/100630.cc: New test.
5406 1.1 mrg * testsuite/experimental/filesystem/path/construct/100630.cc:
5407 1.1 mrg New test.
5408 1.1 mrg
5409 1.1 mrg 2021-05-17 Antony Polukhin <antoshkka (a] gmail.com>
5410 1.1 mrg
5411 1.1 mrg PR libstdc++/89728
5412 1.1 mrg * include/bits/locale_facets.h (ctype<basic_string<C,T,A>>):
5413 1.1 mrg Declare (but do not define) partial specialization.
5414 1.1 mrg * testsuite/22_locale/ctype/is/string/89728_neg.cc: New test.
5415 1.1 mrg
5416 1.1 mrg 2021-05-17 Jonathan Wakely <jwakely (a] redhat.com>
5417 1.1 mrg
5418 1.1 mrg * include/std/thread (jthread::_S_create): Fix static assert
5419 1.1 mrg message.
5420 1.1 mrg * testsuite/30_threads/jthread/95989.cc: Re-enable test.
5421 1.1 mrg * testsuite/30_threads/jthread/jthread.cc: Do not require
5422 1.1 mrg pthread effective target.
5423 1.1 mrg * testsuite/30_threads/jthread/2.cc: Moved to...
5424 1.1 mrg * testsuite/30_threads/jthread/version.cc: ...here.
5425 1.1 mrg
5426 1.1 mrg 2021-05-17 Jonathan Wakely <jwakely (a] redhat.com>
5427 1.1 mrg
5428 1.1 mrg * doc/Makefile.am: Simplify doxygen recipes and use --latex_cmd.
5429 1.1 mrg * doc/Makefile.in: Regenerate.
5430 1.1 mrg * doc/doxygen/user.cfg.in (LATEX_CMD_NAME): Add placeholder
5431 1.1 mrg value.
5432 1.1 mrg * scripts/run_doxygen (print_usage): Always print to stdout and
5433 1.1 mrg do not exit.
5434 1.1 mrg (fail): New function for exiting on error.
5435 1.1 mrg (parse_options): Handle --latex_cmd. Do not treat --help the
5436 1.1 mrg same as errors. Simplify handling of required arguments.
5437 1.1 mrg
5438 1.1 mrg 2021-05-12 Jonathan Wakely <jwakely (a] redhat.com>
5439 1.1 mrg
5440 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
5441 1.1 mrg Increase dg-timeout-factor to 4. Fix -Wunused-parameter
5442 1.1 mrg warnings. Replace bitwise AND with logical AND in loop
5443 1.1 mrg condition.
5444 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
5445 1.1 mrg Replace bitwise AND with logical AND in loop condition.
5446 1.1 mrg * testsuite/util/pstl/test_utils.h: Remove unused parameter
5447 1.1 mrg names.
5448 1.1 mrg
5449 1.1 mrg 2021-05-11 Patrick Palka <ppalka (a] redhat.com>
5450 1.1 mrg
5451 1.1 mrg * src/c++17/ryu/LOCAL_PATCHES: Update.
5452 1.1 mrg * src/c++17/ryu/ryu_generic_128.h: Remove extern "C".
5453 1.1 mrg Remove declarations for never-defined functions.
5454 1.1 mrg * testsuite/20_util/to_chars/4.cc: New test.
5455 1.1 mrg
5456 1.1 mrg 2021-05-11 Jonathan Wakely <jwakely (a] redhat.com>
5457 1.1 mrg
5458 1.1 mrg * testsuite/20_util/headers/memory/synopsis.cc: Define C++98
5459 1.1 mrg alternative for macro.
5460 1.1 mrg * testsuite/20_util/shared_ptr/creation/99006.cc: Add effective
5461 1.1 mrg target keyword.
5462 1.1 mrg * testsuite/25_algorithms/copy/debug/99402.cc: Avoid C++11
5463 1.1 mrg syntax.
5464 1.1 mrg
5465 1.1 mrg 2021-05-11 Jonathan Wakely <jwakely (a] redhat.com>
5466 1.1 mrg
5467 1.1 mrg * include/bits/allocator.h (allocator<void>) [C++20]: Add
5468 1.1 mrg missing noexcept to constructor. Restore missing POCMA and
5469 1.1 mrg is_always_equal_traits.
5470 1.1 mrg [C++17]: Make construct and destroy members private and
5471 1.1 mrg declare allocator_traits as a friend.
5472 1.1 mrg * include/bits/memoryfwd.h (allocator_traits): Declare.
5473 1.1 mrg * include/ext/malloc_allocator.h (malloc_allocator::allocate):
5474 1.1 mrg Add nodiscard attribute. Add static assertion for LWG 3307.
5475 1.1 mrg * include/ext/new_allocator.h (new_allocator::allocate): Add
5476 1.1 mrg static assertion for LWG 3307.
5477 1.1 mrg * testsuite/20_util/allocator/void.cc: Check that converting
5478 1.1 mrg constructor is noexcept. Check for propagation traits and
5479 1.1 mrg size_type and difference_type. Check that pointer and
5480 1.1 mrg const_pointer are gone in C++20.
5481 1.1 mrg
5482 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5483 1.1 mrg
5484 1.1 mrg * include/std/stop_token: Remove TODO comment.
5485 1.1 mrg
5486 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5487 1.1 mrg
5488 1.1 mrg * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)):
5489 1.1 mrg Initialize a non-reference deleter from an rvalue, as per LWG
5490 1.1 mrg 3548.
5491 1.1 mrg (__shared_ptr::_UniqCompatible): Add missing constraint.
5492 1.1 mrg * testsuite/20_util/shared_ptr/cons/lwg3548.cc: New test.
5493 1.1 mrg * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Check
5494 1.1 mrg constraints.
5495 1.1 mrg
5496 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5497 1.1 mrg
5498 1.1 mrg * testsuite/17_intro/headers/c++2017/all_attributes.cc: Remove
5499 1.1 mrg -std=gnu++17 from dg-options directive.
5500 1.1 mrg * testsuite/17_intro/headers/c++2017/all_no_exceptions.cc:
5501 1.1 mrg Likewise.
5502 1.1 mrg * testsuite/17_intro/headers/c++2017/all_pedantic_errors.cc:
5503 1.1 mrg Likewise.
5504 1.1 mrg * testsuite/17_intro/headers/c++2017/operator_names.cc:
5505 1.1 mrg Likewise.
5506 1.1 mrg * testsuite/17_intro/headers/c++2017/parallel_mode.cc: Likewise.
5507 1.1 mrg * testsuite/17_intro/headers/c++2017/stdc++.cc: Likewise.
5508 1.1 mrg * testsuite/17_intro/headers/c++2017/stdc++_multiple_inclusion.cc:
5509 1.1 mrg Likewise.
5510 1.1 mrg * testsuite/18_support/aligned_alloc/aligned_alloc.cc: Likewise.
5511 1.1 mrg * testsuite/18_support/byte/81076.cc: Likewise.
5512 1.1 mrg * testsuite/18_support/byte/global_neg.cc: Likewise.
5513 1.1 mrg * testsuite/18_support/byte/ops.cc: Likewise.
5514 1.1 mrg * testsuite/18_support/byte/requirements.cc: Likewise.
5515 1.1 mrg * testsuite/18_support/headers/cfloat/values_c++17.cc: Likewise.
5516 1.1 mrg * testsuite/18_support/launder/1.cc: Likewise.
5517 1.1 mrg * testsuite/18_support/launder/nodiscard.cc: Likewise.
5518 1.1 mrg * testsuite/18_support/launder/requirements.cc: Likewise.
5519 1.1 mrg * testsuite/18_support/launder/requirements_neg.cc: Likewise.
5520 1.1 mrg * testsuite/18_support/new_aligned.cc: Likewise.
5521 1.1 mrg * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
5522 1.1 mrg Likewise.
5523 1.1 mrg * testsuite/19_diagnostics/error_code/is_error_code_v.cc:
5524 1.1 mrg Likewise.
5525 1.1 mrg * testsuite/19_diagnostics/error_condition/hash.cc: Likewise.
5526 1.1 mrg * testsuite/20_util/addressof/requirements/constexpr.cc:
5527 1.1 mrg Likewise.
5528 1.1 mrg * testsuite/20_util/as_const/1.cc: Likewise.
5529 1.1 mrg * testsuite/20_util/as_const/rvalue_neg.cc: Likewise.
5530 1.1 mrg * testsuite/20_util/bind/83427.cc: Likewise.
5531 1.1 mrg * testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
5532 1.1 mrg * testsuite/20_util/bool_constant/requirements.cc: Likewise.
5533 1.1 mrg * testsuite/20_util/duration/arithmetic/constexpr_c++17.cc:
5534 1.1 mrg Likewise.
5535 1.1 mrg * testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
5536 1.1 mrg Likewise.
5537 1.1 mrg * testsuite/20_util/duration_cast/rounding.cc: Likewise.
5538 1.1 mrg * testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
5539 1.1 mrg Likewise.
5540 1.1 mrg * testsuite/20_util/from_chars/1_neg.cc: Likewise.
5541 1.1 mrg * testsuite/20_util/from_chars/requirements.cc: Likewise.
5542 1.1 mrg * testsuite/20_util/function/91456.cc: Likewise.
5543 1.1 mrg * testsuite/20_util/function/cons/deduction.cc: Likewise.
5544 1.1 mrg * testsuite/20_util/function_objects/83607.cc: Likewise.
5545 1.1 mrg * testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
5546 1.1 mrg * testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise.
5547 1.1 mrg * testsuite/20_util/function_objects/not_fn/1.cc: Likewise.
5548 1.1 mrg * testsuite/20_util/function_objects/not_fn/87538.cc: Likewise.
5549 1.1 mrg * testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc:
5550 1.1 mrg Likewise.
5551 1.1 mrg * testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc:
5552 1.1 mrg Likewise.
5553 1.1 mrg * testsuite/20_util/has_unique_object_representations/value.cc:
5554 1.1 mrg Likewise.
5555 1.1 mrg * testsuite/20_util/hash/nullptr.cc: Likewise.
5556 1.1 mrg * testsuite/20_util/in_place/requirements.cc: Likewise.
5557 1.1 mrg * testsuite/20_util/is_aggregate/incomplete_neg.cc: Likewise.
5558 1.1 mrg * testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
5559 1.1 mrg Likewise.
5560 1.1 mrg * testsuite/20_util/is_aggregate/requirements/typedefs.cc:
5561 1.1 mrg Likewise.
5562 1.1 mrg * testsuite/20_util/is_aggregate/value.cc: Likewise.
5563 1.1 mrg * testsuite/20_util/is_invocable/83395.cc: Likewise.
5564 1.1 mrg * testsuite/20_util/is_invocable/91456.cc: Likewise.
5565 1.1 mrg * testsuite/20_util/is_invocable/requirements/explicit_instantiation.cc:
5566 1.1 mrg Likewise.
5567 1.1 mrg * testsuite/20_util/is_invocable/requirements/typedefs.cc:
5568 1.1 mrg Likewise.
5569 1.1 mrg * testsuite/20_util/is_invocable/value.cc: Likewise.
5570 1.1 mrg * testsuite/20_util/is_literal_type/deprecated-1z.cc: Likewise.
5571 1.1 mrg * testsuite/20_util/is_nothrow_constructible/94003.cc: Likewise.
5572 1.1 mrg * testsuite/20_util/is_nothrow_invocable/83395.cc: Likewise.
5573 1.1 mrg * testsuite/20_util/is_nothrow_invocable/requirements/explicit_instantiation.cc:
5574 1.1 mrg Likewise.
5575 1.1 mrg * testsuite/20_util/is_nothrow_invocable/requirements/typedefs.cc: Likewise.
5576 1.1 mrg * testsuite/20_util/is_nothrow_invocable/value.cc: Likewise.
5577 1.1 mrg * testsuite/20_util/is_nothrow_swappable/requirements/explicit_instantiation.cc:
5578 1.1 mrg Likewise.
5579 1.1 mrg * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
5580 1.1 mrg Likewise.
5581 1.1 mrg * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
5582 1.1 mrg * testsuite/20_util/is_nothrow_swappable_with/requirements/explicit_instantiation.cc:
5583 1.1 mrg Likewise.
5584 1.1 mrg * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
5585 1.1 mrg Likewise.
5586 1.1 mrg * testsuite/20_util/is_nothrow_swappable_with/value.cc:
5587 1.1 mrg Likewise.
5588 1.1 mrg * testsuite/20_util/is_swappable/requirements/explicit_instantiation.cc:
5589 1.1 mrg Likewise.
5590 1.1 mrg * testsuite/20_util/is_swappable/requirements/typedefs.cc:
5591 1.1 mrg Likewise.
5592 1.1 mrg * testsuite/20_util/is_swappable/value.cc: Likewise.
5593 1.1 mrg * testsuite/20_util/is_swappable_with/requirements/explicit_instantiation.cc:
5594 1.1 mrg Likewise.
5595 1.1 mrg * testsuite/20_util/is_swappable_with/requirements/typedefs.cc:
5596 1.1 mrg Likewise.
5597 1.1 mrg * testsuite/20_util/is_swappable_with/value.cc: Likewise.
5598 1.1 mrg * testsuite/20_util/logical_traits/83134.cc: Likewise.
5599 1.1 mrg * testsuite/20_util/logical_traits/requirements/explicit_instantiation.cc:
5600 1.1 mrg Likewise.
5601 1.1 mrg * testsuite/20_util/logical_traits/requirements/typedefs.cc:
5602 1.1 mrg Likewise.
5603 1.1 mrg * testsuite/20_util/logical_traits/value.cc: Likewise.
5604 1.1 mrg * testsuite/20_util/pair/cons/deduction.cc: Likewise.
5605 1.1 mrg * testsuite/20_util/pair/swap_cxx17.cc: Likewise.
5606 1.1 mrg * testsuite/20_util/ratio/requirements/ratio_equal_v.cc:
5607 1.1 mrg Likewise.
5608 1.1 mrg * testsuite/20_util/reference_wrapper/83427.cc: Likewise.
5609 1.1 mrg * testsuite/20_util/reference_wrapper/deduction.cc: Likewise.
5610 1.1 mrg * testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
5611 1.1 mrg * testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise.
5612 1.1 mrg * testsuite/20_util/shared_ptr/requirements/weak_type.cc:
5613 1.1 mrg Likewise.
5614 1.1 mrg * testsuite/20_util/time_point/arithmetic/constexpr.cc:
5615 1.1 mrg Likewise.
5616 1.1 mrg * testsuite/20_util/time_point_cast/rounding.cc: Likewise.
5617 1.1 mrg * testsuite/20_util/to_chars/3.cc: Likewise.
5618 1.1 mrg * testsuite/20_util/to_chars/chars_format.cc: Likewise.
5619 1.1 mrg * testsuite/20_util/to_chars/lwg3266.cc: Likewise.
5620 1.1 mrg * testsuite/20_util/to_chars/requirements.cc: Likewise.
5621 1.1 mrg * testsuite/20_util/tuple/78939.cc: Likewise.
5622 1.1 mrg * testsuite/20_util/tuple/apply/1.cc: Likewise.
5623 1.1 mrg * testsuite/20_util/tuple/apply/2.cc: Likewise.
5624 1.1 mrg * testsuite/20_util/tuple/cons/deduction.cc: Likewise.
5625 1.1 mrg * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
5626 1.1 mrg * testsuite/20_util/tuple/make_from_tuple/2.cc: Likewise.
5627 1.1 mrg * testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
5628 1.1 mrg * testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
5629 1.1 mrg * testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise.
5630 1.1 mrg * testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
5631 1.1 mrg Likewise.
5632 1.1 mrg * testsuite/20_util/variable_templates_for_traits.cc: Likewise.
5633 1.1 mrg * testsuite/20_util/void_t/1.cc: Likewise.
5634 1.1 mrg * testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise.
5635 1.1 mrg * testsuite/24_iterators/container_access.cc: Likewise.
5636 1.1 mrg * testsuite/24_iterators/headers/iterator/range_access_c++17.cc:
5637 1.1 mrg Likewise.
5638 1.1 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++17.cc:
5639 1.1 mrg Likewise.
5640 1.1 mrg * testsuite/24_iterators/range_access/range_access_cpp17.cc:
5641 1.1 mrg Likewise.
5642 1.1 mrg * testsuite/24_iterators/range_access/range_access_cpp17_neg.cc:
5643 1.1 mrg Likewise.
5644 1.1 mrg * testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
5645 1.1 mrg * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc:
5646 1.1 mrg Likewise.
5647 1.1 mrg * testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
5648 1.1 mrg * testsuite/26_numerics/headers/cmath/special_functions_global.cc:
5649 1.1 mrg Likewise.
5650 1.1 mrg * testsuite/26_numerics/lcm/1.cc: Likewise.
5651 1.1 mrg * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
5652 1.1 mrg * testsuite/26_numerics/valarray/deduction.cc: Likewise.
5653 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/lwg2221.cc:
5654 1.1 mrg Likewise.
5655 1.1 mrg * testsuite/27_io/manipulators/standard/char/quoted_sv.cc:
5656 1.1 mrg Likewise.
5657 1.1 mrg * testsuite/27_io/manipulators/standard/wchar_t/quoted_sv.cc:
5658 1.1 mrg Likewise.
5659 1.1 mrg * testsuite/27_io/types/4.cc: Likewise.
5660 1.1 mrg * testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
5661 1.1 mrg * testsuite/libstdc++-prettyprinters/91997.cc: Likewise.
5662 1.1 mrg * testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
5663 1.1 mrg
5664 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5665 1.1 mrg
5666 1.1 mrg * testsuite/20_util/function_objects/searchers.cc: Remove
5667 1.1 mrg -std=gnu++17 from dg-options directive.
5668 1.1 mrg * testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc:
5669 1.1 mrg Likewise.
5670 1.1 mrg * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
5671 1.1 mrg Likewise.
5672 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc:
5673 1.1 mrg Likewise.
5674 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94831.cc:
5675 1.1 mrg Likewise.
5676 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc:
5677 1.1 mrg Likewise.
5678 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
5679 1.1 mrg Likewise.
5680 1.1 mrg * testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
5681 1.1 mrg Likewise.
5682 1.1 mrg * testsuite/25_algorithms/clamp/1.cc: Likewise.
5683 1.1 mrg * testsuite/25_algorithms/clamp/2.cc: Likewise.
5684 1.1 mrg * testsuite/25_algorithms/clamp/constexpr.cc: Likewise.
5685 1.1 mrg * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/1.cc:
5686 1.1 mrg Likewise.
5687 1.1 mrg * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/pod.cc:
5688 1.1 mrg Likewise.
5689 1.1 mrg * testsuite/25_algorithms/for_each/for_each_n.cc: Likewise.
5690 1.1 mrg * testsuite/25_algorithms/for_each/for_each_n_debug.cc:
5691 1.1 mrg Likewise.
5692 1.1 mrg * testsuite/25_algorithms/sample/1.cc: Likewise.
5693 1.1 mrg * testsuite/25_algorithms/sample/2.cc: Likewise.
5694 1.1 mrg * testsuite/25_algorithms/sample/3.cc: Likewise.
5695 1.1 mrg * testsuite/25_algorithms/sample/81221.cc: Likewise.
5696 1.1 mrg * testsuite/25_algorithms/search/searcher.cc: Likewise.
5697 1.1 mrg * testsuite/26_numerics/exclusive_scan/1.cc: Likewise.
5698 1.1 mrg * testsuite/26_numerics/inclusive_scan/1.cc: Likewise.
5699 1.1 mrg * testsuite/26_numerics/reduce/1.cc: Likewise.
5700 1.1 mrg * testsuite/26_numerics/reduce/2.cc: Likewise.
5701 1.1 mrg * testsuite/26_numerics/transform_exclusive_scan/1.cc: Likewise.
5702 1.1 mrg * testsuite/26_numerics/transform_inclusive_scan/1.cc: Likewise.
5703 1.1 mrg * testsuite/26_numerics/transform_reduce/1.cc: Likewise.
5704 1.1 mrg
5705 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5706 1.1 mrg
5707 1.1 mrg * testsuite/23_containers/array/cons/deduction.cc: Remove
5708 1.1 mrg -std=gnu++17 from dg-options directive.
5709 1.1 mrg * testsuite/23_containers/array/cons/deduction_neg.cc: Likewise.
5710 1.1 mrg * testsuite/23_containers/array/element_access/constexpr_c++17.cc:
5711 1.1 mrg Likewise.
5712 1.1 mrg * testsuite/23_containers/array/requirements/constexpr_iter.cc:
5713 1.1 mrg Likewise.
5714 1.1 mrg * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
5715 1.1 mrg Likewise.
5716 1.1 mrg * testsuite/23_containers/deque/cons/deduction.cc: Likewise.
5717 1.1 mrg * testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
5718 1.1 mrg Likewise.
5719 1.1 mrg * testsuite/23_containers/forward_list/cons/deduction.cc:
5720 1.1 mrg Likewise.
5721 1.1 mrg * testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc:
5722 1.1 mrg Likewise.
5723 1.1 mrg * testsuite/23_containers/list/cons/deduction.cc: Likewise.
5724 1.1 mrg * testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc:
5725 1.1 mrg Likewise.
5726 1.1 mrg * testsuite/23_containers/map/cons/deduction.cc: Likewise.
5727 1.1 mrg * testsuite/23_containers/map/modifiers/extract.cc: Likewise.
5728 1.1 mrg * testsuite/23_containers/map/modifiers/insert/83226.cc:
5729 1.1 mrg Likewise.
5730 1.1 mrg * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
5731 1.1 mrg Likewise.
5732 1.1 mrg * testsuite/23_containers/map/modifiers/merge.cc: Likewise.
5733 1.1 mrg * testsuite/23_containers/map/modifiers/try_emplace/1.cc:
5734 1.1 mrg Likewise.
5735 1.1 mrg * testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
5736 1.1 mrg * testsuite/23_containers/multimap/modifiers/extract.cc:
5737 1.1 mrg Likewise.
5738 1.1 mrg * testsuite/23_containers/multimap/modifiers/merge.cc: Likewise.
5739 1.1 mrg * testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
5740 1.1 mrg * testsuite/23_containers/multiset/modifiers/extract.cc:
5741 1.1 mrg Likewise.
5742 1.1 mrg * testsuite/23_containers/multiset/modifiers/merge.cc: Likewise.
5743 1.1 mrg * testsuite/23_containers/priority_queue/deduction.cc: Likewise.
5744 1.1 mrg * testsuite/23_containers/queue/deduction.cc: Likewise.
5745 1.1 mrg * testsuite/23_containers/queue/members/emplace_cxx17_return.cc:
5746 1.1 mrg Likewise.
5747 1.1 mrg * testsuite/23_containers/set/cons/deduction.cc: Likewise.
5748 1.1 mrg * testsuite/23_containers/set/modifiers/extract.cc: Likewise.
5749 1.1 mrg * testsuite/23_containers/set/modifiers/merge.cc: Likewise.
5750 1.1 mrg * testsuite/23_containers/set/modifiers/node_swap.cc: Likewise.
5751 1.1 mrg * testsuite/23_containers/stack/deduction.cc: Likewise.
5752 1.1 mrg * testsuite/23_containers/stack/members/emplace_cxx17_return.cc:
5753 1.1 mrg Likewise.
5754 1.1 mrg * testsuite/23_containers/unordered_map/cons/deduction.cc:
5755 1.1 mrg Likewise.
5756 1.1 mrg * testsuite/23_containers/unordered_map/modifiers/extract.cc:
5757 1.1 mrg Likewise.
5758 1.1 mrg * testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
5759 1.1 mrg Likewise.
5760 1.1 mrg * testsuite/23_containers/unordered_map/modifiers/merge.cc:
5761 1.1 mrg Likewise.
5762 1.1 mrg * testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
5763 1.1 mrg Likewise.
5764 1.1 mrg * testsuite/23_containers/unordered_multimap/cons/deduction.cc:
5765 1.1 mrg Likewise.
5766 1.1 mrg * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
5767 1.1 mrg Likewise.
5768 1.1 mrg * testsuite/23_containers/unordered_multimap/modifiers/merge.cc:
5769 1.1 mrg Likewise.
5770 1.1 mrg * testsuite/23_containers/unordered_multiset/cons/deduction.cc:
5771 1.1 mrg Likewise.
5772 1.1 mrg * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
5773 1.1 mrg Likewise.
5774 1.1 mrg * testsuite/23_containers/unordered_multiset/modifiers/merge.cc:
5775 1.1 mrg Likewise.
5776 1.1 mrg * testsuite/23_containers/unordered_set/cons/deduction.cc:
5777 1.1 mrg Likewise.
5778 1.1 mrg * testsuite/23_containers/unordered_set/modifiers/extract.cc:
5779 1.1 mrg Likewise.
5780 1.1 mrg * testsuite/23_containers/unordered_set/modifiers/merge.cc:
5781 1.1 mrg Likewise.
5782 1.1 mrg * testsuite/23_containers/vector/bool/emplace_cxx17_return.cc:
5783 1.1 mrg Likewise.
5784 1.1 mrg * testsuite/23_containers/vector/cons/89164_c++17.cc: Likewise.
5785 1.1 mrg * testsuite/23_containers/vector/cons/deduction.cc: Likewise.
5786 1.1 mrg * testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
5787 1.1 mrg Likewise.
5788 1.1 mrg
5789 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
5790 1.1 mrg
5791 1.1 mrg * testsuite/21_strings/basic_string/79162.cc: Remove
5792 1.1 mrg -std=gnu++17 from dg-options directive.
5793 1.1 mrg * testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
5794 1.1 mrg * testsuite/21_strings/basic_string/cons/char/79162.cc:
5795 1.1 mrg Likewise.
5796 1.1 mrg * testsuite/21_strings/basic_string/cons/char/86138.cc:
5797 1.1 mrg Likewise.
5798 1.1 mrg * testsuite/21_strings/basic_string/cons/char/9.cc: Likewise.
5799 1.1 mrg * testsuite/21_strings/basic_string/cons/char/deduction.cc:
5800 1.1 mrg Likewise.
5801 1.1 mrg * testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc:
5802 1.1 mrg Likewise.
5803 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
5804 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/79162.cc:
5805 1.1 mrg Likewise.
5806 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/86138.cc:
5807 1.1 mrg Likewise.
5808 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise.
5809 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
5810 1.1 mrg Likewise.
5811 1.1 mrg * testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
5812 1.1 mrg Likewise.
5813 1.1 mrg * testsuite/21_strings/basic_string/hash/hash.cc: Likewise.
5814 1.1 mrg * testsuite/21_strings/basic_string/lwg2758.cc: Likewise.
5815 1.1 mrg * testsuite/21_strings/basic_string/lwg2946.cc: Likewise.
5816 1.1 mrg * testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
5817 1.1 mrg Likewise.
5818 1.1 mrg * testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
5819 1.1 mrg Likewise.
5820 1.1 mrg * testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
5821 1.1 mrg Likewise.
5822 1.1 mrg * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
5823 1.1 mrg Likewise.
5824 1.1 mrg * testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
5825 1.1 mrg Likewise.
5826 1.1 mrg * testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
5827 1.1 mrg Likewise.
5828 1.1 mrg * testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
5829 1.1 mrg Likewise.
5830 1.1 mrg * testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
5831 1.1 mrg Likewise.
5832 1.1 mrg * testsuite/21_strings/basic_string/operations/compare/char/2.cc:
5833 1.1 mrg Likewise.
5834 1.1 mrg * testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
5835 1.1 mrg Likewise.
5836 1.1 mrg * testsuite/21_strings/basic_string/operations/data/char/2.cc:
5837 1.1 mrg Likewise.
5838 1.1 mrg * testsuite/21_strings/basic_string/operations/data/char/86169.cc:
5839 1.1 mrg Likewise.
5840 1.1 mrg * testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc:
5841 1.1 mrg Likewise.
5842 1.1 mrg * testsuite/21_strings/basic_string/operations/find/char/5.cc:
5843 1.1 mrg Likewise.
5844 1.1 mrg * testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
5845 1.1 mrg Likewise.
5846 1.1 mrg * testsuite/21_strings/basic_string/operators/char/5.cc:
5847 1.1 mrg Likewise.
5848 1.1 mrg * testsuite/21_strings/basic_string/operators/wchar_t/5.cc:
5849 1.1 mrg Likewise.
5850 1.1 mrg * testsuite/21_strings/basic_string_view/capacity/1.cc:
5851 1.1 mrg Likewise.
5852 1.1 mrg * testsuite/21_strings/basic_string_view/capacity/empty_neg.cc:
5853 1.1 mrg Likewise.
5854 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/1.cc:
5855 1.1 mrg Likewise.
5856 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/2.cc:
5857 1.1 mrg Likewise.
5858 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/3.cc:
5859 1.1 mrg Likewise.
5860 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/nonnull.cc:
5861 1.1 mrg Likewise.
5862 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc:
5863 1.1 mrg Likewise.
5864 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc:
5865 1.1 mrg Likewise.
5866 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc:
5867 1.1 mrg Likewise.
5868 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc:
5869 1.1 mrg Likewise.
5870 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/1.cc:
5871 1.1 mrg Likewise.
5872 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/2.cc:
5873 1.1 mrg Likewise.
5874 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
5875 1.1 mrg Likewise.
5876 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/constexpr.cc:
5877 1.1 mrg Likewise.
5878 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
5879 1.1 mrg Likewise.
5880 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
5881 1.1 mrg Likewise.
5882 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
5883 1.1 mrg Likewise.
5884 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/front_back_constexpr.cc:
5885 1.1 mrg Likewise.
5886 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
5887 1.1 mrg Likewise.
5888 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
5889 1.1 mrg Likewise.
5890 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
5891 1.1 mrg Likewise.
5892 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
5893 1.1 mrg Likewise.
5894 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr.cc:
5895 1.1 mrg Likewise.
5896 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
5897 1.1 mrg Likewise.
5898 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
5899 1.1 mrg Likewise.
5900 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
5901 1.1 mrg Likewise.
5902 1.1 mrg * testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
5903 1.1 mrg Likewise.
5904 1.1 mrg * testsuite/21_strings/basic_string_view/include.cc: Likewise.
5905 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/94051.cc:
5906 1.1 mrg Likewise.
5907 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/char/1.cc:
5908 1.1 mrg Likewise.
5909 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/char/2.cc:
5910 1.1 mrg Likewise.
5911 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/char/3.cc:
5912 1.1 mrg Likewise.
5913 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
5914 1.1 mrg Likewise.
5915 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
5916 1.1 mrg Likewise.
5917 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
5918 1.1 mrg Likewise.
5919 1.1 mrg * testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
5920 1.1 mrg Likewise.
5921 1.1 mrg * testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
5922 1.1 mrg Likewise.
5923 1.1 mrg * testsuite/21_strings/basic_string_view/literals/types.cc:
5924 1.1 mrg Likewise.
5925 1.1 mrg * testsuite/21_strings/basic_string_view/literals/values-char8_t.cc:
5926 1.1 mrg Likewise.
5927 1.1 mrg * testsuite/21_strings/basic_string_view/literals/values.cc:
5928 1.1 mrg Likewise.
5929 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
5930 1.1 mrg Likewise.
5931 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
5932 1.1 mrg Likewise.
5933 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
5934 1.1 mrg Likewise.
5935 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
5936 1.1 mrg Likewise.
5937 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
5938 1.1 mrg Likewise.
5939 1.1 mrg * testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
5940 1.1 mrg Likewise.
5941 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
5942 1.1 mrg Likewise.
5943 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
5944 1.1 mrg Likewise.
5945 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
5946 1.1 mrg Likewise.
5947 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc:
5948 1.1 mrg Likewise.
5949 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/char/nonnull.cc:
5950 1.1 mrg Likewise.
5951 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
5952 1.1 mrg Likewise.
5953 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
5954 1.1 mrg Likewise.
5955 1.1 mrg * testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc:
5956 1.1 mrg Likewise.
5957 1.1 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
5958 1.1 mrg Likewise.
5959 1.1 mrg * testsuite/21_strings/basic_string_view/operations/copy/char/2.cc:
5960 1.1 mrg Likewise.
5961 1.1 mrg * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
5962 1.1 mrg Likewise.
5963 1.1 mrg * testsuite/21_strings/basic_string_view/operations/copy/wchar_t/2.cc:
5964 1.1 mrg Likewise.
5965 1.1 mrg * testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
5966 1.1 mrg Likewise.
5967 1.1 mrg * testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
5968 1.1 mrg Likewise.
5969 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
5970 1.1 mrg Likewise.
5971 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
5972 1.1 mrg Likewise.
5973 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
5974 1.1 mrg Likewise.
5975 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
5976 1.1 mrg Likewise.
5977 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/char/nonnull.cc:
5978 1.1 mrg Likewise.
5979 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
5980 1.1 mrg Likewise.
5981 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
5982 1.1 mrg Likewise.
5983 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
5984 1.1 mrg Likewise.
5985 1.1 mrg * testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
5986 1.1 mrg Likewise.
5987 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
5988 1.1 mrg Likewise.
5989 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
5990 1.1 mrg Likewise.
5991 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
5992 1.1 mrg Likewise.
5993 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/char/nonnull.cc:
5994 1.1 mrg Likewise.
5995 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
5996 1.1 mrg Likewise.
5997 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
5998 1.1 mrg Likewise.
5999 1.1 mrg * testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
6000 1.1 mrg Likewise.
6001 1.1 mrg * testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
6002 1.1 mrg Likewise.
6003 1.1 mrg * testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
6004 1.1 mrg Likewise.
6005 1.1 mrg * testsuite/21_strings/basic_string_view/operations/substr/char/83511.cc:
6006 1.1 mrg Likewise.
6007 1.1 mrg * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
6008 1.1 mrg Likewise.
6009 1.1 mrg * testsuite/21_strings/basic_string_view/operations/substr/wchar_t/83511.cc:
6010 1.1 mrg Likewise.
6011 1.1 mrg * testsuite/21_strings/basic_string_view/operators/char/2.cc:
6012 1.1 mrg Likewise.
6013 1.1 mrg * testsuite/21_strings/basic_string_view/operators/char/89446.cc:
6014 1.1 mrg Likewise.
6015 1.1 mrg * testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
6016 1.1 mrg Likewise.
6017 1.1 mrg * testsuite/21_strings/basic_string_view/operators/wchar_t/89446.cc:
6018 1.1 mrg Likewise.
6019 1.1 mrg * testsuite/21_strings/basic_string_view/range_access/char/1.cc:
6020 1.1 mrg Likewise.
6021 1.1 mrg * testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
6022 1.1 mrg Likewise.
6023 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
6024 1.1 mrg Likewise.
6025 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
6026 1.1 mrg Likewise.
6027 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
6028 1.1 mrg Likewise.
6029 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
6030 1.1 mrg Likewise.
6031 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char8_t/1.cc:
6032 1.1 mrg Likewise.
6033 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
6034 1.1 mrg Likewise.
6035 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/traits_neg.cc:
6036 1.1 mrg Likewise.
6037 1.1 mrg * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
6038 1.1 mrg Likewise.
6039 1.1 mrg * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
6040 1.1 mrg * testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
6041 1.1 mrg * testsuite/21_strings/char_traits/requirements/char/99181.cc:
6042 1.1 mrg Likewise.
6043 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
6044 1.1 mrg
6045 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6046 1.1 mrg
6047 1.1 mrg * testsuite/20_util/memory_resource/1.cc: Remove -std=gnu++17
6048 1.1 mrg from dg-options directive.
6049 1.1 mrg * testsuite/20_util/memory_resource/2.cc: Likewise.
6050 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/1.cc: Likewise.
6051 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/93208.cc:
6052 1.1 mrg Likewise.
6053 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/allocate.cc:
6054 1.1 mrg Likewise.
6055 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/deallocate.cc:
6056 1.1 mrg Likewise.
6057 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/release.cc:
6058 1.1 mrg Likewise.
6059 1.1 mrg * testsuite/20_util/monotonic_buffer_resource/upstream_resource.cc:
6060 1.1 mrg Likewise.
6061 1.1 mrg * testsuite/20_util/polymorphic_allocator/1.cc: Likewise.
6062 1.1 mrg * testsuite/20_util/polymorphic_allocator/construct_pair.cc:
6063 1.1 mrg Likewise.
6064 1.1 mrg * testsuite/20_util/polymorphic_allocator/resource.cc: Likewise.
6065 1.1 mrg * testsuite/20_util/polymorphic_allocator/select.cc: Likewise.
6066 1.1 mrg * testsuite/20_util/synchronized_pool_resource/allocate.cc:
6067 1.1 mrg Likewise.
6068 1.1 mrg * testsuite/20_util/synchronized_pool_resource/allocate_single.cc:
6069 1.1 mrg Likewise.
6070 1.1 mrg * testsuite/20_util/synchronized_pool_resource/cons.cc:
6071 1.1 mrg Likewise.
6072 1.1 mrg * testsuite/20_util/synchronized_pool_resource/cons_single.cc:
6073 1.1 mrg Likewise.
6074 1.1 mrg * testsuite/20_util/synchronized_pool_resource/is_equal.cc:
6075 1.1 mrg Likewise.
6076 1.1 mrg * testsuite/20_util/synchronized_pool_resource/multithreaded.cc:
6077 1.1 mrg Likewise.
6078 1.1 mrg * testsuite/20_util/synchronized_pool_resource/options.cc:
6079 1.1 mrg Likewise.
6080 1.1 mrg * testsuite/20_util/synchronized_pool_resource/release.cc:
6081 1.1 mrg Likewise.
6082 1.1 mrg * testsuite/20_util/synchronized_pool_resource/release_single.cc:
6083 1.1 mrg Likewise.
6084 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/allocate-max-chunks.cc:
6085 1.1 mrg Likewise.
6086 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
6087 1.1 mrg Likewise.
6088 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/cons.cc:
6089 1.1 mrg Likewise.
6090 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/is_equal.cc:
6091 1.1 mrg Likewise.
6092 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/options.cc:
6093 1.1 mrg Likewise.
6094 1.1 mrg * testsuite/20_util/unsynchronized_pool_resource/release.cc:
6095 1.1 mrg Likewise.
6096 1.1 mrg * testsuite/21_strings/basic_string/types/pmr_typedefs.cc:
6097 1.1 mrg Likewise.
6098 1.1 mrg * testsuite/23_containers/deque/types/pmr_typedefs.cc: Likewise.
6099 1.1 mrg * testsuite/23_containers/deque/types/pmr_typedefs_debug.cc:
6100 1.1 mrg Likewise.
6101 1.1 mrg * testsuite/23_containers/forward_list/pmr_typedefs.cc:
6102 1.1 mrg Likewise.
6103 1.1 mrg * testsuite/23_containers/forward_list/pmr_typedefs_debug.cc:
6104 1.1 mrg Likewise.
6105 1.1 mrg * testsuite/23_containers/list/pmr_typedefs.cc: Likewise.
6106 1.1 mrg * testsuite/23_containers/list/pmr_typedefs_debug.cc: Likewise.
6107 1.1 mrg * testsuite/23_containers/map/pmr_typedefs.cc: Likewise.
6108 1.1 mrg * testsuite/23_containers/map/pmr_typedefs_debug.cc: Likewise.
6109 1.1 mrg * testsuite/23_containers/multimap/pmr_typedefs.cc: Likewise.
6110 1.1 mrg * testsuite/23_containers/multimap/pmr_typedefs_debug.cc:
6111 1.1 mrg Likewise.
6112 1.1 mrg * testsuite/23_containers/multiset/pmr_typedefs.cc: Likewise.
6113 1.1 mrg * testsuite/23_containers/multiset/pmr_typedefs_debug.cc:
6114 1.1 mrg Likewise.
6115 1.1 mrg * testsuite/23_containers/set/pmr_typedefs.cc: Likewise.
6116 1.1 mrg * testsuite/23_containers/set/pmr_typedefs_debug.cc: Likewise.
6117 1.1 mrg * testsuite/23_containers/unordered_map/pmr_typedefs.cc:
6118 1.1 mrg Likewise.
6119 1.1 mrg * testsuite/23_containers/unordered_map/pmr_typedefs_debug.cc:
6120 1.1 mrg Likewise.
6121 1.1 mrg * testsuite/23_containers/unordered_multimap/pmr_typedefs.cc:
6122 1.1 mrg Likewise.
6123 1.1 mrg * testsuite/23_containers/unordered_multimap/pmr_typedefs_debug.cc:
6124 1.1 mrg Likewise.
6125 1.1 mrg * testsuite/23_containers/unordered_multiset/pmr_typedefs.cc:
6126 1.1 mrg Likewise.
6127 1.1 mrg * testsuite/23_containers/unordered_multiset/pmr_typedefs_debug.cc:
6128 1.1 mrg Likewise.
6129 1.1 mrg * testsuite/23_containers/unordered_set/pmr_typedefs.cc:
6130 1.1 mrg Likewise.
6131 1.1 mrg * testsuite/23_containers/unordered_set/pmr_typedefs_debug.cc:
6132 1.1 mrg Likewise.
6133 1.1 mrg * testsuite/23_containers/vector/pmr_typedefs.cc: Likewise.
6134 1.1 mrg * testsuite/23_containers/vector/types/pmr_typedefs_debug.cc:
6135 1.1 mrg Likewise.
6136 1.1 mrg * testsuite/28_regex/match_results/pmr_typedefs.cc: Likewise.
6137 1.1 mrg
6138 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6139 1.1 mrg
6140 1.1 mrg * testsuite/29_atomics/atomic/69769.cc: Remove -std=gnu++17 from
6141 1.1 mrg dg-options.
6142 1.1 mrg * testsuite/29_atomics/atomic/is_always_lock_free.cc:
6143 1.1 mrg * testsuite/29_atomics/atomic/requirements/typedefs.cc:
6144 1.1 mrg * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc:
6145 1.1 mrg * testsuite/29_atomics/atomic_integral/requirements/typedefs.cc:
6146 1.1 mrg * testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise.
6147 1.1 mrg * testsuite/30_threads/scoped_lock/cons/1.cc: Likewise.
6148 1.1 mrg * testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise.
6149 1.1 mrg * testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc:
6150 1.1 mrg Likewise.
6151 1.1 mrg * testsuite/30_threads/scoped_lock/requirements/typedefs.cc:
6152 1.1 mrg Likewise.
6153 1.1 mrg * testsuite/30_threads/shared_lock/70766.cc: Likewise.
6154 1.1 mrg * testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
6155 1.1 mrg * testsuite/30_threads/shared_mutex/cons/assign_neg.cc:
6156 1.1 mrg Likewise.
6157 1.1 mrg * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Likewise.
6158 1.1 mrg * testsuite/30_threads/shared_mutex/requirements/standard_layout.cc:
6159 1.1 mrg Likewise.
6160 1.1 mrg * testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
6161 1.1 mrg * testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
6162 1.1 mrg * testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
6163 1.1 mrg * testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise.
6164 1.1 mrg
6165 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6166 1.1 mrg
6167 1.1 mrg * testsuite/20_util/any/assign/1.cc: Remove -std=gnu++17 from
6168 1.1 mrg dg-options directive.
6169 1.1 mrg * testsuite/20_util/any/assign/2.cc: Likewise.
6170 1.1 mrg * testsuite/20_util/any/assign/emplace.cc: Likewise.
6171 1.1 mrg * testsuite/20_util/any/assign/exception.cc: Likewise.
6172 1.1 mrg * testsuite/20_util/any/assign/self.cc: Likewise.
6173 1.1 mrg * testsuite/20_util/any/cons/1.cc: Likewise.
6174 1.1 mrg * testsuite/20_util/any/cons/2.cc: Likewise.
6175 1.1 mrg * testsuite/20_util/any/cons/90415.cc: Likewise.
6176 1.1 mrg * testsuite/20_util/any/cons/92156.cc: Likewise.
6177 1.1 mrg * testsuite/20_util/any/cons/aligned.cc: Likewise.
6178 1.1 mrg * testsuite/20_util/any/cons/explicit.cc: Likewise.
6179 1.1 mrg * testsuite/20_util/any/cons/in_place.cc: Likewise.
6180 1.1 mrg * testsuite/20_util/any/cons/nontrivial.cc: Likewise.
6181 1.1 mrg * testsuite/20_util/any/make_any.cc: Likewise.
6182 1.1 mrg * testsuite/20_util/any/misc/any_cast.cc: Likewise.
6183 1.1 mrg * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
6184 1.1 mrg * testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
6185 1.1 mrg * testsuite/20_util/any/misc/swap.cc: Likewise.
6186 1.1 mrg * testsuite/20_util/any/modifiers/1.cc: Likewise.
6187 1.1 mrg * testsuite/20_util/any/modifiers/83658.cc: Likewise.
6188 1.1 mrg * testsuite/20_util/any/modifiers/92156.cc: Likewise.
6189 1.1 mrg * testsuite/20_util/any/observers/type.cc: Likewise.
6190 1.1 mrg * testsuite/20_util/any/requirements.cc: Likewise.
6191 1.1 mrg * testsuite/20_util/any/typedefs.cc: Likewise.
6192 1.1 mrg * testsuite/20_util/optional/77288.cc: Likewise.
6193 1.1 mrg * testsuite/20_util/optional/84601.cc: Likewise.
6194 1.1 mrg * testsuite/20_util/optional/assignment/1.cc: Likewise.
6195 1.1 mrg * testsuite/20_util/optional/assignment/2.cc: Likewise.
6196 1.1 mrg * testsuite/20_util/optional/assignment/3.cc: Likewise.
6197 1.1 mrg * testsuite/20_util/optional/assignment/4.cc: Likewise.
6198 1.1 mrg * testsuite/20_util/optional/assignment/5.cc: Likewise.
6199 1.1 mrg * testsuite/20_util/optional/assignment/6.cc: Likewise.
6200 1.1 mrg * testsuite/20_util/optional/assignment/7.cc: Likewise.
6201 1.1 mrg * testsuite/20_util/optional/assignment/8.cc: Likewise.
6202 1.1 mrg * testsuite/20_util/optional/assignment/9.cc: Likewise.
6203 1.1 mrg * testsuite/20_util/optional/bad_access.cc: Likewise.
6204 1.1 mrg * testsuite/20_util/optional/cons/77727.cc: Likewise.
6205 1.1 mrg * testsuite/20_util/optional/cons/85642.cc: Likewise.
6206 1.1 mrg * testsuite/20_util/optional/cons/copy.cc: Likewise.
6207 1.1 mrg * testsuite/20_util/optional/cons/deduction.cc: Likewise.
6208 1.1 mrg * testsuite/20_util/optional/cons/default.cc: Likewise.
6209 1.1 mrg * testsuite/20_util/optional/cons/move.cc: Likewise.
6210 1.1 mrg * testsuite/20_util/optional/cons/trivial.cc: Likewise.
6211 1.1 mrg * testsuite/20_util/optional/cons/value.cc: Likewise.
6212 1.1 mrg * testsuite/20_util/optional/cons/value_neg.cc: Likewise.
6213 1.1 mrg * testsuite/20_util/optional/constexpr/cons/default.cc:
6214 1.1 mrg Likewise.
6215 1.1 mrg * testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
6216 1.1 mrg * testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
6217 1.1 mrg * testsuite/20_util/optional/constexpr/make_optional.cc:
6218 1.1 mrg Likewise.
6219 1.1 mrg * testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
6220 1.1 mrg * testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
6221 1.1 mrg * testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
6222 1.1 mrg * testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
6223 1.1 mrg * testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
6224 1.1 mrg * testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
6225 1.1 mrg * testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
6226 1.1 mrg * testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
6227 1.1 mrg * testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
6228 1.1 mrg * testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
6229 1.1 mrg * testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
6230 1.1 mrg * testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
6231 1.1 mrg * testsuite/20_util/optional/hash.cc: Likewise.
6232 1.1 mrg * testsuite/20_util/optional/in_place.cc: Likewise.
6233 1.1 mrg * testsuite/20_util/optional/make_optional.cc: Likewise.
6234 1.1 mrg * testsuite/20_util/optional/nullopt.cc: Likewise.
6235 1.1 mrg * testsuite/20_util/optional/observers/1.cc: Likewise.
6236 1.1 mrg * testsuite/20_util/optional/observers/2.cc: Likewise.
6237 1.1 mrg * testsuite/20_util/optional/observers/3.cc: Likewise.
6238 1.1 mrg * testsuite/20_util/optional/observers/4.cc: Likewise.
6239 1.1 mrg * testsuite/20_util/optional/observers/5.cc: Likewise.
6240 1.1 mrg * testsuite/20_util/optional/observers/6.cc: Likewise.
6241 1.1 mrg * testsuite/20_util/optional/relops/1.cc: Likewise.
6242 1.1 mrg * testsuite/20_util/optional/relops/2.cc: Likewise.
6243 1.1 mrg * testsuite/20_util/optional/relops/3.cc: Likewise.
6244 1.1 mrg * testsuite/20_util/optional/relops/4.cc: Likewise.
6245 1.1 mrg * testsuite/20_util/optional/relops/5.cc: Likewise.
6246 1.1 mrg * testsuite/20_util/optional/relops/6.cc: Likewise.
6247 1.1 mrg * testsuite/20_util/optional/relops/7.cc: Likewise.
6248 1.1 mrg * testsuite/20_util/optional/requirements.cc: Likewise.
6249 1.1 mrg * testsuite/20_util/optional/swap/1.cc: Likewise.
6250 1.1 mrg * testsuite/20_util/optional/swap/2.cc: Likewise.
6251 1.1 mrg * testsuite/20_util/optional/typedefs.cc: Likewise.
6252 1.1 mrg * testsuite/20_util/variant/80165.cc: Likewise.
6253 1.1 mrg * testsuite/20_util/variant/85183.cc: Likewise.
6254 1.1 mrg * testsuite/20_util/variant/86874.cc: Likewise.
6255 1.1 mrg * testsuite/20_util/variant/87431.cc: Likewise.
6256 1.1 mrg * testsuite/20_util/variant/87619.cc: Likewise.
6257 1.1 mrg * testsuite/20_util/variant/91807.cc: Likewise.
6258 1.1 mrg * testsuite/20_util/variant/any.cc: Likewise.
6259 1.1 mrg * testsuite/20_util/variant/compile.cc: Likewise.
6260 1.1 mrg * testsuite/20_util/variant/deduction.cc: Likewise.
6261 1.1 mrg * testsuite/20_util/variant/exception_safety.cc: Likewise.
6262 1.1 mrg * testsuite/20_util/variant/hash.cc: Likewise.
6263 1.1 mrg * testsuite/20_util/variant/index_type.cc: Likewise.
6264 1.1 mrg * testsuite/20_util/variant/relops/89851.cc: Likewise.
6265 1.1 mrg * testsuite/20_util/variant/relops/90008.cc: Likewise.
6266 1.1 mrg * testsuite/20_util/variant/run.cc: Likewise.
6267 1.1 mrg * testsuite/20_util/variant/visit.cc: Likewise.
6268 1.1 mrg
6269 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6270 1.1 mrg
6271 1.1 mrg * testsuite/27_io/basic_filebuf/open/char/path.cc: Remove
6272 1.1 mrg -std=gnu++17 from dg-options directive.
6273 1.1 mrg * testsuite/27_io/basic_fstream/cons/char/path.cc: Likewise.
6274 1.1 mrg * testsuite/27_io/basic_fstream/open/char/path.cc: Likewise.
6275 1.1 mrg * testsuite/27_io/basic_ifstream/cons/char/path.cc: Likewise.
6276 1.1 mrg * testsuite/27_io/basic_ifstream/open/char/path.cc: Likewise.
6277 1.1 mrg * testsuite/27_io/basic_ofstream/cons/char/path.cc: Likewise.
6278 1.1 mrg * testsuite/27_io/basic_ofstream/open/char/path.cc: Likewise.
6279 1.1 mrg * testsuite/27_io/filesystem/directory_entry/86597.cc: Likewise.
6280 1.1 mrg * testsuite/27_io/filesystem/directory_entry/lwg3171.cc:
6281 1.1 mrg Likewise.
6282 1.1 mrg * testsuite/27_io/filesystem/file_status/1.cc: Likewise.
6283 1.1 mrg * testsuite/27_io/filesystem/filesystem_error/cons.cc: Likewise.
6284 1.1 mrg * testsuite/27_io/filesystem/filesystem_error/copy.cc: Likewise.
6285 1.1 mrg * testsuite/27_io/filesystem/iterators/91067.cc: Likewise.
6286 1.1 mrg * testsuite/27_io/filesystem/iterators/caching.cc: Likewise.
6287 1.1 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc:
6288 1.1 mrg Likewise.
6289 1.1 mrg * testsuite/27_io/filesystem/iterators/pop.cc: Likewise.
6290 1.1 mrg * testsuite/27_io/filesystem/iterators/recursion_pending.cc:
6291 1.1 mrg Likewise.
6292 1.1 mrg * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
6293 1.1 mrg Likewise.
6294 1.1 mrg * testsuite/27_io/filesystem/operations/absolute.cc: Likewise.
6295 1.1 mrg * testsuite/27_io/filesystem/operations/all.cc: Likewise.
6296 1.1 mrg * testsuite/27_io/filesystem/operations/canonical.cc: Likewise.
6297 1.1 mrg * testsuite/27_io/filesystem/operations/copy.cc: Likewise.
6298 1.1 mrg * testsuite/27_io/filesystem/operations/copy_file.cc: Likewise.
6299 1.1 mrg * testsuite/27_io/filesystem/operations/create_directories.cc:
6300 1.1 mrg Likewise.
6301 1.1 mrg * testsuite/27_io/filesystem/operations/create_directory.cc:
6302 1.1 mrg Likewise.
6303 1.1 mrg * testsuite/27_io/filesystem/operations/create_symlink.cc:
6304 1.1 mrg Likewise.
6305 1.1 mrg * testsuite/27_io/filesystem/operations/current_path.cc:
6306 1.1 mrg Likewise.
6307 1.1 mrg * testsuite/27_io/filesystem/operations/equivalent.cc: Likewise.
6308 1.1 mrg * testsuite/27_io/filesystem/operations/exists.cc: Likewise.
6309 1.1 mrg * testsuite/27_io/filesystem/operations/file_size.cc: Likewise.
6310 1.1 mrg * testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
6311 1.1 mrg * testsuite/27_io/filesystem/operations/last_write_time.cc:
6312 1.1 mrg Likewise.
6313 1.1 mrg * testsuite/27_io/filesystem/operations/permissions.cc:
6314 1.1 mrg Likewise.
6315 1.1 mrg * testsuite/27_io/filesystem/operations/proximate.cc: Likewise.
6316 1.1 mrg * testsuite/27_io/filesystem/operations/read_symlink.cc:
6317 1.1 mrg Likewise.
6318 1.1 mrg * testsuite/27_io/filesystem/operations/relative.cc: Likewise.
6319 1.1 mrg * testsuite/27_io/filesystem/operations/remove.cc: Likewise.
6320 1.1 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
6321 1.1 mrg * testsuite/27_io/filesystem/operations/rename.cc: Likewise.
6322 1.1 mrg * testsuite/27_io/filesystem/operations/resize_file.cc:
6323 1.1 mrg Likewise.
6324 1.1 mrg * testsuite/27_io/filesystem/operations/space.cc: Likewise.
6325 1.1 mrg * testsuite/27_io/filesystem/operations/status.cc: Likewise.
6326 1.1 mrg * testsuite/27_io/filesystem/operations/symlink_status.cc:
6327 1.1 mrg Likewise.
6328 1.1 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc:
6329 1.1 mrg Likewise.
6330 1.1 mrg * testsuite/27_io/filesystem/operations/weakly_canonical.cc:
6331 1.1 mrg Likewise.
6332 1.1 mrg * testsuite/27_io/filesystem/path/append/path.cc: Likewise.
6333 1.1 mrg * testsuite/27_io/filesystem/path/append/source.cc: Likewise.
6334 1.1 mrg * testsuite/27_io/filesystem/path/assign/assign.cc: Likewise.
6335 1.1 mrg * testsuite/27_io/filesystem/path/assign/copy.cc: Likewise.
6336 1.1 mrg * testsuite/27_io/filesystem/path/compare/compare.cc: Likewise.
6337 1.1 mrg * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
6338 1.1 mrg * testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
6339 1.1 mrg * testsuite/27_io/filesystem/path/compare/strings.cc: Likewise.
6340 1.1 mrg * testsuite/27_io/filesystem/path/concat/92853.cc: Likewise.
6341 1.1 mrg * testsuite/27_io/filesystem/path/concat/94063.cc: Likewise.
6342 1.1 mrg * testsuite/27_io/filesystem/path/concat/path.cc: Likewise.
6343 1.1 mrg * testsuite/27_io/filesystem/path/concat/strings.cc: Likewise.
6344 1.1 mrg * testsuite/27_io/filesystem/path/construct/80762.cc: Likewise.
6345 1.1 mrg * testsuite/27_io/filesystem/path/construct/90281.cc: Likewise.
6346 1.1 mrg * testsuite/27_io/filesystem/path/construct/90634.cc: Likewise.
6347 1.1 mrg * testsuite/27_io/filesystem/path/construct/copy.cc: Likewise.
6348 1.1 mrg * testsuite/27_io/filesystem/path/construct/default.cc:
6349 1.1 mrg Likewise.
6350 1.1 mrg * testsuite/27_io/filesystem/path/construct/format.cc: Likewise.
6351 1.1 mrg * testsuite/27_io/filesystem/path/construct/locale.cc: Likewise.
6352 1.1 mrg * testsuite/27_io/filesystem/path/construct/range.cc: Likewise.
6353 1.1 mrg * testsuite/27_io/filesystem/path/construct/string_view.cc:
6354 1.1 mrg Likewise.
6355 1.1 mrg * testsuite/27_io/filesystem/path/decompose/extension.cc:
6356 1.1 mrg Likewise.
6357 1.1 mrg * testsuite/27_io/filesystem/path/decompose/filename.cc:
6358 1.1 mrg Likewise.
6359 1.1 mrg * testsuite/27_io/filesystem/path/decompose/parent_path.cc:
6360 1.1 mrg Likewise.
6361 1.1 mrg * testsuite/27_io/filesystem/path/decompose/relative_path.cc:
6362 1.1 mrg Likewise.
6363 1.1 mrg * testsuite/27_io/filesystem/path/decompose/root_directory.cc:
6364 1.1 mrg Likewise.
6365 1.1 mrg * testsuite/27_io/filesystem/path/decompose/root_name.cc:
6366 1.1 mrg Likewise.
6367 1.1 mrg * testsuite/27_io/filesystem/path/decompose/root_path.cc:
6368 1.1 mrg Likewise.
6369 1.1 mrg * testsuite/27_io/filesystem/path/decompose/stem.cc: Likewise.
6370 1.1 mrg * testsuite/27_io/filesystem/path/factory/u8path-char8_t.cc:
6371 1.1 mrg Likewise.
6372 1.1 mrg * testsuite/27_io/filesystem/path/factory/u8path.cc: Likewise.
6373 1.1 mrg * testsuite/27_io/filesystem/path/generation/normal.cc:
6374 1.1 mrg Likewise.
6375 1.1 mrg * testsuite/27_io/filesystem/path/generation/normal2.cc:
6376 1.1 mrg Likewise.
6377 1.1 mrg * testsuite/27_io/filesystem/path/generation/proximate.cc:
6378 1.1 mrg Likewise.
6379 1.1 mrg * testsuite/27_io/filesystem/path/generation/relative.cc:
6380 1.1 mrg Likewise.
6381 1.1 mrg * testsuite/27_io/filesystem/path/generic/94242.cc: Likewise.
6382 1.1 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc:
6383 1.1 mrg Likewise.
6384 1.1 mrg * testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
6385 1.1 mrg * testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
6386 1.1 mrg * testsuite/27_io/filesystem/path/io/dr2989.cc: Likewise.
6387 1.1 mrg * testsuite/27_io/filesystem/path/itr/components.cc: Likewise.
6388 1.1 mrg * testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise.
6389 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/clear.cc: Likewise.
6390 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/make_preferred.cc:
6391 1.1 mrg Likewise.
6392 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/remove_filename.cc:
6393 1.1 mrg Likewise.
6394 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/replace_extension.cc:
6395 1.1 mrg Likewise.
6396 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/replace_filename.cc:
6397 1.1 mrg Likewise.
6398 1.1 mrg * testsuite/27_io/filesystem/path/modifiers/swap.cc: Likewise.
6399 1.1 mrg * testsuite/27_io/filesystem/path/native/alloc.cc: Likewise.
6400 1.1 mrg * testsuite/27_io/filesystem/path/native/string-char8_t.cc:
6401 1.1 mrg Likewise.
6402 1.1 mrg * testsuite/27_io/filesystem/path/native/string.cc: Likewise.
6403 1.1 mrg * testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise.
6404 1.1 mrg * testsuite/27_io/filesystem/path/nonmember/cmp.cc: Likewise.
6405 1.1 mrg * testsuite/27_io/filesystem/path/nonmember/hash_value.cc:
6406 1.1 mrg Likewise.
6407 1.1 mrg * testsuite/27_io/filesystem/path/query/empty.cc: Likewise.
6408 1.1 mrg * testsuite/27_io/filesystem/path/query/empty_neg.cc:
6409 1.1 mrg * testsuite/27_io/filesystem/path/query/has_extension.cc:
6410 1.1 mrg Likewise.
6411 1.1 mrg * testsuite/27_io/filesystem/path/query/has_filename.cc:
6412 1.1 mrg Likewise.
6413 1.1 mrg * testsuite/27_io/filesystem/path/query/has_parent_path.cc:
6414 1.1 mrg Likewise.
6415 1.1 mrg * testsuite/27_io/filesystem/path/query/has_relative_path.cc:
6416 1.1 mrg Likewise.
6417 1.1 mrg * testsuite/27_io/filesystem/path/query/has_root_directory.cc:
6418 1.1 mrg Likewise.
6419 1.1 mrg * testsuite/27_io/filesystem/path/query/has_root_name.cc:
6420 1.1 mrg Likewise.
6421 1.1 mrg * testsuite/27_io/filesystem/path/query/has_root_path.cc:
6422 1.1 mrg Likewise.
6423 1.1 mrg * testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
6424 1.1 mrg * testsuite/27_io/filesystem/path/query/is_absolute.cc:
6425 1.1 mrg Likewise.
6426 1.1 mrg * testsuite/27_io/filesystem/path/query/is_relative.cc:
6427 1.1 mrg Likewise.
6428 1.1 mrg * testsuite/experimental/filesystem/path/construct/string_view.cc:
6429 1.1 mrg Likewise.
6430 1.1 mrg
6431 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6432 1.1 mrg
6433 1.1 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc:
6434 1.1 mrg Remove -std=gnu++17 from dg-options.
6435 1.1 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc:
6436 1.1 mrg Likewise.
6437 1.1 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc:
6438 1.1 mrg Likewise.
6439 1.1 mrg * testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc:
6440 1.1 mrg Likewise.
6441 1.1 mrg * testsuite/25_algorithms/pstl/alg_merge/merge.cc: Likewise.
6442 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/copy_if.cc:
6443 1.1 mrg Likewise.
6444 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/copy_move.cc:
6445 1.1 mrg Likewise.
6446 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/fill.cc:
6447 1.1 mrg Likewise.
6448 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/generate.cc:
6449 1.1 mrg Likewise.
6450 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/is_partitioned.cc:
6451 1.1 mrg Likewise.
6452 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/partition.cc:
6453 1.1 mrg Likewise.
6454 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/partition_copy.cc:
6455 1.1 mrg Likewise.
6456 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/remove.cc:
6457 1.1 mrg Likewise.
6458 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/remove_copy.cc:
6459 1.1 mrg Likewise.
6460 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/replace.cc:
6461 1.1 mrg Likewise.
6462 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/replace_copy.cc:
6463 1.1 mrg Likewise.
6464 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/rotate.cc:
6465 1.1 mrg Likewise.
6466 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc:
6467 1.1 mrg Likewise.
6468 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/swap_ranges.cc:
6469 1.1 mrg Likewise.
6470 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc:
6471 1.1 mrg Likewise.
6472 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/transform_unary.cc:
6473 1.1 mrg Likewise.
6474 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/unique.cc:
6475 1.1 mrg Likewise.
6476 1.1 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/unique_copy_equal.cc:
6477 1.1 mrg Likewise.
6478 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/adjacent_find.cc:
6479 1.1 mrg Likewise.
6480 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/all_of.cc:
6481 1.1 mrg Likewise.
6482 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/any_of.cc:
6483 1.1 mrg Likewise.
6484 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/count.cc:
6485 1.1 mrg Likewise.
6486 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/equal.cc:
6487 1.1 mrg Likewise.
6488 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find.cc:
6489 1.1 mrg Likewise.
6490 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
6491 1.1 mrg Likewise.
6492 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_first_of.cc:
6493 1.1 mrg Likewise.
6494 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_if.cc:
6495 1.1 mrg Likewise.
6496 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/for_each.cc:
6497 1.1 mrg Likewise.
6498 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc:
6499 1.1 mrg Likewise.
6500 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/none_of.cc:
6501 1.1 mrg Likewise.
6502 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc:
6503 1.1 mrg Likewise.
6504 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/reverse.cc:
6505 1.1 mrg Likewise.
6506 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/reverse_copy.cc:
6507 1.1 mrg Likewise.
6508 1.1 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
6509 1.1 mrg Likewise.
6510 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/includes.cc:
6511 1.1 mrg Likewise.
6512 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/is_heap.cc: Likewise.
6513 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/is_sorted.cc:
6514 1.1 mrg Likewise.
6515 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc:
6516 1.1 mrg Likewise.
6517 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc:
6518 1.1 mrg Likewise.
6519 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc:
6520 1.1 mrg Likewise.
6521 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/partial_sort_copy.cc:
6522 1.1 mrg Likewise.
6523 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/set.cc: Likewise.
6524 1.1 mrg * testsuite/25_algorithms/pstl/alg_sorting/sort.cc: Likewise.
6525 1.1 mrg * testsuite/25_algorithms/pstl/feature_test-2.cc: Likewise.
6526 1.1 mrg * testsuite/25_algorithms/pstl/feature_test-3.cc: Likewise.
6527 1.1 mrg * testsuite/25_algorithms/pstl/feature_test-4.cc: Likewise.
6528 1.1 mrg * testsuite/25_algorithms/pstl/feature_test-5.cc: Likewise.
6529 1.1 mrg * testsuite/25_algorithms/pstl/feature_test.cc: Likewise.
6530 1.1 mrg * testsuite/26_numerics/pstl/numeric_ops/adjacent_difference.cc:
6531 1.1 mrg Likewise.
6532 1.1 mrg * testsuite/26_numerics/pstl/numeric_ops/reduce.cc: Likewise.
6533 1.1 mrg * testsuite/26_numerics/pstl/numeric_ops/scan.cc: Likewise.
6534 1.1 mrg * testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc:
6535 1.1 mrg Likewise.
6536 1.1 mrg * testsuite/26_numerics/pstl/numeric_ops/transform_scan.cc:
6537 1.1 mrg Likewise.
6538 1.1 mrg
6539 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6540 1.1 mrg
6541 1.1 mrg * testsuite/20_util/scoped_allocator/69293_neg.cc: Add dg-error
6542 1.1 mrg for additional errors in C++20.
6543 1.1 mrg * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
6544 1.1 mrg Likewise.
6545 1.1 mrg * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
6546 1.1 mrg * testsuite/27_io/filesystem/path/io/dr2989.cc: Likewise.
6547 1.1 mrg
6548 1.1 mrg 2021-05-10 Jonathan Wakely <jwakely (a] redhat.com>
6549 1.1 mrg
6550 1.1 mrg * testsuite/20_util/variant/compile.cc: Rename 'any' to avoid
6551 1.1 mrg clash with std::any.
6552 1.1 mrg
6553 1.1 mrg 2021-05-07 Jonathan Wakely <jwakely (a] redhat.com>
6554 1.1 mrg
6555 1.1 mrg * include/std/istream (__rvalue_stream_extraction_t): Replace
6556 1.1 mrg use of __rval_streamable.
6557 1.1 mrg * include/std/ostream (__rvalue_stream_insertion_t): Likewise.
6558 1.1 mrg (__rval_streamable): Remove.
6559 1.1 mrg (_Require_derived_from_ios_base, __derived_from_ios_base): New
6560 1.1 mrg helper for checking constraints.
6561 1.1 mrg * testsuite/27_io/basic_istream/extractors_other/char/4.cc: Fix
6562 1.1 mrg reference to the wrong subclause of the standard.
6563 1.1 mrg * testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
6564 1.1 mrg Likewise.
6565 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/6.cc:
6566 1.1 mrg Likewise.
6567 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc:
6568 1.1 mrg Likewise.
6569 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/99692.cc:
6570 1.1 mrg New test.
6571 1.1 mrg * testsuite/27_io/filesystem/path/io/dr2989.cc: Adjust pruned
6572 1.1 mrg errors.
6573 1.1 mrg
6574 1.1 mrg 2021-05-06 Jonathan Wakely <jwakely (a] redhat.com>
6575 1.1 mrg
6576 1.1 mrg * include/bits/stl_algobase.h (__copy_move, __copy_move_backward):
6577 1.1 mrg Improve static_assert messages.
6578 1.1 mrg * testsuite/25_algorithms/copy/58982.cc: Adjust expected output.
6579 1.1 mrg * testsuite/25_algorithms/copy_n/58982.cc: Likewise.
6580 1.1 mrg
6581 1.1 mrg 2021-05-06 Patrick Palka <ppalka (a] redhat.com>
6582 1.1 mrg
6583 1.1 mrg * include/std/ranges (filter_view::_Iterator::base): Make the
6584 1.1 mrg const& overload unconstrained and return a const reference as
6585 1.1 mrg per LWG 3533. Make unconditionally noexcept.
6586 1.1 mrg (transform_view::_Iterator::base): Likewise.
6587 1.1 mrg (elements_view::_Iterator::base): Likewise.
6588 1.1 mrg
6589 1.1 mrg 2021-05-06 Patrick Palka <ppalka (a] redhat.com>
6590 1.1 mrg
6591 1.1 mrg * include/bits/stl_iterator.h (move_iterator::base): Make the
6592 1.1 mrg const& overload unconstrained and return a const reference as
6593 1.1 mrg per LWG 3391. Make unconditionally noexcept.
6594 1.1 mrg (counted_iterator::base): Likewise.
6595 1.1 mrg * testsuite/24_iterators/move_iterator/lwg3391.cc: New test.
6596 1.1 mrg * testsuite/24_iterators/move_iterator/move_only.cc: Adjust
6597 1.1 mrg has_member_base concept to decay-copy the result of base().
6598 1.1 mrg
6599 1.1 mrg 2021-05-06 Jonathan Wakely <jwakely (a] redhat.com>
6600 1.1 mrg
6601 1.1 mrg * include/std/type_traits (remove_cvref_t): Define in terms of
6602 1.1 mrg remove_cvref.
6603 1.1 mrg * testsuite/20_util/remove_cvref/value.cc: Check alias.
6604 1.1 mrg
6605 1.1 mrg 2021-05-06 Jonathan Wakely <jwakely (a] redhat.com>
6606 1.1 mrg
6607 1.1 mrg Revert:
6608 1.1 mrg 2021-05-05 Jonathan Wakely <jwakely (a] redhat.com>
6609 1.1 mrg
6610 1.1 mrg * include/std/charconv (__from_chars_alnum): Pass unsigned
6611 1.1 mrg char to std::isdigit.
6612 1.1 mrg
6613 1.1 mrg 2021-05-05 Patrick Palka <ppalka (a] redhat.com>
6614 1.1 mrg
6615 1.1 mrg * include/bits/ranges_util.h (enable_borrowed_range<subrange>):
6616 1.1 mrg Remove constraints on this partial specialization.
6617 1.1 mrg * include/std/ranges (enable_borrowed_range<iota_view>):
6618 1.1 mrg Likewise.
6619 1.1 mrg
6620 1.1 mrg 2021-05-05 Patrick Palka <ppalka (a] redhat.com>
6621 1.1 mrg
6622 1.1 mrg * include/std/ranges (transform_view::_Iterator::iter_swap):
6623 1.1 mrg Remove as per LWG 3520.
6624 1.1 mrg (join_view::_Iterator::iter_swap): Add indirectly_swappable
6625 1.1 mrg constraint as per LWG 3517.
6626 1.1 mrg
6627 1.1 mrg 2021-05-05 Jonathan Wakely <jwakely (a] redhat.com>
6628 1.1 mrg
6629 1.1 mrg * testsuite/20_util/function_objects/invoke/3.cc: Check feature
6630 1.1 mrg test macro.
6631 1.1 mrg * testsuite/20_util/function_objects/invoke/version.cc: New test.
6632 1.1 mrg
6633 1.1 mrg 2021-05-05 Jonathan Wakely <jwakely (a] redhat.com>
6634 1.1 mrg
6635 1.1 mrg * include/std/charconv (__from_chars_alnum): Pass unsigned
6636 1.1 mrg char to std::isdigit.
6637 1.1 mrg
6638 1.1 mrg 2021-05-05 Corentin Gay <gay (a] adacore.com>
6639 1.1 mrg
6640 1.1 mrg * acinclude.m4: Add VxWorks-specific case for the
6641 1.1 mrg configuration of ctypes.
6642 1.1 mrg * configure: Regenerate.
6643 1.1 mrg * config/locale/vxworks/ctype_members.cc: Add VxWorks-specific
6644 1.1 mrg version.
6645 1.1 mrg * config/os/vxworks/ctype_base.h: Adjust for VxWorks7+.
6646 1.1 mrg * config/os/vxworks/ctype_configure_char.cc: Likewise.
6647 1.1 mrg * config/os/vxworks/ctype_inline.h: Likewise.
6648 1.1 mrg * testsuite/28_regex/traits/char/isctype.cc: Defines
6649 1.1 mrg NEWLINE_IN_CLASS_BLANK if the target is VxWorks.
6650 1.1 mrg * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
6651 1.1 mrg
6652 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6653 1.1 mrg
6654 1.1 mrg * include/std/future (promise::set_value): Check for existence
6655 1.1 mrg of shared state before dereferncing it.
6656 1.1 mrg (promise::set_exception, promise::set_value_at_thread_exit)
6657 1.1 mrg (promise::set_exception_at_thread_exit): Likewise.
6658 1.1 mrg (promise<R&>::set_value, promise<R&>::set_exception)
6659 1.1 mrg (promise<R&>::set_value_at_thread_exit)
6660 1.1 mrg (promise<R&>::set_exception_at_thread_exit): Likewise.
6661 1.1 mrg (promise<void>::set_value, promise<void>::set_exception)
6662 1.1 mrg (promise<void>::set_value_at_thread_exit)
6663 1.1 mrg (promise<void>::set_exception_at_thread_exit): Likewise.
6664 1.1 mrg * testsuite/30_threads/promise/members/at_thread_exit2.cc:
6665 1.1 mrg Remove unused variable.
6666 1.1 mrg
6667 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6668 1.1 mrg
6669 1.1 mrg * include/bits/basic_string.h (basic_string(const CharT*, const A&)):
6670 1.1 mrg Do not do arithmetic on null pointer.
6671 1.1 mrg
6672 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6673 1.1 mrg
6674 1.1 mrg * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
6675 1.1 mrg (find_key_pointer(key_const_reference, false_type))
6676 1.1 mrg (find_key_pointer(key_const_reference, true_type)): Do not
6677 1.1 mrg dereference null pointer.
6678 1.1 mrg
6679 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6680 1.1 mrg
6681 1.1 mrg * testsuite/20_util/from_chars/3.cc: Use unsigned type to avoid
6682 1.1 mrg overflow.
6683 1.1 mrg * testsuite/24_iterators/reverse_iterator/2.cc: Do not add
6684 1.1 mrg non-zero value to null pointer.
6685 1.1 mrg * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc:
6686 1.1 mrg Use past-the-end iterator for result.
6687 1.1 mrg * testsuite/25_algorithms/move_backward/69478.cc: Likewise.
6688 1.1 mrg * testsuite/25_algorithms/move_backward/93872.cc: Likewise.
6689 1.1 mrg
6690 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6691 1.1 mrg
6692 1.1 mrg PR libstdc++/100384
6693 1.1 mrg * include/std/variant (__get_t): New alias template yielding the
6694 1.1 mrg return type of std::get<N> on a variant.
6695 1.1 mrg (__visit_result_t): New alias template yielding the result of
6696 1.1 mrg std::visit.
6697 1.1 mrg (__same_types): Move into namespace __detail::__variant.
6698 1.1 mrg (__check_visitor_results): Likewise. Use __invoke_result_t and
6699 1.1 mrg __get_t.
6700 1.1 mrg (__check_visitor_result): Remove.
6701 1.1 mrg (visit): Use __visit_result_t for return type.
6702 1.1 mrg * testsuite/20_util/variant/100384.cc: New test.
6703 1.1 mrg
6704 1.1 mrg 2021-05-04 Jonathan Wakely <jwakely (a] redhat.com>
6705 1.1 mrg
6706 1.1 mrg * acinclude.m4 (GLIBCXX_ENABLE_INT128_FLOAT128): Remove
6707 1.1 mrg checks for __int128 and rename to GLIBCXX_ENABLE_FLOAT128.
6708 1.1 mrg * config.h.in: Regenerate.
6709 1.1 mrg * configure: Regenerate.
6710 1.1 mrg * configure.ac: Adjust to use GLIBCXX_ENABLE_FLOAT128.
6711 1.1 mrg * include/bits/random.h (_Select_uint_least_t<s, 1>):
6712 1.1 mrg Use __SIZEOF_INT128__ to decide whether to use __int128.
6713 1.1 mrg * include/std/charconv (__to_chars_unsigned_type): Likewise.
6714 1.1 mrg
6715 1.1 mrg 2021-05-03 Gerald Pfeifer <gerald (a] pfeifer.com>
6716 1.1 mrg
6717 1.1 mrg * doc/xml/manual/ctype.xml: Move unix.org reference to https.
6718 1.1 mrg * doc/html/manual/facets.html: Regenerate.
6719 1.1 mrg
6720 1.1 mrg 2021-04-30 Patrick Palka <ppalka (a] redhat.com>
6721 1.1 mrg
6722 1.1 mrg * include/std/ranges (__detail::__non_propating_cache): Define
6723 1.1 mrg as per P2328.
6724 1.1 mrg (join_view): Remove constraints on the value and reference types
6725 1.1 mrg of the wrapped iterator type as per P2328.
6726 1.1 mrg (join_view::_Iterator::_M_satisfy): Adjust as per P2328.
6727 1.1 mrg (join_view::_Iterator::operator++): Likewise.
6728 1.1 mrg (join_view::_M_inner): Use __non_propating_cache as per P2328.
6729 1.1 mrg Remove now-redundant use of __maybe_present_t.
6730 1.1 mrg * testsuite/std/ranges/adaptors/join.cc: Include <array>.
6731 1.1 mrg (test10): New test.
6732 1.1 mrg
6733 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6734 1.1 mrg
6735 1.1 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string):
6736 1.1 mrg Only define for C++17 and later.
6737 1.1 mrg * include/std/version (__cpp_lib_semaphore): Fix condition
6738 1.1 mrg to match the one in <semaphore>.
6739 1.1 mrg
6740 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6741 1.1 mrg
6742 1.1 mrg * acinclude.m4 (GLIBCXX_CHECK_INT64_T): Delete.
6743 1.1 mrg * config.h.in: Regenerate.
6744 1.1 mrg * configure: Regenerate.
6745 1.1 mrg * configure.ac: Do not use GLIBCXX_CHECK_INT64_T.
6746 1.1 mrg * include/bits/postypes.h: Remove include of <stdint.h> and
6747 1.1 mrg definition/undefinition of the __STDC_LIMIT_MACROS and
6748 1.1 mrg __STDC_CONSTANT_MACROS macros.
6749 1.1 mrg (streamoff): Use __INT64_TYPE__ if defined.
6750 1.1 mrg
6751 1.1 mrg 2021-04-30 Patrick Palka <ppalka (a] redhat.com>
6752 1.1 mrg
6753 1.1 mrg * include/std/ranges (split_view::_InnerIter::operator++):
6754 1.1 mrg Depend on _Base instead of _Vp directly, as per LWG 3532.
6755 1.1 mrg
6756 1.1 mrg 2021-04-30 Patrick Palka <ppalka (a] redhat.com>
6757 1.1 mrg
6758 1.1 mrg * include/bits/ranges_util.h (subrange::subrange): Avoid
6759 1.1 mrg list-initialization in delegating constructor.
6760 1.1 mrg * include/std/ranges (single_view): Replace implicit guide
6761 1.1 mrg with explicit deduction guide that decays its argument.
6762 1.1 mrg (_Single::operator()): Avoid CTAD when constructing the
6763 1.1 mrg single_view object.
6764 1.1 mrg (_Iota::operator()): Avoid list-initialization.
6765 1.1 mrg (__detail::__can_filter_view, _Filter::operator()): Likewise.
6766 1.1 mrg (__detail::__can_transform_view, _Transform::operator()): Likewise.
6767 1.1 mrg (take_view::begin): Likewise.
6768 1.1 mrg (__detail::__can_take_view, _Take::operator()): Likewise.
6769 1.1 mrg (__detail::__can_take_while_view, _TakeWhile::operator()): Likewise.
6770 1.1 mrg (__detail::__can_drop_view, _Drop::operator()): Likewise.
6771 1.1 mrg (__detail::__can_drop_while_view, _DropWhile::operator()): Likewise.
6772 1.1 mrg (split_view::split_view): Use views::single when initializing
6773 1.1 mrg _M_pattern.
6774 1.1 mrg (__detail::__can_split_view, _Split::operator()): Avoid
6775 1.1 mrg list-initialization.
6776 1.1 mrg (_Counted::operator()): Likewise.
6777 1.1 mrg * testsuite/std/ranges/p2367.cc: New test.
6778 1.1 mrg
6779 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6780 1.1 mrg
6781 1.1 mrg PR libstdc++/60497
6782 1.1 mrg * include/bits/basic_ios.tcc (basic_ios::copyfmt): use
6783 1.1 mrg std::addressof.
6784 1.1 mrg * include/bits/basic_string.tcc (basic_string::swap)
6785 1.1 mrg (basic_string::assign): Likewise.
6786 1.1 mrg * include/bits/deque.tcc (deque::operator=(const deque&)):
6787 1.1 mrg Likewise.
6788 1.1 mrg * include/bits/stl_tree.h (_Rb_tree::operator=(const * _Rb_tree&)):
6789 1.1 mrg Likewise.
6790 1.1 mrg * include/bits/vector.tcc (vector::operator=(const vector&)):
6791 1.1 mrg Likewise.
6792 1.1 mrg
6793 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6794 1.1 mrg
6795 1.1 mrg * include/std/istream (operator>>(Istream&&, x&)): Simplify, as
6796 1.1 mrg per LWG 1203.
6797 1.1 mrg * include/std/ostream (operator<<(Ostream&&, const x&)):
6798 1.1 mrg Likewise.
6799 1.1 mrg * testsuite/27_io/basic_istream/extractors_character/char/lwg2499_neg.cc:
6800 1.1 mrg Adjust dg-error pattern.
6801 1.1 mrg * testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499_neg.cc:
6802 1.1 mrg Likewise.
6803 1.1 mrg * testsuite/27_io/basic_istream/extractors_other/char/4.cc: Define
6804 1.1 mrg is_extractable trait to replace std::__is_extractable. Make it
6805 1.1 mrg work with rvalue streams as well as lvalues, to replace f() and
6806 1.1 mrg g() helper functions.
6807 1.1 mrg * testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
6808 1.1 mrg Likewise.
6809 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/char/6.cc:
6810 1.1 mrg Define is_insertable trait to replace std::__is_insertable. Make
6811 1.1 mrg it work with rvalue streams as well as lvalues, to replace f()
6812 1.1 mrg and g() helper functions.
6813 1.1 mrg * testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc:
6814 1.1 mrg Likewise.
6815 1.1 mrg * testsuite/27_io/filesystem/path/io/dr2989.cc: Prune additional
6816 1.1 mrg errors from new constraints.
6817 1.1 mrg * testsuite/27_io/rvalue_streams-2.cc: Remove PR 80675 checks,
6818 1.1 mrg which are no longer expected to compile.
6819 1.1 mrg * testsuite/27_io/rvalue_streams.cc: Adjust existing test.
6820 1.1 mrg Verify LWG 1203 changes.
6821 1.1 mrg
6822 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6823 1.1 mrg
6824 1.1 mrg PR libstdc++/100285
6825 1.1 mrg * include/experimental/socket (__basic_socket_impl::set_option)
6826 1.1 mrg (__basic_socket_impl::get_option) [!_GLIBCXX_HAVE_SYS_SOCKET_H]:
6827 1.1 mrg Just set error code.
6828 1.1 mrg * testsuite/experimental/net/socket/socket_base.cc: CHeck
6829 1.1 mrg for <sys/socket.h> not <socket.h>.
6830 1.1 mrg
6831 1.1 mrg 2021-04-30 Jonathan Wakely <jwakely (a] redhat.com>
6832 1.1 mrg
6833 1.1 mrg PR libstdc++/100180
6834 1.1 mrg PR libstdc++/100286
6835 1.1 mrg PR libstdc++/100351
6836 1.1 mrg * testsuite/experimental/net/internet/address/v4/comparisons.cc:
6837 1.1 mrg Use new effective-target keyword.
6838 1.1 mrg * testsuite/experimental/net/internet/address/v4/cons.cc:
6839 1.1 mrg Likewise.
6840 1.1 mrg * testsuite/experimental/net/internet/address/v4/creation.cc:
6841 1.1 mrg Likewise.
6842 1.1 mrg * testsuite/experimental/net/internet/address/v4/members.cc:
6843 1.1 mrg Likewise.
6844 1.1 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
6845 1.1 mrg Likewise.
6846 1.1 mrg * testsuite/experimental/net/internet/resolver/base.cc:
6847 1.1 mrg Likewise.
6848 1.1 mrg * testsuite/experimental/net/internet/resolver/ops/lookup.cc:
6849 1.1 mrg Likewise.
6850 1.1 mrg * testsuite/experimental/net/internet/resolver/ops/reverse.cc:
6851 1.1 mrg Likewise.
6852 1.1 mrg * testsuite/experimental/net/internet/socket/opt.cc:
6853 1.1 mrg Likewise.
6854 1.1 mrg * testsuite/experimental/net/internet/tcp.cc:
6855 1.1 mrg Likewise.
6856 1.1 mrg * testsuite/experimental/net/internet/udp.cc:
6857 1.1 mrg Likewise.
6858 1.1 mrg * testsuite/lib/libstdc++.exp (check_effective_target_net_ts_ip):
6859 1.1 mrg New proc to check net_ts_ip et.
6860 1.1 mrg
6861 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6862 1.1 mrg
6863 1.1 mrg PR libstdc++/97930
6864 1.1 mrg * testsuite/20_util/pair/requirements/structural.cc: New test.
6865 1.1 mrg
6866 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6867 1.1 mrg
6868 1.1 mrg * include/bits/stl_pair.h (pair) [__cplusplus > 202002]: Add
6869 1.1 mrg new definitions for constructors and assignment operators using
6870 1.1 mrg concepts for constraints.
6871 1.1 mrg * testsuite/20_util/pair/cons/99957.cc: Disable for C++20 and
6872 1.1 mrg later.
6873 1.1 mrg * testsuite/20_util/pair/cons/explicit_construct.cc: Adjust
6874 1.1 mrg expected error messages to also match C++20 errors.
6875 1.1 mrg
6876 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6877 1.1 mrg
6878 1.1 mrg PR libstdc++/99957
6879 1.1 mrg * include/bits/stl_pair.h (_PCC::_MoveCopyPair, _PCC::_CopyMovePair):
6880 1.1 mrg Combine and replace with ...
6881 1.1 mrg (_PCC::_DeprConsPair): New SFINAE helper function.
6882 1.1 mrg (pair): Merge preprocessor blocks so that all C++03 members
6883 1.1 mrg are defined together at the end.
6884 1.1 mrg (pair::pair(const _T1&, _U2&&), pair::pair(_U1&&, const _T2&)):
6885 1.1 mrg Replace _T1 and _T2 parameters with __null_ptr_constant and
6886 1.1 mrg adjust constraints.
6887 1.1 mrg * testsuite/20_util/pair/40925.cc: Use nullptr instead of 0.
6888 1.1 mrg * testsuite/20_util/pair/cons/explicit_construct.cc: Likewise.
6889 1.1 mrg * testsuite/20_util/pair/cons/99957.cc: New test.
6890 1.1 mrg
6891 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6892 1.1 mrg
6893 1.1 mrg * include/bits/basic_string.h (__cpp_lib_constexpr_string): Define.
6894 1.1 mrg * include/std/version (__cpp_lib_constexpr_string): Define.
6895 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
6896 1.1 mrg Check for __cpp_lib_constexpr_string.
6897 1.1 mrg * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
6898 1.1 mrg Likewise.
6899 1.1 mrg * testsuite/21_strings/char_traits/requirements/version.cc: New test.
6900 1.1 mrg
6901 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6902 1.1 mrg
6903 1.1 mrg * doc/Makefile.am (stamp-pdf-doxygen): Improve comment about
6904 1.1 mrg dealing with errors. Use '@' to prevent shell command being
6905 1.1 mrg echoed.
6906 1.1 mrg * doc/Makefile.in: Regenerate.
6907 1.1 mrg
6908 1.1 mrg 2021-04-28 Jonathan Wakely <jwakely (a] redhat.com>
6909 1.1 mrg
6910 1.1 mrg PR libstdc++/100298
6911 1.1 mrg * include/bits/std_thread.h (thread::hardware_concurrency): Add
6912 1.1 mrg missing noexcept to inline definition for non-gthreads targets.
6913 1.1 mrg
6914 1.1 mrg 2021-04-28 Patrick Palka <ppalka (a] redhat.com>
6915 1.1 mrg
6916 1.1 mrg PR libstdc++/100187
6917 1.1 mrg PR libstdc++/100237
6918 1.1 mrg PR libstdc++/100249
6919 1.1 mrg PR libstdc++/100287
6920 1.1 mrg * include/bits/ranges_algo.h (__search_n_fn::operator()): Give
6921 1.1 mrg the __value_comp lambda an explicit bool return type.
6922 1.1 mrg (__is_permutation_fn::operator()): Give the __proj_scan local
6923 1.1 mrg variable auto&& return type. Give the __comp_scan lambda an
6924 1.1 mrg explicit bool return type.
6925 1.1 mrg (__remove_fn::operator()): Give the __pred lambda an explicit
6926 1.1 mrg bool return type.
6927 1.1 mrg (__partition_fn::operator()): Don't std::move __first twice
6928 1.1 mrg when returning an empty subrange.
6929 1.1 mrg (__min_fn::operator()): Don't std::move __comp.
6930 1.1 mrg (__max_fn::operator()): Likewise.
6931 1.1 mrg (__minmax_fn::operator()): Likewise.
6932 1.1 mrg
6933 1.1 mrg 2021-04-27 Patrick Palka <ppalka (a] redhat.com>
6934 1.1 mrg
6935 1.1 mrg PR libstdc++/100290
6936 1.1 mrg * include/std/ranges (join_view::_Iterator::operator++): Correct
6937 1.1 mrg the return type of the lambda to avoid returning a copy of
6938 1.1 mrg _M_parent->_M_inner.
6939 1.1 mrg * testsuite/std/ranges/adaptors/join.cc (test10): New test.
6940 1.1 mrg
6941 1.1 mrg 2021-04-27 Jakub Jelinek <jakub (a] redhat.com>
6942 1.1 mrg
6943 1.1 mrg Revert:
6944 1.1 mrg 2021-04-22 Jakub Jelinek <jakub (a] redhat.com>
6945 1.1 mrg
6946 1.1 mrg PR target/100182
6947 1.1 mrg * testsuite/29_atomics/atomic_float/1.cc: Add dg-xfail-run-if for
6948 1.1 mrg ia32.
6949 1.1 mrg * testsuite/29_atomics/atomic_float/wait_notify.cc: Add dg-skip-if for
6950 1.1 mrg ia32.
6951 1.1 mrg
6952 1.1 mrg 2021-04-27 Jonathan Wakely <jwakely (a] redhat.com>
6953 1.1 mrg
6954 1.1 mrg * include/experimental/internet (address_v6::bytes_type): Adjust
6955 1.1 mrg formatting.
6956 1.1 mrg (basic_endpoint): Define _M_is_v6() to put all checks for
6957 1.1 mrg AF_INET6 in one place.
6958 1.1 mrg (basic_endpoint::resize): Simplify.
6959 1.1 mrg (operator==(const tcp&, const tcp&)): Add constexpr and noexcept.
6960 1.1 mrg (operator!=(const tcp&, const tcp&)): Likewise.
6961 1.1 mrg (operator==(const udp&, const udp&)): Likewise.
6962 1.1 mrg (operator!=(const udp&, const udp&)): Likewise.
6963 1.1 mrg * testsuite/experimental/net/internet/tcp.cc: New test.
6964 1.1 mrg * testsuite/experimental/net/internet/udp.cc: New test.
6965 1.1 mrg
6966 1.1 mrg 2021-04-27 Jonathan Wakely <jwakely (a] redhat.com>
6967 1.1 mrg
6968 1.1 mrg PR libstdc++/100286
6969 1.1 mrg * include/experimental/internet (resolver_errc, resolver_category())
6970 1.1 mrg (make_error_code, make_error_condition): Define unconditionally,
6971 1.1 mrg only make enumerators and use of gai_strerror depend on the
6972 1.1 mrg availability of <netdb.h>.
6973 1.1 mrg (address_v4::to_string): Use correct constant for string length.
6974 1.1 mrg (address_v4::to_string, address_v6::to_string): Define
6975 1.1 mrg unconditionally, throw if unsupported.
6976 1.1 mrg (make_address_v4, make_address_v6): Define unconditionally.
6977 1.1 mrg Return an error if unsupported.
6978 1.1 mrg (tcp, udp, v6_only, unicast::hops, multicast::*): Define
6979 1.1 mrg conditionally,
6980 1.1 mrg * testsuite/experimental/net/internet/socket/opt.cc: Check for
6981 1.1 mrg <netinet/in.h> and <netinet/tcp.h> before using types from
6982 1.1 mrg namespace net::ip.
6983 1.1 mrg
6984 1.1 mrg 2021-04-27 Jonathan Wakely <jwakely (a] redhat.com>
6985 1.1 mrg
6986 1.1 mrg PR libstdc++/100285
6987 1.1 mrg * include/experimental/internet (resolver_base::flags):
6988 1.1 mrg Define overloaded operators as hidden friends.
6989 1.1 mrg * include/experimental/socket (socket_base::message_flags):
6990 1.1 mrg Likewise.
6991 1.1 mrg
6992 1.1 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
6993 1.1 mrg
6994 1.1 mrg * include/experimental/internet (tcp::no_delay, v6_only)
6995 1.1 mrg (unicast::hops, multicast::hops, multicast::enable_loopback):
6996 1.1 mrg Change access of base class and static data members. Add
6997 1.1 mrg using-declaration for __socket_crtp::operator=(_Tp).
6998 1.1 mrg (multicast::__mcastopt): New type.
6999 1.1 mrg (multicast::join_group, multicast::leave_group): Derive from
7000 1.1 mrg __mcastopt for common implementation.
7001 1.1 mrg * include/experimental/socket: Add comment.
7002 1.1 mrg * testsuite/experimental/net/internet/socket/opt.cc: New test.
7003 1.1 mrg * testsuite/experimental/net/socket/socket_base.cc: Check for
7004 1.1 mrg protected constructor/destructor of socket_base. Check for
7005 1.1 mrg explicit constructors of socket option classes.
7006 1.1 mrg
7007 1.1 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
7008 1.1 mrg
7009 1.1 mrg * include/experimental/bits/net.h (__socket_base): Add
7010 1.1 mrg bool template parameter to allow BooleanSocketOption and
7011 1.1 mrg IntegerSocketOption to have different __socket_base<int>
7012 1.1 mrg base classes.
7013 1.1 mrg (__socket_base<bool>): Adjust base class.
7014 1.1 mrg (__socket_base<int>): Add partial specialization.
7015 1.1 mrg (__socket_crtp::operator=(_Tp)): Add noexcept-specifier.
7016 1.1 mrg * include/experimental/socket (socket_base::broadcast)
7017 1.1 mrg (socket_base::debug, socket_base::do_not_route)
7018 1.1 mrg (socket_base::keep_alive, socket_base::linger)
7019 1.1 mrg (socket_base::out_of_band_inline)
7020 1.1 mrg (socket_base::receive_buffer_size)
7021 1.1 mrg (socket_base::receive_low_watermark)
7022 1.1 mrg (socket_base::reuse_address, socket_base::send_buffer_size)
7023 1.1 mrg (socket_base::send_low_watermark): Add using-declaration for
7024 1.1 mrg __socket_crtp::operator=(_Tp).
7025 1.1 mrg * testsuite/experimental/net/socket/socket_base.cc: Check
7026 1.1 mrg properties of socket option types.
7027 1.1 mrg
7028 1.1 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
7029 1.1 mrg
7030 1.1 mrg * include/experimental/internet (resolver_base::flags): Remove
7031 1.1 mrg enumerators. Initialize constants directly with desired values.
7032 1.1 mrg Make all operators constexpr and noexcept.
7033 1.1 mrg * testsuite/experimental/net/internet/resolver/base.cc: Use
7034 1.1 mrg __gnu_test::test_bitmask_values for bitmask type. Check
7035 1.1 mrg construction and destruction is protected.
7036 1.1 mrg
7037 1.1 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
7038 1.1 mrg
7039 1.1 mrg * include/bits/semaphore_base.h: Include <exception> and <errno.h>.
7040 1.1 mrg
7041 1.1 mrg 2021-04-26 Jonathan Wakely <jwakely (a] redhat.com>
7042 1.1 mrg
7043 1.1 mrg PR libstdc++/100259
7044 1.1 mrg * include/experimental/internet (net::ip::make_error_code)
7045 1.1 mrg (net::ip::make_error_condition, net::ip::make_network_v4)
7046 1.1 mrg (net::ip::operator==(const udp&, const udp&)): Add 'inline'.
7047 1.1 mrg
7048 1.1 mrg 2021-04-24 David Edelsohn <dje.gcc (a] gmail.com>
7049 1.1 mrg
7050 1.1 mrg * testsuite/lib/dg-options.exp (atomic_link_flags): New.
7051 1.1 mrg (add_options_for_libatomic): Use atomic_link_flags.
7052 1.1 mrg
7053 1.1 mrg 2021-04-23 Jonathan Wakely <jwakely (a] redhat.com>
7054 1.1 mrg
7055 1.1 mrg PR libstdc++/100180
7056 1.1 mrg * include/experimental/io_context (io_context): Define
7057 1.1 mrg dummy_pollfd type so that most member functions still compile
7058 1.1 mrg without <poll.h> and struct pollfd.
7059 1.1 mrg
7060 1.1 mrg 2021-04-23 Jonathan Wakely <jwakely (a] redhat.com>
7061 1.1 mrg
7062 1.1 mrg * include/experimental/io_context (io_context::async_wait): Add
7063 1.1 mrg comment.
7064 1.1 mrg * include/experimental/socket (basic_socket::async_connect):
7065 1.1 mrg Cast wait_type constant to int.
7066 1.1 mrg (basic_datagram_socket::async_receive): Likewise.
7067 1.1 mrg (basic_datagram_socket::async_receive_from): Likewise.
7068 1.1 mrg (basic_datagram_socket::async_send): Likewise.
7069 1.1 mrg (basic_datagram_socket::async_send_to): Likewise.
7070 1.1 mrg (basic_stream_socket::async_receive): Likewise.
7071 1.1 mrg (basic_stream_socket::async_send): Likewise. Use io_context
7072 1.1 mrg parameter directly, instead of via an executor.
7073 1.1 mrg (basic_socket_acceptor::async_accept): Likewise.
7074 1.1 mrg
7075 1.1 mrg 2021-04-23 Jonathan Wakely <jwakely (a] redhat.com>
7076 1.1 mrg
7077 1.1 mrg * include/experimental/socket (socket_base::shutdown_type):
7078 1.1 mrg (socket_base::wait_type, socket_base::message_flags):
7079 1.1 mrg Remove enumerators. Initialize constants directly with desired
7080 1.1 mrg values.
7081 1.1 mrg (socket_base::message_flags): Make all operators constexpr and
7082 1.1 mrg noexcept.
7083 1.1 mrg * testsuite/util/testsuite_common_types.h (test_bitmask_values):
7084 1.1 mrg New test utility.
7085 1.1 mrg * testsuite/experimental/net/socket/socket_base.cc: New test.
7086 1.1 mrg
7087 1.1 mrg 2021-04-22 David Edelsohn <dje.gcc (a] gmail.com>
7088 1.1 mrg
7089 1.1 mrg * config/os/aix/atomicity.h: Delete.
7090 1.1 mrg
7091 1.1 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
7092 1.1 mrg
7093 1.1 mrg * include/bits/atomic_timed_wait.h (__cond_wait_until_impl):
7094 1.1 mrg Handle system_clock as well as steady_clock.
7095 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_for.cc: Re-enable.
7096 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_until.cc:
7097 1.1 mrg Re-enable.
7098 1.1 mrg
7099 1.1 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
7100 1.1 mrg
7101 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_posix.cc: Add
7102 1.1 mrg options for libatomic.
7103 1.1 mrg
7104 1.1 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
7105 1.1 mrg
7106 1.1 mrg * config/os/gnu-linux/os_defines.h: Fix type in comment.
7107 1.1 mrg
7108 1.1 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
7109 1.1 mrg
7110 1.1 mrg PR libstdc++/99006
7111 1.1 mrg * include/bits/shared_ptr.h (allocate_shared): Assert that _Tp
7112 1.1 mrg is not an array type.
7113 1.1 mrg * include/bits/shared_ptr_base.h (__allocate_shared): Likewise.
7114 1.1 mrg * testsuite/20_util/shared_ptr/creation/99006.cc: New test.
7115 1.1 mrg
7116 1.1 mrg 2021-04-22 Thomas Rodgers <rodgert (a] twrodgers.com>
7117 1.1 mrg
7118 1.1 mrg * include/bits/atomic_wait.h: Always notify waiters in the
7119 1.1 mrg case of 'bare' address notification.
7120 1.1 mrg
7121 1.1 mrg 2021-04-22 Jakub Jelinek <jakub (a] redhat.com>
7122 1.1 mrg
7123 1.1 mrg PR target/100182
7124 1.1 mrg * testsuite/29_atomics/atomic_float/1.cc: Add dg-xfail-run-if for
7125 1.1 mrg ia32.
7126 1.1 mrg * testsuite/29_atomics/atomic_float/wait_notify.cc: Add dg-skip-if for
7127 1.1 mrg ia32.
7128 1.1 mrg
7129 1.1 mrg 2021-04-22 Jonathan Wakely <jwakely (a] redhat.com>
7130 1.1 mrg
7131 1.1 mrg PR libstdc++/100179
7132 1.1 mrg * include/bits/semaphore_base.h: Remove #error.
7133 1.1 mrg * include/std/semaphore: Do not define anything unless one of
7134 1.1 mrg the implementations is available.
7135 1.1 mrg
7136 1.1 mrg 2021-04-21 Thomas Rodgers <rodgert (a] twrodgers.com>
7137 1.1 mrg
7138 1.1 mrg * include/bits/semaphore_base.h: Always reload __old in
7139 1.1 mrg __atomic_semaphore::_S_do_try_acquire().
7140 1.1 mrg * testsuite/30_threads/stop_token/stop_callback/destroy.cc:
7141 1.1 mrg re-enable testcase.
7142 1.1 mrg
7143 1.1 mrg 2021-04-21 Philippe Blain <levraiphilippeblain (a] gmail.com>
7144 1.1 mrg Jonathan Wakely <jwakely (a] redhat.com>
7145 1.1 mrg
7146 1.1 mrg PR libstdc++/99453
7147 1.1 mrg * python/Makefile.am: Install libstdc++*-gdb.py more robustly.
7148 1.1 mrg * python/Makefile.in: Regenerate.
7149 1.1 mrg
7150 1.1 mrg 2021-04-21 Thomas Rodgers <rodgert (a] twrodgers.com>
7151 1.1 mrg
7152 1.1 mrg * include/bits/semaphore_base.h: Add missing _M_try_acquire()
7153 1.1 mrg member to __platform_wait.
7154 1.1 mrg
7155 1.1 mrg 2021-04-21 Jonathan Wakely <jwakely (a] redhat.com>
7156 1.1 mrg
7157 1.1 mrg * include/std/latch: Replace tab characters in license text.
7158 1.1 mrg * include/std/semaphore: Likewise.
7159 1.1 mrg
7160 1.1 mrg 2021-04-21 Jakub Jelinek <jakub (a] redhat.com>
7161 1.1 mrg
7162 1.1 mrg PR libstdc++/100164
7163 1.1 mrg * acinclude.m4: For POSIX semaphores AC_DEFINE HAVE_POSIX_SEMAPHORE
7164 1.1 mrg rather than _GLIBCXX_HAVE_POSIX_SEMAPHORE.
7165 1.1 mrg * configure: Regenerated.
7166 1.1 mrg * config.h.in: Regenerated.
7167 1.1 mrg
7168 1.1 mrg 2021-04-20 Jonathan Wakely <jwakely (a] redhat.com>
7169 1.1 mrg
7170 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_for.cc: Disable
7171 1.1 mrg test for targets not using futexes for semaphores.
7172 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
7173 1.1 mrg * testsuite/30_threads/stop_token/stop_callback/destroy.cc:
7174 1.1 mrg Disable for all targets.
7175 1.1 mrg
7176 1.1 mrg 2021-04-20 Thomas Rodgers <trodgers (a] redhat.com>
7177 1.1 mrg
7178 1.1 mrg * include/Makefile.am: Add new <bits/this_thread_sleep.h> header.
7179 1.1 mrg * include/Makefile.in: Regenerate.
7180 1.1 mrg * include/bits/this_thread_sleep.h: New file.
7181 1.1 mrg * include/bits/atomic_base.h: Adjust all calls
7182 1.1 mrg to __atomic_wait/__atomic_notify for new call signatures.
7183 1.1 mrg * include/bits/atomic_timed_wait.h: Extensive rewrite.
7184 1.1 mrg * include/bits/atomic_wait.h: Likewise.
7185 1.1 mrg * include/bits/semaphore_base.h: Adjust all calls
7186 1.1 mrg to __atomic_wait/__atomic_notify for new call signatures.
7187 1.1 mrg * include/std/atomic: Likewise.
7188 1.1 mrg * include/std/barrier: Likewise.
7189 1.1 mrg * include/std/latch: Likewise.
7190 1.1 mrg * include/std/semaphore: Likewise.
7191 1.1 mrg * include/std/thread (this_thread::sleep_for)
7192 1.1 mrg (this_thread::sleep_until): Move to new header.
7193 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/bool.cc: Simplify
7194 1.1 mrg test.
7195 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
7196 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
7197 1.1 mrg * testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
7198 1.1 mrg * testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
7199 1.1 mrg * testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
7200 1.1 mrg * testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise.
7201 1.1 mrg
7202 1.1 mrg 2021-04-20 Patrick Palka <ppalka (a] redhat.com>
7203 1.1 mrg
7204 1.1 mrg PR libstdc++/95983
7205 1.1 mrg * include/bits/stl_iterator.h (__detail::__move_iter_cat):
7206 1.1 mrg Define.
7207 1.1 mrg (move_iterator): Derive from the above in C++20 in order to
7208 1.1 mrg conditionally define iterator_category as per P2259.
7209 1.1 mrg (move_iterator::__base_cat): No longer used, so remove.
7210 1.1 mrg (move_iterator::iterator_category): Remove in C++20.
7211 1.1 mrg (__detail::__common_iter_use_postfix_proxy): Define.
7212 1.1 mrg (common_iterator::_Proxy): Rename to ...
7213 1.1 mrg (common_iterator:__arrow_proxy): ... this.
7214 1.1 mrg (common_iterator::__postfix_proxy): Define as per P2259.
7215 1.1 mrg (common_iterator::operator->): Adjust.
7216 1.1 mrg (common_iterator::operator++): Adjust as per P2259.
7217 1.1 mrg (iterator_traits<common_iterator>::_S_iter_cat): Define.
7218 1.1 mrg (iterator_traits<common_iterator>::iterator_category): Change as
7219 1.1 mrg per P2259.
7220 1.1 mrg (__detail::__counted_iter_value_type): Define.
7221 1.1 mrg (__detail::__counted_iter_concept): Define.
7222 1.1 mrg (__detail::__counted_iter_cat): Define.
7223 1.1 mrg (counted_iterator): Derive from the above three classes in order
7224 1.1 mrg to conditionally define value_type, iterator_concept and
7225 1.1 mrg iterator category respectively as per P2259.
7226 1.1 mrg (counted_iterator::operator->): Define as per P2259.
7227 1.1 mrg (incrementable_traits<counted_iterator>): Remove as per P2259.
7228 1.1 mrg (iterator_traits<counted_iterator>): Adjust as per P2259.
7229 1.1 mrg * include/std/ranges (__detail::__iota_view_iter_cat): Define.
7230 1.1 mrg (iota_view::_Iterator): Derive from the above in order to
7231 1.1 mrg conditionally define iterator_category as per P2259.
7232 1.1 mrg (iota_view::_S_iter_cat): Rename to ...
7233 1.1 mrg (iota_view::_S_iter_concept): ... this.
7234 1.1 mrg (iota_view::iterator_concept): Use it to apply LWG 3291 changes.
7235 1.1 mrg (iota_view::iterator_category): Remove.
7236 1.1 mrg (__detail::__filter_view_iter_cat): Define.
7237 1.1 mrg (filter_view::_Iterator): Derive from the above in order to
7238 1.1 mrg conditionally define iterator_category as per P2259.
7239 1.1 mrg (filter_view::_Iterator): Move to struct __filter_view_iter_cat.
7240 1.1 mrg (filter_view::_Iterator::iterator_category): Remove.
7241 1.1 mrg (transform_view::_Base): Define.
7242 1.1 mrg (transform_view::__iter_cat): Define.
7243 1.1 mrg (transform_view::_Iterator): Derive from the above in order to
7244 1.1 mrg conditionally define iterator_category as per P2259.
7245 1.1 mrg (transform_view::_Iterator::_Base): Just alias
7246 1.1 mrg transform_view::_Base.
7247 1.1 mrg (transform_view::_Iterator::_S_iter_cat): Move to struct
7248 1.1 mrg transform_view::__iter_cat.
7249 1.1 mrg (transform_view::_Iterator::iterator_category): Remove.
7250 1.1 mrg (transform_view::_Sentinel::_Base): Just alias
7251 1.1 mrg transform_view::_Base.
7252 1.1 mrg (join_view::_Base): Define.
7253 1.1 mrg (join_view::_Outer_iter): Define.
7254 1.1 mrg (join_view::_Inner_iter): Define.
7255 1.1 mrg (join_view::_S_ref_is_glvalue): Define.
7256 1.1 mrg (join_view::__iter_cat): Define.
7257 1.1 mrg (join_view::_Iterator): Derive from it in order to conditionally
7258 1.1 mrg define iterator_category as per P2259.
7259 1.1 mrg (join_view::_Iterator::_Base): Just alias join_view::_Base.
7260 1.1 mrg (join_view::_Iterator::_S_ref_is_glvalue): Just alias
7261 1.1 mrg join_view::_S_ref_is_glvalue.
7262 1.1 mrg (join_view::_Iterator::_S_iter_cat): Move to struct
7263 1.1 mrg transform_view::__iter_cat.
7264 1.1 mrg (join_view::_Iterator::_Outer_iter): Just alias
7265 1.1 mrg join_view::_Outer_iter.
7266 1.1 mrg (join_view::_Iterator::_Inner_iter): Just alias
7267 1.1 mrg join_view::_Inner_iter.
7268 1.1 mrg (join_view::_Iterator::iterator_category): Remove.
7269 1.1 mrg (join_view::_Sentinel::_Base): Just alias join_view::_Base.
7270 1.1 mrg (__detail::__split_view_outer_iter_cat): Define.
7271 1.1 mrg (__detail::__split_view_inner_iter_cat): Define.
7272 1.1 mrg (split_view::_Base): Define.
7273 1.1 mrg (split_view::_Outer_iter): Derive from __split_view_outer_iter_cat
7274 1.1 mrg in order to conditionally define iterator_category as per P2259.
7275 1.1 mrg (split_view::_Outer_iter::iterator_category): Remove.
7276 1.1 mrg (split_view::_Inner_iter): Derive from __split_view_inner_iter_cat
7277 1.1 mrg in order to conditionally define iterator_category as per P2259.
7278 1.1 mrg (split_view::_Inner_iter::_S_iter_cat): Move to
7279 1.1 mrg __split_view_inner_iter_cat.
7280 1.1 mrg (split_view::_Inner_iter::iterator_category): Remove.
7281 1.1 mrg (elements_view::_Base): Define.
7282 1.1 mrg (elements_view::__iter_cat): Define.
7283 1.1 mrg (elements_view::_Iterator): Derive from the above in order to
7284 1.1 mrg conditionall define iterator_category as per P2259.
7285 1.1 mrg (elements_view::_Iterator::_Base): Just alias
7286 1.1 mrg elements_view::_Base.
7287 1.1 mrg (elements_view::_Iterator::_S_iter_concept)
7288 1.1 mrg (elements_view::_Iterator::iterator_concept): Define as per
7289 1.1 mrg P2259.
7290 1.1 mrg (elements_view::_Iterator::iterator_category): Remove.
7291 1.1 mrg (elements_view::_Sentinel::_Base): Just alias
7292 1.1 mrg elements_view::_Base.
7293 1.1 mrg * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
7294 1.1 mrg Adjust constraints on iterator_traits<counted_iterator>.
7295 1.1 mrg * testsuite/std/ranges/p2259.cc: New test.
7296 1.1 mrg
7297 1.1 mrg 2021-04-20 Jonathan Wakely <jwakely (a] redhat.com>
7298 1.1 mrg
7299 1.1 mrg PR libstdc++/100146
7300 1.1 mrg * include/std/charconv (__cpp_lib_to_chars): Define
7301 1.1 mrg conditionally.
7302 1.1 mrg * include/std/version (__cpp_lib_to_chars): Likewise..
7303 1.1 mrg * testsuite/20_util/from_chars/4.cc: Only check feature test
7304 1.1 mrg macro, not _GLIBCXX_HAVE_USELOCALE.
7305 1.1 mrg * testsuite/20_util/from_chars/5.cc: Likewise.
7306 1.1 mrg * testsuite/20_util/from_chars/6.cc: Likewise.
7307 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: Likewise.
7308 1.1 mrg
7309 1.1 mrg 2021-04-20 Jakub Jelinek <jakub (a] redhat.com>
7310 1.1 mrg
7311 1.1 mrg * testsuite/util/testsuite_abi.cc (compare_symbols): If any symbol
7312 1.1 mrg versions with _IEEE128_ substring are found, set ieee_version_found
7313 1.1 mrg to true. Ignore missing symbols with _IEEE128_ in version name if
7314 1.1 mrg !ieee_version_found. Use i->first as version_name instead of
7315 1.1 mrg i->second.version_name if the latter is empty.
7316 1.1 mrg * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
7317 1.1 mrg
7318 1.1 mrg 2021-04-19 H.J. Lu <hjl.tools (a] gmail.com>
7319 1.1 mrg
7320 1.1 mrg * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt:
7321 1.1 mrg Updated.
7322 1.1 mrg
7323 1.1 mrg 2021-04-17 Jakub Jelinek <jakub (a] redhat.com>
7324 1.1 mrg
7325 1.1 mrg * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
7326 1.1 mrg * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
7327 1.1 mrg
7328 1.1 mrg 2021-04-17 Jakub Jelinek <jakub (a] redhat.com>
7329 1.1 mrg
7330 1.1 mrg * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
7331 1.1 mrg * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
7332 1.1 mrg * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
7333 1.1 mrg * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
7334 1.1 mrg * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
7335 1.1 mrg * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
7336 1.1 mrg
7337 1.1 mrg 2021-04-15 Jonathan Wakely <jwakely (a] redhat.com>
7338 1.1 mrg
7339 1.1 mrg * testsuite/lib/dg-options.exp (add_options_for_libatomic): Also
7340 1.1 mrg add libatomic options for 32-bit sparc*-*-linux-gnu.
7341 1.1 mrg
7342 1.1 mrg 2021-04-15 Jonathan Wakely <jwakely (a] redhat.com>
7343 1.1 mrg
7344 1.1 mrg PR libstdc++/96657
7345 1.1 mrg * libsupc++/Makefile.am: Add atomicity.cc here.
7346 1.1 mrg * src/c++98/Makefile.am: Remove it from here.
7347 1.1 mrg * libsupc++/Makefile.in: Regenerate.
7348 1.1 mrg * src/c++98/Makefile.in: Regenerate.
7349 1.1 mrg * testsuite/18_support/exception_ptr/96657.cc: New test.
7350 1.1 mrg
7351 1.1 mrg 2021-04-13 Jonathan Wakely <jwakely (a] redhat.com>
7352 1.1 mrg
7353 1.1 mrg PR libstdc++/100060
7354 1.1 mrg * include/std/bit: Only include <ext/numeric_traits.h> for
7355 1.1 mrg hosted build, use <limits> otherwise.
7356 1.1 mrg
7357 1.1 mrg 2021-04-13 Jonathan Wakely <jwakely (a] redhat.com>
7358 1.1 mrg
7359 1.1 mrg * doc/xml/manual/backwards_compatibility.xml: Remove porting
7360 1.1 mrg notes for libg++ and libstdc++-v2, and bibliography.
7361 1.1 mrg * doc/html/*: Regenerated.
7362 1.1 mrg
7363 1.1 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
7364 1.1 mrg
7365 1.1 mrg PR libstdc++/100044
7366 1.1 mrg * include/bits/ranges_util.h (__detail::__iterator_sentinel_pair):
7367 1.1 mrg Remove helper concept.
7368 1.1 mrg (subrange(_Pr), subrange(Pr, __make_unsigned_like<...>)): Remove
7369 1.1 mrg deduction guides, as per LWG 3404.
7370 1.1 mrg * testsuite/std/ranges/subrange/lwg3282_neg.cc: Check that class
7371 1.1 mrg template argument deduction fails.
7372 1.1 mrg
7373 1.1 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
7374 1.1 mrg
7375 1.1 mrg * testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc:
7376 1.1 mrg Adjust expected error for C++20 mode.
7377 1.1 mrg * testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc:
7378 1.1 mrg Likewise.
7379 1.1 mrg
7380 1.1 mrg 2021-04-12 Jonathan Wakely <jwakely (a] redhat.com>
7381 1.1 mrg
7382 1.1 mrg PR libstdc++/99995
7383 1.1 mrg * testsuite/17_intro/headers/c++1998/49745.cc: Include all
7384 1.1 mrg standard headers and XFAIL for effective-target c++20.
7385 1.1 mrg
7386 1.1 mrg 2021-04-09 Franois Dumont <fdumont (a] gcc.gnu.org>
7387 1.1 mrg
7388 1.1 mrg PR libstdc++/99402
7389 1.1 mrg * include/debug/helper_functions.h (__can_advance(_InputIterator,
7390 1.1 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
7391 1.1 mrg (__can_advance(const _Safe_iterator<>&,
7392 1.1 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
7393 1.1 mrg * include/debug/macros.h (__glibcxx_check_can_increment_dist): New,
7394 1.1 mrg use latter.
7395 1.1 mrg (__glibcxx_check_can_increment_range): Adapt to use latter.
7396 1.1 mrg (__glibcxx_check_can_decrement_range): Likewise.
7397 1.1 mrg * include/debug/safe_iterator.h
7398 1.1 mrg (_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
7399 1.1 mrg int)): New.
7400 1.1 mrg (__can_advance(const _Safe_iterator<>&,
7401 1.1 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
7402 1.1 mrg * include/debug/safe_iterator.tcc
7403 1.1 mrg (_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
7404 1.1 mrg int)): New.
7405 1.1 mrg (_Safe_iterator<>::_M_valid_range(const _Safe_iterator<>&,
7406 1.1 mrg std::pair<difference_type, _Distance_precision>&, bool)): Adapt for
7407 1.1 mrg __dp_sign_max_size.
7408 1.1 mrg (__copy_move_a): Adapt to use __glibcxx_check_can_increment_dist.
7409 1.1 mrg (__copy_move_backward_a): Likewise.
7410 1.1 mrg (__equal_aux): Likewise.
7411 1.1 mrg * include/debug/stl_iterator.h (__can_advance(const std::reverse_iterator<>&,
7412 1.1 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
7413 1.1 mrg (__can_advance(const std::move_iterator<>&,
7414 1.1 mrg const std::pair<_Diff, _Distance_precision>&, int)): New.
7415 1.1 mrg * testsuite/25_algorithms/copy/debug/99402.cc: New test.
7416 1.1 mrg
7417 1.1 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
7418 1.1 mrg
7419 1.1 mrg PR libstdc++/99985
7420 1.1 mrg * include/bits/hashtable.h (_Hashtable::_S_nothrow_move()): Fix
7421 1.1 mrg to be a valid constexpr function in C++11.
7422 1.1 mrg * testsuite/23_containers/unordered_set/cons/99985.cc: New test.
7423 1.1 mrg
7424 1.1 mrg 2021-04-09 Jonathan Wakely <jwakely (a] redhat.com>
7425 1.1 mrg
7426 1.1 mrg * include/bits/fs_fwd.h: Fix doxygen group command.
7427 1.1 mrg * include/bits/streambuf_iterator.h: Likewise.
7428 1.1 mrg * include/bits/uses_allocator_args.h: Likewise.
7429 1.1 mrg * include/std/memory: Likewise.
7430 1.1 mrg * include/tr1/complex: Likewise.
7431 1.1 mrg
7432 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7433 1.1 mrg
7434 1.1 mrg * include/bits/basic_string.h: Tweak doxygen comment.
7435 1.1 mrg
7436 1.1 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
7437 1.1 mrg
7438 1.1 mrg * include/std/ranges (__detail::find): Define.
7439 1.1 mrg (split_view::_OuterIter::operator++): Apply proposed resolution
7440 1.1 mrg of LWG 3505.
7441 1.1 mrg * testsuite/std/ranges/adaptors/split.cc (test10): New test.
7442 1.1 mrg
7443 1.1 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
7444 1.1 mrg
7445 1.1 mrg * include/std/ranges (__detail::find_if): Simplify.
7446 1.1 mrg (__detail::find_if_not): Likewise.
7447 1.1 mrg (__detail::min): Remove.
7448 1.1 mrg (__detail::mismatch): Simplify.
7449 1.1 mrg (take_view::size): Use std::min instead of __detail::min.
7450 1.1 mrg
7451 1.1 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
7452 1.1 mrg
7453 1.1 mrg * include/std/ranges (__detail::__returnable_element): New
7454 1.1 mrg concept.
7455 1.1 mrg (elements_view): Use this concept in its constraints. Add
7456 1.1 mrg missing private access specifier.
7457 1.1 mrg (elements_view::_S_get_element): Define as per LWG 3502.
7458 1.1 mrg (elements_view::operator*, elements_view::operator[]): Use
7459 1.1 mrg _S_get_element.
7460 1.1 mrg (elements_view::operator++): Remove unnecessary constraint
7461 1.1 mrg as per LWG 3492.
7462 1.1 mrg * testsuite/std/ranges/adaptors/elements.cc (test05): New test.
7463 1.1 mrg
7464 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7465 1.1 mrg
7466 1.1 mrg * doc/Makefile.am (stamp-pdf-doxygen): Also grep for
7467 1.1 mrg out-of-memory error in log file.
7468 1.1 mrg * doc/Makefile.in: Regenerate.
7469 1.1 mrg
7470 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7471 1.1 mrg
7472 1.1 mrg * configure: Regenerate.
7473 1.1 mrg
7474 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7475 1.1 mrg
7476 1.1 mrg * include/bits/random.h: Fix doxygen group commands.
7477 1.1 mrg * include/bits/regex_constants.h: Likewise.
7478 1.1 mrg * include/tr1/random.h: Likewise.
7479 1.1 mrg
7480 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7481 1.1 mrg
7482 1.1 mrg * include/bits/hashtable.h (_Hashtable::_S_nothrow_move()):
7483 1.1 mrg New function to determine noexcept-specifier for move
7484 1.1 mrg constructors.
7485 1.1 mrg (_Hashtable): Use _S_nothrow_move() on move constructors.
7486 1.1 mrg * testsuite/23_containers/unordered_map/cons/noexcept_move_construct.cc:
7487 1.1 mrg Correct static assertion message.
7488 1.1 mrg * testsuite/23_containers/unordered_multimap/cons/noexcept_move_construct.cc:
7489 1.1 mrg Likewise.
7490 1.1 mrg * testsuite/23_containers/unordered_multiset/cons/noexcept_move_construct.cc:
7491 1.1 mrg Likewise.
7492 1.1 mrg * testsuite/23_containers/unordered_set/cons/noexcept_move_construct.cc:
7493 1.1 mrg Likewise.
7494 1.1 mrg
7495 1.1 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
7496 1.1 mrg
7497 1.1 mrg PR libstdc++/98384
7498 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: Don't run the test
7499 1.1 mrg on targets without a large long double. XFAIL the execution on
7500 1.1 mrg targets with a non-conforming printf.
7501 1.1 mrg
7502 1.1 mrg 2021-04-08 Patrick Palka <ppalka (a] redhat.com>
7503 1.1 mrg
7504 1.1 mrg PR libstdc++/99433
7505 1.1 mrg * include/std/ranges (__adaptor::__maybe_refwrap): Remove.
7506 1.1 mrg (__adaptor::__adaptor_invocable): New concept.
7507 1.1 mrg (__adaptor::__adaptor_partial_app_viable): New concept.
7508 1.1 mrg (__adaptor::_RangeAdaptorClosure): Rewrite, turning it into a
7509 1.1 mrg non-template base class.
7510 1.1 mrg (__adaptor::_RangeAdaptor): Rewrite, turning it into a CRTP base
7511 1.1 mrg class template.
7512 1.1 mrg (__adaptor::_Partial): New class template that represents
7513 1.1 mrg partial application of a range adaptor non-closure.
7514 1.1 mrg (__adaptor::__pipe_invocable): New concept.
7515 1.1 mrg (__adaptor::_Pipe): New class template.
7516 1.1 mrg (__detail::__can_ref_view): New concept.
7517 1.1 mrg (__detail::__can_subrange): New concept.
7518 1.1 mrg (all): Replace the lambda here with ...
7519 1.1 mrg (_All): ... this functor. Add appropriate constraints.
7520 1.1 mrg (__detail::__can_filter_view): New concept.
7521 1.1 mrg (filter, _Filter): As in all/_All.
7522 1.1 mrg (__detail::__can_transform): New concept.
7523 1.1 mrg (transform, _Transform): As in all/_All.
7524 1.1 mrg (__detail::__can_take_view): New concept.
7525 1.1 mrg (take, _Take): As in all/_All.
7526 1.1 mrg (__detail::__can_take_while_view): New concept.
7527 1.1 mrg (take_while, _TakeWhile): As in all/_All.
7528 1.1 mrg (__detail::__can_drop_view): New concept.
7529 1.1 mrg (drop, _Drop): As in all/_All.
7530 1.1 mrg (__detail::__can_drop_while_view): New concept.
7531 1.1 mrg (drop_while, _DropWhile): As in all/_All.
7532 1.1 mrg (__detail::__can_join_view): New concept.
7533 1.1 mrg (join, _Join): As in all/_All.
7534 1.1 mrg (__detail::__can_split_view): New concept.
7535 1.1 mrg (split, _Split): As in all/_All. Rename template parameter
7536 1.1 mrg _Fp to _Pattern.
7537 1.1 mrg (__detail::__already_common): New concept.
7538 1.1 mrg (__detail::__can_common_view): New concept.
7539 1.1 mrg (common, _Common): As in all/_All.
7540 1.1 mrg (__detail::__can_reverse_view): New concept.
7541 1.1 mrg (reverse, _Reverse): As in all/_All.
7542 1.1 mrg (__detail::__can_elements_view): New concept.
7543 1.1 mrg (elements, _Elements): As in all/_All.
7544 1.1 mrg (keys, values): Adjust.
7545 1.1 mrg * testsuite/std/ranges/adaptors/99433.cc: New test.
7546 1.1 mrg * testsuite/std/ranges/adaptors/all.cc: No longer expect that
7547 1.1 mrg adding empty range adaptor closure objects to a pipeline doesn't
7548 1.1 mrg increase the size of the pipeline.
7549 1.1 mrg (test05): New test.
7550 1.1 mrg * testsuite/std/ranges/adaptors/common.cc (test03): New test.
7551 1.1 mrg * testsuite/std/ranges/adaptors/drop.cc (test09): New test.
7552 1.1 mrg * testsuite/std/ranges/adaptors/drop_while.cc (test04): New test.
7553 1.1 mrg * testsuite/std/ranges/adaptors/elements.cc (test04): New test.
7554 1.1 mrg * testsuite/std/ranges/adaptors/filter.cc (test06): New test.
7555 1.1 mrg * testsuite/std/ranges/adaptors/join.cc (test09): New test.
7556 1.1 mrg * testsuite/std/ranges/adaptors/p2281.cc: New test.
7557 1.1 mrg * testsuite/std/ranges/adaptors/reverse.cc (test07): New test.
7558 1.1 mrg * testsuite/std/ranges/adaptors/split.cc (test01, test04):
7559 1.1 mrg Adjust.
7560 1.1 mrg (test09): New test.
7561 1.1 mrg * testsuite/std/ranges/adaptors/split_neg.cc (test01): Adjust
7562 1.1 mrg expected error message.
7563 1.1 mrg (test02): Likewise. Extend test.
7564 1.1 mrg * testsuite/std/ranges/adaptors/take.cc (test06): New test.
7565 1.1 mrg * testsuite/std/ranges/adaptors/take_while.cc (test05): New test.
7566 1.1 mrg * testsuite/std/ranges/adaptors/transform.cc (test07, test08):
7567 1.1 mrg New test.
7568 1.1 mrg
7569 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7570 1.1 mrg
7571 1.1 mrg * include/std/string_view: Adjust Doxygen @file comment.
7572 1.1 mrg
7573 1.1 mrg 2021-04-08 Jonathan Wakely <jwakely (a] redhat.com>
7574 1.1 mrg
7575 1.1 mrg * include/std/type_traits (is_scoped_enum<T>): Constrain partial
7576 1.1 mrg specialization to not match incomplete enum types. Use a
7577 1.1 mrg requires-expression instead of instantiating is_convertible.
7578 1.1 mrg (is_scoped_enum<const T>): Add as workaround for PR c++/99968.
7579 1.1 mrg * testsuite/20_util/is_scoped_enum/value.cc: Check with
7580 1.1 mrg incomplete types and opaque-enum-declarations.
7581 1.1 mrg
7582 1.1 mrg 2021-04-07 Jonathan Wakely <jwakely (a] redhat.com>
7583 1.1 mrg
7584 1.1 mrg PR libstdc++/99805
7585 1.1 mrg * src/c++17/fs_path.cc (path::_M_split_cmpts): Do not call
7586 1.1 mrg non-const member on _M_pathname, to avoid copy-on-write.
7587 1.1 mrg * testsuite/27_io/filesystem/path/decompose/parent_path.cc:
7588 1.1 mrg Check construction from strings that might be shared.
7589 1.1 mrg
7590 1.1 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
7591 1.1 mrg
7592 1.1 mrg * include/bits/move.h (forward, move, move_if_noexcept)
7593 1.1 mrg (addressof): Add _GLIBCXX_NODISCARD.
7594 1.1 mrg * include/bits/ranges_cmp.h (identity::operator()): Add
7595 1.1 mrg nodiscard attribute.
7596 1.1 mrg * include/c_global/cstddef (to_integer): Likewise.
7597 1.1 mrg * include/std/bit (bit_cast): Likewise.
7598 1.1 mrg * include/std/utility (as_const, to_underlying): Likewise.
7599 1.1 mrg
7600 1.1 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
7601 1.1 mrg
7602 1.1 mrg * include/bits/move.h (forward): Change static_assert message
7603 1.1 mrg to be unambiguous about what must be true.
7604 1.1 mrg * testsuite/20_util/forward/c_neg.cc: Adjust dg-error.
7605 1.1 mrg * testsuite/20_util/forward/f_neg.cc: Likewise.
7606 1.1 mrg
7607 1.1 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
7608 1.1 mrg
7609 1.1 mrg * include/bits/alloc_traits.h: Use markdown for code font.
7610 1.1 mrg * include/bits/basic_string.h: Fix @param names.
7611 1.1 mrg * include/bits/max_size_type.h: Remove period after @file.
7612 1.1 mrg * include/bits/regex.h: Fix duplicate @retval names, and rename.
7613 1.1 mrg * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Add
7614 1.1 mrg group open to match existing group close.
7615 1.1 mrg * include/ext/pb_ds/priority_queue.hpp: Add blank line before group
7616 1.1 mrg open.
7617 1.1 mrg
7618 1.1 mrg 2021-04-06 Jonathan Wakely <jwakely (a] redhat.com>
7619 1.1 mrg
7620 1.1 mrg * include/bits/atomic_base.h: Fix doxygen group close.
7621 1.1 mrg * include/bits/basic_ios.h: Likewise.
7622 1.1 mrg * include/bits/forward_list.h: Likewise.
7623 1.1 mrg * include/bits/fs_dir.h: Likewise.
7624 1.1 mrg * include/bits/fs_ops.h: Likewise.
7625 1.1 mrg * include/bits/fs_path.h: Likewise.
7626 1.1 mrg * include/bits/functional_hash.h: Likewise.
7627 1.1 mrg * include/bits/gslice.h: Likewise.
7628 1.1 mrg * include/bits/gslice_array.h: Likewise.
7629 1.1 mrg * include/bits/hashtable_policy.h: Likewise.
7630 1.1 mrg * include/bits/indirect_array.h: Likewise.
7631 1.1 mrg * include/bits/locale_classes.h: Likewise.
7632 1.1 mrg * include/bits/locale_facets.h: Likewise.
7633 1.1 mrg * include/bits/locale_facets_nonio.h: Likewise.
7634 1.1 mrg * include/bits/mask_array.h: Likewise.
7635 1.1 mrg * include/bits/refwrap.h: Likewise.
7636 1.1 mrg * include/bits/regex.h: Likewise.
7637 1.1 mrg * include/bits/regex_automaton.h: Likewise.
7638 1.1 mrg * include/bits/regex_compiler.h: Likewise.
7639 1.1 mrg * include/bits/regex_constants.h: Likewise.
7640 1.1 mrg * include/bits/regex_error.h: Likewise.
7641 1.1 mrg * include/bits/regex_executor.h: Likewise.
7642 1.1 mrg * include/bits/regex_scanner.h: Likewise.
7643 1.1 mrg * include/bits/shared_ptr.h: Likewise.
7644 1.1 mrg * include/bits/shared_ptr_atomic.h: Likewise.
7645 1.1 mrg * include/bits/shared_ptr_base.h: Likewise.
7646 1.1 mrg * include/bits/slice_array.h: Likewise.
7647 1.1 mrg * include/bits/specfun.h: Likewise.
7648 1.1 mrg * include/bits/std_function.h: Likewise.
7649 1.1 mrg * include/bits/std_mutex.h: Likewise.
7650 1.1 mrg * include/bits/stl_deque.h: Likewise.
7651 1.1 mrg * include/bits/stl_iterator.h: Likewise.
7652 1.1 mrg * include/bits/stl_iterator_base_types.h: Likewise.
7653 1.1 mrg * include/bits/stl_map.h: Likewise.
7654 1.1 mrg * include/bits/stl_multimap.h: Likewise.
7655 1.1 mrg * include/bits/stl_multiset.h: Likewise.
7656 1.1 mrg * include/bits/stl_numeric.h: Likewise.
7657 1.1 mrg * include/bits/stl_pair.h: Likewise.
7658 1.1 mrg * include/bits/stl_set.h: Likewise.
7659 1.1 mrg * include/bits/stl_uninitialized.h: Likewise.
7660 1.1 mrg * include/bits/stream_iterator.h: Likewise.
7661 1.1 mrg * include/bits/streambuf_iterator.h: Likewise.
7662 1.1 mrg * include/bits/unique_ptr.h: Likewise.
7663 1.1 mrg * include/bits/unordered_map.h: Likewise.
7664 1.1 mrg * include/bits/unordered_set.h: Likewise.
7665 1.1 mrg * include/decimal/decimal: Likewise.
7666 1.1 mrg * include/experimental/any: Likewise.
7667 1.1 mrg * include/experimental/array: Likewise.
7668 1.1 mrg * include/experimental/bits/fs_dir.h: Likewise.
7669 1.1 mrg * include/experimental/bits/fs_fwd.h: Likewise.
7670 1.1 mrg * include/experimental/bits/fs_ops.h: Likewise.
7671 1.1 mrg * include/experimental/bits/fs_path.h: Likewise.
7672 1.1 mrg * include/experimental/buffer: Likewise.
7673 1.1 mrg * include/experimental/internet: Likewise.
7674 1.1 mrg * include/experimental/optional: Likewise.
7675 1.1 mrg * include/experimental/propagate_const: Likewise.
7676 1.1 mrg * include/experimental/socket: Likewise.
7677 1.1 mrg * include/ext/pb_ds/assoc_container.hpp: Likewise.
7678 1.1 mrg * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
7679 1.1 mrg Likewise.
7680 1.1 mrg * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Likewise.
7681 1.1 mrg * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Likewise.
7682 1.1 mrg * include/ext/pb_ds/detail/types_traits.hpp: Likewise.
7683 1.1 mrg * include/ext/pb_ds/exception.hpp: Likewise.
7684 1.1 mrg * include/ext/pb_ds/priority_queue.hpp: Likewise.
7685 1.1 mrg * include/ext/pb_ds/tag_and_trait.hpp: Likewise.
7686 1.1 mrg * include/ext/random: Likewise.
7687 1.1 mrg * include/std/any: Likewise.
7688 1.1 mrg * include/std/atomic: Likewise.
7689 1.1 mrg * include/std/bitset: Likewise.
7690 1.1 mrg * include/std/chrono: Likewise.
7691 1.1 mrg * include/std/complex: Likewise.
7692 1.1 mrg * include/std/condition_variable: Likewise.
7693 1.1 mrg * include/std/fstream: Likewise.
7694 1.1 mrg * include/std/future: Likewise.
7695 1.1 mrg * include/std/iostream: Likewise.
7696 1.1 mrg * include/std/istream: Likewise.
7697 1.1 mrg * include/std/mutex: Likewise.
7698 1.1 mrg * include/std/numeric: Likewise.
7699 1.1 mrg * include/std/ostream: Likewise.
7700 1.1 mrg * include/std/ratio: Likewise.
7701 1.1 mrg * include/std/shared_mutex: Likewise.
7702 1.1 mrg * include/std/stdexcept: Likewise.
7703 1.1 mrg * include/std/streambuf: Likewise.
7704 1.1 mrg * include/std/system_error: Likewise.
7705 1.1 mrg * include/std/thread: Likewise.
7706 1.1 mrg * include/std/valarray: Likewise.
7707 1.1 mrg * include/std/variant: Likewise.
7708 1.1 mrg * include/tr1/cmath: Likewise.
7709 1.1 mrg * include/tr1/regex: Likewise.
7710 1.1 mrg * include/tr2/dynamic_bitset: Likewise.
7711 1.1 mrg * libsupc++/atomic_lockfree_defines.h: Likewise.
7712 1.1 mrg * libsupc++/exception: Likewise.
7713 1.1 mrg * libsupc++/exception.h: Likewise.
7714 1.1 mrg * libsupc++/exception_ptr.h: Likewise.
7715 1.1 mrg * libsupc++/nested_exception.h: Likewise.
7716 1.1 mrg
7717 1.1 mrg 2021-03-31 Alexandre Oliva <oliva (a] adacore.com>
7718 1.1 mrg
7719 1.1 mrg * testsuite/30_threads/future/members/poll.cc: Use faster
7720 1.1 mrg after-ready call in the calibration loop.
7721 1.1 mrg
7722 1.1 mrg 2021-03-29 Jonathan Wakely <jwakely (a] redhat.com>
7723 1.1 mrg
7724 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Adjust link for PSTL.
7725 1.1 mrg * doc/html/manual/status.html: Regenerate.
7726 1.1 mrg
7727 1.1 mrg 2021-03-28 Franois Dumont <fdumont (a] gcc.gnu.org>
7728 1.1 mrg
7729 1.1 mrg * include/debug/forward_list
7730 1.1 mrg (forward_list(forward_list&&, const allocator_type&)): Add noexcept qualification.
7731 1.1 mrg * include/debug/list (list(list&&, const allocator_type&)): Likewise and add
7732 1.1 mrg call to safe container allocator aware move constructor.
7733 1.1 mrg * include/debug/vector (vector(vector&&, const allocator_type&)):
7734 1.1 mrg Fix noexcept qualification.
7735 1.1 mrg * testsuite/23_containers/forward_list/cons/noexcept_move_construct.cc:
7736 1.1 mrg Add allocator-extended move constructor noexceot qualification check.
7737 1.1 mrg * testsuite/23_containers/list/cons/noexcept_move_construct.cc: Likewise.
7738 1.1 mrg
7739 1.1 mrg 2021-03-26 Jonathan Wakely <jwakely (a] redhat.com>
7740 1.1 mrg
7741 1.1 mrg * src/c++11/random.cc (USE_LCG): Define when a pseudo-random
7742 1.1 mrg fallback is needed.
7743 1.1 mrg [USE_LCG] (bad_seed, construct_lcg_at, destroy_lcg_at, __lcg):
7744 1.1 mrg New helper functions and callback.
7745 1.1 mrg (random_device::_M_init): Add 'prng' and 'all' enumerators.
7746 1.1 mrg Replace switch with fallthrough with a series of 'if' statements.
7747 1.1 mrg [USE_LCG]: Construct an lcg_type engine and use __lcg when cpuid
7748 1.1 mrg checks fail.
7749 1.1 mrg (random_device::_M_init_pretr1) [USE_MT19937]: Accept "prng"
7750 1.1 mrg token.
7751 1.1 mrg (random_device::_M_getval): Check for callback unconditionally
7752 1.1 mrg and always pass _M_file pointer.
7753 1.1 mrg * testsuite/26_numerics/random/random_device/85494.cc: Remove
7754 1.1 mrg effective-target check. Use new random_device_available helper.
7755 1.1 mrg * testsuite/26_numerics/random/random_device/94087.cc: Likewise.
7756 1.1 mrg * testsuite/26_numerics/random/random_device/cons/default-cow.cc:
7757 1.1 mrg Remove effective-target check.
7758 1.1 mrg * testsuite/26_numerics/random/random_device/cons/default.cc:
7759 1.1 mrg Likewise.
7760 1.1 mrg * testsuite/26_numerics/random/random_device/cons/token.cc: Use
7761 1.1 mrg new random_device_available helper. Test "prng" token.
7762 1.1 mrg * testsuite/util/testsuite_random.h (random_device_available):
7763 1.1 mrg New helper function.
7764 1.1 mrg
7765 1.1 mrg 2021-03-25 Franois Dumont <fdumont (a] gcc.gnu.org>
7766 1.1 mrg
7767 1.1 mrg * include/debug/string
7768 1.1 mrg (basic_string(const basic_string&, const _Alloc&)): Define even if !_GLIBCXX_USE_CXX11_ABI.
7769 1.1 mrg (basic_string(basic_string&&, const _Alloc&)): Likewise and add noexcept qualification.
7770 1.1 mrg (basic_string<>::erase): Adapt to take __const_iterator.
7771 1.1 mrg (basic_string(const _CharT*, const _Allocator&)): Remove assign call.
7772 1.1 mrg (basic_string<>::insert(const_iterator, _InputIte, _InputIte)): Try to
7773 1.1 mrg remove iterator debug layer even if !_GLIBCXX_USE_CXX11_ABI.
7774 1.1 mrg [_GLIBCXX_USE_CHAR8_T] (__gnu_debug::u8string): New.
7775 1.1 mrg (__gnu_debug::u16string, __gnu_debug::u32string): New.
7776 1.1 mrg (std::hash<__gnu_debug::basic_string<>>): New partial specialization.
7777 1.1 mrg (std::__is_fast_hash<__gnu_debug::basic_string<>>): Likewise.
7778 1.1 mrg * testsuite/util/exception/safety.h
7779 1.1 mrg (erase_base<__gnu_debug::basic_string<>>): New partial specialization.
7780 1.1 mrg (insert_base<__gnu_debug::basic_string<>>): Likewise.
7781 1.1 mrg * testsuite/util/testsuite_container_traits.h (traits<__gnu_debug::basic_string<>>):
7782 1.1 mrg New partial specialization.
7783 1.1 mrg * testsuite/21_strings/basic_string/hash/debug.cc: New test.
7784 1.1 mrg * testsuite/21_strings/basic_string/requirements/citerators.cc:
7785 1.1 mrg Add test on __gnu_debug::string.
7786 1.1 mrg * testsuite/21_strings/basic_string/requirements/dr438/constructor.cc: Likewise.
7787 1.1 mrg * testsuite/21_strings/basic_string/requirements/exception/basic.cc: Likewise.
7788 1.1 mrg * testsuite/21_strings/basic_string/requirements/exception/generation_prohibited.cc:
7789 1.1 mrg Likewise.
7790 1.1 mrg * testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc:
7791 1.1 mrg Likewise.
7792 1.1 mrg * testsuite/21_strings/basic_string/requirements/explicit_instantiation/char/1.cc:
7793 1.1 mrg Likewise.
7794 1.1 mrg * testsuite/21_strings/basic_string/requirements/explicit_instantiation/char16_t/1.cc:
7795 1.1 mrg Likewise.
7796 1.1 mrg * testsuite/21_strings/basic_string/requirements/explicit_instantiation/char32_t/1.cc:
7797 1.1 mrg Likewise.
7798 1.1 mrg * testsuite/21_strings/basic_string/requirements/explicit_instantiation/char8_t/1.cc:
7799 1.1 mrg Likewise.
7800 1.1 mrg * testsuite/21_strings/basic_string/requirements/explicit_instantiation/wchar_t/1.cc:
7801 1.1 mrg Likewise.
7802 1.1 mrg * testsuite/21_strings/basic_string/requirements/typedefs.cc: Likewise.
7803 1.1 mrg
7804 1.1 mrg 2021-03-25 Jakub Jelinek <jakub (a] redhat.com>
7805 1.1 mrg
7806 1.1 mrg PR c++/99672
7807 1.1 mrg * testsuite/18_support/source_location/consteval.cc (main): Adjust
7808 1.1 mrg expected column numbers.
7809 1.1 mrg * testsuite/18_support/source_location/1.cc (main): Likewise.
7810 1.1 mrg
7811 1.1 mrg 2021-03-25 Jonathan Wakely <jwakely (a] redhat.com>
7812 1.1 mrg
7813 1.1 mrg * libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Declare malloc.
7814 1.1 mrg
7815 1.1 mrg 2021-03-25 Jonathan Wakely <jwakely (a] redhat.com>
7816 1.1 mrg
7817 1.1 mrg * testsuite/util/exception/safety.h (setup_base::generate):
7818 1.1 mrg Support seeding random engine.
7819 1.1 mrg (erase_point, erase_range): Adjust range of random numbers to
7820 1.1 mrg ensure dereferenceable iterators are used where required.
7821 1.1 mrg (generation_prohibited::run): Do not try to erase from empty
7822 1.1 mrg containers.
7823 1.1 mrg * testsuite/util/testsuite_containergen.h (test_containers):
7824 1.1 mrg Support seeding random engine.
7825 1.1 mrg
7826 1.1 mrg 2021-03-23 Jonathan Wakely <jwakely (a] redhat.com>
7827 1.1 mrg
7828 1.1 mrg * testsuite/std/ranges/adaptors/reverse.cc: Replace duplicated
7829 1.1 mrg line with a check that uses the const being/end overloads.
7830 1.1 mrg
7831 1.1 mrg 2021-03-23 Moritz Sichert <sichert (a] in.tum.de>
7832 1.1 mrg
7833 1.1 mrg * include/std/ranges (reverse_view::begin, reverse_view::end):
7834 1.1 mrg Qualify make_reverse_iterator calls to avoid ADL.
7835 1.1 mrg * testsuite/std/ranges/adaptors/reverse.cc: Test that
7836 1.1 mrg views::reverse works when make_reverse_iterator is defined
7837 1.1 mrg in an associated namespace.
7838 1.1 mrg
7839 1.1 mrg 2021-03-23 Jonathan Wakely <jwakely (a] redhat.com>
7840 1.1 mrg
7841 1.1 mrg * include/bits/c++config (_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT):
7842 1.1 mrg Do not define when compiling with Clang.
7843 1.1 mrg
7844 1.1 mrg 2021-03-22 Jonathan Wakely <jwakely (a] redhat.com>
7845 1.1 mrg
7846 1.1 mrg * include/std/string_view (basic_string_view(Range&&)): Define new
7847 1.1 mrg constructor and deduction guide.
7848 1.1 mrg * testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc: New test.
7849 1.1 mrg * testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc: New test.
7850 1.1 mrg
7851 1.1 mrg 2021-03-22 Jonathan Wakely <jwakely (a] redhat.com>
7852 1.1 mrg
7853 1.1 mrg * include/bits/range_access.h (begin(T (&)[N]), end(T (&)[N])):
7854 1.1 mrg Add missing 'noexcept' as per LWG 2280.
7855 1.1 mrg (rbegin(T (&)[N]), rend(T (&)[N]), rbegin(initializer_list<T>))
7856 1.1 mrg (rend(initializer_list<T>)): Add 'noexcept' as per LWG 3537.
7857 1.1 mrg * testsuite/24_iterators/range_access/range_access.cc: Check for
7858 1.1 mrg expected noexcept specifiers. Check result types of generic
7859 1.1 mrg std::begin and std::end overloads.
7860 1.1 mrg * testsuite/24_iterators/range_access/range_access_cpp14.cc:
7861 1.1 mrg Check for expected noexcept specifiers.
7862 1.1 mrg * testsuite/24_iterators/range_access/range_access_cpp17.cc:
7863 1.1 mrg Likewise.
7864 1.1 mrg
7865 1.1 mrg 2021-03-19 Jonathan Wakely <jwakely (a] redhat.com>
7866 1.1 mrg
7867 1.1 mrg * include/std/type_traits (is_scoped_enum): Define.
7868 1.1 mrg * include/std/version (__cpp_lib_is_scoped_enum): Define.
7869 1.1 mrg * testsuite/20_util/is_scoped_enum/value.cc: New test.
7870 1.1 mrg * testsuite/20_util/is_scoped_enum/version.cc: New test.
7871 1.1 mrg
7872 1.1 mrg 2021-03-16 Jonathan Wakely <jwakely (a] redhat.com>
7873 1.1 mrg
7874 1.1 mrg PR libstdc++/99341
7875 1.1 mrg * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Remove
7876 1.1 mrg std::once_flag symbols.
7877 1.1 mrg * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Likewise.
7878 1.1 mrg * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
7879 1.1 mrg * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt:
7880 1.1 mrg Likewise.
7881 1.1 mrg * config/abi/pre/gnu.ver: Likewise.
7882 1.1 mrg * src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
7883 1.1 mrg (struct __once_flag_compat): Remove.
7884 1.1 mrg (_ZNSt9once_flag11_M_activateEv): Remove.
7885 1.1 mrg (_ZNSt9once_flag9_M_finishEb): Remove.
7886 1.1 mrg
7887 1.1 mrg 2021-03-16 Jonathan Wakely <jwakely (a] redhat.com>
7888 1.1 mrg
7889 1.1 mrg PR libstdc++/99341
7890 1.1 mrg * include/std/mutex [_GLIBCXX_HAVE_LINUX_FUTEX] (once_flag):
7891 1.1 mrg Revert to pthread_once_t implementation.
7892 1.1 mrg [_GLIBCXX_HAVE_LINUX_FUTEX] (call_once): Likewise.
7893 1.1 mrg * src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
7894 1.1 mrg (struct __once_flag_compat): New type matching the reverted
7895 1.1 mrg implementation of once_flag using futexes.
7896 1.1 mrg (once_flag::_M_activate): Remove, replace with ...
7897 1.1 mrg (_ZNSt9once_flag11_M_activateEv): ... alias symbol.
7898 1.1 mrg (once_flag::_M_finish): Remove, replace with ...
7899 1.1 mrg (_ZNSt9once_flag9_M_finishEb): ... alias symbol.
7900 1.1 mrg * testsuite/30_threads/call_once/66146.cc: Removed.
7901 1.1 mrg
7902 1.1 mrg 2021-03-15 Iain Sandoe <iain (a] sandoe.co.uk>
7903 1.1 mrg
7904 1.1 mrg * testsuite/17_intro/names.cc: Exclude j from the list
7905 1.1 mrg of test symbols for Darwin.
7906 1.1 mrg
7907 1.1 mrg 2021-03-15 Iain Sandoe <iain (a] sandoe.co.uk>
7908 1.1 mrg
7909 1.1 mrg * config/os/bsd/darwin/ppc-extra.ver: Add matching for
7910 1.1 mrg to_chars and from_chars for long double.
7911 1.1 mrg
7912 1.1 mrg 2021-03-15 Patrick Palka <ppalka (a] redhat.com>
7913 1.1 mrg
7914 1.1 mrg * include/bits/max_size_type.h (__max_size_type::operator _Tp):
7915 1.1 mrg Fix formatting.
7916 1.1 mrg (__max_size_type::operator++): Define.
7917 1.1 mrg (__max_size_type::operator--): Likewise.
7918 1.1 mrg (__max_size_type::operator<=>): Conditionally define (in place
7919 1.1 mrg of the other comparison operators).
7920 1.1 mrg (__max_diff_type::operator _Tp): Fix formatting.
7921 1.1 mrg (__max_diff_type::operator++): Define.
7922 1.1 mrg (__max_diff_type::operator--): Likewise.
7923 1.1 mrg (__max_diff_type::operator<=>): Conditionally define (in place
7924 1.1 mrg of the other comparison operators).
7925 1.1 mrg * testsuite/std/ranges/iota/max_size_type.cc (test01): Test
7926 1.1 mrg these operator overloads.
7927 1.1 mrg
7928 1.1 mrg 2021-03-15 Caroline Tice <cmtice (a] google.com>
7929 1.1 mrg
7930 1.1 mrg PR libstdc++/99172
7931 1.1 mrg * src/Makefile.am (AM_CXXFLAGS_PRE, AM_CXXFLAGS): Add
7932 1.1 mrg AM_CXXFLAGS_PRE with the old definition of AM_CXXFLAGS; make
7933 1.1 mrg AM_CXXFLAGS to be AM_CXXFLAGS_PRE with '-fvtable-verify=std'
7934 1.1 mrg filtered out.
7935 1.1 mrg * src/Makefile.in: Regenerate.
7936 1.1 mrg
7937 1.1 mrg 2021-03-11 Patrick Palka <ppalka (a] redhat.com>
7938 1.1 mrg
7939 1.1 mrg * src/c++17/floating_to_chars.cc: Simplify the file as if
7940 1.1 mrg __SIZEOF_INT128__ is always defined.
7941 1.1 mrg [!defined __SIZEOF_INT128__]: Include "uint128_t.h". Define
7942 1.1 mrg a base-10 to_chars overload for the uint128_t class type.
7943 1.1 mrg * src/c++17/uint128_t.h: New file.
7944 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: No longer expect an
7945 1.1 mrg execution FAIL on targets that have a large long double type
7946 1.1 mrg but lack __int128.
7947 1.1 mrg
7948 1.1 mrg 2021-03-11 Patrick Palka <ppalka (a] redhat.com>
7949 1.1 mrg
7950 1.1 mrg * src/c++17/ryu/LOCAL_PATCHES: Update.
7951 1.1 mrg * src/c++17/ryu/d2s_intrinsics.h: Don't define uint128_t.
7952 1.1 mrg * src/c++17/ryu/generic_128.h: Likewise.
7953 1.1 mrg * src/c++17/ryu/ryu_generic_128.h (struct floating_decimal_128):
7954 1.1 mrg Use uint128_t instead of __uint128_t.
7955 1.1 mrg (generic_binary_to_decimal): Likewise.
7956 1.1 mrg
7957 1.1 mrg 2021-03-11 Patrick Palka <ppalka (a] redhat.com>
7958 1.1 mrg
7959 1.1 mrg * src/c++17/ryu/LOCAL_PATCHES: New file.
7960 1.1 mrg
7961 1.1 mrg 2021-03-11 Patrick Palka <ppalka (a] redhat.com>
7962 1.1 mrg
7963 1.1 mrg * src/c++17/floating_to_chars.cc (uint128_t): New conditionally
7964 1.1 mrg defined alias of unsigned __int128.
7965 1.1 mrg (floating_type_traits_binary128::mantissa_t): Use uint128_t
7966 1.1 mrg instead of unsigned __int128.
7967 1.1 mrg (floating_type_traits<long double>::mantissa_t)
7968 1.1 mrg [LONG_DOUBLE_KIND == LDK_IBM128]: Likewise.
7969 1.1 mrg (get_ieee_repr): Likewise. Make casts from uint_t to mantissa_t
7970 1.1 mrg and uint32_t explicit. Simplify the extraction of mantissa,
7971 1.1 mrg exponent and sign bit.
7972 1.1 mrg
7973 1.1 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
7974 1.1 mrg
7975 1.1 mrg * include/std/barrier (barrier::arrival_token): New move-only
7976 1.1 mrg class that encapsulates the underlying token value.
7977 1.1 mrg
7978 1.1 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
7979 1.1 mrg
7980 1.1 mrg * python/libstdcxx/v6/printers.py (find_type): Use tag attribute
7981 1.1 mrg instead of unqualified() method.
7982 1.1 mrg
7983 1.1 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
7984 1.1 mrg
7985 1.1 mrg PR libstdc++/99537
7986 1.1 mrg * include/std/stop_token (_Stop_state_t::_M_release_ownership):
7987 1.1 mrg Use acq_rel memory ordering.
7988 1.1 mrg
7989 1.1 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
7990 1.1 mrg
7991 1.1 mrg PR libstdc++/99533
7992 1.1 mrg * src/c++17/fs_dir.cc (recursive_directory_iterator): Use new
7993 1.1 mrg helper function to check for permission denied errors.
7994 1.1 mrg * src/filesystem/dir.cc (recursive_directory_iterator):
7995 1.1 mrg Likewise.
7996 1.1 mrg * src/filesystem/dir-common.h (is_permission_denied_error): New
7997 1.1 mrg helper function.
7998 1.1 mrg
7999 1.1 mrg 2021-03-11 Jonathan Wakely <jwakely (a] redhat.com>
8000 1.1 mrg
8001 1.1 mrg PR libstdc++/99536
8002 1.1 mrg * include/bits/random.h (normal_distribution): Use
8003 1.1 mrg default-initializer for _M_saved and _M_saved_available.
8004 1.1 mrg
8005 1.1 mrg 2021-03-10 John David Anglin <danglin (a] gcc.gnu.org>
8006 1.1 mrg
8007 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/bool.cc: Add options to
8008 1.1 mrg link with libatomic.
8009 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
8010 1.1 mrg * testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
8011 1.1 mrg * testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
8012 1.1 mrg * testsuite/30_threads/barrier/arrive.cc: Likewise.
8013 1.1 mrg * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
8014 1.1 mrg * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
8015 1.1 mrg * testsuite/30_threads/barrier/completion.cc: Likewise.
8016 1.1 mrg * testsuite/30_threads/latch/3.cc: Likewise.
8017 1.1 mrg * testsuite/30_threads/semaphore/try_acquire.cc: Likewise.
8018 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_for.cc: Likewise.
8019 1.1 mrg * testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
8020 1.1 mrg
8021 1.1 mrg 2021-03-10 Jonathan Wakely <jwakely (a] redhat.com>
8022 1.1 mrg
8023 1.1 mrg PR libstdc++/99413
8024 1.1 mrg * include/bits/align.h: Include debug/assertions.h.
8025 1.1 mrg * include/bits/codecvt.h: Include bits/c++config.h.
8026 1.1 mrg * include/bits/enable_special_members.h: Likewise.
8027 1.1 mrg * include/bits/erase_if.h: Likewise.
8028 1.1 mrg * include/bits/functional_hash.h: Include <type_traits>.
8029 1.1 mrg * include/bits/invoke.h: Include bits/move.h.
8030 1.1 mrg * include/bits/ostream_insert.h: Include bits/exception_defines.h.
8031 1.1 mrg * include/bits/parse_numbers.h: Include <type_traits>.
8032 1.1 mrg * include/bits/predefined_ops.h: Include bits/c++config.h.
8033 1.1 mrg * include/bits/range_access.h: Include bits/stl_iterator.h.
8034 1.1 mrg * include/bits/stl_bvector.h: Do not include bits/stl_vector.h.
8035 1.1 mrg * include/bits/stl_iterator.h: Include bits/stl_iterator_base_types.h.
8036 1.1 mrg * include/bits/stl_uninitialized.h: Include bits/stl_algobase.h.
8037 1.1 mrg * include/bits/uniform_int_dist.h: Include bits/concept_check.h.
8038 1.1 mrg * include/bits/unique_lock.h: Include bits/std_mutex.h.
8039 1.1 mrg * include/debug/assertions.h: Include bits/c++config.h.
8040 1.1 mrg
8041 1.1 mrg 2021-03-10 Jonathan Wakely <jwakely (a] redhat.com>
8042 1.1 mrg
8043 1.1 mrg * include/bits/ranges_cmp.h (__eq_builtin_ptr_cmp): Remove.
8044 1.1 mrg (ranges::equal_to, ranges::not_equal_to): Do not constrain
8045 1.1 mrg with __eq_builtin_ptr_cmp.
8046 1.1 mrg (ranges::less, ranges::greater, ranges::less_equal)
8047 1.1 mrg (ranges::greater_equal): Do not constrain with
8048 1.1 mrg __less_builtin_ptr_cmp.
8049 1.1 mrg * libsupc++/compare (compare_three_way): Do not constrain with
8050 1.1 mrg __3way_builtin_ptr_cmp.
8051 1.1 mrg * testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc: Moved to...
8052 1.1 mrg * testsuite/18_support/comparisons/object/lwg3530.cc: ...here.
8053 1.1 mrg * testsuite/20_util/function_objects/range.cmp/lwg3530.cc: New test.
8054 1.1 mrg
8055 1.1 mrg 2021-03-10 Jonathan Wakely <jwakely (a] redhat.com>
8056 1.1 mrg
8057 1.1 mrg * testsuite/std/time/syn_c++20.cc: Enable synopsis checks for
8058 1.1 mrg C++20 calendar types.
8059 1.1 mrg
8060 1.1 mrg 2021-03-06 Jakub Jelinek <jakub (a] redhat.com>
8061 1.1 mrg
8062 1.1 mrg PR libstdc++/99396
8063 1.1 mrg * include/std/bit (__rotl, __rotr): Add optimized variants for power of
8064 1.1 mrg two _Nd which the compiler can pattern match the rotates.
8065 1.1 mrg
8066 1.1 mrg 2021-03-04 Jonathan Wakely <jwakely (a] redhat.com>
8067 1.1 mrg
8068 1.1 mrg PR libstdc++/99382
8069 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_default_n/sizes.cc:
8070 1.1 mrg Make storage larger than required. Verify no write to the last
8071 1.1 mrg element.
8072 1.1 mrg * testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
8073 1.1 mrg Likewise.
8074 1.1 mrg
8075 1.1 mrg 2021-03-03 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
8076 1.1 mrg
8077 1.1 mrg * config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
8078 1.1 mrg * config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
8079 1.1 mrg Likewise.
8080 1.1 mrg * config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
8081 1.1 mrg * config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
8082 1.1 mrg Likewise.
8083 1.1 mrg
8084 1.1 mrg 2021-03-03 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
8085 1.1 mrg
8086 1.1 mrg * include/experimental/bits/simd.h: Replace reserved _X, _B by
8087 1.1 mrg _Xp, _Bp.
8088 1.1 mrg * include/experimental/bits/simd_builtin.h: Likewise.
8089 1.1 mrg * include/experimental/bits/simd_x86.h: Likewise.
8090 1.1 mrg
8091 1.1 mrg 2021-02-27 Jonathan Wakely <jwakely (a] redhat.com>
8092 1.1 mrg
8093 1.1 mrg PR libstdc++/99301
8094 1.1 mrg * include/std/chrono (year_month_day::_M_days_since_epoch()):
8095 1.1 mrg Convert chrono::month and chrono::day to unsigned before
8096 1.1 mrg converting to uint32_t.
8097 1.1 mrg
8098 1.1 mrg 2021-02-25 Jonathan Wakely <jwakely (a] redhat.com>
8099 1.1 mrg
8100 1.1 mrg * include/std/chrono (year_month_day::_S_from_days): Perform
8101 1.1 mrg all calculations with type uint32_t.
8102 1.1 mrg
8103 1.1 mrg 2021-02-25 Jonathan Wakely <jwakely (a] redhat.com>
8104 1.1 mrg
8105 1.1 mrg * doc/xml/manual/abi.xml: Document versioning for GCC 11.
8106 1.1 mrg * doc/html/manual/abi.html: Regenerate.
8107 1.1 mrg
8108 1.1 mrg 2021-02-25 Jonathan Wakely <jwakely (a] redhat.com>
8109 1.1 mrg
8110 1.1 mrg PR libstdc++/99270
8111 1.1 mrg * testsuite/27_io/headers/cstdio/types_std.cc: Use pointer to
8112 1.1 mrg FILE instead of FILE.
8113 1.1 mrg
8114 1.1 mrg 2021-02-25 Andreas Schwab <schwab (a] suse.de>
8115 1.1 mrg
8116 1.1 mrg * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
8117 1.1 mrg * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
8118 1.1 mrg * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
8119 1.1 mrg * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
8120 1.1 mrg
8121 1.1 mrg 2021-02-25 Jonathan Wakely <jwakely (a] redhat.com>
8122 1.1 mrg
8123 1.1 mrg PR libstdc++/99265
8124 1.1 mrg * include/std/chrono (year_month_day::_S_from_days): Cast long
8125 1.1 mrg to int explicitly.
8126 1.1 mrg
8127 1.1 mrg 2021-02-25 Jonathan Wakely <jwakely (a] redhat.com>
8128 1.1 mrg
8129 1.1 mrg * include/std/utility (to_underlying): Define.
8130 1.1 mrg * include/std/version (__cpp_lib_to_underlying): Define.
8131 1.1 mrg * testsuite/20_util/to_underlying/1.cc: New test.
8132 1.1 mrg * testsuite/20_util/to_underlying/version.cc: New test.
8133 1.1 mrg
8134 1.1 mrg 2021-02-24 Jonathan Wakely <jwakely (a] redhat.com>
8135 1.1 mrg
8136 1.1 mrg PR libstdc++/99261
8137 1.1 mrg * src/c++17/floating_to_chars.cc (sprintf_ld): Add extra args
8138 1.1 mrg before value to be printed.
8139 1.1 mrg
8140 1.1 mrg 2021-02-24 Patrick Palka <ppalka (a] redhat.com>
8141 1.1 mrg
8142 1.1 mrg * src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
8143 1.1 mrg Relax the condition that guards the printf code path to accept
8144 1.1 mrg F128_type as well as long double.
8145 1.1 mrg
8146 1.1 mrg 2021-02-24 Cassio Neri <cassio.neri (a] gmail.com>
8147 1.1 mrg
8148 1.1 mrg * include/std/chrono (year_month_day_last:day): New
8149 1.1 mrg implementation.
8150 1.1 mrg
8151 1.1 mrg 2021-02-24 Cassio Neri <cassio.neri (a] gmail.com>
8152 1.1 mrg
8153 1.1 mrg * include/std/chrono (year::is_leap): New implementation.
8154 1.1 mrg * testsuite/std/time/year/2.cc: New test.
8155 1.1 mrg
8156 1.1 mrg 2021-02-24 Cassio Neri <cassio.neri (a] gmail.com>
8157 1.1 mrg
8158 1.1 mrg * include/std/chrono (year_month_day::_M_days_since_epoch):
8159 1.1 mrg New implementation.
8160 1.1 mrg * testsuite/std/time/year_month_day/4.cc: New test.
8161 1.1 mrg
8162 1.1 mrg 2021-02-24 Cassio Neri <cassio.neri (a] gmail.com>
8163 1.1 mrg
8164 1.1 mrg * include/std/chrono (year_month_day::_S_from_days): New
8165 1.1 mrg implementation.
8166 1.1 mrg * testsuite/std/time/year_month_day/3.cc: New test.
8167 1.1 mrg
8168 1.1 mrg 2021-02-24 Patrick Palka <ppalka (a] redhat.com>
8169 1.1 mrg
8170 1.1 mrg PR libstdc++/98384
8171 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: Include <optional>.
8172 1.1 mrg (test01): Simplify verifying the nearby values by using a
8173 1.1 mrg 2-iteration loop and a dedicated output buffer to check that the
8174 1.1 mrg nearby values are different. Factor out the printf-based
8175 1.1 mrg verification into a local function, and check that the leading
8176 1.1 mrg hex digits agree before comparing to the output of printf. Also
8177 1.1 mrg verify the output by round-tripping it through from_chars.
8178 1.1 mrg
8179 1.1 mrg 2021-02-24 Jonathan Wakely <jwakely (a] redhat.com>
8180 1.1 mrg
8181 1.1 mrg PR libstdc++/98389
8182 1.1 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Do not match to_chars
8183 1.1 mrg symbols for long double arguments mangled as 'g'.
8184 1.1 mrg * config/os/gnu-linux/ldbl-extra.ver: Likewise.
8185 1.1 mrg * config/os/gnu-linux/ldbl-ieee128-extra.ver: Likewise.
8186 1.1 mrg * src/c++17/Makefile.am [GLIBCXX_LDBL_ALT128_COMPAT_TRUE]:
8187 1.1 mrg Use -mabi=ibmlongdouble for floating_to_chars.cc.
8188 1.1 mrg * src/c++17/Makefile.in: Regenerate.
8189 1.1 mrg * src/c++17/floating_to_chars.cc (floating_type_traits_binary128):
8190 1.1 mrg New type defining type traits of IEEE binary128 format.
8191 1.1 mrg (floating_type_traits<__float128>): Define specialization.
8192 1.1 mrg (floating_type_traits<long double>): Define in terms of
8193 1.1 mrg floating_type_traits_binary128 when appropriate.
8194 1.1 mrg (floating_to_shortest_scientific): Handle __float128.
8195 1.1 mrg (sprintf_ld): New function template for printing a long double
8196 1.1 mrg or __ieee128 value using sprintf.
8197 1.1 mrg (__floating_to_chars_shortest, __floating_to_chars_precision):
8198 1.1 mrg Use sprintf_ld.
8199 1.1 mrg (to_chars): Define overloads for __float128.
8200 1.1 mrg
8201 1.1 mrg 2021-02-24 Jonathan Wakely <jwakely (a] redhat.com>
8202 1.1 mrg
8203 1.1 mrg * testsuite/17_intro/names.cc: Undefine 'u' on powerpc*-linux*.
8204 1.1 mrg
8205 1.1 mrg 2021-02-23 Martin Sebor <msebor (a] redhat.com>
8206 1.1 mrg
8207 1.1 mrg PR c++/99074
8208 1.1 mrg * libsupc++/dyncast.cc (__dynamic_cast): Return null when
8209 1.1 mrg first argument is null.
8210 1.1 mrg
8211 1.1 mrg 2021-02-23 Jakub Jelinek <jakub (a] redhat.com>
8212 1.1 mrg
8213 1.1 mrg PR libstdc++/99181
8214 1.1 mrg * testsuite/21_strings/char_traits/requirements/char/99181.cc: New
8215 1.1 mrg test.
8216 1.1 mrg
8217 1.1 mrg 2021-02-23 Jakub Jelinek <jakub (a] redhat.com>
8218 1.1 mrg
8219 1.1 mrg PR libstdc++/99181
8220 1.1 mrg * include/bits/char_traits.h (char_traits<char>::compare): For
8221 1.1 mrg constexpr evaluation don't call
8222 1.1 mrg __gnu_cxx::char_traits<char_type>::compare but do the comparison loop
8223 1.1 mrg directly.
8224 1.1 mrg
8225 1.1 mrg 2021-02-23 Jakub Jelinek <jakub (a] redhat.com>
8226 1.1 mrg
8227 1.1 mrg PR libstdc++/97549
8228 1.1 mrg * include/pstl/parallel_backend_serial.h: Remove __pstl::__par_backend.
8229 1.1 mrg
8230 1.1 mrg 2021-02-23 Patrick Palka <ppalka (a] redhat.com>
8231 1.1 mrg
8232 1.1 mrg PR libstdc++/98384
8233 1.1 mrg * src/c++17/floating_to_chars.cc (get_ieee_repr): Extract
8234 1.1 mrg the high- and low-order parts from an IBM long double value
8235 1.1 mrg in an endian-agnostic way.
8236 1.1 mrg
8237 1.1 mrg 2021-02-19 Jonathan Wakely <jwakely (a] redhat.com>
8238 1.1 mrg
8239 1.1 mrg * include/bits/atomic_wait.h (__thread_relax()): Call
8240 1.1 mrg __thread_yield() not __gthread_yield().
8241 1.1 mrg
8242 1.1 mrg 2021-02-15 Jonathan Wakely <jwakely (a] redhat.com>
8243 1.1 mrg
8244 1.1 mrg * include/bits/atomic_wait.h (__thread_yield()): Check
8245 1.1 mrg _GLIBCXX_HAS_GTHREADS before using __gthread_yield.
8246 1.1 mrg (__thread_relax()): Use __thread_yield() instead of repeating
8247 1.1 mrg the preprocessor checks for __gthread_yield.
8248 1.1 mrg
8249 1.1 mrg 2021-02-15 Jonathan Wakely <jwakely (a] redhat.com>
8250 1.1 mrg
8251 1.1 mrg * include/std/mutex (once_flag::_M_activate()): Add explicit
8252 1.1 mrg return statement for passive case.
8253 1.1 mrg (once_flag::_M_finish(bool)): Use reserved name for parameter.
8254 1.1 mrg
8255 1.1 mrg 2021-02-14 Jonathan Wakely <jwakely (a] redhat.com>
8256 1.1 mrg
8257 1.1 mrg PR libstdc++/99096
8258 1.1 mrg * testsuite/util/testsuite_fs.h: Always include <unistd.h>.
8259 1.1 mrg
8260 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8261 1.1 mrg
8262 1.1 mrg PR libstdc++/88881
8263 1.1 mrg * src/c++17/fs_ops.cc (fs::symlink_status): Re-enable workaround.
8264 1.1 mrg
8265 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8266 1.1 mrg
8267 1.1 mrg * doc/xml/manual/status_cxx2014.xml: Document implementation
8268 1.1 mrg specific properties of std::experimental::filesystem::rename.
8269 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Document implementation
8270 1.1 mrg specific properties of std::filesystem::rename.
8271 1.1 mrg * doc/html/*: Regenerate.
8272 1.1 mrg * src/c++17/fs_ops.cc (fs::rename): Implement correct behaviour
8273 1.1 mrg for directories on Windows.
8274 1.1 mrg * src/filesystem/ops-common.h (__gnu_posix::rename): Use
8275 1.1 mrg MoveFileExW on Windows.
8276 1.1 mrg * testsuite/27_io/filesystem/operations/rename.cc: New test.
8277 1.1 mrg * testsuite/experimental/filesystem/operations/rename.cc: New test.
8278 1.1 mrg
8279 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8280 1.1 mrg
8281 1.1 mrg * testsuite/util/testsuite_fs.h (nonexistent_path): Add
8282 1.1 mrg random number to the path.
8283 1.1 mrg
8284 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8285 1.1 mrg
8286 1.1 mrg * include/experimental/internet (address_v6::to_string): Include
8287 1.1 mrg scope ID in string.
8288 1.1 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
8289 1.1 mrg Test to_string() results.
8290 1.1 mrg
8291 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8292 1.1 mrg
8293 1.1 mrg * include/experimental/internet (address_v6::any): Avoid using
8294 1.1 mrg memcpy in constexpr function.
8295 1.1 mrg (address_v6::loopback): Likewise.
8296 1.1 mrg (make_address_v6): Fix missing return statements on error paths.
8297 1.1 mrg * include/experimental/io_context: Avoid -Wdangling-else
8298 1.1 mrg warning.
8299 1.1 mrg * testsuite/experimental/net/internet/address/v4/members.cc:
8300 1.1 mrg Remove unused variables.
8301 1.1 mrg * testsuite/experimental/net/internet/address/v6/members.cc:
8302 1.1 mrg New test.
8303 1.1 mrg
8304 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8305 1.1 mrg
8306 1.1 mrg * include/bits/shared_ptr_base.h (__shared_ptr::_M_get_deleter):
8307 1.1 mrg Add unused attribute to parameter.
8308 1.1 mrg * src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq):
8309 1.1 mrg Likewise.
8310 1.1 mrg
8311 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8312 1.1 mrg
8313 1.1 mrg * testsuite/27_io/basic_ostream/emit/1.cc: Expect test to fail
8314 1.1 mrg if -fno-rtti is used.
8315 1.1 mrg * testsuite/30_threads/async/forced_unwind.cc: Expect test
8316 1.1 mrg to abort if -fno-rtti is used.
8317 1.1 mrg
8318 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8319 1.1 mrg
8320 1.1 mrg * testsuite/util/testsuite_allocator.h (memory_resource):
8321 1.1 mrg Remove requirement for RTTI and exceptions to be enabled.
8322 1.1 mrg
8323 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8324 1.1 mrg
8325 1.1 mrg * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Use
8326 1.1 mrg static_cast when RTTI is disabled.
8327 1.1 mrg * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc:
8328 1.1 mrg Likewise.
8329 1.1 mrg * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc:
8330 1.1 mrg Likewise.
8331 1.1 mrg * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc:
8332 1.1 mrg Likewise.
8333 1.1 mrg * testsuite/27_io/basic_stringstream/str/char/2.cc:
8334 1.1 mrg Likewise.
8335 1.1 mrg * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc:
8336 1.1 mrg Likewise.
8337 1.1 mrg
8338 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8339 1.1 mrg
8340 1.1 mrg * include/std/ostream (__syncbuf_base::_S_get): Mark parameter
8341 1.1 mrg as unused and only use dynamic_cast when RTTI is enabled.
8342 1.1 mrg
8343 1.1 mrg 2021-02-12 Jonathan Wakely <jwakely (a] redhat.com>
8344 1.1 mrg
8345 1.1 mrg PR libstdc++/99077
8346 1.1 mrg * src/c++11/cxx11-ios_failure.cc (__ios_failure(const char*, int)):
8347 1.1 mrg Change int parameter to error_code, to match std::ios_failure.
8348 1.1 mrg (__throw_ios_failure(const char*, int)): Construct error_code
8349 1.1 mrg from int parameter.
8350 1.1 mrg
8351 1.1 mrg 2021-02-11 Jonathan Wakely <jwakely (a] redhat.com>
8352 1.1 mrg
8353 1.1 mrg * libsupc++/eh_ptr.cc (_GLIBCXX_EH_PTR_RELOPS_COMPAT): Define
8354 1.1 mrg new macro.
8355 1.1 mrg * libsupc++/exception_ptr.h (_GLIBCXX_EH_PTR_USED): Check new
8356 1.1 mrg macro instead of _GLIBCXX_EH_PTR_COMPAT.
8357 1.1 mrg (operator==): Likewise.
8358 1.1 mrg
8359 1.1 mrg 2021-02-11 Jonathan Wakely <jwakely (a] redhat.com>
8360 1.1 mrg
8361 1.1 mrg PR libstdc++/99058
8362 1.1 mrg * doc/xml/manual/status_cxx2011.xml: Document when support
8363 1.1 mrg became stable.
8364 1.1 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
8365 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
8366 1.1 mrg * doc/html/manual/status.html: Regenerate.
8367 1.1 mrg
8368 1.1 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
8369 1.1 mrg
8370 1.1 mrg PR libstdc++/88881
8371 1.1 mrg * src/c++17/fs_ops.cc (fs::status): Re-enable workaround.
8372 1.1 mrg
8373 1.1 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
8374 1.1 mrg
8375 1.1 mrg * src/c++17/fs_ops.cc (fs::create_hard_link, fs::equivalent)
8376 1.1 mrg (fs::remove): Use std::system_category() for error codes from
8377 1.1 mrg GetLastError().
8378 1.1 mrg * src/filesystem/ops.cc (fs::create_hard_link, fs::remove):
8379 1.1 mrg Likewise.
8380 1.1 mrg
8381 1.1 mrg 2021-02-10 Jonathan Wakely <jwakely (a] redhat.com>
8382 1.1 mrg
8383 1.1 mrg * testsuite/27_io/filesystem/operations/proximate.cc: Fix typo
8384 1.1 mrg in __MINGW32__ macro name.
8385 1.1 mrg * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
8386 1.1 mrg * testsuite/27_io/filesystem/path/generation/proximate.cc:
8387 1.1 mrg Likewise.
8388 1.1 mrg * testsuite/27_io/filesystem/path/generation/relative.cc:
8389 1.1 mrg Likewise.
8390 1.1 mrg * testsuite/util/testsuite_fs.h: Likewise.
8391 1.1 mrg
8392 1.1 mrg 2021-02-09 Franois Dumont <fdumont (a] gcc.gnu.org>
8393 1.1 mrg
8394 1.1 mrg * include/bits/stl_tree.h
8395 1.1 mrg (__has_is_transparent, __has_is_transparent_t): Move...
8396 1.1 mrg * include/bits/stl_function.h: ...here.
8397 1.1 mrg * include/bits/hashtable_policy.h (_Hash_code_base<>::_M_hash_code_tr): New..
8398 1.1 mrg (_Hashtable_base<>::_M_equals_tr): New.
8399 1.1 mrg * include/bits/hashtable.h (_Hashtable<>::_M_find_tr, _Hashtable<>::_M_count_tr,
8400 1.1 mrg _Hashtable<>::_M_equal_range_tr): New member function templates to perform
8401 1.1 mrg heterogeneous lookup.
8402 1.1 mrg (_Hashtable<>::_M_find_before_node_tr): New.
8403 1.1 mrg (_Hashtable<>::_M_find_node_tr): New.
8404 1.1 mrg * include/bits/unordered_map.h (unordered_map::find<>, unordered_map::count<>,
8405 1.1 mrg unordered_map::contains<>, unordered_map::equal_range<>): New member function
8406 1.1 mrg templates to perform heterogeneous lookup.
8407 1.1 mrg (unordered_multimap::find<>, unordered_multimap::count<>,
8408 1.1 mrg unordered_multimap::contains<>, unordered_multimap::equal_range<>): Likewise.
8409 1.1 mrg * include/bits/unordered_set.h (unordered_set::find<>, unordered_set::count<>,
8410 1.1 mrg unordered_set::contains<>, unordered_set::equal_range<>): Likewise.
8411 1.1 mrg (unordered_multiset::find<>, unordered_multiset::count<>,
8412 1.1 mrg unordered_multiset::contains<>, unordered_multiset::equal_range<>): Likewise.
8413 1.1 mrg * include/debug/unordered_map
8414 1.1 mrg (unordered_map::find<>, unordered_map::equal_range<>): Likewise.
8415 1.1 mrg (unordered_multimap::find<>, unordered_multimap::equal_range<>): Likewise.
8416 1.1 mrg * include/debug/unordered_set
8417 1.1 mrg (unordered_set::find<>, unordered_set::equal_range<>): Likewise.
8418 1.1 mrg (unordered_multiset::find<>, unordered_multiset::equal_range<>): Likewise.
8419 1.1 mrg * testsuite/23_containers/unordered_map/operations/1.cc: New test.
8420 1.1 mrg * testsuite/23_containers/unordered_multimap/operations/1.cc: New test.
8421 1.1 mrg * testsuite/23_containers/unordered_multiset/operations/1.cc: New test.
8422 1.1 mrg * testsuite/23_containers/unordered_set/operations/1.cc: New test.
8423 1.1 mrg
8424 1.1 mrg 2021-02-09 Franois Dumont <fdumont (a] gcc.gnu.org>
8425 1.1 mrg
8426 1.1 mrg * include/bits/stl_deque.h
8427 1.1 mrg (std::operator-(deque::iterator, deque::iterator)): Replace if/then with
8428 1.1 mrg a null pointer test.
8429 1.1 mrg
8430 1.1 mrg 2021-02-09 Jonathan Wakely <jwakely (a] redhat.com>
8431 1.1 mrg
8432 1.1 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Remove
8433 1.1 mrg test directory after making it writable again.
8434 1.1 mrg * testsuite/experimental/filesystem/operations/remove_all.cc:
8435 1.1 mrg Likewise.
8436 1.1 mrg
8437 1.1 mrg 2021-02-09 Jonathan Wakely <jwakely (a] redhat.com>
8438 1.1 mrg
8439 1.1 mrg PR libstdc++/99021
8440 1.1 mrg * include/std/coroutine (coroutine_handle<P>::from_address): Add
8441 1.1 mrg noexcept.
8442 1.1 mrg
8443 1.1 mrg 2021-02-09 Vladimir Vishnevsky <vv.os.swe (a] gmail.com>
8444 1.1 mrg
8445 1.1 mrg * include/ext/stdio_sync_filebuf.h: Remove unused <unistd.h>.
8446 1.1 mrg * src/c++17/fs_ops.cc (fs::permissions): Qualify mode_t.
8447 1.1 mrg
8448 1.1 mrg 2021-02-09 Jakub Jelinek <jakub (a] redhat.com>
8449 1.1 mrg
8450 1.1 mrg PR middle-end/98465
8451 1.1 mrg * include/bits/basic_string.tcc (basic_string::_M_replace): When __s
8452 1.1 mrg points to the characters moved by earlier _S_move, compute the source
8453 1.1 mrg address using expression based on the __p pointer rather than __s
8454 1.1 mrg pointer.
8455 1.1 mrg
8456 1.1 mrg 2021-02-03 Jonathan Wakely <jwakely (a] redhat.com>
8457 1.1 mrg
8458 1.1 mrg * testsuite/19_diagnostics/error_code/operators/not_equal.cc:
8459 1.1 mrg Add comparison with same category and different values.
8460 1.1 mrg * testsuite/19_diagnostics/error_code/operators/less.cc:
8461 1.1 mrg Likewise. Fix comparison involving different categories.
8462 1.1 mrg * testsuite/19_diagnostics/error_code/operators/three_way.cc:
8463 1.1 mrg Likewise.
8464 1.1 mrg * testsuite/19_diagnostics/error_condition/operators/less.cc:
8465 1.1 mrg Add comment.
8466 1.1 mrg * testsuite/19_diagnostics/error_condition/operators/three_way.cc:
8467 1.1 mrg Likewise.
8468 1.1 mrg
8469 1.1 mrg 2021-02-03 yaozhongxiao <yaozhongxiao (a] linux.alibaba.com>
8470 1.1 mrg
8471 1.1 mrg * include/experimental/bits/simd_neon.h: Replace repeated vpadd
8472 1.1 mrg calls with a single vaddv for aarch64.
8473 1.1 mrg
8474 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8475 1.1 mrg
8476 1.1 mrg * testsuite/Makefile.am: Warn about the workaround. Add
8477 1.1 mrg -fno-tree-vrp to CXXFLAGS passed to the check_simd script.
8478 1.1 mrg Improve initial user feedback from make check-simd.
8479 1.1 mrg * testsuite/Makefile.in: Regenerated.
8480 1.1 mrg
8481 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8482 1.1 mrg
8483 1.1 mrg * include/experimental/bits/simd.h: Add __detail::_Minimum and
8484 1.1 mrg __detail::_Maximum to use them as _BinaryOperation to _S_reduce.
8485 1.1 mrg Add hmin and hmax overloads for simd and const_where_expression.
8486 1.1 mrg * include/experimental/bits/simd_scalar.h
8487 1.1 mrg (_SimdImplScalar::_S_reduce): Make unused _BinaryOperation
8488 1.1 mrg parameter const-ref to allow calling _S_reduce with an rvalue.
8489 1.1 mrg * testsuite/experimental/simd/tests/reductions.cc: Add tests for
8490 1.1 mrg hmin and hmax. Since the compiler statically determined that all
8491 1.1 mrg tests pass, repeat the test after a call to make_value_unknown.
8492 1.1 mrg
8493 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8494 1.1 mrg
8495 1.1 mrg * testsuite/experimental/simd/tests/bits/verify.h (verify): Add
8496 1.1 mrg instruction pointer data member. Ensure that the `if (m_failed)`
8497 1.1 mrg branch is always inlined into the calling code. The body of the
8498 1.1 mrg conditional can still be a function call. Move the get_ip call
8499 1.1 mrg into the verify ctor to simplify the ctor calls.
8500 1.1 mrg (COMPARE): Don't mention the use of all_of for reduction of a
8501 1.1 mrg simd_mask. It only distracts from the real issue.
8502 1.1 mrg
8503 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8504 1.1 mrg
8505 1.1 mrg * testsuite/experimental/simd/driver.sh: Abstract reading test
8506 1.1 mrg options into read_src_option function. Read skip, only,
8507 1.1 mrg expensive, and xfail via read_src_option. Add timeout and
8508 1.1 mrg timeout-factor options and adjust timeout variable accordingly.
8509 1.1 mrg * testsuite/experimental/simd/tests/loadstore.cc: Set
8510 1.1 mrg timeout-factor 2.
8511 1.1 mrg
8512 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8513 1.1 mrg
8514 1.1 mrg * testsuite/experimental/simd/driver.sh: When handling the pipe
8515 1.1 mrg to log (and on verbose to stdout) count the lines. If it exceeds
8516 1.1 mrg 1000 log the issue and exit 125, which is then handled as a
8517 1.1 mrg failure.
8518 1.1 mrg
8519 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8520 1.1 mrg
8521 1.1 mrg * testsuite/experimental/simd/tests/hypot3_fma.cc: Add skip:
8522 1.1 mrg markup for long double on powerpc64*.
8523 1.1 mrg
8524 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8525 1.1 mrg
8526 1.1 mrg * include/experimental/bits/simd.h: Add __have_power10vec
8527 1.1 mrg conditional on _ARCH_PWR10.
8528 1.1 mrg * include/experimental/bits/simd_builtin.h: Forward declare
8529 1.1 mrg _MaskImplPpc and use it as _MaskImpl when __ALTIVEC__ is
8530 1.1 mrg defined.
8531 1.1 mrg (_MaskImplBuiltin::_S_some_of): Call _S_popcount from the
8532 1.1 mrg _SuperImpl for optimizations and correctness.
8533 1.1 mrg * include/experimental/bits/simd_ppc.h: Add _MaskImplPpc.
8534 1.1 mrg (_MaskImplPpc::_S_popcount): Implement via vec_cntm for POWER10.
8535 1.1 mrg Otherwise, for >=int use -vec_sums divided by a sizeof factor.
8536 1.1 mrg For <int use -vec_sums(vec_sum4s(...)) to sum all mask entries.
8537 1.1 mrg
8538 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8539 1.1 mrg
8540 1.1 mrg * testsuite/experimental/simd/driver.sh: Remove executable on
8541 1.1 mrg SIGINT. Process compiler and test executable output: In verbose
8542 1.1 mrg mode print messages immediately, limited to 1000 lines and
8543 1.1 mrg breaking long lines to below $COLUMNS (or 1024 if not set).
8544 1.1 mrg Communicating the exit status of the compiler / test with the
8545 1.1 mrg necessary pipe is done via a message through stdout/-in.
8546 1.1 mrg
8547 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8548 1.1 mrg
8549 1.1 mrg * testsuite/Makefile.am: Ensure .simd.summary is empty before
8550 1.1 mrg collecting a new summary.
8551 1.1 mrg * testsuite/Makefile.in: Regenerate.
8552 1.1 mrg
8553 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8554 1.1 mrg
8555 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: Use
8556 1.1 mrg different variables internally than documented for user
8557 1.1 mrg overrides. This makes internal append/prepend work as intended.
8558 1.1 mrg
8559 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8560 1.1 mrg
8561 1.1 mrg * testsuite/experimental/simd/driver.sh (verify_test): Print
8562 1.1 mrg test output on run xfail. Do not repeat lines from the log that
8563 1.1 mrg were already printed on stdout.
8564 1.1 mrg (test_selector): Make the compiler flags pattern usable as a
8565 1.1 mrg substring selector.
8566 1.1 mrg (toplevel): Trap on SIGINT and remove the log and sum files.
8567 1.1 mrg Call timout with --foreground to quickly terminate on SIGINT.
8568 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: Simplify run
8569 1.1 mrg targets via target patterns. Default DRIVEROPTS to -v for run
8570 1.1 mrg targets. Remove log and sum files after completion of the run
8571 1.1 mrg target (so that it's always recompiled).
8572 1.1 mrg Place help text into text file for reasonable 'make help'
8573 1.1 mrg performance.
8574 1.1 mrg
8575 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8576 1.1 mrg
8577 1.1 mrg * include/experimental/bits/simd.h: Remove unnecessary static
8578 1.1 mrg assertion. Allow sizeof(8) integer __intrinsic_type to enable
8579 1.1 mrg the necessary mask type.
8580 1.1 mrg
8581 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8582 1.1 mrg
8583 1.1 mrg * include/experimental/bits/simd.h: Let __intrinsic_type<long
8584 1.1 mrg double, N> be valid if sizeof(long double) == sizeof(double) and
8585 1.1 mrg use a __vector double as member type.
8586 1.1 mrg
8587 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8588 1.1 mrg
8589 1.1 mrg * include/experimental/bits/simd.h (__is_intrinsic_type): New
8590 1.1 mrg internal type trait. Alias for __is_vector_type on x86.
8591 1.1 mrg (_VectorTraitsImpl): Enable for __intrinsic_type in addition for
8592 1.1 mrg __vector_type.
8593 1.1 mrg (__intrin_bitcast): Allow casting to & from vector & intrinsic
8594 1.1 mrg types.
8595 1.1 mrg (__intrinsic_type): Explicitly specialize for NEON intrinsic
8596 1.1 mrg vector types.
8597 1.1 mrg
8598 1.1 mrg 2021-02-03 Matthias Kretz <kretz (a] kde.org>
8599 1.1 mrg
8600 1.1 mrg * testsuite/experimental/simd/driver.sh: Implement skip, only,
8601 1.1 mrg expensive, and xfail markers. They can select on type, ABI tag
8602 1.1 mrg subset number, target-triplet, and compiler flags.
8603 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: The summary
8604 1.1 mrg now includes lines for unexpected passes and expected failures.
8605 1.1 mrg If the skip or only markers are only conditional on the type, do
8606 1.1 mrg not generate rules for those types.
8607 1.1 mrg * testsuite/experimental/simd/tests/abs.cc: Mark test expensive
8608 1.1 mrg for ABI tag subsets 1-9.
8609 1.1 mrg * testsuite/experimental/simd/tests/algorithms.cc: Ditto.
8610 1.1 mrg * testsuite/experimental/simd/tests/broadcast.cc: Ditto.
8611 1.1 mrg * testsuite/experimental/simd/tests/casts.cc: Ditto.
8612 1.1 mrg * testsuite/experimental/simd/tests/generator.cc: Ditto.
8613 1.1 mrg * testsuite/experimental/simd/tests/integer_operators.cc: Ditto.
8614 1.1 mrg * testsuite/experimental/simd/tests/loadstore.cc: Ditto.
8615 1.1 mrg * testsuite/experimental/simd/tests/mask_broadcast.cc: Ditto.
8616 1.1 mrg * testsuite/experimental/simd/tests/mask_conversions.cc: Ditto.
8617 1.1 mrg * testsuite/experimental/simd/tests/mask_implicit_cvt.cc: Ditto.
8618 1.1 mrg * testsuite/experimental/simd/tests/mask_loadstore.cc: Ditto.
8619 1.1 mrg * testsuite/experimental/simd/tests/mask_operator_cvt.cc: Ditto.
8620 1.1 mrg * testsuite/experimental/simd/tests/mask_operators.cc: Ditto.
8621 1.1 mrg * testsuite/experimental/simd/tests/mask_reductions.cc: Ditto.
8622 1.1 mrg * testsuite/experimental/simd/tests/operator_cvt.cc: Ditto.
8623 1.1 mrg * testsuite/experimental/simd/tests/operators.cc: Ditto.
8624 1.1 mrg * testsuite/experimental/simd/tests/reductions.cc: Ditto.
8625 1.1 mrg * testsuite/experimental/simd/tests/simd.cc: Ditto.
8626 1.1 mrg * testsuite/experimental/simd/tests/split_concat.cc: Ditto.
8627 1.1 mrg * testsuite/experimental/simd/tests/splits.cc: Ditto.
8628 1.1 mrg * testsuite/experimental/simd/tests/where.cc: Ditto.
8629 1.1 mrg * testsuite/experimental/simd/tests/fpclassify.cc: Ditto. In
8630 1.1 mrg addition replace "test only floattypes" marker by unconditional
8631 1.1 mrg "float|double|ldouble" only marker.
8632 1.1 mrg * testsuite/experimental/simd/tests/frexp.cc: Ditto.
8633 1.1 mrg * testsuite/experimental/simd/tests/hypot3_fma.cc: Ditto.
8634 1.1 mrg * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
8635 1.1 mrg Ditto.
8636 1.1 mrg * testsuite/experimental/simd/tests/logarithm.cc: Ditto.
8637 1.1 mrg * testsuite/experimental/simd/tests/math_1arg.cc: Ditto.
8638 1.1 mrg * testsuite/experimental/simd/tests/math_2arg.cc: Ditto.
8639 1.1 mrg * testsuite/experimental/simd/tests/remqo.cc: Ditto.
8640 1.1 mrg * testsuite/experimental/simd/tests/trigonometric.cc: Ditto.
8641 1.1 mrg * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: Ditto.
8642 1.1 mrg * testsuite/experimental/simd/tests/sincos.cc: Ditto. In
8643 1.1 mrg addition, xfail on run because the reference data is missing.
8644 1.1 mrg
8645 1.1 mrg 2021-02-02 Jonathan Wakely <jwakely (a] redhat.com>
8646 1.1 mrg
8647 1.1 mrg * doc/xml/manual/status_cxx2011.xml: Remove stray table cell.
8648 1.1 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
8649 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
8650 1.1 mrg * doc/html/manual/status.html: Regenerate.
8651 1.1 mrg
8652 1.1 mrg 2021-02-01 Franois Dumont <fdumont (a] gcc.gnu.org>
8653 1.1 mrg
8654 1.1 mrg PR libstdc++/70303
8655 1.1 mrg * include/bits/stl_deque.h (std::deque<>::operator-(iterator, iterator)):
8656 1.1 mrg Return 0 if both iterators are value-initialized.
8657 1.1 mrg * testsuite/23_containers/deque/70303.cc: New test.
8658 1.1 mrg * testsuite/23_containers/vector/70303.cc: New test.
8659 1.1 mrg
8660 1.1 mrg 2021-02-01 Jonathan Wakely <jwakely (a] redhat.com>
8661 1.1 mrg
8662 1.1 mrg * doc/xml/manual/status_cxx2011.xml: Update std::call_once
8663 1.1 mrg status.
8664 1.1 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
8665 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Likewise. Update
8666 1.1 mrg std::from_chars and std::to_chars status. Fix formatting.
8667 1.1 mrg * doc/html/manual/status.html: Regenerate.
8668 1.1 mrg
8669 1.1 mrg 2021-01-28 Jonathan Wakely <jwakely (a] redhat.com>
8670 1.1 mrg
8671 1.1 mrg * include/experimental/bits/numeric_traits.h: Update copyright
8672 1.1 mrg dates.
8673 1.1 mrg * include/experimental/bits/simd.h: Likewise.
8674 1.1 mrg * include/experimental/bits/simd_builtin.h: Likewise.
8675 1.1 mrg * include/experimental/bits/simd_converter.h: Likewise.
8676 1.1 mrg * include/experimental/bits/simd_detail.h: Likewise.
8677 1.1 mrg * include/experimental/bits/simd_fixed_size.h: Likewise.
8678 1.1 mrg * include/experimental/bits/simd_math.h: Likewise.
8679 1.1 mrg * include/experimental/bits/simd_neon.h: Likewise.
8680 1.1 mrg * include/experimental/bits/simd_ppc.h: Likewise.
8681 1.1 mrg * include/experimental/bits/simd_scalar.h: Likewise.
8682 1.1 mrg * include/experimental/bits/simd_x86.h: Likewise.
8683 1.1 mrg * include/experimental/bits/simd_x86_conversions.h: Likewise.
8684 1.1 mrg * include/experimental/simd: Likewise.
8685 1.1 mrg * testsuite/experimental/simd/*: Likewise.
8686 1.1 mrg
8687 1.1 mrg 2021-01-27 Jonathan Wakely <jwakely (a] redhat.com>
8688 1.1 mrg
8689 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Replace invalid entity.
8690 1.1 mrg * doc/html/*: Regenerate.
8691 1.1 mrg
8692 1.1 mrg 2021-01-27 Jonathan Wakely <jwakely (a] redhat.com>
8693 1.1 mrg
8694 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: Use printf
8695 1.1 mrg instead of echo when printing escape characters.
8696 1.1 mrg
8697 1.1 mrg 2021-01-27 Matthias Kretz <kretz (a] kde.org>
8698 1.1 mrg
8699 1.1 mrg * scripts/check_simd: New file. This script is called from the
8700 1.1 mrg the check-simd target. It determines a set of compiler flags and
8701 1.1 mrg simulator setups for calling generate_makefile.sh and passes the
8702 1.1 mrg information back to the check-simd target, which recurses to the
8703 1.1 mrg generated Makefiles.
8704 1.1 mrg * scripts/create_testsuite_files: Remove files below simd/tests/
8705 1.1 mrg from testsuite_files and place them in testsuite_files_simd.
8706 1.1 mrg * testsuite/Makefile.am: Add testsuite_files_simd. Add
8707 1.1 mrg check-simd target.
8708 1.1 mrg * testsuite/Makefile.in: Regenerate.
8709 1.1 mrg * testsuite/experimental/simd/driver.sh: New file. This script
8710 1.1 mrg compiles and runs a given simd test, logging its output and
8711 1.1 mrg status. It uses the timeout command to implement compile and
8712 1.1 mrg test timeouts.
8713 1.1 mrg * testsuite/experimental/simd/generate_makefile.sh: New file.
8714 1.1 mrg This script generates a Makefile which uses driver.sh to compile
8715 1.1 mrg and run the tests and collect the logs into a single log file.
8716 1.1 mrg * testsuite/experimental/simd/tests/abs.cc: New file. Tests
8717 1.1 mrg abs(simd).
8718 1.1 mrg * testsuite/experimental/simd/tests/algorithms.cc: New file.
8719 1.1 mrg Tests min/max(simd, simd).
8720 1.1 mrg * testsuite/experimental/simd/tests/bits/conversions.h: New
8721 1.1 mrg file. Contains functions to support tests involving conversions.
8722 1.1 mrg * testsuite/experimental/simd/tests/bits/make_vec.h: New file.
8723 1.1 mrg Support functions make_mask and make_vec.
8724 1.1 mrg * testsuite/experimental/simd/tests/bits/mathreference.h: New
8725 1.1 mrg file. Support functions to supply precomputed math function
8726 1.1 mrg reference data.
8727 1.1 mrg * testsuite/experimental/simd/tests/bits/metahelpers.h: New
8728 1.1 mrg file. Support code for SFINAE testing.
8729 1.1 mrg * testsuite/experimental/simd/tests/bits/simd_view.h: New file.
8730 1.1 mrg * testsuite/experimental/simd/tests/bits/test_values.h: New
8731 1.1 mrg file. Test functions to easily drive a test with simd objects
8732 1.1 mrg initialized from a given list of values and a range of random
8733 1.1 mrg values.
8734 1.1 mrg * testsuite/experimental/simd/tests/bits/ulp.h: New file.
8735 1.1 mrg Support code to determine the ULP distance of simd objects.
8736 1.1 mrg * testsuite/experimental/simd/tests/bits/verify.h: New file.
8737 1.1 mrg Test framework for COMPARE'ing simd objects and instantiating
8738 1.1 mrg the test templates with value_type and ABI tag.
8739 1.1 mrg * testsuite/experimental/simd/tests/broadcast.cc: New file. Test
8740 1.1 mrg simd broadcasts.
8741 1.1 mrg * testsuite/experimental/simd/tests/casts.cc: New file. Test
8742 1.1 mrg simd casts.
8743 1.1 mrg * testsuite/experimental/simd/tests/fpclassify.cc: New file.
8744 1.1 mrg Test floating-point classification functions.
8745 1.1 mrg * testsuite/experimental/simd/tests/frexp.cc: New file. Test
8746 1.1 mrg frexp(simd).
8747 1.1 mrg * testsuite/experimental/simd/tests/generator.cc: New file. Test
8748 1.1 mrg simd generator constructor.
8749 1.1 mrg * testsuite/experimental/simd/tests/hypot3_fma.cc: New file.
8750 1.1 mrg Test 3-arg hypot(simd,simd,simd) and fma(simd,simd,sim).
8751 1.1 mrg * testsuite/experimental/simd/tests/integer_operators.cc: New
8752 1.1 mrg file. Test integer operators.
8753 1.1 mrg * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
8754 1.1 mrg New file. Test ldexp(simd), scalbn(simd), scalbln(simd), and
8755 1.1 mrg modf(simd).
8756 1.1 mrg * testsuite/experimental/simd/tests/loadstore.cc: New file. Test
8757 1.1 mrg (converting) simd loads and stores.
8758 1.1 mrg * testsuite/experimental/simd/tests/logarithm.cc: New file. Test
8759 1.1 mrg log*(simd).
8760 1.1 mrg * testsuite/experimental/simd/tests/mask_broadcast.cc: New file.
8761 1.1 mrg Test simd_mask broadcasts.
8762 1.1 mrg * testsuite/experimental/simd/tests/mask_conversions.cc: New
8763 1.1 mrg file. Test simd_mask conversions.
8764 1.1 mrg * testsuite/experimental/simd/tests/mask_implicit_cvt.cc: New
8765 1.1 mrg file. Test simd_mask implicit conversions.
8766 1.1 mrg * testsuite/experimental/simd/tests/mask_loadstore.cc: New file.
8767 1.1 mrg Test simd_mask loads and stores.
8768 1.1 mrg * testsuite/experimental/simd/tests/mask_operator_cvt.cc: New
8769 1.1 mrg file. Test simd_mask operators convert as specified.
8770 1.1 mrg * testsuite/experimental/simd/tests/mask_operators.cc: New file.
8771 1.1 mrg Test simd_mask compares, subscripts, and negation.
8772 1.1 mrg * testsuite/experimental/simd/tests/mask_reductions.cc: New
8773 1.1 mrg file. Test simd_mask reductions.
8774 1.1 mrg * testsuite/experimental/simd/tests/math_1arg.cc: New file. Test
8775 1.1 mrg 1-arg math functions on simd.
8776 1.1 mrg * testsuite/experimental/simd/tests/math_2arg.cc: New file. Test
8777 1.1 mrg 2-arg math functions on simd.
8778 1.1 mrg * testsuite/experimental/simd/tests/operator_cvt.cc: New file.
8779 1.1 mrg Test implicit conversions on simd binary operators behave as
8780 1.1 mrg specified.
8781 1.1 mrg * testsuite/experimental/simd/tests/operators.cc: New file. Test
8782 1.1 mrg simd compares, subscripts, not, unary minus, plus, minus,
8783 1.1 mrg multiplies, divides, increment, and decrement.
8784 1.1 mrg * testsuite/experimental/simd/tests/reductions.cc: New file.
8785 1.1 mrg Test reduce(simd).
8786 1.1 mrg * testsuite/experimental/simd/tests/remqo.cc: New file. Test
8787 1.1 mrg remqo(simd).
8788 1.1 mrg * testsuite/experimental/simd/tests/simd.cc: New file. Basic
8789 1.1 mrg sanity checks of simd types.
8790 1.1 mrg * testsuite/experimental/simd/tests/sincos.cc: New file. Test
8791 1.1 mrg sin(simd) and cos(simd).
8792 1.1 mrg * testsuite/experimental/simd/tests/split_concat.cc: New file.
8793 1.1 mrg Test split(simd) and concat(simd, simd).
8794 1.1 mrg * testsuite/experimental/simd/tests/splits.cc: New file. Test
8795 1.1 mrg split(simd_mask).
8796 1.1 mrg * testsuite/experimental/simd/tests/trigonometric.cc: New file.
8797 1.1 mrg Test remaining trigonometric functions on simd.
8798 1.1 mrg * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: New
8799 1.1 mrg file. Test trunc(simd), ceil(simd), and floor(simd).
8800 1.1 mrg * testsuite/experimental/simd/tests/where.cc: New file. Test
8801 1.1 mrg masked operations using where.
8802 1.1 mrg
8803 1.1 mrg 2021-01-27 Matthias Kretz <kretz (a] kde.org>
8804 1.1 mrg
8805 1.1 mrg * doc/xml/manual/status_cxx2017.xml: Add implementation status
8806 1.1 mrg of the Parallelism TS 2. Document implementation-defined types
8807 1.1 mrg and behavior.
8808 1.1 mrg * include/Makefile.am: Add new headers.
8809 1.1 mrg * include/Makefile.in: Regenerate.
8810 1.1 mrg * include/experimental/simd: New file. New header for
8811 1.1 mrg Parallelism TS 2.
8812 1.1 mrg * include/experimental/bits/numeric_traits.h: New file.
8813 1.1 mrg Implementation of P1841R1 using internal naming. Addition of
8814 1.1 mrg missing IEC559 functionality query.
8815 1.1 mrg * include/experimental/bits/simd.h: New file. Definition of the
8816 1.1 mrg public simd interfaces and general implementation helpers.
8817 1.1 mrg * include/experimental/bits/simd_builtin.h: New file.
8818 1.1 mrg Implementation of the _VecBuiltin simd_abi.
8819 1.1 mrg * include/experimental/bits/simd_converter.h: New file. Generic
8820 1.1 mrg simd conversions.
8821 1.1 mrg * include/experimental/bits/simd_detail.h: New file. Internal
8822 1.1 mrg macros for the simd implementation.
8823 1.1 mrg * include/experimental/bits/simd_fixed_size.h: New file. Simd
8824 1.1 mrg fixed_size ABI specific implementations.
8825 1.1 mrg * include/experimental/bits/simd_math.h: New file. Math
8826 1.1 mrg overloads for simd.
8827 1.1 mrg * include/experimental/bits/simd_neon.h: New file. Simd NEON
8828 1.1 mrg specific implementations.
8829 1.1 mrg * include/experimental/bits/simd_ppc.h: New file. Implement bit
8830 1.1 mrg shifts to avoid invalid results for integral types smaller than
8831 1.1 mrg int.
8832 1.1 mrg * include/experimental/bits/simd_scalar.h: New file. Simd scalar
8833 1.1 mrg ABI specific implementations.
8834 1.1 mrg * include/experimental/bits/simd_x86.h: New file. Simd x86
8835 1.1 mrg specific implementations.
8836 1.1 mrg * include/experimental/bits/simd_x86_conversions.h: New file.
8837 1.1 mrg x86 specific conversion optimizations. The conversion patterns
8838 1.1 mrg work around missing conversion patterns in the compiler and
8839 1.1 mrg should be removed as soon as PR85048 is resolved.
8840 1.1 mrg * testsuite/experimental/simd/standard_abi_usable.cc: New file.
8841 1.1 mrg Test that all (not all fixed_size<N>, though) standard simd and
8842 1.1 mrg simd_mask types are usable.
8843 1.1 mrg * testsuite/experimental/simd/standard_abi_usable_2.cc: New
8844 1.1 mrg file. As above but with -ffast-math.
8845 1.1 mrg * testsuite/libstdc++-dg/conformance.exp: Don't build simd tests
8846 1.1 mrg from the standard test loop. Instead use
8847 1.1 mrg check_vect_support_and_set_flags to build simd tests with the
8848 1.1 mrg relevant machine flags.
8849 1.1 mrg
8850 1.1 mrg 2021-01-27 Jonathan Wakely <jwakely (a] redhat.com>
8851 1.1 mrg
8852 1.1 mrg PR libstdc++/66414
8853 1.1 mrg * include/bits/string_view.tcc
8854 1.1 mrg (basic_string_view::find(const CharT*, size_type, size_type)):
8855 1.1 mrg Optimize.
8856 1.1 mrg
8857 1.1 mrg 2021-01-27 Paul Fee <paul.f.fee (a] gmail.com>
8858 1.1 mrg
8859 1.1 mrg * include/bits/basic_string.h (basic_string::contains): New
8860 1.1 mrg member functions.
8861 1.1 mrg * include/std/string_view (basic_string_view::contains):
8862 1.1 mrg Likewise.
8863 1.1 mrg * include/std/version (__cpp_lib_string_contains): Define.
8864 1.1 mrg * testsuite/21_strings/basic_string/operations/starts_with/char/1.cc:
8865 1.1 mrg Remove trailing whitespace.
8866 1.1 mrg * testsuite/21_strings/basic_string/operations/starts_with/wchar_t/1.cc:
8867 1.1 mrg Likewise.
8868 1.1 mrg * testsuite/21_strings/basic_string/operations/contains/char/1.cc: New test.
8869 1.1 mrg * testsuite/21_strings/basic_string/operations/contains/wchar_t/1.cc: New test.
8870 1.1 mrg * testsuite/21_strings/basic_string_view/operations/contains/char/1.cc: New test.
8871 1.1 mrg * testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: New test.
8872 1.1 mrg * testsuite/21_strings/basic_string_view/operations/contains/wchar_t/1.cc: New test.
8873 1.1 mrg
8874 1.1 mrg 2021-01-21 Jonathan Wakely <jwakely (a] redhat.com>
8875 1.1 mrg
8876 1.1 mrg * src/c++17/Makefile.in: Regenerate.
8877 1.1 mrg
8878 1.1 mrg 2021-01-20 David Edelsohn <dje.gcc (a] gmail.com>
8879 1.1 mrg
8880 1.1 mrg * config/os/aix/ctype_inline.h (bool ctype<char>:: is): Cast
8881 1.1 mrg _OBJ_DATA subscript to unsigned char. Add _THREAD_SAFE access to
8882 1.1 mrg __lc_type.
8883 1.1 mrg (const char* ctype<char>:: is): Same.
8884 1.1 mrg
8885 1.1 mrg 2021-01-18 Jonathan Wakely <jwakely (a] redhat.com>
8886 1.1 mrg
8887 1.1 mrg PR libstdc++/98725
8888 1.1 mrg * testsuite/20_util/unique_ptr/io/lwg2948.cc: Do not try to
8889 1.1 mrg write to a wide character stream if wide character support is
8890 1.1 mrg disabled in the library.
8891 1.1 mrg
8892 1.1 mrg 2021-01-18 Jonathan Wakely <jwakely (a] redhat.com>
8893 1.1 mrg
8894 1.1 mrg * testsuite/27_io/basic_stringstream/cons/char/1.cc: Use
8895 1.1 mrg stringbuf not wstringbuf.
8896 1.1 mrg
8897 1.1 mrg 2021-01-18 Jakub Jelinek <jakub (a] redhat.com>
8898 1.1 mrg
8899 1.1 mrg PR debug/98708
8900 1.1 mrg * src/c++11/Makefile.am (cxx11-ios_failure-lt.s, cxx11-ios_failure.s):
8901 1.1 mrg Compile with -gno-as-loc-support.
8902 1.1 mrg * src/c++11/Makefile.in: Regenerated.
8903 1.1 mrg
8904 1.1 mrg 2021-01-16 H.J. Lu <hjl.tools (a] gmail.com>
8905 1.1 mrg
8906 1.1 mrg * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
8907 1.1 mrg Add -fcf-protection=none to -march=i486.
8908 1.1 mrg
8909 1.1 mrg 2021-01-14 Franois Dumont <fdumont (a] gcc.gnu.org>
8910 1.1 mrg
8911 1.1 mrg * testsuite/23_containers/deque/debug/98466.cc: Make it pre-C++11
8912 1.1 mrg compliant.
8913 1.1 mrg
8914 1.1 mrg 2021-01-14 Alexandre Oliva <oliva (a] adacore.com>
8915 1.1 mrg
8916 1.1 mrg * testsuite/30_threads/future/members/poll.cc: Calibrate
8917 1.1 mrg iteration count.
8918 1.1 mrg
8919 1.1 mrg 2021-01-14 Franois Dumont <fdumont (a] gcc.gnu.org>
8920 1.1 mrg
8921 1.1 mrg PR libstdc++/98466
8922 1.1 mrg * include/bits/hashtable_policy.h (_Node_iterator_base()): Set _M_cur to nullptr.
8923 1.1 mrg (_Node_iterator()): Make default.
8924 1.1 mrg (_Node_const_iterator()): Make default.
8925 1.1 mrg * include/debug/macros.h (__glibcxx_check_erae_range_after): Add _M_singular
8926 1.1 mrg iterator checks.
8927 1.1 mrg * include/debug/safe_iterator.h
8928 1.1 mrg (_GLIBCXX_DEBUG_VERIFY_OPERANDS): Accept if both iterator are value initialized.
8929 1.1 mrg * include/debug/safe_local_iterator.h (_GLIBCXX_DEBUG_VERIFY_OPERANDS):
8930 1.1 mrg Likewise.
8931 1.1 mrg * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): Add
8932 1.1 mrg _M_singular checks on input iterators.
8933 1.1 mrg * src/c++11/debug.cc (_Safe_iterator_base::_M_can_compare): Remove _M_singular
8934 1.1 mrg checks.
8935 1.1 mrg * testsuite/23_containers/deque/debug/98466.cc: New test.
8936 1.1 mrg * testsuite/23_containers/unordered_map/debug/98466.cc: New test.
8937 1.1 mrg
8938 1.1 mrg 2021-01-14 Jonathan Wakely <jwakely (a] redhat.com>
8939 1.1 mrg
8940 1.1 mrg PR libstdc++/98471
8941 1.1 mrg * include/bits/fs_path.h (__throw_conversion_error): New
8942 1.1 mrg function to throw or abort on character conversion errors.
8943 1.1 mrg (__wstr_from_utf8): Move definition after filesystem_error has
8944 1.1 mrg been defined. Use __throw_conversion_error.
8945 1.1 mrg (path::_S_convert<_EcharT>): Use __throw_conversion_error.
8946 1.1 mrg (path::_S_str_convert<_CharT, _Traits, _Allocator>): Likewise.
8947 1.1 mrg (path::u8string): Likewise.
8948 1.1 mrg
8949 1.1 mrg 2021-01-14 Jonathan Wakely <jwakely (a] redhat.com>
8950 1.1 mrg
8951 1.1 mrg * include/std/barrier: Update copyright years. Fix whitespace.
8952 1.1 mrg * include/std/version: Fix whitespace.
8953 1.1 mrg * testsuite/30_threads/barrier/1.cc: Update copyright years.
8954 1.1 mrg * testsuite/30_threads/barrier/2.cc: Likewise.
8955 1.1 mrg * testsuite/30_threads/barrier/arrive.cc: Likewise.
8956 1.1 mrg * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
8957 1.1 mrg * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
8958 1.1 mrg * testsuite/30_threads/barrier/completion.cc: Likewise.
8959 1.1 mrg
8960 1.1 mrg 2021-01-13 Jonathan Wakely <jwakely (a] redhat.com>
8961 1.1 mrg
8962 1.1 mrg * doc/doxygen/user.cfg.in (INPUT): Remove include/debug/array.
8963 1.1 mrg
8964 1.1 mrg 2021-01-10 David Edelsohn <dje.gcc (a] gmail.com>
8965 1.1 mrg
8966 1.1 mrg PR libstdc++/98613
8967 1.1 mrg * testsuite/ext/vstring/cons/moveable.cc: Suppress false positive
8968 1.1 mrg warning.
8969 1.1 mrg * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Same.
8970 1.1 mrg
8971 1.1 mrg 2021-01-08 Olivier Hainque <hainque (a] adacore.com>
8972 1.1 mrg
8973 1.1 mrg * testsuite/20_util/bind/ref_neg.cc: Tweak the
8974 1.1 mrg dg-prune-output regex for out-of-build-tree contexts.
8975 1.1 mrg
8976 1.1 mrg 2021-01-07 Thomas Rodgers <trodgers (a] redhat.com>
8977 1.1 mrg
8978 1.1 mrg * doc/doxygen/user.cfg.in: Add new header.
8979 1.1 mrg * include/Makefile.am (std_headers): likewise.
8980 1.1 mrg * include/Makefile.in: Regenerate.
8981 1.1 mrg * include/precompiled/stdc++.h: Add new header.
8982 1.1 mrg * include/std/barrier: New file.
8983 1.1 mrg * include/std/version: Add __cpp_lib_barrier feature test macro.
8984 1.1 mrg * testsuite/30_threads/barrier/1.cc: New test.
8985 1.1 mrg * testsuite/30_threads/barrier/2.cc: Likewise.
8986 1.1 mrg * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
8987 1.1 mrg * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
8988 1.1 mrg * testsuite/30_threads/barrier/arrive.cc: Likewise.
8989 1.1 mrg * testsuite/30_threads/barrier/completion.cc: Likewise.
8990 1.1 mrg
8991 1.1 mrg 2021-01-07 Patrick Palka <ppalka (a] redhat.com>
8992 1.1 mrg
8993 1.1 mrg PR libstdc++/98384
8994 1.1 mrg * testsuite/20_util/to_chars/long_double.cc: Use nexttowardl
8995 1.1 mrg instead of the non-standard nextupl and nextdownl.
8996 1.1 mrg
8997 1.1 mrg 2021-01-05 Samuel Thibault <samuel.thibault (a] ens-lyon.org>
8998 1.1 mrg
8999 1.1 mrg * configure: Re-generate.
9000 1.1 mrg
9001 1.1 mrg 2021-01-05 Ed Smith-Rowland <3dw4rd (a] verizon.net>
9002 1.1 mrg
9003 1.1 mrg * include/precompiled/stdc++.h: Add <source_location> to C++20 section.
9004 1.1 mrg
9005 1.1 mrg 2021-01-01 Jakub Jelinek <jakub (a] redhat.com>
9006 1.1 mrg
9007 1.1 mrg * ChangeLog-2020: Rotate ChangeLog. New file.
9008 1.1 mrg
9010 1.1 mrg Copyright (C) 2021 Free Software Foundation, Inc.
9011 1.1 mrg
9012 1.1 mrg Copying and distribution of this file, with or without modification,
9013 1.1 mrg are permitted in any medium without royalty provided the copyright
9014 notice and this notice are preserved.
9015