bryan@UUNET.UU.NET (Bryan Boreham) (06/15/89)
The example: class Root { public: virtual int foo(); }; class Object : public Root {}; class derived : public Object {}; class derived : public Object {}; The bug: kewill% g++ -v bug4.cc g++ version 1.35.1- /usr/local/lib/gcc-cpp -+ -v -undef -D__GNU__ -D__GNUG__ -D__cplusplus -Dmc68000 -Dsun -Duni x -D__mc68000__ -D__sun__ -D__unix__ -D__HAVE_68881__ -Dmc68020 bug4.cc /tmp/cca09455.cpp GNU CPP version 1.35 /usr/local/lib/gcc-cc1plus /tmp/cca09455.cpp -quiet -dumpbase bug4.cc -noreg -version -o /tm p/cca09455.s GNU C++ version 1.35.1- (68k, MIT syntax) compiled by GNU C version 1.35. bug4.cc:4: redeclaration of derivation chain of type `derived' bug4.cc:4: redefinition of `struct derived' bug4.cc:5: Segmentation violation g++: Program cc1plus got fatal signal 11. System is a Sun 3/280, running SunOS 3.5. ET++ porting still going strong; drop me a line if you want to compare notes. Bryan Boreham bryan@kewill.uucp (in England) Software Engineer {Atlantic Ocean} ... !mcvax!ukc!root44!kewill!bryan Kewill Systems PLC Work: (+44) 932 248 328 Bryan's Law: "It always takes less time to do it properly."