Package: libstdc++2.10-glibc2.2 Version: 1:2.95.3-8 ==== BEGIN TRANSCRIPT ================================================ [EMAIL PROTECTED]:~% cat foo.cpp #include <unistd.h>
class EX { public: EX() { write(2,"XCR\n",4); } virtual ~EX() { write(2, "XD\n", 3); } EX(const EX&) { write(2, "XCP\n", 4); } }; class EY : public virtual EX { public: EY() { write(2,"YCR\n",4); } ~EY() { write(2, "YD\n", 3); } EY(const EY&) { write(2, "YCP\n", 4); } }; int main() { try { throw EY(); } catch(const EY&) { } return 0; } [EMAIL PROTECTED]:~% gcc -o foo foo.cpp [EMAIL PROTECTED]:~% ./foo XCR YCR XCR YCP YD XD YD XD [EMAIL PROTECTED]:~% gcc -o foo foo.cpp -lstdc++ [EMAIL PROTECTED]:~% ./foo XCR YCR XCR YCP YD XD zsh: 11278 illegal hardware instruction ./foo [EMAIL PROTECTED]:~% ==== END TRANSCRIPT ================================================ This program does not require libstdc++... However, if libstdc++ is linked in, the program crashes... This problem occurs only on the mips architecture. Well, actually, a bigger program (aleph package) has the same problem (works when NOT linked with libstdc++, crashes when linked with libstdc++) on both mips and arm. I isolated the problem to this simple test case on mips. Phil.