enum MyEnum : byte { Value_1 = 1 } enum E : ushort { V = 1 } public class C { public static int Main () { MyEnum me = MyEnum.Value_1; MyEnum b = ~me; if (b != (MyEnum)254) return 1; byte r = b - me; if (r != 253) return 2; b = b - 2; if (b != (MyEnum)252) return 3; me -= MyEnum.Value_1; b = (MyEnum)255; b &= ~MyEnum.Value_1; if (b != (MyEnum)254) return 4; var e = E.V; checked { var res = ~e; } System.Console.WriteLine ("OK"); return 0; } }