]> gcc.gnu.org Git - gcc.git/blame - libstdc++-v3/ChangeLog
c: Fix up -Wunused-but-set-* warnings for _Atomics [PR99588]
[gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
bc212776
GA
12021-03-16 Jonathan Wakely <jwakely@redhat.com>
2
3 PR libstdc++/99341
4 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Remove
5 std::once_flag symbols.
6 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Likewise.
7 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
8 * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt:
9 Likewise.
10 * config/abi/pre/gnu.ver: Likewise.
11 * src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
12 (struct __once_flag_compat): Remove.
13 (_ZNSt9once_flag11_M_activateEv): Remove.
14 (_ZNSt9once_flag9_M_finishEb): Remove.
15
162021-03-16 Jonathan Wakely <jwakely@redhat.com>
17
18 PR libstdc++/99341
19 * include/std/mutex [_GLIBCXX_HAVE_LINUX_FUTEX] (once_flag):
20 Revert to pthread_once_t implementation.
21 [_GLIBCXX_HAVE_LINUX_FUTEX] (call_once): Likewise.
22 * src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
23 (struct __once_flag_compat): New type matching the reverted
24 implementation of once_flag using futexes.
25 (once_flag::_M_activate): Remove, replace with ...
26 (_ZNSt9once_flag11_M_activateEv): ... alias symbol.
27 (once_flag::_M_finish): Remove, replace with ...
28 (_ZNSt9once_flag9_M_finishEb): ... alias symbol.
29 * testsuite/30_threads/call_once/66146.cc: Removed.
30
3c5b6d24
GA
312021-03-15 Iain Sandoe <iain@sandoe.co.uk>
32
33 * testsuite/17_intro/names.cc: Exclude j from the list
34 of test symbols for Darwin.
35
362021-03-15 Iain Sandoe <iain@sandoe.co.uk>
37
38 * config/os/bsd/darwin/ppc-extra.ver: Add matching for
39 to_chars and from_chars for long double.
40
412021-03-15 Patrick Palka <ppalka@redhat.com>
42
43 * include/bits/max_size_type.h (__max_size_type::operator _Tp):
44 Fix formatting.
45 (__max_size_type::operator++): Define.
46 (__max_size_type::operator--): Likewise.
47 (__max_size_type::operator<=>): Conditionally define (in place
48 of the other comparison operators).
49 (__max_diff_type::operator _Tp): Fix formatting.
50 (__max_diff_type::operator++): Define.
51 (__max_diff_type::operator--): Likewise.
52 (__max_diff_type::operator<=>): Conditionally define (in place
53 of the other comparison operators).
54 * testsuite/std/ranges/iota/max_size_type.cc (test01): Test
55 these operator overloads.
56
c2be8205
CT
572021-03-15 Caroline Tice <cmtice@google.com>
58
59 PR libstdc++/99172
60 * src/Makefile.am (AM_CXXFLAGS_PRE, AM_CXXFLAGS): Add
61 AM_CXXFLAGS_PRE with the old definition of AM_CXXFLAGS; make
62 AM_CXXFLAGS to be AM_CXXFLAGS_PRE with '-fvtable-verify=std'
63 filtered out.
64 * src/Makefile.in: Regenerate.
65
48ff383f
GA
662021-03-11 Patrick Palka <ppalka@redhat.com>
67
68 * src/c++17/floating_to_chars.cc: Simplify the file as if
69 __SIZEOF_INT128__ is always defined.
70 [!defined __SIZEOF_INT128__]: Include "uint128_t.h". Define
71 a base-10 to_chars overload for the uint128_t class type.
72 * src/c++17/uint128_t.h: New file.
73 * testsuite/20_util/to_chars/long_double.cc: No longer expect an
74 execution FAIL on targets that have a large long double type
75 but lack __int128.
76
772021-03-11 Patrick Palka <ppalka@redhat.com>
78
79 * src/c++17/ryu/LOCAL_PATCHES: Update.
80 * src/c++17/ryu/d2s_intrinsics.h: Don't define uint128_t.
81 * src/c++17/ryu/generic_128.h: Likewise.
82 * src/c++17/ryu/ryu_generic_128.h (struct floating_decimal_128):
83 Use uint128_t instead of __uint128_t.
84 (generic_binary_to_decimal): Likewise.
85
862021-03-11 Patrick Palka <ppalka@redhat.com>
87
88 * src/c++17/ryu/LOCAL_PATCHES: New file.
89
902021-03-11 Patrick Palka <ppalka@redhat.com>
91
92 * src/c++17/floating_to_chars.cc (uint128_t): New conditionally
93 defined alias of unsigned __int128.
94 (floating_type_traits_binary128::mantissa_t): Use uint128_t
95 instead of unsigned __int128.
96 (floating_type_traits<long double>::mantissa_t)
97 [LONG_DOUBLE_KIND == LDK_IBM128]: Likewise.
98 (get_ieee_repr): Likewise. Make casts from uint_t to mantissa_t
99 and uint32_t explicit. Simplify the extraction of mantissa,
100 exponent and sign bit.
101
1022021-03-11 Jonathan Wakely <jwakely@redhat.com>
103
104 * include/std/barrier (barrier::arrival_token): New move-only
105 class that encapsulates the underlying token value.
106
1072021-03-11 Jonathan Wakely <jwakely@redhat.com>
108
109 * python/libstdcxx/v6/printers.py (find_type): Use tag attribute
110 instead of unqualified() method.
111
1122021-03-11 Jonathan Wakely <jwakely@redhat.com>
113
114 PR libstdc++/99537
115 * include/std/stop_token (_Stop_state_t::_M_release_ownership):
116 Use acq_rel memory ordering.
117
1182021-03-11 Jonathan Wakely <jwakely@redhat.com>
119
120 PR libstdc++/99537
121 * src/c++17/fs_dir.cc (recursive_directory_iterator): Use new
122 helper function to check for permission denied errors.
123 * src/filesystem/dir.cc (recursive_directory_iterator):
124 Likewise.
125 * src/filesystem/dir-common.h (is_permission_denied_error): New
126 helper function.
127
1282021-03-11 Jonathan Wakely <jwakely@redhat.com>
129
130 PR libstdc++/99536
131 * include/bits/random.h (normal_distribution): Use
132 default-initializer for _M_saved and _M_saved_available.
133
e9800852
GA
1342021-03-10 John David Anglin <danglin@gcc.gnu.org>
135
136 * testsuite/29_atomics/atomic/wait_notify/bool.cc: Add options to
137 link with libatomic.
138 * testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
139 * testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
140 * testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
141 * testsuite/30_threads/barrier/arrive.cc: Likewise.
142 * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
143 * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
144 * testsuite/30_threads/barrier/completion.cc: Likewise.
145 * testsuite/30_threads/latch/3.cc: Likewise.
146 * testsuite/30_threads/semaphore/try_acquire.cc: Likewise.
147 * testsuite/30_threads/semaphore/try_acquire_for.cc: Likewise.
148 * testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
149
1502021-03-10 Jonathan Wakely <jwakely@redhat.com>
151
152 PR libstdc++/99413
153 * include/bits/align.h: Include debug/assertions.h.
154 * include/bits/codecvt.h: Include bits/c++config.h.
155 * include/bits/enable_special_members.h: Likewise.
156 * include/bits/erase_if.h: Likewise.
157 * include/bits/functional_hash.h: Include <type_traits>.
158 * include/bits/invoke.h: Include bits/move.h.
159 * include/bits/ostream_insert.h: Include bits/exception_defines.h.
160 * include/bits/parse_numbers.h: Include <type_traits>.
161 * include/bits/predefined_ops.h: Include bits/c++config.h.
162 * include/bits/range_access.h: Include bits/stl_iterator.h.
163 * include/bits/stl_bvector.h: Do not include bits/stl_vector.h.
164 * include/bits/stl_iterator.h: Include bits/stl_iterator_base_types.h.
165 * include/bits/stl_uninitialized.h: Include bits/stl_algobase.h.
166 * include/bits/uniform_int_dist.h: Include bits/concept_check.h.
167 * include/bits/unique_lock.h: Include bits/std_mutex.h.
168 * include/debug/assertions.h: Include bits/c++config.h.
169
1702021-03-10 Jonathan Wakely <jwakely@redhat.com>
171
172 * include/bits/ranges_cmp.h (__eq_builtin_ptr_cmp): Remove.
173 (ranges::equal_to, ranges::not_equal_to): Do not constrain
174 with __eq_builtin_ptr_cmp.
175 (ranges::less, ranges::greater, ranges::less_equal)
176 (ranges::greater_equal): Do not constrain with
177 __less_builtin_ptr_cmp.
178 * libsupc++/compare (compare_three_way): Do not constrain with
179 __3way_builtin_ptr_cmp.
180 * testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc: Moved to...
181 * testsuite/18_support/comparisons/object/lwg3530.cc: ...here.
182 * testsuite/20_util/function_objects/range.cmp/lwg3530.cc: New test.
183
1842021-03-10 Jonathan Wakely <jwakely@redhat.com>
185
186 * testsuite/std/time/syn_c++20.cc: Enable synopsis checks for
187 C++20 calendar types.
188
0ad6a2e2
GA
1892021-03-06 Jakub Jelinek <jakub@redhat.com>
190
191 PR libstdc++/99396
192 * include/std/bit (__rotl, __rotr): Add optimized variants for power of
193 two _Nd which the compiler can pattern match the rotates.
194
67f10d28
GA
1952021-03-04 Jonathan Wakely <jwakely@redhat.com>
196
197 PR libstdc++/99382
198 * testsuite/20_util/specialized_algorithms/uninitialized_default_n/sizes.cc:
199 Make storage larger than required. Verify no write to the last
200 element.
201 * testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
202 Likewise.
203
f3641ac7
GA
2042021-03-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
205
206 * config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
207 * config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
208 Likewise.
209 * config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
210 * config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
211 Likewise.
212
2132021-03-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
214
215 * include/experimental/bits/simd.h: Replace reserved _X, _B by
216 _Xp, _Bp.
217 * include/experimental/bits/simd_builtin.h: Likewise.
218 * include/experimental/bits/simd_x86.h: Likewise.
219
ec9dc4fa
GA
2202021-02-27 Jonathan Wakely <jwakely@redhat.com>
221
222 PR libstdc++/99301
223 * include/std/chrono (year_month_day::_M_days_since_epoch()):
224 Convert chrono::month and chrono::day to unsigned before
225 converting to uint32_t.
226
daa68844
GA
2272021-02-25 Jonathan Wakely <jwakely@redhat.com>
228
229 * include/std/chrono (year_month_day::_S_from_days): Perform
230 all calculations with type uint32_t.
231
2322021-02-25 Jonathan Wakely <jwakely@redhat.com>
233
234 * doc/xml/manual/abi.xml: Document versioning for GCC 11.
235 * doc/html/manual/abi.html: Regenerate.
236
2372021-02-25 Jonathan Wakely <jwakely@redhat.com>
238
239 PR libstdc++/99270
240 * testsuite/27_io/headers/cstdio/types_std.cc: Use pointer to
241 FILE instead of FILE.
242
2432021-02-25 Andreas Schwab <schwab@suse.de>
244
245 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
246 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
247 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
248 * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
249
2502021-02-25 Jonathan Wakely <jwakely@redhat.com>
251
252 PR libstdc++/99265
253 * include/std/chrono (year_month_day::_S_from_days): Cast long
254 to int explicitly.
255
2562021-02-25 Jonathan Wakely <jwakely@redhat.com>
257
258 * include/std/utility (to_underlying): Define.
259 * include/std/version (__cpp_lib_to_underlying): Define.
260 * testsuite/20_util/to_underlying/1.cc: New test.
261 * testsuite/20_util/to_underlying/version.cc: New test.
262
4028d01a
GA
2632021-02-24 Jonathan Wakely <jwakely@redhat.com>
264
265 PR libstdc++/99261
266 * src/c++17/floating_to_chars.cc (sprintf_ld): Add extra args
267 before value to be printed.
268
2692021-02-24 Patrick Palka <ppalka@redhat.com>
270
271 * src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
272 Relax the condition that guards the printf code path to accept
273 F128_type as well as long double.
274
2752021-02-24 Cassio Neri <cassio.neri@gmail.com>
276
277 * include/std/chrono (year_month_day_last:day): New
278 implementation.
279
2802021-02-24 Cassio Neri <cassio.neri@gmail.com>
281
282 * include/std/chrono (year::is_leap): New implementation.
283 * testsuite/std/time/year/2.cc: New test.
284
2852021-02-24 Cassio Neri <cassio.neri@gmail.com>
286
287 * include/std/chrono (year_month_day::_M_days_since_epoch):
288 New implementation.
289 * testsuite/std/time/year_month_day/4.cc: New test.
290
2912021-02-24 Cassio Neri <cassio.neri@gmail.com>
292
293 * include/std/chrono (year_month_day::_S_from_days): New
294 implementation.
295 * testsuite/std/time/year_month_day/3.cc: New test.
296
2972021-02-24 Patrick Palka <ppalka@redhat.com>
298
299 PR libstdc++/98384
300 * testsuite/20_util/to_chars/long_double.cc: Include <optional>.
301 (test01): Simplify verifying the nearby values by using a
302 2-iteration loop and a dedicated output buffer to check that the
303 nearby values are different. Factor out the printf-based
304 verification into a local function, and check that the leading
305 hex digits agree before comparing to the output of printf. Also
306 verify the output by round-tripping it through from_chars.
307
3082021-02-24 Jonathan Wakely <jwakely@redhat.com>
309
310 PR libstdc++/98389
311 * config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Do not match to_chars
312 symbols for long double arguments mangled as 'g'.
313 * config/os/gnu-linux/ldbl-extra.ver: Likewise.
314 * config/os/gnu-linux/ldbl-ieee128-extra.ver: Likewise.
315 * src/c++17/Makefile.am [GLIBCXX_LDBL_ALT128_COMPAT_TRUE]:
316 Use -mabi=ibmlongdouble for floating_to_chars.cc.
317 * src/c++17/Makefile.in: Regenerate.
318 * src/c++17/floating_to_chars.cc (floating_type_traits_binary128):
319 New type defining type traits of IEEE binary128 format.
320 (floating_type_traits<__float128>): Define specialization.
321 (floating_type_traits<long double>): Define in terms of
322 floating_type_traits_binary128 when appropriate.
323 (floating_to_shortest_scientific): Handle __float128.
324 (sprintf_ld): New function template for printing a long double
325 or __ieee128 value using sprintf.
326 (__floating_to_chars_shortest, __floating_to_chars_precision):
327 Use sprintf_ld.
328 (to_chars): Define overloads for __float128.
329
3302021-02-24 Jonathan Wakely <jwakely@redhat.com>
331
332 * testsuite/17_intro/names.cc: Undefine 'u' on powerpc*-linux*.
333
71e24b06
GA
3342021-02-23 Martin Sebor <msebor@redhat.com>
335
336 PR c++/99074
337 * libsupc++/dyncast.cc (__dynamic_cast): Return null when
338 first argument is null.
339
3402021-02-23 Jakub Jelinek <jakub@redhat.com>
341
342 PR libstdc++/99181
343 * testsuite/21_strings/char_traits/requirements/char/99181.cc: New
344 test.
345
3462021-02-23 Jakub Jelinek <jakub@redhat.com>
347
348 PR libstdc++/99181
349 * include/bits/char_traits.h (char_traits<char>::compare): For
350 constexpr evaluation don't call
351 __gnu_cxx::char_traits<char_type>::compare but do the comparison loop
352 directly.
353
3542021-02-23 Jakub Jelinek <jakub@redhat.com>
355
356 PR libstdc++/97549
357 * include/pstl/parallel_backend_serial.h: Remove __pstl::__par_backend.
358
3592021-02-23 Patrick Palka <ppalka@redhat.com>
360
361 PR libstdc++/98384
362 * src/c++17/floating_to_chars.cc (get_ieee_repr): Extract
363 the high- and low-order parts from an IBM long double value
364 in an endian-agnostic way.
365
50352c6c
GA
3662021-02-19 Jonathan Wakely <jwakely@redhat.com>
367
368 * include/bits/atomic_wait.h (__thread_relax()): Call
369 __thread_yield() not __gthread_yield().
370
de594739
GA
3712021-02-15 Jonathan Wakely <jwakely@redhat.com>
372
373 * include/bits/atomic_wait.h (__thread_yield()): Check
374 _GLIBCXX_HAS_GTHREADS before using __gthread_yield.
375 (__thread_relax()): Use __thread_yield() instead of repeating
376 the preprocessor checks for __gthread_yield.
377
3782021-02-15 Jonathan Wakely <jwakely@redhat.com>
379
380 * include/std/mutex (once_flag::_M_activate()): Add explicit
381 return statement for passive case.
382 (once_flag::_M_finish(bool)): Use reserved name for parameter.
383
c5ae38e8
GA
3842021-02-14 Jonathan Wakely <jwakely@redhat.com>
385
386 PR libstdc++/99096
387 * testsuite/util/testsuite_fs.h: Always include <unistd.h>.
388
fab095da
GA
3892021-02-12 Jonathan Wakely <jwakely@redhat.com>
390
391 PR libstdc++/88881
392 * src/c++17/fs_ops.cc (fs::symlink_status): Re-enable workaround.
393
3942021-02-12 Jonathan Wakely <jwakely@redhat.com>
395
396 * doc/xml/manual/status_cxx2014.xml: Document implementation
397 specific properties of std::experimental::filesystem::rename.
398 * doc/xml/manual/status_cxx2017.xml: Document implementation
399 specific properties of std::filesystem::rename.
400 * doc/html/*: Regenerate.
401 * src/c++17/fs_ops.cc (fs::rename): Implement correct behaviour
402 for directories on Windows.
403 * src/filesystem/ops-common.h (__gnu_posix::rename): Use
404 MoveFileExW on Windows.
405 * testsuite/27_io/filesystem/operations/rename.cc: New test.
406 * testsuite/experimental/filesystem/operations/rename.cc: New test.
407
4082021-02-12 Jonathan Wakely <jwakely@redhat.com>
409
410 * testsuite/util/testsuite_fs.h (nonexistent_path): Add
411 random number to the path.
412
4132021-02-12 Jonathan Wakely <jwakely@redhat.com>
414
415 * include/experimental/internet (address_v6::to_string): Include
416 scope ID in string.
417 * testsuite/experimental/net/internet/address/v6/members.cc:
418 Test to_string() results.
419
4202021-02-12 Jonathan Wakely <jwakely@redhat.com>
421
422 * include/experimental/internet (address_v6::any): Avoid using
423 memcpy in constexpr function.
424 (address_v6::loopback): Likewise.
425 (make_address_v6): Fix missing return statements on error paths.
426 * include/experimental/io_context: Avoid -Wdangling-else
427 warning.
428 * testsuite/experimental/net/internet/address/v4/members.cc:
429 Remove unused variables.
430 * testsuite/experimental/net/internet/address/v6/members.cc:
431 New test.
432
4332021-02-12 Jonathan Wakely <jwakely@redhat.com>
434
435 * include/bits/shared_ptr_base.h (__shared_ptr::_M_get_deleter):
436 Add unused attribute to parameter.
437 * src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq):
438 Likewise.
439
4402021-02-12 Jonathan Wakely <jwakely@redhat.com>
441
442 * testsuite/27_io/basic_ostream/emit/1.cc: Expect test to fail
443 if -fno-rtti is used.
444 * testsuite/30_threads/async/forced_unwind.cc: Expect test
445 to abort if -fno-rtti is used.
446
4472021-02-12 Jonathan Wakely <jwakely@redhat.com>
448
449 * testsuite/util/testsuite_allocator.h (memory_resource):
450 Remove requirement for RTTI and exceptions to be enabled.
451
4522021-02-12 Jonathan Wakely <jwakely@redhat.com>
453
454 * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Use
455 static_cast when RTTI is disabled.
456 * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc:
457 Likewise.
458 * testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc:
459 Likewise.
460 * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc:
461 Likewise.
462 * testsuite/27_io/basic_stringstream/str/char/2.cc:
463 Likewise.
464 * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc:
465 Likewise.
466
4672021-02-12 Jonathan Wakely <jwakely@redhat.com>
468
469 * include/std/ostream (__syncbuf_base::_S_get): Mark parameter
470 as unused and only use dynamic_cast when RTTI is enabled.
471
4722021-02-12 Jonathan Wakely <jwakely@redhat.com>
473
474 PR libstdc++/99077
475 * src/c++11/cxx11-ios_failure.cc (__ios_failure(const char*, int)):
476 Change int parameter to error_code, to match std::ios_failure.
477 (__throw_ios_failure(const char*, int)): Construct error_code
478 from int parameter.
479
0c5cdb31
GA
4802021-02-11 Jonathan Wakely <jwakely@redhat.com>
481
482 * libsupc++/eh_ptr.cc (_GLIBCXX_EH_PTR_RELOPS_COMPAT): Define
483 new macro.
484 * libsupc++/exception_ptr.h (_GLIBCXX_EH_PTR_USED): Check new
485 macro instead of _GLIBCXX_EH_PTR_COMPAT.
486 (operator==): Likewise.
487
4882021-02-11 Jonathan Wakely <jwakely@redhat.com>
489
490 PR libstdc++/99058
491 * doc/xml/manual/status_cxx2011.xml: Document when support
492 became stable.
493 * doc/xml/manual/status_cxx2014.xml: Likewise.
494 * doc/xml/manual/status_cxx2017.xml: Likewise.
495 * doc/html/manual/status.html: Regenerate.
496
4b37c3ea
GA
4972021-02-10 Jonathan Wakely <jwakely@redhat.com>
498
499 PR libstdc++/88881
500 * src/c++17/fs_ops.cc (fs::status): Re-enable workaround.
501
5022021-02-10 Jonathan Wakely <jwakely@redhat.com>
503
504 * src/c++17/fs_ops.cc (fs::create_hard_link, fs::equivalent)
505 (fs::remove): Use std::system_category() for error codes from
506 GetLastError().
507 * src/filesystem/ops.cc (fs::create_hard_link, fs::remove):
508 Likewise.
509
5102021-02-10 Jonathan Wakely <jwakely@redhat.com>
511
512 * testsuite/27_io/filesystem/operations/proximate.cc: Fix typo
513 in __MINGW32__ macro name.
514 * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
515 * testsuite/27_io/filesystem/path/generation/proximate.cc:
516 Likewise.
517 * testsuite/27_io/filesystem/path/generation/relative.cc:
518 Likewise.
519 * testsuite/util/testsuite_fs.h: Likewise.
520
0a91b73e
GA
5212021-02-09 François Dumont <fdumont@gcc.gnu.org>
522
523 * include/bits/stl_tree.h
524 (__has_is_transparent, __has_is_transparent_t): Move...
525 * include/bits/stl_function.h: ...here.
526 * include/bits/hashtable_policy.h (_Hash_code_base<>::_M_hash_code_tr): New..
527 (_Hashtable_base<>::_M_equals_tr): New.
528 * include/bits/hashtable.h (_Hashtable<>::_M_find_tr, _Hashtable<>::_M_count_tr,
529 _Hashtable<>::_M_equal_range_tr): New member function templates to perform
530 heterogeneous lookup.
531 (_Hashtable<>::_M_find_before_node_tr): New.
532 (_Hashtable<>::_M_find_node_tr): New.
533 * include/bits/unordered_map.h (unordered_map::find<>, unordered_map::count<>,
534 unordered_map::contains<>, unordered_map::equal_range<>): New member function
535 templates to perform heterogeneous lookup.
536 (unordered_multimap::find<>, unordered_multimap::count<>,
537 unordered_multimap::contains<>, unordered_multimap::equal_range<>): Likewise.
538 * include/bits/unordered_set.h (unordered_set::find<>, unordered_set::count<>,
539 unordered_set::contains<>, unordered_set::equal_range<>): Likewise.
540 (unordered_multiset::find<>, unordered_multiset::count<>,
541 unordered_multiset::contains<>, unordered_multiset::equal_range<>): Likewise.
542 * include/debug/unordered_map
543 (unordered_map::find<>, unordered_map::equal_range<>): Likewise.
544 (unordered_multimap::find<>, unordered_multimap::equal_range<>): Likewise.
545 * include/debug/unordered_set
546 (unordered_set::find<>, unordered_set::equal_range<>): Likewise.
547 (unordered_multiset::find<>, unordered_multiset::equal_range<>): Likewise.
548 * testsuite/23_containers/unordered_map/operations/1.cc: New test.
549 * testsuite/23_containers/unordered_multimap/operations/1.cc: New test.
550 * testsuite/23_containers/unordered_multiset/operations/1.cc: New test.
551 * testsuite/23_containers/unordered_set/operations/1.cc: New test.
552
5532021-02-09 François Dumont <fdumont@gcc.gnu.org>
554
555 * include/bits/stl_deque.h
556 (std::operator-(deque::iterator, deque::iterator)): Replace if/then with
557 a null pointer test.
558
5592021-02-09 Jonathan Wakely <jwakely@redhat.com>
560
561 * testsuite/27_io/filesystem/operations/remove_all.cc: Remove
562 test directory after making it writable again.
563 * testsuite/experimental/filesystem/operations/remove_all.cc:
564 Likewise.
565
5662021-02-09 Jonathan Wakely <jwakely@redhat.com>
567
568 PR libstdc++/99021
569 * include/std/coroutine (coroutine_handle<P>::from_address): Add
570 noexcept.
571
5722021-02-09 Vladimir Vishnevsky <vv.os.swe@gmail.com>
573
574 * include/ext/stdio_sync_filebuf.h: Remove unused <unistd.h>.
575 * src/c++17/fs_ops.cc (fs::permissions): Qualify mode_t.
576
5772021-02-09 Jakub Jelinek <jakub@redhat.com>
578
579 PR middle-end/98465
580 * include/bits/basic_string.tcc (basic_string::_M_replace): When __s
581 points to the characters moved by earlier _S_move, compute the source
582 address using expression based on the __p pointer rather than __s
583 pointer.
584
9faaa807
GA
5852021-02-03 Jonathan Wakely <jwakely@redhat.com>
586
587 * testsuite/19_diagnostics/error_code/operators/not_equal.cc:
588 Add comparison with same category and different values.
589 * testsuite/19_diagnostics/error_code/operators/less.cc:
590 Likewise. Fix comparison involving different categories.
591 * testsuite/19_diagnostics/error_code/operators/three_way.cc:
592 Likewise.
593 * testsuite/19_diagnostics/error_condition/operators/less.cc:
594 Add comment.
595 * testsuite/19_diagnostics/error_condition/operators/three_way.cc:
596 Likewise.
597
5982021-02-03 yaozhongxiao <yaozhongxiao@linux.alibaba.com>
599
600 * include/experimental/bits/simd_neon.h: Replace repeated vpadd
601 calls with a single vaddv for aarch64.
602
6032021-02-03 Matthias Kretz <kretz@kde.org>
604
605 * testsuite/Makefile.am: Warn about the workaround. Add
606 -fno-tree-vrp to CXXFLAGS passed to the check_simd script.
607 Improve initial user feedback from make check-simd.
608 * testsuite/Makefile.in: Regenerated.
609
6102021-02-03 Matthias Kretz <kretz@kde.org>
611
612 * include/experimental/bits/simd.h: Add __detail::_Minimum and
613 __detail::_Maximum to use them as _BinaryOperation to _S_reduce.
614 Add hmin and hmax overloads for simd and const_where_expression.
615 * include/experimental/bits/simd_scalar.h
616 (_SimdImplScalar::_S_reduce): Make unused _BinaryOperation
617 parameter const-ref to allow calling _S_reduce with an rvalue.
618 * testsuite/experimental/simd/tests/reductions.cc: Add tests for
619 hmin and hmax. Since the compiler statically determined that all
620 tests pass, repeat the test after a call to make_value_unknown.
621
6222021-02-03 Matthias Kretz <kretz@kde.org>
623
624 * testsuite/experimental/simd/tests/bits/verify.h (verify): Add
625 instruction pointer data member. Ensure that the `if (m_failed)`
626 branch is always inlined into the calling code. The body of the
627 conditional can still be a function call. Move the get_ip call
628 into the verify ctor to simplify the ctor calls.
629 (COMPARE): Don't mention the use of all_of for reduction of a
630 simd_mask. It only distracts from the real issue.
631
6322021-02-03 Matthias Kretz <kretz@kde.org>
633
634 * testsuite/experimental/simd/driver.sh: Abstract reading test
635 options into read_src_option function. Read skip, only,
636 expensive, and xfail via read_src_option. Add timeout and
637 timeout-factor options and adjust timeout variable accordingly.
638 * testsuite/experimental/simd/tests/loadstore.cc: Set
639 timeout-factor 2.
640
6412021-02-03 Matthias Kretz <kretz@kde.org>
642
643 * testsuite/experimental/simd/driver.sh: When handling the pipe
644 to log (and on verbose to stdout) count the lines. If it exceeds
645 1000 log the issue and exit 125, which is then handled as a
646 failure.
647
6482021-02-03 Matthias Kretz <kretz@kde.org>
649
650 * testsuite/experimental/simd/tests/hypot3_fma.cc: Add skip:
651 markup for long double on powerpc64*.
652
6532021-02-03 Matthias Kretz <kretz@kde.org>
654
655 * include/experimental/bits/simd.h: Add __have_power10vec
656 conditional on _ARCH_PWR10.
657 * include/experimental/bits/simd_builtin.h: Forward declare
658 _MaskImplPpc and use it as _MaskImpl when __ALTIVEC__ is
659 defined.
660 (_MaskImplBuiltin::_S_some_of): Call _S_popcount from the
661 _SuperImpl for optimizations and correctness.
662 * include/experimental/bits/simd_ppc.h: Add _MaskImplPpc.
663 (_MaskImplPpc::_S_popcount): Implement via vec_cntm for POWER10.
664 Otherwise, for >=int use -vec_sums divided by a sizeof factor.
665 For <int use -vec_sums(vec_sum4s(...)) to sum all mask entries.
666
6672021-02-03 Matthias Kretz <kretz@kde.org>
668
669 * testsuite/experimental/simd/driver.sh: Remove executable on
670 SIGINT. Process compiler and test executable output: In verbose
671 mode print messages immediately, limited to 1000 lines and
672 breaking long lines to below $COLUMNS (or 1024 if not set).
673 Communicating the exit status of the compiler / test with the
674 necessary pipe is done via a message through stdout/-in.
675
6762021-02-03 Matthias Kretz <kretz@kde.org>
677
678 * testsuite/Makefile.am: Ensure .simd.summary is empty before
679 collecting a new summary.
680 * testsuite/Makefile.in: Regenerate.
681
6822021-02-03 Matthias Kretz <kretz@kde.org>
683
684 * testsuite/experimental/simd/generate_makefile.sh: Use
685 different variables internally than documented for user
686 overrides. This makes internal append/prepend work as intended.
687
6882021-02-03 Matthias Kretz <kretz@kde.org>
689
690 * testsuite/experimental/simd/driver.sh (verify_test): Print
691 test output on run xfail. Do not repeat lines from the log that
692 were already printed on stdout.
693 (test_selector): Make the compiler flags pattern usable as a
694 substring selector.
695 (toplevel): Trap on SIGINT and remove the log and sum files.
696 Call timout with --foreground to quickly terminate on SIGINT.
697 * testsuite/experimental/simd/generate_makefile.sh: Simplify run
698 targets via target patterns. Default DRIVEROPTS to -v for run
699 targets. Remove log and sum files after completion of the run
700 target (so that it's always recompiled).
701 Place help text into text file for reasonable 'make help'
702 performance.
703
7042021-02-03 Matthias Kretz <kretz@kde.org>
705
706 * include/experimental/bits/simd.h: Remove unnecessary static
707 assertion. Allow sizeof(8) integer __intrinsic_type to enable
708 the necessary mask type.
709
7102021-02-03 Matthias Kretz <kretz@kde.org>
711
712 * include/experimental/bits/simd.h: Let __intrinsic_type<long
713 double, N> be valid if sizeof(long double) == sizeof(double) and
714 use a __vector double as member type.
715
7162021-02-03 Matthias Kretz <kretz@kde.org>
717
718 * include/experimental/bits/simd.h (__is_intrinsic_type): New
719 internal type trait. Alias for __is_vector_type on x86.
720 (_VectorTraitsImpl): Enable for __intrinsic_type in addition for
721 __vector_type.
722 (__intrin_bitcast): Allow casting to & from vector & intrinsic
723 types.
724 (__intrinsic_type): Explicitly specialize for NEON intrinsic
725 vector types.
726
7272021-02-03 Matthias Kretz <kretz@kde.org>
728
729 * testsuite/experimental/simd/driver.sh: Implement skip, only,
730 expensive, and xfail markers. They can select on type, ABI tag
731 subset number, target-triplet, and compiler flags.
732 * testsuite/experimental/simd/generate_makefile.sh: The summary
733 now includes lines for unexpected passes and expected failures.
734 If the skip or only markers are only conditional on the type, do
735 not generate rules for those types.
736 * testsuite/experimental/simd/tests/abs.cc: Mark test expensive
737 for ABI tag subsets 1-9.
738 * testsuite/experimental/simd/tests/algorithms.cc: Ditto.
739 * testsuite/experimental/simd/tests/broadcast.cc: Ditto.
740 * testsuite/experimental/simd/tests/casts.cc: Ditto.
741 * testsuite/experimental/simd/tests/generator.cc: Ditto.
742 * testsuite/experimental/simd/tests/integer_operators.cc: Ditto.
743 * testsuite/experimental/simd/tests/loadstore.cc: Ditto.
744 * testsuite/experimental/simd/tests/mask_broadcast.cc: Ditto.
745 * testsuite/experimental/simd/tests/mask_conversions.cc: Ditto.
746 * testsuite/experimental/simd/tests/mask_implicit_cvt.cc: Ditto.
747 * testsuite/experimental/simd/tests/mask_loadstore.cc: Ditto.
748 * testsuite/experimental/simd/tests/mask_operator_cvt.cc: Ditto.
749 * testsuite/experimental/simd/tests/mask_operators.cc: Ditto.
750 * testsuite/experimental/simd/tests/mask_reductions.cc: Ditto.
751 * testsuite/experimental/simd/tests/operator_cvt.cc: Ditto.
752 * testsuite/experimental/simd/tests/operators.cc: Ditto.
753 * testsuite/experimental/simd/tests/reductions.cc: Ditto.
754 * testsuite/experimental/simd/tests/simd.cc: Ditto.
755 * testsuite/experimental/simd/tests/split_concat.cc: Ditto.
756 * testsuite/experimental/simd/tests/splits.cc: Ditto.
757 * testsuite/experimental/simd/tests/where.cc: Ditto.
758 * testsuite/experimental/simd/tests/fpclassify.cc: Ditto. In
759 addition replace "test only floattypes" marker by unconditional
760 "float|double|ldouble" only marker.
761 * testsuite/experimental/simd/tests/frexp.cc: Ditto.
762 * testsuite/experimental/simd/tests/hypot3_fma.cc: Ditto.
763 * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
764 Ditto.
765 * testsuite/experimental/simd/tests/logarithm.cc: Ditto.
766 * testsuite/experimental/simd/tests/math_1arg.cc: Ditto.
767 * testsuite/experimental/simd/tests/math_2arg.cc: Ditto.
768 * testsuite/experimental/simd/tests/remqo.cc: Ditto.
769 * testsuite/experimental/simd/tests/trigonometric.cc: Ditto.
770 * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: Ditto.
771 * testsuite/experimental/simd/tests/sincos.cc: Ditto. In
772 addition, xfail on run because the reference data is missing.
773
548b75d8
GA
7742021-02-02 Jonathan Wakely <jwakely@redhat.com>
775
776 * doc/xml/manual/status_cxx2011.xml: Remove stray table cell.
777 * doc/xml/manual/status_cxx2014.xml: Likewise.
778 * doc/xml/manual/status_cxx2017.xml: Likewise.
779 * doc/html/manual/status.html: Regenerate.
780
f7884fb1
GA
7812021-02-01 François Dumont <fdumont@gcc.gnu.org>
782
783 PR libstdc++/70303
784 * include/bits/stl_deque.h (std::deque<>::operator-(iterator, iterator)):
785 Return 0 if both iterators are value-initialized.
786 * testsuite/23_containers/deque/70303.cc: New test.
787 * testsuite/23_containers/vector/70303.cc: New test.
788
7892021-02-01 Jonathan Wakely <jwakely@redhat.com>
790
791 * doc/xml/manual/status_cxx2011.xml: Update std::call_once
792 status.
793 * doc/xml/manual/status_cxx2014.xml: Likewise.
794 * doc/xml/manual/status_cxx2017.xml: Likewise. Update
795 std::from_chars and std::to_chars status. Fix formatting.
796 * doc/html/manual/status.html: Regenerate.
797
85d04a2e
GA
7982021-01-28 Jonathan Wakely <jwakely@redhat.com>
799
800 * include/experimental/bits/numeric_traits.h: Update copyright
801 dates.
802 * include/experimental/bits/simd.h: Likewise.
803 * include/experimental/bits/simd_builtin.h: Likewise.
804 * include/experimental/bits/simd_converter.h: Likewise.
805 * include/experimental/bits/simd_detail.h: Likewise.
806 * include/experimental/bits/simd_fixed_size.h: Likewise.
807 * include/experimental/bits/simd_math.h: Likewise.
808 * include/experimental/bits/simd_neon.h: Likewise.
809 * include/experimental/bits/simd_ppc.h: Likewise.
810 * include/experimental/bits/simd_scalar.h: Likewise.
811 * include/experimental/bits/simd_x86.h: Likewise.
812 * include/experimental/bits/simd_x86_conversions.h: Likewise.
813 * include/experimental/simd: Likewise.
814 * testsuite/experimental/simd/*: Likewise.
815
aa69f0a8
GA
8162021-01-27 Jonathan Wakely <jwakely@redhat.com>
817
818 * doc/xml/manual/status_cxx2017.xml: Replace invalid entity.
819 * doc/html/*: Regenerate.
820
8212021-01-27 Jonathan Wakely <jwakely@redhat.com>
822
823 * testsuite/experimental/simd/generate_makefile.sh: Use printf
824 instead of echo when printing escape characters.
825
8262021-01-27 Matthias Kretz <kretz@kde.org>
827
828 * scripts/check_simd: New file. This script is called from the
829 the check-simd target. It determines a set of compiler flags and
830 simulator setups for calling generate_makefile.sh and passes the
831 information back to the check-simd target, which recurses to the
832 generated Makefiles.
833 * scripts/create_testsuite_files: Remove files below simd/tests/
834 from testsuite_files and place them in testsuite_files_simd.
835 * testsuite/Makefile.am: Add testsuite_files_simd. Add
836 check-simd target.
837 * testsuite/Makefile.in: Regenerate.
838 * testsuite/experimental/simd/driver.sh: New file. This script
839 compiles and runs a given simd test, logging its output and
840 status. It uses the timeout command to implement compile and
841 test timeouts.
842 * testsuite/experimental/simd/generate_makefile.sh: New file.
843 This script generates a Makefile which uses driver.sh to compile
844 and run the tests and collect the logs into a single log file.
845 * testsuite/experimental/simd/tests/abs.cc: New file. Tests
846 abs(simd).
847 * testsuite/experimental/simd/tests/algorithms.cc: New file.
848 Tests min/max(simd, simd).
849 * testsuite/experimental/simd/tests/bits/conversions.h: New
850 file. Contains functions to support tests involving conversions.
851 * testsuite/experimental/simd/tests/bits/make_vec.h: New file.
852 Support functions make_mask and make_vec.
853 * testsuite/experimental/simd/tests/bits/mathreference.h: New
854 file. Support functions to supply precomputed math function
855 reference data.
856 * testsuite/experimental/simd/tests/bits/metahelpers.h: New
857 file. Support code for SFINAE testing.
858 * testsuite/experimental/simd/tests/bits/simd_view.h: New file.
859 * testsuite/experimental/simd/tests/bits/test_values.h: New
860 file. Test functions to easily drive a test with simd objects
861 initialized from a given list of values and a range of random
862 values.
863 * testsuite/experimental/simd/tests/bits/ulp.h: New file.
864 Support code to determine the ULP distance of simd objects.
865 * testsuite/experimental/simd/tests/bits/verify.h: New file.
866 Test framework for COMPARE'ing simd objects and instantiating
867 the test templates with value_type and ABI tag.
868 * testsuite/experimental/simd/tests/broadcast.cc: New file. Test
869 simd broadcasts.
870 * testsuite/experimental/simd/tests/casts.cc: New file. Test
871 simd casts.
872 * testsuite/experimental/simd/tests/fpclassify.cc: New file.
873 Test floating-point classification functions.
874 * testsuite/experimental/simd/tests/frexp.cc: New file. Test
875 frexp(simd).
876 * testsuite/experimental/simd/tests/generator.cc: New file. Test
877 simd generator constructor.
878 * testsuite/experimental/simd/tests/hypot3_fma.cc: New file.
879 Test 3-arg hypot(simd,simd,simd) and fma(simd,simd,sim).
880 * testsuite/experimental/simd/tests/integer_operators.cc: New
881 file. Test integer operators.
882 * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
883 New file. Test ldexp(simd), scalbn(simd), scalbln(simd), and
884 modf(simd).
885 * testsuite/experimental/simd/tests/loadstore.cc: New file. Test
886 (converting) simd loads and stores.
887 * testsuite/experimental/simd/tests/logarithm.cc: New file. Test
888 log*(simd).
889 * testsuite/experimental/simd/tests/mask_broadcast.cc: New file.
890 Test simd_mask broadcasts.
891 * testsuite/experimental/simd/tests/mask_conversions.cc: New
892 file. Test simd_mask conversions.
893 * testsuite/experimental/simd/tests/mask_implicit_cvt.cc: New
894 file. Test simd_mask implicit conversions.
895 * testsuite/experimental/simd/tests/mask_loadstore.cc: New file.
896 Test simd_mask loads and stores.
897 * testsuite/experimental/simd/tests/mask_operator_cvt.cc: New
898 file. Test simd_mask operators convert as specified.
899 * testsuite/experimental/simd/tests/mask_operators.cc: New file.
900 Test simd_mask compares, subscripts, and negation.
901 * testsuite/experimental/simd/tests/mask_reductions.cc: New
902 file. Test simd_mask reductions.
903 * testsuite/experimental/simd/tests/math_1arg.cc: New file. Test
904 1-arg math functions on simd.
905 * testsuite/experimental/simd/tests/math_2arg.cc: New file. Test
906 2-arg math functions on simd.
907 * testsuite/experimental/simd/tests/operator_cvt.cc: New file.
908 Test implicit conversions on simd binary operators behave as
909 specified.
910 * testsuite/experimental/simd/tests/operators.cc: New file. Test
911 simd compares, subscripts, not, unary minus, plus, minus,
912 multiplies, divides, increment, and decrement.
913 * testsuite/experimental/simd/tests/reductions.cc: New file.
914 Test reduce(simd).
915 * testsuite/experimental/simd/tests/remqo.cc: New file. Test
916 remqo(simd).
917 * testsuite/experimental/simd/tests/simd.cc: New file. Basic
918 sanity checks of simd types.
919 * testsuite/experimental/simd/tests/sincos.cc: New file. Test
920 sin(simd) and cos(simd).
921 * testsuite/experimental/simd/tests/split_concat.cc: New file.
922 Test split(simd) and concat(simd, simd).
923 * testsuite/experimental/simd/tests/splits.cc: New file. Test
924 split(simd_mask).
925 * testsuite/experimental/simd/tests/trigonometric.cc: New file.
926 Test remaining trigonometric functions on simd.
927 * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: New
928 file. Test trunc(simd), ceil(simd), and floor(simd).
929 * testsuite/experimental/simd/tests/where.cc: New file. Test
930 masked operations using where.
931
9322021-01-27 Matthias Kretz <kretz@kde.org>
933
934 * doc/xml/manual/status_cxx2017.xml: Add implementation status
935 of the Parallelism TS 2. Document implementation-defined types
936 and behavior.
937 * include/Makefile.am: Add new headers.
938 * include/Makefile.in: Regenerate.
939 * include/experimental/simd: New file. New header for
940 Parallelism TS 2.
941 * include/experimental/bits/numeric_traits.h: New file.
942 Implementation of P1841R1 using internal naming. Addition of
943 missing IEC559 functionality query.
944 * include/experimental/bits/simd.h: New file. Definition of the
945 public simd interfaces and general implementation helpers.
946 * include/experimental/bits/simd_builtin.h: New file.
947 Implementation of the _VecBuiltin simd_abi.
948 * include/experimental/bits/simd_converter.h: New file. Generic
949 simd conversions.
950 * include/experimental/bits/simd_detail.h: New file. Internal
951 macros for the simd implementation.
952 * include/experimental/bits/simd_fixed_size.h: New file. Simd
953 fixed_size ABI specific implementations.
954 * include/experimental/bits/simd_math.h: New file. Math
955 overloads for simd.
956 * include/experimental/bits/simd_neon.h: New file. Simd NEON
957 specific implementations.
958 * include/experimental/bits/simd_ppc.h: New file. Implement bit
959 shifts to avoid invalid results for integral types smaller than
960 int.
961 * include/experimental/bits/simd_scalar.h: New file. Simd scalar
962 ABI specific implementations.
963 * include/experimental/bits/simd_x86.h: New file. Simd x86
964 specific implementations.
965 * include/experimental/bits/simd_x86_conversions.h: New file.
966 x86 specific conversion optimizations. The conversion patterns
967 work around missing conversion patterns in the compiler and
968 should be removed as soon as PR85048 is resolved.
969 * testsuite/experimental/simd/standard_abi_usable.cc: New file.
970 Test that all (not all fixed_size<N>, though) standard simd and
971 simd_mask types are usable.
972 * testsuite/experimental/simd/standard_abi_usable_2.cc: New
973 file. As above but with -ffast-math.
974 * testsuite/libstdc++-dg/conformance.exp: Don't build simd tests
975 from the standard test loop. Instead use
976 check_vect_support_and_set_flags to build simd tests with the
977 relevant machine flags.
978
9792021-01-27 Jonathan Wakely <jwakely@redhat.com>
980
981 PR libstdc++/66414
982 * include/bits/string_view.tcc
983 (basic_string_view::find(const CharT*, size_type, size_type)):
984 Optimize.
985
9862021-01-27 Paul Fee <paul.f.fee@gmail.com>
987
988 * include/bits/basic_string.h (basic_string::contains): New
989 member functions.
990 * include/std/string_view (basic_string_view::contains):
991 Likewise.
992 * include/std/version (__cpp_lib_string_contains): Define.
993 * testsuite/21_strings/basic_string/operations/starts_with/char/1.cc:
994 Remove trailing whitespace.
995 * testsuite/21_strings/basic_string/operations/starts_with/wchar_t/1.cc:
996 Likewise.
997 * testsuite/21_strings/basic_string/operations/contains/char/1.cc: New test.
998 * testsuite/21_strings/basic_string/operations/contains/wchar_t/1.cc: New test.
999 * testsuite/21_strings/basic_string_view/operations/contains/char/1.cc: New test.
1000 * testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: New test.
1001 * testsuite/21_strings/basic_string_view/operations/contains/wchar_t/1.cc: New test.
1002
7559d465
GA
10032021-01-21 Jonathan Wakely <jwakely@redhat.com>
1004
1005 * src/c++17/Makefile.in: Regenerate.
1006
b93d0e36
GA
10072021-01-20 David Edelsohn <dje.gcc@gmail.com>
1008
1009 * config/os/aix/ctype_inline.h (bool ctype<char>:: is): Cast
1010 _OBJ_DATA subscript to unsigned char. Add _THREAD_SAFE access to
1011 __lc_type.
1012 (const char* ctype<char>:: is): Same.
1013
ef1f8ee6
GA
10142021-01-18 Jonathan Wakely <jwakely@redhat.com>
1015
1016 PR libstdc++/98725
1017 * testsuite/20_util/unique_ptr/io/lwg2948.cc: Do not try to
1018 write to a wide character stream if wide character support is
1019 disabled in the library.
1020
10212021-01-18 Jonathan Wakely <jwakely@redhat.com>
1022
1023 * testsuite/27_io/basic_stringstream/cons/char/1.cc: Use
1024 stringbuf not wstringbuf.
1025
10262021-01-18 Jakub Jelinek <jakub@redhat.com>
1027
1028 PR debug/98708
1029 * src/c++11/Makefile.am (cxx11-ios_failure-lt.s, cxx11-ios_failure.s):
1030 Compile with -gno-as-loc-support.
1031 * src/c++11/Makefile.in: Regenerated.
1032
59cf67d1
GA
10332021-01-16 H.J. Lu <hjl.tools@gmail.com>
1034
1035 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1036 Add -fcf-protection=none to -march=i486.
1037
5fff80fd
GA
10382021-01-14 François Dumont <fdumont@gcc.gnu.org>
1039
1040 * testsuite/23_containers/deque/debug/98466.cc: Make it pre-C++11
1041 compliant.
1042
10432021-01-14 Alexandre Oliva <oliva@adacore.com>
1044
1045 * testsuite/30_threads/future/members/poll.cc: Calibrate
1046 iteration count.
1047
10482021-01-14 François Dumont <fdumont@gcc.gnu.org>
1049
1050 PR libstdc++/98466
1051 * include/bits/hashtable_policy.h (_Node_iterator_base()): Set _M_cur to nullptr.
1052 (_Node_iterator()): Make default.
1053 (_Node_const_iterator()): Make default.
1054 * include/debug/macros.h (__glibcxx_check_erae_range_after): Add _M_singular
1055 iterator checks.
1056 * include/debug/safe_iterator.h
1057 (_GLIBCXX_DEBUG_VERIFY_OPERANDS): Accept if both iterator are value initialized.
1058 * include/debug/safe_local_iterator.h (_GLIBCXX_DEBUG_VERIFY_OPERANDS):
1059 Likewise.
1060 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): Add
1061 _M_singular checks on input iterators.
1062 * src/c++11/debug.cc (_Safe_iterator_base::_M_can_compare): Remove _M_singular
1063 checks.
1064 * testsuite/23_containers/deque/debug/98466.cc: New test.
1065 * testsuite/23_containers/unordered_map/debug/98466.cc: New test.
1066
10672021-01-14 Jonathan Wakely <jwakely@redhat.com>
1068
1069 PR libstdc++/98471
1070 * include/bits/fs_path.h (__throw_conversion_error): New
1071 function to throw or abort on character conversion errors.
1072 (__wstr_from_utf8): Move definition after filesystem_error has
1073 been defined. Use __throw_conversion_error.
1074 (path::_S_convert<_EcharT>): Use __throw_conversion_error.
1075 (path::_S_str_convert<_CharT, _Traits, _Allocator>): Likewise.
1076 (path::u8string): Likewise.
1077
10782021-01-14 Jonathan Wakely <jwakely@redhat.com>
1079
1080 * include/std/barrier: Update copyright years. Fix whitespace.
1081 * include/std/version: Fix whitespace.
1082 * testsuite/30_threads/barrier/1.cc: Update copyright years.
1083 * testsuite/30_threads/barrier/2.cc: Likewise.
1084 * testsuite/30_threads/barrier/arrive.cc: Likewise.
1085 * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
1086 * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
1087 * testsuite/30_threads/barrier/completion.cc: Likewise.
1088
be0851b8
GA
10892021-01-13 Jonathan Wakely <jwakely@redhat.com>
1090
1091 * doc/doxygen/user.cfg.in (INPUT): Remove include/debug/array.
1092
366f86bd
GA
10932021-01-10 David Edelsohn <dje.gcc@gmail.com>
1094
1095 PR libstdc++/98613
1096 * testsuite/ext/vstring/cons/moveable.cc: Suppress false positive
1097 warning.
1098 * testsuite/ext/vstring/modifiers/assign/move_assign.cc: Same.
1099
bf5cbb9e
GA
11002021-01-08 Olivier Hainque <hainque@adacore.com>
1101
1102 * testsuite/20_util/bind/ref_neg.cc: Tweak the
1103 dg-prune-output regex for out-of-build-tree contexts.
1104
7d187e4f
GA
11052021-01-07 Thomas Rodgers <trodgers@redhat.com>
1106
1107 * doc/doxygen/user.cfg.in: Add new header.
1108 * include/Makefile.am (std_headers): likewise.
1109 * include/Makefile.in: Regenerate.
1110 * include/precompiled/stdc++.h: Add new header.
1111 * include/std/barrier: New file.
1112 * include/std/version: Add __cpp_lib_barrier feature test macro.
1113 * testsuite/30_threads/barrier/1.cc: New test.
1114 * testsuite/30_threads/barrier/2.cc: Likewise.
1115 * testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
1116 * testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
1117 * testsuite/30_threads/barrier/arrive.cc: Likewise.
1118 * testsuite/30_threads/barrier/completion.cc: Likewise.
1119
11202021-01-07 Patrick Palka <ppalka@redhat.com>
1121
1122 PR libstdc++/98384
1123 * testsuite/20_util/to_chars/long_double.cc: Use nexttowardl
1124 instead of the non-standard nextupl and nextdownl.
1125
651b8a50
GA
11262021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
1127
1128 * configure: Re-generate.
1129
11302021-01-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1131
1132 * include/precompiled/stdc++.h: Add <source_location> to C++20 section.
1133
b6dd195a
GA
11342021-01-01 Jakub Jelinek <jakub@redhat.com>
1135
1136 * ChangeLog-2020: Rotate ChangeLog. New file.
1137
b4df5e92 1138\f
618e665a 1139Copyright (C) 2021 Free Software Foundation, Inc.
b4df5e92
JW
1140
1141Copying and distribution of this file, with or without modification,
1142are permitted in any medium without royalty provided the copyright
1143notice and this notice are preserved.
This page took 0.962183 seconds and 5 git commands to generate.