1 // { dg-do assemble } 2 3 struct S1 4 { 5 ~S1(int); // { dg-error "" } destructors may not have parameters 6 }; 7 8 9 template <class T> 10 struct S2 11 { 12 ~S2(int); // { dg-error "" } destructors may not have parameters 13 }; 14 15 16 struct S3 17 { ~S3S318 ~S3(double) {} // { dg-error "" } destructors may not have parameters 19 }; 20 21 22 template <class T> 23 struct S4 24 { ~S4S425 ~S4(double) {} // { dg-error "" } destructors may not have parameters 26 }; 27 28 29 struct S5 30 { 31 ~S5(); 32 }; 33 ~S5(float)34S5::~S5(float) // { dg-error "" } destructors may not have parameters 35 { 36 } 37 38 39 template <class T> 40 struct S6 41 { 42 ~S6(); 43 }; 44 45 template <class T> ~S6(float)46S6<T>::~S6(float) // { dg-error "" } destructors may not have parameters 47 { 48 } 49 50 51 52