// 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 "non-template" "non" } // { dg-error "not declare" "decl" { target *-*-* } 15 } // { dg-message "note" "note" { target *-*-* } 15 } } void bar() { foo(); }