Commit Graph

10 Commits

Author SHA1 Message Date
Jakub Jelinek 254a858ae7 Update copyright years. 2026-01-02 09:56:11 +01:00
Jakub Jelinek 6441eb6dc0 Update copyright years. 2025-01-02 11:59:57 +01:00
Jakub Jelinek a945c346f5 Update copyright years. 2024-01-03 12:19:35 +01:00
Jonathan Wakely 762baaf026 libstdc++: Remove dg-options "-std=gnu++20" from 24_iterators tests
The testsuite will automatically select C++20 for these tests now, and
removing the hardcoded -std option allows them to be tested for C++23
and C++26 as well.

libstdc++-v3/ChangeLog:

	* testsuite/24_iterators/aliases.cc: Remove dg-options
	-std=gnu++2a.
	* testsuite/24_iterators/associated_types/incrementable.traits.cc:
	Likewise.
	* testsuite/24_iterators/associated_types/iterator.traits.cc:
	Likewise.
	* testsuite/24_iterators/associated_types/readable.traits.cc:
	Likewise.
	* testsuite/24_iterators/back_insert_iterator/constexpr.cc:
	Likewise.
	* testsuite/24_iterators/back_insert_iterator/pr93884.cc:
	Likewise.
	* testsuite/24_iterators/bidirectional/concept.cc: Likewise.
	* testsuite/24_iterators/common_iterator/1.cc: Likewise.
	* testsuite/24_iterators/common_iterator/100823.cc: Likewise.
	* testsuite/24_iterators/common_iterator/2.cc: Likewise.
	* testsuite/24_iterators/contiguous/concept.cc: Likewise.
	* testsuite/24_iterators/contiguous/tag.cc: Likewise.
	* testsuite/24_iterators/counted_iterator/1.cc: Likewise.
	* testsuite/24_iterators/counted_iterator/lwg3389.cc: Likewise.
	* testsuite/24_iterators/counted_iterator/lwg3643.cc: Likewise.
	* testsuite/24_iterators/customization_points/92894.cc:
	Likewise.
	* testsuite/24_iterators/customization_points/iter_move.cc:
	Likewise.
	* testsuite/24_iterators/customization_points/iter_swap.cc:
	Likewise.
	* testsuite/24_iterators/customization_points/lwg3420.cc:
	Likewise.
	* testsuite/24_iterators/forward/concept.cc: Likewise.
	* testsuite/24_iterators/front_insert_iterator/constexpr.cc:
	Likewise.
	* testsuite/24_iterators/front_insert_iterator/pr93884.cc:
	Likewise.
	* testsuite/24_iterators/headers/iterator/synopsis_c++20.cc:
	Likewise.
	* testsuite/24_iterators/indirect_callable/92894.cc: Likewise.
	* testsuite/24_iterators/indirect_callable/projected-adl.cc:
	Likewise.
	* testsuite/24_iterators/indirect_callable/projected.cc:
	Likewise.
	* testsuite/24_iterators/input/concept.cc: Likewise.
	* testsuite/24_iterators/insert_iterator/constexpr.cc: Likewise.
	* testsuite/24_iterators/istream_iterator/cons/sentinel.cc:
	Likewise.
	* testsuite/24_iterators/istream_iterator/sentinel.cc: Likewise.
	* testsuite/24_iterators/istreambuf_iterator/cons/sentinel.cc:
	Likewise.
	* testsuite/24_iterators/istreambuf_iterator/sentinel.cc:
	Likewise.
	* testsuite/24_iterators/move_iterator/cust.cc: Likewise.
	* testsuite/24_iterators/move_iterator/dr3435.cc: Likewise.
	* testsuite/24_iterators/move_iterator/input_iterator.cc:
	Likewise.
	* testsuite/24_iterators/move_iterator/lwg3390.cc: Likewise.
	* testsuite/24_iterators/move_iterator/lwg3391.cc: Likewise.
	* testsuite/24_iterators/move_iterator/move_only.cc: Likewise.
	* testsuite/24_iterators/move_iterator/p2520r0.cc: Likewise.
	* testsuite/24_iterators/move_iterator/rel_ops_c++20.cc:
	Likewise.
	* testsuite/24_iterators/move_iterator/sentinel.cc: Likewise.
	* testsuite/24_iterators/normal_iterator/cmp_c++20.cc: Likewise.
	* testsuite/24_iterators/output/concept.cc: Likewise.
	* testsuite/24_iterators/random_access/concept.cc: Likewise.
	* testsuite/24_iterators/range_access/range_access_cpp20.cc:
	Likewise.
	* testsuite/24_iterators/range_access/range_access_cpp20_neg.cc:
	Likewise.
	* testsuite/24_iterators/range_operations/100768.cc: Likewise.
	* testsuite/24_iterators/range_operations/advance.cc: Likewise.
	* testsuite/24_iterators/range_operations/advance_overflow.cc:
	Likewise.
	* testsuite/24_iterators/range_operations/distance.cc: Likewise.
	* testsuite/24_iterators/range_operations/lwg3392.cc: Likewise.
	* testsuite/24_iterators/range_operations/next.cc: Likewise.
	* testsuite/24_iterators/range_operations/prev.cc: Likewise.
	* testsuite/24_iterators/reverse_iterator/cust.cc: Likewise.
	* testsuite/24_iterators/reverse_iterator/dr3435.cc: Likewise.
	* testsuite/24_iterators/reverse_iterator/rel_ops_c++20.cc:
	Likewise.
2023-09-16 00:10:45 +01:00
Jakub Jelinek 83ffe9cde7 Update copyright years. 2023-01-16 11:52:17 +01:00
Jakub Jelinek 7adcbafe45 Update copyright years. 2022-01-03 10:42:10 +01:00
Jonathan Wakely 4000d722e6 libstdc++: Fix tests that use invalid types in ordered containers
Types used in ordered containers need to be comparable, or the container
needs to use a custom comparison function. These tests fail when
_GLIBCXX_CONCEPT_CHECKS is defined, because the element types aren't
comparable.

Signed-off-by: Jonathan Wakely <jwakely@redhat.com>

libstdc++-v3/ChangeLog:

	* testsuite/20_util/is_nothrow_swappable/value.h: Use custom
	comparison function for priority_queue of type with no
	relational operators.
	* testsuite/20_util/is_swappable/value.h: Likewise.
	* testsuite/24_iterators/output/concept.cc: Add operator< to
	type used in set.
2021-09-28 20:22:51 +01:00
Jakub Jelinek 99dee82307 Update copyright years. 2021-01-04 10:26:59 +01:00
Jakub Jelinek 8d9254fc8a Update copyright years.
From-SVN: r279813
2020-01-01 12:51:42 +01:00
Jonathan Wakely 9aeb3bef2c Apply C++20 changes to various iterator types
This ensures that __normal_iterator<T*, C> satisfies the
contiguous_iterator concept, by defining the iterator_concept member
type.

Also update vector<bool>'s iterators, reverse_iterator,
istreambuf_iterator and ostreambuf_iterator to meet the C++20
requirements.

	PR libstdc++/92272
	* include/bits/stl_bvector.h (_Bit_iterator::pointer)
	(_Bit_const_iterator::pointer): Define as void for C++20.
	* include/bits/stl_iterator.h (reverse_iterator::operator->()): Add
	constraints for C++20.
	(__normal_iterator::iterator_concept): Define for C++20.
	* include/bits/streambuf_iterator.h (istreambuf_iterator::pointer):
	Define as void for C++20.
	(ostreambuf_iterator::difference_type): Define as ptrdiff_t for C++20.
	(ostreambuf_iterator::ostreambuf_iterator()): Add default constructor
	for C++20.
	* testsuite/23_containers/vector/bool/iterator_c++20.cc: New test.
	* testsuite/24_iterators/bidirectional/concept.cc: New test.
	* testsuite/24_iterators/bidirectional/tag.cc: New test.
	* testsuite/24_iterators/contiguous/concept.cc: New test.
	* testsuite/24_iterators/contiguous/tag.cc: New test.
	* testsuite/24_iterators/forward/concept.cc: New test.
	* testsuite/24_iterators/forward/tag.cc: New test.
	* testsuite/24_iterators/input/concept.cc: New test.
	* testsuite/24_iterators/input/tag.cc: New test.
	* testsuite/24_iterators/istreambuf_iterator/requirements/typedefs.cc:
	New test.
	* testsuite/24_iterators/ostreambuf_iterator/requirements/typedefs.cc:
	New test.
	* testsuite/24_iterators/output/concept.cc: New test.
	* testsuite/24_iterators/output/tag.cc: New test.
	* testsuite/24_iterators/random_access/concept.cc: New test.
	* testsuite/24_iterators/random_access/tag.cc: New test.
	* testsuite/24_iterators/range_operations/advance_debug_neg.cc: New
	test.
	* testsuite/24_iterators/random_access_iterator/26020.cc: Move to ...
	* testsuite/24_iterators/operations/26020.cc: ... here.
	* testsuite/24_iterators/random_access_iterator/
	string_vector_iterators.cc: Move to ...
	* testsuite/24_iterators/random_access/string_vector_iterators.cc: ...
	here.

From-SVN: r277629
2019-10-30 15:48:11 +00:00