This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C++ ABI Issues


Allan Sandfeld Jensen wrote:

> > Patch 3.2 with a -warn-future-abi (defaults to off), and
> > use that to add warnings of known discrepancies. This should be added
> > to HEAD.
> Great idea, but I would also like it in the 3.2 branch to be included in 3.2.1
yeah, I meant add it to both.

> Unfortunatly, that way we could end up with a lot of supported patch levels.
> Another solution might just be to only support two ABI levels: 3.2 and "the
> best we can do". "The best we can do" would imply that it could change
> between any two releases, even minor ones! (3.3.1 to 3.3.2) If at one point
> we decide "the best we can do" is good enough it might be stabilized and
> become the ABI for GCC 3.4 or later.
I agree that my suggested version numbering might not be the best. The problem
with a binary switch of 3.2/best-so-far, is that we end up in the same
situation down the road when we release a new compiler with an updated
abi by default, and then discover a new bug. Maybe disociating the abi
patch level from the version number would be best, and only bumping it when
we decide to release a compiler with the best-so-far enabled.

To be specific,

Add -fabi-patch-level-n, which defaults to whatever patchlevel we deem
stable enough. At the moment this will be zero. Any abi patches
are only enabled when abi-patch-level is > stable-patch-level-at-time-of-fix

Add -warn-abi-patch-level, which defaults to off. When enabled, it will
issue a warning for any discrepancy which would be fixed by increasing
-fabi-patch-level. We could make -warn-abi-patch-level indicate the level
to which you'd like to test, the default value would then be
-fabi-patch-level.

To get the latest abi conformance, -fabi-patch-level suffices.

At some random time in the distant future, we can remove support for
lower levels of -fabi-patch-level.

nathan
-- 
Dr Nathan Sidwell   ::   http://www.codesourcery.com   ::   CodeSourcery LLC
         'But that's a lie.' - 'Yes it is. What's your point?'
nathan@codesourcery.com : http://www.cs.bris.ac.uk/~nathan/ : nathan@acm.org


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]