]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libstdc++-v3/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
index 65ebd7dac4514cb6eefdd856f67bc9b99fbebecd..b653062949095dc6d9ed59dfa28e01f23b844efc 100644 (file)
@@ -1,3 +1,558 @@
+2023-06-02  François Dumont  <fdumont@gcc.gnu.org>
+
+       * include/parallel/algobase.h: Include <parallel/search.h>.
+
+2023-06-01  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc:
+       Add const to equality operator.
+
+2023-06-01  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/std/expected (expected::and_then, expected::or_else)
+       (expected::transform_error): Use _M_val and _M_unex instead of
+       calling value() and error(), as per LWG 3938.
+       (expected::transform): Likewise. Remove incorrect std::move
+       calls from lvalue overloads.
+       (expected<void, E>::and_then, expected<void, E>::or_else)
+       (expected<void, E>::transform): Use _M_unex instead of calling
+       error().
+       * testsuite/20_util/expected/lwg3877.cc: Add checks for and_then
+       and transform, and for std::expected<void, E>.
+       * testsuite/20_util/expected/lwg3938.cc: New test.
+
+2023-06-01  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/110060
+       * include/bits/stl_vector.h (_Vector_base::_M_invariant):
+       Remove.
+       (vector::size, vector::capacity): Remove calls to _M_invariant.
+       * include/bits/vector.tcc (vector::_M_fill_assign): Add
+       optimization hint to reallocating path.
+       (vector::_M_assign_aux(FwdIter, FwdIter, forward_iterator_tag)):
+       Likewise.
+       * testsuite/23_containers/vector/capacity/invariant.cc: Moved
+       to...
+       * testsuite/23_containers/vector/modifiers/assign/no_realloc.cc:
+       ...here. Check assign(FwdIter, FwdIter) too.
+       * testsuite/23_containers/vector/types/1.cc: Revert addition
+       of -Wno-stringop-overread option.
+
+2023-06-01  Jonathan Wakely  <jwakely@redhat.com>
+
+       * doc/xml/manual/evolution.xml: Document removal of implicit
+       allocator rebinding extensions in strict mode and for C++20.
+       * doc/html/*: Regenerate.
+
+2023-06-01  Jason Merrill  <jason@redhat.com>
+
+       * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Don't check
+       handlers in the cleanup phase.
+
+2023-06-01  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/110050
+       * include/experimental/bits/simd.h (__vectorized_sizeof): With
+       __have_neon_a32 only single-precision float works (in addition
+       to integers).
+
+2023-06-01  François Dumont  <fdumont@gcc.gnu.org>
+
+       * include/bits/stl_algo.h
+       (std::__search, std::search(_FwdIt1, _FwdIt1, _FwdIt2, _FwdIt2, _BinPred)): Move...
+       * include/bits/stl_algobase.h: ...here.
+       * include/std/functional: Replace <stl_algo.h> include by <stl_algobase.h>.
+       * include/parallel/algo.h (std::__parallel::search<_FIt1, _FIt2, _BinaryPred>)
+       (std::__parallel::__search_switch<_FIt1, _FIt2, _BinaryPred, _ItTag1, _ItTag2>):
+       Move...
+       * include/parallel/algobase.h: ...here.
+       * include/experimental/functional: Remove <bits/stl_algo.h> and <parallel/algorithm>
+       includes. Include <bits/stl_algobase.h>.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109818
+       * acinclude.m4 (GLIBCXX_ENABLE_C99): Add separate check for
+       float_t and double_t and define HAVE_C99_FLT_EVAL_TYPES.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * include/c_global/cmath (float_t, double_t): Guard using new
+       _GLIBCXX_HAVE_C99_FLT_EVAL_TYPES macro.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_ENABLE_C99): Add checks for C99 math
+       functions and define _GLIBCXX_USE_C99_MATH_FUNCS. Move checks
+       for C99 rounding functions to here.
+       (GLIBCXX_CHECK_C99_TR1): Remove checks for C99 rounding
+       functions from here.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * include/bits/random.h: Use _GLIBCXX_USE_C99_MATH_FUNCS instead
+       of _GLIBCXX_USE_C99_MATH_TR1.
+       * include/bits/random.tcc: Likewise.
+       * include/c_compatibility/math.h: Likewise.
+       * include/c_global/cmath: Likewise.
+       * include/ext/random: Likewise.
+       * include/ext/random.tcc: Likewise.
+       * include/std/complex: Likewise.
+       * testsuite/20_util/from_chars/4.cc: Likewise.
+       * testsuite/20_util/from_chars/8.cc: Likewise.
+       * testsuite/26_numerics/complex/proj.cc: Likewise.
+       * testsuite/26_numerics/headers/cmath/60401.cc: Likewise.
+       * testsuite/26_numerics/headers/cmath/types_std_c++0x.cc:
+       Likewise.
+       * testsuite/lib/libstdc++.exp (check_v3_target_cstdint):
+       Likewise.
+       * testsuite/util/testsuite_random.h: Likewise.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/stl_vector.h (_Vector_base::_M_invariant()): New
+       function.
+       (vector::size(), vector::capacity()): Call _M_invariant().
+       * testsuite/23_containers/vector/capacity/invariant.cc: New test.
+       * testsuite/23_containers/vector/types/1.cc: Add suppression for
+       false positive warning (PR110060).
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109921
+       * src/c++17/floating_from_chars.cc: Check __FLT128_MANT_DIG__ is
+       defined before trying to use _Float128.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Fix for 32-bit pointers
+       to check __INT_PTR_WIDTH__ instead of sizeof(void*).
+       * configure: Regenerate.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/unique_lock.h: Include <bits/error_constants.h>
+       here for std::errc constants.
+       * include/std/mutex: Do not include <bits/error_constants.h> and
+       <exception> here.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * configure.ac: Replace use of -o operator for test.
+       * configure: Regenerate.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/std/scoped_allocator (scoped_allocator_adaptor): Add
+       noexcept to all constructors except the default constructor.
+       (scoped_allocator_adaptor::inner_allocator): Add noexcept.
+       (scoped_allocator_adaptor::outer_allocator): Likewise.
+       * testsuite/20_util/scoped_allocator/noexcept.cc: New test.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/104772
+       * include/std/limits (numeric_limits<__float128>): Define.
+       * testsuite/18_support/numeric_limits/128bit.cc: New test.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_ZONEINFO_DIR): Extend logic for avr and
+       msp430 to all 16-bit targets.
+       * configure: Regenerate.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109921
+       * src/c++17/floating_from_chars.cc (USE_STRTOF128_FOR_FROM_CHARS):
+       Only define when USE_STRTOD_FOR_FROM_CHARS is also defined.
+       (USE_STRTOD_FOR_FROM_CHARS): Do not undefine when long double is
+       binary64.
+       (from_chars(const char*, const char*, double&, chars_format)):
+       Check __LDBL_MANT_DIG__ == __DBL_MANT_DIG__ here.
+       (from_chars(const char*, const char*, _Float128&, chars_format))
+       Only use from_chars_strtod when USE_STRTOD_FOR_FROM_CHARS is
+       defined, otherwise parse a long double and convert to _Float128.
+
+2023-05-31  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109922
+       * include/std/iomanip (operator>>(basic_istream&, _Setfill)):
+       Add deprecated attribute to non-standard overload.
+       * doc/xml/manual/evolution.xml: Document deprecation.
+       * doc/html/*: Regenerate.
+       * testsuite/27_io/manipulators/standard/char/1.cc: Add
+       dg-warning for expected deprecated warning.
+       * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
+       * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
+       * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
+
+2023-05-30  Alexandre Oliva  <oliva@adacore.com>
+
+       * testsuite/20_util/from_chars/4.cc: Skip long double test06
+       on x86_64-vxworks.
+       * testsuite/20_util/to_chars/long_double.cc: Xfail run on
+       x86_64-vxworks.
+
+2023-05-30  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/109822
+       * include/experimental/bits/simd.h (to_native): Use int NTTP
+       as specified in PTS2.
+       (to_compatible): Likewise. Add missing tag to call mask
+       generator ctor.
+       * testsuite/experimental/simd/pr109822_cast_functions.cc: New
+       test.
+
+2023-05-30  Matthias Kretz  <m.kretz@gsi.de>
+
+       * testsuite/experimental/simd/tests/integer_operators.cc:
+       Compute expected value differently to avoid getting turned into
+       a vector shift.
+
+2023-05-30  Matthias Kretz  <m.kretz@gsi.de>
+
+       * testsuite/experimental/simd/tests/operator_cvt.cc: Make long
+       double <-> (u)long conversion tests conditional on sizeof(long
+       double) and sizeof(long).
+
+2023-05-26  Matthias Kretz  <m.kretz@gsi.de>
+
+       * include/experimental/bits/simd_ppc.h (_S_bit_shift_left):
+       Negative __y is UB, so prefer signed compare.
+
+2023-05-25  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/util/testsuite_allocator.h (PointerBase): Add
+       relational operators.
+
+2023-05-25  Alexandre Oliva  <oliva@adacore.com>
+
+       * testsuite/20_util/to_chars/long_double.cc: Expect execution
+       fail on x86-vxworks.
+
+2023-05-24  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/109949
+       * include/experimental/bits/simd.h (__intrinsic_type): If
+       __ALTIVEC__ is defined, map gnu::vector_size types to their
+       corresponding __vector T types without losing unsignedness of
+       integer types. Also prefer long long over long.
+       * include/experimental/bits/simd_ppc.h (_S_popcount): Cast mask
+       object to the expected unsigned vector type.
+
+2023-05-24  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/109261
+       * include/experimental/bits/simd.h (__intrinsic_type):
+       Specialize __intrinsic_type<double, 8> and
+       __intrinsic_type<double, 16> in any case, but provide the member
+       type only with __aarch64__.
+
+2023-05-24  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/109261
+       * include/experimental/bits/simd_neon.h (_S_reduce): Add
+       constexpr and make NEON implementation conditional on
+       not __builtin_is_constant_evaluated.
+
+2023-05-23  Matthias Kretz  <m.kretz@gsi.de>
+
+       PR libstdc++/109261
+       * include/experimental/bits/simd.h (_SimdWrapper::_M_set):
+       Avoid vector builtin subscripting in constant expressions.
+       (resizing_simd_cast): Avoid memcpy if constant_evaluated.
+       (const_where_expression, where_expression, where)
+       (__extract_part, simd_mask, _SimdIntOperators, simd): Add either
+       _GLIBCXX_SIMD_CONSTEXPR (on public APIs), or constexpr (on
+       internal APIs).
+       * include/experimental/bits/simd_builtin.h (__vector_permute)
+       (__vector_shuffle, __extract_part, _GnuTraits::_SimdCastType1)
+       (_GnuTraits::_SimdCastType2, _SimdImplBuiltin)
+       (_MaskImplBuiltin::_S_store): Add constexpr.
+       (_CommonImplBuiltin::_S_store_bool_array)
+       (_SimdImplBuiltin::_S_load, _SimdImplBuiltin::_S_store)
+       (_SimdImplBuiltin::_S_reduce, _MaskImplBuiltin::_S_load): Add
+       constant_evaluated case.
+       * include/experimental/bits/simd_fixed_size.h
+       (_S_masked_load): Reword comment.
+       (__tuple_element_meta, __make_meta, _SimdTuple::_M_apply_r)
+       (_SimdTuple::_M_subscript_read, _SimdTuple::_M_subscript_write)
+       (__make_simd_tuple, __optimize_simd_tuple, __extract_part)
+       (__autocvt_to_simd, _Fixed::__traits::_SimdBase)
+       (_Fixed::__traits::_SimdCastType, _SimdImplFixedSize): Add
+       constexpr.
+       (_SimdTuple::operator[], _M_set): Add constexpr and add
+       constant_evaluated case.
+       (_MaskImplFixedSize::_S_load): Add constant_evaluated case.
+       * include/experimental/bits/simd_scalar.h: Add constexpr.
+       * include/experimental/bits/simd_x86.h (_CommonImplX86): Add
+       constexpr and add constant_evaluated case.
+       (_SimdImplX86::_S_equal_to, _S_not_equal_to, _S_less)
+       (_S_less_equal): Value-initialize to satisfy constexpr
+       evaluation.
+       (_MaskImplX86::_S_load): Add constant_evaluated case.
+       (_MaskImplX86::_S_store): Add constexpr and constant_evaluated
+       case. Value-initialize local variables.
+       (_MaskImplX86::_S_logical_and, _S_logical_or, _S_bit_not)
+       (_S_bit_and, _S_bit_or, _S_bit_xor): Add constant_evaluated
+       case.
+       * testsuite/experimental/simd/pr109261_constexpr_simd.cc: New
+       test.
+
+2023-05-22  Matthias Kretz  <m.kretz@gsi.de>
+
+       * include/experimental/bits/simd_builtin.h (_S_fpclassify): Move
+       __infn into #ifdef'ed block.
+       * testsuite/experimental/simd/tests/fpclassify.cc: Declare
+       constants only when used.
+       * testsuite/experimental/simd/tests/frexp.cc: Likewise.
+       * testsuite/experimental/simd/tests/logarithm.cc: Likewise.
+       * testsuite/experimental/simd/tests/trunc_ceil_floor.cc:
+       Likewise.
+       * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc:
+       Move totest and expect1 into #ifdef'ed block.
+
+2023-05-19  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/xml/manual/strings.xml: Move lafstern.org reference to https.
+       * doc/html/manual/strings.html: Regenerate.
+
+2023-05-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR libstdc++/109883
+       * testsuite/26_numerics/headers/cmath/constexpr_std_c++23.cc: New test.
+
+2023-05-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR libstdc++/109883
+       * include/c_global/cmath (atan2, fmod, pow): Move
+       __gnu_cxx::__promote_2 using templates after _Float{16,32,64,128} and
+       __gnu_cxx::__bfloat16_t overloads.
+       (copysign, fdim, fmax, fmin, hypot, nextafter, remainder, remquo):
+       Likewise.
+       (fma): Move __gnu_cxx::__promote_3 using template after
+       _Float{16,32,64,128} and __gnu_cxx::__bfloat16_t overloads.
+
+2023-05-17  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/18_support/headers/limits/synopsis.cc: Uncomment
+       checks for float_round_style and float_denorm_style.
+
+2023-05-17  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/c++config: Add system_header pragma.
+
+2023-05-17  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/std/expected (expected::and_then, expected::or_else)
+       (expected::transform, expected::transform_error): Fix exception
+       specifications as per LWG 3877.
+       (expected<void, E>::and_then, expected<void, E>::transform):
+       Likewise.
+       * testsuite/20_util/expected/lwg3877.cc: New test.
+
+2023-05-17  Ken Matsui  <kmatsui@cs.washington.edu>
+
+       * include/std/type_traits: Use __bool_constant instead of
+       integral_constant.
+
+2023-05-17  Jonathan Wakely  <jwakely@redhat.com>
+
+       * configure: Regenerate.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109741
+       * acinclude.m4 (GLIBCXX_CHECK_ALIGNAS_CACHELINE): Define.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Use GLIBCXX_CHECK_ALIGNAS_CACHELINE.
+       * src/c++11/shared_ptr.cc (__gnu_internal::get_mutex): Do not
+       align lock table if not supported. use __GCC_DESTRUCTIVE_SIZE
+       instead of hardcoded 64.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_USE_C99): Check for isblank in C++11
+       mode and define _GLIBCXX_USE_C99_CTYPE. Check for <fenv.h>
+       functions in C++11 mode and define _GLIBCXX_USE_C99_FENV.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * include/c_compatibility/fenv.h: Check _GLIBCXX_USE_C99_FENV
+       instead of _GLIBCXX_USE_C99_FENV_TR1.
+       * include/c_global/cfenv: Likewise.
+       * include/c_global/cctype: Check _GLIBCXX_USE_C99_CTYPE instead
+       of _GLIBCXX_USE_C99_CTYPE_TR1.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_USE_C99): Check for <stdint.h> types in
+       C++11 mode and define _GLIBCXX_USE_C99_STDINT. Check for
+       <inttypes.h> features in C++11 mode and define
+       _GLIBCXX_USE_C99_INTTYPES and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * doc/doxygen/user.cfg.in (PREDEFINED): Add new macros.
+       * include/bits/chrono.h: Check _GLIBCXX_USE_C99_STDINT instead
+       of _GLIBCXX_USE_C99_STDINT_TR1.
+       * include/c_compatibility/inttypes.h: Check
+       _GLIBCXX_USE_C99_INTTYPES and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T
+       instead of _GLIBCXX_USE_C99_INTTYPES_TR1 and
+       _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
+       * include/c_compatibility/stdatomic.h: Check
+       _GLIBCXX_USE_C99_STDINT instead of _GLIBCXX_USE_C99_STDINT_TR1.
+       * include/c_compatibility/stdint.h: Likewise.
+       * include/c_global/cinttypes: Check _GLIBCXX_USE_C99_INTTYPES
+       and _GLIBCXX_USE_C99_INTTYPES_WCHAR_T instead of
+       _GLIBCXX_USE_C99_INTTYPES_TR1 and
+       _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
+       * include/c_global/cstdint: Check _GLIBCXX_USE_C99_STDINT
+       instead of _GLIBCXX_USE_C99_STDINT_TR1.
+       * include/std/atomic: Likewise.
+       * src/c++11/cow-stdexcept.cc: Likewise.
+       * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc:
+       Likewise.
+       * testsuite/lib/libstdc++.exp (check_v3_target_cstdint):
+       Likewise.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_USE_C99): Check for complex inverse trig
+       functions in C++11 mode and define _GLIBCXX_USE_C99_COMPLEX_ARC.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * doc/doxygen/user.cfg.in (PREDEFINED): Add new macro.
+       * include/std/complex: Check _GLIBCXX_USE_C99_COMPLEX_ARC
+       instead of _GLIBCXX_USE_C99_COMPLEX_TR1.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/ext/debug_allocator/check_deallocate_null.cc: Add
+       assertion to ensure expected exception is throw.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/libstdc++-prettyprinters/chrono.cc: Only test
+       printer for chrono::zoned_time for cx11 ABI and tzdb effective
+       target.
+
+2023-05-16  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_CHECK_PTHREAD_MUTEX_CLOCKLOCK): Define
+       _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK in terms of _GLIBCXX_TSAN.
+       * configure: Regenerate.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_CHECK_C99_TR1): Use a non-null pointer
+       to check for nan, nanf, and nanl.
+       * configure: Regenerate.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/char_traits.h (char_traits<char16_t>): Do not
+       depend on _GLIBCXX_USE_C99_STDINT_TR1.
+       (char_traits<char32_t>): Likewise.
+       * include/experimental/source_location: Likewise.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/std/atomic (atomic_int_least8_t, atomic_uint_least8_t)
+       (atomic_int_least16_t, atomic_uint_least16_t)
+       (atomic_int_least32_t, atomic_uint_least32_t)
+       (atomic_int_least64_t, atomic_uint_least64_t)
+       (atomic_int_fast16_t, atomic_uint_fast16_t)
+       (atomic_int_fast32_t, atomic_uint_fast32_t)
+       (atomic_int_fast64_t, atomic_uint_fast64_t)
+       (atomic_intmax_t, atomic_uintmax_t): Define unconditionally.
+       * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: Adjust.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/algorithmfwd.h (shuffle): Do not depend on
+       _GLIBCXX_USE_C99_STDINT_TR1.
+       * include/bits/ranges_algo.h (shuffle): Likewise.
+       * include/bits/stl_algo.h (shuffle): Likewise.
+       * include/ext/random: Likewise.
+       * include/ext/throw_allocator.h (random_condition): Likewise.
+       * include/std/random: Likewise.
+       * src/c++11/cow-string-inst.cc: Likewise.
+       * src/c++11/random.cc: Likewise.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/experimental/feat-cxx14.cc: Remove dependency on
+       _GLIBCXX_USE_C99_STDINT_TR1.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/22_locale/locale/cons/unicode.cc: Remove dependency
+       on _GLIBCXX_USE_C99_STDINT_TR1.
+
+2023-05-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/21_strings/basic_string_view/typedefs.cc: Remove
+       dependency on _GLIBCXX_USE_C99_STDINT_TR1.
+       * testsuite/experimental/string_view/typedefs.cc: Likewise.
+
+2023-05-11  Jonathan Wakely  <jwakely@redhat.com>
+
+       * src/c++17/floating_from_chars.cc [USE_STRTOD_FOR_FROM_CHARS]
+       (auto_locale, auto_ferounding): New class types.
+       (from_chars_impl): Use auto_locale and auto_ferounding.
+
+2023-05-11  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109772
+       * include/std/chrono (hh_mm_ss::__fits): Remove variable
+       template.
+       (hh_mm_ss::__subseconds): Remove __fits from constraints.
+       * testsuite/std/time/hh_mm_ss/109772.cc: New test.
+       * testsuite/std/time/hh_mm_ss/1.cc: Adjust expected size for
+       hh_mm_ss<duration<int, std::pico>>.
+
+2023-05-11  Jonathan Wakely  <jwakely@redhat.com>
+
+       * config/abi/pre/gnu.ver: Export basic_string::_S_allocate.
+       * include/bits/basic_ios.h: Add static assertion checking
+       traits_type::value_type.
+       * include/bits/basic_string.h: Likewise. Do not rebind
+       allocator, and add static assertion checking its value_type.
+       (basic_string::_Alloc_traits_impl): Remove class template.
+       (basic_string::_S_allocate): New static member function.
+       (basic_string::assign): Use _S_allocate.
+       * include/bits/basic_string.tcc (basic_string::_M_create)
+       (basic_string::reserve, basic_string::_M_replace): Likewise.
+       * testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc:
+       Disable for C++20 and later.
+       * testsuite/21_strings/basic_string/requirements/explicit_instantiation/int.cc:
+       Likweise.
+
+2023-05-11  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/109758
+       * include/bits/std_abs.h (abs(__float128)): Handle negative NaN
+       and negative zero correctly.
+       * testsuite/26_numerics/headers/cmath/109758.cc: New test.
+
+2023-05-10  François Dumont  <fdumont@gcc.gnu.org>
+
+       * include/bits/hashtable_policy.h
+       (_NodeBuilder<>::_S_build): Use __node_ptr.
+       (_ReuseOrAllocNode<>): Use __node_ptr in place of __node_type*.
+       (_AllocNode<>): Likewise.
+       (_Equality<>::_M_equal): Remove const_iterator usages. Only preserved
+       to call std::is_permutation in the non-unique key implementation.
+       * include/bits/hashtable.h (_Hashtable<>::_M_update_begin()): Capture
+       _M_begin() once.
+       (_Hashtable<>::_M_bucket_begin(size_type)): Implement implicitly inline.
+       (_Hashtable<>::_M_insert_bucket_begin): Likewise.
+       (_Hashtable<>::_M_remove_bucket_begin): Likewise.
+       (_Hashtable<>::_M_compute_hash_code): Use __node_ptr rather than
+       const_iterator.
+       (_Hashtable<>::find): Likewise.
+       (_Hashtable<>::_M_emplace): Likewise.
+       (_Hashtable<>::_M_insert_unique): Likewise.
+
 2023-05-09  Jonathan Wakely  <jwakely@redhat.com>
 
        * python/libstdcxx/v6/printers.py (StdChronoDurationPrinter):