1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// PR c++/20173 template<typename AT> struct A{ template<typename T> void function(T){} }; template<> template<typename T> void A<int>::function(T){} template<> template<typename T> void A<double>::function(T*){} // { dg-error "match" }