// { dg-do assemble } // { dg-options "-Wno-deprecated" } template struct A { typedef T A_Type; }; template struct B : public A { A_Type Func(); // { dg-error "does not name a type" "err" } implicit typename // { dg-message "note" "note" { target *-*-* } 14 } }; template B::A_Type B::Func() { // { dg-error "typename" } implicit typename }