// PR c++/47974 typedef double T; struct A { template void foo(); // { dg-error "type" "" { target c++17_down } } }; template > struct B {}; // { dg-error "type|declared|could not convert" "" { target c++17_down } } B<> b; // { dg-message "" "" { target c++17_down } }