#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::ptr; fn main() { let mut s = String::from("foo"); unsafe { let mut s2: String = ptr::read(&s); assert_eq!(s2, "foo"); s2 = String::default(); assert_eq!(s2, ""); ptr::write(&mut s, String::from("bar")); } assert_eq!(s, "bar"); }