TIL that, unlike C pointers, a Rust pointer is not just a memory address:
https://rust-lang.github.io/rfcs/3559-rust-has-provenance.html
TL;DR: Rust pointers also carry a "provenance", used by static analysis to determine which operations are safe.
This RFC does not say weather provenance metadata can also be tracked and checked at run-time in cases where static analysis would be too restrictive.