Enumeration Grammar

enum‑type → specifiers enum identifier underlying‑type? { enum‑constants }
underlying‑type → : type‑expr
enum‑constants → enum‑constant % ,
enum‑constant → identifier (= expression | <empty>)