1 // { dg-do compile { target c++11 } } 2 3 // Alias template of non-class types. 4 5 template <class T, class U> struct same; 6 template <class T> struct same<T,T> {}; 7 8 template <class T> using Ptr = T*; 9 template <template <class> class T> struct A { 10 template <class U> using X = T<U>; 11 }; 12 same<A<Ptr>::X<int>,int*> s; 13