On Tuesday, 27 May 2025 10:32:13 Brasilia Standard Time Fabio Alemagna via
Std-Proposals wrote:
> Il giorno mar 27 mag 2025 alle ore 15:23 Thiago Macieira via Std-Proposals <
>
std-proposals@lists.isocpp.org> ha scritto:
> > [...] An equality operator
> > alone won't suffice, because then the order of case labels would matter,
> > which
> > seems ill-advised to me.
>
> Why would the order matter? You're looking for an item in a unordered set.
> Of course, having other operators or even a hash function defined for the
> specific type would make it possible to optimize the search.
Because, with user types and weak ordering, two different entries in the case
list could be equivalent to the sought item. That is, we could have A equiv. B
and A equiv. C. Should the compiler require that therefore B equiv. C? Would
it need to enforce that by performing the O(nē) checks at compile time, or
would that just be declared UB or EB?