1 // { dg-require-effective-target c++11 }
2 
3 template<typename> struct A {};
4 template<typename T1, typename T2 = typename T1::value> using alias1 = A<T1>;
5 template<typename T> class B {
6   using alias2 = alias1<A<T>>; // { dg-error {no type named 'value'} }
7   A<alias2> a; // { dg-bogus {no type named 'value'} }
8 };
9 B<int> b;
10