This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: G++ ABI mismatches
- From: Nathan Sidwell <nathan at codesourcery dot com>
- To: Chris Lattner <sabre at nondot dot org>
- Cc: cxx-abi-dev at codesourcery dot com, gcc at gcc dot gnu dot org
- Date: Mon, 25 Aug 2003 08:47:51 +0100
- Subject: Re: G++ ABI mismatches
- Organization: Codesourcery LLC
- References: <Pine.LNX.4.44.0308250021480.16770-100000@nondot.org>
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@codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk