| 2021-09-17 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/fs_path.h (path::iterator): Add noexcept to all | |
| member functions and friend functions. | |
| (distance): Add noexcept. | |
| (advance): Add noexcept and inline. | |
| * include/experimental/bits/fs_path.h (path::iterator): | |
| Add noexcept to all member functions. | |
| 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-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-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * src/Makefile.am (stamp-debug): Add all Makefiles as | |
| prerequisites. | |
| * src/Makefile.in: Regenerate. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/ext/pb_ds/regression/tree_map_rand.cc: Increase | |
| timeout factor to 3. | |
| * testsuite/ext/pb_ds/regression/tree_set_rand.cc: Likewise. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/using.xml: Generalize to apply to more than | |
| just -std=c++11. | |
| * doc/html/manual/using_macros.html: Regenerate. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/optional (nullptr_t): Make constructor noexcept. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/fs_path.h (advance): Remove non-deducible | |
| template parameter. | |
| 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-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/102280 | |
| * include/std/span (span(Range&&)): Add constraint to deduction | |
| guide. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * src/c++98/Makefile.am: Use CXXCOMPILE not LTCXXCOMPILE. | |
| * src/c++98/Makefile.in: Regenerate. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] | |
| (to_string): Add noexcept if the type width is 32 bits or less. | |
| 2021-09-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/unique_ptr.h (__uniq_ptr_impl::_M_ptr) | |
| (__uniq_ptr_impl::_M_deleter): Add noexcept. | |
| 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-09-15 Hugo Beauzée-Luyssen <hugo@beauzee.fr> | |
| * crossconfig.m4: Check for TLS support on mingw. | |
| * configure: Regenerate. | |
| 2021-09-13 Jason Merrill <jason@redhat.com> | |
| * include/std/version: Define __cpp_lib_hardware_interference_size. | |
| * libsupc++/new: Define hardware interference size variables. | |
| 2021-09-10 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/experimental/net/internet/resolver/ops/lookup.cc: | |
| Fix invalid hostname to only match the .invalid TLD. | |
| 2021-09-02 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/atomic_base.h (__atomic_base<P*>::compare_exchange_weak): | |
| Add new functions. | |
| * include/std/atomic (atomic<T*>::compare_exchange_weak): Use | |
| it. | |
| 2021-09-02 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/atomic: Tweak whitespace. | |
| 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. | |
| 2021-09-02 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/functional (invoke_r): Define. | |
| * include/std/version (__cpp_lib_invoke_r): Define. | |
| * testsuite/20_util/function_objects/invoke/version.cc: Check | |
| for __cpp_lib_invoke_r as well as __cpp_lib_invoke. | |
| * testsuite/20_util/function_objects/invoke/4.cc: New test. | |
| 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-08-31 Jonathan Wakely <jwakely@redhat.com> | |
| * configure.ac: Fix checks for F_GETFL, F_SETFL and O_NONBLOCK. | |
| * configure: Regenerate. | |
| 2021-08-31 Jonathan Wakely <jwakely@redhat.com> | |
| * src/c++11/system_error.cc (error_category::~error_category()): | |
| Remove noexcept-specifier. | |
| (system_error::~system_error()): Likewise. | |
| * testsuite/19_diagnostics/error_category/noexcept.cc: New test. | |
| * testsuite/19_diagnostics/system_error/noexcept.cc: New test. | |
| 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-08-31 Jonathan Wakely <jwakely@redhat.com> | |
| * include/experimental/internet (__make_resolver_error_code): | |
| Handle EAI_SYSTEM errors. | |
| (basic_resolver_results): Use __make_resolver_error_code. Use | |
| Glibc NI_MAXHOST and NI_MAXSERV values for buffer sizes. | |
| 2021-08-31 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/experimental/net/internet/resolver/ops/lookup.cc: | |
| Try other service if "http" fails. | |
| 2021-08-31 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/17_intro/names.cc: Undefine some more names used | |
| by Solaris system headers. | |
| 2021-08-30 Jason Merrill <jason@redhat.com> | |
| PR c++/96286 | |
| * testsuite/30_threads/promise/requirements/lwg3466.cc: | |
| Remove dg-prune-outputs. | |
| 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-08-28 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_uninitialized.h: Fix typo in comment. | |
| 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-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-08-26 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/std_function.h (function): Adjust doxygen | |
| comments. | |
| * include/bits/unique_ptr.h (make_unique_for_overwrite): | |
| Change parameter name to match doxygen comment. | |
| 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-08-26 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/std_function.h (function::function(F)): Add | |
| static assertions to check constructibility requirements. | |
| 2021-08-26 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-08-25 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/17_intro/names.cc: Check 'sz'. | |
| 2021-08-25 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/17_intro/names.cc: Adjust for Windows. | |
| 2021-08-25 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/valarray: Uglify 'func' parameters. | |
| * testsuite/17_intro/names.cc: Add 'func' to checks. | |
| 2021-08-25 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/102064 | |
| * include/bits/stl_uninitialized.h (_GLIBCXX_USE_ASSIGN_FOR_INIT): | |
| Define macro to check conditions for optimizing trivial cases. | |
| (__check_constructible): New function to do static assert. | |
| (uninitialized_copy, uninitialized_fill, uninitialized_fill_n): | |
| Use new macro. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy/1.cc: | |
| Adjust dg-error pattern. | |
| * testsuite/23_containers/vector/cons/89164.cc: Likewise. Add | |
| C++17-specific checks from 89164_c++17.cc. | |
| * testsuite/23_containers/vector/cons/89164_c++17.cc: Removed. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy/102064.cc: | |
| New test. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/102064.cc: | |
| New test. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_fill/102064.cc: | |
| New test. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/102064.cc: | |
| New test. | |
| 2021-08-25 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/102048 | |
| * include/ext/rope (rope::erase(size_type)): Remove broken | |
| function. | |
| 2021-08-24 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/status_cxx2020.xml: Update table. | |
| * doc/html/manual/status.html: Regenerate. | |
| 2021-08-24 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/type_traits (is_layout_compatible): Define. | |
| (is_corresponding_member): Define. | |
| * include/std/version (__cpp_lib_is_layout_compatible): Define. | |
| * testsuite/20_util/is_layout_compatible/is_corresponding_member.cc: | |
| New test. | |
| * testsuite/20_util/is_layout_compatible/value.cc: New test. | |
| * testsuite/20_util/is_layout_compatible/version.cc: New test. | |
| * testsuite/20_util/is_pointer_interconvertible/with_class.cc: | |
| New test. | |
| * testsuite/23_containers/span/layout_compat.cc: Do not use real | |
| std::is_layout_compatible trait if available. | |
| 2021-08-24 Jonathan Wakely <jwakely@redhat.com> | |
| * src/c++11/cxx11-shim_facets.cc: Fix mismatched class-key in | |
| explicit instantiation definitions. | |
| 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-23 Jonathan Wakely <jwakely@redhat.com> | |
| * libsupc++/dyncast.cc (__dynamic_cast): Add __builtin_expect to | |
| precondition check. | |
| 2021-08-23 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/90787 | |
| * testsuite/util/testsuite_fs.h (permissions_are_testable): | |
| Define as inline. | |
| 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-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> | |
| * doc/doxygen/user.cfg.in: Update to Doxygen 1.9.2 | |
| 2021-08-19 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101965 | |
| * include/std/charconv (__to_chars_i): Remove redundant check. | |
| 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-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-19 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/shared_ptr.h: Add @since and @headerfile tags. | |
| * include/bits/unique_ptr.h: Add @headerfile tags. | |
| 2021-08-19 Jonathan Wakely <jwakely@redhat.com> | |
| * src/filesystem/ops-common.h (filesystem::file_time): Improve | |
| overflow check by using system_clock::duration::max(). | |
| 2021-08-19 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_tree.h: Tweak whitespace. | |
| 2021-08-18 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/unique_ptr.h (default_delete): Add @since tag. | |
| (unique_ptr, unique_ptr<T[]>): Likewise. Improve @brief. | |
| (make_unique, make_unique_for_overwrite): Likewise. Add @tparam, | |
| @param, and @returns. | |
| (_MakeUniq): Move to __detail namespace. Add alias template | |
| helpers. | |
| 2021-08-18 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_function.h: Improve doxygen comments. | |
| 2021-08-18 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/doxygen/user.cfg.in (PREDEFINED): Enable doxygen | |
| processing for C++20 components and components that depend on | |
| compiler features. | |
| * include/bits/stl_algo.h (random_shuffle): Use @deprecated. | |
| * include/std/type_traits: Improve doxygen comments for C++20 | |
| traits. | |
| 2021-08-18 Jonathan Wakely <jwakely@redhat.com> | |
| * include/ext/type_traits.h (__promote_2, __promote_3) | |
| (__promote_4): Redfine as alias templates using __promoted_t. | |
| * include/std/complex (__promote_2): Remove partial | |
| specializations for std::complex. | |
| 2021-08-18 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_algo.h (min(initializer_list<T>)) | |
| (min(initializer_list<T>, Compare)): Call __min_element directly to | |
| avoid redundant debug checks for valid ranges. | |
| (max(initializer_list<T>), max(initializer_list<T>, Compare)): | |
| Likewise, for __max_element. | |
| (minmax(initializer_list<T>), minmax(initializer_list<T>, Compare)): | |
| Likewise, for __minmax_element. | |
| 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-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-08-17 Thomas Schwinge <thomas@codesourcery.com> | |
| * testsuite/lib/libstdc++.exp: Avoid illegal argument to verbose, | |
| continued. | |
| 2021-08-17 Luc Michel <lmichel@kalray.eu> | |
| Marc Poulhies <mpoulhies@kalrayinc.com> | |
| * testsuite/lib/gdb-test.exp (gdb_version_check) | |
| (gdb_version_check_xmethods): Only check the GDB version for | |
| local native targets. | |
| 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-08-17 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/26_numerics/random/seed_seq/cons/range.cc: Check | |
| construction from input iterators. | |
| 2021-08-17 Jonathan Wakely <jwakely@redhat.com> | |
| * python/libstdcxx/v6/printers.py (StdErrorCatPrinter): Remove. | |
| 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-08-17 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/cow_string.h (basic_string::contains): Do not | |
| define for -std=gnu++20. | |
| 2021-08-17 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ranges_util.h (__not_same_as): Rename to | |
| __different_from. | |
| * include/std/ranges (__not_same_as): Likewise. | |
| 2021-08-17 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/utility (exchange): Add noexcept-specifier. | |
| * testsuite/20_util/exchange/noexcept.cc: New test. | |
| 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-08-16 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101937 | |
| * src/c++11/debug.cc (PrintContext::_M_indent): Replace with a | |
| static data member. | |
| (print_word): Use qualified-id to access it. | |
| 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-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-08-12 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/26_numerics/lerp.cc: Add header name to #error. | |
| * testsuite/26_numerics/midpoint/integral.cc: Likewise. | |
| * testsuite/26_numerics/midpoint/version.cc: New test. | |
| 2021-08-12 Jonathan Wakely <jwakely@redhat.com> | |
| * include/experimental/random (experimental::randint): Add | |
| nodiscard attribute. | |
| 2021-08-12 Jonathan Wakely <jwakely@redhat.com> | |
| * src/c++98/locale_init.cc: Require C++11. | |
| * src/c++98/localename.cc: Likewise. | |
| * src/c++98/misc-inst.cc: Require C++98. | |
| 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> | |
| * include/std/type_traits (__cpp_lib_is_pointer_interconvertible) | |
| (is_pointer_interconvertible_base_of_v) | |
| (is_pointer_interconvertible_base_of): Define for C++20. | |
| * include/std/version (__cpp_lib_is_pointer_interconvertible): | |
| Define. | |
| * testsuite/23_containers/span/layout_compat.cc: Use correct | |
| feature test macro for std::is_layout_compatible_v. | |
| * testsuite/20_util/is_pointer_interconvertible/value.cc: New test. | |
| * testsuite/20_util/is_pointer_interconvertible/version.cc: New test. | |
| 2021-08-09 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/regex.h (basic_regex::transform_primary): Use | |
| _GLIBCXX_STD_C::vector for local variable. | |
| * include/bits/regex.tcc (__regex_algo_impl): Use reference to | |
| _GLIBCXX_STD_C::vector base class of match_results. | |
| * include/bits/regex_automaton.tcc (_StateSeq:_M_clone): Use | |
| _GLIBCXX_STD_C::map and _GLIBCXX_STD_C::deque for local | |
| variables. | |
| * include/bits/regex_compiler.h (_BracketMatcher): Use | |
| _GLIBCXX_STD_C::vector for data members. | |
| * include/bits/regex_executor.h (_Executor): Likewise. | |
| * include/std/regex [_GLIBCXX_DEBUG]: Include <debug/vector>. | |
| 2021-08-09 François Dumont <fdumont@gcc.gnu.org> | |
| * include/debug/safe_container.h | |
| (_Safe_container(_Safe_container&&, const _Alloc&, std::true_type)): New. | |
| (_Safe_container(_Safe_container&&, const _Alloc&, std::false_type)): New. | |
| (_Safe_container(_Safe_container&&, const _Alloc&)): Use latters. | |
| 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-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-08-08 Hans-Peter Nilsson <hp@bitrange.com> | |
| * testsuite/std/ranges/iota/max_size_type.cc: Set | |
| dg-timeout-factor to 4. | |
| 2021-08-06 Jonathan Wakely <jwakely@redhat.com> | |
| * libsupc++/compare (compare_three_way, strong_order) | |
| (weak_order, partial_order, compare_strong_order_fallback) | |
| (compare_weak_order_fallback, compare_partial_order_fallback): | |
| Move nodiscard attributes to correct location. | |
| 2021-08-05 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101782 | |
| * include/bits/ranges_base.h (ranges::begin, ranges::end) | |
| (ranges::rbegin, ranges::rend, ranges::size, ranges::ssize) | |
| (ranges::empty, ranges::data): Move attribute after the | |
| declarator-id instead of at the end of the declarator. | |
| * include/bits/stl_iterator.h (__gnu_cxx::__normal_iterator): | |
| Move attributes back to the start of the function declarator, | |
| but move the requires-clause to the end. | |
| (common_iterator): Move attribute after the declarator-id. | |
| * include/bits/stl_queue.h (queue): Remove ill-formed attributes | |
| from friend declaration that are not definitions. | |
| * include/std/ranges (views::all, views::filter) | |
| (views::transform, views::take, views::take_while, | |
| views::drop) (views::drop_while, views::join, | |
| views::lazy_split) (views::split, views::counted, | |
| views::common, views::reverse) (views::elements): Move | |
| attributes after the declarator-id. | |
| 2021-08-05 Jonathan Wakely <jwakely@redhat.com> | |
| * libsupc++/compare (partial_ordering, weak_ordering) | |
| (strong_ordering, is_eq, is_neq, is_lt, is_lteq, is_gt, is_gteq) | |
| (compare_three_way, strong_order, weak_order, partial_order) | |
| (compare_strong_order_fallback, compare_weak_order_fallback) | |
| (compare_partial_order_fallback, __detail::__synth3way): Add | |
| nodiscard attribute. | |
| * testsuite/18_support/comparisons/categories/zero_neg.cc: Add | |
| -Wno-unused-result to options. | |
| 2021-08-05 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101782 | |
| * include/bits/ranges_base.h (ranges::begin, ranges::end) | |
| (ranges::rbegin, ranges::rend, ranges::size, ranges::ssize) | |
| (ranges::empty, ranges::data): Move attribute to the end of | |
| the declarator. | |
| * include/bits/stl_iterator.h (__gnu_cxx::__normal_iterator) | |
| (common_iterator): Likewise for non-member operator functions. | |
| * include/std/ranges (views::all, views::filter) | |
| (views::transform, views::take, views::take_while, views::drop) | |
| (views::drop_while, views::join, views::lazy_split) | |
| (views::split, views::counted, views::common, views::reverse) | |
| (views::elements): Likewise. | |
| * testsuite/std/ranges/access/101782.cc: New test. | |
| 2021-08-04 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/forward_list.h: Add [[nodiscard]] to functions | |
| with no side-effects. | |
| * include/bits/stl_bvector.h: Likewise. | |
| * include/bits/stl_deque.h: Likewise. | |
| * include/bits/stl_list.h: Likewise. | |
| * include/bits/stl_queue.h: Likewise. | |
| * include/bits/stl_stack.h: Likewise. | |
| * include/bits/stl_vector.h: Likewise. | |
| * include/debug/deque: Likewise. | |
| * include/debug/forward_list: Likewise. | |
| * include/debug/list: Likewise. | |
| * include/debug/safe_iterator.h: Likewise. | |
| * include/debug/vector: Likewise. | |
| * include/std/array: Likewise. | |
| * testsuite/23_containers/array/creation/3_neg.cc: Use | |
| -Wno-unused-result. | |
| * testsuite/23_containers/array/debug/back1_neg.cc: Cast result | |
| to void. | |
| * testsuite/23_containers/array/debug/back2_neg.cc: Likewise. | |
| * testsuite/23_containers/array/debug/front1_neg.cc: Likewise. | |
| * testsuite/23_containers/array/debug/front2_neg.cc: Likewise. | |
| * testsuite/23_containers/array/debug/square_brackets_operator1_neg.cc: | |
| Likewise. | |
| * testsuite/23_containers/array/debug/square_brackets_operator2_neg.cc: | |
| Likewise. | |
| * testsuite/23_containers/array/tuple_interface/get_neg.cc: | |
| Adjust dg-error line numbers. | |
| * testsuite/23_containers/deque/cons/clear_allocator.cc: Cast | |
| result to void. | |
| * testsuite/23_containers/deque/debug/invalidation/4.cc: | |
| Likewise. | |
| * testsuite/23_containers/deque/types/1.cc: Use | |
| -Wno-unused-result. | |
| * testsuite/23_containers/list/types/1.cc: Cast result to void. | |
| * testsuite/23_containers/priority_queue/members/7161.cc: | |
| Likewise. | |
| * testsuite/23_containers/queue/members/7157.cc: Likewise. | |
| * testsuite/23_containers/vector/59829.cc: Likewise. | |
| * testsuite/23_containers/vector/ext_pointer/types/1.cc: | |
| Likewise. | |
| * testsuite/23_containers/vector/ext_pointer/types/2.cc: | |
| Likewise. | |
| * testsuite/23_containers/vector/types/1.cc: Use | |
| -Wno-unused-result. | |
| 2021-08-04 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/iterator_concepts.h (iter_move): Add | |
| [[nodiscard]]. | |
| * include/bits/range_access.h (begin, end, cbegin, cend) | |
| (rbegin, rend, crbegin, crend, size, data, ssize): Likewise. | |
| * include/bits/ranges_base.h (ranges::begin, ranges::end) | |
| (ranges::cbegin, ranges::cend, ranges::rbegin, ranges::rend) | |
| (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize) | |
| (ranges::empty, ranges::data, ranges::cdata): Likewise. | |
| * include/bits/stl_iterator.h (reverse_iterator, __normal_iterator) | |
| (back_insert_iterator, front_insert_iterator, insert_iterator) | |
| (move_iterator, move_sentinel, common_iterator) | |
| (counted_iterator): Likewise. | |
| * include/bits/stl_iterator_base_funcs.h (distance, next, prev): | |
| Likewise. | |
| * include/bits/stream_iterator.h (istream_iterator) | |
| (ostream_iterartor): Likewise. | |
| * include/bits/streambuf_iterator.h (istreambuf_iterator) | |
| (ostreambuf_iterator): Likewise. | |
| * include/std/ranges (views::single, views::iota, views::all) | |
| (views::filter, views::transform, views::take, views::take_while) | |
| (views::drop, views::drop_while, views::join, views::lazy_split) | |
| (views::split, views::counted, views::common, views::reverse) | |
| (views::elements): Likewise. | |
| * testsuite/20_util/rel_ops.cc: Use -Wno-unused-result. | |
| * testsuite/24_iterators/move_iterator/greedy_ops.cc: Likewise. | |
| * testsuite/24_iterators/normal_iterator/greedy_ops.cc: | |
| Likewise. | |
| * testsuite/24_iterators/reverse_iterator/2.cc: Likewise. | |
| * testsuite/24_iterators/reverse_iterator/greedy_ops.cc: | |
| Likewise. | |
| * testsuite/21_strings/basic_string/range_access/char/1.cc: | |
| Cast result to void. | |
| * testsuite/21_strings/basic_string/range_access/wchar_t/1.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/23_containers/array/range_access.cc: Likewise. | |
| * testsuite/23_containers/deque/range_access.cc: Likewise. | |
| * testsuite/23_containers/forward_list/range_access.cc: | |
| Likewise. | |
| * testsuite/23_containers/list/range_access.cc: Likewise. | |
| * testsuite/23_containers/map/range_access.cc: Likewise. | |
| * testsuite/23_containers/multimap/range_access.cc: Likewise. | |
| * testsuite/23_containers/multiset/range_access.cc: Likewise. | |
| * testsuite/23_containers/set/range_access.cc: Likewise. | |
| * testsuite/23_containers/unordered_map/range_access.cc: | |
| Likewise. | |
| * testsuite/23_containers/unordered_multimap/range_access.cc: | |
| Likewise. | |
| * testsuite/23_containers/unordered_multiset/range_access.cc: | |
| Likewise. | |
| * testsuite/23_containers/unordered_set/range_access.cc: | |
| Likewise. | |
| * testsuite/23_containers/vector/range_access.cc: Likewise. | |
| * testsuite/24_iterators/customization_points/iter_move.cc: | |
| Likewise. | |
| * testsuite/24_iterators/istream_iterator/sentinel.cc: | |
| Likewise. | |
| * testsuite/24_iterators/istreambuf_iterator/sentinel.cc: | |
| Likewise. | |
| * testsuite/24_iterators/move_iterator/dr2061.cc: Likewise. | |
| * testsuite/24_iterators/operations/prev_neg.cc: Likewise. | |
| * testsuite/24_iterators/ostreambuf_iterator/2.cc: Likewise. | |
| * testsuite/24_iterators/range_access/range_access.cc: | |
| Likewise. | |
| * testsuite/24_iterators/range_operations/100768.cc: Likewise. | |
| * testsuite/26_numerics/valarray/range_access2.cc: Likewise. | |
| * testsuite/28_regex/range_access.cc: Likewise. | |
| * testsuite/experimental/string_view/range_access/char/1.cc: | |
| Likewise. | |
| * testsuite/experimental/string_view/range_access/wchar_t/1.cc: | |
| Likewise. | |
| * testsuite/ext/vstring/range_access.cc: Likewise. | |
| * testsuite/std/ranges/adaptors/take.cc: Likewise. | |
| * testsuite/std/ranges/p2259.cc: Likewise. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/random.tcc (linear_congruential_engine): Do not | |
| define static constexpr members when they are implicitly inline. | |
| * include/std/ratio (ratio, __ratio_multiply, __ratio_divide) | |
| (__ratio_add, __ratio_subtract): Likewise. | |
| * include/std/type_traits (integral_constant): Likewise. | |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error | |
| line number. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/util/testsuite_common_types.h: Replace uses of | |
| tr1::unordered_map and tr1::unordered_set with their C++11 | |
| equivalents. | |
| * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust | |
| dg-error line number. | |
| * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise. | |
| * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: | |
| Likewise. | |
| * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: | |
| Likewise. | |
| * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: | |
| Likewise. | |
| * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: | |
| Likewise. | |
| * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: | |
| Likewise. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/memory_resource (polymorphic_allocator::delete_object): | |
| Call destructor directly instead of using destroy. | |
| (allocator_traits<polymorphic_allocator<T>>): Define partial | |
| specialization. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/20_util/function_objects/binders/3113.cc: Remove | |
| trailing whitespace. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: | |
| Likewise. | |
| * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise. | |
| * testsuite/25_algorithms/headers/algorithm/synopsis.cc: | |
| Likewise. | |
| * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/2.cc: | |
| Likewise. | |
| * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/pod.cc: | |
| Likewise. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/evolution.xml: Document deprecation. | |
| * doc/html/*: Regenerate. | |
| * include/bits/c++config (_GLIBCXX14_DEPRECATED): Define. | |
| (_GLIBCXX14_DEPRECATED_SUGGEST): Define. | |
| * include/bits/stl_algo.h (random_shuffle): Deprecate for C++14 | |
| and later. | |
| * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adjust | |
| for C++11 and C++14 changes to std::random_shuffle and | |
| std::shuffle. | |
| * testsuite/25_algorithms/random_shuffle/1.cc: Add options to | |
| use deprecated algorithms. | |
| * testsuite/25_algorithms/random_shuffle/59603.cc: Likewise. | |
| * testsuite/25_algorithms/random_shuffle/moveable.cc: Likewise. | |
| * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/2.cc: | |
| Likewise. | |
| * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/pod.cc: | |
| Likewise. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/23_containers/forward_list/operations/3.cc: | |
| Use lambda instead of std::bind2nd. | |
| * testsuite/20_util/function_objects/binders/3113.cc: Add | |
| options for testing deprecated features. | |
| * testsuite/20_util/pair/cons/99957.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: | |
| Likewise. | |
| * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise. | |
| * testsuite/20_util/shared_ptr/creation/dr925.cc: Likewise. | |
| * testsuite/20_util/unique_ptr/cons/auto_ptr.cc: Likewise. | |
| * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise. | |
| * testsuite/ext/pb_ds/example/priority_queue_erase_if.cc: | |
| Likewise. | |
| * testsuite/ext/pb_ds/example/priority_queue_split_join.cc: | |
| Likewise. | |
| * testsuite/lib/dg-options.exp (dg_add_options_using-deprecated): | |
| New proc. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/regex_executor.h (_State_info): Replace | |
| unique_ptr<bool[]> with array of bool. | |
| * include/bits/regex_executor.tcc: Likewise. | |
| * include/bits/regex_scanner.tcc: Replace std::strchr with | |
| __builtin_strchr. | |
| * include/std/regex: Replace standard headers with smaller | |
| internal ones. | |
| * testsuite/28_regex/traits/char/lookup_classname.cc: Include | |
| <string.h> for strlen. | |
| * testsuite/28_regex/traits/char/lookup_collatename.cc: | |
| Likewise. | |
| 2021-08-03 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/locale_conv.h (__detail::_Scoped_ptr): Define new | |
| RAII class template. | |
| (wstring_convert, wbuffer_convert): Use __detail::_Scoped_ptr | |
| instead of unique_ptr. | |
| 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-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-08-02 Patrick Palka <ppalka@redhat.com> | |
| PR libstdc++/101483 | |
| * include/std/ranges (join_view::_Iterator::_Iterator): Add | |
| missing std::move. | |
| 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. | |
| 2021-08-02 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/20_util/tuple/comparison_operators/overloaded2.cc: | |
| Add dg-error for c++11_only target. | |
| 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. | |
| 2021-07-29 Hans-Peter Nilsson <hp@bitrange.com> | |
| * src/c++17/memory_resource.cc: Use __exchange instead | |
| of std::exchange. | |
| 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-07-27 Marek Polacek <polacek@redhat.com> | |
| DR 1512 | |
| PR c++/99701 | |
| * testsuite/20_util/tuple/comparison_operators/overloaded.cc: | |
| Move a line... | |
| * testsuite/20_util/tuple/comparison_operators/overloaded2.cc: | |
| ...here. New test. | |
| 2021-07-27 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/cow_string.h: Consistently use tab for | |
| indentation. | |
| 2021-07-27 Jonathan Wakely <jwakely@redhat.com> | |
| * include/Makefile.am: Add new header. | |
| * include/Makefile.in: Regenerate. | |
| * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI] | |
| (basic_string): Move definition of Copy-on-Write string to | |
| new file. | |
| * include/bits/basic_string.tcc: Likewise. | |
| * include/bits/cow_string.h: New file. | |
| 2021-07-27 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/algorithm: Do not include <utility>. | |
| * include/std/functional: Likewise. | |
| * include/std/regex: Include <bits/stl_pair.h> instead of | |
| <utility>. | |
| * include/debug/map.h: Likewise. | |
| * include/debug/multimap.h: Likewise. | |
| * include/debug/multiset.h: Likewise. | |
| * include/debug/set.h: Likewise. | |
| * include/debug/vector: Likewise. | |
| * include/bits/fs_path.h: Likewise. | |
| * include/bits/unique_ptr.h: Do not include <utility>. | |
| * include/experimental/any: Likewise. | |
| * include/experimental/executor: Likewise. | |
| * include/experimental/memory: Likewise. | |
| * include/experimental/optional: Likewise. | |
| * include/experimental/socket: Use __exchange instead | |
| of std::exchange. | |
| * src/filesystem/ops-common.h: Likewise. | |
| * testsuite/20_util/default_delete/48631_neg.cc: Adjust expected | |
| errors to not use a hardcoded line number. | |
| * testsuite/20_util/default_delete/void_neg.cc: Likewise. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: | |
| Include <utility> for std::as_const. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_default_construct/constrained.cc: | |
| Likewise. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: | |
| Likewise. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_value_construct/constrained.cc: | |
| Likewise. | |
| * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: | |
| Adjust dg-error line number. | |
| 2021-07-27 Jonathan Wakely <jwakely@redhat.com> | |
| * include/Makefile.am: Add bits/utility.h header. | |
| * include/Makefile.in: Regenerate. | |
| * include/bits/utility.h: New file. | |
| * include/std/utility (tuple_size, tuple_element): Move | |
| to new header. | |
| * include/std/type_traits (__is_tuple_like_impl<tuple<T...>>): | |
| Move to <tuple>. | |
| (_Index_tuple, _Build_index_tuple, integer_sequence): Likewise. | |
| (in_place_t, in_place_index_t, in_place_type_t): Likewise. | |
| * include/bits/ranges_util.h: Include new header instead of | |
| <utility>. | |
| * include/bits/stl_pair.h (tuple_size, tuple_element): Move | |
| partial specializations for std::pair here. | |
| (get): Move overloads for std::pair here. | |
| * include/std/any: Include new header instead of <utility>. | |
| * include/std/array: Likewise. | |
| * include/std/memory_resource: Likewise. | |
| * include/std/optional: Likewise. | |
| * include/std/variant: Likewise. | |
| * include/std/tuple: Likewise. | |
| (__is_tuple_like_impl<tuple<T...>>): Move here. | |
| (get) Declare overloads for std::array. | |
| * include/std/version (__cpp_lib_tuples_by_type): Change type | |
| to long. | |
| * testsuite/20_util/optional/84601.cc: Include <utility>. | |
| * testsuite/20_util/specialized_algorithms/uninitialized_fill/constrained.cc: | |
| Likewise. | |
| * testsuite/23_containers/array/tuple_interface/get_neg.cc: | |
| Adjust dg-error line numbers. | |
| * testsuite/std/ranges/access/cbegin.cc: Include <utility>. | |
| * testsuite/std/ranges/access/cend.cc: Likewise. | |
| * testsuite/std/ranges/access/end.cc: Likewise. | |
| * testsuite/std/ranges/single_view.cc: Likewise. | |
| 2021-07-23 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/future: Include <bits/atomic_base.h> instead of | |
| <atomic>. | |
| 2021-07-23 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_relops.h: Update documentation comments. | |
| 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-07-22 David Edelsohn <dje.gcc@gmail.com> | |
| * config/os/aix/os_defines.h (__LIBC_NO_CPP_MATH_OVERLOADS__): Define. | |
| 2021-07-22 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/94295 | |
| * include/ext/new_allocator.h (_GLIBCXX_OPERATOR_NEW) | |
| (_GLIBCXX_OPERATOR_DELETE, _GLIBCXX_SIZED_DEALLOC): Define. | |
| (allocator::allocate, allocator::deallocate): Use new macros. | |
| 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-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-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-07-21 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101542 | |
| * include/ext/rope (sequence_buffer): Add move constructor and | |
| move assignment operator. | |
| * testsuite/ext/rope/101542.cc: New test. | |
| 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-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-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-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/tuple (get<I>): Add deleted overload for bad | |
| index. | |
| * testsuite/20_util/tuple/element_access/get_neg.cc: Adjust | |
| expected errors. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/max_size_type.h (numeric_limits<__max_size_type>): | |
| Use __int_traits unconditionally. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/random.h (_Shift::__value): Use constexpr. | |
| (_Select_uint_least_t::type): Use using-declaration. | |
| (_Mod): Likewise. | |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error | |
| line number. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/cpp_type_traits.h (__INT_N): Use __extension__ | |
| instead of diagnostic pragmas. | |
| * include/bits/functional_hash.h: Likewise. | |
| * include/bits/iterator_concepts.h (__is_signed_int128) | |
| (__is_unsigned_int128): Likewise. | |
| * include/bits/max_size_type.h (__max_size_type): Likewise. | |
| (numeric_limits<__max_size_type>): Likewise. | |
| * include/bits/std_abs.h (abs): Likewise. | |
| * include/bits/stl_algobase.h (__size_to_integer): Likewise. | |
| * include/bits/uniform_int_dist.h (uniform_int_distribution): | |
| Likewise. | |
| * include/ext/numeric_traits.h (_GLIBCXX_INT_N_TRAITS): | |
| Likewise. | |
| * include/std/type_traits (__is_integral_helper<INT_N>) | |
| (__is_signed_integer, __is_unsigned_integer) | |
| (__make_unsigned<INT_N>, __make_signed<INT_N>): Likewise. | |
| * include/std/limits (__INT_N): Add __extension__ keyword. | |
| * include/bits/random.h (_Select_uint_least_t) | |
| (random_device): Likewise. | |
| 2021-07-16 Patrick Palka <ppalka@redhat.com> | |
| 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. | |
| 2021-07-16 Patrick Palka <ppalka@redhat.com> | |
| PR libstdc++/101214 | |
| * include/std/ranges (split_view::split_view): Use std::move. | |
| (split_view::_Iterator::_Iterator): Remove redundant | |
| default_initializable constraint. | |
| (split_view::_Sentinel::_Sentinel): Declare. | |
| * testsuite/std/ranges/adaptors/split.cc (test02): New test. | |
| 2021-07-16 Marek Polacek <polacek@redhat.com> | |
| * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Add | |
| dg-error. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/unique_ptr.h: Adjust doxygen markup. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101307 | |
| * include/std/type_traits: Adjust doxygen markup. | |
| 2021-07-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/cpp_type_traits.h: Add diagnostic pragmas around | |
| uses of non-standard integer types. | |
| * include/bits/functional_hash.h: Likewise. | |
| * include/bits/iterator_concepts.h: Likewise. | |
| * include/bits/max_size_type.h: Likewise. | |
| * include/bits/std_abs.h: Likewise. | |
| * include/bits/stl_algobase.h: Likewise. | |
| * include/bits/uniform_int_dist.h: Likewise. | |
| * include/ext/numeric_traits.h: Likewise. | |
| * include/std/type_traits: Likewise. | |
| 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-15 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101429 | |
| * include/bits/c++config (__replacement_assert): Add noexcept. | |
| [!_GLIBCXX_VERBOSE] (__glibcxx_assert_impl): Use __builtin_abort | |
| instead of __replacement_assert. | |
| 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-07-13 Jonathan Wakely <jwakely@redhat.com> | |
| PR c++/101361 | |
| * include/std/string_view (ends_with): Use traits_type::compare | |
| directly. | |
| 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-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-09 Matheus Castanho <msc@linux.ibm.com> | |
| * include/std/mutex (__lock_impl): Check | |
| _GLIBCXX_HAS_GTHREADS before using __gthread_yield. | |
| 2021-07-02 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101271 | |
| * include/bits/unique_ptr.h (unique_ptr<T[],D>::operator[]): | |
| Remove noexcept-specifier. | |
| (unique_ptr<T[],D>::_S_nothrow_deref): Remove. | |
| * testsuite/20_util/unique_ptr/lwg2762.cc: Remove checks for | |
| operator[]. | |
| 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-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-06-30 Jonathan Wakely <jwakely@redhat.com> | |
| * include/experimental/simd: Do not define anything pre-C++17. | |
| 2021-06-30 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/random.tcc [__cpp_inline_variables]: Remove | |
| redundant definitions of static constexpr member variables. | |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error | |
| line number. | |
| 2021-06-28 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/streambuf.tcc (__copy_streambufs_eof): Remove | |
| explicit instantiation declarations. | |
| * src/c++11/streambuf-inst.cc (__copy_streambufs_eof): Remove | |
| explicit instantiation definitions. | |
| 2021-06-28 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/97088 | |
| * testsuite/17_intro/names.cc: Fix #if condition for names used | |
| by newlib headers. | |
| 2021-06-28 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/101236 | |
| * include/bits/unique_ptr.h (unique_ptr<T[], D>::operator[]): | |
| Fail gracefully if element_type is incomplete. | |
| * testsuite/20_util/unique_ptr/cons/incomplete.cc: Clarify that | |
| the standard doesn't require this test to work for array types. | |
| * testsuite/20_util/unique_ptr/lwg2762.cc: Check that incomplete | |
| types can be used with array specialization. | |
| * testsuite/20_util/unique_ptr/101236.cc: New test. | |
| 2021-06-28 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/intro.xml: Document LWG 415 change. | |
| * doc/html/manual/bugs.html: Regenerate. | |
| * include/bits/istream.tcc (ws): Create sentry and catch | |
| exceptions. | |
| * testsuite/27_io/basic_istream/ws/char/lwg415.cc: New test. | |
| * testsuite/27_io/basic_istream/ws/wchar_t/lwg415.cc: New test. | |
| 2021-06-25 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ostream.tcc (basic_ostream::write): Call sputn | |
| directly instead of using _M_write. Do setstate(__err) all | |
| outside the try-catch block. | |
| * include/std/ostream (basic_ostream::_M_write): Declare | |
| private. Use __ostream_insert. Do not define for the versioned | |
| namespace. | |
| 2021-06-25 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/intro.xml: Document LWG 581 change. | |
| * doc/html/manual/bugs.html: Regenerate. | |
| * include/bits/basic_ios.tcc: Whitespace. | |
| * include/bits/ostream.tcc (basic_ostream::flush()): Construct | |
| sentry. | |
| * testsuite/27_io/basic_ostream/flush/char/2.cc: Check | |
| additional cases. | |
| * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc: | |
| Likewise. | |
| * testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise. | |
| * testsuite/27_io/basic_ostream/flush/wchar_t/exceptions_badbit_throw.cc: | |
| Likewise. | |
| 2021-06-25 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ostream.tcc (sentry): Only set failbit if badbit | |
| is set, not if eofbit is set. | |
| (tellp, seekp, seekp): Create sentry object. Do not set badbit | |
| on exceptions. | |
| * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc: | |
| Adjust expected behaviour. | |
| * testsuite/27_io/basic_ostream/seekp/wchar_t/exceptions_badbit_throw.cc: | |
| Likewise. | |
| * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc: | |
| Likewise. | |
| * testsuite/27_io/basic_ostream/tellp/wchar_t/exceptions_badbit_throw.cc: | |
| Likewise. | |
| * testsuite/27_io/basic_ostream/seekp/char/n3168.cc: New test. | |
| * testsuite/27_io/basic_ostream/seekp/wchar_t/n3168.cc: New test. | |
| * testsuite/27_io/basic_ostream/tellp/char/n3168.cc: New test. | |
| * testsuite/27_io/basic_ostream/tellp/wchar_t/n3168.cc: New test. | |
| 2021-06-25 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/syncstream (basic_syncbuf::swap()): Remove | |
| noexcept, as per LWG 3498. | |
| 2021-06-25 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/97088 | |
| * testsuite/17_intro/names.cc: Undef more names for newlib and | |
| also for arm-none-linux-gnueabi. | |
| * testsuite/experimental/names.cc: Disable PCH. | |
| 2021-06-25 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd.h (__bit_cast): Implement via | |
| __builtin_bit_cast #if available. | |
| (__proposed::simd_bit_cast): Add overloads for simd and | |
| simd_mask, which use __builtin_bit_cast (or __bit_cast #if not | |
| available), which return an object of the requested type with | |
| the same bits as the argument. | |
| * include/experimental/bits/simd_math.h: Use simd_bit_cast | |
| instead of __bit_cast to allow casts to fixed_size_simd. | |
| (copysign): Remove branch that was only required if __bit_cast | |
| cannot be constexpr. | |
| * testsuite/experimental/simd/tests/bits/test_values.h: Switch | |
| from __bit_cast to __proposed::simd_bit_cast since the former | |
| will not cast fixed_size objects anymore. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_math.h | |
| (_GLIBCXX_SIMD_MATH_CALL2_): Rename arg2_ to __arg2. | |
| (_GLIBCXX_SIMD_MATH_CALL3_): Rename arg2_ to __arg2 and arg3_ to | |
| __arg3. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd.h (__execute_on_index_sequence) | |
| (__execute_on_index_sequence_with_return) | |
| (__call_with_n_evaluations, __call_with_subscripts): Add flatten | |
| attribute. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_x86.h (_S_trunc, _S_floor) | |
| (_S_ceil): Set bit 8 (_MM_FROUND_NO_EXC) on AVX and SSE4.1 | |
| roundp[sd] calls. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_x86.h (_S_ldexp): The AVX512F | |
| implementation doesn't require a _VecBltnBtmsk ABI tag, it | |
| requires either a 64-Byte input (in which case AVX512F must be | |
| available) or AVX512VL. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_math.h: Undefine internal | |
| macros after use. | |
| (frexp): Move #if to a more sensible position and reformat | |
| preceding code. | |
| (logb): Call _SimdImpl::_S_logb for fixed_size instead of | |
| duplicating the code here. | |
| (modf): Simplify condition. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_math.h (fabs): Remove | |
| fabs(simd<integral>) overload. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_converter.h | |
| (_SimdConverter::operator()): Pass _SimdTuple by const-ref. | |
| * include/experimental/bits/simd_fixed_size.h | |
| (_GLIBCXX_SIMD_FIXED_OP): Pass binary operator _SimdTuple | |
| arguments by const-ref. | |
| (_S_masked_unary): Pass _SimdTuple by const-ref. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd_fixed_size.h | |
| (_AbisInSimdTuple): Removed. | |
| 2021-06-24 Matthias Kretz <m.kretz@gsi.de> | |
| * include/experimental/bits/simd.h: Add missing operator~ | |
| overload for simd<floating-point> to __float_bitwise_operators. | |
| * include/experimental/bits/simd_builtin.h | |
| (_SimdImplBuiltin::_S_complement): Bitcast to int (and back) to | |
| implement complement for floating-point vectors. | |
| * include/experimental/bits/simd_fixed_size.h | |
| (_SimdImplFixedSize::_S_copysign): New function, forwarding to | |
| copysign implementation of _SimdTuple members. | |
| * include/experimental/bits/simd_math.h (copysign): Call | |
| _SimdImpl::_S_copysign for fixed_size arguments. Simplify | |
| generic copysign implementation using the new ~ operator. | |
| 2021-06-24 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/experimental/simd/README.md: Fix typos. | |
| 2021-06-24 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/shared_ptr_base.h (__shared_ptr_access::operator[]): | |
| Add noexcept. | |
| * include/bits/unique_ptr.h (unique_ptr::operator*): Add | |
| conditional noexcept as per LWG 2762. | |
| * testsuite/20_util/shared_ptr/observers/array.cc: Check that | |
| dereferencing cannot throw. | |
| * testsuite/20_util/shared_ptr/observers/get.cc: Likewise. | |
| * testsuite/20_util/optional/observers/lwg2762.cc: New test. | |
| * testsuite/20_util/unique_ptr/lwg2762.cc: New test. | |
| 2021-06-23 Patrick Palka <ppalka@redhat.com> | |
| PR c++/101174 | |
| * testsuite/23_containers/multiset/cons/deduction.cc: | |
| Uncomment CTAD example that was rejected by this bug. | |
| * testsuite/23_containers/set/cons/deduction.cc: Likewise. | |
| 2021-06-23 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/chrono (chrono::year::is_leap()): Fix incorrect | |
| logic in comment. | |
| 2021-06-23 Matthias Kretz <m.kretz@gsi.de> | |
| * testsuite/experimental/simd/README.md: New file. | |
| 2021-06-23 Matthias Kretz <m.kretz@gsi.de> | |
| * testsuite/experimental/simd/driver.sh: Rewrite output | |
| verbosity logic. Add -p/--percentage option. Allow -v/--verbose | |
| to be used twice. Add -x and -o short options. Parse long | |
| options with = instead of separating space generically. Parce | |
| contracted short options. Make unrecognized options an error. | |
| If same-line output is active, trap on EXIT to increment the | |
| progress (only with --percentage), erase the line and print the | |
| current status. | |
| * testsuite/experimental/simd/generate_makefile.sh: Initialize | |
| helper files for progress account keeping. Update help target | |
| for changes to DRIVEROPTS. | |
| 2021-06-23 Matthias Kretz <m.kretz@gsi.de> | |
| * testsuite/Makefile.am (check-simd): Remove -fno-tree-vrp flag | |
| and associated warning. | |
| * testsuite/Makefile.in: Regenerate. | |
| 2021-06-23 Cassio Neri <cassio.neri@gmail.com> | |
| Jonathan Wakely <jwakely@redhat.com> | |
| Ulrich Drepper <drepper@redhat.com> | |
| * include/std/chrono (chrono::year::is_leap()): Optimize. | |
| 2021-06-23 Patrick Palka <ppalka@redhat.com> | |
| PR c++/86439 | |
| * testsuite/23_containers/map/cons/deduction.cc: Replace ambiguous | |
| CTAD examples. | |
| * testsuite/23_containers/multimap/cons/deduction.cc: Likewise. | |
| * testsuite/23_containers/multiset/cons/deduction.cc: Likewise. | |
| Mention one of the replaced examples is broken due to PR101174. | |
| * testsuite/23_containers/set/cons/deduction.cc: Likewise. | |
| * testsuite/23_containers/unordered_map/cons/deduction.cc: Replace | |
| ambiguous CTAD examples. | |
| * testsuite/23_containers/unordered_multimap/cons/deduction.cc: | |
| Likewise. | |
| * testsuite/23_containers/unordered_multiset/cons/deduction.cc: | |
| Likewise. | |
| * testsuite/23_containers/unordered_set/cons/deduction.cc: Likewise. | |
| 2021-06-23 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/mutex (__detail::__try_lock_impl): Rename | |
| parameter to avoid clashing with newlib's __lockable macro. | |
| (try_lock): Add 'inline' specifier. | |
| * testsuite/17_intro/names.cc: Add check for __lockable. | |
| * testsuite/30_threads/try_lock/5.cc: Add options for pthreads. | |
| 2021-06-22 Jonathan Wakely <jwakely@redhat.com> | |
| Matthias Kretz <m.kretz@gsi.de> | |
| * include/std/mutex (lock): Replace recursion with iteration | |
| when lockables all have the same type. | |
| (__detail::__try_lock_impl): Likewise. Pass lockables as | |
| parameters, instead of a tuple. Always lock the first one, and | |
| recurse for the rest. | |
| (__detail::__lock_impl): Adjust call to __try_lock_impl. | |
| (__detail::__try_to_lock): Remove. | |
| * testsuite/30_threads/lock/3.cc: Check that mutexes are locked. | |
| * testsuite/30_threads/lock/4.cc: Also test non-heterogeneous | |
| arguments. | |
| * testsuite/30_threads/unique_lock/cons/60497.cc: Also check | |
| std::try_lock. | |
| * testsuite/30_threads/try_lock/5.cc: New test. | |
| 2021-06-22 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/memory (declare_reachable, undeclare_reachable) | |
| (declare_no_pointers, undeclare_no_pointers, get_pointer_safety) | |
| (pointer_safety): Only define for C++11 to C++20 inclusive. | |
| * testsuite/20_util/pointer_safety/1.cc: Do not run for C++23. | |
| 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-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-21 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/mutex (__try_to_lock): Move to __detail namespace. | |
| (struct __try_lock_impl): Replace with ... | |
| (__detail::__try_lock_impl<Idx>(tuple<Lockables...>&)): New | |
| function templates to implement std::try_lock. | |
| (try_lock): Use new __try_lock_impl. | |
| (__detail::__lock_impl(int, int&, L0&, L1&...)): New function | |
| template to implement std::lock. | |
| (lock): Use __lock_impl. | |
| 2021-06-21 Patrick Palka <ppalka@redhat.com> | |
| * include/bits/ranges_cmp.h (__cpp_lib_ranges): Adjust value. | |
| 2021-06-20 Patrick Palka <ppalka@redhat.com> | |
| * include/std/ranges (__non_propagating_cache::operator bool): | |
| Define for split_view::begin(). | |
| (split_view): Define as per P2210. | |
| (views::__detail::__can_split_view): Define. | |
| (views::_Split, views::split): Define. | |
| * testsuite/std/ranges/adaptors/100577.cc (test01, test02): | |
| Test views::split. | |
| * testsuite/std/ranges/adaptors/split.cc: New test. | |
| * testsuite/std/ranges/p2325.cc (test08a): New test. | |
| * testsuite/std/ranges/p2367.cc (test01): Test views::split. | |
| 2021-06-20 Patrick Palka <ppalka@redhat.com> | |
| * include/std/ranges: Rename views::split to views::lazy_split, | |
| split_view to lazy_split_view, etc. throughout. | |
| * testsuite/std/ranges/*: Likewise. | |
| * testsuite/std/ranges/adaptors/lazy_split.cc: New file. | |
| * testsuite/std/ranges/adaptors/lazy_split_neg.cc: New file. | |
| 2021-06-20 Patrick Palka <ppalka@redhat.com> | |
| * include/std/ranges (split_view::_OuterIter::__at_end): | |
| Check _M_trailing_empty. | |
| (split_view::_OuterIter::_M_trailing_empty): Define this | |
| data member. | |
| (split_view::_OuterIter::operator++): Set _M_trailing_empty | |
| appropriately. | |
| (split_view::_OuterIter::operator==): Compare | |
| _M_trailing_empty. | |
| * testsuite/std/ranges/adaptors/100479.cc (test03): Expect two | |
| split parts instead of one. | |
| * testsuite/std/ranges/adaptors/split.cc (test11): New test. | |
| 2021-06-20 Patrick Palka <ppalka@redhat.com> | |
| * include/std/ranges (split_view::_InnerIter::base): Define as | |
| per P2210. | |
| 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-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-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-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-18 Patrick Palka <ppalka@redhat.com> | |
| * include/std/concepts (convertible_to): Just use declval as per | |
| LWG 3557. | |
| 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> | |
| * testsuite/21_strings/basic_string/cons/char/1.cc: Use | |
| diagnostic pragma to suppress -Wstringop-overread error. | |
| 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-06-18 Patrick Palka <ppalka@redhat.com> | |
| * 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 (back_insert_iterator): Remove the | |
| default ctor. | |
| (front_insert_iterator): Likewise. | |
| (insert_iterator): Likewise. Remove NSDMIs. | |
| (common_iterator): Constrain the default ctor. | |
| (counted_iterator): Likewise. | |
| * include/bits/stream_iterator.h (ostream_iterator): Remove the | |
| default ctor. | |
| * 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. | |
| (basic_istream_view): Remove the default ctor. Remove NSDMIs. | |
| Remove redundant checks for empty _M_stream. | |
| (basic_istream_view::_Iterator): Likewise. | |
| (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/24_iterators/back_insert_iterator/constexpr.cc: | |
| Don't attempt to default construct a back_insert_iterator. | |
| * testsuite/24_iterators/front_insert_iterator/constexpr.cc: | |
| Don't attempt to default construct a front_insert_iterator. | |
| * testsuite/24_iterators/insert_iterator/constexpr.cc: | |
| Don't attempt to default construct an insert_iterator. | |
| * testsuite/24_iterators/ostream_iterator/requirements/constexpr.cc: | |
| Remove this test for default constructibility of ostream_iterator. | |
| * testsuite/std/ranges/97600.cc: Don't attempt to default | |
| construct a basic_istream_view. | |
| * 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. | |
| 2021-06-17 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/91488 | |
| * include/bits/basic_string.h (__cpp_lib_constexpr_string): Only | |
| define when is_constant_evaluated is available. | |
| * include/bits/char_traits.h (__cpp_lib_constexpr_char_traits): | |
| Likewise. | |
| (__constant_string_p, __constant_array_p): Remove. | |
| (char_traits): Use is_constant_evaluated directly. | |
| * include/std/version (__cpp_lib_constexpr_char_traits) | |
| (__cpp_lib_constexpr_string): Only define when | |
| is_constant_evaluated is available. | |
| 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-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-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/iterator_concepts.h (__decay_copy): Name type. | |
| 2021-06-16 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ranges_base.h (ranges::begin, ranges::end) | |
| (ranges::cbegin, ranges::cend, ranges::rbeing, ranges::rend) | |
| (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize) | |
| (ranges::empty, ranges::data, ranges::cdata): Remove final | |
| keywords and deleted operator& overloads. | |
| * testsuite/24_iterators/customization_points/iter_move.cc: Use | |
| new is_customization_point_object function. | |
| * testsuite/24_iterators/customization_points/iter_swap.cc: | |
| Likewise. | |
| * testsuite/std/concepts/concepts.lang/concept.swappable/swap.cc: | |
| Likewise. | |
| * testsuite/std/ranges/access/begin.cc: Likewise. | |
| * testsuite/std/ranges/access/cbegin.cc: Likewise. | |
| * testsuite/std/ranges/access/cdata.cc: Likewise. | |
| * testsuite/std/ranges/access/cend.cc: Likewise. | |
| * testsuite/std/ranges/access/crbegin.cc: Likewise. | |
| * testsuite/std/ranges/access/crend.cc: Likewise. | |
| * testsuite/std/ranges/access/data.cc: Likewise. | |
| * testsuite/std/ranges/access/empty.cc: Likewise. | |
| * testsuite/std/ranges/access/end.cc: Likewise. | |
| * testsuite/std/ranges/access/rbegin.cc: Likewise. | |
| * testsuite/std/ranges/access/rend.cc: Likewise. | |
| * testsuite/std/ranges/access/size.cc: Likewise. | |
| * testsuite/std/ranges/access/ssize.cc: Likewise. | |
| * testsuite/util/testsuite_iterators.h | |
| (is_customization_point_object): New function. | |
| 2021-06-15 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ranges_base.h (ranges::begin, ranges::end) | |
| (ranges::cbegin, ranges::cend, ranges::rbeing, ranges::rend) | |
| (ranges::crbegin, ranges::crend, ranges::size, ranges::ssize) | |
| (ranges::empty, ranges::data, ranges::cdata): Make types final. | |
| Add deleted operator& overloads. | |
| (ranges::advance, ranges::distance, ranges::next, ranges::prev): | |
| Likewise. | |
| * testsuite/std/ranges/headers/ranges/synopsis.cc: Replace | |
| ill-formed & expressions with using-declarations. Add checks for | |
| other function objects. | |
| 2021-06-15 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/ranges_util.h (view_interface): Add noexcept to | |
| empty, operator bool, data and size members. | |
| (subrange): Add noexcept to constructors. | |
| * include/std/ranges (single_view, ref_view): Add noexcept to | |
| constructors. | |
| (views::single, views::all): Add noexcept. | |
| * testsuite/std/ranges/adaptors/all.cc: Check noexcept. | |
| * testsuite/std/ranges/single_view.cc: Likewise. | |
| 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-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-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-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> | |
| * testsuite/experimental/filesystem/path/native/conv_c++23.cc: | |
| Add dg-require-filesystem-ts directive. | |
| 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> | |
| * testsuite/17_intro/headers/c++2017/all_attributes.cc: Add | |
| -std=gnu++17 option. | |
| 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-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-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-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-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-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-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-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> | |
| * include/std/barrier (__tree_barrier::_M_arrive): Remove | |
| unnecessary hasher instantiation. | |
| 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-07 Avi Kivity <avi@scylladb.com> | |
| PR libstdc++/100900 | |
| * include/std/ranges (elements_view::__iter_cat::_S_iter_cat): | |
| Add missing typename. | |
| 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-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-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-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-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-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-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-03 Patrick Palka <ppalka@redhat.com> | |
| * 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-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-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-06-02 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/96088 | |
| * testsuite/23_containers/unordered_map/96088.cc: Adjust | |
| expected number of allocations. | |
| * testsuite/23_containers/unordered_set/96088.cc: Likewise. | |
| 2021-06-02 Jonathan Wakely <jwakely@redhat.com> | |
| * doc/xml/manual/status_cxxis29124.xml: Improve punctuation. | |
| * doc/xml/manual/status_cxxtr1.xml: Likewise. | |
| * doc/xml/manual/status_cxxtr24733.xml: Likewise. | |
| * doc/html/*: Regenerate. | |
| 2021-06-01 Patrick Palka <ppalka@redhat.com> | |
| PR c++/65816 | |
| * testsuite/23_containers/deque/allocator/default_init.cc, | |
| testsuite/23_containers/forward_list/allocator/default_init.cc, | |
| testsuite/23_containers/list/allocator/default_init.cc, | |
| testsuite/23_containers/map/allocator/default_init.cc, | |
| testsuite/23_containers/set/allocator/default_init.cc, | |
| testsuite/23_containers/vector/allocator/default_init.cc, | |
| testsuite/23_containers/vector/bool/allocator/default_init.cc: | |
| Remove xfail. | |
| 2021-06-01 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/23_containers/unordered_map/96088.cc: Change | |
| effective target to c++17. | |
| * testsuite/23_containers/unordered_set/96088.cc: Likewise. | |
| 2021-06-01 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/22_locale/ctype/is/string/89728_neg.cc: Only test | |
| isblank for C++11 and later. | |
| 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-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-30 Gerald Pfeifer <gerald@pfeifer.com> | |
| * doc/xml/manual/abi.xml: Remove dead reference to "Intel | |
| Compilers for Linux: Compatibility with GNU Compilers" article. | |
| * doc/html/manual/abi.html: Regenerate. | |
| 2021-05-26 François Dumont <fdumont@gcc.gnu.org> | |
| * include/debug/formatter.h | |
| (_Error_formatter::_Parameter::_Named): New. | |
| (_Error_formatter::_Parameter::_Type): Inherit latter. | |
| (_Error_formatter::_Parameter::_M_integer): Likewise. | |
| (_Error_formatter::_Parameter::_M_string): Likewise. | |
| * src/c++11/debug.cc: Include <cstring>. | |
| (_Print_func_t): New. | |
| (print_raw(PrintContext&, const char*, ptrdiff_t)): New. | |
| (print_word): Use '%.*s' format in fprintf to render only expected number of chars. | |
| (pretty_print(PrintContext&, const char*, _Print_func_t)): New. | |
| (print_type): Rename in... | |
| (print_type_info): ...this. Use pretty_print. | |
| (print_address, print_integer): New. | |
| (print_named_name, print_iterator_constness, print_iterator_state): New. | |
| (print_iterator_seq_type): New. | |
| (print_named_field, print_type_field, print_instance_field, print_iterator_field): New. | |
| (print_field): Use latters. | |
| (print_quoted_named_name, print_type_type, print_type, print_instance): New. | |
| (print_string(PrintContext&, const char*, const _Parameter*, size_t)): | |
| Change signature to... | |
| (print_string(PrintContext&, const char*, ptrdiff_t, const _Parameter*, size_t)): | |
| ...this and adapt. Remove intermediate buffer to render input string. | |
| (print_string(PrintContext&, const char*, ptrdiff_t)): New. | |
| 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-05-24 François Dumont <fdumont@gcc.gnu.org> | |
| PR libstdc++/96088 | |
| * include/bits/hashtable_policy.h (_Select2nd): New. | |
| (_NodeBuilder<>): New. | |
| (_ReuseOrAllocNode<>::operator()): Use variadic template args. | |
| (_AllocNode<>::operator()): Likewise. | |
| * include/bits/hashtable.h | |
| (_Hashtable<>::__node_builder_t): New. | |
| (_Hashtable<>::_M_insert_unique<>(_Kt&&, _Arg&&, const _NodeGenerator&)): | |
| New. | |
| (_Hashtable<>::_S_forward_key): New. | |
| (_Hashtable<>::_M_insert): Use latter. | |
| (_Hashtable<>::_M_insert(const_iterator, _Arg&&, const _NodeGenerator&, false_type)): | |
| Instantiate node first, compute hash code second. | |
| * testsuite/23_containers/unordered_map/96088.cc: New test. | |
| * testsuite/23_containers/unordered_multimap/96088.cc: New test. | |
| * testsuite/23_containers/unordered_multiset/96088.cc: New test. | |
| * testsuite/23_containers/unordered_set/96088.cc: New test. | |
| * testsuite/util/replacement_memory_operators.h | |
| (counter::_M_increment): New. | |
| (counter::_M_decrement): New. | |
| (counter::reset()): New. | |
| 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-24 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/25_algorithms/inplace_merge/constrained.cc: Qualify | |
| call to ranges::next. | |
| * testsuite/25_algorithms/is_sorted/constrained.cc: Likewise. | |
| * testsuite/25_algorithms/is_sorted_until/constrained.cc: | |
| Likewise. | |
| * testsuite/25_algorithms/swap_ranges/1.cc: Qualify call to | |
| swap_ranges. | |
| 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-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-05-20 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/random.tcc (__representable_as_double) | |
| (__p1_representable_as_double): Add "" to static asserts. | |
| 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-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-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-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-05-18 Thomas Schwinge <thomas@codesourcery.com> | |
| * testsuite/lib/prune.exp: Add note about 'dg-note'. | |
| 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-05-18 Patrick Palka <ppalka@redhat.com> | |
| PR libstdc++/100621 | |
| * include/std/ranges (reverse_view::_S_needs_cached_begin): | |
| Set to true if the underlying non-common random-access range | |
| doesn't have a sized sentinel. | |
| 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-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-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 Antony Polukhin <antoshkka@gmail.com> | |
| PR libstdc++/89728 | |
| * include/bits/locale_facets.h (ctype<basic_string<C,T,A>>): | |
| Declare (but do not define) partial specialization. | |
| * testsuite/22_locale/ctype/is/string/89728_neg.cc: New test. | |
| 2021-05-17 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/thread (jthread::_S_create): Fix static assert | |
| message. | |
| * testsuite/30_threads/jthread/95989.cc: Re-enable test. | |
| * testsuite/30_threads/jthread/jthread.cc: Do not require | |
| pthread effective target. | |
| * testsuite/30_threads/jthread/2.cc: Moved to... | |
| * testsuite/30_threads/jthread/version.cc: ...here. | |
| 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-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-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-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> | |
| * 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-10 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/stop_token: Remove TODO comment. | |
| 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-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-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-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-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-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-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-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-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-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-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-10 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/20_util/variant/compile.cc: Rename 'any' to avoid | |
| clash with std::any. | |
| 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> | |
| * include/bits/stl_algobase.h (__copy_move, __copy_move_backward): | |
| Improve static_assert messages. | |
| * testsuite/25_algorithms/copy/58982.cc: Adjust expected output. | |
| * testsuite/25_algorithms/copy_n/58982.cc: Likewise. | |
| 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-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-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-06 Jonathan Wakely <jwakely@redhat.com> | |
| Revert: | |
| 2021-05-05 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/charconv (__from_chars_alnum): Pass unsigned | |
| char to std::isdigit. | |
| 2021-05-05 Patrick Palka <ppalka@redhat.com> | |
| * include/bits/ranges_util.h (enable_borrowed_range<subrange>): | |
| Remove constraints on this partial specialization. | |
| * include/std/ranges (enable_borrowed_range<iota_view>): | |
| Likewise. | |
| 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-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-05 Jonathan Wakely <jwakely@redhat.com> | |
| * include/std/charconv (__from_chars_alnum): Pass unsigned | |
| char to std::isdigit. | |
| 2021-05-05 Corentin Gay <gay@adacore.com> | |
| * acinclude.m4: Add VxWorks-specific case for the | |
| configuration of ctypes. | |
| * configure: Regenerate. | |
| * config/locale/vxworks/ctype_members.cc: Add VxWorks-specific | |
| version. | |
| * config/os/vxworks/ctype_base.h: Adjust for VxWorks7+. | |
| * config/os/vxworks/ctype_configure_char.cc: Likewise. | |
| * config/os/vxworks/ctype_inline.h: Likewise. | |
| * testsuite/28_regex/traits/char/isctype.cc: Defines | |
| NEWLINE_IN_CLASS_BLANK if the target is VxWorks. | |
| * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise. | |
| 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-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-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-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-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-04 Jonathan Wakely <jwakely@redhat.com> | |
| * acinclude.m4 (GLIBCXX_ENABLE_INT128_FLOAT128): Remove | |
| checks for __int128 and rename to GLIBCXX_ENABLE_FLOAT128. | |
| * config.h.in: Regenerate. | |
| * configure: Regenerate. | |
| * configure.ac: Adjust to use GLIBCXX_ENABLE_FLOAT128. | |
| * include/bits/random.h (_Select_uint_least_t<s, 1>): | |
| Use __SIZEOF_INT128__ to decide whether to use __int128. | |
| * include/std/charconv (__to_chars_unsigned_type): Likewise. | |
| 2021-05-03 Gerald Pfeifer <gerald@pfeifer.com> | |
| * doc/xml/manual/ctype.xml: Move unix.org reference to https. | |
| * doc/html/manual/facets.html: Regenerate. | |
| 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-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-30 Jonathan Wakely <jwakely@redhat.com> | |
| * acinclude.m4 (GLIBCXX_CHECK_INT64_T): Delete. | |
| * config.h.in: Regenerate. | |
| * configure: Regenerate. | |
| * configure.ac: Do not use GLIBCXX_CHECK_INT64_T. | |
| * include/bits/postypes.h: Remove include of <stdint.h> and | |
| definition/undefinition of the __STDC_LIMIT_MACROS and | |
| __STDC_CONSTANT_MACROS macros. | |
| (streamoff): Use __INT64_TYPE__ if defined. | |
| 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 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-04-30 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/60497 | |
| * include/bits/basic_ios.tcc (basic_ios::copyfmt): use | |
| std::addressof. | |
| * include/bits/basic_string.tcc (basic_string::swap) | |
| (basic_string::assign): Likewise. | |
| * include/bits/deque.tcc (deque::operator=(const deque&)): | |
| Likewise. | |
| * include/bits/stl_tree.h (_Rb_tree::operator=(const * _Rb_tree&)): | |
| Likewise. | |
| * include/bits/vector.tcc (vector::operator=(const vector&)): | |
| Likewise. | |
| 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-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-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-04-28 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/97930 | |
| * testsuite/20_util/pair/requirements/structural.cc: New test. | |
| 2021-04-28 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/stl_pair.h (pair) [__cplusplus > 202002]: Add | |
| new definitions for constructors and assignment operators using | |
| concepts for constraints. | |
| * testsuite/20_util/pair/cons/99957.cc: Disable for C++20 and | |
| later. | |
| * testsuite/20_util/pair/cons/explicit_construct.cc: Adjust | |
| expected error messages to also match C++20 errors. | |
| 2021-04-28 Jonathan Wakely <jwakely@redhat.com> | |
| PR libstdc++/99957 | |
| * include/bits/stl_pair.h (_PCC::_MoveCopyPair, _PCC::_CopyMovePair): | |
| Combine and replace with ... | |
| (_PCC::_DeprConsPair): New SFINAE helper function. | |
| (pair): Merge preprocessor blocks so that all C++03 members | |
| are defined together at the end. | |
| (pair::pair(const _T1&, _U2&&), pair::pair(_U1&&, const _T2&)): | |
| Replace _T1 and _T2 parameters with __null_ptr_constant and | |
| adjust constraints. | |
| * testsuite/20_util/pair/40925.cc: Use nullptr instead of 0. | |
| * testsuite/20_util/pair/cons/explicit_construct.cc: Likewise. | |
| * testsuite/20_util/pair/cons/99957.cc: New test. | |
| 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> | |
| * doc/Makefile.am (stamp-pdf-doxygen): Improve comment about | |
| dealing with errors. Use '@' to prevent shell command being | |
| echoed. | |
| * doc/Makefile.in: Regenerate. | |
| 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 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-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 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 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-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-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-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-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-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-04-26 Jonathan Wakely <jwakely@redhat.com> | |
| * include/bits/semaphore_base.h: Include <exception> and <errno.h>. | |
| 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-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-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-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-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-04-22 David Edelsohn <dje.gcc@gmail.com> | |
| * config/os/aix/atomicity.h: Delete. | |
| 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-22 Jonathan Wakely <jwakely@redhat.com> | |
| * testsuite/30_threads/semaphore/try_acquire_posix.cc: Add | |
| options for libatomic. | |
| 2021-04-22 Jonathan Wakely <jwakely@redhat.com> | |
| * config/os/gnu-linux/os_defines.h: Fix type in comment. | |
| 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-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 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 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-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 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-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> | |
| * include/std/latch: Replace tab characters in license text. | |
| * include/std/semaphore: Likewise. | |
| 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> | |
| * 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> | |
| * 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> | |
| 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> | |
| 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> | |
| * 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. |