blob: 7596513acc0bbad2e257785b0270f0b3f91e0cd2 [file] [log] [blame]
// { dg-do assemble }
template <class T>
struct S1; // { dg-message "previous declaration" }
template <class T, class U>
struct S1 {}; // { dg-error "redeclared" } used 1 template parameter
template <class T = int> // { dg-message "original definition" }
struct S2;
template <class T = int> // { dg-error "redefinition of default" }
struct S2;
template <class T> // { dg-error "template parameter" }
struct S3;
template <int I> // { dg-message "note: redeclared here" }
struct S3;
template <template <class T> class C> // { dg-message "note: redeclared here" }
struct S3;