2 // { dg-do compile { target c++11 } }
4 template <class _T, class...>
5 using First = _T; // we should not use this
7 // one pack parameter (?)
9 template <template <class...> class _Successor,
14 using O = _Successor<_Xs...>;
17 template <class... _Pack>
21 using O = typename Overlay<List, _s, _Pack...>::O;
23 template <template <class...> class _S>
24 using Pass = _S<_Pack...>;
27 using At = typename O<_i>
28 ::template Pass<First>;
32 using At = typename List<int, char>
36 void func_crash(At<_i>&) {}
38 int main(int argc, char *argv[])