1 // run-pass 2 3 #[derive(Copy, Clone)] 4 pub struct Foo { 5 f1: isize, 6 _f2: isize, 7 } 8 9 #[inline(never)] foo(f: &mut Foo) -> Foo10pub fn foo(f: &mut Foo) -> Foo { 11 let ret = *f; 12 f.f1 = 0; 13 ret 14 } 15 main()16pub fn main() { 17 let mut f = Foo { 18 f1: 8, 19 _f2: 9, 20 }; 21 f = foo(&mut f); 22 assert_eq!(f.f1, 8); 23 } 24