rust/tests/ui/generator/borrowing.rs

25 lines
550 B
Rust

// revisions: no_drop_tracking drop_tracking drop_tracking_mir
// [drop_tracking] compile-flags: -Zdrop-tracking
// [drop_tracking_mir] compile-flags: -Zdrop-tracking-mir
#![feature(generators, generator_trait)]
use std::ops::Generator;
use std::pin::Pin;
fn main() {
let _b = {
let a = 3;
Pin::new(&mut || yield &a).resume(())
//~^ ERROR: `a` does not live long enough
};
let _b = {
let a = 3;
|| {
yield &a
//~^ ERROR: `a` does not live long enough
}
};
}