//@ known-bug: #122630 | |
//@ compile-flags: -Zvalidate-mir | |
use std::ops::Coroutine; | |
const FOO_SIZE: usize = 1024; | |
struct Foo([u8; FOO_SIZE]); | |
impl Drop for Foo { | |
fn move_before_yield_with_noop() -> impl Coroutine<Yield = ()> {} | |
} | |
fn overlap_move_points() -> impl Coroutine<Yield = ()> { | |
static || { | |
let first = Foo([0; FOO_SIZE]); | |
yield; | |
let second = first; | |
yield; | |
let second = first; | |
yield; | |
} | |
} |