23 lines · cpp
1enum EnumUChar { UChar = 1 } e1;2enum EnumUShort { UShort = 0x101 } e2;3enum EnumUInt { UInt = 0x10001 } e3;4enum EnumSLong { SLong = 0x100000001 } e4;5enum EnumULong { ULong = 0xFFFFFFFFFFFFFFF0 } e5;6enum EnumNChar { NChar = -1 } e6;7enum EnumNShort { NShort = -0x101 } e7;8enum EnumNInt { NInt = -0x10001 } e8;9enum EnumNLong { NLong = -0x100000001 } e9;10 11int main() {12 auto UChar_promoted = +EnumUChar::UChar;13 auto UShort_promoted = +EnumUShort::UShort;14 auto UInt_promoted = +EnumUInt::UInt;15 auto SLong_promoted = +EnumSLong::SLong;16 auto ULong_promoted = +EnumULong::ULong;17 auto NChar_promoted = +EnumNChar::NChar;18 auto NShort_promoted = +EnumNShort::NShort;19 auto NInt_promoted = +EnumNInt::NInt;20 auto NLong_promoted = +EnumNLong::NLong;21 return 0; // break here22}23