#![allow(unused_variables)] fn main() { use std::rc::Rc; let mut data = Rc::new(5); *Rc::make_mut(&mut data) += 1; let mut other_data = Rc::clone(&data); *Rc::make_mut(&mut data) += 1; *Rc::make_mut(&mut data) += 1; *Rc::make_mut(&mut other_data) *= 2; assert_eq!(* data, 8); assert_eq!(* other_data, 12); }