diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C')
-rwxr-xr-x | gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C b/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C new file mode 100755 index 0000000..f763480 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C @@ -0,0 +1,26 @@ +// g++ 1.36.1 bug 900205_04 + +// g++ allows a class for which an implicit default X::X() constructor must +// be created (implicitly by the compiler) to be derived from another class +// which does not have its own default X::X() constructor. This is illegal. + +// Cfront 2.0 passes this test. + +// keywords: default constructor, inheritance + +struct struct0 { + int data_member; + + struct0 (int, void *); // suppresses implicit default constructor +}; + +struct0::struct0 (int, void *) +{ +} + +struct struct0_derived_struct_0 : public struct0 { +}; // ERROR - + +// struct0_derived_struct_0 object; // would give g++ error if compiled + +int main () { return 0; } |