
On Mon, Jan 28, 2013 at 6:18 PM, Joel de Guzman <djowel@gmail.com> wrote:
On 1/28/13 10:17 PM, Paul Smith wrote:
On Tue, Jan 22, 2013 at 2:25 AM, Joel de Guzman <djowel@gmail.com> wrote:
I *always* use variant< blank, ... > (or something similar). And that is precisely why I don't care much about the never-empty guarantee.
I hope you *always* use variant<blank, ...> because it makes sense in the cases you use it, and not just because that's the way the cookie crumbles. I also hope you appreciate that not everybody vacuously uses variant like that, nor should they.
Anyway, you're lucky then. Peter's solution will give you as much benefit as a nulled recursive_wrapper. Where's the problem?
The problem is that it is a workaround for something that I no longer think as necessary. It is a workaround that goes around the problem that *all* proxy-like classes will have given your view of how move should behave.
Yup, that's right. Except that it's not really my view, and I definitely don't want to be holding the flag for conservative move semantics. I'm just describing how things are (as far as I understand them). -- Paul Smith