| 2025-04-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-04-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/21334 |
| * doc/xml/manual/using.xml: Document that container data race |
| avoidance rules do not apply to COW std::string. |
| * doc/html/*: Regenerate. |
| |
| 2025-04-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115285 |
| * include/bits/hashtable.h (_Hashtable::_S_forward_key): Remove. |
| (_Hashtable::_M_insert_unique_aux): Replace _S_forward_key with |
| a static_cast to a type defined using conditional_t. |
| (_Hashtable::_M_insert): Replace _ConvertToValueType with a |
| static_cast to a type defined using conditional_t. |
| * include/bits/hashtable_policy.h (_ConvertToValueType): Remove. |
| * testsuite/23_containers/unordered_map/insert/115285.cc: New test. |
| * testsuite/23_containers/unordered_set/insert/115285.cc: New test. |
| * testsuite/23_containers/unordered_set/96088.cc: Adjust |
| expected number of allocations. |
| |
| 2025-04-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_pair.h (__is_pair): Define for C++11 and |
| C++14 as well. |
| |
| 2025-04-10 François Dumont <frs.dumont@gmail.com> |
| |
| Backported from master: |
| 2024-10-24 François Dumont <frs.dumont@gmail.com> |
| |
| * testsuite/23_containers/unordered_map/96088.cc (test03): Fix increments |
| value when _GLIBCXX_USE_CXX11_ABI is equal to 0. |
| |
| 2025-04-10 François Dumont <frs.dumont@gmail.com> |
| |
| Backported from master: |
| 2024-10-23 François Dumont <frs.dumont@gmail.com> |
| |
| PR libstdc++/115285 |
| * include/bits/hashtable.h (_S_forward_key<_Kt>): Always return a temporary |
| key_type instance. |
| * testsuite/23_containers/unordered_map/96088.cc: Adapt to additional instanciation. |
| Also check that mapped_type is not instantiated when there is no insertion. |
| * testsuite/23_containers/unordered_multimap/96088.cc: Adapt to additional |
| instanciation. |
| * testsuite/23_containers/unordered_multiset/96088.cc: Likewise. |
| * testsuite/23_containers/unordered_set/96088.cc: Likewise. |
| * testsuite/23_containers/unordered_set/pr115285.cc: New test case. |
| |
| 2025-04-09 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2025-04-09 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/115046 |
| PR libstdc++/112490 |
| * include/bits/stl_iterator.h (basic_const_iterator::operator-): |
| Replace non-dependent basic_const_iterator function parameter with |
| a dependent one of type basic_const_iterator<_It2> where _It2 |
| matches _It. |
| * testsuite/std/ranges/adaptors/as_const/1.cc (test04): New test. |
| |
| 2025-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/119671 |
| * include/std/format (__formatter_fp::format): Do not invalidate |
| __wstr unless _M_localized returns a valid string. |
| * testsuite/std/format/functions/format.cc: Check wide string |
| formatting of floating-point types with classic locale. |
| |
| 2025-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-04-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/doxygen/user.cfg.in (INPUT): Add text_encoding. |
| |
| 2025-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-04-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/101587 |
| * include/bits/ranges_uninitialized.h (__detail::__mindist): |
| Remove. |
| (ranges::uninitialized_copy, ranges::uninitialized_copy_n) |
| (ranges::uninitialized_move, ranges::uninitialized_move_n): Use |
| comparison and assignment instead of __mindist. |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: |
| Check with ranges that use integer-like class type for |
| difference type. |
| * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: |
| Likewise. |
| |
| 2025-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/101587 |
| * include/bits/ranges_uninitialized.h (__detail::__mindist): |
| New function object. |
| (ranges::uninitialized_copy, ranges::uninitialized_copy_n) |
| (ranges::uninitialized_move, ranges::uninitialized_move_n): Use |
| __mindist instead of std::min. |
| * testsuite/20_util/specialized_algorithms/uninitialized_copy/constrained.cc: |
| Check ranges with difference difference types. |
| * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: |
| Likewise. |
| |
| 2025-04-07 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2025-03-13 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/116440 |
| * include/std/tuple (tuple::tuple(const _Elements&...)) |
| [C++20]: Turn into a template. |
| * testsuite/20_util/tuple/116440.C: New test. |
| |
| 2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> |
| |
| Backported from master: |
| 2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> |
| |
| * testsuite/std/format/functions/format.cc: Restored line. |
| |
| 2025-04-03 Tomasz Kamiński <tkaminsk@redhat.com> |
| |
| PR libstdc++/119593 |
| * include/bits/unicode.h |
| (__unicode::__literal_encoding_is_unicode<_CharT>): |
| Corrected handing for UTF-16 and UTF-32 with "LE" or "BE" suffix. |
| * include/std/format (__formatter_str::_S_character_width): |
| Define. |
| (__formatter_str::_S_character_width): Updated passed char |
| length. |
| * testsuite/std/format/functions/format.cc: Test for wchar_t. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/119469 |
| * include/bits/iterator_concepts.h (_IterMove::__result): Use |
| decltype-specifier instead of an explicit type. |
| * testsuite/24_iterators/customization_points/iter_move.cc: |
| Check results for function references. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/106612 |
| * include/bits/iterator_concepts.h (_IterMove::__iter_ref_t): |
| New alias template. |
| (_IterMove::__result): Use __iter_ref_t instead of |
| std::iter_reference_t. |
| (_IterMove::__type): Remove incorrect __dereferenceable |
| constraint. |
| (_IterMove::operator()): Likewise. Add correct constraints. Use |
| __iter_ref_t instead of std::iter_reference_t. Forward parameter |
| as correct value category. |
| (iter_swap): Add comments. |
| * testsuite/24_iterators/customization_points/iter_move.cc: Test |
| that iter_move is found by ADL and that rvalue arguments are |
| handled correctly. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/110498 |
| * include/bits/vector.tcc (vector<bool, A>::_M_reallocate): |
| Hoist loads of begin() and end() before allocation and use them |
| to state an unreachable condition. |
| * testsuite/23_containers/vector/bool/capacity/110498.cc: New |
| test. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114758 |
| * include/bits/vector.tcc (vector<bool, A>::_M_fill_insert): |
| Hoist loads of begin() and end() before allocation. |
| * testsuite/23_containers/vector/bool/capacity/114758.cc: New |
| test. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117983 |
| * include/bits/vector.tcc (vector::_M_range_insert): Add |
| unreachable condition to tell the compiler begin() <= end(). |
| * testsuite/23_containers/vector/modifiers/insert/117983.cc: New |
| test. |
| |
| 2025-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114945 |
| * include/bits/vector.tcc (vector::_M_default_append): Add |
| unreachable condition so the compiler knows that _M_finish is |
| not null. |
| * testsuite/23_containers/vector/capacity/114945.cc: New test. |
| |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116212 |
| * testsuite/20_util/specialized_algorithms/uninitialized_move/constrained.cc: |
| Use unsigned for vector size. |
| |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/ranges_base.h (range_common_reference_t): New |
| alias template, as per LWG 3860. |
| * testsuite/std/ranges/range.cc: Check it. |
| |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_map.h: Check __glibcxx_node_extract instead |
| of __cplusplus. |
| * include/bits/stl_multimap.h: Likewise. |
| * include/bits/stl_multiset.h: Likewise. |
| * include/bits/stl_set.h: Likewise. |
| * include/bits/stl_tree.h: Likewise. |
| |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/future (packaged_task::packaged_task(F&&)): Add |
| static_assert. |
| * testsuite/30_threads/packaged_task/cons/dangling_ref.cc: Add |
| dg-error for new static assertion. |
| * testsuite/30_threads/packaged_task/cons/lwg4154_neg.cc: New |
| test. |
| |
| 2025-04-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/118699 |
| * testsuite/27_io/filesystem/operations/copy.cc: Check copying a |
| file to a directory. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-24 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/101527 |
| * testsuite/24_iterators/common_iterator/101527.cc: New test. |
| * testsuite/24_iterators/counted_iterator/101527.cc: New test. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/test.xml: Remove stray comma. |
| * doc/html/manual/test.html: Regenerate. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/forward_list (erase): Change lambda to have |
| explicit return type and const parameter type. |
| * include/std/list (erase): Likewise. |
| * testsuite/23_containers/forward_list/erasure.cc: Check lambda |
| is correct. |
| * testsuite/23_containers/list/erasure.cc: Likewise. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-24 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/policy_data_structures_biblio.xml: Fix two |
| broken links. |
| * doc/html/manual/policy_data_structures.html: Regenerate. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108487 |
| * include/bits/stl_vector.h (vector(initializer_list)): Call |
| _M_range_initialize_n instead of _M_range_initialize. |
| (vector(InputIterator, InputIterator)): Use _M_range_initialize_n |
| for C++20 sized sentinels and forward iterators. |
| (vector::_M_range_initialize(FwIt, FwIt, forward_iterator_tag)): |
| Use _M_range_initialize_n. |
| (vector::_M_range_initialize_n): New function. |
| * testsuite/23_containers/vector/cons/108487.cc: New test. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++20/tzdata.zi: Import new file from 2025b release. |
| |
| 2025-03-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/chrono (__detail::__get_leap_second_info): Update |
| expiry date for leap seconds list. |
| * src/c++20/tzdata.zi: Import new file from 2025a release. |
| * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds) |
| Update expiry date for leap seconds list. |
| |
| 2025-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ranges (ranges::to): Allow unions as well as |
| non-union class types. |
| * testsuite/std/ranges/conv/lwg4229.cc: New test. |
| |
| 2025-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/112803 |
| * include/std/ranges (ranges::to): Add static assertions to |
| enforce Mandates conditions. |
| * testsuite/std/ranges/conv/112803.cc: New test. |
| |
| 2025-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/119429 |
| * include/std/format (__format::_Scanner::_Scanner): Cast |
| default argument to size_t. |
| |
| 2025-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115939 |
| * include/bits/hashtable_policy.h (_Node_iterator): Add |
| operator== and operator!=. |
| (_Node_const_iterator): Likewise. |
| * testsuite/23_containers/unordered_map/115939.cc: New test. |
| |
| 2025-03-25 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2025-03-13 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/119135 |
| * include/std/ranges: Include <utility>. |
| (views::__detail::__is_ref_view): Replace with ... |
| (views::__detail::__is_constable_ref_view): ... this. |
| (views::_AsConst::operator()): Replace bogus use of element_type |
| in the ref_view branch. |
| * testsuite/std/ranges/adaptors/as_const/1.cc (test03): Extend |
| test. |
| |
| 2025-03-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/test.xml: Fix default for -std option. |
| * doc/html/manual/test.html: Regenerate. |
| |
| 2025-03-21 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2025-03-20 Jakub Jelinek <jakub@redhat.com> |
| |
| * testsuite/18_support/numeric_limits/traps.cc (main): Fix comment |
| typo. |
| |
| 2025-03-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/locale_facets_nonio.tcc (time_put::do_put): Fix |
| typo in comment. |
| |
| 2025-03-18 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2025-02-28 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/112490 |
| * include/bits/stl_iterator.h (basic_const_iterator::operator<): |
| Replace non-dependent basic_const_iterator function parameter with |
| a dependent one of type basic_const_iterator<_It3> where _It3 |
| matches _It. |
| (basic_const_iterator::operator>): Likewise. |
| (basic_const_iterator::operator<=): Likewise. |
| (basic_const_iterator::operator>=): Likewise. |
| * testsuite/24_iterators/const_iterator/112490.cc: New test. |
| |
| 2025-03-05 Tomasz Kamiński <tkaminsk@redhat.com> |
| |
| Backported from master: |
| 2025-03-05 Tomasz Kamiński <tkaminsk@redhat.com> |
| |
| PR libstdc++/119121 |
| * include/bits/ranges_util.h (__detail::__pair_like_convertible_from): |
| Use `_Tp` in `is_reference_v` check |
| * testsuite/std/ranges/subrange/tuple_like.cc: New tests for |
| pair-like conversion |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-02-20 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/118811 |
| * src/c++20/tzdb.cc (tzdb_list::_Node): Move definitions of |
| static data members to new header. |
| * src/c++20/tzdb_globals.h: New header. Use init_priority |
| attribute on static data members. |
| * testsuite/std/time/tzdb_list/pr118811.cc: New test. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/tuple: Do not include implementation details in |
| Doxygen documentation. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-02-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/stacktrace (_Impl::_M_allocate): Fix outdated |
| comment. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/stacktrace (basic_stacktrace::_Impl::_M_allocate): |
| Use __detail::__get_temporary_buffer. |
| (basic_stacktrace::_Impl::_M_deallocate): Use |
| __detail::__return_temporary_buffer. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/string_view (starts_with(basic_string_view)): |
| Compare lengths first and then call traits_type::compare |
| directly. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/104395 |
| * include/bits/new_allocator.h: Disable extended alignment |
| support in C++98 mode. |
| * include/bits/stl_tempbuf.h: Likewise. |
| * include/ext/bitmap_allocator.h: Likewise. |
| * include/ext/malloc_allocator.h: Likewise. |
| * include/ext/mt_allocator.h: Likewise. |
| * include/ext/pool_allocator.h: Likewise. |
| * testsuite/ext/104395.cc: New test. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_tempbuf.h (__get_temporary_buffer): Cast |
| argument to size_t to handle negative values and suppress |
| -Wsign-compare warning. |
| (_Temporary_buffer): Move diagnostic pragmas to new location of |
| call to std::get_temporary_buffer. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/105258 |
| * include/bits/stl_tempbuf.h (__detail::__get_temporary_buffer): |
| New function to do allocation for get_temporary_buffer, with |
| extended alignment support. |
| (__detail::__return_temporary_buffer): Support extended |
| alignment. |
| (get_temporary_buffer): Use __get_temporary_buffer. |
| (return_temporary_buffer): Support extended alignment. Add |
| deprecated attribute. |
| (_Temporary_buffer): Move allocation and deallocation into a |
| subobject and remove try-catch block in constructor. |
| (__uninitialized_construct_buf): Use argument deduction for |
| value type. |
| * testsuite/20_util/temporary_buffer.cc: Add dg-warning for new |
| deprecated warning. |
| * testsuite/25_algorithms/stable_sort/overaligned.cc: New test. |
| |
| 2025-02-28 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> |
| |
| Backported from master: |
| 2025-02-07 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> |
| |
| PR libstdc++/118160 |
| PR libstdc++/100249 |
| * include/bits/ranges_algo.h (__is_permutation_fn): Avoid a |
| dangling reference by storing the result of the iterator |
| dereference and the result of the projection in two distinct |
| variables, in order to lifetime-extend each one. |
| Forward the projected value to the predicate. |
| * testsuite/25_algorithms/is_permutation/constrained.cc: Add a |
| test with a range returning prvalues. Test it in a constexpr |
| context, in order to rely on the compiler to catch UB. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_uninitialized.h (uninitialized_default_construct) |
| (uninitialized_default_construct_n, uninitialized_value_construct) |
| (uninitialized_value_construct_n): Qualify calls to prevent ADL. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-18 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/basic_string.h (__to_wstring_numeric): Add 'i' |
| and 'I' to mapping. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117921 |
| * testsuite/23_containers/set/modifiers/swap/adl.cc: Add |
| equality comparison for Allocator. |
| * testsuite/23_containers/unordered_set/modifiers/swap-2.cc: |
| Likewise. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117921 |
| * include/bits/hashtable_policy.h (_Hash_code_base::_M_swap): |
| Use ADL swap for Hash members. |
| (_Hashtable_base::_M_swap): Use ADL swap for _Equal members. |
| * include/bits/stl_tree.h (_Rb_tree::swap): Use ADL swap for |
| _Compare members. |
| * testsuite/23_containers/set/modifiers/swap/adl.cc: New test. |
| * testsuite/23_containers/unordered_set/modifiers/swap-2.cc: New |
| test. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/forward_list.h (forward_list::front): Add |
| non-empty assertions. |
| * include/bits/stl_list.h (list::front, list::back): Add |
| non-empty assertions. |
| |
| 2025-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/118158 |
| * src/c++17/fs_ops.cc (fs::equivalent): Remove error reporting |
| for is_other(s1) && is_other(s2) case, as per LWG 2937. |
| * testsuite/27_io/filesystem/operations/pr118158.cc: New test. |
| |
| 2025-01-29 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2025-01-29 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/118413 |
| * include/std/ranges (views::__adaptor::_Partial): Adjust |
| constraints on the "simple" partial specializations to require |
| is_trivially_copy_constructible_v instead of |
| is_trivially_copyable_v. |
| * testsuite/std/ranges/adaptors/adjacent_transform/1.cc (test04): |
| Extend P2494R2 test. |
| * testsuite/std/ranges/adaptors/transform.cc (test09): Likewise. |
| |
| 2025-01-27 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> |
| |
| Backported from master: |
| 2025-01-20 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> |
| |
| PR libstdc++/118185 |
| PR libstdc++/100249 |
| * include/bits/ranges_algo.h (__clamp_fn): Correctly forward the |
| projected value to the comparator. |
| * testsuite/25_algorithms/clamp/118185.cc: New test. |
| |
| 2025-01-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/109849 |
| * include/bits/vector.tcc (vector::_M_range_insert): Fix |
| reversed args in length calculation. |
| |
| 2025-01-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/istream.tcc: Add diagnostic pragmas around uses |
| of long long and extern template. |
| * include/bits/locale_facets.h: Likewise. |
| * include/bits/locale_facets.tcc: Likewise. |
| * include/bits/locale_facets_nonio.tcc: Likewise. |
| * include/bits/ostream.tcc: Likewise. |
| * include/bits/stl_algobase.h: Likewise. |
| * include/c_global/cstdlib: Likewise. |
| * include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp: |
| Likewise. |
| * include/ext/pointer.h: Likewise. |
| * include/ext/stdio_sync_filebuf.h: Likewise. |
| * include/std/istream: Likewise. |
| * include/std/ostream: Likewise. |
| * include/tr1/cmath: Likewise. |
| * include/tr1/type_traits: Likewise. |
| * include/tr1/functional_hash.h: Likewise. Remove semi-colons |
| at namespace scope that aren't needed after macro expansion. |
| * include/tr1/tuple: Remove semi-colon at namespace scope. |
| * include/bits/vector.tcc: Change LL suffix to just L. |
| |
| 2025-01-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/90389 |
| * include/bits/deque.tcc (_M_insert_aux): Rename variadic |
| overload to _M_emplace_aux. |
| * include/bits/stl_deque.h (_M_insert_aux): Define inline. |
| (_M_emplace_aux): Declare. |
| * testsuite/23_containers/deque/modifiers/emplace/90389.cc: New |
| test. |
| |
| 2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> |
| |
| Backported from master: |
| 2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> |
| |
| * testsuite/27_io/print/1.cc: Allow both LF and CRLF in test. |
| * testsuite/27_io/print/3.cc: Likewise. |
| |
| 2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> |
| |
| Backported from master: |
| 2025-01-12 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> |
| |
| * testsuite/29_atomics/atomic_float/compare_exchange_padding.cc: |
| Use effective-target libatomic_available. |
| |
| 2025-01-10 Tamar Christina <tamar.christina@arm.com> |
| |
| * include/bits/hashtable.h (find): Add inline keyword. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/memory_resource.h (polymoprhic_allocator): Use |
| feature test macro for P0339R6 features. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/alloc_traits.h: Improve doxygen docs for |
| allocator_traits specializations. |
| * include/bits/memory_resource.h: Likewise. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/memory_resource.h (polymorphic_allocator::destroy): |
| Remove deprecated attribute. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/89624 |
| * include/bits/atomic_base.h (memory_order): Use int as |
| underlying type. |
| * testsuite/29_atomics/atomic/89624.cc: New test. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++17/fs_dir.cc: Fix typo in comment. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ostream (println): Pass stream's locale to |
| std::format, as per LWG 4088. |
| * testsuite/27_io/basic_ostream/print/1.cc: Check std::println |
| with custom locale. Remove unused brit_punc class. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-30 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/using_exceptions.xml: Fix typos and grammatical |
| errors. |
| * doc/html/manual/using_exceptions.html: Regenerate. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/strings.xml: Clarify that GCC 4.5 added |
| std::string::shrink_to_fit. |
| * doc/html/manual/strings.html: Regenerate. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/c++config (__glibcxx_assert): Remove useless |
| __builtin_expect from constexpr-only assertion. Improve |
| comments. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108236 |
| * include/pstl/glue_numeric_impl.h (exclusive_scan): Pass __init |
| as rvalue. |
| * include/pstl/numeric_impl.h (__brick_transform_scan): Do not |
| write through __result until after reading through __first. Move |
| __init into return value. |
| (__pattern_transform_scan): Pass __init as rvalue. |
| * include/std/numeric (exclusive_scan): Move construct instead |
| of copy constructing. |
| * testsuite/26_numerics/exclusive_scan/2.cc: New test. |
| * testsuite/26_numerics/pstl/numeric_ops/108236.cc: New test. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117962 |
| * include/debug/safe_container.h: Make allocator-extended move |
| constructor a no-op during constant evaluation. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/109517 |
| PR libstdc++/109976 |
| * include/debug/helper_functions.h (__valid_range_aux): Treat |
| all input iterator ranges as valid during constant evaluation. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/106212 |
| * include/std/array (operator==): Use std::__equal_aux1 instead |
| of std::equal. |
| * testsuite/23_containers/array/comparison_operators/106212.cc: |
| New test. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117966 |
| * include/std/span (span(T (&)[N])): Do not delegate to |
| constructor that performs redundant checks. |
| (span(array<T, N>&), span(const array<T, N>&)): Likewise. |
| (span(Range&&), span(const span<T, N>&)): Likewise. |
| * testsuite/23_containers/span/117966.cc: New test. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/118035 |
| * include/bits/deque.tcc (_M_range_insert_aux): Return |
| immediately if inserting an empty range. |
| * testsuite/23_containers/deque/modifiers/insert/118035.cc: New |
| test. |
| |
| 2025-01-09 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-12-13 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/112349 |
| * include/bits/ranges_algo.h (__min_fn::operator()): Turn local |
| object __tmp into a reference. |
| * include/bits/ranges_util.h (__max_fn::operator()): Likewise. |
| * testsuite/25_algorithms/max/constrained.cc (test04): New test. |
| * testsuite/25_algorithms/min/constrained.cc (test04): New test. |
| |
| 2025-01-09 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-11-14 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/ranges (keys_view): Adjust as per LWG 3563. |
| (values_view): Likewise. |
| * testsuite/std/ranges/adaptors/elements.cc (test08): New test. |
| |
| 2025-01-09 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-10-29 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/112641 |
| * include/std/ranges (drop_view::begin): Reimplement const |
| overload so that it's O(1) always. |
| * testsuite/std/ranges/adaptors/drop.cc (test10): New test. |
| |
| 2025-01-09 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| Backported from master: |
| 2024-08-17 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * doc/xml/manual/abi.xml: Update reference to |
| gcc.gnu.org/onlinedocs. |
| * doc/xml/manual/concurrency_extensions.xml (interface): Ditto. |
| * doc/xml/manual/extensions.xml: Ditto. |
| * doc/xml/manual/parallel_mode.xml: Ditto. |
| * doc/xml/manual/shared_ptr.xml: Ditto. |
| * doc/xml/manual/using_exceptions.xml: Ditto. And change GNU GCC |
| to GCC. |
| * doc/html/index.html: Regenerate. |
| * doc/html/manual/abi.html: Ditto. |
| * doc/html/manual/ext_concurrency_impl.html: Ditto. |
| * doc/html/manual/ext_demangling.html: Ditto. |
| * doc/html/manual/memory.html: Ditto. |
| * doc/html/manual/parallel_mode_design.html: Ditto. |
| * doc/html/manual/parallel_mode_using.html: Ditto. |
| * doc/html/manual/using_exceptions.html: Ditto. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/118093 |
| * include/bits/atomic_futex.h (_M_load_and_test_until_impl): |
| Return false for times before the epoch. |
| * src/c++11/futex.cc (_M_futex_wait_until): Extend check for |
| negative times to check for subsecond times. Add unlikely |
| attribute. |
| (_M_futex_wait_until_steady): Likewise. |
| * testsuite/30_threads/future/members/118093.cc: New test. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/move.h (forward, move, move_if_noexcept, addressof): |
| Add @since to Doxygen comments. |
| (forward_like): Add Doxygen comment. |
| |
| 2025-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2025-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/evolution.xml: Replace invalid <variable> |
| elements with <varname>. |
| * doc/html/*: Regenerate. |
| |
| 2024-12-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-12-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format: Fix typo in Doxygen comment. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_vector.h (operator<=>): Use constexpr |
| instead of _GLIBCXX20_CONSTEXPR macro. |
| |
| 2024-12-02 Jason Merrill <jason@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jason Merrill <jason@redhat.com> |
| |
| * include/std/istream: Add cast to avoid -Wsign-compare. |
| * include/std/stacktrace: Likewise. |
| |
| 2024-12-02 Jason Merrill <jason@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jason Merrill <jason@redhat.com> |
| |
| * testsuite/20_util/default_delete/void_neg.cc: Fix regexp quoting. |
| |
| 2024-12-02 Jason Merrill <jason@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jason Merrill <jason@redhat.com> |
| |
| * include/std/coroutine (coroutine_handle): Use nullptr instead of |
| 0 as initializer for _M_fr_ptr. |
| |
| 2024-12-02 Jason Merrill <jason@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jason Merrill <jason@redhat.com> |
| |
| * include/decimal/decimal.h (_DEFINE_DECIMAL_BINARY_OP_WITH_INT): |
| Remove redundant semicolons. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/experimental/io_context: Remove name of unused |
| parameter. |
| * include/experimental/socket: Add [[maybe_unused]] attribute. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++11/cxx11-ios_failure.cc (__iosfail_type_info): Unhide |
| the three-arg overload of __do_upcast. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * libsupc++/exception_ptr.h (__exception_ptr::_M_safe_bool_dummy): |
| Remove __attribute__((const)) from function returning void. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ranges (to): Remove unused typedef. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/hashtable.h (_M_insert_unique_node): Improve |
| comment. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/ranges_util.h (subrange::begin): Fix constraint, |
| as per LWG 3589. |
| * testsuite/std/ranges/subrange/lwg3589.cc: New test. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unordered_map.h: Check __glibcxx_node_extract and |
| __glibcxx_unordered_map_try_emplace instead of __cplusplus. |
| * include/bits/unordered_set.h: Check __glibcxx_node_extract |
| instead of __cplusplus. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/cpp_type_traits.h (__is_byte<byte>): Guard with |
| __glibcxx_byte macro instead of checking __cplusplus. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/ranges_algo.h (__is_permutation_fn::operator()): |
| Short-circuit for sized ranges with different sizes, as per LWG |
| 3560. |
| * include/bits/ranges_algobase.h (__equal_fn::operator()): |
| Likewise. |
| * include/bits/stl_algo.h (__is_permutation): Use if-constexpr |
| for random access iterator branches. |
| * include/bits/stl_algobase.h (__equal4): Likewise. |
| * testsuite/25_algorithms/equal/lwg3560.cc: New test. |
| * testsuite/25_algorithms/is_permutation/lwg3560.cc: New test. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/106676 |
| * include/bits/iterator_concepts.h (__cpp17_fwd_iterator): Use |
| is_reference instead of is_value_reference. |
| rvalue references. |
| * include/std/ranges (transform_view:__iter_cat::_S_iter_cat): |
| Likewise. |
| (zip_transform_view::__iter_cat::_S_iter_cat): Likewise. |
| (adjacent_transform_view::__iter_cat::_S_iter_cat): Likewise. |
| (join_with_view::__iter_cat::_S_iter_cat): Likewise. |
| * testsuite/std/ranges/adaptors/transform.cc: Check |
| iterator_category when the transformation function returns an |
| rvalue reference type. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/basic_string.tcc (resize_for_overwrite): Fix |
| -Wsign-compare warning. |
| * include/bits/cow_string.h (resize_for_overwrite): Likewise. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_bvector.h (emplace_back, emplace): Forward |
| parameter pack to preserve value category. |
| * testsuite/23_containers/vector/bool/emplace_rvalue.cc: New |
| test. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/hashtable.h: Fix spelling in comment. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/hashtable.h: Improve comments. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117560 |
| * include/bits/fs_dir.h (enable_borrowed_range, enable_view): |
| Define specializations for directory iterators, as per LWG 3480. |
| * testsuite/27_io/filesystem/iterators/lwg3480.cc: New test. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/util/testsuite_performance.h (time_counter): Add |
| comment about times. |
| (time_counter::system_time): Use correct split value. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/util/testsuite_performance.h: Use |
| __gnu_cxx::__is_single_threaded instead of __gthread_active_p(). |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_iterator.h (operator+): Add constraint to |
| move_iterator operator. |
| * testsuite/24_iterators/move_iterator/rel_ops_c++20.cc: |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117822 |
| * include/std/stacktrace (stacktrace(stacktrace&&, const A&)): |
| Fix typo in qualified-id for is_always_equal trait. |
| * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Test |
| allocator-extended constructors and allocator propagation. |
| |
| 2024-12-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/stacktrace (basic_stacktrace::_Impl::_M_allocate): |
| Do not assume allocators only throw std::bad_alloc. |
| |
| 2024-11-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode.h (_Utf_iterator::_M_read_utf16): Add |
| parentheses. |
| |
| 2024-11-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117520 |
| * include/std/text_encoding (aliases_view:_Iterator::operator+=): |
| Fix typos that caused == to be used instead of =. |
| (aliases_view::_Iterator): Fix friend declaration. |
| * testsuite/std/text_encoding/members.cc: Adjust expected |
| behaviour of invalid subscript. Add tests for other erroneous |
| operations on iterators. |
| |
| 2024-11-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-11-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/hashtable_policy.h (_Insert_base::try_emplace): |
| Do not define for C++11 and C++14. |
| * include/debug/map.h (try_emplace): Use feature test macro. |
| * include/debug/unordered_map (try_emplace): Likewise. |
| * testsuite/17_intro/names.cc: Define try_emplace before C++17. |
| |
| 2024-11-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2024-11-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR libstdc++/117406 |
| * testsuite/26_numerics/headers/cmath/117406.cc: Use |
| std::numeric_limits<int>::max() instead of INT_MAX. |
| |
| 2024-11-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2024-11-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR libstdc++/117406 |
| * include/c_global/cmath (std::ilogb(_Float16), std::llrint(_Float16), |
| std::llround(_Float16), std::lrint(_Float16), std::lround(_Float16)): |
| Don't cast __builtin_* return to _Float16. |
| (std::ilogb(__gnu_cxx::__bfloat16_t), |
| std::llrint(__gnu_cxx::__bfloat16_t), |
| std::llround(__gnu_cxx::__bfloat16_t), |
| std::lrint(__gnu_cxx::__bfloat16_t), |
| std::lround(__gnu_cxx::__bfloat16_t)): Don't cast __builtin_* return to |
| __gnu_cxx::__bfloat16_t. |
| * testsuite/26_numerics/headers/cmath/117406.cc: New test. |
| |
| 2024-11-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2024-10-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR libstdc++/117321 |
| * include/c_global/cmath (nextafter(_Float16, _Float16)): Use |
| if consteval rather than if (std::__is_constant_evaluated()) around |
| the __builtin_nextafterf16 call. |
| (nextafter(__gnu_cxx::__bfloat16_t, __gnu_cxx::__bfloat16_t)): Use |
| if consteval rather than if (std::__is_constant_evaluated()) around |
| the __builtin_nextafterf16b call. |
| * testsuite/26_numerics/headers/cmath/117321.cc: New test. |
| |
| 2024-10-22 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-10-05 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/ranges_base.h (__distance_fn::operator()): |
| Adjust iterator/sentinel overloads as per LWG 3664. |
| * testsuite/24_iterators/range_operations/distance.cc: |
| Test LWG 3664 example. |
| |
| 2024-10-22 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-10-04 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/ranges (single_view::empty): Define as per LWG 4035. |
| (iota_view::empty): Define as per LWG 4001. |
| (lazy_split_view::_OuterIter::value_type): Remove default |
| constructor and make other constructor private as per LWG 4013. |
| (common_view::begin): Disable non-const overload for simple |
| views as per LWG 4012. |
| (common_view::end): Likewise. |
| (adjacent_view::base): Define as per LWG 3848. |
| (adjacent_transform_view::base): Likewise. |
| (chunk_view::_InnerIter::iter_move): Define as per LWG 3851. |
| (chunk_view::_InnerIter::itep_swap): Likewise. |
| (slide_view::base): Define as per LWG 3848. |
| (repeat_view): Adjust deduction guide as per LWG 4053. |
| (_Repeat::operator()): Adjust single-parameter overload as per |
| LWG 4054. |
| * testsuite/std/ranges/adaptors/adjacent/1.cc: Verify existence |
| of base member function. |
| * testsuite/std/ranges/adaptors/adjacent_transform/1.cc: Likewise. |
| * testsuite/std/ranges/adaptors/chunk/1.cc: Test LWG 3851 example. |
| * testsuite/std/ranges/adaptors/slide/1.cc: Verify existence of |
| base member function. |
| * testsuite/std/ranges/iota/iota_view.cc: Test LWG 4001 example. |
| * testsuite/std/ranges/repeat/1.cc: Test LWG 4053/4054 examples. |
| |
| 2024-10-22 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-08-22 Patrick Palka <ppalka@redhat.com> |
| |
| * testsuite/25_algorithms/contains/1.cc: Verify value of |
| __cpp_lib_ranges_contains. |
| * testsuite/25_algorithms/find_last/1.cc: Verify value of |
| __cpp_lib_ranges_find_last. |
| * testsuite/25_algorithms/iota/1.cc: Verify value of |
| __cpp_lib_ranges_iota. |
| |
| 2024-10-22 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-08-22 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/iterator_concepts.h (indirectly_unary_invocable): |
| Relax as per P2997R1. |
| (indirectly_regular_unary_invocable): Likewise. |
| (indirect_unary_predicate): Likewise. |
| (indirect_binary_predicate): Likewise. |
| (indirect_equivalence_relation): Likewise. |
| (indirect_strict_weak_order): Likewise. |
| * include/bits/version.def (ranges): Update value for C++26. |
| * include/bits/version.h: Regenerate. |
| * testsuite/24_iterators/indirect_callable/p2997r1.cc: New test. |
| * testsuite/std/ranges/version_c++23.cc: Remove. |
| * testsuite/std/ranges/headers/ranges/synopsis.cc: Refine the |
| __cpp_lib_ranges checks. |
| |
| 2024-10-22 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-08-22 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/iterator_concepts.h (__detail::__indirect_value): |
| Define. |
| (__indirect_value_t): Define as per P2609R3. |
| (iter_common_reference_t): Adjust as per P2609R3. |
| (indirectly_unary_invocable): Likewise. |
| (indirectly_regular_unary_invocable): Likewise. |
| (indirect_unary_predicate): Likewise. |
| (indirect_binary_predicate): Likewise. |
| (indirect_equivalence_relation): Likewise. |
| (indirect_strict_weak_order): Likewise. |
| (__detail::__projected::__type): Define member aliases |
| __projected_Iter and __projected_Proj providing the |
| template arguments of the current specialization. |
| * include/bits/version.def (ranges): Update value. |
| * include/bits/version.h: Regenerate. |
| * testsuite/24_iterators/indirect_callable/p2609r3.cc: New test. |
| * testsuite/std/ranges/version_c++23.cc: Update expected value |
| of __cpp_lib_ranges macro. |
| |
| 2024-10-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| * python/libstdcxx/v6/printers.py (strip_fundts_namespace): New. |
| (StdExpAnyPrinter, StdExpOptionalPrinter): Use it. |
| |
| 2024-10-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/90276 |
| * testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc: |
| Increase timeout for debug mode. |
| * testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc: |
| Likewise. |
| * testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.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/set_symmetric_difference.cc: |
| Likewise. |
| |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ranges (transform_view:_Iterator): Use const F& |
| to determine value_type and iterator_category of |
| _Iterator<true>, as per LWG 3564. |
| * testsuite/std/ranges/adaptors/transform.cc: Check value_type |
| and iterator_category. |
| |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117085 |
| * include/bits/chrono_io.h (__formatter_chrono::_M_c): Add L |
| option to format string. |
| * testsuite/std/time/format.cc: Move to... |
| * testsuite/std/time/format/format.cc: ...here. |
| * testsuite/std/time/format/pr117085.cc: New test. |
| |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/chrono_io.h (__formatter_chrono::_M_c): Add |
| [[unlikely]] attribute to condition for missing %c format in |
| locale. Use %T instead of %H:%M:%S in fallback. |
| |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117135 |
| * config/locale/generic/time_members.cc |
| (__timepunct<wchar_t>::_M_initialize_timepunc): Set |
| _M_date_time_format for C locale. Set %Ex formats to the same |
| values as the %x formats. |
| |
| 2024-10-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/117094 |
| * include/bits/ranges_algobase.h (__fill_fn): Use std::move for |
| iterator that might not be copyable. |
| * testsuite/25_algorithms/fill/constrained.cc: Check |
| non-copyable iterator with sized sentinel. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR c++/116369 |
| * include/debug/safe_base.h (_Safe_sequence_base::_M_iterators): |
| Add mutable specifier. |
| (_Safe_sequence_base::_M_const_iterators): Likewise. |
| |
| 2024-10-03 Kim Gräsman <kim.grasman@gmail.com> |
| |
| Backported from master: |
| 2024-08-28 Kim Gräsman <kim.grasman@gmail.com> |
| |
| * include/bits/cpp_type_traits.h: Improve doxygen file docs. |
| |
| 2024-10-03 Kim Gräsman <kim.grasman@gmail.com> |
| |
| Backported from master: |
| 2024-08-28 Kim Gräsman <kim.grasman@gmail.com> |
| |
| * config/cpu/aarch64/opt/ext/opt_random.h: Improve doxygen file |
| docs. |
| * config/cpu/i486/opt/ext/opt_random.h: Likewise. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * configure.ac: Fix check for O_NONBLOCK. |
| * config.h.in: Regenerate. |
| * configure: Regenerate. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116857 |
| * libsupc++/guard.cc (__cxa_guard_acquire): Remove |
| _GLIBCXX_NOTHROW to match declaration in <cxxabi.h>. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/37475 |
| * config/locale/gnu/codecvt_members.cc (Guard): New RAII type. |
| (do_out, do_in): Return partial if the destination is empty but |
| the source is not. Use Guard to restore locale on scope exit. |
| Return immediately on any conversion error. |
| (do_encoding, do_max_length, do_length): Use Guard. |
| * testsuite/22_locale/codecvt/in/char/37475.cc: New test. |
| * testsuite/22_locale/codecvt/in/wchar_t/37475.cc: New test. |
| * testsuite/22_locale/codecvt/out/char/37475.cc: New test. |
| * testsuite/22_locale/codecvt/out/wchar_t/37475.cc: New test. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-10-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * config/locale/dragonfly/time_members.cc |
| (__timepunct<char>::_M_initialize_timepunc) |
| (__timepunct<wchar_t>::_M_initialize_timepunc): Set |
| _M_date_time_format for C locale. Set %Ex formats to the same |
| values as the %x formats. |
| * config/locale/generic/time_members.cc: Likewise. |
| * config/locale/gnu/time_members.cc: Likewise. |
| * testsuite/22_locale/time_get/get/char/5.cc: New test. |
| * testsuite/22_locale/time_get/get/wchar_t/5.cc: New test. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/cow_string.h (__resize_for_overwrite): Add |
| inline keyword to function with always_inline attribute. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/90276 |
| * testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc |
| [_GLIBCXX_DEBUG]: Add xfail-run-if for debug mode. |
| * testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc |
| [_GLIBCXX_DEBUG]: Reduce size of test data. |
| * testsuite/25_algorithms/pstl/alg_sorting/includes.cc: |
| Likewise. |
| * testsuite/25_algorithms/pstl/alg_sorting/set_util.h: |
| Likewise. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (__format::__is_formattable_integer): New |
| variable template and specializations. |
| (template<integral, __char> struct formatter): Replace |
| constraints on first arg with __is_formattable_integer. |
| * testsuite/std/format/formatter/requirements.cc: Check that |
| std::formatter specializations for char8_t and const int are |
| disabled. |
| |
| 2024-10-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116755 |
| * include/bits/chrono_io.h (formatter<duration<R,P>>::format): |
| Cast negative integral durations to unsigned rep. |
| * testsuite/20_util/duration/io.cc: Test the most negative |
| integer durations. |
| |
| 2024-09-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-20 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116529 |
| * include/bits/unique_ptr.h (unique_ptr(auto_ptr<U>&&)): |
| Use pointer instead of T*. |
| * testsuite/20_util/unique_ptr/creation/116529.cc: New test. |
| |
| 2024-09-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116754 |
| * include/bits/ranges_algobase.h (__copy_or_move): Fix order of |
| arguments to __memcpyable. |
| |
| 2024-09-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-20 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116777 |
| * doc/xml/manual/using.xml: Document features that are not |
| supported for the gcc4-compatible ABI. |
| * doc/html/manual/using_dual_abi.html: Regenerate. |
| |
| 2024-09-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108619 |
| * include/bits/alloc_traits.h (__allocator_traits_base): Add |
| variable templates for detecting whether the allocator has a |
| construct member, or if placement new can be used instead. |
| (allocator_traits::__construct_helper): Remove. |
| (allocator_traits::__has_construct): Remove. |
| (allocator_traits::construct): Use 'if constexpr' instead of |
| dispatching to overloads constrained with enable_if. |
| (allocator_traits<allocator<T>>::construct): Use _Construct if |
| construct_at is not supported. Use |
| __is_nothrow_new_constructible for noexcept-specifier. |
| (allocator_traits<allocator<void>>::construct): Use |
| __is_nothrow_new_constructible for noexcept-specifier. |
| * include/bits/new_allocator.h (construct): Likewise. |
| * include/ext/malloc_allocator.h (construct): Likewise. |
| * include/std/type_traits (__is_nothrow_new_constructible): New |
| variable template. |
| * testsuite/20_util/allocator/89510.cc: Adjust expected results. |
| * testsuite/ext/malloc_allocator/89510.cc: Likewise. |
| * testsuite/ext/new_allocator/89510.cc: Likewise. |
| * testsuite/20_util/allocator_traits/members/108619.cc: New test. |
| |
| 2024-09-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116159 |
| * include/std/iostream (ios_base_library_init): Only define for |
| ELF targets. |
| * src/c++98/ios_init.cc (ios_base_library_init): Likewise. |
| |
| 2024-09-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116641 |
| * include/bits/basic_string.h (operator=(basic_string&&)): Call |
| _M_assign instead of assign. |
| * testsuite/21_strings/basic_string/allocator/116641.cc: New |
| test. |
| |
| 2024-09-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++20/tzdb.cc (minmax_year, minmax_year2): Remove. |
| (years_from_to): New class replacing minmax_year and |
| minmax_year2. |
| (format_abbrev_str, select_std_or_dst_abbrev): Move earlier in |
| the file. Handle "-" for letters. |
| (ZoneInfo::to): Use format_abbrev_str to expand %z. |
| (ZoneInfo::set_abbrev): Remove exception. Change parameter from |
| reference to value. |
| (operator>>(istream&, Rule&)): Do not clear letters when it |
| contains "-". |
| (time_zone::_M_get_sys_info): Add missing logic to find the Rule |
| in effect before the time point. |
| * testsuite/std/time/tzdb/1.cc: Adjust for vanguard format using |
| "GMT" as the Zone name, not as a Link to "Etc/GMT". |
| * testsuite/std/time/time_zone/sys_info_abbrev.cc: New test. |
| |
| 2024-09-08 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-08-03 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/move.h (__like_impl): New metafunction. |
| (__like_t): Redefine in terms of __like_impl. |
| (forward_like): Redefine in terms of __like_t. |
| * testsuite/20_util/forward_like/2_neg.cc: Don't expect |
| error outside the immediate context anymore. |
| |
| 2024-09-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++17/fs_ops.cc (auto_win_file_handle): Add error_code& |
| member and set it if CreateFileW or GetFileInformationByHandle |
| fails. |
| (fs::equiv_files) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Simplify |
| control flow. |
| (fs::hard_link_count) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Clear ec |
| on success. |
| * testsuite/27_io/filesystem/operations/hard_link_count.cc: |
| Check error handling. |
| |
| 2024-09-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-30 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++17/fs_ops.cc (auto_win_file_handle): Change constructor |
| parameter from const path& to const wchar_t*. |
| (fs::equiv_files): New function. |
| (fs::equivalent): Use equiv_files. |
| * src/filesystem/ops-common.h (fs::equiv_files): Declare. |
| (do_copy_file): Use equiv_files. |
| * src/filesystem/ops.cc (fs::equiv_files): Define. |
| (fs::copy, fs::equivalent): Use equiv_files. |
| * testsuite/27_io/filesystem/operations/copy.cc: Test |
| overwriting directory contents recursively. |
| * testsuite/27_io/filesystem/operations/copy_file.cc: Test |
| overwriting existing files. |
| |
| 2024-09-04 Lennox Shou Hao Ho <lennoxhoe@gmail.com> |
| |
| Backported from master: |
| 2024-07-30 Lennox Shou Hao Ho <lennoxhoe@gmail.com> |
| |
| PR libstdc++/113663 |
| * src/c++17/fs_ops.cc (fs::equivalent): Moved helper class |
| auto_handle to anonymous namespace as auto_win_file_handle. |
| (fs::hard_link_count): Changed Windows implementation to use |
| information provided by GetFileInformationByHandle which is more |
| reliable. |
| * testsuite/27_io/filesystem/operations/hard_link_count.cc: New |
| test. |
| |
| 2024-09-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-09-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116549 |
| * include/bits/stl_iterator.h (disable_sized_sentinel_for): |
| Define specialization for two move_iterator types, as per LWG |
| 3736. |
| * testsuite/24_iterators/move_iterator/lwg3736.cc: New test. |
| |
| 2024-09-04 Dhruv Chawla <dhruvc@nvidia.com> |
| |
| Backported from master: |
| 2024-09-03 Dhruv Chawla <dhruvc@nvidia.com> |
| |
| * include/std/deque: Define macro |
| __glibcxx_want_allocator_traits_is_always_equal. |
| * include/std/forward_list: Likewise. |
| * include/std/list: Likewise. |
| * include/std/map: Likewise. |
| * include/std/scoped_allocator: Likewise. |
| * include/std/set: Likewise. |
| * include/std/string: Likewise. |
| * include/std/unordered_map: Likewise. |
| * include/std/unordered_set: Likewise. |
| * include/std/vector: Likewise. |
| * testsuite/20_util/headers/memory/version.cc: New test. |
| * testsuite/20_util/scoped_allocator/version.cc: Likewise. |
| * testsuite/21_strings/headers/string/version.cc: Likewise. |
| * testsuite/23_containers/deque/version.cc: Likewise. |
| * testsuite/23_containers/forward_list/version.cc: Likewise. |
| * testsuite/23_containers/list/version.cc: Likewise. |
| * testsuite/23_containers/map/version.cc: Likewise. |
| * testsuite/23_containers/set/version.cc: Likewise. |
| * testsuite/23_containers/unordered_map/version.cc: Likewise. |
| * testsuite/23_containers/unordered_set/version.cc: Likewise. |
| * testsuite/23_containers/vector/version.cc: Likewise. |
| |
| 2024-09-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-08-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116381 |
| * include/std/variant (variant): Fix conditions for |
| static_assert to match the spec. |
| * testsuite/20_util/variant/types_neg.cc: New test. |
| |
| 2024-08-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/version.def (chrono): Add cxx11abi = yes. |
| * include/bits/version.h: Regenerate. |
| * testsuite/std/time/syn_c++20.cc: Adjust expected value for |
| the feature test macro. |
| |
| 2024-08-02 Patrick Palka <ppalka@redhat.com> |
| |
| Backported from master: |
| 2024-07-25 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/116038 |
| * include/std/functional (_Bind_front::operator()): Use __like_t |
| instead of std::forward when forwarding __self. |
| (_Bind_back::operator()): Likewise. |
| * include/std/ranges (_Partial::operator()): Likewise. |
| (_Pipe::operator()): Likewise. |
| * testsuite/20_util/function_objects/bind_back/116038.cc: New test. |
| * testsuite/20_util/function_objects/bind_front/116038.cc: New test. |
| * testsuite/std/ranges/adaptors/116038.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/locale_classes.h (locale::combine) |
| (locale::name, locale::operator==, locale::operator!=) |
| (locale::operator(), locale::classic): Add nodiscard |
| attribute. |
| * include/bits/locale_classes.tcc (has_facet, use_facet): |
| Likewise. |
| * testsuite/22_locale/locale/cons/12438.cc: Add dg-warning for |
| nodiscard diagnostic. |
| * testsuite/22_locale/locale/cons/2.cc: Cast use_facet |
| expression to void, to suppress diagnostic. |
| * testsuite/22_locale/locale/cons/unicode.cc: Likewise. |
| * testsuite/22_locale/locale/operations/2.cc: Add dg-warning. |
| |
| 2024-08-01 Deev Patel <dkp10000@gmail.com> |
| |
| Backported from master: |
| 2024-06-08 Deev Patel <dkp10000@gmail.com> |
| Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/atomic_base.h (__atomic_impl::__clear_padding): |
| Add missing constexpr specifier. |
| * testsuite/29_atomics/atomic_float/constinit.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/util/testsuite_allocator.h (tracker_allocator): |
| Initialize base class in copy constructor. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115399 |
| * include/tr2/dynamic_bitset (operator>>=): Remove redundant |
| call to _M_do_sanitize. |
| * include/tr2/dynamic_bitset.tcc (_M_do_left_shift): Zero out |
| low bits in words that should no longer be populated. |
| (_M_do_right_shift): Likewise for high bits. |
| * testsuite/tr2/dynamic_bitset/pr115399.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (basic_format_args): Remove default |
| constructor, as per LWG 4106. |
| * testsuite/std/format/arguments/args.cc: Check it isn't default |
| constructible. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114387 |
| * include/std/format (basic_format_context): Define copy |
| operations as deleted, as per LWG 4061. |
| * testsuite/std/format/context.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/any (any_cast(any*), any_cast(const any*)): Add |
| static assertion to reject void types, as per LWG 3305. |
| * testsuite/20_util/any/misc/lwg3305.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/algorithm: Define __glibcxx_want_ranges. |
| * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Check |
| feature test macro in C++20 mode. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115854 |
| * include/bits/stl_bvector.h (_Bvector_base): Convert allocator |
| to rebound type explicitly. |
| * testsuite/23_containers/vector/allocator/115854.cc: New test. |
| * testsuite/23_containers/vector/bool/allocator/115854.cc: New test. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/ranges_base.h (const_iterator_t): Change |
| preprocessor condition to use __glibcxx_ranges_as_const. |
| (const_sentinel_t, range_const_reference_t): Likewise. |
| (__access::__possibly_const_range, cbegin, cend, crbegin) |
| (crend, cdata): Likewise. |
| * include/bits/stl_iterator.h (iter_const_reference_t) |
| (basic_const_iterator, const_iterator, const_sentinel) |
| (make_const_iterator): Likewise. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-06 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/variant (_Variant_storage::_M_reset): Use |
| __unlikely__ form of attribute instead of unlikely. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-24 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116070 |
| * include/std/istream: Check feature test macro before using |
| is_class_v and is_same_v. |
| * include/std/ostream: Likewise. |
| |
| 2024-08-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-24 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/116070 |
| * include/bits/stl_bvector.h: Check feature test macro before |
| using is_default_constructible_v. |
| |
| 2024-08-01 Release Manager |
| |
| * GCC 14.2.0 released. |
| |
| 2024-07-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++23/print.cc (__open_terminal): Use [[maybe_unused]] on |
| parameter. |
| |
| 2024-07-23 Detlef Vollmann <dv@vollmann.ch> |
| |
| Backported from master: |
| 2024-07-23 Detlef Vollmann <dv@vollmann.ch> |
| |
| PR libstdc++/115482 |
| * src/c++23/print.cc (__open_terminal) [__AVR__]: Do not use |
| isatty. |
| |
| 2024-07-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113376 |
| * include/pstl/pstl_config.h: Use #if instead of #ifdef to test |
| the _PSTL_USAGE_WARNINGS macro. |
| |
| 2024-07-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115522 |
| * include/std/array (to_array): Workaround the fact that |
| std::is_trivial is not sufficient to check that a type is |
| trivially default constructible and assignable. |
| * testsuite/23_containers/array/creation/115522.cc: New test. |
| |
| 2024-07-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-07-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115807 |
| * include/c_compatibility/stdatomic.h (_Atomic): Ensure it |
| refers to std::atomic in the global namespace. |
| * testsuite/29_atomics/headers/stdatomic.h/115807.cc: New test. |
| |
| 2024-07-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115585 |
| * src/c++11/assert_fail.cc (__glibcxx_assert_fail): Add |
| definition for non-verbose builds. |
| |
| 2024-06-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115668 |
| * include/bits/chrono_io.h (formatter<duration<R,P, C>::format): |
| Do not use chrono::abs. |
| * testsuite/20_util/duration/io.cc: Check formatting a duration |
| with unsigned rep. |
| |
| 2024-06-27 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/faq.xml: Replace viewcvs links with cgit links. |
| * doc/xml/manual/allocator.xml: Likewise. |
| * doc/xml/manual/mt_allocator.xml: Likewise. |
| * doc/html/*: Regenerate. |
| |
| 2024-06-27 Alexandre Oliva <oliva@adacore.com> |
| |
| Backported from master: |
| 2024-06-27 Alexandre Oliva <oliva@adacore.com> |
| |
| PR libstdc++/115454 |
| * testsuite/experimental/simd/pr115454_find_last_set.cc: Defer |
| to check_vect_support_and_set_flags's default dg-do action. |
| |
| 2024-06-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/status_cxx1998.xml: Remove confusing "not in |
| any particular release" text. |
| * doc/xml/manual/status_cxx2011.xml: Likewise. |
| * doc/xml/manual/status_cxx2014.xml: Likewise. |
| * doc/xml/manual/status_cxx2017.xml: Likewise. |
| * doc/xml/manual/status_cxx2020.xml: Likewise. |
| * doc/xml/manual/status_cxx2023.xml: Likewise. |
| * doc/xml/manual/status_cxxtr1.xml: Likewise. |
| * doc/xml/manual/status_cxxtr24733.xml: Likewise. |
| * doc/html/manual/status.html: Regenerate. |
| |
| 2024-06-21 Matthias Kretz <m.kretz@gsi.de> |
| |
| Backported from master: |
| 2024-06-21 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/115575 |
| * testsuite/experimental/simd/pr115454_find_last_set.cc: Require |
| avx512f_runtime. Don't memcpy fixed_size masks. |
| |
| 2024-06-20 Matthias Kretz <m.kretz@gsi.de> |
| |
| Backported from master: |
| 2024-06-20 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/115454 |
| * include/experimental/bits/simd_x86.h (_S_not_equal_to): Use |
| neq comparison instead of bitwise negation after eq. |
| (_S_find_last_set): Clear unused high bits before computing |
| bit_width. |
| * testsuite/experimental/simd/pr115454_find_last_set.cc: New |
| test. |
| |
| 2024-06-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Fix declaration of |
| posix_memalign. |
| |
| 2024-06-10 Matthias Kretz <m.kretz@gsi.de> |
| |
| Backported from master: |
| 2024-06-04 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/115308 |
| * include/experimental/bits/simd.h (__int_for_sizeof): Remove |
| special cases for __clang__. |
| (_SimdWrapper): Change constructor overload set to allow |
| conversion from vector types with integral conversions via bit |
| reinterpretation. |
| |
| 2024-06-10 Matthias Kretz <m.kretz@gsi.de> |
| |
| Backported from master: |
| 2024-05-29 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/115247 |
| * include/experimental/bits/simd.h (__as_vector): Don't use |
| vector_size(8) on __i386__. |
| (__vec_shuffle): Never return MMX vectors, widen to 16 bytes |
| instead. |
| (concat): Fix padding calculation to pick up widening logic from |
| __as_vector. |
| |
| 2024-06-10 Matthias Kretz <m.kretz@gsi.de> |
| |
| Backported from master: |
| 2024-05-13 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/114958 |
| * include/experimental/bits/simd.h (__as_vector): Return scalar |
| simd as one-element vector. Return vector from single-vector |
| fixed_size simd. |
| (__vec_shuffle): New. |
| (__extract_part): Adjust return type signature. |
| (split): Use __extract_part for any split into non-fixed_size |
| simds. |
| (concat): If the return type stores a single vector, use |
| __vec_shuffle (which calls __builtin_shufflevector) to produce |
| the return value. |
| * include/experimental/bits/simd_builtin.h |
| (__shift_elements_right): Removed. |
| (__extract_part): Return single elements directly. Use |
| __vec_shuffle (which calls __builtin_shufflevector) to for all |
| non-trivial cases. |
| * include/experimental/bits/simd_fixed_size.h (__extract_part): |
| Return single elements directly. |
| * testsuite/experimental/simd/pr114958.cc: New test. |
| |
| 2024-06-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115335 |
| * include/std/span (span::at): Guard with feature test macro. |
| |
| 2024-06-04 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| Backported from master: |
| 2024-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| PR libstdc++/111641 |
| * src/libbacktrace/Makefile.am (AM_CFLAGS): Add -funwind-tables. |
| * src/libbacktrace/Makefile.in: Regenerate. |
| * testsuite/19_diagnostics/stacktrace/current.cc (dg-options): Add |
| -funwind-tables. |
| * testsuite/19_diagnostics/stacktrace/entry.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/hash.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/output.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise. |
| |
| 2024-06-03 François Dumont <frs.dumont@gmail.com> |
| |
| Backported from master: |
| 2024-06-03 François Dumont <frs.dumont@gmail.com> |
| |
| PR libstdc++/109849 |
| * include/bits/vector.tcc |
| (std::vector<>::_M_range_insert(iterator, _FwdIt, _FwdIt, |
| forward_iterator_tag))[__cplusplus < 201103L]: Add __builtin_unreachable |
| expression to tell the compiler that the allocated buffer is large enough to |
| receive current elements plus the elements of the range to insert. |
| |
| 2024-06-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-06-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115269 |
| * doc/xml/manual/using.xml: Replace link to gcc-4.3.2 docs. |
| Replace list of -std=... options with a single entry for -std. |
| * doc/html/manual/using.html: Regenerate. |
| |
| 2024-05-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114940 |
| * include/bits/version.def (generator): Depend on |
| __cpp_sized_deallocation. |
| * include/bits/version.h: Regenerate. |
| * include/std/stacktrace (_GLIBCXX_SIZED_DELETE): New macro. |
| (basic_stacktrace::_Impl::_M_deallocate): Use it. |
| |
| 2024-05-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115099 |
| * include/bits/std_thread.h: Declare formatter as friend of |
| thread::id. |
| * include/std/thread (operator<<): Convert non-void pointers to |
| void pointers for output. |
| (formatter): Add constraint that thread::native_handle_type is a |
| pointer or integer. |
| (formatter::format): Reimplement without basic_ostringstream. |
| * testsuite/30_threads/thread/id/output.cc: Check output |
| compiles before <sstream> has been included. |
| |
| 2024-05-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115119 |
| * include/bits/unicode.h (_Iterator::operator++(int)): Fix typo |
| in increment expression. |
| * testsuite/ext/unicode/grapheme_view.cc: Check post-increment |
| on view's iterator. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115015 |
| * src/c++23/print.cc (__open_terminal(streambuf*)) [!__cpp_rtti]: |
| Do not use dynamic_cast. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/115063 |
| * include/std/stacktrace (basic_stacktrace::max_size): Fix typo |
| in reference to _M_alloc member. |
| * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Check |
| max_size() compiles. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114891 |
| * include/std/generator: Check feature test macro before using |
| is_pointer_interconvertible_v. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/util/testsuite_abi.cc: Update latest versions to |
| new versions that should be used in future. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode.h (_Unicode_view::_M_read_utf8): Ensure |
| count of characters consumed is correct when the end of the |
| input is reached unexpectedly. |
| * testsuite/ext/unicode/view.cc: Test incomplete UTF-8 |
| sequences. |
| |
| 2024-05-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-05-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114866 |
| * include/bits/out_ptr.h [!_GLIBCXX_HOSTED]: Don't refer to |
| shared_ptr, __shared_ptr or __is_shred_ptr. |
| * testsuite/20_util/headers/memory/114866.cc: New test. |
| |
| 2024-05-07 Release Manager |
| |
| * GCC 14.1.0 released. |
| |
| 2024-05-03 Andreas Schwab <schwab@linux-m68k.org> |
| |
| * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update. |
| |
| 2024-04-30 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2024-04-30 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114863 |
| * include/std/format (__formatter_fp::format): Only use |
| _M_localized for finite values. |
| * testsuite/std/format/functions/format.cc: Check localized |
| formatting of NaN and initiny. |
| |
| 2024-04-29 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. |
| |
| 2024-04-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| Backported from master: |
| 2024-04-29 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. |
| |
| 2024-04-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/html/manual/status.html: Regenerate. |
| * doc/xml/manual/status_cxx1998.xml: Replace references to |
| mainline GCC. |
| * doc/xml/manual/status_cxx2011.xml: Likewise. |
| * doc/xml/manual/status_cxx2014.xml: Likewise. |
| * doc/xml/manual/status_cxx2017.xml: Likewise. |
| * doc/xml/manual/status_cxx2020.xml: Likewise. |
| * doc/xml/manual/status_cxx2023.xml: Likewise. |
| * doc/xml/manual/status_cxxtr1.xml: Likewise. |
| * doc/xml/manual/status_cxxtr24733.xml: Likewise. |
| |
| 2024-04-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * scripts/run_doxygen: Rename man pages for nested types. |
| |
| 2024-04-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/chrono (tzdb_list): Fix typo in Doxygen comment. |
| |
| 2024-04-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * scripts/run_doxygen: Adjust sed pattern to match '\fR' for |
| new man output that Doxygen 1.10 generates. |
| |
| 2024-04-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/doxygen/stdheader.cc (init_map): Add missing headers. |
| * doc/doxygen/user.cfg.in (EXCLUDE): Exclude generated files for |
| std::format and std::text_encoding. |
| |
| 2024-04-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/variant: Add comment to #include. |
| |
| 2024-04-22 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/114803 |
| * include/experimental/bits/simd_builtin.h |
| (_SimdBase2::operator __vector_type_t): There is no __builtin() |
| function in _SimdWrapper, instead use its conversion operator. |
| * testsuite/experimental/simd/pr114803_vecbuiltin_cvt.cc: New |
| test. |
| |
| 2024-04-22 Matthias Kretz <m.kretz@gsi.de> |
| |
| * include/experimental/bits/simd.h: Ignore -Wnarrowing for |
| arm_neon.h. |
| (__int_for_sizeof): Replace tautological compare with checking |
| for invalid template parameter value. |
| * include/experimental/bits/simd_builtin.h (__extract_part): |
| Remove tautological compare by combining two static_assert. |
| |
| 2024-04-22 Jakub Jelinek <jakub@redhat.com> |
| |
| * testsuite/17_intro/names.cc (d, f): Undefine on s390*-linux*. |
| * testsuite/17_intro/headers/c++1998/all_attributes.cc (packed): Don't |
| define on s390. |
| * testsuite/17_intro/headers/c++2011/all_attributes.cc (packed): |
| Likewise. |
| * testsuite/17_intro/headers/c++2014/all_attributes.cc (packed): |
| Likewise. |
| * testsuite/17_intro/headers/c++2017/all_attributes.cc (packed): |
| Likewise. |
| * testsuite/17_intro/headers/c++2020/all_attributes.cc (packed): |
| Likewise. |
| |
| 2024-04-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/refwrap.h (operator<=>): Simplify constraints. |
| |
| 2024-04-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114770 |
| * src/c++20/tzdb.cc (do_locate_zone): Support links that have |
| another link as their target. |
| * testsuite/std/time/tzdb/1.cc: Check that all zones and links |
| can be found by locate_zone. |
| * testsuite/std/time/tzdb/links.cc: New test. |
| |
| 2024-04-18 Alexandre Oliva <oliva@adacore.com> |
| |
| * testsuite/29_atomics/atomic/compare_exchange_padding.cc: |
| Disable SRA. |
| |
| 2024-04-18 Alexandre Oliva <oliva@adacore.com> |
| |
| * testsuite/20_util/from_chars/8.cc: Skip float128_t testing |
| on aarch64-vxworks. |
| * testsuite/20_util/to_chars/float128_c++23.cc: Xfail run on |
| aarch64-vxworks. |
| |
| 2024-04-18 Alexandre Oliva <oliva@adacore.com> |
| |
| * src/c++20/tzdb.cc (__gnu_cxx::zoneinfo_dir_override): Define |
| on VxWorks non-RTP. |
| |
| 2024-04-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ostream (println(ostream&)): Define new overload. |
| * include/std/print (println(FILE*), println()): Likewise. |
| * testsuite/27_io/basic_ostream/print/2.cc: New test. |
| * testsuite/27_io/print/1.cc: Remove unused header. |
| * testsuite/27_io/print/3.cc: New test. |
| |
| 2024-04-17 Matthias Kretz <m.kretz@gsi.de> |
| |
| * include/experimental/bits/numeric_traits.h: Add include guard. |
| |
| 2024-04-17 Matthias Kretz <m.kretz@gsi.de> |
| |
| PR libstdc++/114750 |
| * include/experimental/bits/simd_builtin.h |
| (_SimdImplBuiltin::_S_load, _S_store): Fall back to copying |
| scalars if the memory type cannot be vectorized for the target. |
| |
| 2024-04-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| * config/locale/dragonfly/numeric_members.cc: Fix typos in |
| comments. |
| * config/locale/gnu/numeric_members.cc: Likewise. |
| |
| 2024-04-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/abi.xml: Replace "<next>" with "14.1.0". |
| * doc/html/manual/abi.html: Regenerate. |
| |
| 2024-04-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/refwrap.h (reference_wrapper): Add comparison |
| operators as proposed by P2944R3. |
| * include/bits/version.def (reference_wrapper): Define. |
| * include/bits/version.h: Regenerate. |
| * include/std/functional: Enable feature test macro. |
| * testsuite/20_util/reference_wrapper/compare.cc: New test. |
| |
| 2024-04-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113386 |
| * include/bits/stl_pair.h (operator==, operator<=>): Support |
| heterogeneous comparisons, as per LWG 3865. |
| * testsuite/20_util/pair/comparison_operators/lwg3865.cc: New |
| test. |
| |
| 2024-04-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/93672 |
| * src/c++98/istream.cc (istream::ignore(streamsize, int_type)): |
| Treat all negative delimiter values as eof(). |
| * testsuite/27_io/basic_istream/ignore/char/93672.cc: New test. |
| * testsuite/27_io/basic_istream/ignore/wchar_t/93672.cc: New |
| test. |
| |
| 2024-04-15 Andreas Schwab <schwab@suse.de> |
| |
| * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update. |
| |
| 2024-04-13 H.J. Lu <hjl.tools@gmail.com> |
| |
| * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: |
| Updated. |
| |
| 2024-04-11 Jakub Jelinek <jakub@redhat.com> |
| |
| * doc/xml/manual/abi.xml: Add latest library versions. |
| * doc/html/manual/abi.html: Regenerate. |
| |
| 2024-04-11 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/i486-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update. |
| |
| 2024-04-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114692 |
| * config/abi/pre/gnu.ver (GLIBCXX_3.4.32): Move new exports for |
| __basic_file::native_handle to ... |
| (GLIBCXX_3.4.33): ... here. Adjust to not match wchar_t |
| specialization, which isn't used. |
| * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.33 and update |
| latest version check. |
| |
| 2024-04-11 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/i486-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/powerpc64le-linux-gnu/baseline_symbols.txt: Update. |
| * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update. |
| |
| 2024-04-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/27_io/manipulators/extended/get_time/char/2.cc: |
| Adjust input string so that it matches %a with or without a |
| trailing period. |
| * testsuite/std/time/year_month_day/io.cc: Adjust expected |
| format for %x in the fr_FR locale. |
| |
| 2024-04-10 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++17/fs_ops.cc (remove_all) [__FreeBSD__ || __DragonFly__]: |
| Check for EMLINK as well as ELOOP. |
| [__NetBSD__]: Check for EFTYPE as well as ELOOP. |
| |
| 2024-04-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114633 |
| * include/bits/chrono_io.h (_Parser::operator()) <'S'>: Use |
| stream extraction if std::from_chars is not available. |
| |
| 2024-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114519 |
| * include/bits/unicode.h (_Utf8_view) [!__cpp_char8_t]: Define |
| using char instead of char8_t. |
| * testsuite/ext/unicode/view.cc: Use u8""sv literals to create |
| string views, instead of std::u8string_view. |
| |
| 2024-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/20_util/integer_comparisons/equal_neg.cc: Use |
| no-opts selector for errors that depend on -fchar8_t. |
| * testsuite/20_util/integer_comparisons/greater_equal_neg.cc: |
| Likewise. |
| * testsuite/20_util/integer_comparisons/greater_neg.cc: |
| Likewise. |
| * testsuite/20_util/integer_comparisons/in_range_neg.cc: |
| Likewise. |
| * testsuite/20_util/integer_comparisons/less_equal_neg.cc: |
| Likewise. |
| * testsuite/20_util/integer_comparisons/less_neg.cc: Likewise. |
| * testsuite/20_util/integer_comparisons/not_equal_neg.cc: |
| Likewise. |
| * testsuite/21_strings/basic_string/hash/hash_char8_t.cc: Skip |
| if -fno-char8_t is used. |
| * testsuite/21_strings/headers/cuchar/functions_std_cxx20.cc: |
| Likewise. |
| * testsuite/27_io/basic_ostream/inserters_character/char/deleted.cc: |
| Likewise. |
| * testsuite/27_io/basic_ostream/inserters_character/wchar_t/deleted.cc: |
| Likewise. |
| * testsuite/27_io/filesystem/path/factory/u8path-depr.cc: Use |
| char for u8 literal if char8_t is not available. |
| * testsuite/27_io/headers/iosfwd/synopsis.cc: Check |
| __cpp_char8_t. |
| * testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise. |
| * testsuite/29_atomics/headers/atomic/types_std_c++20_neg.cc: |
| Remove check for _GLIBCXX_USE_CHAR8_T. |
| |
| 2024-04-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/20_util/from_chars/1_neg.cc: Add char8_t cases, |
| using a struct of that name if -fno-char8_t is active. |
| * testsuite/20_util/from_chars/1_c++20_neg.cc: Removed. |
| |
| 2024-04-03 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/104606 |
| * include/std/optional (operator<=>(const optional<T>&, const U&)): |
| Reverse order of three_way_comparable_with template arguments. |
| * testsuite/20_util/optional/relops/104606.cc: New test. |
| |
| 2024-04-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114519 |
| * include/bits/unicode.h (_Utf8_view): Guard with check for |
| char8_t being enabled. |
| (__literal_encoding_is_unicode): Guard use of char8_t with check |
| for it being enabled. |
| * testsuite/std/format/functions/114519.cc: New test. |
| |
| 2024-04-02 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/ranges (ranges::__detail::_Empty): Rename to ... |
| (ranges::__detail::_Absent): ... this. Turn into a template |
| parameterized by the absent type _Tp and discriminator _Disc. |
| (ranges::__detail::__maybe_present_t): Add an optional |
| discriminator parameter. |
| (slide_view::_M_cached_begin): Pass a discriminator argument to |
| __maybe_present_t. |
| (slide_view::_M_cached_end): Likewise. |
| * testsuite/std/ranges/adaptors/sizeof.cc: Verify the size of |
| slide_view<V> is 3 instead 4 pointers. |
| |
| 2024-04-02 Jakub Jelinek <jakub@redhat.com> |
| |
| * acinclude.m4: Fix duplicated words; file file -> file can. |
| * configure.host: Fix duplicated words; the the -> the. |
| |
| 2024-03-29 Arsen Arsenović <arsen@aarsen.me> |
| |
| * testsuite/24_iterators/range_generators/01.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/02.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/copy.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/except.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/subrange.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/synopsis.cc: Drop GCC |
| Runtime Library Exception. |
| * testsuite/24_iterators/range_generators/iter_deref_return.cc: |
| Drop GCC Runtime Library Exception from the "You should have |
| received a copy" paragraph. |
| |
| 2024-03-27 Matthias Kretz <m.kretz@gsi.de> |
| |
| * include/experimental/bits/simd_x86.h (_S_masked_unary): |
| Cast inputs < 16 bytes to 16 byte vectors before calling the |
| right subtraction builtin. Before returning, truncate to the |
| return vector type. |
| |
| 2024-03-27 Matthias Kretz <m.kretz@gsi.de> |
| |
| * include/experimental/bits/simd_x86.h (_S_masked_unary): Call |
| the 4- and 8-byte variants of __builtin_ia32_subp[ds] without |
| rounding direction argument. |
| |
| 2024-03-27 Srinivas Yadav Singanaboina <vasu.srinivasvasu.14@gmail.com> |
| |
| * include/Makefile.am: Add simd_sve.h. |
| * include/Makefile.in: Add simd_sve.h. |
| * include/experimental/bits/simd.h: Add new SveAbi. |
| * include/experimental/bits/simd_builtin.h: Use |
| __no_sve_deduce_t to support existing Neon Abi. |
| * include/experimental/bits/simd_converter.h: Convert |
| sequentially when sve is available. |
| * include/experimental/bits/simd_detail.h: Define sve |
| specific macro. |
| * include/experimental/bits/simd_math.h: Fallback frexp |
| to execute sequntially when sve is available, to handle |
| fixed_size_simd return type that always uses sve. |
| * include/experimental/simd: Include bits/simd_sve.h. |
| * testsuite/experimental/simd/tests/bits/main.h: Enable |
| testing for sve128, sve256, sve512. |
| * include/experimental/bits/simd_sve.h: New file. |
| |
| 2024-03-26 Arsen Arsenović <arsen@aarsen.me> |
| |
| * include/std/generator (generator::_Iterator::operator*): Fix |
| return type. |
| * testsuite/24_iterators/range_generators/iter_deref_return.cc: |
| New test. |
| |
| 2024-03-26 Arsen Arsenović <arsen@aarsen.me> |
| |
| * include/std/generator: Fix _V badname. |
| |
| 2024-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/19_diagnostics/stacktrace/current.cc: Check for |
| __cpp_lib_stacktrace instead of check for stacktrace ET. |
| * testsuite/19_diagnostics/stacktrace/entry.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/hash.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/output.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise. |
| * testsuite/19_diagnostics/stacktrace/version.cc: Likewise. |
| * testsuite/23_containers/vector/debug/assign4_backtrace_neg.cc: |
| Likewise. |
| * testsuite/lib/libstdc++.exp (check_effective_target_stacktrace): |
| Remove. |
| |
| 2024-03-26 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/lib/dg-options.exp (dg-require-cpp-feature-test): |
| New proc. |
| * testsuite/lib/libstdc++.exp (check_v3_target_cpp_feature_test): |
| New proc. |
| * testsuite/std/text_encoding/cons.cc: Use new directive to skip |
| the test if the __cpp_lib_text_encoding feature test macro is |
| not defined. |
| * testsuite/std/text_encoding/requirements.cc: Likewise. |
| |
| 2024-03-25 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/std/text_encoding/requirements.cc: #undef the |
| correct macro. |
| |
| 2024-03-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (formatter): Disable specializations that |
| would allow sequences of narrow characters to be formatted as |
| wchar_t without conversion, as per LWG 3944. |
| * testsuite/std/format/formatter/lwg3944.cc: New test. |
| |
| 2024-03-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/utility.h (__is_in_place_index_v): New variable |
| template. |
| * include/std/variant (__not_in_place_tag): Define in terms of |
| variable templates not a class template. |
| |
| 2024-03-23 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114400 |
| * include/std/string_view (operator==): Use std::type_identity_t |
| in C++20 instead of our own __type_identity_t. |
| |
| 2024-03-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114401 |
| * include/bits/hashtable.h (_Hashtable::_M_reinsert_node): Call |
| release() on node handle instead of just zeroing its pointer. |
| (_Hashtable::_M_reinsert_node_multi): Likewise. |
| (_Hashtable::_M_merge_unique): Likewise. |
| (_Hashtable::_M_merge_multi): Likewise. |
| * include/bits/node_handle.h (_Node_handle_common::release()): |
| New member function. |
| (_Node_handle_common::_Optional_alloc::_M_empty): Remove |
| unnecessary union member. |
| (_Node_handle_common): Declare _Hashtable as a friend. |
| * include/bits/stl_tree.h (_Rb_tree::_M_reinsert_node_unique): |
| Call release() on node handle instead of just zeroing its |
| pointer. |
| (_Rb_tree::_M_reinsert_node_equal): Likewise. |
| (_Rb_tree::_M_reinsert_node_hint_unique): Likewise. |
| (_Rb_tree::_M_reinsert_node_hint_equal): Likewise. |
| * testsuite/23_containers/multiset/modifiers/114401.cc: New test. |
| * testsuite/23_containers/set/modifiers/114401.cc: New test. |
| * testsuite/23_containers/unordered_multiset/modifiers/114401.cc: New test. |
| * testsuite/23_containers/unordered_set/modifiers/114401.cc: New test. |
| |
| 2024-03-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113841 |
| * include/bits/allocator.h (allocator<cv T>): Add default |
| constructor to partial specializations for cv-qualified types. |
| * include/bits/stl_vector.h (_Vector_impl::_Vector_impl()): |
| Constrain so that it's only present if the allocator is default |
| constructible. |
| * include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl()): |
| Likewise. |
| * testsuite/23_containers/vector/cons/113841.cc: New test. |
| |
| 2024-03-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_construct.h (destroy_at, construct_at): Guard |
| with feature test macros instead of just __cplusplus. |
| |
| 2024-03-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/version.def (generator, tuple_like): Move earlier |
| in the file. |
| * include/bits/version.h: Regenerate. |
| |
| 2024-03-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114394 |
| * include/std/functional (bind): Use __invoke_result_t instead |
| of result_of::type. |
| * include/std/type_traits (__invoke_result_t): New alias |
| template. |
| * testsuite/20_util/bind/ref_neg.cc: Adjust prune pattern. |
| |
| 2024-03-20 François Dumont <fdumont@gcc.gnu.org> |
| |
| * include/bits/version.def (null_iterators): Remove extra_cond. |
| * include/bits/version.h: Regenerate. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114359 |
| * include/bits/random.tcc (binomial_distribution::param_type): |
| Ensure arithmetic is done as type double. |
| * testsuite/26_numerics/random/binomial_distribution/114359.cc: New test. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/101228 |
| * include/pstl/parallel_backend_tbb.h (TBB_SUPPRESS_DEPRECATED_MESSAGES): |
| Define before including <tbb/task.h> then undef afterwards. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/Makefile.am [MAINTAINER_MODE]: Add target to |
| automatically update <bits/version.h>. |
| * include/Makefile.in: Regenerate. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/build_hacking.xml: Document generated files. |
| Update list of convenience libraries and sub-directories under |
| the src directory. |
| * doc/html/*: Regenerate. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/text_encoding-data.h: Regenerate. |
| * include/bits/unicode-data.h: Regenerate. |
| * scripts/gen_text_encoding_data.py: Fix header of generated |
| file to name the correct script. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/util/pstl/test_utils.h: Fix typos in comments. |
| |
| 2024-03-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114367 |
| * include/bits/stl_bvector.h (_M_allocate): Use allocator's |
| construct function to begin lifetime of words. |
| |
| 2024-03-19 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * testsuite/lib/dg-options.exp (atomic_link_flags): Emit a -B |
| option for the path to the uninstalled libatomic. |
| |
| 2024-03-19 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * testsuite/lib/libstdc++.exp (v3_target_compile): Instead of |
| /dev/null, use a temporary file for test executables on Darwin. |
| |
| 2024-03-18 François Dumont <fdumont@gcc.gnu.org> |
| |
| * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_can_advance): |
| Accept 0 offset advance on value-initialized iterator. |
| * testsuite/23_containers/vector/debug/n3644.cc: New test case. |
| |
| 2024-03-18 François Dumont <fdumont@gcc.gnu.org> |
| |
| * include/debug/safe_local_iterator.tcc |
| (_Safe_local_iterator::_M_valid_range): Add _M_value_initialized and |
| _M_singular checks. |
| * testsuite/23_containers/unordered_set/debug/114316.cc: New test case. |
| |
| 2024-03-17 François Dumont <fdumont@gcc.gnu.org> |
| |
| PR libstdc++/114316 |
| * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): |
| First check if both iterators are value-initialized before checking if |
| singular. |
| * testsuite/23_containers/set/debug/114316.cc: New test case. |
| * testsuite/23_containers/vector/debug/114316.cc: New test case. |
| |
| 2024-03-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114325 |
| * include/std/format (_Scanner::_M_scan): Pass correct length to |
| __to_chars_10_impl. |
| * testsuite/std/format/functions/format.cc: Check negative |
| integers with empty format-spec. |
| |
| 2024-03-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_algo.h (find_end, all_of, none_of, any_of) |
| (find_if_not, is_partitioned, partition_point, remove) |
| (remove_if, unique, lower_bound, upper_bound, equal_range) |
| (binary_search, includes, is_sorted, is_sorted_until, minmax) |
| (minmax_element, is_permutation, clamp, find_if, find_first_of) |
| (adjacent_find, count, count_if, search, search_n, min_element) |
| (max_element): Add nodiscard attribute. |
| * include/bits/stl_algobase.h (min, max, lower_bound, equal) |
| (lexicographical_compare, lexicographical_compare_three_way) |
| (mismatch): Likewise. |
| * include/bits/stl_heap.h (is_heap, is_heap_until): Likewise. |
| * testsuite/25_algorithms/equal/debug/1_neg.cc: Add dg-warning. |
| * testsuite/25_algorithms/equal/debug/2_neg.cc: Likewise. |
| * testsuite/25_algorithms/equal/debug/3_neg.cc: Likewise. |
| * testsuite/25_algorithms/find_first_of/concept_check_1.cc: |
| Likewise. |
| * testsuite/25_algorithms/is_permutation/2.cc: Likewise. |
| * testsuite/25_algorithms/lexicographical_compare/71545.cc: |
| Likewise. |
| * testsuite/25_algorithms/lower_bound/33613.cc: Likewise. |
| * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: |
| Likewise. |
| * testsuite/25_algorithms/lower_bound/debug/partitioned_neg.cc: |
| Likewise. |
| * testsuite/25_algorithms/lower_bound/debug/partitioned_pred_neg.cc: |
| Likewise. |
| * testsuite/25_algorithms/minmax/3.cc: Likewise. |
| * testsuite/25_algorithms/search/78346.cc: Likewise. |
| * testsuite/25_algorithms/search_n/58358.cc: Likewise. |
| * testsuite/25_algorithms/unique/1.cc: Likewise. |
| * testsuite/25_algorithms/unique/11480.cc: Likewise. |
| * testsuite/25_algorithms/upper_bound/33613.cc: Likewise. |
| * testsuite/25_algorithms/upper_bound/debug/partitioned_neg.cc: |
| Likewise. |
| * testsuite/25_algorithms/upper_bound/debug/partitioned_pred_neg.cc: |
| Likewise. |
| * testsuite/ext/concept_checks.cc: Likewise. |
| * testsuite/ext/is_heap/47709.cc: Likewise. |
| * testsuite/ext/is_sorted/cxx0x.cc: Likewise. |
| |
| 2024-03-14 xndcn <xndchn@gmail.com> |
| |
| * include/bits/atomic_base.h (__atomic_float::__atomic_float(Fp)): |
| Clear padding. |
| * testsuite/29_atomics/atomic_float/compare_exchange_padding.cc: |
| New test. |
| |
| 2024-03-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/66146 |
| * doc/xml/manual/status_cxx2011.xml: Remove mention of Linux in |
| note about std::call_once. |
| * doc/xml/manual/status_cxx2014.xml: Likewise. |
| * doc/xml/manual/status_cxx2017.xml: Likewise. |
| * doc/html/manual/status.html: Regenerate. |
| |
| 2024-03-14 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/status_cxx2023.xml: Update C++23 status table. |
| * doc/html/manual/status.html: Regenerate. |
| * include/bits/version.def: Fix typo in comment. |
| |
| 2024-03-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/libstdc++-prettyprinters/cxx11.cc: Move custom_cat |
| to namespace scope. |
| |
| 2024-03-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/debug.xml: Improve docs on debug builds and |
| using ASan. Mention _GLIBCXX_ASSERTIONS. Reorder sections to put |
| the most relevant ones first. |
| * doc/xml/manual/using.xml: Add comma. |
| * doc/html/*: Regenerate. |
| |
| 2024-03-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/debug.xml: Document that concept checking might |
| be removed in future. |
| * doc/xml/manual/extensions.xml: Likewise. |
| |
| 2024-03-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114240 |
| * include/bits/chrono_io.h (_Parser::operator()): Assume |
| hours(0) for a time_point, so that a time is not required |
| to be present. |
| * testsuite/std/time/parse/114240.cc: New test. |
| |
| 2024-03-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114279 |
| * include/bits/chrono_io.h (_Parser::_M_is_leap_second): New |
| data member. |
| (_Parser::_M_reserved): Reserve padding bits for future use. |
| (_Parser::operator()): Set _M_is_leap_second if %S reads 60s. |
| (from_stream): Only allow _M_is_leap_second for utc_time and |
| local_time. Adjust arithmetic for utc_time so that leap seconds |
| are preserved. Use time_point_cast to convert to a possibly |
| lower-precision result type. |
| * testsuite/std/time/parse.cc: Move to ... |
| * testsuite/std/time/parse/parse.cc: ... here. |
| * testsuite/std/time/parse/114279.cc: New test. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/chrono_io.h (_Parser::operator()): Use |
| std::from_chars to parse fractional seconds. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114244 |
| * include/bits/chrono_io.h (_Parser::operator()): Remove |
| redundant uses of duration_cast. Use chrono::round to convert |
| long double value to durations with integer representations. |
| Check represenation type when deciding whether to skip parsing |
| fractional seconds. |
| * testsuite/20_util/duration/114244.cc: New test. |
| * testsuite/20_util/duration/io.cc: Check that a floating-point |
| duration with ratio<1> precision can be parsed. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114103 |
| * include/bits/version.def (atomic_lock_free_type_aliases): Add |
| extra_cond to check for at least one always-lock-free type. |
| * include/bits/version.h: Regenerate. |
| * include/std/atomic (atomic_signed_lock_free) |
| (atomic_unsigned_lock_free): Only use always-lock-free types. |
| * src/c++20/tzdb.cc (time_zone::_Impl::RulesCounter): Don't use |
| atomic counter if lock-free aliases aren't available. |
| * testsuite/29_atomics/atomic/lock_free_aliases.cc: XFAIL for |
| targets without lock-free word-size compare_exchange. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/chrono (__get_leap_second_info): Update expiry |
| time for hardcoded list of leap seconds. |
| * testsuite/std/time/tzdb/leap_seconds.cc: Update comment. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/23_containers/deque/allocator/default_init.cc: Use |
| std::memset instead of __builtin_memset. |
| * testsuite/23_containers/forward_list/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/list/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/map/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/set/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/unordered_map/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/unordered_set/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/vector/allocator/default_init.cc: |
| Likewise. |
| * testsuite/23_containers/vector/bool/allocator/default_init.cc: |
| Likewise. |
| * testsuite/29_atomics/atomic/compare_exchange_padding.cc: |
| Likewise. |
| * testsuite/util/atomic/wait_notify_util.h: Likewise. |
| |
| 2024-03-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (_Arg_store::_S_make_elt): Add two |
| static_assert checks to give more user-friendly error messages. |
| * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune another |
| form of "in requirements with" note. |
| * testsuite/std/format/arguments/args_neg.cc: Check for |
| user-friendly diagnostics for non-formattable types. |
| * testsuite/std/format/string_neg.cc: Likewise. |
| |
| 2024-03-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114147 |
| * include/std/tuple (tuple::tuple(allocator_arg_t, const Alloc&)): |
| Add missing overload of allocator-extended default constructor. |
| (tuple<T1,T2>::tuple(allocator_arg_t, const Alloc&)): Likewise. |
| * testsuite/20_util/tuple/cons/114147.cc: New test. |
| |
| 2024-02-29 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (basic_format_arg::handle::__maybe_const_t): |
| Fix condition to check if const type is formattable. |
| (basic_format_arg::handle::handle(T&)): Remove redundant |
| static_assert. |
| * testsuite/std/format/formatter/basic.cc: New test. |
| |
| 2024-02-29 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113960 |
| * include/bits/stl_algobase.h (__is_byte_iter): Replace with ... |
| (__memcmp_ordered_with): New concept. |
| (lexicographical_compare_three_way): Use __memcmp_ordered_with |
| instead of __is_byte_iter. Use correct length for memcmp. |
| * testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc: |
| New test. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/114152 |
| * include/experimental/scope (scope_exit scope_fail): Make |
| destructor unconditionally noexcept. |
| (scope_sucess): Fix noexcept-specifier. |
| * testsuite/experimental/scopeguard/114152.cc: New test. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/appendix_contributing.xml: Change URLs to use |
| https. |
| * doc/html/manual/*: Regenerate. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/appendix_contributing.xml: Replace outdated |
| info on ChangeLog entries. |
| * doc/html/manual/appendix_contributing.html: Regenerate. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/stl_bvector.h (vector<bool, A>::at): Add |
| nodiscard. |
| * include/bits/stl_vector.h (vector<T, A>::at): Likewise. |
| (operator==, operator<=>, operator<, operator!=, operator>) |
| (operator<=, operator>=): Likewise. |
| * include/debug/vector (operator==, operator<=>, operator<) |
| (operator!=, operator>, operator<=, operator>=): Likewise. |
| * testsuite/23_containers/vector/nodiscard.cc: New test. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/atomic_base.h (operator|, operator&): Add |
| noexcept. |
| * include/bits/fs_fwd.h (operator&, operator|, operator^) |
| (operator~): Add nodiscard to overloads for copy_options, perms, |
| perm_options, and directory_options. |
| * include/bits/ios_base.h (operator&, operator|, operator^) |
| (operator~): Add nodiscard and noexcept to overloads for |
| _Ios_Fmtflags, _Ios_Openmode, and _Ios_Iostate. |
| (operator|=, operator&=, operator^=): Add constexpr for C++14. |
| * include/bits/regex_constants.h (operator&, operator|, operator^) |
| (operator~): Add nodiscard and noexcept to overloads for |
| syntax_option_type and match_flag_type. |
| (operator|=, operator&=, operator^=): Add noexcept. |
| * include/std/charconv (operator&, operator|, operator^) |
| (operator~): Add nodiscard to overloads for chars_format. |
| * include/std/future (operator&, operator|, operator^) |
| (operator~): Add nodiscard for overloads for launch. |
| (operator&=, operator|=, operator^=): Add constexpr for C++14. |
| * include/experimental/bits/fs_fwd.h (operator&, operator|) |
| (operator^, operator~): Add nodiscard to overloads for |
| copy_options, perms, and directory_options. |
| * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: |
| Add dg-warning for nodiscard warnings. |
| * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: |
| Likewise. |
| * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: |
| Likewise. |
| * testsuite/27_io/filesystem/operations/bitmask_types.cc: |
| New test. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/27_io/basic_ostream/print/1.cc: Check error |
| handling. |
| * testsuite/27_io/print/1.cc: Likewise. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/ostream (vprint_unicode) [__CYGWIN__]: Use POSIX |
| code path for Cygwin instead of Windows. |
| * include/std/print (vprint_unicode) [__CYGWIN__]: Likewise. |
| * testsuite/27_io/basic_ostream/print/1.cc: Only add -lstdc++exp |
| for *-*-mingw* targets. |
| * testsuite/27_io/print/1.cc: Likewise. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/alloc_traits.h: Include <bits/stl_iterator.h> for |
| __make_move_if_noexcept_iterator. |
| |
| 2024-02-28 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/stacktrace: Add nodiscard attribute to all |
| functions without side effects. |
| |
| 2024-02-20 François Dumont <fdumont@gcc.gnu.org> |
| |
| * include/bits/stl_algobase.h (std::__niter_wrap): Add a call to |
| std::__niter_base on res iterator. |
| |
| 2024-02-19 Iain Sandoe <iain@sandoe.co.uk> |
| Jonathan Wakely <jwakely@redhat.com> |
| |
| PR target/112397 |
| * configure: Regenerate. |
| * configure.ac: Detect if we are building for Darwin. |
| * libsupc++/Makefile.am: If we are building for Darwin, then |
| suppress hot/cold partitioning for the array allocators. |
| * libsupc++/Makefile.in: Regenerated. |
| |
| 2024-02-17 François Dumont <fdumont@gcc.gnu.org> |
| |
| * include/bits/stl_algobase.h (std::__niter_base): Redefine the overload |
| definitions for __gnu_debug::_Safe_iterator. |
| * include/debug/safe_iterator.tcc (std::__niter_base): Adapt declarations. |
| |
| 2024-02-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/87744 |
| PR libstdc++/113961 |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error |
| line number. |
| |
| 2024-02-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/87744 |
| PR libstdc++/113931 |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error |
| line number. |
| |
| 2024-02-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/debug_mode.xml: Update docs for backtraces. |
| * doc/html/manual/debug_mode_using.html: Regenerate. |
| |
| 2024-02-16 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/test.xml: Fix spelling of <envar> elements. |
| * doc/html/manual/test.html: Regenerate. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113806 |
| * include/std/bitset (bitset::operator>>=): Remove redundant |
| call to _M_do_sanitize. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113807 |
| * include/std/bitset (bitset::set()): Use memset instead of a |
| loop over the individual words. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113811 |
| * include/bits/stl_algo.h (__rotate): Use unsigned values for |
| division. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/99117 |
| * include/std/valarray (valarray::operator=(const _Expr&)): |
| Use loop to copy instead of __valarray_copy with _Array. |
| * testsuite/26_numerics/valarray/99117.cc: New test. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++20/tzdata.zi: Import new file from 2024a release. |
| * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds) |
| Update expiry date for leap seconds list. |
| |
| 2024-02-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/87744 |
| * include/bits/random.h [!__SIZEOF_INT128__] (_Select_uint_least_t): |
| Define specialization for 64-bit generators with |
| non-power-of-two modulus and large constants. |
| (__mod): Use if constexpr unconditionally. |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error |
| line number. |
| * testsuite/26_numerics/random/linear_congruential_engine/87744.cc: |
| New test. |
| |
| 2024-02-14 Gerald Pfeifer <gerald@pfeifer.com> |
| |
| * doc/xml/manual/status_cxx2023.xml: Fix C++ item p2442 to be |
| version 1. |
| * doc/html/manual/status.html: Regenerate. |
| |
| 2024-02-12 Paul Keir <paul.keir@uws.ac.uk> |
| |
| PR libstdc++/113294 |
| * include/bits/basic_string.h (basic_string::operator=): Use |
| _M_use_local_data() instead of _M_local_buf on the moved-from |
| string. |
| * testsuite/21_strings/basic_string/modifiers/constexpr.cc |
| (test_move): New test. |
| |
| 2024-02-09 Ken Matsui <kmatsui@gcc.gnu.org> |
| |
| * include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_IS_SAME): |
| Removed. |
| * include/std/type_traits (is_same): Use |
| _GLIBCXX_USE_BUILTIN_TRAIT instead of |
| _GLIBCXX_HAVE_BUILTIN_IS_SAME. |
| (is_same_v): Likewise. |
| |
| 2024-02-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/shared_ptr_atomic.h: Fix typo in comment. |
| |
| 2024-02-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/100147 |
| * include/bits/gslice.h (operator=): Add comment about lack of |
| self-assignment check. |
| |
| 2024-02-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/tr2/type_traits (bases, direct_bases): Use |
| __has_builtin to check if required built-ins are supported. |
| |
| 2024-02-07 Patrick Palka <ppalka@redhat.com> |
| |
| PR testsuite/113710 |
| PR c++/113814 |
| * include/bits/stl_pair.h (tuple_element): Add forward |
| declaration of the partial specialization for tuple. |
| |
| 2024-02-06 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> |
| |
| * testsuite/lib/libstdc++.exp: Use "nul" for Windows, "/dev/null" |
| for other environments. |
| |
| 2024-02-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (__format::_Spec::_M_reserved): Define new |
| bit-field members to reserve padding bits for future extensions. |
| |
| 2024-02-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/experimental/Makefile.am: Use libstdc++fsconvenience.a |
| instead of libstdc++fs.a. |
| * src/experimental/Makefile.in: Regenerate. |
| * src/filesystem/Makefile.am: Build libstdc++fsconvenience.a as |
| well. |
| * src/filesystem/Makefile.in: Regenerate. |
| |
| 2024-02-04 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/text_encoding-data.h: Regenerate. |
| * include/bits/unicode-data.h: Regenerate. |
| * scripts/gen_text_encoding_data.py: Add copyright and license |
| text to the output. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113335 |
| * include/bits/std_function.h (__function_guide_helper): Add |
| partial specialization for explicit object member functions, as |
| per LWG 3617. |
| * testsuite/20_util/function/cons/deduction_c++23.cc: Check |
| explicit object member functions. |
| * testsuite/30_threads/packaged_task/cons/deduction_c++23.cc: |
| Likewise. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/17_intro/names.cc [_AIX]: Undefine "u". |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/experimental/internet (network_v6::network): Define. |
| (network_v6::hosts): Finish implementing. |
| (network_v6::to_string): Do not concatenate std::string to |
| arbitrary std::basic_string specialization. |
| * testsuite/experimental/net/internet/network/v6/cons.cc: New |
| test. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/90276 |
| * testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc: Fix |
| comparison function to use less-than instead of equality. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/90276 |
| * testsuite/util/pstl/test_utils.h (reverse_invoker): Do not use |
| perfect forwarding for iterator arguments. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/string_view (basic_string_view(R&&)): Remove |
| constraint that traits_type must be the same, as per LWG 3857. |
| * testsuite/21_strings/basic_string_view/cons/char/range_c++20.cc: |
| Explicit conversion between different specializations should be |
| allowed. |
| * testsuite/21_strings/basic_string_view/cons/wchar_t/range_c++20.cc: |
| Likewise. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/syncstream (basic_osyncstream::operator=): Remove |
| noexcept, as per LWG 3867. |
| |
| 2024-02-02 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/generator (promise_type::yield_value): Remove |
| noexcept from fourth overload, as per LWG 3894. |
| |
| 2024-02-01 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/113309 |
| PR libstdc++/109203 |
| * include/bits/ranges_util.h (__detail::__pair_like): Don't |
| define in C++23 mode. |
| (__detail::__pair_like_convertible_from): Adjust as per P2165R4. |
| (__detail::__is_subrange<subrange>): Moved from <ranges>. |
| (__detail::__is_tuple_like_v<subrange>): Likewise. |
| * include/bits/stl_iterator.h: Include <bits/utility.h> for |
| C++23. |
| (__different_from): Move to <concepts>. |
| (__iter_key_t): Adjust for C++23 as per P2165R4. |
| (__iter_val_t): Likewise. |
| * include/bits/stl_pair.h (pair, array): Forward declare. |
| (get): Forward declare all overloads relevant to P2165R4 |
| tuple-like constructors. |
| (__is_tuple_v): Define for C++23. |
| (__is_tuple_like_v): Define for C++23. |
| (__tuple_like): Define for C++23 as per P2165R4. |
| (__pair_like): Define for C++23 as per P2165R4. |
| (__eligibile_tuple_like): Define for C++23. |
| (__eligibile_pair_like): Define for C++23. |
| (pair::_S_constructible_from_pair_like): Define for C++23. |
| (pair::_S_convertible_from_pair_like): Define for C++23. |
| (pair::_S_dangles_from_pair_like): Define for C++23. |
| (pair::pair): Define overloads taking a tuple-like type for |
| C++23 as per P2165R4. |
| (pair::_S_assignable_from_tuple_like): Define for C++23. |
| (pair::_S_const_assignable_from_tuple_like): Define for C++23. |
| (pair::operator=): Define overloads taking a tuple-like type for |
| C++23 as per P2165R4. |
| * include/bits/utility.h (ranges::__detail::__is_subrange): |
| Moved from <ranges>. |
| * include/bits/version.def (tuple_like): Define for C++23. |
| * include/bits/version.h: Regenerate. |
| * include/std/concepts (__different_from): Moved from |
| <bits/stl_iterator.h>. |
| (ranges::__swap::__adl_swap): Clarify which __detail namespace. |
| * include/std/map (__cpp_lib_tuple_like): Define C++23. |
| * include/std/ranges (__detail::__is_subrange): Moved to |
| <bits/utility.h>. |
| (__detail::__is_subrange<subrange>): Moved to <bits/ranges_util.h> |
| (__detail::__has_tuple_element): Adjust for C++23 as per P2165R4. |
| (__detail::__tuple_or_pair): Remove as per P2165R4. Replace all |
| uses with plain tuple as per P2165R4. |
| * include/std/tuple (__cpp_lib_tuple_like): Define for C++23. |
| (__tuple_like_tag_t): Define for C++23. |
| (__tuple_cmp): Forward declare for C++23. |
| (_Tuple_impl::_Tuple_impl): Define overloads taking |
| __tuple_like_tag_t and a tuple-like type for C++23. |
| (_Tuple_impl::_M_assign): Likewise. |
| (tuple::__constructible_from_tuple_like): Define for C++23. |
| (tuple::__convertible_from_tuple_like): Define for C++23. |
| (tuple::__dangles_from_tuple_like): Define for C++23. |
| (tuple::tuple): Define overloads taking a tuple-like type for |
| C++23 as per P2165R4. |
| (tuple::__assignable_from_tuple_like): Define for C++23. |
| (tuple::__const_assignable_from_tuple_like): Define for C++23. |
| (tuple::operator=): Define overloads taking a tuple-like type |
| for C++23 as per P2165R4. |
| (tuple::__tuple_like_common_comparison_category): Define for C++23. |
| (tuple::operator<=>): Define overload taking a tuple-like type |
| for C++23 as per P2165R4. |
| (array, get): Forward declarations moved to <bits/stl_pair.h>. |
| (tuple_cat): Constrain with __tuple_like for C++23 as per P2165R4. |
| (apply): Likewise. |
| (make_from_tuple): Likewise. |
| (__tuple_like_common_reference): Define for C++23. |
| (basic_common_reference): Adjust as per P2165R4. |
| (__tuple_like_common_type): Define for C++23. |
| (common_type): Adjust as per P2165R4. |
| * include/std/unordered_map (__cpp_lib_tuple_like): Define for |
| C++23. |
| * include/std/utility (__cpp_lib_tuple_like): Define for C++23. |
| * testsuite/std/ranges/zip/1.cc (test01): Adjust to handle pair |
| and 2-tuple interchangeably. |
| (test05): New test. |
| * testsuite/20_util/pair/p2165r4.cc: New test. |
| * testsuite/20_util/tuple/p2165r4.cc: New test. |
| |
| 2024-02-01 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/stl_pair.h (pair::_S_const_assignable): Define, |
| factored out from ... |
| (pair::operator=): ... the constraints of the const overloads. |
| |
| 2024-02-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/version.tpl: Do not use def-file-line for each |
| macro being defined. |
| * include/bits/version.h: Regenerate. |
| |
| 2024-02-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/25_algorithms/copy/debug/constexpr_neg.cc: Adjust |
| dg-error pattern. |
| * 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. |
| |
| 2024-02-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/experimental/internet (network_v4::to_string()): |
| Remove lambda and use of resize_and_overwrite. |
| |
| 2024-01-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| * acinclude.m4 (GLIBCXX_CHECK_TEXT_ENCODING): Use <xlocale.h> if |
| needed for newlocale. |
| * configure: Regenerate. |
| * src/c++26/text_encoding.cc: Use <xlocale.h>. |
| |
| 2024-01-31 Jonathan Wakely <jwakely@redhat.com> |
| Ewan Higgs <ewan.higgs@gmail.com> |
| |
| * include/bits/text_encoding-data.h: Regenerate. |
| * scripts/gen_text_encoding_data.py: Add extra_aliases dict |
| containing "ASCII". |
| * testsuite/std/text_encoding/cons.cc: Check "ascii" is known. |
| |
| 2024-01-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/using.xml: Update tables of supported headers. |
| * doc/html/*: Regenerate. |
| |
| 2024-01-31 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/bitset (_Base_bitset::_M_do_to_ullong): Avoid |
| -Wshift-count-overflow warning. |
| |
| 2024-01-30 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/std/time/clock/gps/io.cc: Fix expected result in |
| assertion and call test_format() from main. |
| |
| 2024-01-29 François Dumont <fdumont@gcc.gnu.org> |
| |
| * doc/xml/manual/debug_mode.xml: Link against libstdc++exp.a to use |
| _GLIBCXX_DEBUG_BACKTRACE macro. |
| |
| 2024-01-24 Huanghui Nie <nnnjkk@gmail.com> |
| Théo Papadopoulo <papadopoulo@gmail.com> |
| |
| * include/bits/hashtable.h (_Hahstable<>::_M_remove_bucket_begin): Remove |
| _M_before_begin check and cleanup implementation. |
| |
| 2024-01-22 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/std/time/clock/file/io.cc: Fix expected result in |
| assertion and call test_format() from main. |
| |
| 2024-01-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113500 |
| * include/bits/chrono_io.h (__formatter_chrono::_M_S): Fix |
| printing of subseconds with floating-point rep. |
| (__formatter_chrono::_M_format_to_ostream): Do not write |
| time_point specializations directly to the ostream. |
| (formatter<chrono::sys_time<D>, C>::parse): Do not allow an |
| empty chrono-spec if the type fails to meet the constraints for |
| writing to an ostream with operator<<. |
| * testsuite/std/time/clock/file/io.cc: Check formatting |
| non-integral times with empty chrono-specs. |
| * testsuite/std/time/clock/gps/io.cc: Likewise. |
| * testsuite/std/time/clock/utc/io.cc: Likewise. |
| * testsuite/std/time/hh_mm_ss/io.cc: Likewise. |
| |
| 2024-01-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/chrono.h (__file_clock::from_sys) |
| (__file_clock::to_sys, __file_clock::_S_from_sys) |
| (__file_clock::_S_to_sys): Use common_type for return type. |
| * testsuite/std/time/clock/file/members.cc: Check round trip |
| conversion for time with lower precision that seconds. |
| |
| 2024-01-21 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113512 |
| * include/std/format (__formatter_fp::format): Fix logic for |
| alternate forms. |
| * testsuite/std/format/functions/format.cc: Check buggy cases of |
| alternate forms with g presentation type. |
| |
| 2024-01-20 Marek Polacek <polacek@redhat.com> |
| |
| PR c++/111410 |
| * include/std/ranges: Add #pragma to disable -Wdangling-reference with |
| std::ranges::views::__adaptor::operator|. |
| |
| 2024-01-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (_Spec::_M_parse_fill_and_align): Do not |
| use CTAD for _Utf32_view. |
| |
| 2024-01-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108822 |
| * include/std/tuple (__glibcxx_no_dangling_refs) [C++17]: Fix |
| wrong fold-operator. |
| * testsuite/20_util/tuple/dangling_ref.cc: Check tuples with one |
| element and three elements. Check allocator-extended |
| constructors. |
| |
| 2024-01-19 Patrick Palka <ppalka@redhat.com> |
| |
| * include/precompiled/stdc++.h [_GLIBCXX_HOSTED]: Include |
| <print> and <text_encoding> for C++23 and C++26 respectively. |
| |
| 2024-01-18 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/stl_pair.h [__cplusplus > 202002L]: |
| Guard P2321R2 changes with __glibcxx_ranges_zip instead. |
| |
| 2024-01-18 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/tuple [__cplusplus > 202002L]: Guard P2321R2 |
| changes with __cpp_lib_ranges_zip instead. |
| |
| 2024-01-18 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/109536 |
| * include/debug/safe_base.h (_Safe_sequence_base::_M_swap): |
| Remove _GLIBCXX20_CONSTEXPR from non-inline member function. |
| * include/debug/safe_iterator.h |
| (_GLIBCXX20_CONSTEXPR_NON_LITERAL_SCOPE_BEGIN): Define. |
| (_GLIBCXX20_CONSTEXPR_NON_LITERAL_SCOPE_END): Define. |
| (_Safe_iterator::operator=): Use them around the code path that |
| defines a variable of type __gnu_cxx::__scoped_lock. |
| (_Safe_iterator::operator++): Likewise. |
| (_Safe_iterator::operator--): Likewise. |
| (_Safe_iterator::operator+=): Likewise. |
| (_Safe_iterator::operator-=): Likewise. |
| * testsuite/23_containers/vector/element_access/constexpr.cc |
| (test_iterators): Test more iterator operations. |
| * testsuite/23_containers/vector/bool/element_access/constexpr.cc |
| (test_iterators): Likewise. |
| * testsuite/std/ranges/adaptors/all.cc (test08) [_GLIBCXX_DEBUG]: |
| Remove. |
| |
| 2024-01-18 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode.h (__charset_alias_match): Initialize |
| __var_a and __var_b. |
| |
| 2024-01-18 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113450 |
| * testsuite/std/format/functions/format.cc: Use signed char |
| instead of int8_t. |
| |
| 2024-01-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113318 |
| * acinclude.m4 (GLIBCXX_CONFIGURE): Add c++26 directory. |
| (GLIBCXX_CHECK_TEXT_ENCODING): Define. |
| * config.h.in: Regenerate. |
| * configure: Regenerate. |
| * configure.ac: Use GLIBCXX_CHECK_TEXT_ENCODING. |
| * include/Makefile.am: Add new headers. |
| * include/Makefile.in: Regenerate. |
| * include/bits/locale_classes.h (locale::encoding): Declare new |
| member function. |
| * include/bits/unicode.h (__charset_alias_match): New function. |
| * include/bits/text_encoding-data.h: New file. |
| * include/bits/version.def (text_encoding): Define. |
| * include/bits/version.h: Regenerate. |
| * include/std/text_encoding: New file. |
| * src/Makefile.am: Add new subdirectory. |
| * src/Makefile.in: Regenerate. |
| * src/c++26/Makefile.am: New file. |
| * src/c++26/Makefile.in: New file. |
| * src/c++26/text_encoding.cc: New file. |
| * src/experimental/Makefile.am: Include c++26 convenience |
| library. |
| * src/experimental/Makefile.in: Regenerate. |
| * python/libstdcxx/v6/printers.py (StdTextEncodingPrinter): New |
| printer. |
| * scripts/gen_text_encoding_data.py: New file. |
| * testsuite/22_locale/locale/encoding.cc: New test. |
| * testsuite/ext/unicode/charset_alias_match.cc: New test. |
| * testsuite/std/text_encoding/cons.cc: New test. |
| * testsuite/std/text_encoding/members.cc: New test. |
| * testsuite/std/text_encoding/requirements.cc: New test. |
| |
| 2024-01-17 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode.h (_Grapheme_cluster_view): Require view. |
| Do not use CTAD for _Utf32_view. |
| (__format_width, __truncate): Do not use CTAD. |
| (enable_borrowed_range<_Utf_view<T, R>>): Define specialization. |
| (enable_borrowed_range<_Grapheme_cluster_view<R>>): Likewise. |
| |
| 2024-01-17 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/ranges (views::_CartesianProduct::operator()): |
| Adjust identity case as per P2540R1. |
| * testsuite/std/ranges/cartesian_product/1.cc (test01): |
| Adjust expected result of the identity case. |
| |
| 2024-01-15 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/variant (__detail::__variant::_Variadic_union): |
| Add bool __trivially_destructible template parameter. |
| (__detail::__variant::_Variadic_union::~_Variadic_union): |
| Use __trivially_destructible in constraints instead. |
| (__detail::__variant::_Variant_storage): Pass |
| __trivially_destructible value to _Variadic_union. |
| |
| 2024-01-15 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/stl_iterator.h (const_iterator): Define conversion |
| operators as per P2836R1. |
| * include/bits/version.def (ranges_as_const): Update value. |
| * include/bits/version.h: Regenerate. |
| * testsuite/24_iterators/const_iterator/1.cc (test04): New test. |
| * testsuite/std/ranges/adaptors/as_const/1.cc: Adjust expected |
| value of __cpp_lib_ranges_as_const. |
| * testsuite/std/ranges/version_c++23.cc: Likewise. |
| |
| 2024-01-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108822 |
| * include/std/tuple (__assignable, __is_nothrow_assignable): |
| Move pre-C++20 definitions adjacent to their use. |
| |
| 2024-01-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR testsuite/113366 |
| * include/std/format (basic_format_arg): Use __formattable |
| variable template instead of __format::__formattable_with |
| concept. |
| |
| 2024-01-15 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++20/tzdata.zi: Import new file from 2023d release. |
| * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds) |
| Update expiry date for leap seconds list. |
| |
| 2024-01-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/108822 |
| * include/std/tuple (tuple): Add checks for dangling references. |
| Reimplement constraints and constant expressions using C++20 |
| features. |
| * include/std/type_traits [C++20] |
| (__is_implicitly_default_constructible_v): Define. |
| (__is_implicitly_default_constructible): Use variable template. |
| * testsuite/20_util/tuple/dangling_ref.cc: New test. |
| |
| 2024-01-13 Patrick Palka <ppalka@redhat.com> |
| |
| PR libstdc++/108827 |
| PR libstdc++/111327 |
| * include/bits/version.def (bind_back): Define. |
| * include/bits/version.h: Regenerate. |
| * include/std/functional (_Bind_back): Define for C++23. |
| (bind_back): Likewise. |
| * testsuite/20_util/function_objects/bind_back/1.cc: New test |
| (adapted from corresponding bind_front test). |
| * testsuite/20_util/function_objects/bind_back/111327.cc: Likewise. |
| |
| 2024-01-13 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/functional (_Bind_front): Remove =default special |
| member function declarations. |
| (_Bind_front::operator()): Implement using C++23 deducing this |
| when available. |
| * testsuite/20_util/function_objects/bind_front/111327.cc: |
| Adjust testcase to expect better errors in C++23 mode. |
| |
| 2024-01-13 Patrick Palka <ppalka@redhat.com> |
| |
| * include/std/ranges (views::__adaptor::operator|): Perform |
| perfect forwarding of arguments. |
| (views::__adaptor::_RangeAdaptor::operator()): Pass dummy |
| first argument to _Partial. |
| (views::__adaptor::_Partial::_Partial): Likewise. Add dummy |
| first parameter. |
| (views::__adaptor::_Pipe::_Pipe): Perform perfect forwarding |
| of arguments. |
| (to): Pass dummy first argument to _Partial. |
| |
| 2024-01-13 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/107466 |
| * include/bits/random.tcc (subtract_with_carry_engine::seed): |
| Implement proposed resolution of LWG 4014. |
| * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error |
| line number. |
| * testsuite/26_numerics/random/subtract_with_carry_engine/cons/lwg3809.cc: |
| Check for expected result of 64-bit engine with seed that |
| doesn't fit in 32-bits. |
| |
| 2024-01-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113320 |
| * include/std/format (__format::_Runtime_format_string): Add |
| constructor and disable copy operations. |
| (basic_format_string(_Runtime_format_string)): Add noexcept and |
| take parameter by value not rvalue reference. |
| (runtime_format): Add noexcept. |
| * testsuite/std/format/runtime_format.cc: Check noexcept. Check |
| that construction is only possible from prvalues, not xvalues. |
| |
| 2024-01-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/105505 |
| * include/bits/stl_pair.h (pair::pair(U1&&, U2&&)) [C++23]: Add |
| default template arguments, as per P1951R1. |
| * testsuite/20_util/pair/cons/default_tmpl_args.cc: New test. |
| |
| 2024-01-12 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (__format::_Arg_store): Fix PR number in |
| comment. Simplify preprocessor code. |
| |
| 2024-01-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/evolution.xml: Fix spelling. |
| * doc/html/manual/api.html: Regenerate. |
| |
| 2024-01-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/xml/manual/evolution.xml: Document addition of |
| libstdc++exp.a. |
| * doc/html/*: Regenerate. |
| |
| 2024-01-11 Marcus Haehnel <marcus.haehnel@kernkonzept.com> |
| |
| * libsupc++/eh_unex_handler.cc: Adjust definition type to |
| declaration. |
| |
| 2024-01-11 Michael Levine <mlevine55@bloomberg.net> |
| |
| * include/std/ranges (__glibcxx_want_ranges_iota): Remove |
| duplicate definition. |
| |
| 2024-01-11 François Dumont <fdumont@gcc.gnu.org> |
| |
| PR libstdc++/112477 |
| * src/c++11/debug.cc |
| (_Safe_iterator_base::_M_attach): Reset _M_version to 0 if attaching to null |
| sequence. |
| (_Safe_iterator_base::_M_attach_single): Likewise. |
| (_Safe_local_iterator_base::_M_attach): Likewise. |
| (_Safe_local_iterator_base::_M_attach_single): Likewise. |
| * testsuite/23_containers/map/debug/112477.cc: New test case. |
| |
| 2024-01-11 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/move.h (__like_t): Define in C++23 mode. |
| * include/std/ranges (views::__adaptor::Partial::operator()): |
| Implement using C++23 deducing this when available. |
| (views::__adaptor::_Pipe::operator()): Likewise. |
| * testsuite/std/ranges/adaptors/100577.cc: Adjust testcase to |
| accept new "no match for call" errors issued in C++23 mode. |
| * testsuite/std/ranges/adaptors/lazy_split_neg.cc: Likewise. |
| |
| 2024-01-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| * python/libstdcxx/v6/printers.py (StdIntegralConstantPrinter): |
| Add printer for std::integral_constant. |
| * testsuite/libstdc++-prettyprinters/cxx11.cc: Test it. |
| |
| 2024-01-11 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113258 |
| * libsupc++/new_opa.cc: Prefer to use posix_memalign if |
| available. |
| |
| 2024-01-11 Ken Matsui <kmatsui@gcc.gnu.org> |
| |
| * src/filesystem/ops-common.h (stat_type): Use using. |
| |
| 2024-01-11 Ken Matsui <kmatsui@gcc.gnu.org> |
| |
| PR libstdc++/113250 |
| * src/c++17/fs_ops.cc (fs::equivalent): Use || instead of &&. |
| * src/filesystem/ops.cc (fs::equivalent): Likewise. |
| * testsuite/27_io/filesystem/operations/equivalent.cc: Handle |
| error codes. |
| * testsuite/experimental/filesystem/operations/equivalent.cc: |
| Likewise. |
| |
| 2024-01-11 Ken Matsui <kmatsui@gcc.gnu.org> |
| |
| * include/std/type_traits (is_compound): Do not use __not_. |
| (is_compound_v): Use is_fundamental_v instead. |
| |
| 2024-01-11 Patrick Palka <ppalka@redhat.com> |
| |
| * include/bits/utility.h (_Nth_type): Use |
| _GLIBCXX_USE_BUILTIN_TRAIT instead of __has_builtin. |
| |
| 2024-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode-data.h: Regenerate. |
| * include/bits/unicode.h (_Utf_iterator::operator++()): Fix off |
| by one error. |
| (__incb_property): Add missing check for values before the |
| first edge. |
| (__is_extended_pictographic): Invert return values to fix |
| copy&pasted logic. |
| (_Grapheme_cluster_view::_Iterator): Remove second iterator |
| member and find end of cluster lazily. |
| * testsuite/ext/unicode/grapheme_view.cc: New test. |
| * testsuite/ext/unicode/properties.cc: New test. |
| * testsuite/ext/unicode/view.cc: New test. |
| |
| 2024-01-09 Andreas Schwab <schwab@linux-m68k.org> |
| |
| * scripts/extract_symvers.in: Require final colon to only match |
| .dsynsym in the header of the dynamic symtab. |
| |
| 2024-01-09 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/chrono_io.h (__formatter_chrono::_M_F): Simplify |
| handling of string returned from std::format. |
| (__formatter_chrono::_M_R_T): Likewise. |
| |
| 2024-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/unicode.h (__null_sentinel): Remove. |
| * testsuite/17_intro/names.cc: Add __null_sentinel. |
| |
| 2024-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/format (__format::_Runtime_format_string): Define |
| new class template. |
| (basic_format_string): Add non-consteval constructor for runtime |
| format strings. |
| (runtime_format): Define new function for C++26. |
| * testsuite/std/format/runtime_format.cc: New test. |
| |
| 2024-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/chrono_io.h (__formatter_chrono): Always use |
| lvalue arguments to make_format_args. |
| * include/std/format (make_format_args): Change parameter pack |
| from forwarding references to lvalue references. Remove use of |
| remove_reference_t which is now unnecessary. |
| (format_to, formatted_size): Remove incorrect forwarding of |
| arguments. |
| * include/std/ostream (print): Remove forwarding of arguments. |
| * include/std/print (print): Likewise. |
| * testsuite/20_util/duration/io.cc: Use lvalues as arguments to |
| make_format_args. |
| * testsuite/std/format/arguments/args.cc: Likewise. |
| * testsuite/std/format/arguments/lwg3810.cc: Likewise. |
| * testsuite/std/format/functions/format.cc: Likewise. |
| * testsuite/std/format/functions/vformat_to.cc: Likewise. |
| * testsuite/std/format/string.cc: Likewise. |
| * testsuite/std/time/day/io.cc: Likewise. |
| * testsuite/std/time/month/io.cc: Likewise. |
| * testsuite/std/time/weekday/io.cc: Likewise. |
| * testsuite/std/time/year/io.cc: Likewise. |
| * testsuite/std/time/year_month_day/io.cc: Likewise. |
| * testsuite/std/format/arguments/args_neg.cc: New test. |
| |
| 2024-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/Makefile.am: Add new headers. |
| * include/Makefile.in: Regenerate. |
| * include/bits/unicode.h: New file. |
| * include/bits/unicode-data.h: New file. |
| * include/std/format: Include <bits/unicode.h>. |
| (__literal_encoding_is_utf8): Move to <bits/unicode.h>. |
| (_Spec::_M_fill): Change type to char32_t. |
| (_Spec::_M_parse_fill_and_align): Read a Unicode scalar value |
| instead of a single character. |
| (__write_padded): Change __fill_char parameter to char32_t and |
| encode it into the output. |
| (__formatter_str::format): Use new __unicode::__field_width and |
| __unicode::__truncate functions. |
| * include/std/ostream: Adjust namespace qualification for |
| __literal_encoding_is_utf8. |
| * include/std/print: Likewise. |
| * src/c++23/print.cc: Add [[unlikely]] attribute to error path. |
| * testsuite/ext/unicode/view.cc: New test. |
| * testsuite/std/format/functions/format.cc: Add missing examples |
| from the standard demonstrating alignment with non-ASCII |
| characters. Add examples checking correct handling of extended |
| grapheme clusters. |
| |
| 2024-01-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/bits/version.def (format_uchar): Define. |
| * include/bits/version.h: Regenerate. |
| * include/std/format (formatter<C, C>::format): Check for |
| _Pres_c and call _M_format_character directly. Cast C to its |
| unsigned equivalent for formatting as an integer. |
| (formatter<char, wchar_t>::format): Likewise. |
| (basic_format_arg(T&)): Store char arguments as unsigned char |
| for formatting to a wide string. |
| * testsuite/std/format/functions/format.cc: Adjust test. Check |
| formatting of |
| |
| 2024-01-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/112997 |
| * libsupc++/unwind-cxx.h (__cxa_call_terminate): Change first |
| parameter to void*. |
| |
| 2024-01-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * testsuite/20_util/variant/87619.cc: Remove dg-timeout-factor. |
| |
| 2024-01-07 Jonathan Wakely <jwakely@redhat.com> |
| |
| * include/std/type_traits (is_trivially_destructible_v): Use |
| built-in directly when concepts are supported. |
| * testsuite/20_util/is_trivially_destructible/value_v.cc: New |
| test. |
| |
| 2024-01-06 Gwenole Beauchesne <gb.devel@gmail.com> |
| |
| * testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Use |
| nonnull arguments to strtoimax() and wcstoimax() functions. |
| |
| 2024-01-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| * src/c++17/fs_path.cc (path::_List::reserve): Limit maximum |
| size and check for overflows in arithmetic. |
| (path::operator/=(const path&)): Remove redundant exponential |
| growth calculation. |
| |
| 2024-01-05 Martin Küttler <martin.kuettler@kernkonzept.com> |
| |
| * src/c++17/fs_path.cc (path::_List::reserve): Avoid |
| floating-point arithmetic. |
| |
| 2024-01-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113241 |
| * include/std/type_traits (is_convertible_v): Guard use of |
| built-in with preprocessor check. |
| |
| 2024-01-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113200 |
| * include/bits/char_traits.h (__gnu_cxx::char_traits::move): Use |
| __builtin_constant_p to check for unrelated pointers that cannot |
| be compared during constant evaluation. |
| * testsuite/21_strings/char_traits/requirements/113200.cc: New |
| test. |
| |
| 2024-01-05 Cassio Neri <cassio.neri@gmail.com> |
| |
| * include/std/chrono: Fix + and - for months and weekdays. |
| * testsuite/std/time/month/1.cc: Add constexpr tests against overflow. |
| * testsuite/std/time/month/2.cc: New test for extreme values. |
| * testsuite/std/time/weekday/1.cc: Add constexpr tests against overflow. |
| * testsuite/std/time/weekday/2.cc: New test for extreme values. |
| |
| 2024-01-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR libstdc++/113099 |
| * include/bits/locale_classes.tcc (__try_use_facet): Use |
| if-constexpr for C++11 and up. |
| |
| 2024-01-05 Ken Matsui <kmatsui@gcc.gnu.org> |
| |
| * include/std/type_traits: Use _GLIBCXX_USE_BUILTIN_TRAIT. |
| |
| 2024-01-04 Arsen Arsenović <arsen@aarsen.me> |
| |
| * include/std/generator (_Subyield_state::_M_jump_in): Fix typo |
| reported by Will Hawkins <hawkinsw@obs.cr>. |
| |
| 2024-01-04 Arsen Arsenović <arsen@aarsen.me> |
| |
| * include/std/generator (_Stateless_alloc): Rename typename _A |
| to _All. |
| |
| 2024-01-03 Patrick Palka <ppalka@redhat.com> |
| |
| PR testsuite/113175 |
| * testsuite/std/ranges/iota/max_size_type.cc (test02): Reduce |
| 'limit' to 100 from 1000 and adjust 'log2_limit' accordingly. |
| (test03): Likewise. |
| |
| |
| Copyright (C) 2024 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. |