2017-12-24 06:45:51 -06:00
|
|
|
error[E0506]: cannot assign to `*s` because it is borrowed
|
|
|
|
--> $DIR/guarantor-issue-46974.rs:19:5
|
|
|
|
|
|
2018-02-22 18:42:32 -06:00
|
|
|
LL | let t = &mut *s; // this borrow should last for the entire function
|
2017-12-24 06:45:51 -06:00
|
|
|
| ------- borrow of `*s` occurs here
|
2018-02-24 17:01:39 -06:00
|
|
|
LL | let x = &t.0;
|
2018-02-22 18:42:32 -06:00
|
|
|
LL | *s = (2,); //~ ERROR cannot assign to `*s`
|
2017-12-24 06:45:51 -06:00
|
|
|
| ^^^^^^^^^ assignment to borrowed `*s` occurs here
|
2018-03-05 16:29:05 -06:00
|
|
|
LL | *x
|
|
|
|
| -- borrow later used here
|
2017-12-24 06:45:51 -06:00
|
|
|
|
2018-01-10 12:00:50 -06:00
|
|
|
error[E0621]: explicit lifetime required in the type of `s`
|
2017-12-24 06:45:51 -06:00
|
|
|
--> $DIR/guarantor-issue-46974.rs:25:5
|
|
|
|
|
|
2018-02-22 18:42:32 -06:00
|
|
|
LL | fn bar(s: &Box<(i32,)>) -> &'static i32 {
|
2018-01-10 12:00:50 -06:00
|
|
|
| - consider changing the type of `s` to `&'static std::boxed::Box<(i32,)>`
|
2018-02-24 17:01:39 -06:00
|
|
|
LL | // FIXME(#46983): error message should be better
|
2018-02-22 18:42:32 -06:00
|
|
|
LL | &s.0 //~ ERROR explicit lifetime required in the type of `s` [E0621]
|
2018-01-10 12:00:50 -06:00
|
|
|
| ^^^^ lifetime `'static` required
|
2017-12-24 06:45:51 -06:00
|
|
|
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
|
2018-02-19 14:40:25 -06:00
|
|
|
You've got a few errors: E0506, E0621
|
|
|
|
If you want more information on an error, try using "rustc --explain E0506"
|