// { dg-do compile } // { dg-options "-g" } template using decay_t = _Tp; template struct A; template struct B { B(A); }; template struct C { template using constructor = B>; typedef constructor dummy; }; template struct D {}; C a; D> fn1() { fn1, a; return D>(); }