// { dg-do compile } // Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de> // PR c++/10555: ICE for member class template when one of the // template argument levels contains errors. template <typename> struct A { template <typename> struct B; }; template <typename T> struct C { typedef typename A<T>::template B<U> X; // { dg-error "declared|invalid" } }; C<void> c;