The C mapping of an IDL enum
type is an unsigned, 32 bits wide
integer. Each enumerator in an enum is defined in an anonymous
enum
with an appropriate unsigned integer value conforming to
the ordering constraints.
For instance, the following IDL:
module m { enum e { value1, value2 }; };
would map, according to the scoped names rules, into
typedef uint32_t m_e; enum { m_value1 = 0 m_value2 = 1 };