diff options
author | Patrick Palka <ppalka@redhat.com> | 2022-03-04 10:17:30 -0500 |
---|---|---|
committer | Patrick Palka <ppalka@redhat.com> | 2022-03-04 10:17:30 -0500 |
commit | 074d283e249c7295d783a08eb6f0219a7f411c50 (patch) | |
tree | fd52baeb0dd6c2c3ced72387cab11e6d027b74cb /gcc | |
parent | 73baba1ae1b8f3618c2d3b674117b8a462e0ca76 (diff) | |
download | gcc-074d283e249c7295d783a08eb6f0219a7f411c50.zip gcc-074d283e249c7295d783a08eb6f0219a7f411c50.tar.gz gcc-074d283e249c7295d783a08eb6f0219a7f411c50.tar.bz2 |
c++: Add testcase for already fixed PR [PR103443]
Fixed by r12-7264.
PR c++/103443
gcc/testsuite/ChangeLog:
* g++.dg/cpp2a/consteval29.C: New test.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/g++.dg/cpp2a/consteval29.C | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/cpp2a/consteval29.C b/gcc/testsuite/g++.dg/cpp2a/consteval29.C new file mode 100644 index 0000000..6159022 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp2a/consteval29.C @@ -0,0 +1,20 @@ +// PR c++/103443 +// { dg-do compile { target c++20 } } + +template<int...> +struct A { }; + +template<int... Is> +consteval unsigned index_sequence2mask(A<Is...>) { + if constexpr (sizeof...(Is) == 0u) + return 0u; + else + return ((1u << Is) | ...); +} + +template<unsigned Mask = index_sequence2mask(A<1,2,3>{})> +void use_mask(); + +int main() { + use_mask(); +} |