repr_align_enum
The tracking issue for this feature is: #57996
The repr_align_enum
feature allows using the #[repr(align(x))]
attribute
on enums, similarly to structs.
Examples
#![feature(repr_align_enum)] #[repr(align(8))] enum Aligned { Foo, Bar { value: u32 }, } fn main() { assert_eq!(std::mem::align_of::<Aligned>(), 8); }
This is equivalent to using an aligned wrapper struct everywhere:
#[repr(align(8))] struct Aligned(Unaligned); enum Unaligned { Foo, Bar { value: u32 }, } fn main() { assert_eq!(std::mem::align_of::<Aligned>(), 8); }