$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
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.