// PR c++/8736 // Origin: Peter Kolloch // { dg-do compile } template struct A { template struct B { typedef int X; }; }; template void foo() { typedef typename A::B::X Y; // { dg-error "" } } void bar() { foo(); }