2018-10-15 05:14:08 -05:00
|
|
|
// Check that inherent methods invoked with `<T>::new` style
|
|
|
|
// carry their annotations through to NLL in connection with
|
|
|
|
// method type parameters.
|
|
|
|
|
|
|
|
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::<&'a u32>(&v, &v);
|
2018-10-16 17:11:55 -05:00
|
|
|
//~^ ERROR
|
|
|
|
//~| ERROR
|
2018-10-15 05:14:08 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {}
|