This has been my expectation as well, but haven't seen this in real life.
I guess the main issue is that the compiler will need to also ensure no value outside the expected set can match a case statement either (no match and default cases), which kinda negates the benefit.
Maybe there are cases this is generated, anyone seen compiler generating those?
I wonder whether it is possible to generate reversible (almost) perfect "hashes"?
I mean a hash where every unique input value is guaranteed to map to a unique output value. Because this kind of hash could be used to handle no-match/default case safely.