This is the mail archive of the
mailing list for the GCC project.
Re: GCC 3.0 Status Report
- To: mrs at windriver dot com (Mike Stump)
- Subject: Re: GCC 3.0 Status Report
- From: Joe Buck <jbuck at synopsys dot COM>
- Date: Mon, 7 May 2001 09:14:26 -0700 (PDT)
- Cc: jbuck at synopsys dot COM, gcc at gcc dot gnu dot org, mark at codesourcery dot com
> > The answer to your question is that there is no abi compatibility
> > for the library, only for the compiler.
Mike Stump writes:
> Ah, ok, thanks for the explanation. I understand the difference, I
> just hope that we communicate it with folks. From
> C++ ABI
> In order to avoid changing the C++ ABI from release to release,
> as GCC has done to date, there must be a stable ABI.
> C++ Standard Library
> The standard library is a part of the ABI. Changing the standard
> library interfaces is effectively a change in the ABI. It is
> important that we provide a standards-conforming C++ standard
> It seems to want to lump the library ABI in with the compiler one.
> This could lead to confusion, though, since it doesn't say anything
> much, it isn't wrong.
Yes, you're right, this is confusing. The reason for the confusion is
historical. Way back when we started (around the time of the egcs/FSF
reunification), some of us had fantasies about being able to freeze both
the library and the compiler ABIs for 3.0. But the library is nowhere
near ready for freezing. So it'll be the old rules for now: 3.0.x
compatible, 3.0 -> 3.1 may break something. Ideally we'll be able to come
up with something in the future that allows binary compatibility for the
library as well, but I don't think that it can be frozen until some kind
of refactoring pass is done on the STL.