#![allow(unused_variables)] #![feature(get_mut_unchecked)] fn main() { use std::sync::Arc; let mut five = Arc::::new_uninit(); Arc::get_mut(&mut five).unwrap().write(5); let five = unsafe { five.assume_init() }; assert_eq!(* five, 5) }