Boost logo

Boost :

Subject: Re: [boost] Updated boost::base_from_member for C++2011
From: Michel Morin (mimomorin_at_[hidden])
Date: 2012-02-21 06:47:33

Michel Morin wrote:
> Ah, I see what I was missing. As Daryle said,
> the destruction of a MemberType temporary is invoked in noexcept operator.
> I didn't notice this, because clang does not evaluate the destructor.

Sorry, this is incorrect.
Clang **does** checking the destructor in noexcept operator.

I didn't know of N3204 (deducing noexcept for destructors),
and I made a wrong comment on clang's noexcept operator.

As per N3204 (clang already implemented this),
with the following type

    struct type
        type() noexcept;
        ~type() { throw 0; }

`noexcept(type())` should return true,
despite the fact that the destructor throws.


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