Boost logo

Boost :

Subject: Re: [boost] [variant2] Andrzej's review -- design
From: Peter Dimov (pdimov_at_[hidden])
Date: 2019-04-02 20:59:06


Andrzej Krzemienski wrote:

> Can you show a destructor like that, does a visitatoin on a variant, and
> that you wouldn't be ashamed to put in your program?

The destructor doesn't have to do visitation. It merely needs to call a
function f1, which calls a function f2, which calls a function f3, which
calls a function f4, which does visitation.

What we've been telling you from the start is that this forces you to
partition your functions into two classes, one allowed to do visitation, the
other not, then keep track of which is which, never calling the wrong class
in a destructor, or from a catch clause.

And, of course, this has nothing to do with visitation, specifically. The
exception safety guarantee is a global thing. Once you lose basic, you lose
it everywhere, not just for visit.


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