mirror of
https://github.com/rust-lang/rust.git
synced 2025-10-02 10:18:25 +00:00

``` error[E0596]: cannot borrow `*self.s` as mutable, as it is behind a `&` reference --> $DIR/issue-38147-1.rs:17:9 | LL | self.s.push('x'); | ^^^^^^ `self` is a `&` reference, so the data it refers to cannot be borrowed as mutable | help: consider changing this to be a mutable reference | LL | fn f(&mut self) { | +++ ``` Note the suggestion to add `mut` instead of replacing the entire `&self` with `&mut self`.
15 lines
316 B
Rust
15 lines
316 B
Rust
//@ edition:2018
|
|
struct S {
|
|
foo: usize,
|
|
}
|
|
impl S {
|
|
async fn bar(&self) { //~ HELP consider changing this to be a mutable reference
|
|
//~| SUGGESTION mut
|
|
self.foo += 1; //~ ERROR cannot assign to `self.foo`, which is behind a `&` reference [E0594]
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
S { foo: 1 }.bar();
|
|
}
|