Comment Comment by n_plus_1_acc std::optional<T> is fundamentally broken because it has an imolicit conversion (or operator* or something) to T. If you forget to check if it's empty you get UB. parent n_plus_1_acc 2 years ago