From 79c35bbd8cbab76e0ba2e51970e2fc2c35cdcc45 Mon Sep 17 00:00:00 2001 From: Austin Hicks Date: Wed, 7 Dec 2016 12:42:07 -0500 Subject: [PATCH] Add a case to type-sizes to explicitly verify that field reordering triggers. --- src/test/run-pass/type-sizes.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/test/run-pass/type-sizes.rs b/src/test/run-pass/type-sizes.rs index bbb01eaaf46..6614a76107f 100644 --- a/src/test/run-pass/type-sizes.rs +++ b/src/test/run-pass/type-sizes.rs @@ -31,6 +31,10 @@ enum e3 { a([u16; 0], u8), b } +// Test struct field reordering to make sure it actually reorders. +struct WillOptimize1(u8, u16, u8); +struct WillOptimize2 { a: u8, b: u16, c: u8} + pub fn main() { assert_eq!(size_of::(), 1 as usize); assert_eq!(size_of::(), 4 as usize); @@ -54,4 +58,7 @@ pub fn main() { assert_eq!(size_of::(), 8 as usize); assert_eq!(size_of::(), 8 as usize); assert_eq!(size_of::(), 4 as usize); + + assert_eq!(size_of::(), 4); + assert_eq!(size_of::(), 4); }