3 #![feature(unsized_tuple_coercion)]
5 // Ensure that unsizable fields that might be accessed don't get reordered
8 let sized: (u8, [u32; 2]) = (123, [456, 789]);
9 let unsize: &(u8, [u32]) = &sized;
10 assert_eq!(unsize.0, 123);
11 assert_eq!(unsize.1.len(), 2);
12 assert_eq!(unsize.1[0], 456);
13 assert_eq!(unsize.1[1], 789);
17 let sized: (u8, [u32; 0]) = (123, []);
18 let unsize: &(u8, [u32]) = &sized;
19 assert_eq!(unsize.0, 123);
20 assert_eq!(unsize.1.len(), 0);