diff --git a/rust-version b/rust-version index bc4489ab57..123c4a5b5b 100644 --- a/rust-version +++ b/rust-version @@ -1 +1 @@ -41ad4d9b2dbb895666337d162eda52619a6056db +f342bea9d19f14616c6559312552e6d0ee529cfd diff --git a/tests/pass/enums.rs b/tests/pass/enums.rs index d2dc065254..ac7aafc1bb 100644 --- a/tests/pass/enums.rs +++ b/tests/pass/enums.rs @@ -119,6 +119,18 @@ fn more_discriminant_overflow() { } } +fn overaligned_casts() { + #[allow(dead_code)] + #[repr(align(8))] + enum Aligned { + Zero = 0, + One = 1, + } + + let aligned = Aligned::Zero; + assert_eq!(aligned as u8, 0); +} + fn main() { test(MyEnum::MyEmptyVariant); test(MyEnum::MyNewtypeVariant(42)); @@ -127,4 +139,5 @@ fn main() { discriminant_overflow(); more_discriminant_overflow(); + overaligned_casts(); }