Boost logo

Boost :

Subject: Re: [boost] [optional] Regression in develop
From: Peter Dimov (lists_at_[hidden])
Date: 2017-10-30 14:25:16


Andrzej Krzemienski wrote:
> 2017-10-30 13:02 GMT+01:00 Peter Dimov via Boost <boost_at_[hidden]>:
> > That is, the issue only occurs when (a) the compiler is gcc >= 4.9,
> > clang, Sun, (b) the compiler has intrinsic support for
> > __has_trivial_constructor, (c) instantiating the type's default
> > constructor is a hard error.
>
> Is the above a conjunction of (a) and (b) and (c)?

It is.

> This sounds like the trait works fine and it is just implementations of
> `std::pair` that are not SFINAE friendly.

In principle the issue should not be pair-specific and should affect all
kinds of user classes, but in practice I've trouble reproducing it with
anything else besides std::pair. No idea yet what specifically in std::pair
causes it.


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