Each enumeration defines a type that is different from all other types
. The underlying type can be explicitly specified using an
enum-base. For a scoped enumeration type, the underlying type is
int if it is not
explicitly specified
. In both of these cases, the underlying type is said to be
fixed. Following the closing brace of an
enum-specifier, each
enumerator has the type of its enumeration
. If the underlying
type is not fixed,
the type of each enumerator prior to the closing brace is determined as
follows: