Boost logo

Boost :

Subject: Re: [boost] C++03 / C++11 compatibility question for compiled libraries
From: Olaf van der Spek (ml_at_[hidden])
Date: 2018-02-21 10:52:15


On Sun, Feb 18, 2018 at 2:56 PM, Glen Fernandes via Boost
<boost_at_[hidden]> wrote:
> Olaf van der Spek wrote:
>>
>> Glen Fernandes wrote:
>>> Before I became a contributor to Boost, and before I became a Boost
>>> library author, I was a user of Boost at Microsoft. Even as late as
>>> 2014 when I left the company, those projects depended on Boost for
>>> C++03 support. (In fact, at least one of the projects only dropped
>>> C++03 support as late as 2016).
>>
>> Where did the C++03 support requirement come from though, an old compiler?
>> Even VS 2010 knows some C++11 stuff.
>
> Supporting teams that were still on older compilers was the motivation, yes.

I'm curious, what'd be the oldest compiler in use (there) anno 2018 and why?
MS has made a lot of progress in 2015 and 2017 IMO.

> Boost was upgraded more frequently than upgrading to a newer compiler
> (even though in this particular case, the compiler was developed
> within the same company). For that project I referenced which dropped
> C++03 support in 2016, they also dropped VC10 support in the same
> year.

What compiler did they switch to?

> Those projects came to depend on the reliability of Boost for its
> implementation of standard library facilities that were otherwise
> defective in VC that wouldn't be fixed until the next major release of
> the compiler, while Boost releases were every few months.
>
> Even trivial standard library things like std::ref, std::addressof,
> std::unique_ptr::~unique_ptr (wrong order of operations in VC10, fixed
> in VC11), std::align (wrong return value in VC11, fixed in VC12),
> std::call_once (was 1500 times slower than InitOnceExecuteOnce, fixed
> in VC14), the list went on.

Makes sense.

-- 
Olaf

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