error[E0308]: mismatched types --> $DIR/shadowed-lplace-method.rs:9:24 | LL | *rc.borrow_mut() = false; | ---------------- ^^^^^ expected struct `Rc`, found `bool` | | | expected due to the type of this binding | = note: expected struct `Rc>` found type `bool` note: the `borrow_mut` call is resolved to the method in `std::borrow::BorrowMut`, shadowing the method of the same name on the inherent impl for `std::cell::RefCell` --> $DIR/shadowed-lplace-method.rs:9:9 | LL | use std::borrow::BorrowMut; | ---------------------- `std::borrow::BorrowMut` imported here ... LL | *rc.borrow_mut() = false; | ^^^^^^^^^^ refers to `std::borrow::BorrowMut::borrow_mut` help: you might have meant to call the other method; you can use the fully-qualified path to call it explicitly | LL | *std::cell::RefCell::<_>::borrow_mut(&rc) = false; | +++++++++++++++++++++++++++++++++++++ ~ error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.