1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
trait B {
fn foo(mut a: &String) {
a.push_str("bar"); //~ ERROR cannot borrow `*a` as mutable, as it is behind a `&` reference
}
}
pub fn foo<'a>(mut a: &'a String) {
a.push_str("foo"); //~ ERROR cannot borrow `*a` as mutable, as it is behind a `&` reference
}
struct A {}
impl A {
pub fn foo(mut a: &String) {
a.push_str("foo"); //~ ERROR cannot borrow `*a` as mutable, as it is behind a `&` reference
}
}
fn main() {
foo(&"a".to_string());
A::foo(&"a".to_string());
}
|