|
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),
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3204.htm
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.
Regards,
Michel
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk