I'd like to allow usages like
```
enum E {
    A = 1<<0,
    B = 1<<1
}
Flags!E flags = [Enum.A, Enum.B];
flags &= ~Enum.B;
```
as it is consistent with the existing practice.
Also, only runtime protection could be enforced, which is not a huge win.