// { dg-do compile } // We used to reject this code as the extension // for default arguments being accepted as less the // needed template arguments. template struct match { }; template class t,typename T> struct match > { typedef int type; }; template class t,typename T0,typename T1> struct match > { typedef int type; }; template struct other { }; typedef match >::type type;