rust/tests/ui/iterators/generator_capture_fail.stderr
Oli Scherer 5fbdfc3e10
Add iter macro
This adds an `iter!` macro that can be used to create movable
generators.

This also adds a yield_expr feature so the `yield` keyword can be used
within iter! macro bodies. This was needed because several unstable
features each need `yield` expressions, so this allows us to stabilize
them separately from any individual feature.

Co-authored-by: Oli Scherer <github35764891676564198441@oli-obk.de>
Co-authored-by: Jieyou Xu <jieyouxu@outlook.com>
Co-authored-by: Travis Cross <tc@traviscross.com>
2025-06-03 10:52:32 -07:00

21 lines
624 B
Plaintext

error[E0597]: `s` does not live long enough
--> $DIR/generator_capture_fail.rs:8:17
|
LL | let i = {
| - borrow later stored here
LL | let s = String::new();
LL | iter! { || {
| _________________^
LL | | yield s.len();
LL | | for x in 5..10 {
LL | | yield x * 2;
LL | | }
LL | | } }
| |_________^ borrowed value does not live long enough
LL | };
| - `s` dropped here while still borrowed
error: aborting due to 1 previous error
For more information about this error, try `rustc --explain E0597`.