// PR c++/15867 // { dg-options -Wredundant-decls } template struct S { void foo() {} }; template<> void S::foo(); template<> void S::foo(); // { dg-warning "previous declaration" } template<> void S::foo(); // { dg-warning "redundant redeclaration" }