 |
|
|
|
Actions
|
|
[ Date Prev][ Date Next][ Thread Prev][ Thread Next][ Date Index][ Thread Index]
Re: G++ ABI mismatches
- To: Richard Henderson <rth@xxxxxxxxxx>
- Subject: Re: G++ ABI mismatches
- From: Nathan Sidwell <nathan@xxxxxxxxxxxxxxxx>
- Date: Tue, 26 Aug 2003 09:14:10 +0100
Richard Henderson wrote:
On Mon, Aug 25, 2003 at 08:47:51AM +0100, Nathan Sidwell wrote:
... I also noticed that G++ is building __cxa_begin_catch with type
void*(*)(void*), instead of void(*)(void*) as it is defined in section
2.5.3 of the ABI spec.
Which one is wrong?
gcc's implementation is incorrect. its return value is never used
This is false.
The return value is the adjusted pointer to the exception object.
Consider the following test case, which shows that pointer adjustment
must happen on a per-handler basis.
doh! In grepping for cxa_being_catch I forgot that the compiler
generates those calls. <slaps forehead>
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
The voices in my head said this was stupid too
nathan@xxxxxxxxxxxxxxxx :: http://www.planetfall.pwp.blueyonder.co.uk
|
|