//@ edition: 2024 #![feature(gen_blocks)] //! This test checks that we don't allow self-referential generators fn main() { let mut x = { let mut x = gen { let y = 42; let z = &y; //~ ERROR: borrow may still be in use when `gen` block yields yield 43; panic!("{z}"); }; x.next(); Box::new(x) }; x.next(); }