2019-04-22 08:40:08 +01:00
|
|
|
error[E0597]: `young[_]` does not live long enough
|
2023-01-17 02:52:43 +00:00
|
|
|
--> $DIR/borrowck-let-suggestion-suffixes.rs:13:17
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2023-01-17 02:52:43 +00:00
|
|
|
LL | let young = ['y']; // statement 3
|
|
|
|
| ----- binding `young` declared here
|
|
|
|
...
|
2019-04-22 08:40:08 +01:00
|
|
|
LL | v2.push(&young[0]); // statement 4
|
|
|
|
| ^^^^^^^^^ borrowed value does not live long enough
|
2016-10-14 18:55:45 +03:00
|
|
|
...
|
2019-04-22 08:40:08 +01:00
|
|
|
LL | }
|
|
|
|
| - `young[_]` dropped here while still borrowed
|
|
|
|
...
|
|
|
|
LL | (v1, v2, v3, /* v4 is above. */ v5).use_ref();
|
|
|
|
| -- borrow later used here
|
2016-10-14 18:55:45 +03:00
|
|
|
|
2019-04-22 08:40:08 +01:00
|
|
|
error[E0716]: temporary value dropped while borrowed
|
2023-01-17 02:52:43 +00:00
|
|
|
--> $DIR/borrowck-let-suggestion-suffixes.rs:20:14
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2018-02-23 03:42:32 +03:00
|
|
|
LL | v3.push(&id('x')); // statement 6
|
2019-04-22 08:40:08 +01:00
|
|
|
| ^^^^^^^ - temporary value is freed at the end of this statement
|
2016-10-14 18:55:45 +03:00
|
|
|
| |
|
2022-10-20 16:43:27 +01:00
|
|
|
| creates a temporary value which is freed while still in use
|
2016-10-14 18:55:45 +03:00
|
|
|
...
|
2019-04-22 08:40:08 +01:00
|
|
|
LL | (v1, v2, v3, /* v4 is above. */ v5).use_ref();
|
|
|
|
| -- borrow later used here
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2022-07-14 17:12:01 -07:00
|
|
|
help: consider using a `let` binding to create a longer lived value
|
|
|
|
|
|
|
|
|
LL ~ let binding = id('x');
|
|
|
|
LL ~ v3.push(&binding); // statement 6
|
|
|
|
|
|
2016-10-14 18:55:45 +03:00
|
|
|
|
2019-04-22 08:40:08 +01:00
|
|
|
error[E0716]: temporary value dropped while borrowed
|
2023-01-17 02:52:43 +00:00
|
|
|
--> $DIR/borrowck-let-suggestion-suffixes.rs:30:18
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2018-02-23 03:42:32 +03:00
|
|
|
LL | v4.push(&id('y'));
|
2019-04-22 08:40:08 +01:00
|
|
|
| ^^^^^^^ - temporary value is freed at the end of this statement
|
2016-10-14 18:55:45 +03:00
|
|
|
| |
|
2022-10-20 16:43:27 +01:00
|
|
|
| creates a temporary value which is freed while still in use
|
2016-10-14 18:55:45 +03:00
|
|
|
...
|
2019-04-22 08:40:08 +01:00
|
|
|
LL | v4.use_ref();
|
2023-06-22 20:30:23 +00:00
|
|
|
| -- borrow later used here
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2022-07-14 18:41:12 -07:00
|
|
|
= note: consider using a `let` binding to create a longer lived value
|
2016-10-14 18:55:45 +03:00
|
|
|
|
2019-04-22 08:40:08 +01:00
|
|
|
error[E0716]: temporary value dropped while borrowed
|
2023-01-17 02:52:43 +00:00
|
|
|
--> $DIR/borrowck-let-suggestion-suffixes.rs:41:14
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2018-02-23 03:42:32 +03:00
|
|
|
LL | v5.push(&id('z'));
|
2019-04-22 08:40:08 +01:00
|
|
|
| ^^^^^^^ - temporary value is freed at the end of this statement
|
2016-10-14 18:55:45 +03:00
|
|
|
| |
|
2022-10-20 16:43:27 +01:00
|
|
|
| creates a temporary value which is freed while still in use
|
2016-10-14 18:55:45 +03:00
|
|
|
...
|
2019-04-22 08:40:08 +01:00
|
|
|
LL | (v1, v2, v3, /* v4 is above. */ v5).use_ref();
|
|
|
|
| -- borrow later used here
|
2016-10-14 18:55:45 +03:00
|
|
|
|
|
2022-07-14 17:12:01 -07:00
|
|
|
help: consider using a `let` binding to create a longer lived value
|
|
|
|
|
|
|
|
|
LL ~ let binding = id('z');
|
|
|
|
LL ~ v5.push(&binding);
|
|
|
|
|
|
2016-10-14 18:55:45 +03:00
|
|
|
|
2017-07-02 13:49:30 +03:00
|
|
|
error: aborting due to 4 previous errors
|
2016-10-14 18:55:45 +03:00
|
|
|
|
2019-04-22 08:40:08 +01:00
|
|
|
Some errors have detailed explanations: E0597, E0716.
|
|
|
|
For more information about an error, try `rustc --explain E0597`.
|