2 // { dg-do compile { target c++17 } }
5 foo (unsigned x, unsigned y)
10 template <typename, typename> struct A;
11 template <auto ...> struct B;
12 template <auto S, auto ... T, auto U, auto ... V>
13 struct A <B <S, T...>, B <U, V...>>
17 u = foo (sizeof (S), sizeof (U)),
18 v = A <B <T...>, B <V...>>::w,
26 enum : unsigned { w = 0 };
29 constexpr static const auto v { A <B <1,2,3,4,5,6,7,8,9>,
30 B <9,8,7,6,5,4,3,2,1>>::w };
31 static_assert (v == sizeof (int));