On 4/3/2014 7:19 PM, bearophile wrote:
I have asked for fully typesafe enums in D,
You can do this: struct MyInt { int x; alias this x; ... put your various constraints here ... }to get typesafe enums. In fact, you can use this construct to create a type that overrides selected behaviors of any other type.