[[Pointer safety principle]] [[Aliasing is accessing the same data through different variables]] [[Downgrading a mutable reference]] --- A reference that is mutable is created with `&mut` . They are safe because all permissions are dropped from the borrowed place so it can not be read while the reference exists. It is therefore not an alias.