This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: HPUX C++ ABI
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: gcc at gcc dot gnu dot org, jessica at cup dot hp dot com, sje at cup dot hp dot com
- Date: Thu, 12 Sep 2002 13:53:07 -0400
- Subject: Re: HPUX C++ ABI
- References: <26570000.1031852797@warlock.codesourcery.com>
On Thu, Sep 12, 2002 at 10:46:37AM -0700, Mark Mitchell wrote:
> I've been talking to folks at HP about the C++ ABI in aCC.
>
> They implemented the C++ ABI in aCC using earlier versions of the ABI
> spec. Due to changes in the spec, and a few mistakes, aCC doesn't
> match up with G++. Because aCC is already in production use, they don't
> want to make changes to aCC. But, they do want people to mix G++ and
> aCC objects.
>
> The solution HP is proposing is to make HPUX-only tweaks to the C++ ABI
> in G++ so that on HPUX G++ behaves like aCC.
>
> This is a big project, but nowhere near as big a project as (say)
> implementing Sun's C++ ABI in G++; aCC is an "almost-compliant"
> compiler in much the same way that G++ is.
>
> I believe we should accept these patches, with three caveats:
>
> (1) We are convinced that they cannot possibly affect the ABI on
> other platforms.
>
> (2) We do not take responsibility for making sure they continue
> to work; our responsibility is to maintain the main ABI.
>
> (3) The patches do not so complicate the front end as to make us
> nervous about our ability to understand what is going on.
>
> There is a slippery slope argument that "everyone else will want us to
> support there variant of the ABI too". But, there is no everyone else;
> HP is the only vendor with an installed base that does not feel they
> can make changes to their ABI.
>
> Jessica, Steve, how close to think you are to achieving interoperability?
> (It doesn't seem to me that there's too much point in accepting patches
> for G++ to get closer to aCC unless you can get all the way; do you think
> you understand all the things you need to do in order to get g++ to match
> aCC?)
>
> What do others think?
This sounds reasonable to me, but thinking about the last such patch I
saw from Jessica, I have a request - there should be a new switch (or
macro if you prefer) to control this bug-compatibility. That makes it
much clearer to an observer why the code is there and what it
accomplishes, then if it is just keyed off the target macro as it was.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer