4 Apr
2019
4 Apr
'19
6:56 a.m.
Going back to variant, in one case, we are defining an empty state, which forces the user to provide explicit handling for that state, *everywhere*. You keep repeating that the user would have to explicitly handle that everywhere. I thought I just showed you that this is not the case. Except for visit, you don't have to explicitly handle the valueless state at all and even in the case of visit, you might be fine with std::visit just throwing an exception, because that is indeed an exceptional circumstance. I don't see this *everywhere* at all. Best Mike