18 lines
484 B
Rust
18 lines
484 B
Rust
|
//@ check-pass
|
||
|
|
||
|
// Check that opaques capturing early and late-bound vars correctly mark
|
||
|
// regions required to be live using the item bounds.
|
||
|
|
||
|
trait Captures<'a> {}
|
||
|
impl<T> Captures<'_> for T {}
|
||
|
|
||
|
fn captures_temp_late<'a>(x: &'a Vec<i32>) -> impl Sized + Captures<'a> + 'static {}
|
||
|
fn captures_temp_early<'a: 'a>(x: &'a Vec<i32>) -> impl Sized + Captures<'a> + 'static {}
|
||
|
|
||
|
fn test() {
|
||
|
let x = captures_temp_early(&vec![]);
|
||
|
let y = captures_temp_late(&vec![]);
|
||
|
}
|
||
|
|
||
|
fn main() {}
|