1// PR c++/23211 2// { dg-do compile } 3 4template<class T> 5struct foo 6{ 7 typedef int jtype; 8 struct bar 9 { 10 using typename foo<T>::jtype; // { dg-error "not a base type" } 11 using foo<T>::jtype; // { dg-error "not a base type" } 12 }; 13}; 14 15template <class T> 16struct A : T 17{ 18 using T::i; 19 using typename T::type; 20}; 21 22struct B1 {}; 23template <class T> struct B2 {}; 24 25template <class T> 26struct C : B1, B2<T> 27{ 28 using B1::x; // { dg-error "no member" } 29 using B2<T>::y; 30 using typename B2<T>::type; 31}; 32