On Monday, 24 August 2015 at 01:01:13 UTC, John Colvin wrote:
enum A = 1; enum B = C; //Error static if(A) enum C = 0; enum D = C; //OKIs order supposed to matter here?
Beter: enum E = 1; struct Foo{ enum X1 = E; static if(1) enum E = 2; enum X2 = E; } static assert(Foo.X1 != Foo.X2); class Bar{ enum X1 = __traits(isAbstractClass, typeof(this)); static if(1) abstract void bar(); enum X2 = __traits(isAbstractClass, typeof(this)); } static assert(Bar.X1 != Bar.X2); mixins has same problem.