warning: not reporting region error due to nll --> $DIR/ex2c-push-inference-variable.rs:16:13 | LL | let z = Ref { data: y.data }; | ^^^ error[E0623]: lifetime mismatch --> $DIR/ex2c-push-inference-variable.rs:17:5 | LL | fn foo<'a, 'b, 'c>(x: &'a mut Vec>, y: Ref<'c, i32>) { | ------------ ------------ these two types are declared with different lifetimes... LL | let z = Ref { data: y.data }; LL | x.push(z); //~ ERROR lifetime mismatch | ^^^^^^^^^ ...but data from `y` flows into `x` here error: aborting due to previous error For more information about this error, try `rustc --explain E0623`.