1 // RUN: %clang_cc1 -std=c++2a -x c++ %s -verify
3 template<typename T
, int a
>
7 // expected-error@-1 {{'C1' requires more than 1 template argument; provide the remaining arguments explicitly to use it here}}
16 template<typename T
, typename U
, typename
... X
>
20 template<ns::C2 T1
, ::ns::C2 T2
>
21 // expected-error@-1 2{{'C2' requires more than 1 template argument; provide the remaining arguments explicitly to use it here}}
22 requires (sizeof(T1
) <= sizeof(T2
))
25 template<ns::C2
<int> T1
, ::ns::C2
<char, T1
> T2
>
26 requires (sizeof(T1
) <= sizeof(T2
))
29 using b
= B
<int, int>;
31 template<ns::C2
... T1
>
32 // expected-error@-1 {{'C2' requires more than 1 template argument; provide the remaining arguments explicitly to use it here}}
35 template<ns::C2
<int>... T1
>
38 using c1
= C
<char, char, char>;
39 using c2
= C
<char, char, char, char>;