Subject: Re: [boost] lockfree workaround for msvc compiler bug (was Re: Boost 1.61.0 Release Candidate 2)
From: Tim Blechmann (tim_at_[hidden])
Date: 2016-05-11 14:17:37
-----BEGIN PGP SIGNED MESSAGE-----
>>>>> we could add a release note: Due to a bug in VS 2015 Update
>>>>> 2 boost.lockfree might
>>> trigger error C2338.
>>>> This is not a bug. I think I've explained this sufficiently.
>>> I think I agree with Tim on this. The code is valid according
>>> to the standard, and the compiler rejects it.
>> But it's not a bug if it is done on purpose.
> The behavior contradicts the standard and therefore is a bug. The
> intention doesn't matter.
* msvc had a bug
* boost.lockfree didn't trigger the bug
* msvc fixed the bug, rejecting valid code which didn't trigger a bug
* from the point of view of boost.lockfree this is a regression
it is perfectly fine to introduce one bug (even a regression) on
purpose in order to fix another. i can absolutely understand the
rationale behind it. however the wording that "This is not a bug" and
"If this has already been fixed in 1.61.0, then that's great" is
unprofessional: it implies that the behavior is standard-compliant and
that the user code (boost.lockfree) contains a bug, while in truth
boost.lockfree would have to work around a compiler bug.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
-----END PGP SIGNATURE-----
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk