// run-pass #![allow(non_camel_case_types)] struct boxed_int<'a> { f: &'a isize, } fn max<'r>(bi: &'r boxed_int, f: &'r isize) -> isize { if *bi.f > *f {*bi.f} else {*f} } fn with(bi: &boxed_int) -> isize { let i = 22; max(bi, &i) } pub fn main() { let g = 21; let foo = boxed_int { f: &g }; assert_eq!(with(&foo), 22); }