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