rust/tests/ui/impl-trait/in-trait/opaque-variances.rs
2023-10-04 04:22:04 +00:00

15 lines
457 B
Rust

// check-pass
// compile-flags: -Ztrait-solver=next
fn foo<'a: 'a>(x: &'a Vec<i32>) -> impl Sized {
()
}
fn main() {
// in NLL, we want to make sure that the `'a` subst of `foo` does not get
// related between `x` and the RHS of the assignment. That would require
// that the temp is live for the lifetime of the variable `x`, which of
// course is not necessary since `'a` is not captured by the RPIT.
let x = foo(&Vec::new());
}