Boost logo

Boost :

Subject: Re: [boost] Outcome v2
From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2017-07-13 19:51:36

>>>> A majority of peer review feedback didn't see the need for variant
>>>> storage. Eliminating it very significantly reduces the complexity of the
>>>> implementation, it's a big gain. I was able to SFINAE all the
>>>> constructors because of the compile time budget released by eliminating
>>>> the variant storage.
>>> If you're going to maintain strict no-value-plus-error semantics then
>>> union/variant storage makes sense, as otherwise you're wasting memory.
>>> I'm not sure why this would increase complexity.
>> I did some benchmarking before making the change to non-variant storage,
>> and found a worst case performance loss of 3-6% depending on compiler.
> Would you be willing to share some of these benchmarks? I've never
> benchmarked Noexcept, it would be interesting to see how it compares.

It would indeed be very interesting to see how much overhead TLS introduces.


ned Productions Limited Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at