It is not clear whether destructors in general should panic. However,
JoinGuard in the standard library currently panics on drop to propagate child thread’s panics. I am not sure whether this is the exception or the rule.
Moreover, it currently causes double panics, which is probably not desired.
Should destructors even be allowed to panic?