error[E0502]: cannot borrow `*collection` as mutable because `collection` is also borrowed as immutable --> $DIR/issue-42106.rs:13:5 | LL | let _a = &collection; | ---------- immutable borrow occurs here LL | collection.swap(1, 2); //~ ERROR also borrowed as immutable | ^^^^^^^^^^ mutable borrow occurs here LL | _a.use_ref(); LL | } | - immutable borrow ends here error: aborting due to previous error For more information about this error, try `rustc --explain E0502`.