2 // { dg-do compile { target c++11 } }
4 template<typename...> struct A1;
5 template<template<int...> class T> struct A1<T<0> > {};
6 template<typename...> struct A2;
7 template<template<int...> class T> struct A2<T<0, 1> > {};
8 template<typename...> struct A3;
9 template<template<int, int...> class T> struct A3<T<0, 1> > {};
10 template<typename...> struct A4;
11 template<template<typename...> class T> struct A4<T<int> > {};
12 template<typename...> struct A5;
13 template<template<typename...> class T> struct A5<T<int, long> > {};
14 template<typename...> struct A6;
15 template<template<typename, typename...> class T> struct A6<T<int, long> > {};
16 template<int> struct B1 {};
17 template<int, int> struct B2 {};
18 template<typename> struct B3 {};
19 template<typename, typename> struct B4 {};
24 A5<B4<int, long> > a5;
25 A6<B4<int, long> > a6;