(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
cpp2a/
concepts-template-parm1.C
// { dg-do compile { target c++20 } }

template<typename T>
concept Int = __is_same_as(T, int);

// Type template parameters
template<Int T = int> struct S1 { };
template<Int = int> struct S2;
template<Int T> struct S2 { };

// Non-type template parameters
template<Int auto N = 0> struct S3 { };
template<Int auto = 0> struct S4;
template<Int auto N> struct S4 { };

S1<> s1;
S2<> s2;
S3<> s3;
S4<> s4;