Boost logo

Boost :

Subject: Re: [boost] The future and present of Boost
From: Mike Dev (mike.dev_at_[hidden])
Date: 2018-10-24 19:10:02


> -----Original Message-----
> From: Boost <boost-bounces_at_[hidden]> On Behalf Of Peter Dimov via Boost
> Sent: Wednesday, October 24, 2018 6:44 PM
>
> Mike Dev wrote:
> > > We can switch to std::function unconditionally, but only if we drop
> > > C++03 (for some definition of C++03 because only the latest and greatest
> > > MSVC is ~fully C++11 compliant.)
> >
> > That's my point: I don't want boost libraries to invest any more effort in
> > maintaining c++03 support (I think I made that clear in the last ml-thread
> > about this 2-3 month ago).
>
> It's clear to all that everyone is held back by the inability to use C++11
> things.
>
> But we can't just stop investing effort in C++03 maintenance. We have to
> officially drop C++03 at the Boost level, meaning, refuse to compile Boost
> with C++03 at all, or make it difficult, or at least make it choose an
> intelligent default that is never C++03.

It appears different people have different opinions on whether a library
can just drop c++03 support on its own. Just as different people seem to have
different opinion on whether their library should drop c++03 support at all.
But if I remember correctly, people on the ml agreed to announce just that
(dropping c++03 support boost wide) before I went off traveling.
I guess there hasn't been any new development on that front since then?

>
> Otherwise it's easy for our (g++ 5 and clang) users to end up with Boost
> libraries compiled with C++03.
>
> (Of course this just kicks the can a bit further down the road - we'll then
> need to pick between 11 and 14 as a default for g++ 5 and clang...)

I think - by default - all libraries should be compiled with the latest official
standard a particular compiler supports (that was available at the time of
its release) and tested with all supported ones.
That would be 14 for g++5 and most of clang and 17 for newer compilers.

>
> > Btw.: Feature/library wise, I believe the only c++11 thing missing from
> > MSVC2015 is full constexpr support and expressions sfinae and even
> > MSVC2013 provides most of the library and language bits.
>
> The point is that "C++11" is not useful as a requirement when it comes to
> MSVC, we need to pick a specific minimum version. 2013 is a good
> approximation of "C++11", I suppose.

True. Just as you might want to accommodate gcc4.8 which also isn't fully c++11
conformant.

Mike


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