error[E0594]: cannot assign to immutable indexed content --> $DIR/borrowck-overloaded-index-ref-index.rs:61:5 | LL | s[2] = 20; | ^^^^^^^^^ cannot borrow as mutable | = help: trait `IndexMut` is required to modify indexed content, but it is not implemented for `Bar` error[E0502]: cannot borrow `s` as immutable because it is also borrowed as mutable --> $DIR/borrowck-overloaded-index-ref-index.rs:52:23 | LL | let rs = &mut s; | - mutable borrow occurs here LL | println!("{}", f[&s]); | ^ immutable borrow occurs here ... LL | } | - mutable borrow ends here error[E0502]: cannot borrow `s` as immutable because it is also borrowed as mutable --> $DIR/borrowck-overloaded-index-ref-index.rs:55:8 | LL | let rs = &mut s; | - mutable borrow occurs here ... LL | f[&s] = 10; | ^ immutable borrow occurs here ... LL | } | - mutable borrow ends here error: aborting due to 3 previous errors Some errors occurred: E0502, E0594. For more information about an error, try `rustc --explain E0502`.