This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: new concept checks and the 3.0 ABI
- To: Gabriel Dos Reis <Gabriel dot Dos-Reis at cmla dot ens-cachan dot fr>
- Subject: Re: new concept checks and the 3.0 ABI
- From: Theodore Papadopoulo <Theodore dot Papadopoulo at sophia dot inria dot fr>
- Date: Fri, 06 Apr 2001 21:34:16 +0200
- Cc: Joe Buck <jbuck at racerx dot synopsys dot com>, jason_merrill at redhat dot com (Jason Merrill), bkoz at redhat dot com (Benjamin Kosnik), jbuck at synopsys dot COM (Joe Buck), libstdc++ at gcc dot gnu dot org
Gabriel.Dos-Reis@cmla.ens-cachan.fr said:
> | Honestly, I do not see the library can be freezed
> | althought I admit that it would be a very nice thing to do.
> | Now, the next question is, can we do something to minimize the
> | effects as much as possible. Maybe, this is already done, I do not
> | know.
> Even then, there are outstanding defects which still need to be
> resolved, I cannot make any promise that the resolutions won't break
> anything and I can hardly imagine users not wanting to see the fixes
> in the next releases.
Definitely. By minimize, I did not mean making any promise, but maybe
take action (if possible at all), to minimize the impact of a change.
The ideal would be not to break anything visible to the user, but
that's probably impossible... This is at the code level, then things
can be done at the documentation level, not to avoid a break of ABI
but to inform the user of the "potential danger" of a break for a
given feature.
> I never propose to break binary compatibility in minor releases --
> that would be pointless. But the fact is that freezing libstdc++ ABI
> in the current state either means a lie or stopping any development.
I never intended to say that you proposed such a thing. What I seem
to remember was that around this same time, there were "promises"
that after 3.0 there will be no ABI break (and IIRC it was after this
discussion of STL break). At least, I interpreted this way at the
time and I guess I was not the only one... I should have though a
little more....
> Maybe. But I don't have any idea of what that would mean... Any
> suggestion of scale?
Something like a number between 0 and 10, with 0 meaning "definitely
this will break at the next major release" and 10 "very unlikely" :-)
Basically, just something that gives a vague idea of the state of
estimated stability at the time of each new release.
Given the current state, age and C++ implementation (not a criticism
of the current implementation of libstdc++-v3, just the fact that I
do not thing that such a library can ever be declared stable since it
is based on templates and inlining, unless some incredible wizardery,
I cannot even imagine is added to the C++ compilers), I cannot even
see how a stable standard lib is achievable. So informing the users
might be the best thing that can be done....
--------------------------------------------------------------------
Theodore Papadopoulo
Email: Theodore.Papadopoulo@sophia.inria.fr Tel: (33) 04 92 38 76 01
--------------------------------------------------------------------
PGP signature