forked from boostorg/optional
This caused problems because: optional<T> o = 0; always worked. But often it would create an uninitialized optional.
This caused problems because: optional<T> o = 0; always worked. But often it would create an uninitialized optional.