// PR c++/103852 // { dg-do compile { target c++17 } } // { dg-options "" } template struct b{}; template > struct s { s(T); }; s c(100); template > using ss = s; // equivalent under proposed resolution of DR 1286 ss tt(1); // { dg-warning "alias template deduction" "" { target c++17_only } } template using ss2 = s; // different default arg makes it non-equivalent ss2 tt2(1); // { dg-error "alias template deduction" "" { target c++17_only } }