1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#[repr(u8)] pub enum A { A1, A2, A3, } #[repr(u8)] pub enum B { B1, B2, B3, } #[repr(u8)] pub enum C { C1 { a: u32 }, C2 { b: u32 }, C3, } #[no_mangle] pub extern "C" fn root(a: A, b: B, c: C) {}