Boost logo

Boost :

Subject: Re: [boost] [config] [regression] Regression test failures due to compiler bugs -- your advice needed
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2015-01-21 16:14:47


On Thu, Jan 22, 2015 at 12:10 AM, Andrzej Krzemienski
<akrzemi1_at_[hidden]> wrote:
> 2015-01-21 21:56 GMT+01:00 Peter Dimov <lists_at_[hidden]>:
>>
>> An optional<T&> that fails silently for certain T's in a quite insidious
>> way on a wide array of popular compilers, including all versions of MSVC,
>> should perhaps be disabled for those T's outright, instead of the failures
>> being marked. Users do not consult the markup when using optional<> and
>> even if they did, optional<int const&> is most likely to occur in generic
>> code, not on its own. This will result in some very hard to track bugs.
>
> Are you saying that on a compiler where an operation on optional<T&> might
> give wrong run-time result, the operation should be disabled (render a
> compile-time error)? If so, I agree, and intend to do it at some point. But
> even then I should indicate somehow in regression tests that I expect
> different results in gcc and in msvc.

What kind of errors are we talking about? Does optional<T&> behave
plain wrong on MSVC or is there a misbehavior in some narrow case?
Does it compile invalid code, does it not compile valid one, or is
there a miscompilation?


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