Boost logo

Boost :

From: Robert Ramey (ramey_at_[hidden])
Date: 2024-10-07 00:21:24


On 10/6/24 5:06 PM, Vinnie Falco via Boost wrote:
> On Sun, Oct 6, 2024 at 4:53 PM Robert Ramey via Boost <boost_at_[hidden]>
> wrote:
>
>> FYI2 - My policy is that once something is working, I don't mess with it
>> unless there is some substantive reason to do so. E.G. I wouldn't
>> change anything from one thing to another just because the later is
>> "more modern"
>>
>
> Should Boost have kept C++03?
>

This question illustrates a lack of understanding regarding C++
backwards compatibility. I have posted an explanation of this at least
a dozen times. People don't get it. Here is the LAST time.

a) Boost always required that a submission work correctly on the
compiler/library standard existent at the time of submission.

b) All subsequent versions of C++ compiler/library must be backwards
compatible with all previous versions. There have been only a handful
of exceptions to this rule in the last 30 years.

c) After acceptance, library maintainers may "upgrade" code to a later
standard at their discretion. However, they are not required to. It
should be obvious why this policy has to be the way it is. Were it not
for this policy, many boost libraries would be out of boost compliance
with the release of every new version of C++. This would impose a huge
unnecessary burden on library maintainers. And we don't have enough
library maintainers.

d) Hence, a program written to be compatible with C++03 is (almost)
guaranteed to function.

As far as I know this policy has never changed in the history of Boost.
Probably because it makes no sense to do so. The recent effort to
"deprecate" support for older compilers was a total waste of time and
effort and added nothing to boost.

Next topic:

Boost Build and the "Modularization" effort ....

Robert Ramey


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk