// run-pass #![allow(dead_code)] #[repr(u8)] #[allow(dead_code)] enum ValueType { DOUBLE = 0x00, INT32 = 0x01, } #[repr(u32)] enum ValueTag { INT32 = 0x1FFF0u32 | (ValueType::INT32 as u32), X, } #[repr(u64)] enum ValueShiftedTag { INT32 = ValueTag::INT32 as u64, X, } fn main() { println!("{}", ValueTag::INT32 as u32); }