gcc/libstdc++-v3/testsuite/20_util
Jonathan Wakely 0953497a81 libstdc++: Add static_assert to std::integer_sequence [PR112473]
C++20 allows class types as non-type template parameters, but
std::integer_sequence explicitly disallows them. Enforce that.

libstdc++-v3/ChangeLog:

	PR libstdc++/112473
	* include/bits/utility.h (integer_sequence): Add static_assert.
	* testsuite/20_util/integer_sequence/112473.cc: New test.
2023-11-11 00:41:09 +00:00
..
add_const Update copyright years. 2023-01-16 11:52:17 +01:00
add_cv Update copyright years. 2023-01-16 11:52:17 +01:00
add_lvalue_reference Update copyright years. 2023-01-16 11:52:17 +01:00
add_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
add_rvalue_reference Update copyright years. 2023-01-16 11:52:17 +01:00
add_volatile Update copyright years. 2023-01-16 11:52:17 +01:00
addressof Update copyright years. 2023-01-16 11:52:17 +01:00
align Update copyright years. 2023-01-16 11:52:17 +01:00
aligned_storage libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
aligned_union libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
alignment_of Update copyright years. 2023-01-16 11:52:17 +01:00
allocator c++: Move consteval folding to cp_fold_r 2023-09-19 09:24:44 -04:00
allocator_traits libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
any libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
as_const Update copyright years. 2023-01-16 11:52:17 +01:00
assume_aligned libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
auto_ptr libstdc++: Enable std::auto_ptr tests for C++11 and later 2023-09-04 16:24:35 +01:00
bad_function_call Update copyright years. 2023-01-16 11:52:17 +01:00
bind libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
bitset libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
bool_constant Update copyright years. 2023-01-16 11:52:17 +01:00
common_reference libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
common_type/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
conditional/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
decay/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
declval/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
default_delete Update copyright years. 2023-01-16 11:52:17 +01:00
duration libstdc++: Add dg-timeout-factor to <chrono> IO tests 2023-10-26 21:10:47 +01:00
duration_cast Update copyright years. 2023-01-16 11:52:17 +01:00
enable_if/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
enable_shared_from_this Update copyright years. 2023-01-16 11:52:17 +01:00
exchange libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
expected libstdc++: Remove dg-options "-std=gnu++23" from std::expected tests 2023-09-15 21:57:40 +01:00
extent Update copyright years. 2023-01-16 11:52:17 +01:00
forward Update copyright years. 2023-01-16 11:52:17 +01:00
forward_like libstdc++: Define C++23 std::forward_like (P2445R1) 2023-09-25 09:48:44 +01:00
from_chars libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
function libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
function_objects libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
has_unique_object_representations Update copyright years. 2023-01-16 11:52:17 +01:00
has_virtual_destructor Update copyright years. 2023-01-16 11:52:17 +01:00
hash Update copyright years. 2023-01-16 11:52:17 +01:00
headers Update copyright years. 2023-01-16 11:52:17 +01:00
in_place Update copyright years. 2023-01-16 11:52:17 +01:00
integer_comparisons libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
integer_sequence libstdc++: Add static_assert to std::integer_sequence [PR112473] 2023-11-11 00:41:09 +00:00
integral_constant Update copyright years. 2023-01-16 11:52:17 +01:00
invoke_result Update copyright years. 2023-01-16 11:52:17 +01:00
is_abstract Update copyright years. 2023-01-16 11:52:17 +01:00
is_aggregate Update copyright years. 2023-01-16 11:52:17 +01:00
is_arithmetic Update copyright years. 2023-01-16 11:52:17 +01:00
is_array Update copyright years. 2023-01-16 11:52:17 +01:00
is_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_base_of Update copyright years. 2023-01-16 11:52:17 +01:00
is_bounded_array libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_class Update copyright years. 2023-01-16 11:52:17 +01:00
is_complete_or_unbounded Update copyright years. 2023-01-16 11:52:17 +01:00
is_compound Update copyright years. 2023-01-16 11:52:17 +01:00
is_const Update copyright years. 2023-01-16 11:52:17 +01:00
is_constant_evaluated libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_constructible libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_convertible Update copyright years. 2023-01-16 11:52:17 +01:00
is_copy_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_copy_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_default_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_destructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_empty Update copyright years. 2023-01-16 11:52:17 +01:00
is_enum Update copyright years. 2023-01-16 11:52:17 +01:00
is_final Update copyright years. 2023-01-16 11:52:17 +01:00
is_floating_point Update copyright years. 2023-01-16 11:52:17 +01:00
is_function Update copyright years. 2023-01-16 11:52:17 +01:00
is_fundamental Update copyright years. 2023-01-16 11:52:17 +01:00
is_implicitly_default_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_integral Update copyright years. 2023-01-16 11:52:17 +01:00
is_invocable Update copyright years. 2023-01-16 11:52:17 +01:00
is_layout_compatible libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_literal_type Update copyright years. 2023-01-16 11:52:17 +01:00
is_lvalue_reference Update copyright years. 2023-01-16 11:52:17 +01:00
is_member_function_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
is_member_object_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
is_member_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
is_move_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_move_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_constructible libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_nothrow_convertible libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_nothrow_copy_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_copy_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_default_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_destructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_invocable Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_move_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_move_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_swappable Update copyright years. 2023-01-16 11:52:17 +01:00
is_nothrow_swappable_with Update copyright years. 2023-01-16 11:52:17 +01:00
is_null_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
is_object Update copyright years. 2023-01-16 11:52:17 +01:00
is_pod libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
is_pointer_interconvertible libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_polymorphic Update copyright years. 2023-01-16 11:52:17 +01:00
is_reference Update copyright years. 2023-01-16 11:52:17 +01:00
is_rvalue_reference Update copyright years. 2023-01-16 11:52:17 +01:00
is_same Update copyright years. 2023-01-16 11:52:17 +01:00
is_scalar Update copyright years. 2023-01-16 11:52:17 +01:00
is_scoped_enum libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
is_signed Update copyright years. 2023-01-16 11:52:17 +01:00
is_standard_layout Update copyright years. 2023-01-16 11:52:17 +01:00
is_swappable Update copyright years. 2023-01-16 11:52:17 +01:00
is_swappable_with Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivial Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_copy_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_copy_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_copyable Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_default_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_destructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_move_assignable Update copyright years. 2023-01-16 11:52:17 +01:00
is_trivially_move_constructible Update copyright years. 2023-01-16 11:52:17 +01:00
is_unbounded_array libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
is_union Update copyright years. 2023-01-16 11:52:17 +01:00
is_unsigned Update copyright years. 2023-01-16 11:52:17 +01:00
is_void Update copyright years. 2023-01-16 11:52:17 +01:00
is_volatile Update copyright years. 2023-01-16 11:52:17 +01:00
logical_traits Update copyright years. 2023-01-16 11:52:17 +01:00
make_signed/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
make_unsigned/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
memory_resource Update copyright years. 2023-01-16 11:52:17 +01:00
monotonic_buffer_resource Update copyright years. 2023-01-16 11:52:17 +01:00
move Update copyright years. 2023-01-16 11:52:17 +01:00
move_if_noexcept Update copyright years. 2023-01-16 11:52:17 +01:00
move_only_function libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
nonesuch Update copyright years. 2023-01-16 11:52:17 +01:00
optional libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
owner_less Update copyright years. 2023-01-16 11:52:17 +01:00
pair libstdc++: Fix test that fails with -ffreestanding 2023-11-11 00:41:09 +00:00
pointer_safety Update copyright years. 2023-01-16 11:52:17 +01:00
pointer_traits libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
polymorphic_allocator libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
rank Update copyright years. 2023-01-16 11:52:17 +01:00
ratio libstdc++: Implement new SI prefixes in <ratio> for C++23 (P2734R0) 2023-08-24 13:44:38 +01:00
raw_storage_iterator Update copyright years. 2023-01-16 11:52:17 +01:00
reference_from_temporary libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
reference_wrapper libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
remove_all_extents Update copyright years. 2023-01-16 11:52:17 +01:00
remove_const Update copyright years. 2023-01-16 11:52:17 +01:00
remove_cv Update copyright years. 2023-01-16 11:52:17 +01:00
remove_cvref libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
remove_extent Update copyright years. 2023-01-16 11:52:17 +01:00
remove_pointer Update copyright years. 2023-01-16 11:52:17 +01:00
remove_reference Update copyright years. 2023-01-16 11:52:17 +01:00
remove_volatile Update copyright years. 2023-01-16 11:52:17 +01:00
result_of Update copyright years. 2023-01-16 11:52:17 +01:00
scoped_allocator libstdc++: mark 20_util/scoped_allocator/noexcept.cc R-E-T hosted 2023-11-10 00:10:51 +01:00
shared_ptr libstdc++: Deprecate std::atomic_xxx overloads for std::shared_ptr 2023-11-11 00:41:08 +00:00
specialized_algorithms libstdc++: Remove dg-options "-std=gnu++2a" from constrained algo tests 2023-09-15 21:57:39 +01:00
steady_clock Update copyright years. 2023-01-16 11:52:17 +01:00
synchronized_pool_resource libstdc++: Simplify dejagnu directives for some tests using threads 2023-09-15 21:57:40 +01:00
system_clock Update copyright years. 2023-01-16 11:52:17 +01:00
time_point libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
time_point_cast Update copyright years. 2023-01-16 11:52:17 +01:00
to_address libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
to_chars libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
to_underlying libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
tuple libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
type_identity/requirements libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
typeindex libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
underlying_type/requirements Update copyright years. 2023-01-16 11:52:17 +01:00
unique_ptr libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
unreachable libstdc++: Remove dg-options "-std=gnu++23" from remaining tests 2023-09-15 21:57:40 +01:00
unsynchronized_pool_resource Update copyright years. 2023-01-16 11:52:17 +01:00
unwrap_reference libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
uses_allocator libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
variant libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
void_t Update copyright years. 2023-01-16 11:52:17 +01:00
weak_ptr libstdc++: Remove dg-options "-std=gnu++20" from 20_utils tests 2023-09-16 00:10:45 +01:00
rel_ops.cc Update copyright years. 2023-01-16 11:52:17 +01:00
temporary_buffer.cc Update copyright years. 2023-01-16 11:52:17 +01:00
variable_templates_for_traits.cc Update copyright years. 2023-01-16 11:52:17 +01:00