P0917R4 — Making operator?: overloadable
EWG
This paper proposes user-defined overloads of `operator?:`. In addition to normal function calls, `operator?:` can also be defaulted, in which case it simply defines a common type to use for the built-in conditional operator. To avoid a breaking change, user-defined overloads of `operator?:` are only considered when no built-in candidate is viable.