How does the borrow checker behave when workin with pointers? Will the borrow checker not work at all or will this cause a problem? My guess is that when dropping a ref from a pointer nothing will happen.
let ptr = Box::into_raw(Box::new(value));
let a = unsafe { &*ptr };
let b = unsafe { &*ptr };
drop(a);
drop(b);