Rust’s unsafe pointer types need an overhaul
Aria Beingessner March 19th, 2022 1 Background 1.1 Aliasing 1.2 Alias Analysis and Pointer Provenance 1.3 CHERI 2 Problems 2.1 Integer-To-Pointer Casts Are The Devil 2.2 References Make Really Strong Assertions 2.3 Offsets And Places Are A Mess 3 Solutions 3.1 Distinguish Pointers And Addresses 3.1.1 Redefining usize 3.1.2 Replacing Pointer-Integer Casts 3.2 Fixing Places …








