// { dg-do assemble } template struct A { typedef T A_Type; }; template struct B : public A { typename B::A_Type Func(); }; template typename B::A_Type B::Func() { }