mirror of git://gcc.gnu.org/git/gcc.git
8551 lines
306 KiB
Plaintext
8551 lines
306 KiB
Plaintext
2024-07-19 Release Manager
|
||
|
||
* GCC 11.5.0 released.
|
||
|
||
2024-07-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105417
|
||
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
|
||
Regenerate.
|
||
* src/c++11/compatibility-ldbl-alt128.cc [_GLIBCXX_USE_DUAL_ABI]:
|
||
Define __gnu_ieee128::num_get<C>::_M_extract_int[abi:cxx11]<I>
|
||
symbols as aliases for corresponding symbols without abi-tag.
|
||
|
||
2024-07-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2024-04-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104606
|
||
* include/std/optional (operator<=>(const optional<T>&, const U&)):
|
||
Reverse order of three_way_comparable_with template arguments.
|
||
* testsuite/20_util/optional/relops/104606.cc: New test.
|
||
|
||
2024-07-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2024-03-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/114401
|
||
* include/bits/hashtable.h (_Hashtable::_M_reinsert_node): Call
|
||
release() on node handle instead of just zeroing its pointer.
|
||
(_Hashtable::_M_reinsert_node_multi): Likewise.
|
||
(_Hashtable::_M_merge_unique): Likewise.
|
||
* include/bits/node_handle.h (_Node_handle_common::release()):
|
||
New member function.
|
||
(_Node_handle_common::_Optional_alloc::_M_empty): Remove
|
||
unnecessary union member.
|
||
(_Node_handle_common): Declare _Hashtable as a friend.
|
||
* include/bits/stl_tree.h (_Rb_tree::_M_reinsert_node_unique):
|
||
Call release() on node handle instead of just zeroing its
|
||
pointer.
|
||
(_Rb_tree::_M_reinsert_node_equal): Likewise.
|
||
(_Rb_tree::_M_reinsert_node_hint_unique): Likewise.
|
||
(_Rb_tree::_M_reinsert_node_hint_equal): Likewise.
|
||
* testsuite/23_containers/multiset/modifiers/114401.cc: New test.
|
||
* testsuite/23_containers/set/modifiers/114401.cc: New test.
|
||
* testsuite/23_containers/unordered_multiset/modifiers/114401.cc: New test.
|
||
* testsuite/23_containers/unordered_set/modifiers/114401.cc: New test.
|
||
|
||
2024-06-27 Martin Liska <mliska@suse.cz>
|
||
|
||
Backported from master:
|
||
2022-01-27 Martin Liska <mliska@suse.cz>
|
||
|
||
PR libstdc++/104259
|
||
* acinclude.m4: Fix typo.
|
||
* configure: Regenerate.
|
||
|
||
2024-06-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2023.xml: Change reference from
|
||
mainline GCC to the release branch.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2024-06-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-06-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/115575
|
||
* testsuite/experimental/simd/pr115454_find_last_set.cc: Require
|
||
avx512f_runtime. Don't memcpy fixed_size masks.
|
||
|
||
2024-06-20 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-06-20 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/115454
|
||
* include/experimental/bits/simd_x86.h (_S_not_equal_to): Use
|
||
neq comparison instead of bitwise negation after eq.
|
||
(_S_find_last_set): Clear unused high bits before computing
|
||
bit_width.
|
||
* testsuite/experimental/simd/pr115454_find_last_set.cc: New
|
||
test.
|
||
|
||
2024-06-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2024-06-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/115269
|
||
* doc/xml/manual/using.xml: Replace link to gcc-4.3.2 docs.
|
||
Replace list of -std=... options with a single entry for -std.
|
||
* doc/html/manual/using.html: Regenerate.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-04-22 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/114803
|
||
* include/experimental/bits/simd_builtin.h
|
||
(_SimdBase2::operator __vector_type_t): There is no __builtin()
|
||
function in _SimdWrapper, instead use its conversion operator.
|
||
* testsuite/experimental/simd/pr114803_vecbuiltin_cvt.cc: New
|
||
test.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-04-22 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h: Ignore -Wnarrowing for
|
||
arm_neon.h.
|
||
(__int_for_sizeof): Replace tautological compare with checking
|
||
for invalid template parameter value.
|
||
* include/experimental/bits/simd_builtin.h (__extract_part):
|
||
Remove tautological compare by combining two static_assert.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-04-17 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/numeric_traits.h: Add include guard.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-04-17 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/114750
|
||
* include/experimental/bits/simd_builtin.h
|
||
(_SimdImplBuiltin::_S_load, _S_store): Fall back to copying
|
||
scalars if the memory type cannot be vectorized for the target.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-03-27 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_x86.h (_S_masked_unary):
|
||
Cast inputs < 16 bytes to 16 byte vectors before calling the
|
||
right subtraction builtin. Before returning, truncate to the
|
||
return vector type.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2024-03-27 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_x86.h (_S_masked_unary): Call
|
||
the 4- and 8-byte variants of __builtin_ia32_subp[ds] without
|
||
rounding direction argument.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-06-06 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109822
|
||
* include/experimental/bits/simd_builtin.h (_S_store): Rewrite
|
||
to avoid casts to other vector types. Implement store as
|
||
succession of power-of-2 sized memcpy to avoid PR90424.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-06-06 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/110054
|
||
* include/experimental/bits/simd_builtin.h (_S_masked_store):
|
||
Call into deduced ABI's SimdImpl after conversion.
|
||
* include/experimental/bits/simd_x86.h (_S_masked_store_nocvt):
|
||
Don't use _mm_maskmoveu_si128. Use the generic fall-back
|
||
implementation. Also fix masked stores without SSE2, which
|
||
were not doing anything before.
|
||
|
||
2024-05-10 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-06-06 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h (__bit_cast): Use
|
||
__gnu__::__vector_size__ instead of gnu::vector_size.
|
||
|
||
2024-05-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2024-03-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/114147
|
||
* include/std/tuple (tuple::tuple(allocator_arg_t, const Alloc&)):
|
||
Add missing overload of allocator-extended default constructor.
|
||
(tuple<T1,T2>::tuple(allocator_arg_t, const Alloc&)): Likewise.
|
||
* testsuite/20_util/tuple/cons/114147.cc: New test.
|
||
|
||
2024-04-29 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2024-02-19 Iain Sandoe <iain@sandoe.co.uk>
|
||
Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR target/112397
|
||
* configure: Regenerate.
|
||
* configure.ac: Detect if we are building for Darwin.
|
||
* libsupc++/Makefile.am: If we are building for Darwin, then
|
||
suppress hot/cold partitioning for the array allocators.
|
||
* libsupc++/Makefile.in: Regenerated.
|
||
|
||
2024-04-29 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2024-03-19 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* testsuite/lib/dg-options.exp (atomic_link_flags): Emit a -B
|
||
option for the path to the uninstalled libatomic.
|
||
|
||
2024-04-29 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2024-03-19 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* testsuite/lib/libstdc++.exp (v3_target_compile): Instead of
|
||
/dev/null, use a temporary file for test executables on Darwin.
|
||
|
||
2024-04-24 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2022-12-04 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* config/os/bsd/darwin/os_defines.h
|
||
(_GTHREAD_USE_RECURSIVE_MUTEX_INIT_FUNC): Limit use of this macro
|
||
to OS versions that need it.
|
||
|
||
2024-04-22 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2023-07-03 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* testsuite/lib/libstdc++.exp: Remove additional flag handled
|
||
by Darwin specs.
|
||
|
||
2024-01-11 Ken Matsui <kmatsui@gcc.gnu.org>
|
||
|
||
Backported from master:
|
||
2024-01-11 Ken Matsui <kmatsui@gcc.gnu.org>
|
||
|
||
PR libstdc++/113250
|
||
* src/c++17/fs_ops.cc (fs::equivalent): Use || instead of &&.
|
||
* src/filesystem/ops.cc (fs::equivalent): Likewise.
|
||
* testsuite/27_io/filesystem/operations/equivalent.cc: Handle
|
||
error codes.
|
||
* testsuite/experimental/filesystem/operations/equivalent.cc:
|
||
Likewise.
|
||
|
||
2024-01-03 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2024-01-03 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR testsuite/113175
|
||
* testsuite/std/ranges/iota/max_size_type.cc (test02): Reduce
|
||
'limit' to 100 from 1000 and adjust 'log2_limit' accordingly.
|
||
(test03): Likewise.
|
||
|
||
2023-12-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-10-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* testsuite/tr1/8_c_compatibility/cstdio/functions.cc (test01):
|
||
Initialize stream to va_arg(ap, FILE*) rather than 0.
|
||
* testsuite/tr1/8_c_compatibility/cwchar/functions.cc (test01):
|
||
Likewise.
|
||
|
||
2023-12-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/debug/stl_iterator.h (__valid_range): Add constexpr
|
||
for C++20. Qualify call to avoid ADL.
|
||
(__get_distance, __can_advance, __unsafe, __base): Likewise.
|
||
* testsuite/25_algorithms/move/constexpr.cc: Also check with
|
||
std::reverse_iterator arguments.
|
||
|
||
2023-12-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-11-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/112314
|
||
* include/std/string_view (string_view::remove_suffix): Add
|
||
debug assertion.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/debug.cc:
|
||
New test.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/debug.cc:
|
||
New test.
|
||
|
||
2023-12-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-11-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/utility (in_range): Rename _Up parameter to _Res.
|
||
|
||
2023-11-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-11-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/112491
|
||
* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index):
|
||
Correctly handle unused capacity at the start of the first node.
|
||
* testsuite/libstdc++-xmethods/deque.cc: Check index operator
|
||
when elements have been removed from the front.
|
||
|
||
2023-11-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-11-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/112491
|
||
* python/libstdcxx/v6/xmethods.py (DequeWorkerBase.size): Fix
|
||
calculation to use _M_start._M_cur.
|
||
* testsuite/libstdc++-xmethods/deque.cc: Check failing cases.
|
||
|
||
2023-11-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py: Break long lines. Use raw
|
||
strings for regular expressions. Add whitespace around
|
||
operators.
|
||
(is_member_of_namespace): Use isinstance to check type.
|
||
(is_specialization_of): Likewise. Adjust template_name
|
||
for versioned namespace instead of duplicating the re.match
|
||
call.
|
||
(StdExpAnyPrinter._string_types): New static method.
|
||
(StdExpAnyPrinter.to_string): Use _string_types.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/integer_comparisons/greater_equal_neg.cc:
|
||
Add -O2 to dg-options.
|
||
* testsuite/20_util/integer_comparisons/greater_neg.cc:
|
||
Likewise.
|
||
* testsuite/20_util/integer_comparisons/less_equal_neg.cc:
|
||
Likewise.
|
||
* testsuite/lib/prune.exp: Prune 'in constexpr expansion'.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/iterators/97731.cc: New test.
|
||
* testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
|
||
Check follow_directory_symlink option.
|
||
* testsuite/experimental/filesystem/iterators/recursive_directory_iterator.cc:
|
||
Likewise.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-06-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/108178
|
||
* src/filesystem/ops-common.h (do_copy_file): Check for empty
|
||
files by trying to read a character.
|
||
* testsuite/27_io/filesystem/operations/copy_file_108178.cc:
|
||
New test.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-06-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/ops-common.h (do_copy_file) [O_CLOEXEC]: Set
|
||
close-on-exec flag on file descriptors.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-03-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/ops-common.h (get_temp_directory_from_env): Fix
|
||
formatting.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/ops-common.h [AVR] (__unsupported): Always use
|
||
errc::function_not_supported instead of errc::not_supported.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_dir.cc (_Dir::_Dir) [!_GLIBCXX_HAVE_OPENAT]:
|
||
Always store pathname if we don't have openat or unlinkat,
|
||
because the full path is needed to open sub-directories and
|
||
remove entries.
|
||
|
||
2023-10-04 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-06-27 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* src/c++17/fs_dir.cc (dir_and_pathname): Use dirfd if
|
||
_GLIBCXX_HAVE_OPENAT.
|
||
|
||
2023-10-04 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-06-24 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for
|
||
openat.
|
||
* configure, config.h.in: Rebuilt.
|
||
* src/filesystem/dir-common.h (openat): Use ::openat if
|
||
_GLIBCXX_HAVE_OPENAT.
|
||
* src/filesystem/dir.cc (dir_and_pathname): Use dirfd if
|
||
_GLIBCXX_HAVE_OPENAT.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/dir-common.h (_GLIBCXX_HAVE_DIRFD): Undefine
|
||
when <dirent.h> is not available.
|
||
(_GLIBCXX_HAVE_UNLINKAT): Likewise.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_dir.cc (_Dir(DIR*, const path&)): Change first
|
||
parameter to _Dir_base&&.
|
||
* src/filesystem/dir-common.h (_Dir_base(DIR*)): Remove.
|
||
* src/filesystem/dir.cc (_Dir(DIR*, const path&)): Change first
|
||
parameter to _Dir_base&&.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104161
|
||
* src/c++17/fs_dir.cc (fs::recursive_directory_iterator::__erase):
|
||
[i_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Refresh entry._M_type member,
|
||
instead of checking for errno values indicating a directory.
|
||
* src/c++17/fs_ops.cc (fs::remove_all(const path&)): Use similar
|
||
logic to non-throwing overload.
|
||
(fs::remove_all(const path&, error_code&)): Add comments.
|
||
* src/filesystem/ops-common.h: Likewise.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/dir-common.h (_Dir_base::openat): Change return
|
||
type to use portable posix::DIR alias.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104161
|
||
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for dirfd
|
||
and unlinkat.
|
||
* config.h.in: Regenerate.
|
||
* configure: Regenerate.
|
||
* include/bits/fs_dir.h (recursive_directory_iterator): Declare
|
||
remove_all overloads as friends.
|
||
(recursive_directory_iterator::__erase): Declare new member
|
||
function.
|
||
* include/bits/fs_fwd.h (remove, remove_all): Declare.
|
||
* src/c++17/fs_dir.cc (_Dir): Add filename_only parameter to
|
||
constructor. Pass file descriptor argument to base constructor.
|
||
(_Dir::dir_and_pathname, _Dir::open_subdir, _Dir::do_unlink)
|
||
(_Dir::unlink, _Dir::rmdir): Define new member functions.
|
||
(directory_iterator): Pass filename_only argument to _Dir
|
||
constructor.
|
||
(recursive_directory_iterator::_Dir_stack): Adjust constructor
|
||
parameters to take a _Dir rvalue instead of creating one.
|
||
(_Dir_stack::orig): Add data member for storing original path.
|
||
(_Dir_stack::report_error): Define new member function.
|
||
(__directory_iterator_nofollow): Move here from dir-common.h and
|
||
fix value to be a power of two.
|
||
(__directory_iterator_filename_only): Define new constant.
|
||
(recursive_directory_iterator): Construct _Dir object and move
|
||
into _M_dirs stack. Pass skip_permission_denied argument to first
|
||
advance call.
|
||
(recursive_directory_iterator::increment): Use _Dir::open_subdir.
|
||
(recursive_directory_iterator::__erase): Define new member
|
||
function.
|
||
* src/c++17/fs_ops.cc (ErrorReporter, do_remove_all): Remove.
|
||
(fs::remove_all): Use new recursive_directory_iterator::__erase
|
||
member function.
|
||
* src/filesystem/dir-common.h (_Dir_base): Add int parameter to
|
||
constructor and use openat to implement nofollow semantics.
|
||
(_Dir_base::fdcwd, _Dir_base::set_close_on_exec, _Dir_base::openat):
|
||
Define new member functions.
|
||
(__directory_iterator_nofollow): Move to fs_dir.cc.
|
||
* src/filesystem/dir.cc (_Dir): Pass file descriptor argument to
|
||
base constructor.
|
||
(_Dir::dir_and_pathname, _Dir::open_subdir): Define new member
|
||
functions.
|
||
(recursive_directory_iterator::_Dir_stack): Adjust constructor
|
||
parameters to take a _Dir rvalue instead of creating one.
|
||
(recursive_directory_iterator): Check for new nofollow option.
|
||
Construct _Dir object and move into _M_dirs stack. Pass
|
||
skip_permission_denied argument to first advance call.
|
||
(recursive_directory_iterator::increment): Use _Dir::open_subdir.
|
||
* src/filesystem/ops.cc (fs::remove_all): Use C++17 remove_all.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104161
|
||
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for
|
||
fdopendir.
|
||
* config.h.in: Regenerate.
|
||
* configure: Regenerate.
|
||
* src/c++17/fs_dir.cc (_Dir): Add nofollow flag to constructor
|
||
and pass it to base class constructor.
|
||
(directory_iterator): Pass nofollow flag to _Dir constructor.
|
||
(fs::recursive_directory_iterator::increment): Likewise.
|
||
* src/c++17/fs_ops.cc (do_remove_all): Use nofollow option for
|
||
directory_iterator constructor. Move error check outside loop.
|
||
* src/filesystem/dir-common.h (_Dir_base): Add nofollow flag to
|
||
constructor and when it's set use ::open with O_NOFOLLOW and
|
||
O_DIRECTORY.
|
||
* src/filesystem/dir.cc (_Dir): Add nofollow flag to constructor
|
||
and pass it to base class constructor.
|
||
(directory_iterator): Pass nofollow flag to _Dir constructor.
|
||
(fs::recursive_directory_iterator::increment): Likewise.
|
||
* src/filesystem/ops.cc (remove_all): Use nofollow option for
|
||
directory_iterator constructor. Move error check outside loop.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_ops.cc (create_directory): Fix typo in enum name.
|
||
* src/filesystem/ops-common.h (__last_system_error): Add
|
||
explicit cast to avoid narrowing conversion.
|
||
(do_space): Fix type in function name.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99327
|
||
* src/filesystem/ops-common.h (__unsupported): New function to
|
||
return a suitable error code for missing functionality.
|
||
(posix::off_t): New typedef.
|
||
(posix::*): Set errno to ENOSYS instead of ENOTSUP for no-op
|
||
fallback implementations.
|
||
(do_copy_file): Replace uses of errc::not_supported.
|
||
* src/c++17/fs_ops.cc (fs::copy, fs::copy_file, create_dir)
|
||
(fs::create_directory, fs::create_directory_symlink)
|
||
(fs::create_hard_link, fs::create_symlink, fs::current_path)
|
||
(fs::equivalent, do_stat, fs::file_size, fs::hard_link_count)
|
||
(fs::last_write_time, fs::permissions, fs::read_symlink):
|
||
Replace uses of errc::not_supported.
|
||
(fs::resize_file): Qualify off_t.
|
||
* src/filesystem/ops.cc (fs::copy, fs::copy_file, create_dir)
|
||
(fs::create_directory, fs::create_directory_symlink)
|
||
(fs::create_hard_link, fs::create_symlink, fs::current_path)
|
||
(fs::equivalent, do_stat, fs::file_size, fs::last_write_time)
|
||
(fs::permissions, fs::read_symlink, fs::system_complete):
|
||
Replace uses of errc::not_supported.
|
||
(fs::resize_file): Qualify off_t and enable unconditionally.
|
||
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/filesystem/ops-common.h (last_error): New helper function.
|
||
(filesystem::do_space): Use last_error().
|
||
* src/c++17/fs_ops.cc (fs::absolute, fs::create_hard_link)
|
||
(fs::equivalent, fs::remove, fs::temp_directory_path): Use
|
||
last_error().
|
||
* src/filesystem/ops.cc (fs::create_hard_link)
|
||
(fs::remove, fs::temp_directory_path): Likewise.
|
||
|
||
2023-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Revert:
|
||
2023-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_ops.cc [AVR] (not_supported): Define as a macro
|
||
for function_not_supported.
|
||
* src/filesystem/ops-common.h [AVR] (ENOTSUP): Define as a macro
|
||
for ENOSYS.
|
||
|
||
2023-10-02 Tim Song <t.canens.cpp@gmail.com>
|
||
|
||
Backported from master:
|
||
2023-09-28 Tim Song <t.canens.cpp@gmail.com>
|
||
|
||
PR libstdc++/111050
|
||
* include/bits/hashtable_policy.h
|
||
(_Hash_node_value_base<>::_M_valptr(), _Hash_node_value_base<>::_M_v())
|
||
Add [[__gnu__::__always_inline__]].
|
||
|
||
2023-09-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-08-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/bits/fs_path.h (path::string): Use
|
||
_GLIBCXX17_CONSTEXPR not _GLIBCXX_CONSTEXPR for 'if constexpr'.
|
||
* include/std/charconv (__to_chars_8): Initialize variable for
|
||
C++17 constexpr rules.
|
||
|
||
2023-09-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-09-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/111511
|
||
PR c++/111512
|
||
* include/std/array (to_array): Qualify calls to __to_array.
|
||
* testsuite/23_containers/array/creation/111512.cc: New test.
|
||
|
||
2023-09-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-09-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR c++/111357
|
||
* include/std/utility (make_integer_sequence): Add cast.
|
||
* testsuite/20_util/integer_sequence/pr111357.cc: New test.
|
||
|
||
2023-07-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-07-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/95048
|
||
* testsuite/27_io/filesystem/path/construct/95048.cc: Check
|
||
conversions to wide strings.
|
||
* testsuite/experimental/filesystem/path/construct/95048.cc:
|
||
Likewise.
|
||
|
||
2023-07-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/95048
|
||
* include/bits/fs_path.h (path::_Codecvt): New class template
|
||
that selects the kind of code conversion done.
|
||
(path::_Codecvt<wchar_t>): Select based on sizeof(wchar_t).
|
||
(_GLIBCXX_CONV_FROM_UTF8): New macro to allow the same code to
|
||
be used for Windows and POSIX.
|
||
(path::_S_convert(const EcharT*, const EcharT*)): Simplify by
|
||
using _Codecvt and _GLIBCXX_CONV_FROM_UTF8 abstractions.
|
||
(path::_S_str_convert(basic_string_view<value_type>, const A&)):
|
||
Simplify nested conditions.
|
||
* include/experimental/bits/fs_path.h (path::_Cvt): Define
|
||
nested typedef controlling type of code conversion done.
|
||
(path::_Cvt::_S_wconvert): Use new typedef.
|
||
(path::string(const A&)): Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/95048.cc: New test.
|
||
* testsuite/experimental/filesystem/path/construct/95048.cc: New
|
||
test.
|
||
|
||
2023-06-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-06-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/evolution.xml: Document removal of implicit
|
||
allocator rebinding extensions in strict mode and for C++20.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2023-06-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104242
|
||
* include/std/any (any(T&&)): Revert change to constraints.
|
||
* testsuite/20_util/any/cons/104242.cc: New test.
|
||
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109822
|
||
* include/experimental/bits/simd.h (to_native): Use int NTTP
|
||
as specified in PTS2.
|
||
(to_compatible): Likewise. Add missing tag to call mask
|
||
generator ctor.
|
||
* testsuite/experimental/simd/pr109822_cast_functions.cc: New
|
||
test.
|
||
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* testsuite/experimental/simd/tests/integer_operators.cc:
|
||
Compute expected value differently to avoid getting turned into
|
||
a vector shift.
|
||
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* testsuite/experimental/simd/tests/operator_cvt.cc: Make long
|
||
double <-> (u)long conversion tests conditional on sizeof(long
|
||
double) and sizeof(long).
|
||
|
||
2023-05-30 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-26 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_ppc.h (_S_bit_shift_left):
|
||
Negative __y is UB, so prefer signed compare.
|
||
|
||
2023-05-29 Release Manager
|
||
|
||
* GCC 11.4.0 released.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109261
|
||
* include/experimental/bits/simd.h (_SimdWrapper::_M_set):
|
||
Avoid vector builtin subscripting in constant expressions.
|
||
(resizing_simd_cast): Avoid memcpy if constant_evaluated.
|
||
(const_where_expression, where_expression, where)
|
||
(__extract_part, simd_mask, _SimdIntOperators, simd): Add either
|
||
_GLIBCXX_SIMD_CONSTEXPR (on public APIs), or constexpr (on
|
||
internal APIs).
|
||
* include/experimental/bits/simd_builtin.h (__vector_permute)
|
||
(__vector_shuffle, __extract_part, _GnuTraits::_SimdCastType1)
|
||
(_GnuTraits::_SimdCastType2, _SimdImplBuiltin)
|
||
(_MaskImplBuiltin::_S_store): Add constexpr.
|
||
(_CommonImplBuiltin::_S_store_bool_array)
|
||
(_SimdImplBuiltin::_S_load, _SimdImplBuiltin::_S_store)
|
||
(_SimdImplBuiltin::_S_reduce, _MaskImplBuiltin::_S_load): Add
|
||
constant_evaluated case.
|
||
* include/experimental/bits/simd_fixed_size.h
|
||
(_S_masked_load): Reword comment.
|
||
(__tuple_element_meta, __make_meta, _SimdTuple::_M_apply_r)
|
||
(_SimdTuple::_M_subscript_read, _SimdTuple::_M_subscript_write)
|
||
(__make_simd_tuple, __optimize_simd_tuple, __extract_part)
|
||
(__autocvt_to_simd, _Fixed::__traits::_SimdBase)
|
||
(_Fixed::__traits::_SimdCastType, _SimdImplFixedSize): Add
|
||
constexpr.
|
||
(_SimdTuple::operator[], _M_set): Add constexpr and add
|
||
constant_evaluated case.
|
||
(_MaskImplFixedSize::_S_load): Add constant_evaluated case.
|
||
* include/experimental/bits/simd_scalar.h: Add constexpr.
|
||
* include/experimental/bits/simd_x86.h (_CommonImplX86): Add
|
||
constexpr and add constant_evaluated case.
|
||
(_SimdImplX86::_S_equal_to, _S_not_equal_to, _S_less)
|
||
(_S_less_equal): Value-initialize to satisfy constexpr
|
||
evaluation.
|
||
(_MaskImplX86::_S_load): Add constant_evaluated case.
|
||
(_MaskImplX86::_S_store): Add constexpr and constant_evaluated
|
||
case. Value-initialize local variables.
|
||
(_MaskImplX86::_S_logical_and, _S_logical_or, _S_bit_not)
|
||
(_S_bit_and, _S_bit_or, _S_bit_xor): Add constant_evaluated
|
||
case.
|
||
* testsuite/experimental/simd/pr109261_constexpr_simd.cc: New
|
||
test.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109949
|
||
* include/experimental/bits/simd.h (__intrinsic_type): If
|
||
__ALTIVEC__ is defined, map gnu::vector_size types to their
|
||
corresponding __vector T types without losing unsignedness of
|
||
integer types. Also prefer long long over long.
|
||
* include/experimental/bits/simd_ppc.h (_S_popcount): Cast mask
|
||
object to the expected unsigned vector type.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109261
|
||
* include/experimental/bits/simd.h (__intrinsic_type):
|
||
Specialize __intrinsic_type<double, 8> and
|
||
__intrinsic_type<double, 16> in any case, but provide the member
|
||
type only with __aarch64__.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/109261
|
||
* include/experimental/bits/simd_neon.h (_S_reduce): Add
|
||
constexpr and make NEON implementation conditional on
|
||
not __builtin_is_constant_evaluated.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-05-22 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_builtin.h (_S_fpclassify): Move
|
||
__infn into #ifdef'ed block.
|
||
* testsuite/experimental/simd/tests/fpclassify.cc: Declare
|
||
constants only when used.
|
||
* testsuite/experimental/simd/tests/frexp.cc: Likewise.
|
||
* testsuite/experimental/simd/tests/logarithm.cc: Likewise.
|
||
* testsuite/experimental/simd/tests/trunc_ceil_floor.cc:
|
||
Likewise.
|
||
* testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
|
||
Move totest and expect1 into #ifdef'ed block.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-03-28 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h (is_simd_flag_type): New.
|
||
(_IsSimdFlagType): New.
|
||
(copy_from, copy_to, load ctors): Constrain _Flags using
|
||
_IsSimdFlagType.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-03-28 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_x86.h (_SimdImplX86): Use
|
||
_Base::_S_divides if the optimized _S_divides function is hidden
|
||
via the preprocessor.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-03-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_detail.h: Don't declare the
|
||
simd API as constexpr with Clang.
|
||
* include/experimental/bits/simd_x86.h (__movm): New.
|
||
(_S_blend_avx512): Resolve FIXME. Implement blend using __movm
|
||
and ?:.
|
||
(_SimdImplX86::_S_masked_unary): Clang does not implement the
|
||
same builtins. Implement the function using __movm, ?:, and -
|
||
operators on vector_size types instead.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h: Line breaks and indenting
|
||
fixed to follow the libstdc++ standard.
|
||
* include/experimental/bits/simd_builtin.h: Likewise.
|
||
* include/experimental/bits/simd_fixed_size.h: Likewise.
|
||
* include/experimental/bits/simd_neon.h: Likewise.
|
||
* include/experimental/bits/simd_ppc.h: Likewise.
|
||
* include/experimental/bits/simd_scalar.h: Likewise.
|
||
* include/experimental/bits/simd_x86.h: Likewise.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/108030
|
||
* include/experimental/bits/simd_fixed_size.h
|
||
(_SimdImplFixedSize::_S_broadcast): Replace inline with
|
||
_GLIBCXX_SIMD_INTRINSIC.
|
||
(_SimdImplFixedSize::_S_generate): Likewise.
|
||
(_SimdImplFixedSize::_S_load): Likewise.
|
||
(_SimdImplFixedSize::_S_masked_load): Likewise.
|
||
(_SimdImplFixedSize::_S_store): Likewise.
|
||
(_SimdImplFixedSize::_S_masked_store): Likewise.
|
||
(_SimdImplFixedSize::_S_min): Likewise.
|
||
(_SimdImplFixedSize::_S_max): Likewise.
|
||
(_SimdImplFixedSize::_S_complement): Likewise.
|
||
(_SimdImplFixedSize::_S_unary_minus): Likewise.
|
||
(_SimdImplFixedSize::_S_plus): Likewise.
|
||
(_SimdImplFixedSize::_S_minus): Likewise.
|
||
(_SimdImplFixedSize::_S_multiplies): Likewise.
|
||
(_SimdImplFixedSize::_S_divides): Likewise.
|
||
(_SimdImplFixedSize::_S_modulus): Likewise.
|
||
(_SimdImplFixedSize::_S_bit_and): Likewise.
|
||
(_SimdImplFixedSize::_S_bit_or): Likewise.
|
||
(_SimdImplFixedSize::_S_bit_xor): Likewise.
|
||
(_SimdImplFixedSize::_S_bit_shift_left): Likewise.
|
||
(_SimdImplFixedSize::_S_bit_shift_right): Likewise.
|
||
(_SimdImplFixedSize::_S_remquo): Add inline keyword (to be
|
||
explicit about not always-inline, yet).
|
||
(_SimdImplFixedSize::_S_isinf): Likewise.
|
||
(_SimdImplFixedSize::_S_isfinite): Likewise.
|
||
(_SimdImplFixedSize::_S_isnan): Likewise.
|
||
(_SimdImplFixedSize::_S_isnormal): Likewise.
|
||
(_SimdImplFixedSize::_S_signbit): Likewise.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-24 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/108856
|
||
* include/experimental/bits/simd_builtin.h
|
||
(_SimdImplBuiltin::_S_masked_unary): More efficient
|
||
implementation of masked inc-/decrement for integers and floats
|
||
without AVX2.
|
||
* include/experimental/bits/simd_x86.h
|
||
(_SimdImplX86::_S_masked_unary): New. Use AVX512 masked subtract
|
||
builtins for masked inc-/decrement.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* testsuite/experimental/simd/tests/reductions.cc: Introduce
|
||
max_distance as the type-dependent max error.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/108030
|
||
* include/experimental/bits/simd_detail.h
|
||
(_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA): Define as empty for
|
||
__clang__.
|
||
|
||
2023-05-25 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/108030
|
||
* include/experimental/bits/simd_detail.h: Define
|
||
_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA.
|
||
* include/experimental/bits/simd.h: Annotate lambdas with
|
||
_GLIBCXX_SIMD_ALWAYS_INLINE_LAMBDA.
|
||
* include/experimental/bits/simd_builtin.h: Ditto.
|
||
* include/experimental/bits/simd_converter.h: Ditto.
|
||
* include/experimental/bits/simd_fixed_size.h: Ditto.
|
||
* include/experimental/bits/simd_math.h: Ditto.
|
||
* include/experimental/bits/simd_neon.h: Ditto.
|
||
* include/experimental/bits/simd_x86.h: Ditto.
|
||
|
||
2023-05-22 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-03-14 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (move_iterator::_S_iter_concept):
|
||
Define.
|
||
(__cpp_lib_move_iterator_concept): Define for C++20.
|
||
(move_iterator::iterator_concept): Strengthen as per P2520R0.
|
||
* include/std/version (__cpp_lib_move_iterator_concept): Define
|
||
for C++20.
|
||
* testsuite/24_iterators/move_iterator/p2520r0.cc: New test.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/107801
|
||
* src/c++17/memory_resource.cc (chunk::_M_bytes): Change type
|
||
from uint32_t to bitset::size_type. Adjust static assertion.
|
||
(__pool_resource::_Pool::replenish): Cast to size_t after
|
||
multiplication instead of before.
|
||
(__pool_resource::_M_alloc_pools): Ensure both arguments to
|
||
std::max have type size_t.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/107801
|
||
* src/c++17/memory_resource.cc (pool_sizes): Disable large pools
|
||
for targets with 16-bit int.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-09-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/91456
|
||
* include/std/type_traits (__is_nothrow_invocable): Remove.
|
||
(__is_invocable_impl::__nothrow_type): New member type which
|
||
checks if the conversion can throw.
|
||
(__is_nt_invocable_impl): Replace class template with alias
|
||
template to __is_nt_invocable_impl::__nothrow_type.
|
||
* testsuite/20_util/is_nothrow_invocable/91456.cc: New test.
|
||
* testsuite/20_util/is_nothrow_convertible/value.cc: Remove
|
||
macro used by value_ext.cc test.
|
||
* testsuite/20_util/is_nothrow_convertible/value_ext.cc: Remove
|
||
test for non-standard __is_nothrow_invocable trait.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-09-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/c_global/cstddef (byte): Add always_inline attribute
|
||
to all operator overloads.
|
||
(to_integer): Add always_inline attribute.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_ops.h: Add nodiscard to all pure functions.
|
||
* include/experimental/bits/fs_ops.h: Likewise.
|
||
* testsuite/27_io/filesystem/operations/all.cc: Do not discard
|
||
results of absolute and canonical.
|
||
* testsuite/27_io/filesystem/operations/absolute.cc: Cast
|
||
discarded result to void.
|
||
* testsuite/27_io/filesystem/operations/canonical.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/exists.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/read_symlink.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/status.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/symlink_status.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/temp_directory_path.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/canonical.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/exists.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/is_empty.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/read_symlink.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
|
||
Likewise.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/variant (variant::operator=): Implement resolution
|
||
of LWG 3585.
|
||
* testsuite/20_util/variant/lwg3585.cc: New test.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/tuple/swap.cc (MoveOnly::operator==): Add
|
||
const qualifier.
|
||
* testsuite/26_numerics/valarray/87641.cc (X::operator==):
|
||
Likewise.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104875
|
||
* src/c++11/codecvt.cc (read_utf8_code_point): Use char32_t to
|
||
hold octets that will be left-shifted.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_algobase.h (__detail::__copy_or_move):
|
||
Move output iterator.
|
||
* testsuite/25_algorithms/copy/constrained.cc: Check copying to
|
||
move-only output iterator.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-12-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/108118
|
||
* include/bits/shared_ptr_base.h (weak_ptr::operator=):
|
||
Implement as move-and-swap exactly as specified in the standard.
|
||
* testsuite/20_util/weak_ptr/cons/self_move.cc: New test.
|
||
|
||
2023-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/108265
|
||
* include/std/chrono (hh_mm_ss): Do not use chrono::abs if
|
||
duration rep is unsigned. Remove incorrect noexcept-specifier.
|
||
* testsuite/std/time/hh_mm_ss/1.cc: Check unsigned rep. Check
|
||
floating-point representations. Check default construction.
|
||
|
||
2023-05-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-04-24 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/max_size_type.h (__max_diff_type::operator>>=):
|
||
Fix propagation of sign bit.
|
||
* testsuite/std/ranges/iota/max_size_type.cc: Avoid using the
|
||
non-standard 'signed typedef-name'. Add some compile-time tests
|
||
for right-shifting a negative __max_diff_type value by more than
|
||
one.
|
||
|
||
2023-05-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105844
|
||
* include/experimental/numeric (lcm): Use built-in instead of
|
||
__is_constant_evaluated.
|
||
* include/std/numeric (__abs_r, lcm): Likewise.
|
||
* testsuite/26_numerics/gcd/105844.cc: Add dg-prune-output.
|
||
* testsuite/26_numerics/lcm/105844.cc: Likewise.
|
||
|
||
2023-05-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105844
|
||
* include/experimental/numeric (experimental::gcd): Simplify
|
||
assertions. Use __abs_r instead of __absu.
|
||
(experimental::lcm): Likewise. Remove use of __detail::__lcm so
|
||
overflow can be detected.
|
||
* include/std/numeric (__detail::__absu): Rename to __abs_r and
|
||
change to allow signed result type, so overflow can be detected.
|
||
(__detail::__lcm): Remove.
|
||
(gcd): Simplify assertions. Use __abs_r instead of __absu.
|
||
(lcm): Likewise. Remove use of __detail::__lcm so overflow can
|
||
be detected.
|
||
* testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error lines.
|
||
* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
|
||
* testsuite/26_numerics/gcd/105844.cc: New test.
|
||
* testsuite/26_numerics/lcm/105844.cc: New test.
|
||
|
||
2023-05-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/doxygen/user.cfg.in (STRIP_FROM_PATH): Remove prefixes
|
||
from header paths.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-09-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/intro.xml: Document LWG 1203.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/barrier: Add missing runtime exception.
|
||
|
||
2023-04-27 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
Backported from master:
|
||
2022-05-26 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdSpanPrinter.__init__):
|
||
Strip typename from version namespace.
|
||
|
||
2023-04-27 Philipp Fent <fent@in.tum.de>
|
||
|
||
Backported from master:
|
||
2022-04-25 Philipp Fent <fent@in.tum.de>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdSpanPrinter._iterator):
|
||
Rename as iterator.
|
||
(StdInitializerListPrinter): Define new printer.
|
||
(build_libstdcxx_dictionary): Register new printer.
|
||
* testsuite/libstdc++-prettyprinters/cxx11.cc: Check printer for
|
||
initializer_list.
|
||
|
||
2023-04-27 Philipp Fent <fent@in.tum.de>
|
||
|
||
Backported from master:
|
||
2022-04-19 Philipp Fent <fent@in.tum.de>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdSpanPrinter): Define.
|
||
* testsuite/libstdc++-prettyprinters/cxx20.cc: Test it.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/atomic: Add missing @endcond doxygen comment.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/extensions.xml: Remove std::bad_exception from
|
||
example program.
|
||
* doc/html/manual/ext_demangling.html: Regenerate.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/doxygen/user.cfg.in (SOURCE_BROWSER): Only set to YES for
|
||
HTML docs.
|
||
* include/bits/gslice_array.h (_DEFINE_VALARRAY_OPERATOR): Omit
|
||
from doxygen docs.
|
||
* include/bits/indirect_array.h (_DEFINE_VALARRAY_OPERATOR):
|
||
Likewise.
|
||
* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR):
|
||
Likewise.
|
||
* include/bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR):
|
||
Likewise.
|
||
* include/std/valarray (_DEFINE_VALARRAY_UNARY_OPERATOR)
|
||
(_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT)
|
||
(_DEFINE_VALARRAY_EXPR_AUGMENTED_ASSIGNMENT)
|
||
(_DEFINE_BINARY_OPERATOR): Likewise.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-10-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_path.h (path::filename()): Fix dangling
|
||
reference.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/109064
|
||
* python/libstdcxx/v6/xmethods.py (SharedPtrUseCountWorker):
|
||
Remove self-recursion in __init__. Add missing _supports.
|
||
* testsuite/libstdc++-xmethods/shared_ptr.cc: Check use_count()
|
||
and unique().
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/108952
|
||
* include/bits/uses_allocator_args.h
|
||
(uses_allocator_construction_args): Implement LWG 3527.
|
||
* testsuite/20_util/pair/astuple/get-2.cc: New test.
|
||
* testsuite/20_util/scoped_allocator/108952.cc: New test.
|
||
* testsuite/20_util/uses_allocator/lwg3527.cc: New test.
|
||
|
||
2023-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/optional: Fix header name in comment.
|
||
|
||
2023-03-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-03-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_detail.h: Don't define
|
||
_GLIBCXX_SIMD_WORKAROUND_PR90993 for Clang.
|
||
* include/experimental/bits/simd_x86.h (_S_divides): Remove
|
||
check for __clang__.
|
||
|
||
2023-03-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-03-21 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* testsuite/experimental/simd/tests/operators.cc: Clang doesn't
|
||
define __GCC_IEC_559. Use __STDC_IEC_559__ instead.
|
||
|
||
2023-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/108636
|
||
* include/bits/fs_path.h (path::path(string_view, _Type))
|
||
(path::_Cmpt::_Cmpt(string_view, _Type, size_t)): Move inline
|
||
definitions to ...
|
||
* src/c++17/fs_path.cc: ... here.
|
||
* testsuite/27_io/filesystem/path/108636.cc: New test.
|
||
|
||
2023-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_ops.cc [AVR] (not_supported): Define as a macro
|
||
for function_not_supported.
|
||
* src/filesystem/ops-common.h [AVR] (ENOTSUP): Define as a macro
|
||
for ENOSYS.
|
||
|
||
2023-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++11/random.cc (random_device::_M_fini): Do not try to
|
||
close the file handle if the target doesn't support the
|
||
/dev/random and /dev/urandom files.
|
||
|
||
2023-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2023-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* config/os/generic/error_constants.h (errc::value_too_large)
|
||
[__AVR__]: Define.
|
||
* src/c++11/system_error.cc
|
||
(system_category::default_error_condition) [__AVR__]: Only match
|
||
recognize values equal to EDOM, ERANGE, ENOSYS and EINTR.
|
||
* src/c++17/fs_ops.cc (fs::current_path) [__AVR__]: Do not use
|
||
getcwd.
|
||
* src/filesystem/ops-common.h [__AVR__]: Do not use POSIX open,
|
||
close etc.
|
||
|
||
2023-03-10 Thomas W Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2023-02-14 Thomas W Rodgers <rodgert@twrodgers.com>
|
||
|
||
PR libstdc++/103934
|
||
* include/std/atomic (atomic_flag_wait): Add.
|
||
(atomic_flag_wait_explicit): Add.
|
||
(atomic_flag_notify): Add.
|
||
(atomic_flag_notify_explicit): Add.
|
||
* testsuite/29_atomics/atomic_flag/wait_notify/1.cc:
|
||
Add test case to cover missing atomic_flag free functions.
|
||
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
PR libstdc++/108030
|
||
* include/experimental/bits/simd.h (__vector_broadcast):
|
||
Implement via __vector_broadcast_impl instead of
|
||
__call_with_n_evaluations + 2 lambdas.
|
||
(__vector_broadcast_impl): New.
|
||
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_builtin.h (_S_set): Compare as
|
||
int. The actual range of these indexes is very small.
|
||
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_x86.h (_S_bit_shift_left)
|
||
(_S_bit_shift_right): Declare constexpr. The implementation was
|
||
already expecting constexpr evaluation.
|
||
|
||
2023-02-23 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-20 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h (__extract_part, split):
|
||
Use reserved name for template parameter.
|
||
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd_x86.h
|
||
(_SimdImplX86::_S_not_equal_to, _SimdImplX86::_S_less)
|
||
(_SimdImplX86::_S_less_equal): Do not call
|
||
__builtin_is_constant_evaluated in constexpr-if.
|
||
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* testsuite/experimental/simd/tests/bits/verify.h
|
||
(verify::verify): Use %zx for size_t in format string.
|
||
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
Backported from master:
|
||
2023-02-16 Matthias Kretz <m.kretz@gsi.de>
|
||
|
||
* include/experimental/bits/simd.h
|
||
(_SimdWrapper::_M_is_constprop_none_of)
|
||
(_SimdWrapper::_M_is_constprop_all_of): Return false unless the
|
||
computed result still satisfies __builtin_constant_p.
|
||
|
||
2023-02-14 Thomas W Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2023-02-14 Thomas W Rodgers <rodgert@twrodgers.com>
|
||
|
||
PR libstdc++/103934
|
||
* include/std/atomic (atomic_flag_test): Add.
|
||
(atomic_flag_test_explicit): Add.
|
||
* testsuite/29_atomics/atomic_flag/test/explicit.cc: Add
|
||
test case to cover missing atomic_flag free functions.
|
||
* testsuite/29_atomics/atomic_flag/test/implicit.cc:
|
||
Likewise.
|
||
|
||
2023-02-02 Detlef Vollmann <dv@vollmann.ch>
|
||
|
||
Backported from master:
|
||
2022-03-10 Detlef Vollmann <dv@vollmann.ch>
|
||
|
||
PR libstdc++/104866
|
||
* include/bits/this_thread_sleep.h: Fix order of #endif and
|
||
closing brace of namespace.
|
||
|
||
2023-01-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-08-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/106183
|
||
* include/bits/atomic_wait.h (__waiter_pool_base::_M_notify):
|
||
Move increment of _M_ver here.
|
||
[!_GLIBCXX_HAVE_PLATFORM_WAIT]: Lock mutex around increment.
|
||
Use relaxed memory order and always notify all waiters.
|
||
(__waiter_base::_M_do_wait) [!_GLIBCXX_HAVE_PLATFORM_WAIT]:
|
||
Check value again after locking mutex.
|
||
(__waiter_base::_M_notify): Remove increment of _M_ver.
|
||
|
||
2022-12-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/107814
|
||
* testsuite/experimental/filesystem/iterators/error_reporting.cc:
|
||
Use a static buffer with space after it.
|
||
|
||
2022-11-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-11-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/authors.xml: Remove empty author element.
|
||
* doc/xml/manual/spine.xml: Likewise.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/version [!_GLIBCXX_HOSTED]
|
||
(__cpp_lib_bit_cast): Define for freestanding.
|
||
(__cpp_lib_string_contains): Do not define for freestanding.
|
||
(__cpp_lib_to_underlying): Likewise.
|
||
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-08-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/106607
|
||
* include/bits/regex_compiler.tcc (_Compiler::_M_cur_int_value):
|
||
Use built-ins to check for integer overflow in back-reference
|
||
number.
|
||
* testsuite/28_regex/basic_regex/106607.cc: New test.
|
||
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-08-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/106695
|
||
* include/bits/std_thread.h (thread::_State_impl): Forward
|
||
individual arguments to _Invoker constructor.
|
||
(thread::_Invoker): Add constructor. Delete copies.
|
||
* include/std/future (__future_base::_Deferred_state): Forward
|
||
individual arguments to _Invoker constructor.
|
||
(__future_base::_Async_state_impl): Likewise.
|
||
* testsuite/30_threads/async/106695.cc: New test.
|
||
* testsuite/30_threads/thread/106695.cc: New test.
|
||
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/106248
|
||
* include/std/istream [C++17] (operator>>(istream&, char*)):
|
||
Set eofbit if we stopped extracting at EOF.
|
||
* testsuite/27_io/basic_istream/extractors_character/char/pr106248.cc:
|
||
New test.
|
||
* testsuite/27_io/basic_istream/extractors_character/wchar_t/pr106248.cc:
|
||
New test.
|
||
|
||
2022-09-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104443
|
||
* include/bits/stl_iterator.h (common_iterator::operator->):
|
||
Change return type to just auto.
|
||
|
||
2022-09-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-08-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/string_view (basic_string_view(Range&&)): Add
|
||
explicit as per P2499R0.
|
||
* testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc:
|
||
Adjust implicit conversions. Check implicit conversions fail.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc:
|
||
Likewise.
|
||
|
||
2022-07-26 Thomas Rodgers <trodgers@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-26 Thomas Rodgers <trodgers@redhat.com>
|
||
|
||
* include/bits/atomic_wait.h (__atomic_spin): Merge spin loops.
|
||
|
||
2022-07-22 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/106320
|
||
* include/std/ranges (single_view): Relax constraints on
|
||
default constructor so as to preserve pre-P2325R3 behavior.
|
||
(filter_view): Likewise.
|
||
(transform_view): Likewise.
|
||
(take_while_view): Likewise.
|
||
(drop_while_view): Likewise.
|
||
* testsuite/std/ranges/adaptors/join.cc (test13): New test.
|
||
* testsuite/std/ranges/p2325.cc: Fix S to be only non default
|
||
constructible and not also non copy constructible. XFAIL the
|
||
tests that verify a non default constructible functor makes a
|
||
view non default constructible (lines 94, 97 and 98). XFAIL
|
||
the test that effectively verifies a non default constructible
|
||
element type makes single_view non default constructible (line
|
||
114).
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100823
|
||
* include/bits/stl_iterator.h (common_iterator): Define move
|
||
constructor and move assignment operator.
|
||
(common_iterator::_M_assign): New function implementing
|
||
assignment.
|
||
(common_iterator::operator=): Use _M_assign.
|
||
(common_iterator::_S_valueless): New constant.
|
||
* testsuite/24_iterators/common_iterator/100823.cc: New test.
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (common_iterator): Fix incorrect
|
||
uses of is_nothrow_assignable_v. Fix inconsistent constraints on
|
||
friend declaration. Do not move argument in copy constructor.
|
||
* testsuite/24_iterators/common_iterator/1.cc: Check for
|
||
noexcept constructibnle/assignable.
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103992
|
||
* include/bits/stl_iterator.h (common_iterator): Use
|
||
std::construct_at instead of placement new.
|
||
* testsuite/24_iterators/common_iterator/1.cc: Check copy
|
||
construction is usable in constant expressions.
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (common_iterator): Add constexpr
|
||
to all member functions (LWG 3574).
|
||
* testsuite/24_iterators/common_iterator/1.cc: Evaluate some
|
||
tests as constant expressions.
|
||
* testsuite/24_iterators/common_iterator/2.cc: Likewise.
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/from_chars/4.cc: Only use log2 if C99 math
|
||
functions are available.
|
||
|
||
2022-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/88881
|
||
* src/filesystem/ops.cc (has_trailing_slash): New helper
|
||
function.
|
||
(fs::status): Strip trailing slashes.
|
||
(fs::symlink_status): Likewise.
|
||
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
|
||
Clean the environment before each test and use TMP instead of
|
||
TMPDIR so the test passes on Windows.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-07-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/106162
|
||
* include/Makefile.am (largefile-config.h): Add
|
||
stamp-${host_alias} prerequisite.
|
||
* include/Makefile.in: Regenerate.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/iterators/error_reporting.cc: Use
|
||
rmdir to remove directories.
|
||
* testsuite/experimental/filesystem/iterators/error_reporting.cc:
|
||
Likewise.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (counted_iterator::operator++(int)):
|
||
Add 'constexpr' as per LWG 3643.
|
||
* testsuite/24_iterators/counted_iterator/lwg3643.cc: New test.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105671
|
||
* include/std/sstream (basic_stringbuf::_M_high_mark): Add
|
||
always_inline attribute.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/future (launch): Make operators noexcept.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_base.h (ranges::size, ranges::empty): Add
|
||
explicit check for unbounded arrays before using ranges::begin.
|
||
* testsuite/std/ranges/access/empty.cc: Check handling of unbounded
|
||
arrays.
|
||
* testsuite/std/ranges/access/size.cc: Likewise.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex_automaton.h (_NFA_base::_SizeT): Remove.
|
||
* include/bits/regex_compiler.h (_Compiler::_IterT): Remove.
|
||
* include/bits/regex_compiler.tcc: Likewise.
|
||
* include/bits/regex_scanner.h (_Scanner::_IterT): Remove.
|
||
* include/bits/regex_scanner.tcc: Likewise.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex.h (basic_regex, swap): Add noexcept to
|
||
non-throwing functions.
|
||
* include/bits/regex_automaton.h (_State_base, _State)
|
||
(_NFA_base): Likewise.
|
||
* include/bits/regex_compiler.h (_Compiler): Likewise.
|
||
* include/bits/regex_error.h (regex_error::code()): Likewise.
|
||
* include/bits/regex_scanner.h (_Scanner): Likewise.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102447
|
||
* include/bits/regex_compiler.h (_Compiler::_BracketState): New
|
||
class.
|
||
(_Compiler::_BrackeyMatcher): New alias template.
|
||
(_Compiler::_M_expression_term): Change pair<bool, CharT>
|
||
parameter to _BracketState. Process first character for
|
||
ECMAScript syntax as well as POSIX.
|
||
* include/bits/regex_compiler.tcc
|
||
(_Compiler::_M_insert_bracket_matcher): Pass _BracketState.
|
||
(_Compiler::_M_expression_term): Use _BracketState to store
|
||
state between calls. Improve handling of dashes in ranges.
|
||
* testsuite/28_regex/algorithms/regex_match/cstring_bracket_01.cc:
|
||
Add more tests for ranges containing dashes. Check invalid
|
||
ranges with character class at the beginning.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex_compiler.h (_Compiler::_S_validate): New
|
||
function.
|
||
* include/bits/regex_compiler.tcc (_Compiler::_Compiler): Use
|
||
_S_validate to check flags.
|
||
* include/bits/regex_error.h (_S_grammar): New error code for
|
||
internal use.
|
||
* testsuite/28_regex/basic_regex/ctors/grammar.cc: New test.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex_compiler.tcc: Add line break in empty while
|
||
statement.
|
||
* include/bits/regex_executor.tcc: Avoid unused parameter
|
||
warning.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/28_regex/algorithms/regex_replace/char/103664.cc:
|
||
Add dg-timeout-factor directive.
|
||
* testsuite/28_regex/basic_regex/84110.cc: Likewise.
|
||
* testsuite/28_regex/basic_regex/ctors/char/other.cc: Likewise.
|
||
* testsuite/28_regex/match_results/102667.cc: Likewise.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex.h (__detail::__is_contiguous_iter): Move
|
||
here from <bits/regex_compiler.h>.
|
||
(basic_regex::_M_compile): New function to compile an NFA from
|
||
a regular expression string.
|
||
(basic_regex::basic_regex): Use _M_compile instead of delegating
|
||
to other constructors.
|
||
(basic_regex::operator=(const basic_regex&)): Define as
|
||
defaulted.
|
||
(basic_regex::operator=(initializer_list<C>)): Use _M_compile.
|
||
(basic_regex::assign(const basic_regex&)): Use copy assignment.
|
||
(basic_regex::assign(basic_regex&&)): Use move assignment.
|
||
(basic_regex::assign(const C*, flag_type)): Use _M_compile
|
||
instead of constructing a temporary string.
|
||
(basic_regex::assign(const C*, size_t, flag_type)): Likewise.
|
||
(basic_regex::assign(const basic_string<C,T,A>&, flag_type)):
|
||
Use _M_compile instead of constructing a temporary basic_regex.
|
||
(basic_regex::assign(InputIter, InputIter, flag_type)): Avoid
|
||
constructing a temporary string for contiguous iterators of the
|
||
right value type.
|
||
* include/bits/regex_compiler.h (__is_contiguous_iter): Move to
|
||
<bits/regex.h>.
|
||
(__enable_if_contiguous_iter, __disable_if_contiguous_iter)
|
||
(__compile_nfa): Remove.
|
||
* testsuite/28_regex/basic_regex/assign/exception_safety.cc: New
|
||
test.
|
||
* testsuite/28_regex/basic_regex/ctors/char/other.cc: New test.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103664
|
||
* include/bits/regex.h (__regex_replace): Declare.
|
||
(regex_replace): Use it.
|
||
* include/bits/regex.tcc (__regex_replace): Replace regex_replace
|
||
definition with __regex_replace.
|
||
* testsuite/28_regex/algorithms/regex_replace/char/103664.cc: New test.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/variant (__detail::__variant::__get_storage):
|
||
Remove unused function.
|
||
(__variant_construct_by_index): Set index after construction is
|
||
complete. Rename to ...
|
||
(__detail::__variant::__construct_by_index): ... this.
|
||
(variant): Use new name for __variant_construct_by_index friend
|
||
declaration. Remove __get_storage friend declaration.
|
||
(variant::emplace): Use new name and remove try-blocks.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/list.tcc (list::merge): Remove call to size() and
|
||
try-catch block. Use _Finalize_merge instead.
|
||
* include/bits/stl_list.h (list::_Finalize_merge): New
|
||
scope guard type to update _M_size members after a merge.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex.h (basic_regex::multiline): Define for
|
||
non-strict C++11 and C++14 modes.
|
||
* include/bits/regex_constants.h (regex_constants::multiline):
|
||
Add _GLIBCXX_RESOLVE_LIB_DEFECTS comment.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex.h (basic_regex::multiline): Fix #if
|
||
condition.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex.h (basic_regex::multiline): Define constant
|
||
for C++17.
|
||
* include/bits/regex_constants.h (regex_constants::multiline):
|
||
Define constant for C++17.
|
||
(regex_constants::__multiline): Define duplicate constant for
|
||
internal use in C++11 and C++14.
|
||
* include/bits/regex_executor.h (_Executor::_M_match_multiline()):
|
||
New member function.
|
||
(_Executor::_M_is_line_terminator(_CharT)): New member function.
|
||
(_Executor::_M_at_begin(), _Executor::_M_at_end()): Use new
|
||
member functions to support multiline matches.
|
||
* testsuite/28_regex/algorithms/regex_match/multiline.cc: New test.
|
||
|
||
2022-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
Backported from master:
|
||
2021-10-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* testsuite/28_regex/basic_regex/84110.cc (test01)
|
||
[__cpp_exceptions]: Disambiguate extended.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/84110
|
||
* include/bits/regex_error.h (regex_constants::_S_null): New
|
||
error code for internal use.
|
||
* include/bits/regex_scanner.tcc (_Scanner::_M_scan_normal()):
|
||
Check for null character.
|
||
* testsuite/28_regex/basic_regex/84110.cc: New test.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/variant (_Variant_storage::_M_storage()): Remove.
|
||
(__detail::__variant::__get_storage): Remove.
|
||
(variant): Remove friend declaration of __get_storage.
|
||
|
||
2022-07-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/105128
|
||
* include/std/source_location (std::source_location::__impl): Move
|
||
definition before using __builtin_ret_type.
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104602
|
||
* include/std/source_location (source_location::current): Use
|
||
deduced type of __builtin_source_location().
|
||
|
||
2022-07-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_path.h (hash<filesystem::path>): Define.
|
||
* testsuite/27_io/filesystem/path/nonmember/hash_value.cc:
|
||
Check std::hash specialization.
|
||
|
||
2022-06-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-06-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/atomic (__atomic_val_t): Use __type_identity_t
|
||
instead of atomic<T>::value_type, as per LWG 3220.
|
||
* testsuite/29_atomics/atomic/lwg3220.cc: New test.
|
||
|
||
2022-06-15 Mark Mentovai <mark@mentovai.com>
|
||
|
||
Backported from master:
|
||
2022-06-13 Mark Mentovai <mark@mentovai.com>
|
||
|
||
* include/experimental/bits/fs_path.h (__detail::__null_terminated):
|
||
Rename to __nul_terminated to avoid colliding with a macro in
|
||
Apple's SDK.
|
||
|
||
2022-06-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105915
|
||
* include/experimental/bits/fs_path.h (path::begin, path::end):
|
||
Remove noexcept from declarations.
|
||
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2023.xml: Update status.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/prerequisites.xml: Fix attributes for external
|
||
hyperlink.
|
||
* doc/html/manual/setup.html: Regenerate.
|
||
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/intro.xml: Include new chapter.
|
||
* doc/xml/manual/status_cxx2020.xml: Tweak release numbers.
|
||
* doc/xml/manual/status_cxx2023.xml: New file.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/html/manual/status.html: Regenerate.
|
||
* doc/xml/manual/status_cxx2020.xml: Fix supported version for
|
||
C++20 bit operations.
|
||
|
||
2022-05-13 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-05-06 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* include/experimental/bits/simd.h [__ALTIVEC__]: Require VSX
|
||
for double, long long, and 64-bit long intrinsic types.
|
||
[__ALTIVEC__] (__intrinsic_type): Mention 128-bit in
|
||
preexisting long double diagnostic, adjust no-VSX double
|
||
diagnostic to cover 64-bit long double as well.
|
||
|
||
2022-05-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-02 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103911
|
||
* src/c++17/floating_from_chars.cc (find_end_of_float): Accept
|
||
two delimeters for the exponent part in the form of a possibly
|
||
NULL string of length two. Don't use std::tolower.
|
||
(pattern): Adjust calls to find_end_of_float accordingly.
|
||
|
||
2022-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105284
|
||
* include/std/iosfwd: Add declarations for <synstream> class
|
||
templates and typedefs.
|
||
* include/std/syncstream (basic_syncbuf, basic_osyncstream):
|
||
Remove default template arguments.
|
||
* testsuite/27_io/headers/iosfwd/synopsis.cc: New test.
|
||
* testsuite/27_io/headers/iosfwd/types.cc: New test.
|
||
|
||
2022-05-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104217
|
||
* src/c++17/fs_ops.cc (_GNU_SOURCE): Define.
|
||
* src/filesystem/dir.cc (_GNU_SOURCE): Define.
|
||
* src/filesystem/ops.cc (_GNU_SOURCE): Define.
|
||
|
||
2022-05-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105502
|
||
* include/bits/random.tcc
|
||
(operator>>(basic_istream<C,T>&, normal_distribution<R>&)):
|
||
Update state when __state_avail is false.
|
||
* testsuite/26_numerics/random/normal_distribution/operators/serialize.cc:
|
||
Check that deserialized object equals serialized one.
|
||
|
||
2022-05-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104731
|
||
* testsuite/27_io/filesystem/iterators/error_reporting.cc:
|
||
Use a trailing char array as storage for dirent::d_name.
|
||
|
||
2022-05-06 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
Backported from master:
|
||
2022-05-03 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
PR c++/105324
|
||
* testsuite/20_util/from_chars/pr105324.cc: Guard test body
|
||
with conditional for floating-point overloads of from_char.
|
||
|
||
2022-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99290
|
||
* src/c++17/fs_ops.cc (fs::copy): Pass error_code to
|
||
directory_iterator constructor, and check on each iteration.
|
||
* src/filesystem/ops.cc (fs::copy): Likewise.
|
||
* testsuite/27_io/filesystem/operations/copy.cc: Check for
|
||
errors during recursion.
|
||
* testsuite/experimental/filesystem/operations/copy.cc:
|
||
Likewise.
|
||
|
||
2022-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105375
|
||
* include/std/future (packaged_task): Add deduction guides.
|
||
* testsuite/30_threads/packaged_task/cons/deduction.cc: New test.
|
||
|
||
2022-04-22 Thomas W Rodgers <trodgers@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-22 Thomas W Rodgers <trodgers@redhat.com>
|
||
|
||
PR libstdc++/102994
|
||
* include/bits/atomic_base.h (atomic_flag::notify_one,
|
||
notify_all): Remove const qualification.
|
||
(__atomic_base::notify_one, notify_all): Likewise.
|
||
* include/std/atomic (atomic<bool>::notify_one, notify_all):
|
||
Likewise.
|
||
(atomic::notify_one, notify_all): Likewise.
|
||
(atomic<T*>::notify_one, notify_all): Likewise.
|
||
(atomic_notify_one, atomic_notify_all): Likewise.
|
||
* testsuite/29_atomics/atomic/wait_notify/102994.cc: Adjust test
|
||
to account for change in notify_one/notify_all signature.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/96592
|
||
* include/std/tuple (tuple::is_constructible): Remove.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR c++/102177
|
||
* include/bits/atomic_base.h (__is_valid_cmpexch_failure_order):
|
||
New function to check if a memory order is valid for the failure
|
||
case of compare exchange operations.
|
||
(__atomic_base<I>::compare_exchange_weak): Simplify assertions
|
||
by using __is_valid_cmpexch_failure_order.
|
||
(__atomic_base<I>::compare_exchange_strong): Likewise.
|
||
(__atomic_base<P*>::compare_exchange_weak): Likewise.
|
||
(__atomic_base<P*>::compare_exchange_strong): Likewise.
|
||
(__atomic_impl::compare_exchange_weak): Add assertion.
|
||
(__atomic_impl::compare_exchange_strong): Likewise.
|
||
* include/std/atomic (atomic::compare_exchange_weak): Likewise.
|
||
(atomic::compare_exchange_strong): Likewise.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/monotonic_buffer_resource/allocate.cc:
|
||
Ignore -Walloc-larger-than warning.
|
||
* testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
|
||
Likewise.
|
||
* testsuite/29_atomics/atomic/cons/user_pod.cc: Compile with -O1
|
||
to avoid linker error for __atomic_is_lock_free.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (operator==, operator<=>): Define
|
||
overloads for homogeneous specializations of reverse_iterator,
|
||
__normal_iterator and move_iterator.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/24_iterators/move_iterator/dr3265.cc: Fix test to
|
||
account for LWG 3435 resolution.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101709
|
||
* src/filesystem/ops-common.h (get_temp_directory_from_env):
|
||
Add error_code parameter.
|
||
* src/c++17/fs_ops.cc (fs::temp_directory_path): Pass error_code
|
||
argument to get_temp_directory_from_env and check it.
|
||
* src/filesystem/ops.cc (fs::temp_directory_path): Likewise.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105324
|
||
* src/c++17/floating_from_chars.cc (buffer_resource::do_allocate):
|
||
Remove assertion.
|
||
* testsuite/20_util/from_chars/pr105324.cc: New test.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/65018
|
||
* configure.ac: Check for secure_getenv.
|
||
* config.h.in: Regenerate.
|
||
* configure: Regenerate.
|
||
* src/filesystem/ops-common.h (get_temp_directory_from_env): New
|
||
helper function to obtain path from the environment.
|
||
* src/c++17/fs_ops.cc (fs::temp_directory_path): Use new helper.
|
||
* src/filesystem/ops.cc (fs::temp_directory_path): Likewise.
|
||
* testsuite/27_io/filesystem/operations/temp_directory_path.cc:
|
||
Print messages if test cannot be run.
|
||
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
|
||
Likewise. Fix incorrect condition. Use "TMP" to work with
|
||
Windows as well as POSIX.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++20/sstream-inst.cc (_GLIBCXX_USE_CXX11_ABI): Define to
|
||
select new ABI.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string/cons/char/moveable.cc: Allow
|
||
moved-from string to be non-empty.
|
||
* testsuite/21_strings/basic_string/cons/char/moveable2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/assign/char/87749.cc:
|
||
Construct empty string before setting oom flag.
|
||
* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/87749.cc:
|
||
Likewise.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/regex_compiler.tcc (_Compiler::_M_match_token):
|
||
Use reserved name for parameter.
|
||
* testsuite/17_intro/names.cc: Check "token".
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/names.cc: Check 'sz'.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/ranges (ranges::lazy_split_view::_InnerIter::end()):
|
||
Add neoxcept (LWG 3593).
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (address): Use std::_Construct
|
||
to initialize union members.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++11/cxx11-ios_failure.cc (io_error_category): Define
|
||
class and virtual functions as 'final'.
|
||
(io_category_instance): Use constinit union to make the object
|
||
immortal.
|
||
* src/c++11/future.cc (future_error_category): Define class and
|
||
virtual functions as 'final'.
|
||
(future_category_instance): Use constinit union.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/span (span(Range&&)): Reorder constraints.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_path.cc (path::_M_split_cmpts()): Remove
|
||
micro-optimization for "/" path.
|
||
* src/filesystem/path.cc (path::_M_split_cmpts()): Only access
|
||
the contents of _M_pathname using const member functions.
|
||
|
||
2022-04-21 Pavel I. Kryukov <pavel.kryukov@phystech.edu>
|
||
|
||
Backported from master:
|
||
2022-01-06 Pavel I. Kryukov <pavel.kryukov@phystech.edu>
|
||
Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103853
|
||
* include/bits/forward_list.tcc (forward_list::merge): Check for
|
||
self-merge.
|
||
* testsuite/23_containers/forward_list/operations/merge.cc: New test.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_construct.h (_Construct, _Construct_novalue):
|
||
Also cast away cv-qualifiers when converting pointer to void.
|
||
* testsuite/20_util/allocator/void.cc: Test construct function
|
||
with cv-qualified types.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103911
|
||
* include/std/charconv (__from_chars_alpha_to_num): Return
|
||
char instead of unsigned char. Change invalid return value to
|
||
127 instead of using numeric trait.
|
||
(__from_chars_alnum): Fix comment. Do not use std::isdigit.
|
||
Change type of variable to char.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_base.h (ranges::advance): Avoid signed
|
||
overflow. Do nothing if already equal to desired result.
|
||
* testsuite/24_iterators/range_operations/advance_overflow.cc:
|
||
New test.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/ext/rope/pthread7-rope.cc: Add dg-timeout-factor.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/names.cc (func): Undef on AIX.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/93602
|
||
* doc/xml/manual/prerequisites.xml: Document libiconv
|
||
workarounds.
|
||
* doc/html/manual/setup.html: Regenerate.
|
||
* src/Makefile.am (CXXLINK): Add $(LTLIBICONV).
|
||
* src/Makefile.in: Regenerate.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/intro.xml: Fix comment.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string_view/operations/copy/char/constexpr.cc:
|
||
Check correct feature test macro.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR middle-end/104966
|
||
* include/bits/locale_facets_nonio.tcc
|
||
(__moneypunct_cache::_M_cache): Store string sizes in local
|
||
variable that doesn't escape.
|
||
|
||
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103848
|
||
* include/bits/stl_deque.h (operator-): Do not use 0 as null
|
||
pointer constant.
|
||
|
||
2022-04-21 Release Manager
|
||
|
||
* GCC 11.3.0 released.
|
||
|
||
2022-04-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx1998.xml: Refer to GCC 11 not
|
||
mainline.
|
||
* doc/xml/manual/status_cxx2011.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2014.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2017.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2020.xml: Likewise.
|
||
* doc/xml/manual/status_cxxtr1.xml: Likewise.
|
||
* doc/xml/manual/status_cxxtr24733.xml: Likewise.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2022-04-14 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
Backported from master:
|
||
2021-11-19 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* testsuite/lib/prune.exp: Prune dsymutil (ld64) warning.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100516
|
||
* include/bits/deque.tcc (_M_range_initialize<ForwardIterator>):
|
||
Add __builtin_unreachable to loop.
|
||
* testsuite/23_containers/deque/100516.cc: New test.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103630
|
||
* libsupc++/exception_ptr.h (exception_ptr): Fix exception
|
||
specifications on inline definitions.
|
||
(make_exception_ptr): Decay the template parameter. Use typeid
|
||
of the static type.
|
||
* testsuite/18_support/exception_ptr/103630.cc: New test.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105021
|
||
* include/bits/atomic_base.h [!_GLIBCXX_HOSTED]: Do not include
|
||
<bits/atomic_wait.h> for freestanding.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103638
|
||
* include/bits/atomic_timed_wait.h: Check _GLIBCXX_HAS_GTHREADS
|
||
before using std::mutex and std::__condvar.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/variant (__detail::__variant::__as): Add missing
|
||
noexcept to first overload.
|
||
|
||
2022-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/90943
|
||
* include/std/variant (__cpp_lib_variant): Update value.
|
||
(__detail::__variant::__as): New helpers implementing the
|
||
as-variant exposition-only function templates.
|
||
(visit, visit<R>): Use __as to upcast the variant parameters.
|
||
* include/std/version (__cpp_lib_variant): Update value.
|
||
* testsuite/20_util/variant/visit_inherited.cc: New test.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103955
|
||
* src/c++17/floating_to_chars.cc (__floating_to_chars_hex):
|
||
Track the excess precision separately from the effective
|
||
precision. Avoid overflow in bounds check by splitting it into
|
||
two checks.
|
||
(__floating_to_chars_precision): Avoid overflow in bounds checks
|
||
similarly.
|
||
* testsuite/20_util/to_chars/103955.cc: New test.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (common_iterator::__arrow_proxy):
|
||
Make fully constexpr as per LWG 3595.
|
||
(common_iterator::__postfix_proxy): Likewise.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (split_view::base): Add forward_range
|
||
constraint as per LWG 3591.
|
||
(split_view::begin, lazy_split_view::end): Also check
|
||
simpleness of _Pattern as per LWG 3592.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (join_view::__iter_cat::_S_iter_cat): Adjust
|
||
criteria for returning bidirectional_iterator_tag as per LWG 3535.
|
||
(join_view::_Iterator::_S_iter_concept): Likewise.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/ranges_base.h (viewable_range): Adjust as per
|
||
LWG 3481.
|
||
* testsuite/std/ranges/adaptors/all.cc (test07): New test.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (iota_view::_Iterator::operator+): Adjust
|
||
definition as per LWG 3580.
|
||
(iota_view::_Iterator::operator-): Likewise.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/ranges_util.h
|
||
(__detail::__uses_nonqualification_pointer_conversion): Define
|
||
and use it ...
|
||
(__detail::__convertible_to_nonslicing): ... here, as per LWG 3470.
|
||
* testsuite/std/ranges/subrange/1.cc: New test.
|
||
|
||
2022-04-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (iota_view::_Iterator): Befriend iota_view.
|
||
(iota_view::_Sentinel): Likewise.
|
||
(iota_view::iota_view): Add three overloads, each taking an
|
||
iterator/sentinel pair as per LWG 3523.
|
||
* testsuite/std/ranges/iota/iota_view.cc (test06): New test.
|
||
|
||
2022-04-07 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-09 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/104859
|
||
* src/c++17/floating_to_chars.cc (__floating_to_chars_hex):
|
||
Be explicit when narrowing the shifted effective_mantissa,
|
||
since it may have an integer-class type.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Replace
|
||
code that call cat->name() on std::error_category objects.
|
||
Identify known categories by symbol name and use a hardcoded
|
||
name. Print error code values as enumerators where appopriate.
|
||
* testsuite/libstdc++-prettyprinters/cxx11.cc: Adjust expected
|
||
name of custom category. Check io_errc and future_errc errors.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/105027
|
||
* include/std/bit (bit_cast): Add constraints.
|
||
* testsuite/26_numerics/bit/bit.cast/105027.cc: New test.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/bits/fs_fwd.h (copy_file): Remove
|
||
incorrect noexcept from declaration.
|
||
* include/experimental/bits/fs_path.h (path::begin, path::end):
|
||
Add noexcept to declarations, to match definitions.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/experimental/filesystem/operations/create_directories.cc:
|
||
Adjust expected results for Windows.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/iterators/error_reporting.cc: Use
|
||
autoconf macro to check whether d_type is present.
|
||
* testsuite/experimental/filesystem/iterators/error_reporting.cc:
|
||
Likewise.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_dir.cc (recursive_directory_iterator::increment):
|
||
Reset state to past-the-end iterator on error.
|
||
(fs::recursive_directory_iterator::pop(error_code&)): Likewise.
|
||
(fs::recursive_directory_iterator::pop()): Check _M_dirs before
|
||
it might get reset.
|
||
* src/filesystem/dir.cc (recursive_directory_iterator): Likewise,
|
||
for the TS implementation.
|
||
* testsuite/27_io/filesystem/iterators/error_reporting.cc: New test.
|
||
* testsuite/experimental/filesystem/iterators/error_reporting.cc: New test.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/alloc_traits.h (allocator_traits<allocator<void>>):
|
||
Use std::_Construct for construct.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/bits/fs_ops.h (fs::copy_file): Remove
|
||
noexcept.
|
||
(fs::create_directories): Likewise.
|
||
(fs::remove_all): Likewise.
|
||
* src/filesystem/ops.cc (fs::copy_file): Remove noexcept.
|
||
(fs::create_directories): Likewise.
|
||
(fs::remove_all): Likewise.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_fwd.h (filesystem::perms): Fix comment.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103650
|
||
* include/Makefile.am: Rename LT_OBJDIR and STDC_HEADERS.
|
||
* include/Makefile.in: Regenerate.
|
||
* testsuite/17_intro/headers/c++1998/103650.cc: New test.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104098
|
||
* include/bits/stl_iterator.h (reverse_iterator): Check
|
||
__cpp_lib_concepts instead of __cplusplus.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Remove -gdwarf-4
|
||
from default flags.
|
||
* configure: Regenerate.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2020.xml: Use final C++20 option
|
||
names.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/allocator.h: Qualify std::allocator_traits in
|
||
deprecated warnings.
|
||
* libsupc++/exception (uncaught_exception): Add suggestion to
|
||
deprecated warning.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104542
|
||
* include/bits/uses_allocator_args.h (make_obj_using_allocator)
|
||
(uninitialized_construct_using_allocator): Add constexpr.
|
||
* testsuite/20_util/uses_allocator/make_obj.cc: Check constexpr.
|
||
* testsuite/20_util/uses_allocator/uninitialized_construct.cc: New test.
|
||
|
||
2022-04-04 Timm Bäder <tbaeder@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-04-01 Timm Bäder <tbaeder@redhat.com>
|
||
|
||
* include/bits/fs_ops.h: Fix filename in Doxygen comment.
|
||
* include/experimental/bits/fs_ops.h: Likewise.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-03-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/uses_allocator_args.h: Remove incorrect copyright
|
||
notice.
|
||
|
||
2022-04-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/104301
|
||
* acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Print different messages
|
||
for stdio_pure and stdio_posix options.
|
||
* configure: Regenerate.
|
||
|
||
2022-02-17 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/102358
|
||
* include/bits/stl_iterator.h (__niter_base): Make constexpr
|
||
for C++20.
|
||
(__miter_base): Likewise.
|
||
* testsuite/25_algorithms/move/constexpr.cc: New test.
|
||
|
||
2022-02-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103904
|
||
* include/std/ranges (__detail::__box): Revert r11-9555 changes
|
||
to the constraints on the partial specialization and the
|
||
now-unnecessary special member functions.
|
||
(__detail::__non_propagating_cache::operator=): Remove
|
||
now-unused overload added by r11-9555.
|
||
(split_view::_OuterIter::__current): Adjust after reverting the
|
||
r11-9555 change to the type of _M_current.
|
||
(split_view::_M_current): Revert r11-9555 change to its type.
|
||
(split_view::split_view): Constrain the default constructor
|
||
further.
|
||
* testsuite/std/ranges/adaptors/detail/copyable_box.cc: Disable
|
||
now-irrelevant test for the r11-9555 changes to the partial
|
||
specialization of __box.
|
||
|
||
2022-02-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-16 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103904
|
||
PR libstdc++/101231
|
||
* include/std/ranges (_CachedPosition::_M_get): For non-forward
|
||
ranges, just call __builtin_unreachable.
|
||
* testsuite/std/ranges/istream_view.cc (test05): New test.
|
||
|
||
2022-02-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103904
|
||
* include/bits/ranges_cmp.h (__cpp_lib_ranges): Adjust value.
|
||
|
||
2022-02-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/103904
|
||
* include/bits/iterator_concepts.h (weakly_incrementable): Remove
|
||
default_initializable requirement.
|
||
* include/bits/ranges_base.h (ranges::view): Likewise.
|
||
* include/bits/ranges_util.h (subrange): Constrain the default
|
||
ctor.
|
||
* include/bits/stl_iterator.h (common_iterator): Constrain the
|
||
default ctor.
|
||
(counted_iterator): Likewise.
|
||
* include/std/ranges (__detail::__box::operator=): Handle
|
||
self-assignment in the primary template.
|
||
(__detail::__box): In the partial specialization: adjust
|
||
constraints as per P2325. Add specialized operator= for the
|
||
case when the wrapped type is not copyable. Constrain the
|
||
default ctor. Avoid list-initialization.
|
||
(single_view): Constraint the default ctor.
|
||
(iota_view): Relax semiregular constraint to copyable.
|
||
Constrain the default ctor.
|
||
(iota_view::_Iterator): Constraint the default ctor.
|
||
(ref_view): Remove the default ctor. Remove NSDMIs.
|
||
(ref_view::_Iterator): Constrain the default ctor.
|
||
(__detail::__non_propagating_cache::operator=): Define overload
|
||
for assigning from a value of the underlying type.
|
||
(filter_view): Likewise.
|
||
(filter_view::_Iterator): Likewise.
|
||
(transform_view): Likewise.
|
||
(transform_view::_Iterator): Likewise.
|
||
(take_view): Likewise.
|
||
(take_view::_Iterator): Likewise.
|
||
(take_while_view): Likewise.
|
||
(take_while_view::_Iterator): Likewise.
|
||
(drop_while_view): Likewise.
|
||
(drop_while_view::_Iterator): Likewise.
|
||
(join_view): Likewise.
|
||
(split_view::_OuterIter::__current): Adjust after changing the
|
||
type of _M_current.
|
||
(split_view::_M_current): Wrap it in a __non_propagating_cache.
|
||
(split_view::split_view): Constrain the default ctor.
|
||
(common_view): Constrain the default ctor.
|
||
(reverse_view): Likewise.
|
||
(elements_view): Likewise.
|
||
* include/std/span (enable_view<span<_ElementType, _Extent>>):
|
||
Define this partial specialization to true unconditionally.
|
||
* include/std/version (__cpp_lib_ranges): Adjust value.
|
||
* testsuite/std/ranges/adaptors/detail/semiregular_box.cc:
|
||
Rename to ...
|
||
* testsuite/std/ranges/adaptors/detail/copyable_box.cc: ... this.
|
||
(test02): Adjust now that __box is copyable-box not
|
||
semiregular-box.
|
||
(test03): New test.
|
||
* testsuite/std/ranges/p2325.cc: New test.
|
||
* testsuite/std/ranges/single_view.cc (test06): New test.
|
||
* testsuite/std/ranges/view.cc: Adjust now that view doesn't
|
||
require default_initializable.
|
||
|
||
2022-02-10 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2022-02-10 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
* include/bits/atomic_wait.h (__waiter_base::_S_do_spin,
|
||
__waiter_base::_S_do_spin_v): Change memory order from relaxed
|
||
to acquire.
|
||
|
||
2022-02-09 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2022-02-09 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
PR libstdc++/104442
|
||
* include/bits/atomic_wait.h (__waiter::_M_do_wait_v): Move spin
|
||
loop inside do loop so that threads failing the wait, reload
|
||
_M_ver.
|
||
|
||
2022-02-01 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2022-02-01 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
* include/bits/atomic_wait.h: Change memory order from
|
||
Acquire/Release with relaxed loads to SeqCst+Release for
|
||
accesses to the waiter's count.
|
||
|
||
2022-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/using.xml: Update documentation around default
|
||
-std option.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2022-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100017
|
||
* src/c++17/Makefile.am (AM_CXXFLAGS): Add -nostdinc++.
|
||
* src/c++17/Makefile.in: Regenerate.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/char_traits.h (__gnu_cxx::char_traits::move):
|
||
Do not compare unrelated pointers during constant evaluation.
|
||
* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
|
||
Improve tests for char_traits::move.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add _GLIBCXX_
|
||
prefix to NO_SLEEP macro.
|
||
* config.h.in: Regenerate.
|
||
* configure: Regenerate.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103877
|
||
* doc/xml/faq.xml: Add '-x c++' to preprocessor command.
|
||
* doc/html/faq.html: Regenerate.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103501
|
||
* include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&, false_type)):
|
||
Clear container if elements have been moved-from.
|
||
* testsuite/23_containers/map/allocator/move_cons.cc: Expect
|
||
moved-from container to be empty.
|
||
* testsuite/23_containers/multimap/allocator/move_cons.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/multiset/allocator/103501.cc: New test.
|
||
* testsuite/23_containers/set/allocator/103501.cc: New test.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-12-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103549
|
||
* include/bits/regex.h (match_results): Give names to template
|
||
parameters in first declaration.
|
||
(match_results::_M_begin): Add default member-initializer.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103453
|
||
* config/allocator/malloc_allocator_base.h
|
||
(_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define for Clang.
|
||
* config/allocator/new_allocator_base.h
|
||
(_GLIBCXX_SANITIZE_STD_ALLOCATOR): Likewise.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103919
|
||
* include/bits/basic_string.h (basic_string(const T&, size_t, size_t)):
|
||
Relax constraints on string_view parameter.
|
||
[!_GLIBCXX_USE_CXX11_ABI] (basic_string(const T&, size_t, size_t)):
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/103919.cc: New test.
|
||
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2022-01-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Strip
|
||
versioned namespace from the type name that is printed.
|
||
|
||
2022-01-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/alloc_traits.h (allocator_traits): Add explicit
|
||
specialization for allocator<void>. Improve doxygen comments.
|
||
* include/bits/allocator.h (allocator<void>): Restore for the
|
||
versioned namespace.
|
||
(allocator<void>::construct, allocator<void>::destroy): Remove.
|
||
* include/ext/extptr_allocator.h (_Extptr_allocator<void>):
|
||
Add default constructor and converting constructor.
|
||
|
||
2021-12-10 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-12-10 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
PR libstdc++/102994
|
||
* include/bits/atomic_base.h (__atomic_base<_PTp*>::wait()):
|
||
Add const qualifier.
|
||
* include/std/atomic (atomic<_Tp*>::wait(), atomic_wait()):
|
||
Likewise.
|
||
* testsuite/29_atomics/atomic/wait_notify/102994.cc:
|
||
New test.
|
||
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/29_atomics/atomic_float/1.cc: Reorder directives.
|
||
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/23_containers/unordered_map/modifiers/move_assign.cc:
|
||
Change dg-do compile to run.
|
||
* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499.cc:
|
||
Likewise.
|
||
|
||
2021-11-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/96416
|
||
* include/bits/ptr_traits.h (pointer_traits): Remove
|
||
static_assert checking for valid element_type.
|
||
(pointer_traits::element_type, pointer_traits::pointer_to):
|
||
Do not define when element type cannot be deduced.
|
||
* testsuite/20_util/pointer_traits/lwg3545.cc: New test.
|
||
* testsuite/20_util/to_address/1_neg.cc: Adjust dg-error line.
|
||
* testsuite/20_util/to_address/lwg3545.cc: New test.
|
||
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101608
|
||
* include/bits/ranges_algobase.h (__fill_n_fn): Check for
|
||
constant evaluation before using memset.
|
||
* testsuite/25_algorithms/fill_n/constrained.cc: Check
|
||
byte-sized values as well.
|
||
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdBitReferencePrinter): Use
|
||
'std::vector<bool>::reference' as type name, not _Bit_reference.
|
||
(build_libstdcxx_dictionary): Register printers for vector<bool>
|
||
types in debug mode too.
|
||
* testsuite/libstdc++-prettyprinters/simple.cc: Adjust expected
|
||
output for invalid _Bit_reference. Use vector<bool>::reference
|
||
instead of _Bit_reference.
|
||
* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
|
||
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/libstdc++-prettyprinters/80276.cc: Add xfail for
|
||
debug mode.
|
||
* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
|
||
|
||
2021-11-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/lib/libstdc++.exp: Rename effective target keywords
|
||
to avoid dashes in the name.
|
||
* testsuite/*: Update effective targe keywords.
|
||
|
||
2021-11-24 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
Backported from master:
|
||
2021-08-08 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Replace 'failed_assertion'
|
||
dg-prune-output reason with 'builtin_unreachable'.
|
||
* testsuite/25_algorithms/copy_backward/debug/constexpr_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/equal/debug/constexpr_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/lower_bound/debug/constexpr_partitioned_pred_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/lower_bound/debug/constexpr_valid_range_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/upper_bound/debug/constexpr_partitioned_pred_neg.cc: Likewise.
|
||
* testsuite/25_algorithms/upper_bound/debug/constexpr_valid_range_neg.cc: Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/23_containers/unordered_map/cons/default.cc: Add
|
||
equality comparison operators to allocator.
|
||
* testsuite/23_containers/unordered_set/cons/default.cc:
|
||
Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/utility (__is_in_place_type_v): Define
|
||
variable template to detect in_place_type_t specializations.
|
||
(__is_in_place_type): Replace class template with alias
|
||
template using __is_in_place_type_v.
|
||
* include/std/any (any(T&&)): Check __is_in_place_type first and
|
||
avoid instantiating is_copy_constructible unnecessarily.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/alloc_traits.h: Suppress doxygen documentation.
|
||
* include/bits/allocated_ptr.h: Likewise.
|
||
* include/bits/enable_special_members.h: Likewise.
|
||
* include/bits/hashtable.h: Likewise.
|
||
* include/bits/hashtable_policy.h: Likewise.
|
||
* include/bits/uses_allocator.h: Likewise.
|
||
* include/bits/node_handle.h: Document node handles and suppress
|
||
documentation for protected members.
|
||
* include/std/any: Suppress documentation for implementation
|
||
details.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100748
|
||
PR libstdc++/103133
|
||
* config/os/gnu-linux/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
|
||
Define for glibc 2.34 and later.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/26_numerics/random/random_device/cons/token.cc:
|
||
Print results of random_device_available checks.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/26_numerics/random/random_device/cons/token.cc:
|
||
Retry if random devices produce the same value.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_construct.h (_Construct): Use
|
||
std::construct_at when constant evaluated.
|
||
* include/std/optional (_Storage, _Optional_payload, optional):
|
||
Add constexpr as specified by P2231R1.
|
||
* include/std/version (__cpp_lib_optional): Update value for
|
||
C++20.
|
||
* testsuite/20_util/optional/requirements.cc: Check feature test
|
||
macro.
|
||
* testsuite/20_util/optional/constexpr/assign.cc: New test.
|
||
* testsuite/20_util/optional/constexpr/cons/conv.cc: New test.
|
||
* testsuite/20_util/optional/constexpr/modifiers.cc: New test.
|
||
* testsuite/20_util/optional/constexpr/swap.cc: New test.
|
||
* testsuite/20_util/optional/version.cc: New test.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/optional (__throw_bad_optional_access):
|
||
Replace GNU attribute with C++11 attribute.
|
||
(optional::value, optional::value_or): Use if statements
|
||
instead of conditional expressions.
|
||
* include/std/optional (__throw_bad_optional_access)
|
||
(optional::value, optional::value_or): Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/optional (nullptr_t): Make constructor noexcept.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98725
|
||
* include/std/ostream (operator<<(basic_ostream<char, Tr>&, wchar_t))
|
||
(operator<<(basic_ostream<char, Tr>&, const wchar_t*)): Always
|
||
define as deleted. Do not check _GLIBCXX_USE_WCHAR_T.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/ostream (operator<<(const volatile void*)):
|
||
Add new overload, as per P1147R1.
|
||
* testsuite/27_io/basic_ostream/inserters_other/char/volatile_ptr.cc:
|
||
New test.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102894
|
||
* include/std/any (make_any): Add SFINAE constraint.
|
||
* testsuite/20_util/any/102894.cc: New test.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++11/system_error.cc (generic_error_category): Define
|
||
class and virtual functions as 'final'.
|
||
(generic_error_category::equivalent(int, const error_condition&)):
|
||
Override.
|
||
(system_error_category): Define class and virtual functions as
|
||
'final'.
|
||
(system_error_category::equivalent(int, const error_condition&)):
|
||
Override.
|
||
(generic_category_instance, system_category_instance): Use
|
||
constinit union to make the objects immortal.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-31 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98421
|
||
* include/std/span (span(Iter, size_type), span(Iter, Iter)):
|
||
Add valid range checks.
|
||
* testsuite/23_containers/span/cons_1_assert_neg.cc: New test.
|
||
* testsuite/23_containers/span/cons_2_assert_neg.cc: New test.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/std_function.h (function::function(F&&)): Give
|
||
name to defaulted template parameter, to improve diagnostics.
|
||
Use markdown for more doxygen comments.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/std_function.h (_function_base::_Base_manager):
|
||
Replace _M_init_functor with a function template using a
|
||
forwarding reference, and a pair of _M_create function
|
||
templates. Reuse _M_create for the clone operation.
|
||
(function::_Decay_t): New alias template.
|
||
(function::_Callable): Simplify by using _Decay.
|
||
(function::function(F)): Change parameter to forwarding
|
||
reference, as per LWG 2447. Add noexcept-specifier. Simplify
|
||
constraints.
|
||
(function::operator=(F&&)): Add noexcept-specifier.
|
||
* testsuite/20_util/function/cons/lwg2774.cc: New test.
|
||
* testsuite/20_util/function/cons/noexcept.cc: New test.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/doxygen/user.cfg.in: Update to Doxygen 1.9.2
|
||
|
||
2021-11-24 Antony Polukhin <antoshkka@gmail.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Antony Polukhin <antoshkka@gmail.com>
|
||
Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/random.tcc (seed_seq::seed_seq): Reserve capacity
|
||
if distance is O(1).
|
||
* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
|
||
line number.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/std_function.h (function::function(F)): Add
|
||
static assertions to check constructibility requirements.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/std_function.h (_Function_base): Add
|
||
default member initializers and define constructor as defaulted.
|
||
(function::_M_invoker): Add default member initializer.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/stl_function.h: Improve doxygen comments.
|
||
|
||
2021-11-24 Tim Adye <Tim.Adye@cern.ch>
|
||
|
||
Backported from master:
|
||
2021-06-04 Tim Adye <Tim.Adye@cern.ch>
|
||
|
||
* include/std/any (any::_Manager::_S_access): New static
|
||
function to access the contained value.
|
||
(any::emplace, __any_caster): Use _S_access member of the
|
||
manager type.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/syncstream (basic_syncbuf::swap()): Remove
|
||
noexcept, as per LWG 3498.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100153
|
||
* include/bits/vector.tcc (vector<bool>::_M_shrink_to_fit()):
|
||
When size() is zero just deallocate and reset.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/move.h (forward(remove_reference_t<T>&&)):
|
||
Improve text of static_assert.
|
||
* testsuite/20_util/forward/c_neg.cc: Adjust dg-error.
|
||
* testsuite/20_util/forward/f_neg.cc: Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/22_locale/conversions/buffer/1.cc: Check
|
||
_GLIBCXX_USE_WCHAR_T.
|
||
* testsuite/22_locale/conversions/buffer/3.cc: Likewise. Add
|
||
test using char16_t.
|
||
* testsuite/22_locale/conversions/string/1.cc: Check
|
||
_GLIBCXX_USE_WCHAR_T.
|
||
* testsuite/27_io/filesystem/path/generic/generic_string.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/make_preferred.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/native/alloc.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/native/string-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/native/string.cc: Likewise.
|
||
* testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/path/generic/generic_string.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/path/native/alloc.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/path/native/string-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/path/native/string.cc:
|
||
Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/lib/gdb-test.exp: Add target selector support to the
|
||
dg-final directives.
|
||
* testsuite/libstdc++-prettyprinters/80276.cc: Add xfail for
|
||
C++20.
|
||
* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
|
||
* testsuite/libstdc++-prettyprinters/prettyprinters.exp: Tweak
|
||
comment.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100117
|
||
* testsuite/17_intro/headers/c++1998/49745.cc: Explicitly list
|
||
all C++ headers instead of including <bits/stdc++.h>
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string/modifiers/append/wchar_t/1.cc:
|
||
Fix reads past the end of strings.
|
||
* testsuite/21_strings/basic_string/operations/compare/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/experimental/string_view/operations/compare/wchar_t/1.cc:
|
||
Likewise.
|
||
|
||
2021-11-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103086
|
||
* testsuite/libstdc++-prettyprinters/cxx11.cc: Check unique_ptr
|
||
with non-empty pointer and non-empty deleter.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103086
|
||
* python/libstdcxx/v6/printers.py (_tuple_impl_get): New helper
|
||
for accessing the tuple element stored in a _Tuple_impl node.
|
||
(tuple_get): New function for accessing a tuple element.
|
||
(unique_ptr_get): New function for accessing a unique_ptr.
|
||
(UniquePointerPrinter, StdPathPrinter): Use unique_ptr_get.
|
||
* python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker): Cast
|
||
tuple to its base class before accessing _M_head_impl.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103240
|
||
* libsupc++/tinfo2.cc (type_info::before): Use unadjusted name
|
||
to check for the '*' prefix.
|
||
* testsuite/util/testsuite_shared.cc: Add type_info object for
|
||
use in new test.
|
||
* testsuite/18_support/type_info/103240.cc: New test.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103381
|
||
* include/ext/bitmap_allocator.h: Include <bits/stl_function.h>
|
||
instead of <functional>.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101571
|
||
* include/bits/ranges_uninitialized.h (_DestroyGuard): Change
|
||
constructor parameter to reference and use addressof.
|
||
* testsuite/util/testsuite_iterators.h: Define deleted operator&
|
||
overloads for test iterators.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_wait.h (_GLIBCXX_HAVE_PLATFORM_WAIT):
|
||
Define before first attempt to check it.
|
||
|
||
2021-11-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_timed_wait.h (__platform_wait_until_impl):
|
||
Return false for ETIMEDOUT and true otherwise.
|
||
|
||
2021-11-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/range_access.h (begin(valarray), end(valarray)):
|
||
Add noexcept.
|
||
|
||
2021-11-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-11-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/103022
|
||
* include/std/valarray (begin, end): Do not dereference an empty
|
||
valarray. Add noexcept and [[nodiscard]].
|
||
* testsuite/26_numerics/valarray/range_access.cc: Check empty
|
||
valarray. Check iterator properties. Run as well as compiling.
|
||
* testsuite/26_numerics/valarray/range_access2.cc: Likewise.
|
||
* testsuite/26_numerics/valarray/103022.cc: New test.
|
||
|
||
2021-10-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/Makefile.am (stamp-html-doxygen, stamp-html-doxygen)
|
||
(stamp-latex-doxygen, stamp-man-doxygen): Fix recipes for
|
||
relative ${top_srcdir}.
|
||
* doc/Makefile.in: Regenerate.
|
||
|
||
2021-10-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101583
|
||
* include/bits/hashtable.h (_Hashtable): Replace mixin with
|
||
_Enable_default_ctor. Construct it explicitly in all
|
||
non-forwarding, non-defaulted constructors.
|
||
* testsuite/23_containers/unordered_map/cons/default.cc: Check
|
||
non-default constructors can be used.
|
||
* testsuite/23_containers/unordered_set/cons/default.cc:
|
||
Likewise.
|
||
|
||
2021-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/path/construct/102592.C: Moved to...
|
||
* testsuite/27_io/filesystem/path/construct/102592.cc: ...here.
|
||
* testsuite/28_regex/match_results/102667.C: Moved to...
|
||
* testsuite/28_regex/match_results/102667.cc: ...here.
|
||
|
||
2021-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102592
|
||
* include/bits/fs_path.h (path::path(Iter, Iter, format))
|
||
(path::append(Iter, Iter), path::concat(Iter, Iter)): Call
|
||
__string_from_range directly, instead of two-argument overload
|
||
of _S_convert.
|
||
(path::_S_convert(Iter, Iter)): Remove.
|
||
* testsuite/27_io/filesystem/path/construct/102592.C: New test.
|
||
|
||
2021-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/string_view (basic_string_view(It, End)): Add
|
||
noexcept-specifier.
|
||
* testsuite/21_strings/basic_string_view/cons/char/range.cc:
|
||
Check noexcept-specifier. Also check construction without CTAD.
|
||
|
||
2021-10-13 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-28 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100187
|
||
PR libstdc++/100237
|
||
PR libstdc++/100249
|
||
PR libstdc++/100287
|
||
* include/bits/ranges_algo.h (__search_n_fn::operator()): Give
|
||
the __value_comp lambda an explicit bool return type.
|
||
(__is_permutation_fn::operator()): Give the __proj_scan local
|
||
variable auto&& return type. Give the __comp_scan lambda an
|
||
explicit bool return type.
|
||
(__remove_fn::operator()): Give the __pred lambda an explicit
|
||
bool return type.
|
||
(__partition_fn::operator()): Don't std::move __first twice
|
||
when returning an empty subrange.
|
||
(__min_fn::operator()): Don't std::move __comp.
|
||
(__max_fn::operator()): Likewise.
|
||
(__minmax_fn::operator()): Likewise.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-31 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/experimental/net/internet/resolver/ops/lookup.cc:
|
||
Try other service if "http" fails.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100285
|
||
* configure.ac: Check for O_NONBLOCK.
|
||
* configure: Regenerate.
|
||
* include/experimental/internet: Include <ws2tcpip.h> for
|
||
Windows. Use preprocessor conditions around more constants.
|
||
* include/experimental/socket: Use preprocessor conditions
|
||
around more constants.
|
||
* testsuite/experimental/net/internet/resolver/base.cc: Only use
|
||
constants when the corresponding C macro is defined.
|
||
* testsuite/experimental/net/socket/basic_socket.cc: Likewise.
|
||
* testsuite/experimental/net/socket/socket_base.cc: Likewise.
|
||
Make preprocessor checks more fine-grained.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100863
|
||
* include/bits/hashtable.h (_Hashtable): Conditionally delete
|
||
default constructor by deriving from _Enable_special_members.
|
||
* testsuite/23_containers/unordered_map/cons/default.cc: New test.
|
||
* testsuite/23_containers/unordered_set/cons/default.cc: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100863
|
||
PR libstdc++/65816
|
||
* include/bits/hashtable_policy.h (_Hashtable_ebo_helper):
|
||
Value-initialize subobject.
|
||
* testsuite/23_containers/unordered_map/allocator/default_init.cc:
|
||
Remove XFAIL.
|
||
* testsuite/23_containers/unordered_set/allocator/default_init.cc:
|
||
Remove XFAIL.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/Makefile.am: Simplify doxygen recipes and use --latex_cmd.
|
||
* doc/Makefile.in: Regenerate.
|
||
* doc/doxygen/user.cfg.in (LATEX_CMD_NAME): Add placeholder
|
||
value.
|
||
* scripts/run_doxygen (print_usage): Always print to stdout and
|
||
do not exit.
|
||
(fail): New function for exiting on error.
|
||
(parse_options): Handle --latex_cmd. Do not treat --help the
|
||
same as errors. Simplify handling of required arguments.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/Makefile.am (stamp-pdf-doxygen): Improve comment about
|
||
dealing with errors. Use '@' to prevent shell command being
|
||
echoed.
|
||
* doc/Makefile.in: Regenerate.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/allocator.h (allocator::is_always_equal): Deprecate.
|
||
* include/bits/iterator_concepts.h (indirectly_readable_traits):
|
||
Add LWG issue number to comment.
|
||
* include/std/memory_resource (polymorphic_allocator::release):
|
||
Deprecate.
|
||
* testsuite/20_util/allocator/requirements/typedefs.cc: Add
|
||
dg-warning for deprecation. Also check std::allocator<void>.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-31 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/names.cc: Undefine some more names used
|
||
by Solaris system headers.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102048
|
||
* include/ext/rope (rope::erase(size_type)): Remove broken
|
||
function.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/90787
|
||
* testsuite/27_io/filesystem/iterators/directory_iterator.cc:
|
||
Use new __gnu_test::permissions_are_testable() function.
|
||
* testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/exists.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/remove.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/status.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/symlink_status.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/temp_directory_path.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/iterators/recursive_directory_iterator.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/exists.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/is_empty.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/remove.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/remove_all.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
|
||
Likewise.
|
||
* testsuite/util/testsuite_fs.h (__gnu_test::permissions_are_testable):
|
||
New function to guess whether testing permissions will work.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-02 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/101599
|
||
* include/bits/ranges_algo.h (__reverse_copy_fn::operator()):
|
||
Add missing std::move in return statement.
|
||
(__partition_copy_fn::operator()): Rename templtae parameter
|
||
_O2 to _Out2. Uglify function parameters out_true and out_false.
|
||
* include/bits/ranges_algobase.h (__copy_or_move): Add missing
|
||
std::move to recursive call that unwraps a __normal_iterator
|
||
output iterator.
|
||
* testsuite/25_algorithms/copy/constrained.cc (test06): New test.
|
||
* testsuite/25_algorithms/move/constrained.cc (test05): New test.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-02 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/101589
|
||
* include/std/ranges (lazy_split_view::_InnerIter::base): Make
|
||
the const& overload unconstrained and return a const reference
|
||
as per LWG 3533. Make unconditionally noexcept.
|
||
(elements_view::base): Revert accidental r12-569 change.
|
||
(elements_view::_Iterator::base): Make the const& overload
|
||
unconstrained and return a const reference as per LWG 3533.
|
||
Make unconditionally noexcept.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-02 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/101483
|
||
* include/std/ranges (join_view::_Iterator::_Iterator): Add
|
||
missing std::move.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-20 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (split_view::_InnerIter::base): Define as
|
||
per P2210.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (transform_view::_Iterator::_S_iter_concept):
|
||
Consider _Base instead of _Vp as per LWG 3555.
|
||
(elements_view::_Iterator::_S_iter_concept): Likewise.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (split_view::_OuterIter::value_type::begin):
|
||
Remove the non-const overload, and remove the copyable constraint
|
||
on the const overload as per LWG 3553.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-19 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h
|
||
(__detail::__common_iter_use_postfix_proxy): Add
|
||
move_constructible constraint as per LWG 3546.
|
||
(common_iterator::__postfix_proxy): Adjust initializer of
|
||
_M_keep as per LWG 3546.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/concepts (convertible_to): Just use declval as per
|
||
LWG 3557.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/ranges_algo.h (__find_fn, find, __find_if_fn)
|
||
(find_if, __find_if_not_fn, find_if_not, _in_in_result)
|
||
(__mismatch_fn, mismatch, __search_fn, search): Move to ...
|
||
* include/bits/ranges_util.h: ... here.
|
||
* include/std/ranges (__detail::find, __detail::find_if)
|
||
(__detail::find_if_not, __detail::mismatch): Remove.
|
||
(filter_view): Use ranges::find_if instead.
|
||
(drop_while_view): Use ranges::find_if_not instead.
|
||
(split_view): Use ranges::find and ranges::mismatch instead.
|
||
|
||
2021-10-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100606
|
||
* include/std/ranges (drop_while_view::begin): Assert the
|
||
precondition added by LWG 3490.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/tuple/comparison_operators/overloaded.cc:
|
||
Restore test for operator<.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101960
|
||
* include/std/tuple (_Tuple_impl(_Tuple_impl&&)): Define as
|
||
defauled.
|
||
* testsuite/20_util/tuple/cons/101960.cc: Check tuples with
|
||
array elements before the last element.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR c++/102535
|
||
* testsuite/20_util/is_trivially_constructible/value.cc: Adjust
|
||
expected value for C++20.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/basic_filebuf/close/81256.cc: Moved to...
|
||
* testsuite/27_io/basic_filebuf/close/wchar_t/81256.cc: ...here.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string_view/requirements/trivially_copyable.cc:
|
||
New test.
|
||
* testsuite/23_containers/span/trivially_copyable.cc: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/18_support/numeric_limits/lowest.cc: Use
|
||
numeric_limits<T>::is_integer instead of is_integral<T>::value.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101960
|
||
* include/std/tuple (_Tuple_impl(_Tuple_impl&&)): Use base
|
||
class' move constructor. Define as defaulted for versioned
|
||
namespace.
|
||
* testsuite/20_util/tuple/cons/101960.cc: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/debug/deque (deque(size_type, const T&, const A&)):
|
||
Prevent class template argument deduction and replace with a
|
||
deduction guide.
|
||
* include/debug/forward_list (forward_list(size_type, const T&, const A&)):
|
||
Likewise.
|
||
* include/debug/list (list(size_type, const T&, const A&)):
|
||
Likewise.
|
||
* include/debug/vector (vector(size_type, const T&, const A&)):
|
||
Likewise.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/Makefile.am [GLIBCXX_BUILD_DEBUG] (install-data-local):
|
||
Install another copy of the GDB hook.
|
||
* python/Makefile.in: Regenerate.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101870
|
||
* include/c_global/cmath (hypot): Use __promoted_t.
|
||
(lerp): Add new overload accepting any arithmetic types.
|
||
* include/ext/type_traits.h (__promoted_t): New alias template.
|
||
* testsuite/26_numerics/lerp.cc: Moved to...
|
||
* testsuite/26_numerics/lerp/1.cc: ...here.
|
||
* testsuite/26_numerics/lerp/constexpr.cc: New test.
|
||
* testsuite/26_numerics/lerp/version.cc: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Define.
|
||
(build_libstdcxx_dictionary): Register printer for
|
||
std::error_code and std::error_condition.
|
||
* testsuite/libstdc++-prettyprinters/cxx11.cc: Test it.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101923
|
||
* include/bits/std_function.h (function(function&&)): Check for
|
||
non-empty parameter before doing any work.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102425
|
||
* src/c++11/system_error.cc
|
||
(system_error_category::default_error_condition): Add 0 to
|
||
switch.
|
||
* testsuite/19_diagnostics/error_category/102425.cc: New test.
|
||
|
||
2021-10-12 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-09-16 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
PR libstdc++/101761
|
||
* testsuite/29_atomics/atomic_ref/wait_notify.cc (test): Use
|
||
va and vb as arguments to wait/notify, remove unused bb local.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_path.h (advance): Remove non-deducible
|
||
template parameter.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99876
|
||
* src/c++17/fs_ops.cc (fs::absolute): Call non-throwing form,
|
||
to avoid unnecessary current_path() call.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-31 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102074
|
||
* include/bits/atomic_timed_wait.h (__timed_waiter_pool)
|
||
[!_GLIBCXX_HAVE_PLATFORM_TIMED_WAIT]: Add missing return.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102270
|
||
* include/std/tuple (_Tuple_impl): Add constexpr to constructor
|
||
missed in previous patch.
|
||
* testsuite/20_util/tuple/cons/102270.C: Moved to...
|
||
* testsuite/20_util/tuple/cons/102270.cc: ...here.
|
||
* testsuite/util/testsuite_allocator.h (SimpleAllocator): Add
|
||
constexpr to constructor so it can be used for C++20 tests.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102270
|
||
* include/std/tuple (_Head_base, _Tuple_impl): Add
|
||
_GLIBCXX20_CONSTEXPR to allocator-extended constructors.
|
||
(tuple<>::swap(tuple&)): Add _GLIBCXX20_CONSTEXPR.
|
||
* testsuite/20_util/tuple/cons/102270.C: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/26_numerics/valarray/dr630-3.C: Moved to...
|
||
* testsuite/26_numerics/valarray/dr630-3.cc: ...here.
|
||
* testsuite/27_io/basic_iostream/cons/16251.C: Moved to...
|
||
* testsuite/27_io/basic_iostream/cons/16251.cc: ...here.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-09-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102280
|
||
* include/std/span (span(Range&&)): Add constraint to deduction
|
||
guide.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/25_algorithms/is_permutation/2.cc: Include <iterator>.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/integer_comparisons/greater.cc: New test.
|
||
|
||
2021-10-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-10-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/102667
|
||
* include/bits/regex.h (match_result::empty()): Optimize by
|
||
calling the base function directly.
|
||
(match_results::end()): Check _Base_type::empty() not empty().
|
||
* testsuite/28_regex/match_results/102667.C: New test.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101965
|
||
* include/std/charconv (__to_chars_i): Remove redundant check.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/26_numerics/random/seed_seq/cons/range.cc: Check
|
||
construction from input iterators.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100682
|
||
* doc/xml/manual/debug_mode.xml: Update documentation about
|
||
debug capability of std::array.
|
||
* doc/html/*: Regenerate.
|
||
* include/debug/array: New file.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/basic_string.h (basic_string::contains): Do not
|
||
define for -std=gnu++20.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/semaphore_base.h: Include <exception> and <errno.h>.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/random.h (seed_seq): Constrain initializer-list
|
||
constructor.
|
||
* include/bits/random.tcc (seed_seq): Add template parameter.
|
||
* testsuite/26_numerics/random/seed_seq/cons/default.cc: Check
|
||
for noexcept.
|
||
* testsuite/26_numerics/random/seed_seq/cons/initlist.cc: Check
|
||
constraints.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100285
|
||
* include/experimental/socket (__basic_socket_impl::set_option)
|
||
(__basic_socket_impl::get_option) [!_GLIBCXX_HAVE_SYS_SOCKET_H]:
|
||
Just set error code.
|
||
* testsuite/experimental/net/socket/socket_base.cc: CHeck
|
||
for <sys/socket.h> not <socket.h>.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100180
|
||
PR libstdc++/100286
|
||
PR libstdc++/100351
|
||
* testsuite/experimental/net/internet/address/v4/comparisons.cc:
|
||
Use new effective-target keyword.
|
||
* testsuite/experimental/net/internet/address/v4/cons.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/address/v4/creation.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/address/v4/members.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/address/v6/members.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/resolver/base.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/resolver/ops/lookup.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/resolver/ops/reverse.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/socket/opt.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/tcp.cc:
|
||
Likewise.
|
||
* testsuite/experimental/net/internet/udp.cc:
|
||
Likewise.
|
||
* testsuite/lib/libstdc++.exp (check_effective_target_net_ts_ip):
|
||
New proc to check net_ts_ip et.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (address_v6::bytes_type): Adjust
|
||
formatting.
|
||
(basic_endpoint): Define _M_is_v6() to put all checks for
|
||
AF_INET6 in one place.
|
||
(basic_endpoint::resize): Simplify.
|
||
(operator==(const tcp&, const tcp&)): Add constexpr and noexcept.
|
||
(operator!=(const tcp&, const tcp&)): Likewise.
|
||
(operator==(const udp&, const udp&)): Likewise.
|
||
(operator!=(const udp&, const udp&)): Likewise.
|
||
* testsuite/experimental/net/internet/tcp.cc: New test.
|
||
* testsuite/experimental/net/internet/udp.cc: New test.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100286
|
||
* include/experimental/internet (resolver_errc, resolver_category())
|
||
(make_error_code, make_error_condition): Define unconditionally,
|
||
only make enumerators and use of gai_strerror depend on the
|
||
availability of <netdb.h>.
|
||
(address_v4::to_string): Use correct constant for string length.
|
||
(address_v4::to_string, address_v6::to_string): Define
|
||
unconditionally, throw if unsupported.
|
||
(make_address_v4, make_address_v6): Define unconditionally.
|
||
Return an error if unsupported.
|
||
(tcp, udp, v6_only, unicast::hops, multicast::*): Define
|
||
conditionally,
|
||
* testsuite/experimental/net/internet/socket/opt.cc: Check for
|
||
<netinet/in.h> and <netinet/tcp.h> before using types from
|
||
namespace net::ip.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100285
|
||
* include/experimental/internet (resolver_base::flags):
|
||
Define overloaded operators as hidden friends.
|
||
* include/experimental/socket (socket_base::message_flags):
|
||
Likewise.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (tcp::no_delay, v6_only)
|
||
(unicast::hops, multicast::hops, multicast::enable_loopback):
|
||
Change access of base class and static data members. Add
|
||
using-declaration for __socket_crtp::operator=(_Tp).
|
||
(multicast::__mcastopt): New type.
|
||
(multicast::join_group, multicast::leave_group): Derive from
|
||
__mcastopt for common implementation.
|
||
* include/experimental/socket: Add comment.
|
||
* testsuite/experimental/net/internet/socket/opt.cc: New test.
|
||
* testsuite/experimental/net/socket/socket_base.cc: Check for
|
||
protected constructor/destructor of socket_base. Check for
|
||
explicit constructors of socket option classes.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/bits/net.h (__socket_base): Add
|
||
bool template parameter to allow BooleanSocketOption and
|
||
IntegerSocketOption to have different __socket_base<int>
|
||
base classes.
|
||
(__socket_base<bool>): Adjust base class.
|
||
(__socket_base<int>): Add partial specialization.
|
||
(__socket_crtp::operator=(_Tp)): Add noexcept-specifier.
|
||
* include/experimental/socket (socket_base::broadcast)
|
||
(socket_base::debug, socket_base::do_not_route)
|
||
(socket_base::keep_alive, socket_base::linger)
|
||
(socket_base::out_of_band_inline)
|
||
(socket_base::receive_buffer_size)
|
||
(socket_base::receive_low_watermark)
|
||
(socket_base::reuse_address, socket_base::send_buffer_size)
|
||
(socket_base::send_low_watermark): Add using-declaration for
|
||
__socket_crtp::operator=(_Tp).
|
||
* testsuite/experimental/net/socket/socket_base.cc: Check
|
||
properties of socket option types.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (resolver_base::flags): Remove
|
||
enumerators. Initialize constants directly with desired values.
|
||
Make all operators constexpr and noexcept.
|
||
* testsuite/experimental/net/internet/resolver/base.cc: Use
|
||
__gnu_test::test_bitmask_values for bitmask type. Check
|
||
construction and destruction is protected.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100180
|
||
* include/experimental/io_context (io_context): Define
|
||
dummy_pollfd type so that most member functions still compile
|
||
without <poll.h> and struct pollfd.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/io_context (io_context::async_wait): Add
|
||
comment.
|
||
* include/experimental/socket (basic_socket::async_connect):
|
||
Cast wait_type constant to int.
|
||
(basic_datagram_socket::async_receive): Likewise.
|
||
(basic_datagram_socket::async_receive_from): Likewise.
|
||
(basic_datagram_socket::async_send): Likewise.
|
||
(basic_datagram_socket::async_send_to): Likewise.
|
||
(basic_stream_socket::async_receive): Likewise.
|
||
(basic_stream_socket::async_send): Likewise. Use io_context
|
||
parameter directly, instead of via an executor.
|
||
(basic_socket_acceptor::async_accept): Likewise.
|
||
|
||
2021-08-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/socket (socket_base::shutdown_type):
|
||
(socket_base::wait_type, socket_base::message_flags):
|
||
Remove enumerators. Initialize constants directly with desired
|
||
values.
|
||
(socket_base::message_flags): Make all operators constexpr and
|
||
noexcept.
|
||
* testsuite/util/testsuite_common_types.h (test_bitmask_values):
|
||
New test utility.
|
||
* testsuite/experimental/net/socket/socket_base.cc: New test.
|
||
|
||
2021-08-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/ranges (basic_istream_view): Add default template
|
||
argument.
|
||
* testsuite/std/ranges/istream_view.cc: Check it.
|
||
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2020.xml: Move row earlier in table.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100139
|
||
* doc/xml/manual/status_cxx2020.xml: Add P1739R4 to status table.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-08-17 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
Backported from master:
|
||
2021-08-17 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose,
|
||
continued.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101866
|
||
* testsuite/experimental/random/randint.cc: Loop and retry if
|
||
reseed() produces the same sequence.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101510
|
||
* src/c++17/fs_ops.cc (fs::create_directories): Use status
|
||
instead of symlink_status.
|
||
* src/filesystem/ops.cc (fs::create_directories): Likewise.
|
||
* testsuite/27_io/filesystem/operations/create_directories.cc:
|
||
Check symlink to existing directory.
|
||
* testsuite/27_io/filesystem/operations/create_directory.cc: Do
|
||
not test with symlinks on Windows.
|
||
* testsuite/experimental/filesystem/operations/create_directories.cc:
|
||
Check symlink to existing directory.
|
||
* testsuite/experimental/filesystem/operations/create_directory.cc:
|
||
Do not test with symlinks on Windows.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101510
|
||
* src/c++17/fs_ops.cc (create_dir): Adjust whitespace.
|
||
* testsuite/27_io/filesystem/operations/create_directory.cc:
|
||
Test creating directory with name of existing symlink to
|
||
directory.
|
||
* testsuite/experimental/filesystem/operations/create_directory.cc:
|
||
Likewise.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101056
|
||
* libsupc++/compare (compare_partial_order_fallback): Add
|
||
constraint using reversed parameter order, as per LWG 3465.
|
||
* testsuite/18_support/comparisons/algorithms/fallback.cc:
|
||
Adjust expected result.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* libsupc++/compare (__decayed_same_as): New helper concept.
|
||
(strong_order, weak_order, partial_order): Constrain with new
|
||
concept instead of using static_assert.
|
||
(compare_strong_order_fallback, compare_weak_order_fallback)
|
||
(compare_partial_order_fallback): Likewise. Do not deduce return
|
||
types. Remove redundant if-constexpr checks.
|
||
* testsuite/18_support/comparisons/algorithms/fallback.cc: New test.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/doxygen/doxygroups.cc: Fix docs for std::literals.
|
||
* doc/doxygen/user.cfg.in: Exclude the Networking TS header.
|
||
Add some more predefined macros.
|
||
* include/bits/fs_fwd.h: Move @addtogroup commands inside
|
||
namespaces. Add better documentation.
|
||
* include/bits/fs_path.h: Likewise.
|
||
* include/experimental/bits/fs_fwd.h: Likewise.
|
||
* include/experimental/bits/fs_path.h: Likewise.
|
||
* include/ext/throw_allocator.h: Fix typo and improve docs.
|
||
* include/std/chrono: Move @addtogroup commands.
|
||
* include/std/system_error: Move @addtogroup commands.
|
||
* libsupc++/exception: Improve documentation.
|
||
* libsupc++/exception.h: Add @since documentation.
|
||
|
||
2021-08-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101258
|
||
* doc/doxygen/user.cfg.in (INPUT): Add <experimental/simd>.
|
||
(COLS_IN_ALPHA_INDEX): Remove obsolete tag.
|
||
(PREDEFINED): Add/fix some more macros that need to be expanded.
|
||
* include/bits/random.h: Stop Doxygen from documenting internal
|
||
implementation details.
|
||
* include/bits/random.tcc: Likewise.
|
||
* include/bits/this_thread_sleep.h: Fix @file name.
|
||
* include/experimental/bits/simd.h: Add to Doxygen group. Do not
|
||
document internal implementation details.
|
||
* include/experimental/bits/simd_detail.h: Do not document
|
||
internal implementation details.
|
||
* include/experimental/simd: Define Doxygen groups.
|
||
* include/experimental/type_traits: Improve documentation for
|
||
the header file. Define groups. Use @since commands.
|
||
* include/std/scoped_allocator (scoped_allocator_adaptor): Move
|
||
declaration before undocumented region.
|
||
* include/std/type_traits (true_type, false_type): Use using
|
||
declaration instead of typedef.
|
||
(is_invocable_v, is_nothrow_invocable_v, is_invocable_r_v)
|
||
(is_nothrow_invocable_r_v): Move definitions next to other C++17
|
||
variable templates.
|
||
Do not document internal implementation details. Move misplaced
|
||
group-end command. Define group for variable templates.
|
||
* include/std/variant: Do not document internal implementation
|
||
details.
|
||
* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
|
||
line number.
|
||
|
||
2021-07-28 Release Manager
|
||
|
||
* GCC 11.2.0 released.
|
||
|
||
2021-07-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
|
||
Increase dg-timeout-factor to 4. Fix -Wunused-parameter
|
||
warnings. Replace bitwise AND with logical AND in loop
|
||
condition.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
|
||
Replace bitwise AND with logical AND in loop condition.
|
||
* testsuite/util/pstl/test_utils.h: Remove unused parameter
|
||
names.
|
||
|
||
2021-07-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_util.h (subrange): Add __size_type typedef
|
||
and use it to simplify declarations.
|
||
(subrange(i, s, n)): Remove assertion.
|
||
* testsuite/std/ranges/subrange/constexpr.cc: New test.
|
||
|
||
2021-07-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101427
|
||
* include/std/tuple (tuple_element): Improve static_assert text.
|
||
(__get_helper): Add deleted overload.
|
||
(get<i>(tuple<T...>&&), get<i>(const tuple<T...>&&)): Use
|
||
__get_helper directly.
|
||
(__get_helper2): Remove.
|
||
(__find_uniq_type_in_pack): New constexpr helper function.
|
||
(get<T>): Use __find_uniq_type_in_pack and __get_helper instead
|
||
of __get_helper2.
|
||
* testsuite/20_util/tuple/element_access/get_neg.cc: Adjust
|
||
expected errors.
|
||
* testsuite/20_util/tuple/element_access/101427.cc: New test.
|
||
|
||
2021-07-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/iterator_concepts.h (__cust_access::__decay_copy):
|
||
Replace with function object.
|
||
(__cust_access::__member_begin, ___cust_access::_adl_begin): Use
|
||
__decay_copy unqualified.
|
||
* include/bits/ranges_base.h (__member_end, __adl_end):
|
||
Likewise. Use __range_iter_t for type of ranges::begin.
|
||
(__member_rend): Use correct value category for rbegin argument.
|
||
(__member_data): Use __decay_copy unqualified.
|
||
(__begin_data): Use __range_iter_t for type of ranges::begin.
|
||
|
||
2021-07-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_base.h (ranges::empty): Check whether
|
||
conversion to bool can throw.
|
||
* testsuite/std/ranges/access/empty.cc: Check for correct
|
||
noexcept-specifier.
|
||
|
||
2021-07-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/simd: Do not define anything pre-C++17.
|
||
|
||
2021-07-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR c++/101361
|
||
* include/std/string_view (ends_with): Use traits_type::compare
|
||
directly.
|
||
|
||
2021-07-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/string_view: Only include <bits/ranges_base.h>
|
||
once, and only for C++20 and later.
|
||
|
||
2021-07-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-07-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101411
|
||
* include/std/span (as_writable_bytes): Add requires-clause.
|
||
* testsuite/23_containers/span/101411.cc: New test.
|
||
|
||
2021-07-13 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100387
|
||
* include/bits/ranges_algo.h (__minmax_fn::operator()): Rewrite
|
||
to limit comparison complexity to 3*N/2.
|
||
(__minmax_element_fn::operator()): Likewise.
|
||
(shift_right): Avoid premature std::move of __result.
|
||
* testsuite/25_algorithms/minmax/constrained.cc (test04, test05):
|
||
New tests.
|
||
* testsuite/25_algorithms/minmax_element/constrained.cc (test02):
|
||
Likewise.
|
||
|
||
2021-06-22 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2021-06-22 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
PR libstdc++/100806
|
||
* include/bits/semaphore_base.h (__atomic_semaphore::_M_release):
|
||
Force _M_release() to wake all waiting threads.
|
||
* testsuite/30_threads/semaphore/100806.cc: New test.
|
||
|
||
2021-06-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/95833
|
||
* include/std/numeric (reduce(Iter, Iter, T, BinaryOp)): Replace
|
||
incorrect static_assert with ones matching the 'Mandates'
|
||
conditions in the standard.
|
||
* testsuite/26_numerics/reduce/95833.cc: New test.
|
||
|
||
2021-06-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string/cons/char/1.cc: Use
|
||
diagnostic pragma to suppress -Wstringop-overread error.
|
||
|
||
2021-06-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/91488
|
||
* include/bits/basic_string.h (__cpp_lib_constexpr_string): Only
|
||
define C++20 value when std::is_constant_evaluated is available.
|
||
* include/bits/char_traits.h (__cpp_lib_constexpr_char_traits):
|
||
Likewise.
|
||
(__constant_string_p, __constant_array_p): Give external
|
||
linkage.
|
||
* include/std/version (__cpp_lib_constexpr_char_traits)
|
||
(__cpp_lib_constexpr_string): Only define C++20 values when
|
||
is_constant_evaluated is available.
|
||
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-17 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100940
|
||
* include/std/ranges (__adaptor::_Partial): For the "simple"
|
||
forwarding partial specializations, also require that
|
||
the extra arguments are trivially copyable.
|
||
* testsuite/std/ranges/adaptors/100577.cc (test04): New test.
|
||
|
||
2021-06-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-17 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100940
|
||
* include/std/ranges (__adaptor::_RangeAdaptor): Document the
|
||
template form of _S_has_simple_extra_args.
|
||
(__adaptor::__adaptor_has_simple_extra_args): Add _Args template
|
||
parameter pack. Try to treat _S_has_simple_extra_args as a
|
||
variable template parameterized by _Args.
|
||
(__adaptor::_Partial): Pass _Arg/_Args to the constraint
|
||
__adaptor_has_simple_extra_args.
|
||
(views::_Take::_S_has_simple_extra_args): Templatize according
|
||
to the type of the extra argument.
|
||
(views::_Drop::_S_has_simple_extra_args): Likewise.
|
||
(views::_Split::_S_has_simple_extra_args): Define.
|
||
* testsuite/std/ranges/adaptors/100577.cc (test01, test02):
|
||
Adjust after changes to _S_has_simple_extra_args mechanism.
|
||
(test03): Define.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100894
|
||
* include/std/type_traits (__common_ref_impl<X&, Y&>): Only
|
||
use the type if it's a reference.
|
||
* testsuite/20_util/common_reference/100894.cc: New test.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/random.tcc (__representable_as_double)
|
||
(__p1_representable_as_double): Add "" to static asserts.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/experimental/filesystem/path/native/conv_c++23.cc:
|
||
Add dg-require-filesystem-ts directive.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101034
|
||
* include/std/any (any(in_place_t<T>, initializer_list<U>, A&&...))
|
||
(any::emplace<T>(initializer_list<U>, A&&...)): Fix constraint
|
||
to use lvalue.
|
||
* testsuite/20_util/any/cons/101034.cc: New test.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/headers/c++2017/all_attributes.cc: Add
|
||
-std=gnu++17 option.
|
||
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/101055
|
||
* include/std/tuple: Use reserved form of attribute name.
|
||
* testsuite/17_intro/headers/c++2011/all_attributes.cc: Add
|
||
check for no_unique_address.
|
||
* testsuite/17_intro/headers/c++2014/all_attributes.cc:
|
||
Likewise.
|
||
* testsuite/17_intro/headers/c++2017/all_attributes.cc:
|
||
Likewise.
|
||
|
||
2021-06-14 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100475
|
||
* include/std/ranges (__box::__box): Use non-list-initialization
|
||
in member initializer list of in-place constructor of the
|
||
partial specialization for semiregular types.
|
||
(__box::operator->): Use std::__addressof.
|
||
* testsuite/std/ranges/adaptors/detail/semiregular_box.cc
|
||
(test02): New test.
|
||
* testsuite/std/ranges/single_view.cc (test04): New test.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_path.h (operator==, operator<=>): Use new
|
||
_S_compare function.
|
||
(path::_S_compare): New function to call path::compare in a
|
||
context where path::iterator is complete.
|
||
* include/experimental/bits/fs_path.h (operator<, operator==):
|
||
Define after path::iterator is complete.
|
||
* testsuite/27_io/filesystem/path/native/conv_c++23.cc: New
|
||
test.
|
||
* testsuite/experimental/filesystem/path/native/conv_c++23.cc:
|
||
New test.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/propagate_const (swap): Constrain.
|
||
* testsuite/experimental/propagate_const/swap/lwg3413.cc: New test.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100982
|
||
* include/std/optional (optional::operator=(const optional<U>&)):
|
||
Fix value category used in is_assignable check.
|
||
* testsuite/20_util/optional/assignment/100982.cc: New test.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98842
|
||
* include/std/optional (operator<=>(const optional<T>& const U&)):
|
||
Add missing constraint and add workaround for template
|
||
recursion.
|
||
* testsuite/20_util/optional/relops/three_way.cc: Check that
|
||
type without equality comparison cannot be compared when wrapped
|
||
in std::optional.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100824
|
||
* include/bits/ranges_base.h (_SSize): Return signed type.
|
||
* testsuite/std/ranges/access/ssize.cc: Check with __int128.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_base.h (_SSize): Return the result of
|
||
ranges::size converted to the wider of make-signed-like-t<S> and
|
||
ptrdiff_t, rather than the ranges different type.
|
||
* testsuite/std/ranges/access/ssize.cc: Adjust expected result
|
||
for an iota_view that uses an integer class type for its
|
||
difference_type.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100824
|
||
* include/bits/ranges_base.h (__member_data): Use __decay_copy.
|
||
* testsuite/std/ranges/access/data.cc: Add testcase from PR.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100824
|
||
* include/bits/iterator_concepts.h (__detail::__decay_copy)
|
||
(__detail::__member_begin, __detail::__adl_begin): Move to
|
||
namespace ranges::__cust_access.
|
||
(__detail::__ranges_begin): Likewise, and rename to __begin.
|
||
Remove redundant static assertion.
|
||
* include/bits/ranges_base.h (_Begin, _End, _RBegin, _REnd):
|
||
Use lvalue in noexcept specifier.
|
||
(__as_const): Add non-deduced parameter for value category.
|
||
(_CBegin, _CEnd, _CRBegin, _CREnd, _CData): Adjust uses of
|
||
__as_const.
|
||
(__member_size, __adl_size, __member_empty, __size0_empty):
|
||
(__eq_iter_empty, __adl_data): Use lvalue objects in
|
||
requirements.
|
||
(__sentinel_size): Likewise. Add check for conversion to
|
||
unsigned-like.
|
||
(__member_data): Allow non-lvalue types to satisfy the concept,
|
||
but use lvalue object in requirements.
|
||
(_Size, _SSize): Remove forwarding to always use an lvalue.
|
||
(_Data): Likewise. Add static assertion for arrays.
|
||
* testsuite/std/ranges/access/cdata.cc: Adjust expected
|
||
behaviour for rvalues. Add negative tests for ill-formed
|
||
expressions.
|
||
* testsuite/std/ranges/access/data.cc: Likewise.
|
||
* testsuite/std/ranges/access/empty.cc: Adjust expected
|
||
behaviour for rvalues.
|
||
* testsuite/std/ranges/access/size.cc: Likewise.
|
||
|
||
2021-06-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2020.xml:
|
||
* doc/html/*: Regenerate.
|
||
* include/bits/hashtable.h (__cpp_lib_generic_unordered_lookup):
|
||
Define.
|
||
* include/std/version (__cpp_lib_generic_unordered_lookup):
|
||
Define.
|
||
* testsuite/23_containers/unordered_map/operations/1.cc: Check
|
||
feature test macro.
|
||
* testsuite/23_containers/unordered_set/operations/1.cc:
|
||
Likewise.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-03 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100577
|
||
* include/std/ranges (_RangeAdaptorClosure): Document
|
||
_S_has_simple_call_op mechanism.
|
||
(_RangeAdaptor): Document _S_has_simple_extra_args mechanism.
|
||
(__closure_has_simple_call_op): New concept.
|
||
(__adaptor_has_simple_extra_args): Likewise.
|
||
(_Partial<_Adaptor, _Args...>): New partial specialization.
|
||
(_Partial<_Adaptor, _Arg>): Likewise.
|
||
(_Pipe<_Lhs, _Rhs>): Likewise.
|
||
(views::_All::_S_has_simple_call_op): Define to true.
|
||
(views::_Filter::_S_has_simple_extra_args): Likewise.
|
||
(views::_Transform::_S_has_simple_extra_args): Likewise.
|
||
(views::_Take::_S_has_simple_extra_args): Likewise.
|
||
(views::_TakeWhile::_S_has_simple_extra_args): Likewise.
|
||
(views::_Drop::_S_has_simple_extra_args): Likewise.
|
||
(views::_DropWhile::_S_has_simple_extra_args): Likewise.
|
||
(views::_Join::_S_has_simple_call_op): Likewise.
|
||
(views::_Split): Document why we don't define
|
||
_S_has_simple_extra_args to true for this adaptor.
|
||
(views::_Common::_S_has_simple_call_op): Define to true.
|
||
(views::_Reverse::_S_has_simple_call_op): Likewise.
|
||
(views::_Elements::_S_has_simple_call_op): Likewise.
|
||
* testsuite/std/ranges/adaptors/100577.cc: New test.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-03 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100770
|
||
* include/bits/ranges_algo.h (__detail::__can_reread_output):
|
||
Factor out this concept from ...
|
||
(__unique_copy_fn::operator()): ... here. Use the concept
|
||
throughout.
|
||
* testsuite/std/ranges/range.cc: Remove now ill-formed use
|
||
of range_value_t on an output_range.
|
||
* testsuite/util/testsuite_iterators.h (output_iterator_wrapper):
|
||
Define value_type, pointer and reference member types to void.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-21 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100690
|
||
* include/std/ranges (iota_view::_Sentinel::_M_distance_from):
|
||
Split out this member function from ...
|
||
(iota_view::_Sentinel::operator-): ... here, for sake of access
|
||
control.
|
||
* testsuite/std/ranges/iota/iota_view.cc (test05): New test.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-06 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (filter_view::_Iterator::base): Make the
|
||
const& overload unconstrained and return a const reference as
|
||
per LWG 3533. Make unconditionally noexcept.
|
||
(transform_view::_Iterator::base): Likewise.
|
||
(elements_view::_Iterator::base): Likewise.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-06 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/stl_iterator.h (move_iterator::base): Make the
|
||
const& overload unconstrained and return a const reference as
|
||
per LWG 3391. Make unconditionally noexcept.
|
||
(counted_iterator::base): Likewise.
|
||
* testsuite/24_iterators/move_iterator/lwg3391.cc: New test.
|
||
* testsuite/24_iterators/move_iterator/move_only.cc: Adjust
|
||
has_member_base concept to decay-copy the result of base().
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100631
|
||
* include/std/ranges (elements_view::_Sentinel::operator-): Use
|
||
_M_distance_from in the other operator- overload too.
|
||
* testsuite/std/ranges/adaptors/elements.cc (test06): Augment test.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-18 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100631
|
||
* include/std/ranges (elements_view::_Iterator): Also befriend
|
||
_Sentinel<!_Const>.
|
||
(elements_view::_Sentinel::_M_equal): Templatize.
|
||
(elements_view::_Sentinel::_M_distance_from): Split out from ...
|
||
(elements_view::_Sentinel::operator-): ... here. Depend on
|
||
_Base2 instead of _Base in the return type.
|
||
* testsuite/std/ranges/adaptors/elements.cc (test06, test07):
|
||
New tests.
|
||
|
||
2021-06-10 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-20 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100639
|
||
* include/bits/stl_iterator.h (reverse_iterator::difference_type):
|
||
In C++20 mode, define in terms of iter_difference_t as per P0896R4.
|
||
(reverse_iterator::reference): Likewise, but with iter_reference_t.
|
||
(reverse_iterator::value_type): Likewise, but with iter_value_t.
|
||
* testsuite/std/ranges/adaptors/reverse.cc (test08): New test.
|
||
* testsuite/24_iterators/reverse_iterator/100639.cc: New test.
|
||
|
||
2021-06-09 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2021-06-09 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
* testsuite/29_atomics/atomic_ref/wait_notify.cc: Guard
|
||
test logic with constexpr check for is_always_lock_free.
|
||
|
||
2021-06-08 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2021-06-08 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
PR libstdc++/100889
|
||
* include/bits/atomic_base.h (atomic_ref<_Tp*>::wait):
|
||
Change parameter type from _Tp to _Tp*.
|
||
* testsuite/29_atomics/atomic_ref/wait_notify.cc: Extend
|
||
coverage of types tested.
|
||
|
||
2021-06-08 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
Backported from master:
|
||
2021-06-08 Thomas Rodgers <rodgert@appliantology.com>
|
||
|
||
* include/std/barrier (__tree_barrier::_M_arrive): Remove
|
||
unnecessary hasher instantiation.
|
||
|
||
2021-06-07 Avi Kivity <avi@scylladb.com>
|
||
|
||
Backported from master:
|
||
2021-06-07 Avi Kivity <avi@scylladb.com>
|
||
|
||
PR libstdc++/100900
|
||
* include/std/ranges (elements_view::__iter_cat::_S_iter_cat):
|
||
Add missing typename.
|
||
|
||
2021-06-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100676
|
||
* include/bits/c++config (__glibcxx_assert_1): Rename to ...
|
||
(__glibcxx_constexpr_assert): ... this.
|
||
(__glibcxx_assert_impl): Use __glibcxx_constexpr_assert.
|
||
(__glibcxx_assert): Define as either __glibcxx_constexpr_assert
|
||
or __glibcxx_assert_impl.
|
||
(__glibcxx_assert_2): Remove
|
||
* include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_AT_F): Use
|
||
__glibcxx_constexpr_assert instead of __glibcxx_assert_1.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
|
||
Adjust expected error.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
|
||
Likewise.
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/span/back_neg.cc: Likewise.
|
||
* testsuite/23_containers/span/front_neg.cc: Likewise.
|
||
* testsuite/23_containers/span/index_op_neg.cc: Likewise.
|
||
|
||
2021-06-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100833
|
||
* include/bits/ranges_base.h (ranges::advance(iter, n, sentinel)):
|
||
Fix return value for no-op case.
|
||
* testsuite/24_iterators/range_operations/advance.cc: Test
|
||
return values of three-argument overload.
|
||
|
||
2021-06-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100768
|
||
* include/bits/ranges_base.h (advance, distance, next, prev):
|
||
Replace function templates with function objects.
|
||
* testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
|
||
Adjust for changes to function objects.
|
||
* testsuite/std/ranges/adaptors/elements.cc: Add using
|
||
declarations for names from namespace ranges.
|
||
* testsuite/std/ranges/adaptors/transform.cc: Likewise.
|
||
* testsuite/24_iterators/range_operations/100768.cc: New test.
|
||
|
||
2021-06-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-06-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99453
|
||
* python/Makefile.am: Use archive name for printer hook if no
|
||
dynamic library name is available.
|
||
* python/Makefile.in: Regenerate.
|
||
|
||
2021-05-28 David Edelsohn <dje.gcc@gmail.com>
|
||
|
||
Backported from master:
|
||
2021-04-24 David Edelsohn <dje.gcc@gmail.com>
|
||
|
||
* testsuite/lib/dg-options.exp (atomic_link_flags): New.
|
||
(add_options_for_libatomic): Use atomic_link_flags.
|
||
|
||
2021-05-28 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (__detail::__non_propating_cache): Define
|
||
as per P2328.
|
||
(join_view): Remove constraints on the value and reference types
|
||
of the wrapped iterator type as per P2328.
|
||
(join_view::_Iterator::_M_satisfy): Adjust as per P2328.
|
||
(join_view::_Iterator::operator++): Likewise.
|
||
(join_view::_M_inner): Use __non_propating_cache as per P2328.
|
||
Remove now-redundant use of __maybe_present_t.
|
||
* testsuite/std/ranges/adaptors/join.cc: Include <array>.
|
||
(test10): New test.
|
||
|
||
2021-05-28 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-24 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100479
|
||
* include/std/ranges (__detail::__non_propagating_cache): Move
|
||
definition up to before that of _CachedPosition. Make base
|
||
class _Optional_base protected instead of private. Add const
|
||
overload for operator*.
|
||
(__detail::_CachedPosition): Rewrite the partial specialization
|
||
for forward ranges as a derived class of __non_propagating_cache.
|
||
Remove the size constraint on the partial specialization for
|
||
random access ranges. Add copy/move/copy-assignment/move-assignment
|
||
members to the offset partial specialization for random
|
||
access ranges that propagate the cached value but additionally
|
||
invalidate it in the source object on move.
|
||
* testsuite/std/ranges/adaptors/100479.cc: New test.
|
||
|
||
2021-05-20 Joern Rennecke <joern.rennecke@riscy-ip.com>
|
||
|
||
PR libstdc++/100361
|
||
* include/std/charconv (to_chars): Hide the overloads for
|
||
floating-point types for 16 bit targets.
|
||
* src/c++17/floating_to_chars.cc: Don't compile for 16 bit targets.
|
||
* testsuite/20_util/to_chars/double.cc: Run this test only on
|
||
size32plus targets.
|
||
* testsuite/20_util/to_chars/float.cc: Likewise.
|
||
* testsuite/20_util/to_chars/long_double.cc: Likewise.
|
||
|
||
2021-05-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-17 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100630
|
||
* include/experimental/bits/fs_path.h (__is_constructible_from):
|
||
Test construction from a const lvalue, not an rvalue.
|
||
* testsuite/27_io/filesystem/path/construct/100630.cc: New test.
|
||
* testsuite/experimental/filesystem/path/construct/100630.cc:
|
||
New test.
|
||
|
||
2021-05-17 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-05-17 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
* include/bits/atomic_wait.h (__waiter::_M_do_wait_v): loop
|
||
until value change observed.
|
||
(__waiter_base::_M_laundered): New member.
|
||
(__waiter_base::_M_notify): Check _M_laundered to determine
|
||
whether to wake one or all.
|
||
(__detail::__atomic_compare): Return true if call to
|
||
__builtin_memcmp() == 0.
|
||
(__waiter_base::_S_do_spin_v): Adjust predicate.
|
||
* testsuite/29_atomics/atomic/wait_notify/100334.cc: New
|
||
test.
|
||
|
||
2021-05-12 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/ranges_util.h (subrange::subrange): Avoid
|
||
list-initialization in delegating constructor.
|
||
* include/std/ranges (single_view): Replace implicit guide
|
||
with explicit deduction guide that decays its argument.
|
||
(_Single::operator()): Avoid CTAD when constructing the
|
||
single_view object.
|
||
(_Iota::operator()): Avoid list-initialization.
|
||
(__detail::__can_filter_view, _Filter::operator()): Likewise.
|
||
(__detail::__can_transform_view, _Transform::operator()): Likewise.
|
||
(take_view::begin): Likewise.
|
||
(__detail::__can_take_view, _Take::operator()): Likewise.
|
||
(__detail::__can_take_while_view, _TakeWhile::operator()): Likewise.
|
||
(__detail::__can_drop_view, _Drop::operator()): Likewise.
|
||
(__detail::__can_drop_while_view, _DropWhile::operator()): Likewise.
|
||
(split_view::split_view): Use views::single when initializing
|
||
_M_pattern.
|
||
(__detail::__can_split_view, _Split::operator()): Avoid
|
||
list-initialization.
|
||
(_Counted::operator()): Likewise.
|
||
* testsuite/std/ranges/p2367.cc: New test.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/headers/memory/synopsis.cc: Define C++98
|
||
alternative for macro.
|
||
* testsuite/20_util/shared_ptr/creation/99006.cc: Add effective
|
||
target keyword.
|
||
* testsuite/25_algorithms/copy/debug/99402.cc: Avoid C++11
|
||
syntax.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/allocator.h (allocator<void>) [C++20]: Add
|
||
missing noexcept to constructor. Restore missing POCMA and
|
||
is_always_equal_traits.
|
||
[C++17]: Make construct and destroy members private and
|
||
declare allocator_traits as a friend.
|
||
* include/bits/memoryfwd.h (allocator_traits): Declare.
|
||
* include/ext/malloc_allocator.h (malloc_allocator::allocate):
|
||
Add nodiscard attribute. Add static assertion for LWG 3307.
|
||
* include/ext/new_allocator.h (new_allocator::allocate): Add
|
||
static assertion for LWG 3307.
|
||
* testsuite/20_util/allocator/void.cc: Check that converting
|
||
constructor is noexcept. Check for propagation traits and
|
||
size_type and difference_type. Check that pointer and
|
||
const_pointer are gone in C++20.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/stop_token: Remove TODO comment.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)):
|
||
Initialize a non-reference deleter from an rvalue, as per LWG
|
||
3548.
|
||
(__shared_ptr::_UniqCompatible): Add missing constraint.
|
||
* testsuite/20_util/shared_ptr/cons/lwg3548.cc: New test.
|
||
* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Check
|
||
constraints.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/headers/c++2017/all_attributes.cc: Remove
|
||
-std=gnu++17 from dg-options directive.
|
||
* testsuite/17_intro/headers/c++2017/all_no_exceptions.cc:
|
||
Likewise.
|
||
* testsuite/17_intro/headers/c++2017/all_pedantic_errors.cc:
|
||
Likewise.
|
||
* testsuite/17_intro/headers/c++2017/operator_names.cc:
|
||
Likewise.
|
||
* testsuite/17_intro/headers/c++2017/parallel_mode.cc: Likewise.
|
||
* testsuite/17_intro/headers/c++2017/stdc++.cc: Likewise.
|
||
* testsuite/17_intro/headers/c++2017/stdc++_multiple_inclusion.cc:
|
||
Likewise.
|
||
* testsuite/18_support/aligned_alloc/aligned_alloc.cc: Likewise.
|
||
* testsuite/18_support/byte/81076.cc: Likewise.
|
||
* testsuite/18_support/byte/global_neg.cc: Likewise.
|
||
* testsuite/18_support/byte/ops.cc: Likewise.
|
||
* testsuite/18_support/byte/requirements.cc: Likewise.
|
||
* testsuite/18_support/headers/cfloat/values_c++17.cc: Likewise.
|
||
* testsuite/18_support/launder/1.cc: Likewise.
|
||
* testsuite/18_support/launder/nodiscard.cc: Likewise.
|
||
* testsuite/18_support/launder/requirements.cc: Likewise.
|
||
* testsuite/18_support/launder/requirements_neg.cc: Likewise.
|
||
* testsuite/18_support/new_aligned.cc: Likewise.
|
||
* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
|
||
Likewise.
|
||
* testsuite/19_diagnostics/error_code/is_error_code_v.cc:
|
||
Likewise.
|
||
* testsuite/19_diagnostics/error_condition/hash.cc: Likewise.
|
||
* testsuite/20_util/addressof/requirements/constexpr.cc:
|
||
Likewise.
|
||
* testsuite/20_util/as_const/1.cc: Likewise.
|
||
* testsuite/20_util/as_const/rvalue_neg.cc: Likewise.
|
||
* testsuite/20_util/bind/83427.cc: Likewise.
|
||
* testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
|
||
* testsuite/20_util/bool_constant/requirements.cc: Likewise.
|
||
* testsuite/20_util/duration/arithmetic/constexpr_c++17.cc:
|
||
Likewise.
|
||
* testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
|
||
Likewise.
|
||
* testsuite/20_util/duration_cast/rounding.cc: Likewise.
|
||
* testsuite/20_util/enable_shared_from_this/members/weak_from_this.cc:
|
||
Likewise.
|
||
* testsuite/20_util/from_chars/1_neg.cc: Likewise.
|
||
* testsuite/20_util/from_chars/requirements.cc: Likewise.
|
||
* testsuite/20_util/function/91456.cc: Likewise.
|
||
* testsuite/20_util/function/cons/deduction.cc: Likewise.
|
||
* testsuite/20_util/function_objects/83607.cc: Likewise.
|
||
* testsuite/20_util/function_objects/invoke/59768.cc: Likewise.
|
||
* testsuite/20_util/function_objects/mem_fn/80478.cc: Likewise.
|
||
* testsuite/20_util/function_objects/not_fn/1.cc: Likewise.
|
||
* testsuite/20_util/function_objects/not_fn/87538.cc: Likewise.
|
||
* testsuite/20_util/has_unique_object_representations/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/has_unique_object_representations/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/has_unique_object_representations/value.cc:
|
||
Likewise.
|
||
* testsuite/20_util/hash/nullptr.cc: Likewise.
|
||
* testsuite/20_util/in_place/requirements.cc: Likewise.
|
||
* testsuite/20_util/is_aggregate/incomplete_neg.cc: Likewise.
|
||
* testsuite/20_util/is_aggregate/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_aggregate/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_aggregate/value.cc: Likewise.
|
||
* testsuite/20_util/is_invocable/83395.cc: Likewise.
|
||
* testsuite/20_util/is_invocable/91456.cc: Likewise.
|
||
* testsuite/20_util/is_invocable/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_invocable/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_invocable/value.cc: Likewise.
|
||
* testsuite/20_util/is_literal_type/deprecated-1z.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_constructible/94003.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_invocable/83395.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_invocable/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_nothrow_invocable/requirements/typedefs.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_invocable/value.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable_with/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_nothrow_swappable_with/value.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_swappable/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_swappable/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_swappable/value.cc: Likewise.
|
||
* testsuite/20_util/is_swappable_with/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_swappable_with/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/is_swappable_with/value.cc: Likewise.
|
||
* testsuite/20_util/logical_traits/83134.cc: Likewise.
|
||
* testsuite/20_util/logical_traits/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/20_util/logical_traits/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/20_util/logical_traits/value.cc: Likewise.
|
||
* testsuite/20_util/pair/cons/deduction.cc: Likewise.
|
||
* testsuite/20_util/pair/swap_cxx17.cc: Likewise.
|
||
* testsuite/20_util/ratio/requirements/ratio_equal_v.cc:
|
||
Likewise.
|
||
* testsuite/20_util/reference_wrapper/83427.cc: Likewise.
|
||
* testsuite/20_util/reference_wrapper/deduction.cc: Likewise.
|
||
* testsuite/20_util/shared_ptr/casts/reinterpret.cc: Likewise.
|
||
* testsuite/20_util/shared_ptr/cons/deduction.cc: Likewise.
|
||
* testsuite/20_util/shared_ptr/requirements/weak_type.cc:
|
||
Likewise.
|
||
* testsuite/20_util/time_point/arithmetic/constexpr.cc:
|
||
Likewise.
|
||
* testsuite/20_util/time_point_cast/rounding.cc: Likewise.
|
||
* testsuite/20_util/to_chars/3.cc: Likewise.
|
||
* testsuite/20_util/to_chars/chars_format.cc: Likewise.
|
||
* testsuite/20_util/to_chars/lwg3266.cc: Likewise.
|
||
* testsuite/20_util/to_chars/requirements.cc: Likewise.
|
||
* testsuite/20_util/tuple/78939.cc: Likewise.
|
||
* testsuite/20_util/tuple/apply/1.cc: Likewise.
|
||
* testsuite/20_util/tuple/apply/2.cc: Likewise.
|
||
* testsuite/20_util/tuple/cons/deduction.cc: Likewise.
|
||
* testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise.
|
||
* testsuite/20_util/tuple/make_from_tuple/2.cc: Likewise.
|
||
* testsuite/20_util/tuple/swap_cxx17.cc: Likewise.
|
||
* testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
|
||
* testsuite/20_util/unique_ptr/cons/deduction_neg.cc: Likewise.
|
||
* testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
|
||
Likewise.
|
||
* testsuite/20_util/variable_templates_for_traits.cc: Likewise.
|
||
* testsuite/20_util/void_t/1.cc: Likewise.
|
||
* testsuite/20_util/weak_ptr/cons/deduction.cc: Likewise.
|
||
* testsuite/24_iterators/container_access.cc: Likewise.
|
||
* testsuite/24_iterators/headers/iterator/range_access_c++17.cc:
|
||
Likewise.
|
||
* testsuite/24_iterators/headers/iterator/synopsis_c++17.cc:
|
||
Likewise.
|
||
* testsuite/24_iterators/range_access/range_access_cpp17.cc:
|
||
Likewise.
|
||
* testsuite/24_iterators/range_access/range_access_cpp17_neg.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/gcd/gcd_neg.cc: Likewise.
|
||
* testsuite/26_numerics/headers/cmath/functions_std_c++17.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/headers/cmath/hypot.cc: Likewise.
|
||
* testsuite/26_numerics/headers/cmath/special_functions_global.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/lcm/1.cc: Likewise.
|
||
* testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
|
||
* testsuite/26_numerics/valarray/deduction.cc: Likewise.
|
||
* testsuite/27_io/basic_ostream/inserters_other/char/lwg2221.cc:
|
||
Likewise.
|
||
* testsuite/27_io/manipulators/standard/char/quoted_sv.cc:
|
||
Likewise.
|
||
* testsuite/27_io/manipulators/standard/wchar_t/quoted_sv.cc:
|
||
Likewise.
|
||
* testsuite/27_io/types/4.cc: Likewise.
|
||
* testsuite/28_regex/basic_regex/ctors/deduction.cc: Likewise.
|
||
* testsuite/libstdc++-prettyprinters/91997.cc: Likewise.
|
||
* testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/function_objects/searchers.cc: Remove
|
||
-std=gnu++17 from dg-options directive.
|
||
* testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94540.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct/94831.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/94540.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unique_ptr/specialized_algorithms/swap_cxx17.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/clamp/1.cc: Likewise.
|
||
* testsuite/25_algorithms/clamp/2.cc: Likewise.
|
||
* testsuite/25_algorithms/clamp/constexpr.cc: Likewise.
|
||
* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/1.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/pod.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/for_each/for_each_n.cc: Likewise.
|
||
* testsuite/25_algorithms/for_each/for_each_n_debug.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/sample/1.cc: Likewise.
|
||
* testsuite/25_algorithms/sample/2.cc: Likewise.
|
||
* testsuite/25_algorithms/sample/3.cc: Likewise.
|
||
* testsuite/25_algorithms/sample/81221.cc: Likewise.
|
||
* testsuite/25_algorithms/search/searcher.cc: Likewise.
|
||
* testsuite/26_numerics/exclusive_scan/1.cc: Likewise.
|
||
* testsuite/26_numerics/inclusive_scan/1.cc: Likewise.
|
||
* testsuite/26_numerics/reduce/1.cc: Likewise.
|
||
* testsuite/26_numerics/reduce/2.cc: Likewise.
|
||
* testsuite/26_numerics/transform_exclusive_scan/1.cc: Likewise.
|
||
* testsuite/26_numerics/transform_inclusive_scan/1.cc: Likewise.
|
||
* testsuite/26_numerics/transform_reduce/1.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/23_containers/array/cons/deduction.cc: Remove
|
||
-std=gnu++17 from dg-options directive.
|
||
* testsuite/23_containers/array/cons/deduction_neg.cc: Likewise.
|
||
* testsuite/23_containers/array/element_access/constexpr_c++17.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/array/requirements/constexpr_iter.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/deque/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/deque/modifiers/emplace/cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/forward_list/cons/deduction.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/forward_list/modifiers/emplace_cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/list/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/list/modifiers/emplace/cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/map/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/map/modifiers/extract.cc: Likewise.
|
||
* testsuite/23_containers/map/modifiers/insert/83226.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/map/modifiers/merge.cc: Likewise.
|
||
* testsuite/23_containers/map/modifiers/try_emplace/1.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/multimap/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/multimap/modifiers/merge.cc: Likewise.
|
||
* testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/multiset/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/multiset/modifiers/merge.cc: Likewise.
|
||
* testsuite/23_containers/priority_queue/deduction.cc: Likewise.
|
||
* testsuite/23_containers/queue/deduction.cc: Likewise.
|
||
* testsuite/23_containers/queue/members/emplace_cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/set/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/set/modifiers/extract.cc: Likewise.
|
||
* testsuite/23_containers/set/modifiers/merge.cc: Likewise.
|
||
* testsuite/23_containers/set/modifiers/node_swap.cc: Likewise.
|
||
* testsuite/23_containers/stack/deduction.cc: Likewise.
|
||
* testsuite/23_containers/stack/members/emplace_cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/cons/deduction.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/modifiers/merge.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multimap/cons/deduction.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multimap/modifiers/merge.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/cons/deduction.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/modifiers/merge.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/cons/deduction.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/modifiers/extract.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/modifiers/merge.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/vector/bool/emplace_cxx17_return.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/vector/cons/89164_c++17.cc: Likewise.
|
||
* testsuite/23_containers/vector/cons/deduction.cc: Likewise.
|
||
* testsuite/23_containers/vector/modifiers/emplace/cxx17_return.cc:
|
||
Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/21_strings/basic_string/79162.cc: Remove
|
||
-std=gnu++17 from dg-options directive.
|
||
* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/79162.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/86138.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/9.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/deduction.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/79162.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/86138.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/9.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/deduction.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/hash/hash.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/lwg2758.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/lwg2946.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/data/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/data/char/86169.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/data/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/find/char/5.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operators/char/5.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operators/wchar_t/5.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/capacity/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/capacity/empty_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/char/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/char/nonnull.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/back_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/constexpr.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/front_back_constexpr.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/char/front_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/back_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_constexpr_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/include.cc: Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/94051.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/char/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/literals/types.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/literals/values-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/literals/values.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/swap/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/modifiers/swap/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/char/70483.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/char/nonnull.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/copy/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/char/nonnull.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/char/nonnull.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/substr/char/83511.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/83511.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operators/char/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operators/char/89446.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/operators/wchar_t/89446.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/range_access/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char8_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/traits_neg.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
|
||
* testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
|
||
* testsuite/21_strings/char_traits/requirements/char/99181.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/memory_resource/1.cc: Remove -std=gnu++17
|
||
from dg-options directive.
|
||
* testsuite/20_util/memory_resource/2.cc: Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/1.cc: Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/93208.cc:
|
||
Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/allocate.cc:
|
||
Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/deallocate.cc:
|
||
Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/release.cc:
|
||
Likewise.
|
||
* testsuite/20_util/monotonic_buffer_resource/upstream_resource.cc:
|
||
Likewise.
|
||
* testsuite/20_util/polymorphic_allocator/1.cc: Likewise.
|
||
* testsuite/20_util/polymorphic_allocator/construct_pair.cc:
|
||
Likewise.
|
||
* testsuite/20_util/polymorphic_allocator/resource.cc: Likewise.
|
||
* testsuite/20_util/polymorphic_allocator/select.cc: Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/allocate.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/allocate_single.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/cons.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/cons_single.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/is_equal.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/multithreaded.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/options.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/release.cc:
|
||
Likewise.
|
||
* testsuite/20_util/synchronized_pool_resource/release_single.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/allocate-max-chunks.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/cons.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/is_equal.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/options.cc:
|
||
Likewise.
|
||
* testsuite/20_util/unsynchronized_pool_resource/release.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/types/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/deque/types/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/deque/types/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/forward_list/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/forward_list/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/list/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/list/pmr_typedefs_debug.cc: Likewise.
|
||
* testsuite/23_containers/map/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/map/pmr_typedefs_debug.cc: Likewise.
|
||
* testsuite/23_containers/multimap/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/multimap/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/multiset/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/multiset/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/set/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/set/pmr_typedefs_debug.cc: Likewise.
|
||
* testsuite/23_containers/unordered_map/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_map/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multimap/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multimap/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/pmr_typedefs.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/vector/pmr_typedefs.cc: Likewise.
|
||
* testsuite/23_containers/vector/types/pmr_typedefs_debug.cc:
|
||
Likewise.
|
||
* testsuite/28_regex/match_results/pmr_typedefs.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/29_atomics/atomic/69769.cc: Remove -std=gnu++17 from
|
||
dg-options.
|
||
* testsuite/29_atomics/atomic/is_always_lock_free.cc:
|
||
* testsuite/29_atomics/atomic/requirements/typedefs.cc:
|
||
* testsuite/29_atomics/atomic_integral/is_always_lock_free.cc:
|
||
* testsuite/29_atomics/atomic_integral/requirements/typedefs.cc:
|
||
* testsuite/30_threads/lock_guard/cons/deduction.cc: Likewise.
|
||
* testsuite/30_threads/scoped_lock/cons/1.cc: Likewise.
|
||
* testsuite/30_threads/scoped_lock/cons/deduction.cc: Likewise.
|
||
* testsuite/30_threads/scoped_lock/requirements/explicit_instantiation.cc:
|
||
Likewise.
|
||
* testsuite/30_threads/scoped_lock/requirements/typedefs.cc:
|
||
Likewise.
|
||
* testsuite/30_threads/shared_lock/70766.cc: Likewise.
|
||
* testsuite/30_threads/shared_mutex/cons/1.cc: Likewise.
|
||
* testsuite/30_threads/shared_mutex/cons/assign_neg.cc:
|
||
Likewise.
|
||
* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Likewise.
|
||
* testsuite/30_threads/shared_mutex/requirements/standard_layout.cc:
|
||
Likewise.
|
||
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Likewise.
|
||
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Likewise.
|
||
* testsuite/30_threads/shared_mutex/unlock/1.cc: Likewise.
|
||
* testsuite/30_threads/unique_lock/cons/deduction.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/any/assign/1.cc: Remove -std=gnu++17 from
|
||
dg-options directive.
|
||
* testsuite/20_util/any/assign/2.cc: Likewise.
|
||
* testsuite/20_util/any/assign/emplace.cc: Likewise.
|
||
* testsuite/20_util/any/assign/exception.cc: Likewise.
|
||
* testsuite/20_util/any/assign/self.cc: Likewise.
|
||
* testsuite/20_util/any/cons/1.cc: Likewise.
|
||
* testsuite/20_util/any/cons/2.cc: Likewise.
|
||
* testsuite/20_util/any/cons/90415.cc: Likewise.
|
||
* testsuite/20_util/any/cons/92156.cc: Likewise.
|
||
* testsuite/20_util/any/cons/aligned.cc: Likewise.
|
||
* testsuite/20_util/any/cons/explicit.cc: Likewise.
|
||
* testsuite/20_util/any/cons/in_place.cc: Likewise.
|
||
* testsuite/20_util/any/cons/nontrivial.cc: Likewise.
|
||
* testsuite/20_util/any/make_any.cc: Likewise.
|
||
* testsuite/20_util/any/misc/any_cast.cc: Likewise.
|
||
* testsuite/20_util/any/misc/any_cast_neg.cc: Likewise.
|
||
* testsuite/20_util/any/misc/any_cast_no_rtti.cc: Likewise.
|
||
* testsuite/20_util/any/misc/swap.cc: Likewise.
|
||
* testsuite/20_util/any/modifiers/1.cc: Likewise.
|
||
* testsuite/20_util/any/modifiers/83658.cc: Likewise.
|
||
* testsuite/20_util/any/modifiers/92156.cc: Likewise.
|
||
* testsuite/20_util/any/observers/type.cc: Likewise.
|
||
* testsuite/20_util/any/requirements.cc: Likewise.
|
||
* testsuite/20_util/any/typedefs.cc: Likewise.
|
||
* testsuite/20_util/optional/77288.cc: Likewise.
|
||
* testsuite/20_util/optional/84601.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/1.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/2.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/3.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/4.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/5.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/6.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/7.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/8.cc: Likewise.
|
||
* testsuite/20_util/optional/assignment/9.cc: Likewise.
|
||
* testsuite/20_util/optional/bad_access.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/77727.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/85642.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/copy.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/deduction.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/default.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/move.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/trivial.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/value.cc: Likewise.
|
||
* testsuite/20_util/optional/cons/value_neg.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/cons/default.cc:
|
||
Likewise.
|
||
* testsuite/20_util/optional/constexpr/cons/value.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/in_place.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/make_optional.cc:
|
||
Likewise.
|
||
* testsuite/20_util/optional/constexpr/nullopt.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/observers/1.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/observers/2.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/observers/3.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/observers/4.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/observers/5.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/1.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/2.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/3.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/4.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/5.cc: Likewise.
|
||
* testsuite/20_util/optional/constexpr/relops/6.cc: Likewise.
|
||
* testsuite/20_util/optional/hash.cc: Likewise.
|
||
* testsuite/20_util/optional/in_place.cc: Likewise.
|
||
* testsuite/20_util/optional/make_optional.cc: Likewise.
|
||
* testsuite/20_util/optional/nullopt.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/1.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/2.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/3.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/4.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/5.cc: Likewise.
|
||
* testsuite/20_util/optional/observers/6.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/1.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/2.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/3.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/4.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/5.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/6.cc: Likewise.
|
||
* testsuite/20_util/optional/relops/7.cc: Likewise.
|
||
* testsuite/20_util/optional/requirements.cc: Likewise.
|
||
* testsuite/20_util/optional/swap/1.cc: Likewise.
|
||
* testsuite/20_util/optional/swap/2.cc: Likewise.
|
||
* testsuite/20_util/optional/typedefs.cc: Likewise.
|
||
* testsuite/20_util/variant/80165.cc: Likewise.
|
||
* testsuite/20_util/variant/85183.cc: Likewise.
|
||
* testsuite/20_util/variant/86874.cc: Likewise.
|
||
* testsuite/20_util/variant/87431.cc: Likewise.
|
||
* testsuite/20_util/variant/87619.cc: Likewise.
|
||
* testsuite/20_util/variant/91807.cc: Likewise.
|
||
* testsuite/20_util/variant/any.cc: Likewise.
|
||
* testsuite/20_util/variant/compile.cc: Likewise.
|
||
* testsuite/20_util/variant/deduction.cc: Likewise.
|
||
* testsuite/20_util/variant/exception_safety.cc: Likewise.
|
||
* testsuite/20_util/variant/hash.cc: Likewise.
|
||
* testsuite/20_util/variant/index_type.cc: Likewise.
|
||
* testsuite/20_util/variant/relops/89851.cc: Likewise.
|
||
* testsuite/20_util/variant/relops/90008.cc: Likewise.
|
||
* testsuite/20_util/variant/run.cc: Likewise.
|
||
* testsuite/20_util/variant/visit.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/basic_filebuf/open/char/path.cc: Remove
|
||
-std=gnu++17 from dg-options directive.
|
||
* testsuite/27_io/basic_fstream/cons/char/path.cc: Likewise.
|
||
* testsuite/27_io/basic_fstream/open/char/path.cc: Likewise.
|
||
* testsuite/27_io/basic_ifstream/cons/char/path.cc: Likewise.
|
||
* testsuite/27_io/basic_ifstream/open/char/path.cc: Likewise.
|
||
* testsuite/27_io/basic_ofstream/cons/char/path.cc: Likewise.
|
||
* testsuite/27_io/basic_ofstream/open/char/path.cc: Likewise.
|
||
* testsuite/27_io/filesystem/directory_entry/86597.cc: Likewise.
|
||
* testsuite/27_io/filesystem/directory_entry/lwg3171.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/file_status/1.cc: Likewise.
|
||
* testsuite/27_io/filesystem/filesystem_error/cons.cc: Likewise.
|
||
* testsuite/27_io/filesystem/filesystem_error/copy.cc: Likewise.
|
||
* testsuite/27_io/filesystem/iterators/91067.cc: Likewise.
|
||
* testsuite/27_io/filesystem/iterators/caching.cc: Likewise.
|
||
* testsuite/27_io/filesystem/iterators/directory_iterator.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/iterators/pop.cc: Likewise.
|
||
* testsuite/27_io/filesystem/iterators/recursion_pending.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/absolute.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/all.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/canonical.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/copy.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/copy_file.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/create_directories.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/create_directory.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/create_symlink.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/current_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/equivalent.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/exists.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/file_size.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/last_write_time.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/permissions.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/proximate.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/read_symlink.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/relative.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/remove.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/rename.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/resize_file.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/space.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/status.cc: Likewise.
|
||
* testsuite/27_io/filesystem/operations/symlink_status.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/temp_directory_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/operations/weakly_canonical.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/append/path.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/append/source.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/assign/assign.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/assign/copy.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/compare/compare.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/compare/strings.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/concat/92853.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/concat/94063.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/concat/path.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/concat/strings.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/80762.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/90281.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/90634.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/copy.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/default.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/format.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/locale.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/range.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/construct/string_view.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/extension.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/filename.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/parent_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/relative_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/root_directory.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/root_name.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/root_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/decompose/stem.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/factory/u8path-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/factory/u8path.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/normal.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/normal2.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/proximate.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/relative.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generic/94242.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/generic/generic_string.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generic/utf.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/generic/wchar_t.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/io/dr2989.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/itr/components.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/clear.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/make_preferred.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/remove_filename.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/replace_extension.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/replace_filename.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/modifiers/swap.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/native/alloc.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/native/string-char8_t.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/native/string.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/nonmember/cmp.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/nonmember/hash_value.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/empty.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/query/empty_neg.cc:
|
||
* testsuite/27_io/filesystem/path/query/has_extension.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_filename.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_parent_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_relative_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_root_directory.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_root_name.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_root_path.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/query/is_absolute.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/query/is_relative.cc:
|
||
Likewise.
|
||
* testsuite/experimental/filesystem/path/construct/string_view.cc:
|
||
Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc:
|
||
Remove -std=gnu++17 from dg-options.
|
||
* testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc:
|
||
Likewise.
|
||
* testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_merge/merge.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/copy_if.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/copy_move.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/fill.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/generate.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/is_partitioned.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/partition.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/partition_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/remove.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/remove_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/replace.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/replace_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/rotate.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/swap_ranges.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/transform_unary.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/unique.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_modifying_operations/unique_copy_equal.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/adjacent_find.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/all_of.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/any_of.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/count.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/equal.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/find.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/find_first_of.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/find_if.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/for_each.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/none_of.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/reverse.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/reverse_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/includes.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/is_heap.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/is_sorted.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/partial_sort_copy.cc:
|
||
Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/set.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/alg_sorting/sort.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/feature_test-2.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/feature_test-3.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/feature_test-4.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/feature_test-5.cc: Likewise.
|
||
* testsuite/25_algorithms/pstl/feature_test.cc: Likewise.
|
||
* testsuite/26_numerics/pstl/numeric_ops/adjacent_difference.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/pstl/numeric_ops/reduce.cc: Likewise.
|
||
* testsuite/26_numerics/pstl/numeric_ops/scan.cc: Likewise.
|
||
* testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/pstl/numeric_ops/transform_scan.cc:
|
||
Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/scoped_allocator/69293_neg.cc: Add dg-error
|
||
for additional errors in C++20.
|
||
* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
|
||
Likewise.
|
||
* testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/io/dr2989.cc: Likewise.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/variant/compile.cc: Rename 'any' to avoid
|
||
clash with std::any.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/type_traits (remove_cvref_t): Define in terms of
|
||
remove_cvref.
|
||
* testsuite/20_util/remove_cvref/value.cc: Check alias.
|
||
|
||
2021-05-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99006
|
||
* include/bits/shared_ptr.h (allocate_shared): Assert that _Tp
|
||
is not an array type.
|
||
* include/bits/shared_ptr_base.h (__allocate_shared): Likewise.
|
||
* testsuite/20_util/shared_ptr/creation/99006.cc: New test.
|
||
|
||
2021-05-11 Philippe Blain <levraiphilippeblain@gmail.com>
|
||
|
||
Backported from master:
|
||
2021-04-21 Philippe Blain <levraiphilippeblain@gmail.com>
|
||
Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99453
|
||
* python/Makefile.am: Install libstdc++*-gdb.py more robustly.
|
||
* python/Makefile.in: Regenerate.
|
||
|
||
2021-05-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/ryu/LOCAL_PATCHES: Update.
|
||
* src/c++17/ryu/ryu_generic_128.h: Remove extern "C".
|
||
Remove declarations for never-defined functions.
|
||
* testsuite/20_util/to_chars/4.cc: New test.
|
||
|
||
2021-05-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/istream (__rvalue_stream_extraction_t): Replace
|
||
use of __rval_streamable.
|
||
* include/std/ostream (__rvalue_stream_insertion_t): Likewise.
|
||
(__rval_streamable): Remove.
|
||
(_Require_derived_from_ios_base, __derived_from_ios_base): New
|
||
helper for checking constraints.
|
||
* testsuite/27_io/basic_istream/extractors_other/char/4.cc: Fix
|
||
reference to the wrong subclause of the standard.
|
||
* testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostream/inserters_other/char/6.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostream/inserters_other/char/99692.cc:
|
||
New test.
|
||
* testsuite/27_io/filesystem/path/io/dr2989.cc: Adjust pruned
|
||
errors.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/istream (operator>>(Istream&&, x&)): Simplify, as
|
||
per LWG 1203.
|
||
* include/std/ostream (operator<<(Ostream&&, const x&)):
|
||
Likewise.
|
||
* testsuite/27_io/basic_istream/extractors_character/char/lwg2499_neg.cc:
|
||
Adjust dg-error pattern.
|
||
* testsuite/27_io/basic_istream/extractors_character/wchar_t/lwg2499_neg.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_istream/extractors_other/char/4.cc: Define
|
||
is_extractable trait to replace std::__is_extractable. Make it
|
||
work with rvalue streams as well as lvalues, to replace f() and
|
||
g() helper functions.
|
||
* testsuite/27_io/basic_istream/extractors_other/wchar_t/4.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostream/inserters_other/char/6.cc:
|
||
Define is_insertable trait to replace std::__is_insertable. Make
|
||
it work with rvalue streams as well as lvalues, to replace f()
|
||
and g() helper functions.
|
||
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/io/dr2989.cc: Prune additional
|
||
errors from new constraints.
|
||
* testsuite/27_io/rvalue_streams-2.cc: Remove PR 80675 checks,
|
||
which are no longer expected to compile.
|
||
* testsuite/27_io/rvalue_streams.cc: Adjust existing test.
|
||
Verify LWG 1203 changes.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-05 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/function_objects/invoke/3.cc: Check feature
|
||
test macro.
|
||
* testsuite/20_util/function_objects/invoke/version.cc: New test.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/future (promise::set_value): Check for existence
|
||
of shared state before dereferncing it.
|
||
(promise::set_exception, promise::set_value_at_thread_exit)
|
||
(promise::set_exception_at_thread_exit): Likewise.
|
||
(promise<R&>::set_value, promise<R&>::set_exception)
|
||
(promise<R&>::set_value_at_thread_exit)
|
||
(promise<R&>::set_exception_at_thread_exit): Likewise.
|
||
(promise<void>::set_value, promise<void>::set_exception)
|
||
(promise<void>::set_value_at_thread_exit)
|
||
(promise<void>::set_exception_at_thread_exit): Likewise.
|
||
* testsuite/30_threads/promise/members/at_thread_exit2.cc:
|
||
Remove unused variable.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/basic_string.h (basic_string(const CharT*, const A&)):
|
||
Do not do arithmetic on null pointer.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp
|
||
(find_key_pointer(key_const_reference, false_type))
|
||
(find_key_pointer(key_const_reference, true_type)): Do not
|
||
dereference null pointer.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/20_util/from_chars/3.cc: Use unsigned type to avoid
|
||
overflow.
|
||
* testsuite/24_iterators/reverse_iterator/2.cc: Do not add
|
||
non-zero value to null pointer.
|
||
* testsuite/25_algorithms/copy_backward/move_iterators/69478.cc:
|
||
Use past-the-end iterator for result.
|
||
* testsuite/25_algorithms/move_backward/69478.cc: Likewise.
|
||
* testsuite/25_algorithms/move_backward/93872.cc: Likewise.
|
||
|
||
2021-05-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100384
|
||
* include/std/variant (__get_t): New alias template yielding the
|
||
return type of std::get<N> on a variant.
|
||
(__visit_result_t): New alias template yielding the result of
|
||
std::visit.
|
||
(__same_types): Move into namespace __detail::__variant.
|
||
(__check_visitor_results): Likewise. Use __invoke_result_t and
|
||
__get_t.
|
||
(__check_visitor_result): Remove.
|
||
(visit): Use __visit_result_t for return type.
|
||
* testsuite/20_util/variant/100384.cc: New test.
|
||
|
||
2021-05-05 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-05-05 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (transform_view::_Iterator::iter_swap):
|
||
Remove as per LWG 3520.
|
||
(join_view::_Iterator::iter_swap): Add indirectly_swappable
|
||
constraint as per LWG 3517.
|
||
|
||
2021-05-04 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (split_view::_InnerIter::operator++):
|
||
Depend on _Base instead of _Vp directly, as per LWG 3532.
|
||
|
||
2021-04-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-30 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/basic_string.h (__cpp_lib_constexpr_string):
|
||
Only define for C++17 and later.
|
||
* include/std/version (__cpp_lib_semaphore): Fix condition
|
||
to match the one in <semaphore>.
|
||
|
||
2021-04-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100259
|
||
* include/experimental/internet (net::ip::make_error_code)
|
||
(net::ip::make_error_condition, net::ip::make_network_v4)
|
||
(net::ip::operator==(const udp&, const udp&)): Add 'inline'.
|
||
|
||
2021-04-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/basic_string.h (__cpp_lib_constexpr_string): Define.
|
||
* include/std/version (__cpp_lib_constexpr_string): Define.
|
||
* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
|
||
Check for __cpp_lib_constexpr_string.
|
||
* testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/char_traits/requirements/version.cc: New test.
|
||
|
||
2021-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100298
|
||
* include/bits/std_thread.h (thread::hardware_concurrency): Add
|
||
missing noexcept to inline definition for non-gthreads targets.
|
||
|
||
2021-04-28 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Revert:
|
||
2021-04-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/100182
|
||
* testsuite/29_atomics/atomic_float/1.cc: Add dg-xfail-run-if for
|
||
ia32.
|
||
* testsuite/29_atomics/atomic_float/wait_notify.cc: Add dg-skip-if for
|
||
ia32.
|
||
|
||
2021-04-27 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-27 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/100290
|
||
* include/std/ranges (join_view::_Iterator::operator++): Correct
|
||
the return type of the lambda to avoid returning a copy of
|
||
_M_parent->_M_inner.
|
||
* testsuite/std/ranges/adaptors/join.cc (test10): New test.
|
||
|
||
2021-04-27 Release Manager
|
||
|
||
* GCC 11.1.0 released.
|
||
|
||
2021-04-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_timed_wait.h (__cond_wait_until_impl):
|
||
Handle system_clock as well as steady_clock.
|
||
* testsuite/30_threads/semaphore/try_acquire_for.cc: Re-enable.
|
||
* testsuite/30_threads/semaphore/try_acquire_until.cc:
|
||
Re-enable.
|
||
|
||
2021-04-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/30_threads/semaphore/try_acquire_posix.cc: Add
|
||
options for libatomic.
|
||
|
||
2021-04-22 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
* include/bits/atomic_wait.h: Always notify waiters in the
|
||
case of 'bare' address notification.
|
||
|
||
2021-04-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100179
|
||
* include/bits/semaphore_base.h: Remove #error.
|
||
* include/std/semaphore: Do not define anything unless one of
|
||
the implementations is available.
|
||
|
||
2021-04-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR target/100182
|
||
* testsuite/29_atomics/atomic_float/1.cc: Add dg-xfail-run-if for
|
||
ia32.
|
||
* testsuite/29_atomics/atomic_float/wait_notify.cc: Add dg-skip-if for
|
||
ia32.
|
||
|
||
2021-04-22 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-04-21 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
* include/bits/semaphore_base.h: Always reload __old in
|
||
__atomic_semaphore::_S_do_try_acquire().
|
||
* testsuite/30_threads/stop_token/stop_callback/destroy.cc:
|
||
re-enable testcase.
|
||
|
||
2021-04-21 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
Backported from master:
|
||
2021-04-21 Thomas Rodgers <rodgert@twrodgers.com>
|
||
|
||
* include/bits/semaphore_base.h: Add missing _M_try_acquire()
|
||
member to __platform_wait.
|
||
|
||
2021-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/latch: Replace tab characters in license text.
|
||
* include/std/semaphore: Likewise.
|
||
|
||
2021-04-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-21 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/100164
|
||
* acinclude.m4: For POSIX semaphores AC_DEFINE HAVE_POSIX_SEMAPHORE
|
||
rather than _GLIBCXX_HAVE_POSIX_SEMAPHORE.
|
||
* configure: Regenerated.
|
||
* config.h.in: Regenerated.
|
||
|
||
2021-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/30_threads/semaphore/try_acquire_for.cc: Disable
|
||
test for targets not using futexes for semaphores.
|
||
* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
|
||
* testsuite/30_threads/stop_token/stop_callback/destroy.cc:
|
||
Disable for all targets.
|
||
|
||
2021-04-20 Thomas Rodgers <trodgers@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-20 Thomas Rodgers <trodgers@redhat.com>
|
||
|
||
* include/Makefile.am: Add new <bits/this_thread_sleep.h> header.
|
||
* include/Makefile.in: Regenerate.
|
||
* include/bits/this_thread_sleep.h: New file.
|
||
* include/bits/atomic_base.h: Adjust all calls
|
||
to __atomic_wait/__atomic_notify for new call signatures.
|
||
* include/bits/atomic_timed_wait.h: Extensive rewrite.
|
||
* include/bits/atomic_wait.h: Likewise.
|
||
* include/bits/semaphore_base.h: Adjust all calls
|
||
to __atomic_wait/__atomic_notify for new call signatures.
|
||
* include/std/atomic: Likewise.
|
||
* include/std/barrier: Likewise.
|
||
* include/std/latch: Likewise.
|
||
* include/std/semaphore: Likewise.
|
||
* include/std/thread (this_thread::sleep_for)
|
||
(this_thread::sleep_until): Move to new header.
|
||
* testsuite/29_atomics/atomic/wait_notify/bool.cc: Simplify
|
||
test.
|
||
* testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
|
||
* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
|
||
* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
|
||
* testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise.
|
||
* testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
|
||
* testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise.
|
||
|
||
2021-04-20 Patrick Palka <ppalka@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-20 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/95983
|
||
* include/bits/stl_iterator.h (__detail::__move_iter_cat):
|
||
Define.
|
||
(move_iterator): Derive from the above in C++20 in order to
|
||
conditionally define iterator_category as per P2259.
|
||
(move_iterator::__base_cat): No longer used, so remove.
|
||
(move_iterator::iterator_category): Remove in C++20.
|
||
(__detail::__common_iter_use_postfix_proxy): Define.
|
||
(common_iterator::_Proxy): Rename to ...
|
||
(common_iterator:__arrow_proxy): ... this.
|
||
(common_iterator::__postfix_proxy): Define as per P2259.
|
||
(common_iterator::operator->): Adjust.
|
||
(common_iterator::operator++): Adjust as per P2259.
|
||
(iterator_traits<common_iterator>::_S_iter_cat): Define.
|
||
(iterator_traits<common_iterator>::iterator_category): Change as
|
||
per P2259.
|
||
(__detail::__counted_iter_value_type): Define.
|
||
(__detail::__counted_iter_concept): Define.
|
||
(__detail::__counted_iter_cat): Define.
|
||
(counted_iterator): Derive from the above three classes in order
|
||
to conditionally define value_type, iterator_concept and
|
||
iterator category respectively as per P2259.
|
||
(counted_iterator::operator->): Define as per P2259.
|
||
(incrementable_traits<counted_iterator>): Remove as per P2259.
|
||
(iterator_traits<counted_iterator>): Adjust as per P2259.
|
||
* include/std/ranges (__detail::__iota_view_iter_cat): Define.
|
||
(iota_view::_Iterator): Derive from the above in order to
|
||
conditionally define iterator_category as per P2259.
|
||
(iota_view::_S_iter_cat): Rename to ...
|
||
(iota_view::_S_iter_concept): ... this.
|
||
(iota_view::iterator_concept): Use it to apply LWG 3291 changes.
|
||
(iota_view::iterator_category): Remove.
|
||
(__detail::__filter_view_iter_cat): Define.
|
||
(filter_view::_Iterator): Derive from the above in order to
|
||
conditionally define iterator_category as per P2259.
|
||
(filter_view::_Iterator): Move to struct __filter_view_iter_cat.
|
||
(filter_view::_Iterator::iterator_category): Remove.
|
||
(transform_view::_Base): Define.
|
||
(transform_view::__iter_cat): Define.
|
||
(transform_view::_Iterator): Derive from the above in order to
|
||
conditionally define iterator_category as per P2259.
|
||
(transform_view::_Iterator::_Base): Just alias
|
||
transform_view::_Base.
|
||
(transform_view::_Iterator::_S_iter_cat): Move to struct
|
||
transform_view::__iter_cat.
|
||
(transform_view::_Iterator::iterator_category): Remove.
|
||
(transform_view::_Sentinel::_Base): Just alias
|
||
transform_view::_Base.
|
||
(join_view::_Base): Define.
|
||
(join_view::_Outer_iter): Define.
|
||
(join_view::_Inner_iter): Define.
|
||
(join_view::_S_ref_is_glvalue): Define.
|
||
(join_view::__iter_cat): Define.
|
||
(join_view::_Iterator): Derive from it in order to conditionally
|
||
define iterator_category as per P2259.
|
||
(join_view::_Iterator::_Base): Just alias join_view::_Base.
|
||
(join_view::_Iterator::_S_ref_is_glvalue): Just alias
|
||
join_view::_S_ref_is_glvalue.
|
||
(join_view::_Iterator::_S_iter_cat): Move to struct
|
||
transform_view::__iter_cat.
|
||
(join_view::_Iterator::_Outer_iter): Just alias
|
||
join_view::_Outer_iter.
|
||
(join_view::_Iterator::_Inner_iter): Just alias
|
||
join_view::_Inner_iter.
|
||
(join_view::_Iterator::iterator_category): Remove.
|
||
(join_view::_Sentinel::_Base): Just alias join_view::_Base.
|
||
(__detail::__split_view_outer_iter_cat): Define.
|
||
(__detail::__split_view_inner_iter_cat): Define.
|
||
(split_view::_Base): Define.
|
||
(split_view::_Outer_iter): Derive from __split_view_outer_iter_cat
|
||
in order to conditionally define iterator_category as per P2259.
|
||
(split_view::_Outer_iter::iterator_category): Remove.
|
||
(split_view::_Inner_iter): Derive from __split_view_inner_iter_cat
|
||
in order to conditionally define iterator_category as per P2259.
|
||
(split_view::_Inner_iter::_S_iter_cat): Move to
|
||
__split_view_inner_iter_cat.
|
||
(split_view::_Inner_iter::iterator_category): Remove.
|
||
(elements_view::_Base): Define.
|
||
(elements_view::__iter_cat): Define.
|
||
(elements_view::_Iterator): Derive from the above in order to
|
||
conditionall define iterator_category as per P2259.
|
||
(elements_view::_Iterator::_Base): Just alias
|
||
elements_view::_Base.
|
||
(elements_view::_Iterator::_S_iter_concept)
|
||
(elements_view::_Iterator::iterator_concept): Define as per
|
||
P2259.
|
||
(elements_view::_Iterator::iterator_category): Remove.
|
||
(elements_view::_Sentinel::_Base): Just alias
|
||
elements_view::_Base.
|
||
* testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
|
||
Adjust constraints on iterator_traits<counted_iterator>.
|
||
* testsuite/std/ranges/p2259.cc: New test.
|
||
|
||
2021-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-20 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100146
|
||
* include/std/charconv (__cpp_lib_to_chars): Define
|
||
conditionally.
|
||
* include/std/version (__cpp_lib_to_chars): Likewise..
|
||
* testsuite/20_util/from_chars/4.cc: Only check feature test
|
||
macro, not _GLIBCXX_HAVE_USELOCALE.
|
||
* testsuite/20_util/from_chars/5.cc: Likewise.
|
||
* testsuite/20_util/from_chars/6.cc: Likewise.
|
||
* testsuite/20_util/to_chars/long_double.cc: Likewise.
|
||
|
||
2021-04-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from master:
|
||
2021-04-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* testsuite/util/testsuite_abi.cc (compare_symbols): If any symbol
|
||
versions with _IEEE128_ substring are found, set ieee_version_found
|
||
to true. Ignore missing symbols with _IEEE128_ in version name if
|
||
!ieee_version_found. Use i->first as version_name instead of
|
||
i->second.version_name if the latter is empty.
|
||
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
|
||
|
||
2021-04-19 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt:
|
||
Updated.
|
||
|
||
2021-04-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
|
||
|
||
2021-04-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
|
||
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
|
||
|
||
2021-04-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/lib/dg-options.exp (add_options_for_libatomic): Also
|
||
add libatomic options for 32-bit sparc*-*-linux-gnu.
|
||
|
||
2021-04-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/96657
|
||
* libsupc++/Makefile.am: Add atomicity.cc here.
|
||
* src/c++98/Makefile.am: Remove it from here.
|
||
* libsupc++/Makefile.in: Regenerate.
|
||
* src/c++98/Makefile.in: Regenerate.
|
||
* testsuite/18_support/exception_ptr/96657.cc: New test.
|
||
|
||
2021-04-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100060
|
||
* include/std/bit: Only include <ext/numeric_traits.h> for
|
||
hosted build, use <limits> otherwise.
|
||
|
||
2021-04-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/backwards_compatibility.xml: Remove porting
|
||
notes for libg++ and libstdc++-v2, and bibliography.
|
||
* doc/html/*: Regenerated.
|
||
|
||
2021-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/100044
|
||
* include/bits/ranges_util.h (__detail::__iterator_sentinel_pair):
|
||
Remove helper concept.
|
||
(subrange(_Pr), subrange(Pr, __make_unsigned_like<...>)): Remove
|
||
deduction guides, as per LWG 3404.
|
||
* testsuite/std/ranges/subrange/lwg3282_neg.cc: Check that class
|
||
template argument deduction fails.
|
||
|
||
2021-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/26_numerics/random/linear_congruential_engine/requirements/non_uint_neg.cc:
|
||
Adjust expected error for C++20 mode.
|
||
* testsuite/tr1/5_numerical_facilities/random/linear_congruential/requirements/non_uint_neg.cc:
|
||
Likewise.
|
||
|
||
2021-04-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99995
|
||
* testsuite/17_intro/headers/c++1998/49745.cc: Include all
|
||
standard headers and XFAIL for effective-target c++20.
|
||
|
||
2021-04-09 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
PR libstdc++/99402
|
||
* include/debug/helper_functions.h (__can_advance(_InputIterator,
|
||
const std::pair<_Diff, _Distance_precision>&, int)): New.
|
||
(__can_advance(const _Safe_iterator<>&,
|
||
const std::pair<_Diff, _Distance_precision>&, int)): New.
|
||
* include/debug/macros.h (__glibcxx_check_can_increment_dist): New,
|
||
use latter.
|
||
(__glibcxx_check_can_increment_range): Adapt to use latter.
|
||
(__glibcxx_check_can_decrement_range): Likewise.
|
||
* include/debug/safe_iterator.h
|
||
(_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
|
||
int)): New.
|
||
(__can_advance(const _Safe_iterator<>&,
|
||
const std::pair<_Diff, _Distance_precision>&, int)): New.
|
||
* include/debug/safe_iterator.tcc
|
||
(_Safe_iterator<>::_M_can_advance(const std::pair<_Diff, _Distance_precision>&,
|
||
int)): New.
|
||
(_Safe_iterator<>::_M_valid_range(const _Safe_iterator<>&,
|
||
std::pair<difference_type, _Distance_precision>&, bool)): Adapt for
|
||
__dp_sign_max_size.
|
||
(__copy_move_a): Adapt to use __glibcxx_check_can_increment_dist.
|
||
(__copy_move_backward_a): Likewise.
|
||
(__equal_aux): Likewise.
|
||
* include/debug/stl_iterator.h (__can_advance(const std::reverse_iterator<>&,
|
||
const std::pair<_Diff, _Distance_precision>&, int)): New.
|
||
(__can_advance(const std::move_iterator<>&,
|
||
const std::pair<_Diff, _Distance_precision>&, int)): New.
|
||
* testsuite/25_algorithms/copy/debug/99402.cc: New test.
|
||
|
||
2021-04-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99985
|
||
* include/bits/hashtable.h (_Hashtable::_S_nothrow_move()): Fix
|
||
to be a valid constexpr function in C++11.
|
||
* testsuite/23_containers/unordered_set/cons/99985.cc: New test.
|
||
|
||
2021-04-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/fs_fwd.h: Fix doxygen group command.
|
||
* include/bits/streambuf_iterator.h: Likewise.
|
||
* include/bits/uses_allocator_args.h: Likewise.
|
||
* include/std/memory: Likewise.
|
||
* include/tr1/complex: Likewise.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/basic_string.h: Tweak doxygen comment.
|
||
|
||
2021-04-08 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (__detail::find): Define.
|
||
(split_view::_OuterIter::operator++): Apply proposed resolution
|
||
of LWG 3505.
|
||
* testsuite/std/ranges/adaptors/split.cc (test10): New test.
|
||
|
||
2021-04-08 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (__detail::find_if): Simplify.
|
||
(__detail::find_if_not): Likewise.
|
||
(__detail::min): Remove.
|
||
(__detail::mismatch): Simplify.
|
||
(take_view::size): Use std::min instead of __detail::min.
|
||
|
||
2021-04-08 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/std/ranges (__detail::__returnable_element): New
|
||
concept.
|
||
(elements_view): Use this concept in its constraints. Add
|
||
missing private access specifier.
|
||
(elements_view::_S_get_element): Define as per LWG 3502.
|
||
(elements_view::operator*, elements_view::operator[]): Use
|
||
_S_get_element.
|
||
(elements_view::operator++): Remove unnecessary constraint
|
||
as per LWG 3492.
|
||
* testsuite/std/ranges/adaptors/elements.cc (test05): New test.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/Makefile.am (stamp-pdf-doxygen): Also grep for
|
||
out-of-memory error in log file.
|
||
* doc/Makefile.in: Regenerate.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* configure: Regenerate.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/random.h: Fix doxygen group commands.
|
||
* include/bits/regex_constants.h: Likewise.
|
||
* include/tr1/random.h: Likewise.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/hashtable.h (_Hashtable::_S_nothrow_move()):
|
||
New function to determine noexcept-specifier for move
|
||
constructors.
|
||
(_Hashtable): Use _S_nothrow_move() on move constructors.
|
||
* testsuite/23_containers/unordered_map/cons/noexcept_move_construct.cc:
|
||
Correct static assertion message.
|
||
* testsuite/23_containers/unordered_multimap/cons/noexcept_move_construct.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_multiset/cons/noexcept_move_construct.cc:
|
||
Likewise.
|
||
* testsuite/23_containers/unordered_set/cons/noexcept_move_construct.cc:
|
||
Likewise.
|
||
|
||
2021-04-08 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/98384
|
||
* testsuite/20_util/to_chars/long_double.cc: Don't run the test
|
||
on targets without a large long double. XFAIL the execution on
|
||
targets with a non-conforming printf.
|
||
|
||
2021-04-08 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/99433
|
||
* include/std/ranges (__adaptor::__maybe_refwrap): Remove.
|
||
(__adaptor::__adaptor_invocable): New concept.
|
||
(__adaptor::__adaptor_partial_app_viable): New concept.
|
||
(__adaptor::_RangeAdaptorClosure): Rewrite, turning it into a
|
||
non-template base class.
|
||
(__adaptor::_RangeAdaptor): Rewrite, turning it into a CRTP base
|
||
class template.
|
||
(__adaptor::_Partial): New class template that represents
|
||
partial application of a range adaptor non-closure.
|
||
(__adaptor::__pipe_invocable): New concept.
|
||
(__adaptor::_Pipe): New class template.
|
||
(__detail::__can_ref_view): New concept.
|
||
(__detail::__can_subrange): New concept.
|
||
(all): Replace the lambda here with ...
|
||
(_All): ... this functor. Add appropriate constraints.
|
||
(__detail::__can_filter_view): New concept.
|
||
(filter, _Filter): As in all/_All.
|
||
(__detail::__can_transform): New concept.
|
||
(transform, _Transform): As in all/_All.
|
||
(__detail::__can_take_view): New concept.
|
||
(take, _Take): As in all/_All.
|
||
(__detail::__can_take_while_view): New concept.
|
||
(take_while, _TakeWhile): As in all/_All.
|
||
(__detail::__can_drop_view): New concept.
|
||
(drop, _Drop): As in all/_All.
|
||
(__detail::__can_drop_while_view): New concept.
|
||
(drop_while, _DropWhile): As in all/_All.
|
||
(__detail::__can_join_view): New concept.
|
||
(join, _Join): As in all/_All.
|
||
(__detail::__can_split_view): New concept.
|
||
(split, _Split): As in all/_All. Rename template parameter
|
||
_Fp to _Pattern.
|
||
(__detail::__already_common): New concept.
|
||
(__detail::__can_common_view): New concept.
|
||
(common, _Common): As in all/_All.
|
||
(__detail::__can_reverse_view): New concept.
|
||
(reverse, _Reverse): As in all/_All.
|
||
(__detail::__can_elements_view): New concept.
|
||
(elements, _Elements): As in all/_All.
|
||
(keys, values): Adjust.
|
||
* testsuite/std/ranges/adaptors/99433.cc: New test.
|
||
* testsuite/std/ranges/adaptors/all.cc: No longer expect that
|
||
adding empty range adaptor closure objects to a pipeline doesn't
|
||
increase the size of the pipeline.
|
||
(test05): New test.
|
||
* testsuite/std/ranges/adaptors/common.cc (test03): New test.
|
||
* testsuite/std/ranges/adaptors/drop.cc (test09): New test.
|
||
* testsuite/std/ranges/adaptors/drop_while.cc (test04): New test.
|
||
* testsuite/std/ranges/adaptors/elements.cc (test04): New test.
|
||
* testsuite/std/ranges/adaptors/filter.cc (test06): New test.
|
||
* testsuite/std/ranges/adaptors/join.cc (test09): New test.
|
||
* testsuite/std/ranges/adaptors/p2281.cc: New test.
|
||
* testsuite/std/ranges/adaptors/reverse.cc (test07): New test.
|
||
* testsuite/std/ranges/adaptors/split.cc (test01, test04):
|
||
Adjust.
|
||
(test09): New test.
|
||
* testsuite/std/ranges/adaptors/split_neg.cc (test01): Adjust
|
||
expected error message.
|
||
(test02): Likewise. Extend test.
|
||
* testsuite/std/ranges/adaptors/take.cc (test06): New test.
|
||
* testsuite/std/ranges/adaptors/take_while.cc (test05): New test.
|
||
* testsuite/std/ranges/adaptors/transform.cc (test07, test08):
|
||
New test.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/string_view: Adjust Doxygen @file comment.
|
||
|
||
2021-04-08 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/type_traits (is_scoped_enum<T>): Constrain partial
|
||
specialization to not match incomplete enum types. Use a
|
||
requires-expression instead of instantiating is_convertible.
|
||
(is_scoped_enum<const T>): Add as workaround for PR c++/99968.
|
||
* testsuite/20_util/is_scoped_enum/value.cc: Check with
|
||
incomplete types and opaque-enum-declarations.
|
||
|
||
2021-04-07 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99805
|
||
* src/c++17/fs_path.cc (path::_M_split_cmpts): Do not call
|
||
non-const member on _M_pathname, to avoid copy-on-write.
|
||
* testsuite/27_io/filesystem/path/decompose/parent_path.cc:
|
||
Check construction from strings that might be shared.
|
||
|
||
2021-04-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/move.h (forward, move, move_if_noexcept)
|
||
(addressof): Add _GLIBCXX_NODISCARD.
|
||
* include/bits/ranges_cmp.h (identity::operator()): Add
|
||
nodiscard attribute.
|
||
* include/c_global/cstddef (to_integer): Likewise.
|
||
* include/std/bit (bit_cast): Likewise.
|
||
* include/std/utility (as_const, to_underlying): Likewise.
|
||
|
||
2021-04-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/move.h (forward): Change static_assert message
|
||
to be unambiguous about what must be true.
|
||
* testsuite/20_util/forward/c_neg.cc: Adjust dg-error.
|
||
* testsuite/20_util/forward/f_neg.cc: Likewise.
|
||
|
||
2021-04-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/alloc_traits.h: Use markdown for code font.
|
||
* include/bits/basic_string.h: Fix @param names.
|
||
* include/bits/max_size_type.h: Remove period after @file.
|
||
* include/bits/regex.h: Fix duplicate @retval names, and rename.
|
||
* include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Add
|
||
group open to match existing group close.
|
||
* include/ext/pb_ds/priority_queue.hpp: Add blank line before group
|
||
open.
|
||
|
||
2021-04-06 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_base.h: Fix doxygen group close.
|
||
* include/bits/basic_ios.h: Likewise.
|
||
* include/bits/forward_list.h: Likewise.
|
||
* include/bits/fs_dir.h: Likewise.
|
||
* include/bits/fs_ops.h: Likewise.
|
||
* include/bits/fs_path.h: Likewise.
|
||
* include/bits/functional_hash.h: Likewise.
|
||
* include/bits/gslice.h: Likewise.
|
||
* include/bits/gslice_array.h: Likewise.
|
||
* include/bits/hashtable_policy.h: Likewise.
|
||
* include/bits/indirect_array.h: Likewise.
|
||
* include/bits/locale_classes.h: Likewise.
|
||
* include/bits/locale_facets.h: Likewise.
|
||
* include/bits/locale_facets_nonio.h: Likewise.
|
||
* include/bits/mask_array.h: Likewise.
|
||
* include/bits/refwrap.h: Likewise.
|
||
* include/bits/regex.h: Likewise.
|
||
* include/bits/regex_automaton.h: Likewise.
|
||
* include/bits/regex_compiler.h: Likewise.
|
||
* include/bits/regex_constants.h: Likewise.
|
||
* include/bits/regex_error.h: Likewise.
|
||
* include/bits/regex_executor.h: Likewise.
|
||
* include/bits/regex_scanner.h: Likewise.
|
||
* include/bits/shared_ptr.h: Likewise.
|
||
* include/bits/shared_ptr_atomic.h: Likewise.
|
||
* include/bits/shared_ptr_base.h: Likewise.
|
||
* include/bits/slice_array.h: Likewise.
|
||
* include/bits/specfun.h: Likewise.
|
||
* include/bits/std_function.h: Likewise.
|
||
* include/bits/std_mutex.h: Likewise.
|
||
* include/bits/stl_deque.h: Likewise.
|
||
* include/bits/stl_iterator.h: Likewise.
|
||
* include/bits/stl_iterator_base_types.h: Likewise.
|
||
* include/bits/stl_map.h: Likewise.
|
||
* include/bits/stl_multimap.h: Likewise.
|
||
* include/bits/stl_multiset.h: Likewise.
|
||
* include/bits/stl_numeric.h: Likewise.
|
||
* include/bits/stl_pair.h: Likewise.
|
||
* include/bits/stl_set.h: Likewise.
|
||
* include/bits/stl_uninitialized.h: Likewise.
|
||
* include/bits/stream_iterator.h: Likewise.
|
||
* include/bits/streambuf_iterator.h: Likewise.
|
||
* include/bits/unique_ptr.h: Likewise.
|
||
* include/bits/unordered_map.h: Likewise.
|
||
* include/bits/unordered_set.h: Likewise.
|
||
* include/decimal/decimal: Likewise.
|
||
* include/experimental/any: Likewise.
|
||
* include/experimental/array: Likewise.
|
||
* include/experimental/bits/fs_dir.h: Likewise.
|
||
* include/experimental/bits/fs_fwd.h: Likewise.
|
||
* include/experimental/bits/fs_ops.h: Likewise.
|
||
* include/experimental/bits/fs_path.h: Likewise.
|
||
* include/experimental/buffer: Likewise.
|
||
* include/experimental/internet: Likewise.
|
||
* include/experimental/optional: Likewise.
|
||
* include/experimental/propagate_const: Likewise.
|
||
* include/experimental/socket: Likewise.
|
||
* include/ext/pb_ds/assoc_container.hpp: Likewise.
|
||
* include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
|
||
Likewise.
|
||
* include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Likewise.
|
||
* include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Likewise.
|
||
* include/ext/pb_ds/detail/types_traits.hpp: Likewise.
|
||
* include/ext/pb_ds/exception.hpp: Likewise.
|
||
* include/ext/pb_ds/priority_queue.hpp: Likewise.
|
||
* include/ext/pb_ds/tag_and_trait.hpp: Likewise.
|
||
* include/ext/random: Likewise.
|
||
* include/std/any: Likewise.
|
||
* include/std/atomic: Likewise.
|
||
* include/std/bitset: Likewise.
|
||
* include/std/chrono: Likewise.
|
||
* include/std/complex: Likewise.
|
||
* include/std/condition_variable: Likewise.
|
||
* include/std/fstream: Likewise.
|
||
* include/std/future: Likewise.
|
||
* include/std/iostream: Likewise.
|
||
* include/std/istream: Likewise.
|
||
* include/std/mutex: Likewise.
|
||
* include/std/numeric: Likewise.
|
||
* include/std/ostream: Likewise.
|
||
* include/std/ratio: Likewise.
|
||
* include/std/shared_mutex: Likewise.
|
||
* include/std/stdexcept: Likewise.
|
||
* include/std/streambuf: Likewise.
|
||
* include/std/system_error: Likewise.
|
||
* include/std/thread: Likewise.
|
||
* include/std/valarray: Likewise.
|
||
* include/std/variant: Likewise.
|
||
* include/tr1/cmath: Likewise.
|
||
* include/tr1/regex: Likewise.
|
||
* include/tr2/dynamic_bitset: Likewise.
|
||
* libsupc++/atomic_lockfree_defines.h: Likewise.
|
||
* libsupc++/exception: Likewise.
|
||
* libsupc++/exception.h: Likewise.
|
||
* libsupc++/exception_ptr.h: Likewise.
|
||
* libsupc++/nested_exception.h: Likewise.
|
||
|
||
2021-03-31 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* testsuite/30_threads/future/members/poll.cc: Use faster
|
||
after-ready call in the calibration loop.
|
||
|
||
2021-03-29 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2017.xml: Adjust link for PSTL.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-03-28 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/debug/forward_list
|
||
(forward_list(forward_list&&, const allocator_type&)): Add noexcept qualification.
|
||
* include/debug/list (list(list&&, const allocator_type&)): Likewise and add
|
||
call to safe container allocator aware move constructor.
|
||
* include/debug/vector (vector(vector&&, const allocator_type&)):
|
||
Fix noexcept qualification.
|
||
* testsuite/23_containers/forward_list/cons/noexcept_move_construct.cc:
|
||
Add allocator-extended move constructor noexceot qualification check.
|
||
* testsuite/23_containers/list/cons/noexcept_move_construct.cc: Likewise.
|
||
|
||
2021-03-26 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++11/random.cc (USE_LCG): Define when a pseudo-random
|
||
fallback is needed.
|
||
[USE_LCG] (bad_seed, construct_lcg_at, destroy_lcg_at, __lcg):
|
||
New helper functions and callback.
|
||
(random_device::_M_init): Add 'prng' and 'all' enumerators.
|
||
Replace switch with fallthrough with a series of 'if' statements.
|
||
[USE_LCG]: Construct an lcg_type engine and use __lcg when cpuid
|
||
checks fail.
|
||
(random_device::_M_init_pretr1) [USE_MT19937]: Accept "prng"
|
||
token.
|
||
(random_device::_M_getval): Check for callback unconditionally
|
||
and always pass _M_file pointer.
|
||
* testsuite/26_numerics/random/random_device/85494.cc: Remove
|
||
effective-target check. Use new random_device_available helper.
|
||
* testsuite/26_numerics/random/random_device/94087.cc: Likewise.
|
||
* testsuite/26_numerics/random/random_device/cons/default-cow.cc:
|
||
Remove effective-target check.
|
||
* testsuite/26_numerics/random/random_device/cons/default.cc:
|
||
Likewise.
|
||
* testsuite/26_numerics/random/random_device/cons/token.cc: Use
|
||
new random_device_available helper. Test "prng" token.
|
||
* testsuite/util/testsuite_random.h (random_device_available):
|
||
New helper function.
|
||
|
||
2021-03-25 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/debug/string
|
||
(basic_string(const basic_string&, const _Alloc&)): Define even if !_GLIBCXX_USE_CXX11_ABI.
|
||
(basic_string(basic_string&&, const _Alloc&)): Likewise and add noexcept qualification.
|
||
(basic_string<>::erase): Adapt to take __const_iterator.
|
||
(basic_string(const _CharT*, const _Allocator&)): Remove assign call.
|
||
(basic_string<>::insert(const_iterator, _InputIte, _InputIte)): Try to
|
||
remove iterator debug layer even if !_GLIBCXX_USE_CXX11_ABI.
|
||
[_GLIBCXX_USE_CHAR8_T] (__gnu_debug::u8string): New.
|
||
(__gnu_debug::u16string, __gnu_debug::u32string): New.
|
||
(std::hash<__gnu_debug::basic_string<>>): New partial specialization.
|
||
(std::__is_fast_hash<__gnu_debug::basic_string<>>): Likewise.
|
||
* testsuite/util/exception/safety.h
|
||
(erase_base<__gnu_debug::basic_string<>>): New partial specialization.
|
||
(insert_base<__gnu_debug::basic_string<>>): Likewise.
|
||
* testsuite/util/testsuite_container_traits.h (traits<__gnu_debug::basic_string<>>):
|
||
New partial specialization.
|
||
* testsuite/21_strings/basic_string/hash/debug.cc: New test.
|
||
* testsuite/21_strings/basic_string/requirements/citerators.cc:
|
||
Add test on __gnu_debug::string.
|
||
* testsuite/21_strings/basic_string/requirements/dr438/constructor.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/exception/basic.cc: Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/exception/generation_prohibited.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/exception/propagation_consistent.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/explicit_instantiation/char/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/explicit_instantiation/char16_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/explicit_instantiation/char32_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/explicit_instantiation/char8_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/explicit_instantiation/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/requirements/typedefs.cc: Likewise.
|
||
|
||
2021-03-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR c++/99672
|
||
* testsuite/18_support/source_location/consteval.cc (main): Adjust
|
||
expected column numbers.
|
||
* testsuite/18_support/source_location/1.cc (main): Likewise.
|
||
|
||
2021-03-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Declare malloc.
|
||
|
||
2021-03-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/util/exception/safety.h (setup_base::generate):
|
||
Support seeding random engine.
|
||
(erase_point, erase_range): Adjust range of random numbers to
|
||
ensure dereferenceable iterators are used where required.
|
||
(generation_prohibited::run): Do not try to erase from empty
|
||
containers.
|
||
* testsuite/util/testsuite_containergen.h (test_containers):
|
||
Support seeding random engine.
|
||
|
||
2021-03-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/std/ranges/adaptors/reverse.cc: Replace duplicated
|
||
line with a check that uses the const being/end overloads.
|
||
|
||
2021-03-23 Moritz Sichert <sichert@in.tum.de>
|
||
|
||
* include/std/ranges (reverse_view::begin, reverse_view::end):
|
||
Qualify make_reverse_iterator calls to avoid ADL.
|
||
* testsuite/std/ranges/adaptors/reverse.cc: Test that
|
||
views::reverse works when make_reverse_iterator is defined
|
||
in an associated namespace.
|
||
|
||
2021-03-23 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/c++config (_GLIBCXX_LONG_DOUBLE_ALT128_COMPAT):
|
||
Do not define when compiling with Clang.
|
||
|
||
2021-03-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/string_view (basic_string_view(Range&&)): Define new
|
||
constructor and deduction guide.
|
||
* testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc: New test.
|
||
* testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc: New test.
|
||
|
||
2021-03-22 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/range_access.h (begin(T (&)[N]), end(T (&)[N])):
|
||
Add missing 'noexcept' as per LWG 2280.
|
||
(rbegin(T (&)[N]), rend(T (&)[N]), rbegin(initializer_list<T>))
|
||
(rend(initializer_list<T>)): Add 'noexcept' as per LWG 3537.
|
||
* testsuite/24_iterators/range_access/range_access.cc: Check for
|
||
expected noexcept specifiers. Check result types of generic
|
||
std::begin and std::end overloads.
|
||
* testsuite/24_iterators/range_access/range_access_cpp14.cc:
|
||
Check for expected noexcept specifiers.
|
||
* testsuite/24_iterators/range_access/range_access_cpp17.cc:
|
||
Likewise.
|
||
|
||
2021-03-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/type_traits (is_scoped_enum): Define.
|
||
* include/std/version (__cpp_lib_is_scoped_enum): Define.
|
||
* testsuite/20_util/is_scoped_enum/value.cc: New test.
|
||
* testsuite/20_util/is_scoped_enum/version.cc: New test.
|
||
|
||
2021-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99341
|
||
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Remove
|
||
std::once_flag symbols.
|
||
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt:
|
||
Likewise.
|
||
* config/abi/pre/gnu.ver: Likewise.
|
||
* src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
|
||
(struct __once_flag_compat): Remove.
|
||
(_ZNSt9once_flag11_M_activateEv): Remove.
|
||
(_ZNSt9once_flag9_M_finishEb): Remove.
|
||
|
||
2021-03-16 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99341
|
||
* include/std/mutex [_GLIBCXX_HAVE_LINUX_FUTEX] (once_flag):
|
||
Revert to pthread_once_t implementation.
|
||
[_GLIBCXX_HAVE_LINUX_FUTEX] (call_once): Likewise.
|
||
* src/c++11/mutex.cc [_GLIBCXX_HAVE_LINUX_FUTEX]
|
||
(struct __once_flag_compat): New type matching the reverted
|
||
implementation of once_flag using futexes.
|
||
(once_flag::_M_activate): Remove, replace with ...
|
||
(_ZNSt9once_flag11_M_activateEv): ... alias symbol.
|
||
(once_flag::_M_finish): Remove, replace with ...
|
||
(_ZNSt9once_flag9_M_finishEb): ... alias symbol.
|
||
* testsuite/30_threads/call_once/66146.cc: Removed.
|
||
|
||
2021-03-15 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* testsuite/17_intro/names.cc: Exclude j from the list
|
||
of test symbols for Darwin.
|
||
|
||
2021-03-15 Iain Sandoe <iain@sandoe.co.uk>
|
||
|
||
* config/os/bsd/darwin/ppc-extra.ver: Add matching for
|
||
to_chars and from_chars for long double.
|
||
|
||
2021-03-15 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* include/bits/max_size_type.h (__max_size_type::operator _Tp):
|
||
Fix formatting.
|
||
(__max_size_type::operator++): Define.
|
||
(__max_size_type::operator--): Likewise.
|
||
(__max_size_type::operator<=>): Conditionally define (in place
|
||
of the other comparison operators).
|
||
(__max_diff_type::operator _Tp): Fix formatting.
|
||
(__max_diff_type::operator++): Define.
|
||
(__max_diff_type::operator--): Likewise.
|
||
(__max_diff_type::operator<=>): Conditionally define (in place
|
||
of the other comparison operators).
|
||
* testsuite/std/ranges/iota/max_size_type.cc (test01): Test
|
||
these operator overloads.
|
||
|
||
2021-03-15 Caroline Tice <cmtice@google.com>
|
||
|
||
PR libstdc++/99172
|
||
* src/Makefile.am (AM_CXXFLAGS_PRE, AM_CXXFLAGS): Add
|
||
AM_CXXFLAGS_PRE with the old definition of AM_CXXFLAGS; make
|
||
AM_CXXFLAGS to be AM_CXXFLAGS_PRE with '-fvtable-verify=std'
|
||
filtered out.
|
||
* src/Makefile.in: Regenerate.
|
||
|
||
2021-03-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/floating_to_chars.cc: Simplify the file as if
|
||
__SIZEOF_INT128__ is always defined.
|
||
[!defined __SIZEOF_INT128__]: Include "uint128_t.h". Define
|
||
a base-10 to_chars overload for the uint128_t class type.
|
||
* src/c++17/uint128_t.h: New file.
|
||
* testsuite/20_util/to_chars/long_double.cc: No longer expect an
|
||
execution FAIL on targets that have a large long double type
|
||
but lack __int128.
|
||
|
||
2021-03-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/ryu/LOCAL_PATCHES: Update.
|
||
* src/c++17/ryu/d2s_intrinsics.h: Don't define uint128_t.
|
||
* src/c++17/ryu/generic_128.h: Likewise.
|
||
* src/c++17/ryu/ryu_generic_128.h (struct floating_decimal_128):
|
||
Use uint128_t instead of __uint128_t.
|
||
(generic_binary_to_decimal): Likewise.
|
||
|
||
2021-03-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/ryu/LOCAL_PATCHES: New file.
|
||
|
||
2021-03-11 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/floating_to_chars.cc (uint128_t): New conditionally
|
||
defined alias of unsigned __int128.
|
||
(floating_type_traits_binary128::mantissa_t): Use uint128_t
|
||
instead of unsigned __int128.
|
||
(floating_type_traits<long double>::mantissa_t)
|
||
[LONG_DOUBLE_KIND == LDK_IBM128]: Likewise.
|
||
(get_ieee_repr): Likewise. Make casts from uint_t to mantissa_t
|
||
and uint32_t explicit. Simplify the extraction of mantissa,
|
||
exponent and sign bit.
|
||
|
||
2021-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/barrier (barrier::arrival_token): New move-only
|
||
class that encapsulates the underlying token value.
|
||
|
||
2021-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* python/libstdcxx/v6/printers.py (find_type): Use tag attribute
|
||
instead of unqualified() method.
|
||
|
||
2021-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99537
|
||
* include/std/stop_token (_Stop_state_t::_M_release_ownership):
|
||
Use acq_rel memory ordering.
|
||
|
||
2021-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99533
|
||
* src/c++17/fs_dir.cc (recursive_directory_iterator): Use new
|
||
helper function to check for permission denied errors.
|
||
* src/filesystem/dir.cc (recursive_directory_iterator):
|
||
Likewise.
|
||
* src/filesystem/dir-common.h (is_permission_denied_error): New
|
||
helper function.
|
||
|
||
2021-03-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99536
|
||
* include/bits/random.h (normal_distribution): Use
|
||
default-initializer for _M_saved and _M_saved_available.
|
||
|
||
2021-03-10 John David Anglin <danglin@gcc.gnu.org>
|
||
|
||
* testsuite/29_atomics/atomic/wait_notify/bool.cc: Add options to
|
||
link with libatomic.
|
||
* testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise.
|
||
* testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise.
|
||
* testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
|
||
* testsuite/30_threads/barrier/completion.cc: Likewise.
|
||
* testsuite/30_threads/latch/3.cc: Likewise.
|
||
* testsuite/30_threads/semaphore/try_acquire.cc: Likewise.
|
||
* testsuite/30_threads/semaphore/try_acquire_for.cc: Likewise.
|
||
* testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise.
|
||
|
||
2021-03-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99413
|
||
* include/bits/align.h: Include debug/assertions.h.
|
||
* include/bits/codecvt.h: Include bits/c++config.h.
|
||
* include/bits/enable_special_members.h: Likewise.
|
||
* include/bits/erase_if.h: Likewise.
|
||
* include/bits/functional_hash.h: Include <type_traits>.
|
||
* include/bits/invoke.h: Include bits/move.h.
|
||
* include/bits/ostream_insert.h: Include bits/exception_defines.h.
|
||
* include/bits/parse_numbers.h: Include <type_traits>.
|
||
* include/bits/predefined_ops.h: Include bits/c++config.h.
|
||
* include/bits/range_access.h: Include bits/stl_iterator.h.
|
||
* include/bits/stl_bvector.h: Do not include bits/stl_vector.h.
|
||
* include/bits/stl_iterator.h: Include bits/stl_iterator_base_types.h.
|
||
* include/bits/stl_uninitialized.h: Include bits/stl_algobase.h.
|
||
* include/bits/uniform_int_dist.h: Include bits/concept_check.h.
|
||
* include/bits/unique_lock.h: Include bits/std_mutex.h.
|
||
* include/debug/assertions.h: Include bits/c++config.h.
|
||
|
||
2021-03-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/ranges_cmp.h (__eq_builtin_ptr_cmp): Remove.
|
||
(ranges::equal_to, ranges::not_equal_to): Do not constrain
|
||
with __eq_builtin_ptr_cmp.
|
||
(ranges::less, ranges::greater, ranges::less_equal)
|
||
(ranges::greater_equal): Do not constrain with
|
||
__less_builtin_ptr_cmp.
|
||
* libsupc++/compare (compare_three_way): Do not constrain with
|
||
__3way_builtin_ptr_cmp.
|
||
* testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc: Moved to...
|
||
* testsuite/18_support/comparisons/object/lwg3530.cc: ...here.
|
||
* testsuite/20_util/function_objects/range.cmp/lwg3530.cc: New test.
|
||
|
||
2021-03-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/std/time/syn_c++20.cc: Enable synopsis checks for
|
||
C++20 calendar types.
|
||
|
||
2021-03-06 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/99396
|
||
* include/std/bit (__rotl, __rotr): Add optimized variants for power of
|
||
two _Nd which the compiler can pattern match the rotates.
|
||
|
||
2021-03-04 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99382
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_default_n/sizes.cc:
|
||
Make storage larger than required. Verify no write to the last
|
||
element.
|
||
* testsuite/20_util/specialized_algorithms/uninitialized_value_construct_n/sizes.cc:
|
||
Likewise.
|
||
|
||
2021-03-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* config/abi/post/i386-solaris/baseline_symbols.txt: Regenerate.
|
||
* config/abi/post/i386-solaris/amd64/baseline_symbols.txt:
|
||
Likewise.
|
||
* config/abi/post/sparc-solaris/baseline_symbols.txt: Likewise.
|
||
* config/abi/post/sparc-solaris/sparcv9/baseline_symbols.txt:
|
||
Likewise.
|
||
|
||
2021-03-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||
|
||
* include/experimental/bits/simd.h: Replace reserved _X, _B by
|
||
_Xp, _Bp.
|
||
* include/experimental/bits/simd_builtin.h: Likewise.
|
||
* include/experimental/bits/simd_x86.h: Likewise.
|
||
|
||
2021-02-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99301
|
||
* include/std/chrono (year_month_day::_M_days_since_epoch()):
|
||
Convert chrono::month and chrono::day to unsigned before
|
||
converting to uint32_t.
|
||
|
||
2021-02-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/chrono (year_month_day::_S_from_days): Perform
|
||
all calculations with type uint32_t.
|
||
|
||
2021-02-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/abi.xml: Document versioning for GCC 11.
|
||
* doc/html/manual/abi.html: Regenerate.
|
||
|
||
2021-02-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99270
|
||
* testsuite/27_io/headers/cstdio/types_std.cc: Use pointer to
|
||
FILE instead of FILE.
|
||
|
||
2021-02-25 Andreas Schwab <schwab@suse.de>
|
||
|
||
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
|
||
* config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
|
||
|
||
2021-02-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99265
|
||
* include/std/chrono (year_month_day::_S_from_days): Cast long
|
||
to int explicitly.
|
||
|
||
2021-02-25 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/utility (to_underlying): Define.
|
||
* include/std/version (__cpp_lib_to_underlying): Define.
|
||
* testsuite/20_util/to_underlying/1.cc: New test.
|
||
* testsuite/20_util/to_underlying/version.cc: New test.
|
||
|
||
2021-02-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99261
|
||
* src/c++17/floating_to_chars.cc (sprintf_ld): Add extra args
|
||
before value to be printed.
|
||
|
||
2021-02-24 Patrick Palka <ppalka@redhat.com>
|
||
|
||
* src/c++17/floating_to_chars.cc (__floating_to_chars_precision):
|
||
Relax the condition that guards the printf code path to accept
|
||
F128_type as well as long double.
|
||
|
||
2021-02-24 Cassio Neri <cassio.neri@gmail.com>
|
||
|
||
* include/std/chrono (year_month_day_last:day): New
|
||
implementation.
|
||
|
||
2021-02-24 Cassio Neri <cassio.neri@gmail.com>
|
||
|
||
* include/std/chrono (year::is_leap): New implementation.
|
||
* testsuite/std/time/year/2.cc: New test.
|
||
|
||
2021-02-24 Cassio Neri <cassio.neri@gmail.com>
|
||
|
||
* include/std/chrono (year_month_day::_M_days_since_epoch):
|
||
New implementation.
|
||
* testsuite/std/time/year_month_day/4.cc: New test.
|
||
|
||
2021-02-24 Cassio Neri <cassio.neri@gmail.com>
|
||
|
||
* include/std/chrono (year_month_day::_S_from_days): New
|
||
implementation.
|
||
* testsuite/std/time/year_month_day/3.cc: New test.
|
||
|
||
2021-02-24 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/98384
|
||
* testsuite/20_util/to_chars/long_double.cc: Include <optional>.
|
||
(test01): Simplify verifying the nearby values by using a
|
||
2-iteration loop and a dedicated output buffer to check that the
|
||
nearby values are different. Factor out the printf-based
|
||
verification into a local function, and check that the leading
|
||
hex digits agree before comparing to the output of printf. Also
|
||
verify the output by round-tripping it through from_chars.
|
||
|
||
2021-02-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98389
|
||
* config/abi/pre/gnu.ver (GLIBCXX_3.4.29): Do not match to_chars
|
||
symbols for long double arguments mangled as 'g'.
|
||
* config/os/gnu-linux/ldbl-extra.ver: Likewise.
|
||
* config/os/gnu-linux/ldbl-ieee128-extra.ver: Likewise.
|
||
* src/c++17/Makefile.am [GLIBCXX_LDBL_ALT128_COMPAT_TRUE]:
|
||
Use -mabi=ibmlongdouble for floating_to_chars.cc.
|
||
* src/c++17/Makefile.in: Regenerate.
|
||
* src/c++17/floating_to_chars.cc (floating_type_traits_binary128):
|
||
New type defining type traits of IEEE binary128 format.
|
||
(floating_type_traits<__float128>): Define specialization.
|
||
(floating_type_traits<long double>): Define in terms of
|
||
floating_type_traits_binary128 when appropriate.
|
||
(floating_to_shortest_scientific): Handle __float128.
|
||
(sprintf_ld): New function template for printing a long double
|
||
or __ieee128 value using sprintf.
|
||
(__floating_to_chars_shortest, __floating_to_chars_precision):
|
||
Use sprintf_ld.
|
||
(to_chars): Define overloads for __float128.
|
||
|
||
2021-02-24 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/17_intro/names.cc: Undefine 'u' on powerpc*-linux*.
|
||
|
||
2021-02-23 Martin Sebor <msebor@redhat.com>
|
||
|
||
PR c++/99074
|
||
* libsupc++/dyncast.cc (__dynamic_cast): Return null when
|
||
first argument is null.
|
||
|
||
2021-02-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/99181
|
||
* testsuite/21_strings/char_traits/requirements/char/99181.cc: New
|
||
test.
|
||
|
||
2021-02-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/99181
|
||
* include/bits/char_traits.h (char_traits<char>::compare): For
|
||
constexpr evaluation don't call
|
||
__gnu_cxx::char_traits<char_type>::compare but do the comparison loop
|
||
directly.
|
||
|
||
2021-02-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR libstdc++/97549
|
||
* include/pstl/parallel_backend_serial.h: Remove __pstl::__par_backend.
|
||
|
||
2021-02-23 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/98384
|
||
* src/c++17/floating_to_chars.cc (get_ieee_repr): Extract
|
||
the high- and low-order parts from an IBM long double value
|
||
in an endian-agnostic way.
|
||
|
||
2021-02-19 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_wait.h (__thread_relax()): Call
|
||
__thread_yield() not __gthread_yield().
|
||
|
||
2021-02-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/atomic_wait.h (__thread_yield()): Check
|
||
_GLIBCXX_HAS_GTHREADS before using __gthread_yield.
|
||
(__thread_relax()): Use __thread_yield() instead of repeating
|
||
the preprocessor checks for __gthread_yield.
|
||
|
||
2021-02-15 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/mutex (once_flag::_M_activate()): Add explicit
|
||
return statement for passive case.
|
||
(once_flag::_M_finish(bool)): Use reserved name for parameter.
|
||
|
||
2021-02-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99096
|
||
* testsuite/util/testsuite_fs.h: Always include <unistd.h>.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/88881
|
||
* src/c++17/fs_ops.cc (fs::symlink_status): Re-enable workaround.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2014.xml: Document implementation
|
||
specific properties of std::experimental::filesystem::rename.
|
||
* doc/xml/manual/status_cxx2017.xml: Document implementation
|
||
specific properties of std::filesystem::rename.
|
||
* doc/html/*: Regenerate.
|
||
* src/c++17/fs_ops.cc (fs::rename): Implement correct behaviour
|
||
for directories on Windows.
|
||
* src/filesystem/ops-common.h (__gnu_posix::rename): Use
|
||
MoveFileExW on Windows.
|
||
* testsuite/27_io/filesystem/operations/rename.cc: New test.
|
||
* testsuite/experimental/filesystem/operations/rename.cc: New test.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/util/testsuite_fs.h (nonexistent_path): Add
|
||
random number to the path.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (address_v6::to_string): Include
|
||
scope ID in string.
|
||
* testsuite/experimental/net/internet/address/v6/members.cc:
|
||
Test to_string() results.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/internet (address_v6::any): Avoid using
|
||
memcpy in constexpr function.
|
||
(address_v6::loopback): Likewise.
|
||
(make_address_v6): Fix missing return statements on error paths.
|
||
* include/experimental/io_context: Avoid -Wdangling-else
|
||
warning.
|
||
* testsuite/experimental/net/internet/address/v4/members.cc:
|
||
Remove unused variables.
|
||
* testsuite/experimental/net/internet/address/v6/members.cc:
|
||
New test.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/bits/shared_ptr_base.h (__shared_ptr::_M_get_deleter):
|
||
Add unused attribute to parameter.
|
||
* src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq):
|
||
Likewise.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/basic_ostream/emit/1.cc: Expect test to fail
|
||
if -fno-rtti is used.
|
||
* testsuite/30_threads/async/forced_unwind.cc: Expect test
|
||
to abort if -fno-rtti is used.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/util/testsuite_allocator.h (memory_resource):
|
||
Remove requirement for RTTI and exceptions to be enabled.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Use
|
||
static_cast when RTTI is disabled.
|
||
* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostringstream/rdbuf/char/2832.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_stringstream/str/char/2.cc:
|
||
Likewise.
|
||
* testsuite/27_io/basic_stringstream/str/wchar_t/2.cc:
|
||
Likewise.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/ostream (__syncbuf_base::_S_get): Mark parameter
|
||
as unused and only use dynamic_cast when RTTI is enabled.
|
||
|
||
2021-02-12 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99077
|
||
* src/c++11/cxx11-ios_failure.cc (__ios_failure(const char*, int)):
|
||
Change int parameter to error_code, to match std::ios_failure.
|
||
(__throw_ios_failure(const char*, int)): Construct error_code
|
||
from int parameter.
|
||
|
||
2021-02-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* libsupc++/eh_ptr.cc (_GLIBCXX_EH_PTR_RELOPS_COMPAT): Define
|
||
new macro.
|
||
* libsupc++/exception_ptr.h (_GLIBCXX_EH_PTR_USED): Check new
|
||
macro instead of _GLIBCXX_EH_PTR_COMPAT.
|
||
(operator==): Likewise.
|
||
|
||
2021-02-11 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99058
|
||
* doc/xml/manual/status_cxx2011.xml: Document when support
|
||
became stable.
|
||
* doc/xml/manual/status_cxx2014.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2017.xml: Likewise.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-02-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/88881
|
||
* src/c++17/fs_ops.cc (fs::status): Re-enable workaround.
|
||
|
||
2021-02-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/fs_ops.cc (fs::create_hard_link, fs::equivalent)
|
||
(fs::remove): Use std::system_category() for error codes from
|
||
GetLastError().
|
||
* src/filesystem/ops.cc (fs::create_hard_link, fs::remove):
|
||
Likewise.
|
||
|
||
2021-02-10 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/operations/proximate.cc: Fix typo
|
||
in __MINGW32__ macro name.
|
||
* testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/proximate.cc:
|
||
Likewise.
|
||
* testsuite/27_io/filesystem/path/generation/relative.cc:
|
||
Likewise.
|
||
* testsuite/util/testsuite_fs.h: Likewise.
|
||
|
||
2021-02-09 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/bits/stl_tree.h
|
||
(__has_is_transparent, __has_is_transparent_t): Move...
|
||
* include/bits/stl_function.h: ...here.
|
||
* include/bits/hashtable_policy.h (_Hash_code_base<>::_M_hash_code_tr): New..
|
||
(_Hashtable_base<>::_M_equals_tr): New.
|
||
* include/bits/hashtable.h (_Hashtable<>::_M_find_tr, _Hashtable<>::_M_count_tr,
|
||
_Hashtable<>::_M_equal_range_tr): New member function templates to perform
|
||
heterogeneous lookup.
|
||
(_Hashtable<>::_M_find_before_node_tr): New.
|
||
(_Hashtable<>::_M_find_node_tr): New.
|
||
* include/bits/unordered_map.h (unordered_map::find<>, unordered_map::count<>,
|
||
unordered_map::contains<>, unordered_map::equal_range<>): New member function
|
||
templates to perform heterogeneous lookup.
|
||
(unordered_multimap::find<>, unordered_multimap::count<>,
|
||
unordered_multimap::contains<>, unordered_multimap::equal_range<>): Likewise.
|
||
* include/bits/unordered_set.h (unordered_set::find<>, unordered_set::count<>,
|
||
unordered_set::contains<>, unordered_set::equal_range<>): Likewise.
|
||
(unordered_multiset::find<>, unordered_multiset::count<>,
|
||
unordered_multiset::contains<>, unordered_multiset::equal_range<>): Likewise.
|
||
* include/debug/unordered_map
|
||
(unordered_map::find<>, unordered_map::equal_range<>): Likewise.
|
||
(unordered_multimap::find<>, unordered_multimap::equal_range<>): Likewise.
|
||
* include/debug/unordered_set
|
||
(unordered_set::find<>, unordered_set::equal_range<>): Likewise.
|
||
(unordered_multiset::find<>, unordered_multiset::equal_range<>): Likewise.
|
||
* testsuite/23_containers/unordered_map/operations/1.cc: New test.
|
||
* testsuite/23_containers/unordered_multimap/operations/1.cc: New test.
|
||
* testsuite/23_containers/unordered_multiset/operations/1.cc: New test.
|
||
* testsuite/23_containers/unordered_set/operations/1.cc: New test.
|
||
|
||
2021-02-09 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* include/bits/stl_deque.h
|
||
(std::operator-(deque::iterator, deque::iterator)): Replace if/then with
|
||
a null pointer test.
|
||
|
||
2021-02-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/filesystem/operations/remove_all.cc: Remove
|
||
test directory after making it writable again.
|
||
* testsuite/experimental/filesystem/operations/remove_all.cc:
|
||
Likewise.
|
||
|
||
2021-02-09 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/99021
|
||
* include/std/coroutine (coroutine_handle<P>::from_address): Add
|
||
noexcept.
|
||
|
||
2021-02-09 Vladimir Vishnevsky <vv.os.swe@gmail.com>
|
||
|
||
* include/ext/stdio_sync_filebuf.h: Remove unused <unistd.h>.
|
||
* src/c++17/fs_ops.cc (fs::permissions): Qualify mode_t.
|
||
|
||
2021-02-09 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR middle-end/98465
|
||
* include/bits/basic_string.tcc (basic_string::_M_replace): When __s
|
||
points to the characters moved by earlier _S_move, compute the source
|
||
address using expression based on the __p pointer rather than __s
|
||
pointer.
|
||
|
||
2021-02-03 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
|
||
Add comparison with same category and different values.
|
||
* testsuite/19_diagnostics/error_code/operators/less.cc:
|
||
Likewise. Fix comparison involving different categories.
|
||
* testsuite/19_diagnostics/error_code/operators/three_way.cc:
|
||
Likewise.
|
||
* testsuite/19_diagnostics/error_condition/operators/less.cc:
|
||
Add comment.
|
||
* testsuite/19_diagnostics/error_condition/operators/three_way.cc:
|
||
Likewise.
|
||
|
||
2021-02-03 yaozhongxiao <yaozhongxiao@linux.alibaba.com>
|
||
|
||
* include/experimental/bits/simd_neon.h: Replace repeated vpadd
|
||
calls with a single vaddv for aarch64.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/Makefile.am: Warn about the workaround. Add
|
||
-fno-tree-vrp to CXXFLAGS passed to the check_simd script.
|
||
Improve initial user feedback from make check-simd.
|
||
* testsuite/Makefile.in: Regenerated.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* include/experimental/bits/simd.h: Add __detail::_Minimum and
|
||
__detail::_Maximum to use them as _BinaryOperation to _S_reduce.
|
||
Add hmin and hmax overloads for simd and const_where_expression.
|
||
* include/experimental/bits/simd_scalar.h
|
||
(_SimdImplScalar::_S_reduce): Make unused _BinaryOperation
|
||
parameter const-ref to allow calling _S_reduce with an rvalue.
|
||
* testsuite/experimental/simd/tests/reductions.cc: Add tests for
|
||
hmin and hmax. Since the compiler statically determined that all
|
||
tests pass, repeat the test after a call to make_value_unknown.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/tests/bits/verify.h (verify): Add
|
||
instruction pointer data member. Ensure that the `if (m_failed)`
|
||
branch is always inlined into the calling code. The body of the
|
||
conditional can still be a function call. Move the get_ip call
|
||
into the verify ctor to simplify the ctor calls.
|
||
(COMPARE): Don't mention the use of all_of for reduction of a
|
||
simd_mask. It only distracts from the real issue.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/driver.sh: Abstract reading test
|
||
options into read_src_option function. Read skip, only,
|
||
expensive, and xfail via read_src_option. Add timeout and
|
||
timeout-factor options and adjust timeout variable accordingly.
|
||
* testsuite/experimental/simd/tests/loadstore.cc: Set
|
||
timeout-factor 2.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/driver.sh: When handling the pipe
|
||
to log (and on verbose to stdout) count the lines. If it exceeds
|
||
1000 log the issue and exit 125, which is then handled as a
|
||
failure.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/tests/hypot3_fma.cc: Add skip:
|
||
markup for long double on powerpc64*.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* include/experimental/bits/simd.h: Add __have_power10vec
|
||
conditional on _ARCH_PWR10.
|
||
* include/experimental/bits/simd_builtin.h: Forward declare
|
||
_MaskImplPpc and use it as _MaskImpl when __ALTIVEC__ is
|
||
defined.
|
||
(_MaskImplBuiltin::_S_some_of): Call _S_popcount from the
|
||
_SuperImpl for optimizations and correctness.
|
||
* include/experimental/bits/simd_ppc.h: Add _MaskImplPpc.
|
||
(_MaskImplPpc::_S_popcount): Implement via vec_cntm for POWER10.
|
||
Otherwise, for >=int use -vec_sums divided by a sizeof factor.
|
||
For <int use -vec_sums(vec_sum4s(...)) to sum all mask entries.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/driver.sh: Remove executable on
|
||
SIGINT. Process compiler and test executable output: In verbose
|
||
mode print messages immediately, limited to 1000 lines and
|
||
breaking long lines to below $COLUMNS (or 1024 if not set).
|
||
Communicating the exit status of the compiler / test with the
|
||
necessary pipe is done via a message through stdout/-in.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/Makefile.am: Ensure .simd.summary is empty before
|
||
collecting a new summary.
|
||
* testsuite/Makefile.in: Regenerate.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/generate_makefile.sh: Use
|
||
different variables internally than documented for user
|
||
overrides. This makes internal append/prepend work as intended.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/driver.sh (verify_test): Print
|
||
test output on run xfail. Do not repeat lines from the log that
|
||
were already printed on stdout.
|
||
(test_selector): Make the compiler flags pattern usable as a
|
||
substring selector.
|
||
(toplevel): Trap on SIGINT and remove the log and sum files.
|
||
Call timout with --foreground to quickly terminate on SIGINT.
|
||
* testsuite/experimental/simd/generate_makefile.sh: Simplify run
|
||
targets via target patterns. Default DRIVEROPTS to -v for run
|
||
targets. Remove log and sum files after completion of the run
|
||
target (so that it's always recompiled).
|
||
Place help text into text file for reasonable 'make help'
|
||
performance.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* include/experimental/bits/simd.h: Remove unnecessary static
|
||
assertion. Allow sizeof(8) integer __intrinsic_type to enable
|
||
the necessary mask type.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* include/experimental/bits/simd.h: Let __intrinsic_type<long
|
||
double, N> be valid if sizeof(long double) == sizeof(double) and
|
||
use a __vector double as member type.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* include/experimental/bits/simd.h (__is_intrinsic_type): New
|
||
internal type trait. Alias for __is_vector_type on x86.
|
||
(_VectorTraitsImpl): Enable for __intrinsic_type in addition for
|
||
__vector_type.
|
||
(__intrin_bitcast): Allow casting to & from vector & intrinsic
|
||
types.
|
||
(__intrinsic_type): Explicitly specialize for NEON intrinsic
|
||
vector types.
|
||
|
||
2021-02-03 Matthias Kretz <kretz@kde.org>
|
||
|
||
* testsuite/experimental/simd/driver.sh: Implement skip, only,
|
||
expensive, and xfail markers. They can select on type, ABI tag
|
||
subset number, target-triplet, and compiler flags.
|
||
* testsuite/experimental/simd/generate_makefile.sh: The summary
|
||
now includes lines for unexpected passes and expected failures.
|
||
If the skip or only markers are only conditional on the type, do
|
||
not generate rules for those types.
|
||
* testsuite/experimental/simd/tests/abs.cc: Mark test expensive
|
||
for ABI tag subsets 1-9.
|
||
* testsuite/experimental/simd/tests/algorithms.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/broadcast.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/casts.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/generator.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/integer_operators.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/loadstore.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_broadcast.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_conversions.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_implicit_cvt.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_loadstore.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_operator_cvt.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_operators.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/mask_reductions.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/operator_cvt.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/operators.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/reductions.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/simd.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/split_concat.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/splits.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/where.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/fpclassify.cc: Ditto. In
|
||
addition replace "test only floattypes" marker by unconditional
|
||
"float|double|ldouble" only marker.
|
||
* testsuite/experimental/simd/tests/frexp.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/hypot3_fma.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
|
||
Ditto.
|
||
* testsuite/experimental/simd/tests/logarithm.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/math_1arg.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/math_2arg.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/remqo.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/trigonometric.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/trunc_ceil_floor.cc: Ditto.
|
||
* testsuite/experimental/simd/tests/sincos.cc: Ditto. In
|
||
addition, xfail on run because the reference data is missing.
|
||
|
||
2021-02-02 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2011.xml: Remove stray table cell.
|
||
* doc/xml/manual/status_cxx2014.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2017.xml: Likewise.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-02-01 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
PR libstdc++/70303
|
||
* include/bits/stl_deque.h (std::deque<>::operator-(iterator, iterator)):
|
||
Return 0 if both iterators are value-initialized.
|
||
* testsuite/23_containers/deque/70303.cc: New test.
|
||
* testsuite/23_containers/vector/70303.cc: New test.
|
||
|
||
2021-02-01 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2011.xml: Update std::call_once
|
||
status.
|
||
* doc/xml/manual/status_cxx2014.xml: Likewise.
|
||
* doc/xml/manual/status_cxx2017.xml: Likewise. Update
|
||
std::from_chars and std::to_chars status. Fix formatting.
|
||
* doc/html/manual/status.html: Regenerate.
|
||
|
||
2021-01-28 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/experimental/bits/numeric_traits.h: Update copyright
|
||
dates.
|
||
* include/experimental/bits/simd.h: Likewise.
|
||
* include/experimental/bits/simd_builtin.h: Likewise.
|
||
* include/experimental/bits/simd_converter.h: Likewise.
|
||
* include/experimental/bits/simd_detail.h: Likewise.
|
||
* include/experimental/bits/simd_fixed_size.h: Likewise.
|
||
* include/experimental/bits/simd_math.h: Likewise.
|
||
* include/experimental/bits/simd_neon.h: Likewise.
|
||
* include/experimental/bits/simd_ppc.h: Likewise.
|
||
* include/experimental/bits/simd_scalar.h: Likewise.
|
||
* include/experimental/bits/simd_x86.h: Likewise.
|
||
* include/experimental/bits/simd_x86_conversions.h: Likewise.
|
||
* include/experimental/simd: Likewise.
|
||
* testsuite/experimental/simd/*: Likewise.
|
||
|
||
2021-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/xml/manual/status_cxx2017.xml: Replace invalid entity.
|
||
* doc/html/*: Regenerate.
|
||
|
||
2021-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/experimental/simd/generate_makefile.sh: Use printf
|
||
instead of echo when printing escape characters.
|
||
|
||
2021-01-27 Matthias Kretz <kretz@kde.org>
|
||
|
||
* scripts/check_simd: New file. This script is called from the
|
||
the check-simd target. It determines a set of compiler flags and
|
||
simulator setups for calling generate_makefile.sh and passes the
|
||
information back to the check-simd target, which recurses to the
|
||
generated Makefiles.
|
||
* scripts/create_testsuite_files: Remove files below simd/tests/
|
||
from testsuite_files and place them in testsuite_files_simd.
|
||
* testsuite/Makefile.am: Add testsuite_files_simd. Add
|
||
check-simd target.
|
||
* testsuite/Makefile.in: Regenerate.
|
||
* testsuite/experimental/simd/driver.sh: New file. This script
|
||
compiles and runs a given simd test, logging its output and
|
||
status. It uses the timeout command to implement compile and
|
||
test timeouts.
|
||
* testsuite/experimental/simd/generate_makefile.sh: New file.
|
||
This script generates a Makefile which uses driver.sh to compile
|
||
and run the tests and collect the logs into a single log file.
|
||
* testsuite/experimental/simd/tests/abs.cc: New file. Tests
|
||
abs(simd).
|
||
* testsuite/experimental/simd/tests/algorithms.cc: New file.
|
||
Tests min/max(simd, simd).
|
||
* testsuite/experimental/simd/tests/bits/conversions.h: New
|
||
file. Contains functions to support tests involving conversions.
|
||
* testsuite/experimental/simd/tests/bits/make_vec.h: New file.
|
||
Support functions make_mask and make_vec.
|
||
* testsuite/experimental/simd/tests/bits/mathreference.h: New
|
||
file. Support functions to supply precomputed math function
|
||
reference data.
|
||
* testsuite/experimental/simd/tests/bits/metahelpers.h: New
|
||
file. Support code for SFINAE testing.
|
||
* testsuite/experimental/simd/tests/bits/simd_view.h: New file.
|
||
* testsuite/experimental/simd/tests/bits/test_values.h: New
|
||
file. Test functions to easily drive a test with simd objects
|
||
initialized from a given list of values and a range of random
|
||
values.
|
||
* testsuite/experimental/simd/tests/bits/ulp.h: New file.
|
||
Support code to determine the ULP distance of simd objects.
|
||
* testsuite/experimental/simd/tests/bits/verify.h: New file.
|
||
Test framework for COMPARE'ing simd objects and instantiating
|
||
the test templates with value_type and ABI tag.
|
||
* testsuite/experimental/simd/tests/broadcast.cc: New file. Test
|
||
simd broadcasts.
|
||
* testsuite/experimental/simd/tests/casts.cc: New file. Test
|
||
simd casts.
|
||
* testsuite/experimental/simd/tests/fpclassify.cc: New file.
|
||
Test floating-point classification functions.
|
||
* testsuite/experimental/simd/tests/frexp.cc: New file. Test
|
||
frexp(simd).
|
||
* testsuite/experimental/simd/tests/generator.cc: New file. Test
|
||
simd generator constructor.
|
||
* testsuite/experimental/simd/tests/hypot3_fma.cc: New file.
|
||
Test 3-arg hypot(simd,simd,simd) and fma(simd,simd,sim).
|
||
* testsuite/experimental/simd/tests/integer_operators.cc: New
|
||
file. Test integer operators.
|
||
* testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
|
||
New file. Test ldexp(simd), scalbn(simd), scalbln(simd), and
|
||
modf(simd).
|
||
* testsuite/experimental/simd/tests/loadstore.cc: New file. Test
|
||
(converting) simd loads and stores.
|
||
* testsuite/experimental/simd/tests/logarithm.cc: New file. Test
|
||
log*(simd).
|
||
* testsuite/experimental/simd/tests/mask_broadcast.cc: New file.
|
||
Test simd_mask broadcasts.
|
||
* testsuite/experimental/simd/tests/mask_conversions.cc: New
|
||
file. Test simd_mask conversions.
|
||
* testsuite/experimental/simd/tests/mask_implicit_cvt.cc: New
|
||
file. Test simd_mask implicit conversions.
|
||
* testsuite/experimental/simd/tests/mask_loadstore.cc: New file.
|
||
Test simd_mask loads and stores.
|
||
* testsuite/experimental/simd/tests/mask_operator_cvt.cc: New
|
||
file. Test simd_mask operators convert as specified.
|
||
* testsuite/experimental/simd/tests/mask_operators.cc: New file.
|
||
Test simd_mask compares, subscripts, and negation.
|
||
* testsuite/experimental/simd/tests/mask_reductions.cc: New
|
||
file. Test simd_mask reductions.
|
||
* testsuite/experimental/simd/tests/math_1arg.cc: New file. Test
|
||
1-arg math functions on simd.
|
||
* testsuite/experimental/simd/tests/math_2arg.cc: New file. Test
|
||
2-arg math functions on simd.
|
||
* testsuite/experimental/simd/tests/operator_cvt.cc: New file.
|
||
Test implicit conversions on simd binary operators behave as
|
||
specified.
|
||
* testsuite/experimental/simd/tests/operators.cc: New file. Test
|
||
simd compares, subscripts, not, unary minus, plus, minus,
|
||
multiplies, divides, increment, and decrement.
|
||
* testsuite/experimental/simd/tests/reductions.cc: New file.
|
||
Test reduce(simd).
|
||
* testsuite/experimental/simd/tests/remqo.cc: New file. Test
|
||
remqo(simd).
|
||
* testsuite/experimental/simd/tests/simd.cc: New file. Basic
|
||
sanity checks of simd types.
|
||
* testsuite/experimental/simd/tests/sincos.cc: New file. Test
|
||
sin(simd) and cos(simd).
|
||
* testsuite/experimental/simd/tests/split_concat.cc: New file.
|
||
Test split(simd) and concat(simd, simd).
|
||
* testsuite/experimental/simd/tests/splits.cc: New file. Test
|
||
split(simd_mask).
|
||
* testsuite/experimental/simd/tests/trigonometric.cc: New file.
|
||
Test remaining trigonometric functions on simd.
|
||
* testsuite/experimental/simd/tests/trunc_ceil_floor.cc: New
|
||
file. Test trunc(simd), ceil(simd), and floor(simd).
|
||
* testsuite/experimental/simd/tests/where.cc: New file. Test
|
||
masked operations using where.
|
||
|
||
2021-01-27 Matthias Kretz <kretz@kde.org>
|
||
|
||
* doc/xml/manual/status_cxx2017.xml: Add implementation status
|
||
of the Parallelism TS 2. Document implementation-defined types
|
||
and behavior.
|
||
* include/Makefile.am: Add new headers.
|
||
* include/Makefile.in: Regenerate.
|
||
* include/experimental/simd: New file. New header for
|
||
Parallelism TS 2.
|
||
* include/experimental/bits/numeric_traits.h: New file.
|
||
Implementation of P1841R1 using internal naming. Addition of
|
||
missing IEC559 functionality query.
|
||
* include/experimental/bits/simd.h: New file. Definition of the
|
||
public simd interfaces and general implementation helpers.
|
||
* include/experimental/bits/simd_builtin.h: New file.
|
||
Implementation of the _VecBuiltin simd_abi.
|
||
* include/experimental/bits/simd_converter.h: New file. Generic
|
||
simd conversions.
|
||
* include/experimental/bits/simd_detail.h: New file. Internal
|
||
macros for the simd implementation.
|
||
* include/experimental/bits/simd_fixed_size.h: New file. Simd
|
||
fixed_size ABI specific implementations.
|
||
* include/experimental/bits/simd_math.h: New file. Math
|
||
overloads for simd.
|
||
* include/experimental/bits/simd_neon.h: New file. Simd NEON
|
||
specific implementations.
|
||
* include/experimental/bits/simd_ppc.h: New file. Implement bit
|
||
shifts to avoid invalid results for integral types smaller than
|
||
int.
|
||
* include/experimental/bits/simd_scalar.h: New file. Simd scalar
|
||
ABI specific implementations.
|
||
* include/experimental/bits/simd_x86.h: New file. Simd x86
|
||
specific implementations.
|
||
* include/experimental/bits/simd_x86_conversions.h: New file.
|
||
x86 specific conversion optimizations. The conversion patterns
|
||
work around missing conversion patterns in the compiler and
|
||
should be removed as soon as PR85048 is resolved.
|
||
* testsuite/experimental/simd/standard_abi_usable.cc: New file.
|
||
Test that all (not all fixed_size<N>, though) standard simd and
|
||
simd_mask types are usable.
|
||
* testsuite/experimental/simd/standard_abi_usable_2.cc: New
|
||
file. As above but with -ffast-math.
|
||
* testsuite/libstdc++-dg/conformance.exp: Don't build simd tests
|
||
from the standard test loop. Instead use
|
||
check_vect_support_and_set_flags to build simd tests with the
|
||
relevant machine flags.
|
||
|
||
2021-01-27 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/66414
|
||
* include/bits/string_view.tcc
|
||
(basic_string_view::find(const CharT*, size_type, size_type)):
|
||
Optimize.
|
||
|
||
2021-01-27 Paul Fee <paul.f.fee@gmail.com>
|
||
|
||
* include/bits/basic_string.h (basic_string::contains): New
|
||
member functions.
|
||
* include/std/string_view (basic_string_view::contains):
|
||
Likewise.
|
||
* include/std/version (__cpp_lib_string_contains): Define.
|
||
* testsuite/21_strings/basic_string/operations/starts_with/char/1.cc:
|
||
Remove trailing whitespace.
|
||
* testsuite/21_strings/basic_string/operations/starts_with/wchar_t/1.cc:
|
||
Likewise.
|
||
* testsuite/21_strings/basic_string/operations/contains/char/1.cc: New test.
|
||
* testsuite/21_strings/basic_string/operations/contains/wchar_t/1.cc: New test.
|
||
* testsuite/21_strings/basic_string_view/operations/contains/char/1.cc: New test.
|
||
* testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: New test.
|
||
* testsuite/21_strings/basic_string_view/operations/contains/wchar_t/1.cc: New test.
|
||
|
||
2021-01-21 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* src/c++17/Makefile.in: Regenerate.
|
||
|
||
2021-01-20 David Edelsohn <dje.gcc@gmail.com>
|
||
|
||
* config/os/aix/ctype_inline.h (bool ctype<char>:: is): Cast
|
||
_OBJ_DATA subscript to unsigned char. Add _THREAD_SAFE access to
|
||
__lc_type.
|
||
(const char* ctype<char>:: is): Same.
|
||
|
||
2021-01-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98725
|
||
* testsuite/20_util/unique_ptr/io/lwg2948.cc: Do not try to
|
||
write to a wide character stream if wide character support is
|
||
disabled in the library.
|
||
|
||
2021-01-18 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* testsuite/27_io/basic_stringstream/cons/char/1.cc: Use
|
||
stringbuf not wstringbuf.
|
||
|
||
2021-01-18 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR debug/98708
|
||
* src/c++11/Makefile.am (cxx11-ios_failure-lt.s, cxx11-ios_failure.s):
|
||
Compile with -gno-as-loc-support.
|
||
* src/c++11/Makefile.in: Regenerated.
|
||
|
||
2021-01-16 H.J. Lu <hjl.tools@gmail.com>
|
||
|
||
* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
|
||
Add -fcf-protection=none to -march=i486.
|
||
|
||
2021-01-14 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
* testsuite/23_containers/deque/debug/98466.cc: Make it pre-C++11
|
||
compliant.
|
||
|
||
2021-01-14 Alexandre Oliva <oliva@adacore.com>
|
||
|
||
* testsuite/30_threads/future/members/poll.cc: Calibrate
|
||
iteration count.
|
||
|
||
2021-01-14 François Dumont <fdumont@gcc.gnu.org>
|
||
|
||
PR libstdc++/98466
|
||
* include/bits/hashtable_policy.h (_Node_iterator_base()): Set _M_cur to nullptr.
|
||
(_Node_iterator()): Make default.
|
||
(_Node_const_iterator()): Make default.
|
||
* include/debug/macros.h (__glibcxx_check_erae_range_after): Add _M_singular
|
||
iterator checks.
|
||
* include/debug/safe_iterator.h
|
||
(_GLIBCXX_DEBUG_VERIFY_OPERANDS): Accept if both iterator are value initialized.
|
||
* include/debug/safe_local_iterator.h (_GLIBCXX_DEBUG_VERIFY_OPERANDS):
|
||
Likewise.
|
||
* include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): Add
|
||
_M_singular checks on input iterators.
|
||
* src/c++11/debug.cc (_Safe_iterator_base::_M_can_compare): Remove _M_singular
|
||
checks.
|
||
* testsuite/23_containers/deque/debug/98466.cc: New test.
|
||
* testsuite/23_containers/unordered_map/debug/98466.cc: New test.
|
||
|
||
2021-01-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
PR libstdc++/98471
|
||
* include/bits/fs_path.h (__throw_conversion_error): New
|
||
function to throw or abort on character conversion errors.
|
||
(__wstr_from_utf8): Move definition after filesystem_error has
|
||
been defined. Use __throw_conversion_error.
|
||
(path::_S_convert<_EcharT>): Use __throw_conversion_error.
|
||
(path::_S_str_convert<_CharT, _Traits, _Allocator>): Likewise.
|
||
(path::u8string): Likewise.
|
||
|
||
2021-01-14 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* include/std/barrier: Update copyright years. Fix whitespace.
|
||
* include/std/version: Fix whitespace.
|
||
* testsuite/30_threads/barrier/1.cc: Update copyright years.
|
||
* testsuite/30_threads/barrier/2.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
|
||
* testsuite/30_threads/barrier/completion.cc: Likewise.
|
||
|
||
2021-01-13 Jonathan Wakely <jwakely@redhat.com>
|
||
|
||
* doc/doxygen/user.cfg.in (INPUT): Remove include/debug/array.
|
||
|
||
2021-01-10 David Edelsohn <dje.gcc@gmail.com>
|
||
|
||
PR libstdc++/98613
|
||
* testsuite/ext/vstring/cons/moveable.cc: Suppress false positive
|
||
warning.
|
||
* testsuite/ext/vstring/modifiers/assign/move_assign.cc: Same.
|
||
|
||
2021-01-08 Olivier Hainque <hainque@adacore.com>
|
||
|
||
* testsuite/20_util/bind/ref_neg.cc: Tweak the
|
||
dg-prune-output regex for out-of-build-tree contexts.
|
||
|
||
2021-01-07 Thomas Rodgers <trodgers@redhat.com>
|
||
|
||
* doc/doxygen/user.cfg.in: Add new header.
|
||
* include/Makefile.am (std_headers): likewise.
|
||
* include/Makefile.in: Regenerate.
|
||
* include/precompiled/stdc++.h: Add new header.
|
||
* include/std/barrier: New file.
|
||
* include/std/version: Add __cpp_lib_barrier feature test macro.
|
||
* testsuite/30_threads/barrier/1.cc: New test.
|
||
* testsuite/30_threads/barrier/2.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_drop.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive_and_wait.cc: Likewise.
|
||
* testsuite/30_threads/barrier/arrive.cc: Likewise.
|
||
* testsuite/30_threads/barrier/completion.cc: Likewise.
|
||
|
||
2021-01-07 Patrick Palka <ppalka@redhat.com>
|
||
|
||
PR libstdc++/98384
|
||
* testsuite/20_util/to_chars/long_double.cc: Use nexttowardl
|
||
instead of the non-standard nextupl and nextdownl.
|
||
|
||
2021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
|
||
|
||
* configure: Re-generate.
|
||
|
||
2021-01-05 Ed Smith-Rowland <3dw4rd@verizon.net>
|
||
|
||
* include/precompiled/stdc++.h: Add <source_location> to C++20 section.
|
||
|
||
2021-01-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
* ChangeLog-2020: Rotate ChangeLog. New file.
|
||
|
||
|
||
Copyright (C) 2021 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|