X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=libstdc%2B%2B-v3%2FChangeLog;h=673e93a15f4e9bc8f047f2baf3fcc70af6a0e29c;hb=8428bcd70374dc5643519562ebb01c5e097d9ee7;hp=a57959d706baa7a23202124be70e1430931d7205;hpb=590a8bec3ed92118e084b0a1897d3314a666170e;p=thirdparty%2Fgcc.git diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index a57959d706ba..673e93a15f4e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,1205 @@ +2023-11-30 Jonathan Wakely + + * include/std/ranges (__detail::__toable): Fix incorrect use of + _Range instead of _Cont. + (__detail::_ToClosure, __detail::_ToClosure2): Add missing + constexpr specifier on constructors. + * testsuite/std/ranges/conv/1.cc (_Cont, _Cont2, _Cont3): Remove + unnecessary begin() and end() members. + (test_constexpr): New function to check range adaptors are + usable in constant expressions. + +2023-11-29 Thomas Schwinge + + * testsuite/23_containers/span/at.cc: Fix for '-fno-exceptions' + configurations. + +2023-11-28 Jonathan Wakely + + * include/bits/atomic_wait.h: Include . + +2023-11-28 Jonathan Wakely + + * include/bits/stl_uninitialized.h: Fix typo in comment. + +2023-11-24 Jan Hubicka + + PR middle-end/109849 + * include/bits/stl_uninitialized.h (__relocate_a_1): Use memcpy instead + of memmove. + +2023-11-23 Jonathan Wakely + + PR libstdc++/111055 + * include/bits/ranges_base.h (from_range_t): Define new tag + type. + (from_range): Define new tag object. + * include/bits/version.def (ranges_to_container): Define. + * include/bits/version.h: Regenerate. + * include/std/ranges (ranges::to): Define. + * testsuite/std/ranges/conv/1.cc: New test. + * testsuite/std/ranges/conv/2_neg.cc: New test. + * testsuite/std/ranges/conv/version.cc: New test. + +2023-11-23 Jonathan Wakely + + * testsuite/util/testsuite_allocator.h (uneq_allocator): Fix + equality operator for heterogeneous comparisons. + +2023-11-21 Jonathan Wakely + + * include/bits/version.def (freestanding_cstring): Add. + * include/bits/version.h: Regenerate. + * include/c_compatibility/string.h (strtok): Do not declare for + C++26 freestanding. + * include/c_global/cstring (strtok): Likewise. + * testsuite/21_strings/headers/cstring/version.cc: New test. + +2023-11-21 Jonathan Wakely + + * include/bits/version.def (freestanding_algorithm) + (freestanding_array, freestanding_optional) + (freestanding_string_view, freestanding_variant): Add. + * include/bits/version.h: Regenerate. + * include/std/algorithm (__glibcxx_want_freestanding_algorithm): + Define. + * include/std/array (__glibcxx_want_freestanding_array): + Define. + * include/std/optional (__glibcxx_want_freestanding_optional): + Define. + * include/std/string_view + (__glibcxx_want_freestanding_string_view): Define. + * include/std/variant (__glibcxx_want_freestanding_variant): + Define. + * testsuite/20_util/optional/version.cc: Add checks for + __cpp_lib_freestanding_optional. + * testsuite/20_util/variant/version.cc: Add checks for + __cpp_lib_freestanding_variant. + * testsuite/23_containers/array/tuple_interface/get_neg.cc: + Adjust dg-error line numbers. + * testsuite/21_strings/basic_string_view/requirements/version.cc: + New test. + * testsuite/23_containers/array/requirements/version.cc: New + test. + * testsuite/25_algorithms/fill_n/requirements/version.cc: New + test. + * testsuite/25_algorithms/swap_ranges/requirements/version.cc: + New test. + +2023-11-21 Jonathan Wakely + + * include/bits/version.def (freestanding_expected): New macro. + (span): Add C++26 value. + * include/bits/version.h: Regenerate. + * include/std/expected (__glibcxx_want_freestanding_expected): + Define. + * include/std/span (span::at): New member function. + * testsuite/20_util/expected/version.cc: Add checks for + __cpp_lib_freestanding_expected. + * testsuite/23_containers/span/2.cc: Moved to... + * testsuite/23_containers/span/version.cc: ...here. Add checks + for __cpp_lib_span in as well as in . + * testsuite/23_containers/span/1.cc: Removed. + * testsuite/23_containers/span/at.cc: New test. + +2023-11-21 Jonathan Wakely + + * include/tr2/dynamic_bitset (dynamic_bitset): Pass zero and one + characters to _M_copy_from_string. + * testsuite/tr2/dynamic_bitset/string.cc: New test. + +2023-11-21 Jonathan Wakely + + * doc/html/*: Regenerate. + * doc/xml/faq.xml: Remove reference to buildstat.html pages. + * doc/xml/manual/test.xml: Likewise + +2023-11-21 Jan Hubicka + + PR libstdc++/110287 + PR middle-end/109811 + PR middle-end/109849 + * include/bits/stl_vector.h (_M_realloc_append): New member function. + (push_back): Use it. + * include/bits/vector.tcc: (emplace_back): Use it. + (_M_realloc_insert): Let compiler know that new vector size is non-zero. + (_M_realloc_append): New member function. + +2023-11-18 Jonathan Wakely + + PR libstdc++/112607 + * include/std/format (basic_format_arg::_S_to_arg_type): Check + value_type for basic_string_view and basic_string + specializations. + * testsuite/std/format/arguments/112607.cc: New test. + +2023-11-18 Jonathan Wakely + + PR libstdc++/110801 + * include/std/format (_Sink_iter::_M_reserve): New member + function. + (_Sink::_Reservation): New nested class. + (_Sink::_M_reserve, _Sink::_M_bump): New virtual functions. + (_Seq_sink::_M_reserve, _Seq_sink::_M_bump): New virtual + overrides. + (_Iter_sink::_M_reserve): Likewise. + (__do_vformat_to): Use new functions to optimize "{}" case. + +2023-11-17 Jonathan Wakely + + * config.h.in: Regenerate. + +2023-11-17 Jonathan Wakely + + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/version.def (saturation_arithmetic): Define. + * include/bits/version.h: Regenerate. + * include/std/numeric: Include new header. + * include/bits/sat_arith.h: New file. + * testsuite/26_numerics/saturation/add.cc: New test. + * testsuite/26_numerics/saturation/cast.cc: New test. + * testsuite/26_numerics/saturation/div.cc: New test. + * testsuite/26_numerics/saturation/mul.cc: New test. + * testsuite/26_numerics/saturation/sub.cc: New test. + * testsuite/26_numerics/saturation/version.cc: New test. + +2023-11-17 Jonathan Wakely + + * include/std/utility (in_range): Rename _Up parameter to _Res. + +2023-11-17 Jonathan Wakely + + * include/bits/out_ptr.h: Add Doxygen comments. Remove a + redundant preprocessor condition. + * testsuite/20_util/smartptr.adapt/version.cc: New test. + +2023-11-17 Jonathan Wakely + + * include/bits/chrono_io.h: Fix Doxygen markup. + +2023-11-16 Jonathan Wakely + + PR libstdc++/112564 + * include/std/stacktrace (formatter::format): Format according + to format-spec. + * include/std/thread (formatter::format): Use _Align_right as + default. + * testsuite/19_diagnostics/stacktrace/output.cc: Check + fill-and-align handling. Change compile test to run. + * testsuite/30_threads/thread/id/output.cc: Check fill-and-align + handling. + +2023-11-16 Jonathan Wakely + + PR libstdc++/111667 + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/bits/out_ptr.h: New file. + * include/bits/shared_ptr.h (__is_shared_ptr): Move definition + to here ... + * include/bits/shared_ptr_atomic.h (__is_shared_ptr): ... from + here. + * include/bits/shared_ptr_base.h (__shared_count): Declare + out_ptr_t as a friend. + (_Sp_counted_deleter, __shared_ptr): Likewise. + * include/bits/unique_ptr.h (unique_ptr, unique_ptr): + Declare out_ptr_t and inout_ptr_t as friends. + (__is_unique_ptr): Define new variable template. + * include/bits/version.def (out_ptr): Define. + * include/bits/version.h: Regenerate. + * include/std/memory: Include new header. + * testsuite/20_util/smartptr.adapt/inout_ptr/1.cc: New test. + * testsuite/20_util/smartptr.adapt/inout_ptr/2.cc: New test. + * testsuite/20_util/smartptr.adapt/inout_ptr/shared_ptr_neg.cc: + New test. + * testsuite/20_util/smartptr.adapt/inout_ptr/void_ptr.cc: New + test. + * testsuite/20_util/smartptr.adapt/out_ptr/1.cc: New test. + * testsuite/20_util/smartptr.adapt/out_ptr/2.cc: New test. + * testsuite/20_util/smartptr.adapt/out_ptr/shared_ptr_neg.cc: + New test. + * testsuite/20_util/smartptr.adapt/out_ptr/void_ptr.cc: New + test. + +2023-11-16 Jonathan Wakely + + * include/bits/algorithmfwd.h: Do not define standard feature + test macro here. + * include/bits/align.h: Likewise. Test internal macros instead + of standard macros. + * include/bits/alloc_traits.h: Likewise. + * include/bits/allocator.h: Likewise. + * include/bits/atomic_base.h: Likewise. + * include/bits/atomic_timed_wait.h: Likewise. + * include/bits/atomic_wait.h: Likewise. + * include/bits/basic_string.h: Likewise. + * include/bits/basic_string.tcc: Likewise. + * include/bits/char_traits.h: Likewise. + * include/bits/chrono.h: Likewise. + * include/bits/cow_string.h: Likewise. + * include/bits/forward_list.h: Likewise. + * include/bits/hashtable.h: Likewise. + * include/bits/ios_base.h: Likewise. + * include/bits/memory_resource.h: Likewise. + * include/bits/move.h: Likewise. + * include/bits/move_only_function.h: Likewise. + * include/bits/node_handle.h: Likewise. + * include/bits/ptr_traits.h: Likewise. + * include/bits/range_access.h: Likewise. + * include/bits/ranges_algo.h: Likewise. + * include/bits/ranges_cmp.h: Likewise. + * include/bits/ranges_util.h: Likewise. + * include/bits/semaphore_base.h: Likewise. + * include/bits/shared_ptr.h: Likewise. + * include/bits/shared_ptr_atomic.h: Likewise. + * include/bits/shared_ptr_base.h: Likewise. + * include/bits/stl_algo.h: Likewise. + * include/bits/stl_algobase.h: Likewise. + * include/bits/stl_function.h: Likewise. + * include/bits/stl_iterator.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/stl_pair.h: Likewise. + * include/bits/stl_queue.h: Likewise. + * include/bits/stl_stack.h: Likewise. + * include/bits/stl_tree.h: Likewise. + * include/bits/stl_uninitialized.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/unique_ptr.h: Likewise. + * include/bits/unordered_map.h: Likewise. + * include/bits/uses_allocator_args.h: Likewise. + * include/bits/utility.h: Likewise. + * include/bits/erase_if.h: Add comment. + * include/std/algorithm: Define standard feature test macros + here. + * include/std/atomic: Likewise. + * include/std/array: Likewise. + * include/std/chrono: Likewise. + * include/std/condition_variable: Likewise. + * include/std/deque: Likewise. + * include/std/format: Likewise. + * include/std/functional: Likewise. + * include/std/forward_list: Likewise. + * include/std/ios: Likewise. + * include/std/iterator: Likewise. + * include/std/list: Likewise. + * include/std/map: Likewise. + * include/std/memory: Likewise. + * include/std/numeric: Likewise. + * include/std/queue: Likewise. + * include/std/ranges: Likewise. + * include/std/regex: Likewise. + * include/std/set: Likewise. + * include/std/stack: Likewise. + * include/std/stop_token: Likewise. + * include/std/string: Likewise. + * include/std/string_view: + * include/std/tuple: Likewise. + * include/std/unordered_map: + * include/std/unordered_set: + * include/std/utility: Likewise. + * include/std/vector: Likewise. + * include/std/scoped_allocator: Query internal macros instead of + standard macros. + +2023-11-16 Jonathan Wakely + + * testsuite/18_support/byte/requirements.cc: Disable PCH. + * testsuite/18_support/destroying_delete.cc: Likewise. + * testsuite/18_support/source_location/1.cc: Likewise. + * testsuite/18_support/source_location/version.cc: Likewise. + * testsuite/18_support/type_info/constexpr.cc: Likewise. + * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: + Likewise. + * testsuite/19_diagnostics/stacktrace/output.cc: Likewise. + * testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise. + * testsuite/19_diagnostics/stacktrace/version.cc: Likewise. + * testsuite/20_util/addressof/requirements/constexpr.cc: + Likewise. + * testsuite/20_util/allocator_traits/header-2.cc: Likewise. + * testsuite/20_util/allocator_traits/header.cc: Likewise. + * testsuite/20_util/as_const/1.cc: Likewise. Likewise. + * testsuite/20_util/bitset/cons/constexpr_c++23.cc: Likewise. + * testsuite/20_util/bitset/version.cc: Likewise. + * testsuite/20_util/duration/arithmetic/constexpr_c++17.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/exchange/constexpr.cc: Likewise. + * testsuite/20_util/expected/synopsis.cc: Likewise. + * testsuite/20_util/expected/version.cc: Likewise. + * testsuite/20_util/function_objects/bind_front/1.cc: Likewise. + * testsuite/20_util/function_objects/bind_front/2.cc: Likewise. + * testsuite/20_util/function_objects/invoke/3.cc: Likewise. + * testsuite/20_util/function_objects/invoke/4.cc: Likewise. + * testsuite/20_util/function_objects/invoke/constexpr.cc: + Likewise. + * testsuite/20_util/function_objects/invoke/version.cc: + Likewise. + * testsuite/20_util/function_objects/searchers.cc: Likewise. + * testsuite/20_util/integer_comparisons/1.cc: Likewise. + * testsuite/20_util/integer_comparisons/2.cc: Likewise. + * testsuite/20_util/is_bounded_array/value.cc: Likewise. + * testsuite/20_util/is_layout_compatible/value.cc: Likewise. + * testsuite/20_util/is_layout_compatible/version.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/value.h: Likewise. + * testsuite/20_util/is_nothrow_swappable_with/requirements/explicit_instantiation.cc: + Remove redundant checks already tested elsewhere. + * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc: + Likewise. + * testsuite/20_util/is_nothrow_swappable_with/value.cc: Disable + PCH. + * testsuite/20_util/is_pointer_interconvertible/value.cc: + Likewise. + * testsuite/20_util/is_pointer_interconvertible/version.cc: + Likewise. + * testsuite/20_util/is_scoped_enum/value.cc: Likewise. + * testsuite/20_util/is_scoped_enum/version.cc: Likewise. + * testsuite/20_util/is_swappable/requirements/explicit_instantiation.cc: + Remove redundant checks already tested elsewhere. + * testsuite/20_util/is_swappable/requirements/typedefs.cc: + Remove redundant checks already tested elsewhere. + * testsuite/20_util/is_swappable/value.cc: Disable PCH. + * testsuite/20_util/is_swappable/value.h: Reorder headers. + * testsuite/20_util/is_swappable_with/requirements/explicit_instantiation.cc: + Remove redundant checks already tested elsewhere. + * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: + Remove redundant checks already tested elsewhere. + * testsuite/20_util/is_swappable_with/value.cc: Disable PCH. + * testsuite/20_util/is_unbounded_array/value.cc: Likewise. + * testsuite/20_util/move_only_function/cons.cc: Likewise. + * testsuite/20_util/move_only_function/version.cc: Likewise. + * testsuite/20_util/optional/monadic/and_then.cc: Likewise. + * testsuite/20_util/optional/requirements.cc: Likewise. + * testsuite/20_util/optional/version.cc: Likewise. + * testsuite/20_util/owner_less/void.cc: Likewise. + * testsuite/20_util/reference_from_temporary/value.cc: Likewise. + * testsuite/20_util/reference_from_temporary/version.cc: + Likewise. + * testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc: + Likewise. + * testsuite/20_util/shared_ptr/creation/array.cc: Likewise. + * testsuite/20_util/shared_ptr/creation/overwrite.cc: Likewise. + * testsuite/20_util/shared_ptr/creation/version.cc: Likewise. + * testsuite/20_util/time_point_cast/rounding.cc: Likewise. + * testsuite/20_util/to_chars/constexpr.cc: Likewise. + * testsuite/20_util/to_chars/result.cc: Likewise. + * testsuite/20_util/to_chars/version.cc: Likewise. + * testsuite/20_util/to_underlying/1.cc: Likewise. + * testsuite/20_util/to_underlying/version.cc: Likewise. + * testsuite/20_util/tuple/apply/1.cc: Likewise. + * testsuite/20_util/tuple/cons/constexpr_allocator_arg_t.cc: + Likewise. + * testsuite/20_util/tuple/make_from_tuple/1.cc: Likewise. + * testsuite/20_util/tuple/p2321r2.cc: Likewise. + * testsuite/20_util/tuple/tuple_element_t.cc: Likewise. + * testsuite/20_util/unique_ptr/cons/constexpr_c++20.cc: + Likewise. + * testsuite/20_util/unique_ptr/creation/for_overwrite.cc: + Likewise. + * testsuite/20_util/unreachable/1.cc: Likewise. + * testsuite/20_util/unreachable/version.cc: Likewise. + * testsuite/20_util/unwrap_reference/1.cc: Likewise. + * testsuite/20_util/unwrap_reference/3.cc: Likewise. + * testsuite/20_util/variant/constexpr.cc: Likewise. + * testsuite/20_util/variant/version.cc: Likewise. + * testsuite/20_util/variant/visit_inherited.cc: Likewise. + * testsuite/20_util/void_t/1.cc: Likewise. + * testsuite/21_strings/basic_string/capacity/char/resize_and_overwrite.cc: + Likewise. + * testsuite/21_strings/basic_string/cons/char/constexpr.cc: + Likewise. + * testsuite/21_strings/basic_string/cons/wchar_t/constexpr.cc: + Likewise. + * testsuite/21_strings/basic_string/erasure.cc: Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/char/to_string_float.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/version.cc: + Likewise. + * testsuite/21_strings/basic_string/version.cc: Likewise. + * testsuite/21_strings/basic_string_view/operations/contains/char.cc: + Likewise. + * testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: + Likewise. + * testsuite/21_strings/basic_string_view/operations/copy/char/constexpr.cc: + Likewise. + * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc: + Likewise. + * testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc: + Likewise. + * testsuite/21_strings/char_traits/requirements/version.cc: + Likewise. + * testsuite/23_containers/array/comparison_operators/constexpr.cc: + Likewise. + * testsuite/23_containers/array/creation/1.cc: Likewise. + * testsuite/23_containers/array/creation/2.cc: Likewise. + * testsuite/23_containers/array/element_access/constexpr_c++17.cc: + Likewise. + * testsuite/23_containers/array/requirements/constexpr_fill.cc: + Likewise. + * testsuite/23_containers/array/requirements/constexpr_iter.cc: + Likewise. + * testsuite/23_containers/deque/erasure.cc: Likewise. + * testsuite/23_containers/forward_list/erasure.cc: Likewise. + * testsuite/23_containers/list/erasure.cc: Likewise. + * testsuite/23_containers/map/erasure.cc: Likewise. + * testsuite/23_containers/queue/cons_from_iters.cc: Likewise. + * testsuite/23_containers/set/erasure.cc: Likewise. + * testsuite/23_containers/span/1.cc: Likewise. + * testsuite/23_containers/span/2.cc: Likewise. + * testsuite/23_containers/stack/cons_from_iters.cc: Likewise. + * testsuite/23_containers/unordered_map/erasure.cc: Likewise. + * testsuite/23_containers/unordered_map/operations/1.cc: + Likewise. + * testsuite/23_containers/unordered_set/erasure.cc: Likewise. + * testsuite/23_containers/unordered_set/operations/1.cc: + Likewise. + * testsuite/23_containers/vector/cons/constexpr.cc: Likewise. + * testsuite/23_containers/vector/erasure.cc: Likewise. + * testsuite/23_containers/vector/requirements/version.cc: + Likewise. + * testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise. + * testsuite/25_algorithms/clamp/constexpr.cc: Likewise. + * testsuite/25_algorithms/clamp/requirements/explicit_instantiation/1.cc: + Remove redundant checks already tested elsewhere. + * testsuite/25_algorithms/constexpr_macro.cc: Likewise. + * testsuite/25_algorithms/cpp_lib_constexpr.cc: Likewise. + * testsuite/25_algorithms/fold_left/1.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/bit/bit.byteswap/byteswap.cc: Likewise. + * testsuite/26_numerics/bit/bit.byteswap/version.cc: Likewise. + * testsuite/26_numerics/bit/bit.cast/bit_cast.cc: Likewise. + * testsuite/26_numerics/bit/bit.cast/version.cc: Likewise. + * testsuite/26_numerics/bit/header-2.cc: Likewise. + * testsuite/26_numerics/bit/header.cc: Likewise. + * testsuite/26_numerics/complex/1.cc: Likewise. + * testsuite/26_numerics/complex/2.cc: Likewise. + * testsuite/26_numerics/endian/2.cc: Likewise. + * testsuite/26_numerics/endian/3.cc: Likewise. + * testsuite/26_numerics/gcd/1.cc: Likewise. + * testsuite/26_numerics/lcm/1.cc: Likewise. + * testsuite/26_numerics/lerp/1.cc: Likewise. + * testsuite/26_numerics/lerp/version.cc: Likewise. + * testsuite/26_numerics/midpoint/integral.cc: Likewise. + * testsuite/26_numerics/midpoint/version.cc: Likewise. + * testsuite/26_numerics/numbers/1.cc: Likewise. + * testsuite/26_numerics/numbers/2.cc: Likewise. + * testsuite/27_io/basic_filebuf/native_handle/char/1.cc: + Likewise. + * testsuite/27_io/basic_filebuf/native_handle/version.cc: + Likewise. + * testsuite/27_io/basic_ofstream/open/char/noreplace.cc: + Likewise. + * testsuite/27_io/basic_ofstream/open/wchar_t/noreplace.cc: + Likewise. + * testsuite/27_io/basic_syncbuf/1.cc: Likewise. + * testsuite/27_io/basic_syncbuf/2.cc: Likewise. + * testsuite/27_io/basic_syncstream/1.cc: Likewise. + * testsuite/27_io/basic_syncstream/2.cc: Likewise. + * testsuite/27_io/spanstream/1.cc: Likewise. + * testsuite/27_io/spanstream/version.cc: Likewise. + * testsuite/29_atomics/atomic/cons/value_init.cc: Likewise. + * testsuite/29_atomics/atomic/lock_free_aliases.cc: Likewise. + * testsuite/29_atomics/atomic/wait_notify/1.cc: Likewise. + * testsuite/29_atomics/atomic/wait_notify/2.cc: Likewise. + * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: + Likewise. + * testsuite/29_atomics/headers/stdatomic.h/version.cc: Likewise. + * testsuite/30_threads/barrier/1.cc: Likewise. + * testsuite/30_threads/barrier/2.cc: Likewise. + * testsuite/30_threads/condition_variable_any/stop_token/1.cc: + Likewise. + * testsuite/30_threads/condition_variable_any/stop_token/2.cc: + Likewise. + * testsuite/30_threads/jthread/1.cc: Likewise. + * testsuite/30_threads/jthread/version.cc: Likewise. + * testsuite/30_threads/latch/1.cc: Likewise. + * testsuite/30_threads/latch/2.cc: Likewise. + * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: + Likewise. + * testsuite/30_threads/semaphore/1.cc: Likewise. + * testsuite/30_threads/semaphore/2.cc: Likewise. + * testsuite/30_threads/stop_token/1.cc: Likewise. + * testsuite/30_threads/stop_token/2.cc: Likewise. + * testsuite/experimental/feat-char8_t.cc: Likewise. + * testsuite/experimental/iterator/ostream_joiner.cc: Likewise. + * testsuite/experimental/numeric/gcd.cc: Likewise. + * testsuite/experimental/scopeguard/uniqueres.cc: Likewise. + * testsuite/std/concepts/1.cc: Likewise. + * testsuite/std/concepts/2.cc: Likewise. + * testsuite/std/ranges/adaptors/as_const/1.cc: Likewise. + * testsuite/std/ranges/adaptors/as_rvalue/1.cc: Likewise. + * testsuite/std/ranges/adaptors/chunk/1.cc: Likewise. + * testsuite/std/ranges/adaptors/chunk_by/1.cc: Likewise. + * testsuite/std/ranges/adaptors/enumerate/1.cc: Likewise. + * testsuite/std/ranges/adaptors/join_with/1.cc: Likewise. + * testsuite/std/ranges/adaptors/slide/1.cc: Likewise. + * testsuite/std/ranges/adaptors/stride/1.cc: Likewise. + * testsuite/std/ranges/cartesian_product/1.cc: Likewise. + * testsuite/std/ranges/headers/ranges/synopsis.cc: Likewise. + * testsuite/std/ranges/repeat/1.cc: Likewise. + * testsuite/std/ranges/version_c++23.cc: Likewise. + * testsuite/std/ranges/zip/1.cc: Likewise. + * testsuite/std/time/syn_c++20.cc: Likewise. + * testsuite/experimental/feat-cxx14.cc: Likewise. Include + and . + * testsuite/23_containers/array/tuple_interface/get_neg.cc: + Adjust dg-error line numbers. + +2023-11-16 Jonathan Wakely + + * include/bits/version.def (stds): Use >= 202100 for C++23 + condition. + * include/bits/version.h: Regenerate. + * include/std/thread: Use > C++20 instead of >= C++23 for + __cplusplus condition. + +2023-11-16 Jonathan Wakely + + * include/std/istream (__rvalue_stream_extraction_t): Test + __cpp_concepts instead of __cpp_lib_concepts. + * include/std/ostream (__derived_from_ios_base): Likewise. + (__rvalue_stream_insertion_t): Likewise. + +2023-11-15 Jonathan Wakely + + PR libstdc++/112491 + * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): + Correctly handle unused capacity at the start of the first node. + * testsuite/libstdc++-xmethods/deque.cc: Check index operator + when elements have been removed from the front. + +2023-11-15 Jonathan Wakely + + * include/std/stacktrace (basic_stacktrace::at): Fix class name + in exception message. + * testsuite/19_diagnostics/stacktrace/hash.cc: Do not fail if + current() returns a non-empty stacktrace. + +2023-11-15 Alexandre Oliva + + Revert: + 2023-11-15 Alexandre Oliva + + * include/bits/stl_bvector.h (_GLIBCXX_ALWAYS_INLINE): Undef. + +2023-11-15 Alexandre Oliva + + * include/bits/stl_bvector.h (_GLIBCXX_ALWAYS_INLINE): Undef. + +2023-11-14 Cassio Neri + + * include/std/chrono (operator-(const weekday&, const weekday&)): + Optimize. + +2023-11-14 Cassio Neri + + * include/std/chrono (weekday::_S_from_days): Fix UB. + * testsuite/std/time/weekday/1.cc: Add test for overflow. + +2023-11-14 Cassio Neri + + * include/std/chrono (year::is_leap): Clear code. + +2023-11-14 Cassio Neri + + * include/std/chrono (year_month_day_last::day): Remove &1. + +2023-11-14 Jonathan Wakely + + * include/std/charconv (__from_chars_pow2_base): Convert base to + unsigned for call to __countr_zero. + (__from_chars_alnum): Likewise for call to __bit_width. + +2023-11-14 Jonathan Wakely + + PR libstdc++/112348 + * include/std/stacktrace (hash>): Fix + type of hash functio nfor entries. + * testsuite/19_diagnostics/stacktrace/hash.cc: New test. + +2023-11-14 Jonathan Wakely + + PR libstdc++/112491 + * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.size): Fix + calculation to use _M_start._M_cur. + * testsuite/libstdc++-xmethods/deque.cc: Check failing cases. + +2023-11-13 Arsen Arsenović + + * configure: Regenerate. + +2023-11-13 Jonathan Wakely + + * testsuite/std/time/clock/file/io.cc: Double timeout using + dg-timeout-factor. + * testsuite/std/time/clock/gps/io.cc: Likewise. + * testsuite/std/time/clock/local/io.cc: Likewise. + * testsuite/std/time/clock/system/io.cc: Likewise. + * testsuite/std/time/clock/tai/io.cc: Likewise. + * testsuite/std/time/clock/utc/io.cc: Likewise. + +2023-11-13 Jonathan Wakely + + PR libstdc++/112480 + * include/std/optional (_Optional_payload_base::_M_reset): Set + _M_engaged to false unconditionally. + +2023-11-11 Jonathan Wakely + + PR libstdc++/112467 + * include/bits/stl_bvector.h (_M_assume_normalized): Do not use + statement form of assume attribute for Clang. + +2023-11-11 Jonathan Wakely + + * include/std/string_view (operator==, operator<=>): Remove + redundant overloads (LWG 3950). + +2023-11-11 Jonathan Wakely + + * testsuite/26_numerics/headers/complex.h/std_c++11.h: Moved to... + * testsuite/26_numerics/headers/complex.h/std_c++11.cc: ...here. + * testsuite/26_numerics/headers/complex.h/std_c++98.h: Moved to... + * testsuite/26_numerics/headers/complex.h/std_c++98.cc: ...here. + Check macro first and then #undef. + * testsuite/26_numerics/headers/complex.h/std_gnu++11.h: Moved to... + * testsuite/26_numerics/headers/complex.h/std_gnu++11.cc: ...here. + +2023-11-11 Jonathan Wakely + + PR libstdc++/112473 + * include/bits/utility.h (integer_sequence): Add static_assert. + * testsuite/20_util/integer_sequence/112473.cc: New test. + +2023-11-11 Jonathan Wakely + + * testsuite/20_util/pair/dangling_ref.cc: Add hosted effective + target for specifiers using c++17_down. + +2023-11-11 Jonathan Wakely + + * include/bits/shared_ptr_atomic.h (atomic_is_lock_free) + (atomic_load_explicit, atomic_load, atomic_store_explicit) + (atomic_store, atomic_exchange_explicit, atomic_exchange) + (atomic_compare_exchange_strong, atomic_compare_exchange_weak) + (atomic_compare_exchange_strong_explicit) + (atomic_compare_exchange_weak_explicit): Add deprecated + attribute for C++20 and later. + * testsuite/20_util/shared_ptr/atomic/1.cc: Suppress deprecated + warnings. + * testsuite/20_util/shared_ptr/atomic/2.cc: Likewise. + * testsuite/20_util/shared_ptr/atomic/3.cc: Likewise. + * testsuite/29_atomics/atomic/lwg3220.cc: Likewise. + +2023-11-11 Jonathan Wakely + + * include/bits/std_mutex.h (lock_guard): Add [[nodiscard]] + attribute to constructors. + * include/bits/unique_lock.h (unique_lock): Likewise. + * include/std/mutex (scoped_lock, scoped_lock): Likewise. + * testsuite/30_threads/lock_guard/cons/nodiscard.cc: New test. + * testsuite/30_threads/scoped_lock/cons/nodiscard.cc: New test. + * testsuite/30_threads/unique_lock/cons/nodiscard.cc: New test. + +2023-11-11 Jonathan Wakely + + * include/std/span (span, as_bytes, as_writable_bytes): Add + [[nodiscard]] attribute on all non-void functions. + * testsuite/23_containers/span/back_assert_neg.cc: Suppress + nodiscard warning. + * testsuite/23_containers/span/back_neg.cc: Likewise. + * testsuite/23_containers/span/first_2_assert_neg.cc: Likewise. + * testsuite/23_containers/span/first_assert_neg.cc: Likewise. + * testsuite/23_containers/span/first_neg.cc: Likewise. + * testsuite/23_containers/span/front_assert_neg.cc: Likewise. + * testsuite/23_containers/span/front_neg.cc: Likewise. + * testsuite/23_containers/span/index_op_assert_neg.cc: Likewise. + * testsuite/23_containers/span/index_op_neg.cc: Likewise. + * testsuite/23_containers/span/last_2_assert_neg.cc: Likewise. + * testsuite/23_containers/span/last_assert_neg.cc: Likewise. + * testsuite/23_containers/span/last_neg.cc: Likewise. + * testsuite/23_containers/span/subspan_2_assert_neg.cc: + Likewise. + * testsuite/23_containers/span/subspan_3_assert_neg.cc: + Likewise. + * testsuite/23_containers/span/subspan_4_assert_neg.cc: + Likewise. + * testsuite/23_containers/span/subspan_5_assert_neg.cc: + Likewise. + * testsuite/23_containers/span/subspan_6_assert_neg.cc: + Likewise. + * testsuite/23_containers/span/subspan_assert_neg.cc: Likewise. + * testsuite/23_containers/span/subspan_neg.cc: Likewise. + * testsuite/23_containers/span/nodiscard.cc: New test. + +2023-11-11 Jonathan Wakely + + PR libstdc++/111638 + * config.h.in: Regenerate. + * configure: Regenerate. + * linkage.m4 (GLIBCXX_MAYBE_UNDERSCORED_FUNCS): Remove. + (GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1): Do not check for _foo. + (GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1): Likewise. + (GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2): Likewise. + (GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3): Likewise. + (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2): Do not use + GLIBCXX_MAYBE_UNDERSCORED_FUNCS. + +2023-11-11 Nathaniel Shead + + PR libstdc++/79700 + * include/c_global/cmath (acosf, acosl, asinf, asinl, atanf) + (atanl, atan2f, atan2l, ceilf, ceill, cosf, cosl, coshf, coshl) + (expf, expl, fabsf, fabsl, floorf, floorl, fmodf, fmodl, frexpf) + (frexpl, ldexpf, ldexpl, logf, logl, log10f, log10l, modff) + (modfl, powf, powl, sinf, sinl, sinhf, sinhl, sqrtf, sqrtl, tanf) + (tanl, tanhf, tanhl): Add using-declarations in namespace std. + * testsuite/26_numerics/headers/cmath/equivalent_functions.cc: + New test. + * testsuite/26_numerics/headers/cmath/functions_std_c++17.cc: + Add checks for existence of above names. + +2023-11-09 Arsen Arsenović + + * testsuite/20_util/scoped_allocator/noexcept.cc: Mark as + requiring hosted. + +2023-11-09 Arsen Arsenović + + * include/bits/memoryfwd.h: Remove HOSTED check around allocator + and its specializations. + +2023-11-09 Patrick Palka + + PR libstdc++/112453 + * include/std/ranges (__detail::__box<_Tp>::operator*): Define + && overloads as well. + (__detail::__take_of_repeat_view): Forward __r when accessing + its _M_value member. + (__detail::__drop_of_repeat_view): Likewise. + * testsuite/std/ranges/repeat/1.cc (test07): New test. + +2023-11-09 François Dumont + + * include/bits/hashtable_policy.h (_RehashStateGuard): New. + (_Insert_base<>::_M_insert_range(_IIt, _IIt, const _NodeGet&, false_type)): + Adapt. + * include/bits/hashtable.h (__rehash_guard_t): New. + (__rehash_state): Remove. + (_M_rehash): Remove. + (_M_rehash_aux): Rename into _M_rehash. + (_M_assign_elements, _M_insert_unique_node, _M_insert_multi_node): Adapt. + (rehash): Adapt. + +2023-11-09 François Dumont + + * include/bits/hashtable_policy.h + (struct _NodePtrGuard<_HashtableAlloc, _NodePtr>): New. + (_ReuseAllocNode::operator()(_Args&&...)): Use latter to guard allocated node + pointer while constructing in place the value_type instance. + +2023-11-09 Alexandre Oliva + + PR libstdc++/110807 + * include/bits/stl_bvector.h (_Bit_iterator_base): Add + _M_assume_normalized member function. Call it in _M_bump_up, + _M_bump_down, _M_incr, operator==, operator<=>, operator<, and + operator-. + (_Bit_iterator): Also call it in operator*. + (_Bit_const_iterator): Likewise. + +2023-11-07 François Dumont + + * include/bits/hashtable_policy.h + (_Hashtable_alloc<>::_M_allocate_node): Add missing call to node destructor + on construct exception. + +2023-11-07 Richard Biener + + PR libstdc++/112351 + * src/c++98/locale.cc (locale::facet::_S_initialize_once): + Check whether _S_c_locale is already initialized. + (locale::facet::_S_get_c_locale): Always perform non-threadsafe + init when threadsafe init failed. + +2023-11-06 Ian Lance Taylor + + PR libbacktrace/111315 + PR libbacktrace/112263 + * acinclude.m4: Set -D_GNU_SOURCE in BACKTRACE_CPPFLAGS and when + grepping link.h for dl_iterate_phdr. + * configure: Regenerate. + +2023-11-06 Jonathan Wakely + + * include/std/expected (expected::and_then, expected::or_else): + Add string literals to static assertions. + * include/std/optional (optional::and_then, optional::or_else): + Likewise. + +2023-11-04 Feng Jisen + + * include/bits/utility.h (_Nth_type): Remove redundant partial + specialization. + +2023-11-04 Jonathan Wakely + + PR libstdc++/110133 + * include/std/system_error (system_error::system_error): Group + arguments so that concatenation can reuse rvalue's capacity. + * src/c++11/system_error.cc (strerror_string): New function. + [_GLIBCXX_HAVE_STRERROR_R] (use_strerror_result): New functions. + (generic_error_category::message): Use strerror_string. + (system_error_category::message): Likewise. + +2023-11-04 Jonathan Wakely + + * doc/xml/manual/appendix_contributing.xml: Replace example that + uses a BADNAME. + * doc/html/manual/source_code_style.html: Regenerate. + +2023-11-02 Jonathan Wakely + + PR libstdc++/112314 + * include/std/string_view (string_view::remove_suffix): Add + debug assertion. + * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/debug.cc: + New test. + * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/debug.cc: + New test. + +2023-11-02 Jonathan Wakely + + * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix snprintf checks. + * configure: Regenerate. + +2023-10-30 François Dumont + + * config/abi/pre/gnu-versioned-namespace.ver: Add comment on recently + added emul TLS symbols. + +2023-10-30 François Dumont + + * src/experimental/contract.cc + [_GLIBCXX_INLINE_VERSION](handle_contract_violation): Rework comment. + Remove weak attribute. + +2023-10-29 François Dumont + + * config/abi/pre/gnu-versioned-namespace.ver: Add missing emul TLS + symbols. + +2023-10-29 François Dumont + + * src/experimental/contract.cc + [_GLIBCXX_INLINE_VERSION](handle_contract_violation): Provide symbol + without version namespace decoration for gcc. + +2023-10-26 Jonathan Wakely + + PR libstdc++/112089 + * include/std/shared_mutex (shared_lock::unlock): Change errc + constant to operation_not_permitted. + * testsuite/30_threads/shared_lock/locking/112089.cc: New test. + +2023-10-26 Jonathan Wakely + + * testsuite/20_util/duration/io.cc: Double timeout using + dg-timeout-factor. + * testsuite/std/time/day/io.cc: Likewise. + * testsuite/std/time/format.cc: Likewise. + * testsuite/std/time/hh_mm_ss/io.cc: Likewise. + * testsuite/std/time/month/io.cc: Likewise. + * testsuite/std/time/month_day/io.cc: Likewise. + * testsuite/std/time/month_day_last/io.cc: Likewise. + * testsuite/std/time/month_weekday/io.cc: Likewise. + * testsuite/std/time/month_weekday_last/io.cc: Likewise. + * testsuite/std/time/weekday/io.cc: Likewise. + * testsuite/std/time/weekday_indexed/io.cc: Likewise. + * testsuite/std/time/weekday_last/io.cc: Likewise. + * testsuite/std/time/year/io.cc: Likewise. + * testsuite/std/time/year_month/io.cc: Likewise. + * testsuite/std/time/year_month_day/io.cc: Likewise. + * testsuite/std/time/year_month_day_last/io.cc: Likewise. + * testsuite/std/time/year_month_weekday/io.cc: Likewise. + * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. + * testsuite/std/time/zoned_time/io.cc: Likewise. + +2023-10-25 Jonathan Wakely + + PR libstdc++/111936 + * src/libbacktrace/Makefile.am: Add -prefer-pic to libtool + compile commands. + * src/libbacktrace/Makefile.in: Regenerate. + +2023-10-24 Paul M. Bendixen + + * include/Makefile.am: Move cstdarg, cstdalign and cstdbool to + freestanding. + * include/Makefile.in: Regenerate. + +2023-10-22 Iain Sandoe + + * configure: Regenerate. + * configure.ac: Handle Darwin rpaths. + * src/Makefile.am: Handle Darwin rpaths. + * src/Makefile.in: Regenerate. + +2023-10-21 Jonathan Wakely + + * include/bits/basic_string.h (_M_init_local_buf()): New + function. + (_M_use_local_data()): Use _M_init_local_buf. + (basic_string(), basic_string(const Alloc&)) + (basic_string(basic_string&&)) + (basic_string(basic_string&&, const Alloc&)): Use + _M_init_local_buf instead of _M_use_local_data(). + * include/bits/basic_string.tcc (swap(basic_string&)) + (_M_construct(InIter, InIter, input_iterator_tag)) + (_M_construct(InIter, InIter, forward_iterator_tag)) + (_M_construct(size_type, CharT), reserve()): Likewise. + +2023-10-21 Benjamin Brock + + * include/std/ranges (zip_view, adjacent_view): Implement + workaround for LLVM-61763. + +2023-10-21 Dimitrij Mijoski + + * testsuite/22_locale/codecvt/codecvt_unicode.h: Test length() + +2023-10-21 Jonathan Wakely + + * include/bits/fs_dir.h (operator==(default_sentinel_t)): Fix + indentation. + +2023-10-20 Marek Polacek + + PR testsuite/111883 + * include/std/charconv (from_chars): Add explicit casts. + +2023-10-19 François Dumont + + * include/bits/hashtable_policy.h + (_Hash_code_base::_M_hash_code(const _Hash&, const _Hash_node_value<>&)): Remove. + (_Hash_code_base::_M_hash_code<_H2>(const _H2&, const _Hash_node_value<>&)): Remove. + * include/bits/hashtable.h + (_M_src_hash_code<_H2>(const _H2&, const key_type&, const __node_value_type&)): New. + (_M_merge_unique<>, _M_merge_multi<>): Use latter. + * testsuite/23_containers/unordered_map/modifiers/merge.cc + (test04, test05, test06): New test cases. + +2023-10-13 Jakub Jelinek + + * testsuite/tr1/8_c_compatibility/cstdio/functions.cc (test01): + Initialize stream to va_arg(ap, FILE*) rather than 0. + * testsuite/tr1/8_c_compatibility/cwchar/functions.cc (test01): + Likewise. + +2023-10-13 Hans-Peter Nilsson + + * testsuite/29_atomics/atomic/compare_exchange_padding.cc, + testsuite/29_atomics/atomic_flag/clear/1.cc, + testsuite/29_atomics/atomic_flag/cons/value_init.cc, + testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc, + testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc, + testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc, + testsuite/29_atomics/atomic_ref/generic.cc, + testsuite/29_atomics/atomic_ref/integral.cc, + testsuite/29_atomics/atomic_ref/pointer.cc: Replace + dg-require-thread-fence with dg-require-atomic-cmpxchg-word. + +2023-10-13 Hans-Peter Nilsson + + * testsuite/lib/dg-options.exp (dg-require-atomic-cmpxchg-word): + New proc. + * testsuite/lib/libstdc++.exp (check_v3_target_atomic_cmpxchg_word): + Ditto. + +2023-10-05 François Dumont + + * config/abi/pre/gnu-versioned-namespace.ver: Add missing symbols + for _Float{16,32,64,128,32x,64x,128x}. + +2023-10-04 Tom Tromey + + * python/libstdcxx/v6/printers.py + (StdExpAnyPrinter.__init__): Qualify call to + _string_types. + +2023-10-04 Tom Tromey + + * python/libstdcxx/v6/printers.py: Assume that + _versioned_namespace is non-None. + * python/libstdcxx/v6/xmethods.py (is_specialization_of): + Assume that _versioned_namespace is non-None. + +2023-10-04 Tom Tromey + + * python/libstdcxx/v6/xmethods.py (_versioned_namespace): + Define. + +2023-09-29 Dimitrij Mijoski + + PR libstdc++/108976 + * src/c++11/codecvt.cc (read_utf8_code_point): Fix handing of + surrogates in UTF-8. + (ucs4_out): Fix handling of surrogates in UCS-4 -> UTF-8. + (ucs4_in): Fix handling of range with odd number of bytes. + (ucs4_out): Fix handling of surrogates in UCS-4 -> UTF-16. + (ucs2_out): Fix handling of surrogates in UCS-2 -> UTF-16. + (ucs2_in): Fix handling of range with odd number of bytes. + (__codecvt_utf16_base::do_in): Likewise. + (__codecvt_utf16_base::do_in): Likewise. + (__codecvt_utf16_base::do_in): Likewise. + * testsuite/22_locale/codecvt/codecvt_unicode.cc: Renames, add + tests for codecvt_utf16 and codecvt_utf16. + * testsuite/22_locale/codecvt/codecvt_unicode.h: Refactor UTF-8 + testing functions for char8_t, add more test cases for errors, + add testing functions for codecvt_utf16. + * testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc: + Renames, add tests for codecvt_utf16. + * testsuite/22_locale/codecvt/codecvt_utf16/79980.cc (test06): + Fix test. + * testsuite/22_locale/codecvt/codecvt_unicode_char8_t.cc: New + test. + +2023-09-29 Nathaniel Shead + + * include/bits/basic_string.h: (basic_string(basic_string&&)): + Activate _M_local_buf when needed. + (basic_string(basic_string&&, const _Alloc&)): Likewise. + * include/bits/basic_string.tcc: (basic_string::swap): Likewise. + * include/std/variant: (__detail::__variant::__construct_n): New. + (__detail::__variant::__emplace): Use __construct_n. + +2023-09-28 Tom Tromey + + * python/libstdcxx/v6/printers.py (Printer.add_version) + (add_one_template_type_printer) + (FilteringTypePrinter.add_one_type_printer): Use Python + "not in" operator. + +2023-09-28 Tom Tromey + + * python/libstdcxx/v6/printers.py (std_ratio_t_tuple): + Remove. + +2023-09-28 Tom Tromey + + * python/libstdcxx/v6/printers.py + (StdExpOptionalPrinter.__init__, lookup_node_type): + Remove unused variables. + +2023-09-28 Tom Tromey + + * python/libstdcxx/v6/printers.py: Don't import 'os'. + * python/libstdcxx/v6/__init__.py: Don't import 'gdb'. + +2023-09-28 Tom Tromey + + * python/libstdcxx/v6/printers.py: Use gdb.ValuePrinter + everywhere. Rename members to start with "_". + +2023-09-28 Tom Tromey + + * testsuite/lib/gdb-test.exp (gdb-test): Enable Python + stack traces from gdb. + +2023-09-28 Jonathan Wakely + + * python/libstdcxx/v6/xmethods.py (is_specialization_of): Define + new function. + (ArrayMethodsMatcher, DequeMethodsMatcher) + (ForwardListMethodsMatcher, ListMethodsMatcher) + (VectorMethodsMatcher, AssociativeContainerMethodsMatcher) + (UniquePtrGetWorker, UniquePtrMethodsMatcher) + (SharedPtrSubscriptWorker, SharedPtrMethodsMatcher): Use + is_specialization_of instead of re.match. + +2023-09-28 Jonathan Wakely + + * python/libstdcxx/v6/printers.py: Break long lines. Use raw + strings for regular expressions. Add whitespace around + operators. + (is_member_of_namespace): Use isinstance to check type. + (is_specialization_of): Likewise. Adjust template_name + for versioned namespace instead of duplicating the re.match + call. + (StdExpAnyPrinter._string_types): New static method. + (StdExpAnyPrinter.to_string): Use _string_types. + +2023-09-28 Jonathan Wakely + + * python/libstdcxx/v6/printers.py: Format docstrings according + to PEP 257. + * python/libstdcxx/v6/xmethods.py: Likewise. + +2023-09-28 Tim Song + + PR libstdc++/111050 + * include/bits/hashtable_policy.h + (_Hash_node_value_base<>::_M_valptr(), _Hash_node_value_base<>::_M_v()) + Add [[__gnu__::__always_inline__]]. + +2023-09-27 Jonathan Wakely + + * python/libstdcxx/v6/printers.py (StdChronoTimeZoneRulePrinter): + Fix incorrect number of replacement fields. + +2023-09-26 Hans-Peter Nilsson + + * testsuite/29_atomics/atomic_flag/cons/value_init.cc: Add + dg-require-thread-fence. + +2023-09-25 Patrick Palka + + * include/std/charconv (__detail::__integer_to_chars_result_type): + Remove. + (__detail::__to_chars_16): Use to_chars_result as return type. + (__detail::__to_chars_10): Likewise. + (__detail::__to_chars_8): Likewise. + (__detail::__to_chars_2): Likewise. + (__detail::__to_chars_i): Likewise. + (__detail::__integer_from_chars_result_type): Inline the + constraint into ... + (from_chars): ... here. Use __is_standard_integer in the + constraint. Encode constraint as a defaulted non-type template + parameter instead of within the return type. + +2023-09-25 John David Anglin + + * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. + +2023-09-25 Jonathan Wakely + + PR libstdc++/111511 + PR c++/111512 + * include/std/array (to_array): Cast memcpy arguments to void*. + * testsuite/23_containers/array/creation/111512.cc: New test. + +2023-09-25 Jonathan Wakely + + * include/bits/move.h (forward_list): Define for C++23. + * include/bits/version.def (forward_like): Define. + * include/bits/version.h: Regenerate. + * include/std/utility (__glibcxx_want_forward_like): Define. + * testsuite/20_util/forward_like/1.cc: New test. + * testsuite/20_util/forward_like/2_neg.cc: New test. + * testsuite/20_util/forward_like/version.cc: New test. + 2023-09-19 Marek Polacek * testsuite/20_util/allocator/105975.cc: Add dg-error.