2017-12-24 14:45:51 +02:00
|
|
|
error[E0506]: cannot assign to `*s` because it is borrowed
|
2022-04-01 13:13:25 -04:00
|
|
|
--> $DIR/guarantor-issue-46974.rs:7:5
|
2017-12-24 14:45:51 +02:00
|
|
|
|
|
2018-02-23 03:42:32 +03:00
|
|
|
LL | let t = &mut *s; // this borrow should last for the entire function
|
2023-01-15 03:06:44 +00:00
|
|
|
| ------- `*s` is borrowed here
|
2018-02-25 02:01:39 +03:00
|
|
|
LL | let x = &t.0;
|
2019-03-09 15:03:44 +03:00
|
|
|
LL | *s = (2,);
|
2023-01-15 03:06:44 +00:00
|
|
|
| ^^^^^^^^^ `*s` is assigned to here but it was already borrowed
|
2018-03-05 19:29:05 -03:00
|
|
|
LL | *x
|
|
|
|
| -- borrow later used here
|
2017-12-24 14:45:51 +02:00
|
|
|
|
2021-11-13 16:43:43 +11:00
|
|
|
error: lifetime may not live long enough
|
2022-04-01 13:13:25 -04:00
|
|
|
--> $DIR/guarantor-issue-46974.rs:13:5
|
2017-12-24 14:45:51 +02:00
|
|
|
|
|
2021-11-13 16:43:43 +11:00
|
|
|
LL | fn bar(s: &Box<(i32,)>) -> &'static i32 {
|
|
|
|
| - let's call the lifetime of this reference `'1`
|
|
|
|
LL | // FIXME(#46983): error message should be better
|
2019-03-09 15:03:44 +03:00
|
|
|
LL | &s.0
|
2021-11-13 16:43:43 +11:00
|
|
|
| ^^^^ returning this value requires that `'1` must outlive `'static`
|
2017-12-24 14:45:51 +02:00
|
|
|
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
|
2021-11-13 16:43:43 +11:00
|
|
|
For more information about this error, try `rustc --explain E0506`.
|