-error[E0597]: `z` does not live long enough
- --> $DIR/regions-escape-loop-via-vec.rs:7:22
- |
-LL | _y.push(&mut z);
- | ^ borrowed value does not live long enough
-...
-LL | }
- | - `z` dropped here while still borrowed
-LL | }
- | - borrowed value needs to live until here
-
error[E0503]: cannot use `x` because it was mutably borrowed
--> $DIR/regions-escape-loop-via-vec.rs:5:11
|
LL | let mut _y = vec![&mut x];
- | - borrow of `x` occurs here
+ | ------ borrow of `x` occurs here
LL | while x < 10 {
| ^ use of borrowed `x`
+LL | let mut z = x;
+LL | _y.push(&mut z);
+ | -- borrow later used here
error[E0503]: cannot use `x` because it was mutably borrowed
- --> $DIR/regions-escape-loop-via-vec.rs:6:13
+ --> $DIR/regions-escape-loop-via-vec.rs:6:21
|
LL | let mut _y = vec![&mut x];
- | - borrow of `x` occurs here
+ | ------ borrow of `x` occurs here
LL | while x < 10 {
LL | let mut z = x;
- | ^^^^^ use of borrowed `x`
+ | ^ use of borrowed `x`
+LL | _y.push(&mut z);
+ | -- borrow later used here
-error[E0506]: cannot assign to `x` because it is borrowed
+error[E0597]: `z` does not live long enough
+ --> $DIR/regions-escape-loop-via-vec.rs:7:17
+ |
+LL | _y.push(&mut z);
+ | -- ^^^^^^ borrowed value does not live long enough
+ | |
+ | borrow later used here
+...
+LL | }
+ | - `z` dropped here while still borrowed
+
+error[E0503]: cannot use `x` because it was mutably borrowed
--> $DIR/regions-escape-loop-via-vec.rs:9:9
|
LL | let mut _y = vec![&mut x];
- | - borrow of `x` occurs here
+ | ------ borrow of `x` occurs here
...
+LL | _y.push(&mut z);
+ | -- borrow later used here
+LL |
LL | x += 1;
- | ^^^^^^ assignment to borrowed `x` occurs here
+ | ^^^^^^ use of borrowed `x`
error: aborting due to 4 previous errors
-Some errors have detailed explanations: E0503, E0506, E0597.
+Some errors have detailed explanations: E0503, E0597.
For more information about an error, try `rustc --explain E0503`.