+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):