// Check that substitutions given on the self type (here, `A`) carry // through to NLL. struct A<'a> { x: &'a u32 } impl<'a> A<'a> { fn new<'b, T>(x: &'a u32, y: T) -> Self { Self { x } } } fn foo<'a>() { let v = 22; let x = A::<'a>::new(&v, 22); //~^ ERROR } fn main() {}