G++ ABI mismatches
Nathan Sidwell
nathan at codesourcery.com
Mon Aug 25 07:47:51 UTC 2003
Chris Lattner wrote:
> In addition to this discrepency:
> http://gcc.gnu.org/ml/gcc/2003-08/msg01422.html
>
> ... 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 (in gcc's
runtime), and its implementation has the following
// ??? No sensible value to return; we don't know what the
// object is, much less where it is in relation to the header.
return 0;
for one of its returns :)
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
The voices in my head said this was stupid too
nathan at codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk
More information about the cxx-abi-dev
mailing list