From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joe Buck To: khan@xraylith.wisc.edu (Mumit Khan) Cc: hjl@lucon.org, egcs@cygnus.com Subject: Re: EH bug in Makefile.in Date: Sat, 25 Oct 1997 20:34:00 -0000 Message-id: <199710260332.UAA08639@atrus.synopsys.com> References: <199710251645.LAA18043@eh_pc11.xraylith.wisc.edu> X-SW-Source: 1997-10/msg01074.html Mumit writes: > d. stock + gas-971023 + -fexceptions: 3 failures in total > > Looks like HJ Lu's suggestion that eh.o (libgcc2.c) must be compiled with > -fexceptions is right on the money here. Yes, I've just confirmed this (well, my gas, from 2.8.0.1.15, calls itself 970731: is this what you meant?). With my stock Red Hat 4.2 Linux, changing Makefile.in to use -fexceptions for libgcc2 and installing a copy of the new gas as $(libsubdir)/as, I get FAIL: g++.benjamin/warn01.C (test for excess errors) XPASS: g++.jason/destruct3.C - (test for bogus messages, line 38) FAIL: g++.jason/template31.C (test for excess errors) XPASS: g++.mike/dyncast1.C Execution test XPASS: g++.mike/dyncast2.C Execution test FAIL: g++.mike/eh35.C Execution test Pretty impressive! Question though: do folks think MRS's exception tests cover the problem areas well, or are there other failure modes (someone mentioned that delete is not called if a contructor for an object allocated by new throws an exception, are there others?)? As you know, I've been eager to permit use of egcs on older Linux systems with the egcs compiler installed in a different directory (I use /usr/local/egcs as prefix). I'm willing to accept dropping in a new gas to do this (I built mine without enable-shared so I just have one file to deal with, at least until I upgrade the whole system). If it were trivial to modify things so that an older gas would work as well, that would be nice but it should be low priority.