This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: running 4.4 libstdc++ testsuite using 4.5's libstdc++ shared library
Jonathan Wakely wrote:
> On 26 June 2010 19:01, Mark Mitchell wrote:
>> But, I do think we should make that clear by changing the SONAME when we
>> are aware of an incompatible change, even to "experimental" stuff. Or
>> else, we should completely disable experimental stuff in releases,
>> unless some special configuration option is used. I think we shouldn't
>> have the experimental stuff out there in a way that people can use it
>> *and* change its ABI *and* not adjust the SONAME.
>
> condition_variable_any was not "out there in a way that people can use
> it" unless you consider "call its default constructor" to be "use it"
> because the constructor and destructor were the ONLY functions that
> were defined.
Jonathan, I indicated yesterday that if there was no way for people to
use the functionality, then there's no compatibility problem. I'm not
picking on the libstdc++ maintainers or criticizing anyone. But, I'd
like to see agreement on the principle that ABI changes result in an
SONAME change, even for C++0x or other experimental features.
I do also agree with you that it's best not to put things into the
library until we do actually feel they are ready. But, of course, with
an evolving standard you will have to make incompatible changes at
times. That's fine; I just think you should then change the SONAME.
--
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713