enum E { init = 0, foo = 1 << 0, bar = 1 << 1, } assert(E.foo.has.foo); E e; assert(!e.has.foo); e.has.foo = true; assert(e.has.foo);
See Implementation