Subject: Re: [boost] C++03 / C++11 compatibility question for compiled libraries
From: Edward Diener (eldiener_at_[hidden])
Date: 2018-02-19 17:52:43
On 2/19/2018 3:48 AM, Pete Bartlett via Boost wrote:
>> On 18 Feb 2018, at 21:36, Edward Diener via Boost <boost_at_[hidden]> wrote:
>>> On 2/18/2018 3:44 PM, Robert Ramey via Boost wrote:
>>>> On 2/18/18 2:12 AM, Olaf van der Spek via Boost wrote:
>>>> On Sat, Feb 17, 2018 at 7:55 PM, Robert Ramey via Boost
>>>> <boost_at_[hidden]> wrote:
>>>>> What does "drop support" mean?
>>>>> a) libraries should fail to compile with C++03? Any library which does so
>>>>> should be considered "broken" in some sense?
>>>>> b) libraries should/must be implemented in C++11(+?)? Any library which
>>>>> isn't should/would be considered "broken"
>>>>> c) libraries should/must be compilable with C++11(+?)? Any libraries which
>>>>> don't would be considered broken.
>>>> None of the above, but you already knew that, didn't you?
>>> No. It's a serious question. The phrase "drop support" is confusing to me in the context of Boost.
>> Exactly ! There has been lots of noise about "dropping c++03" support but very little substance which explains what it means.
> To speak frankly, only you and Robert are being pedantic on the issue. The rest of the threadâs contributors seem to have a common understanding of what âdropping supportâ is whether you are talking about new or existing > > libraries.
Care to tell me what that "common understanding" is ? I truly have no
idea what people mean by it in relation to Boost libraries that can be
built and used in C++03 mode. Do you really mean that if a library can
be built and used in C++03 mode it should be dropped from Boost, even if
it works fine when built and used in the latest C++ mode supported by
compilers ? Inquiring minds actually want to know what is meant by
"dropping c++03" support. This is not pedantic issue. It is an attempt
to understand what "dropping c++03" support actually means to the people
who keep mentioning it.
> Unfortunately the meta-problem is that the API compatibility issue is extremely bikeshedable, as this thread shows. Thereâs no definitive answer as different maintainers will attach different value to a library working with a particular compiler.
> To continue the bikeshed analogy, the nuclear power power plant bit is the ABI problem. As someone (Peter?) said quite a few messages ago now, there isnât a good solution within Boost, so we talk about a different problem.