Unscoped enumerations are simple types that introduce named constants into the scope enclosing the enumeration.
The backing type is automatically selected by the compiler unless explicitly specified.
Note that C++11 Scoped Enumerations are generally preferable (scheduled for tomorrow).
Compiler Explorer link: https://compiler-explorer.com/z/a3cP7T5Eo
@simontoth It's worse on Impossible, clang is IF, MSVC picks int, and gcc does __int128.
@beached_whale MSVC picks int? Does it at least have a warning?
@simontoth sorry, I messed up somehow. int64 for msvc/clang and truncation warning. https://gcc.godbolt.org/z/eE3Mf5fTh