// PR c++/11471
// Origin:  <bagnara@cs.unipr.it>
// { dg-do compile }

template<typename T> struct A
{
  typedef typename T::X X;
};

template<typename T> A<T>::X::X() {} // { dg-error "no type|invalid use" }


syntax highlighted by Code2HTML, v. 0.9.1