Dass es keinen Type constraint auf enum gibt (durch den inline comment angedeutet) und das Ding bei T von einem Nicht Enum Type auseinander fliegt.
Jo, klar. Es wird eine
Exception geworfen, aber immerhin eine sinnvolle

Bleibt dann mal zu hoffen, dass sprachlich einfach mal nachgebessert wird.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)