
Similar to how the alignment is already checked, this adds a check for null pointer dereferences in debug mode. It is implemented similarly to the alignment check as a MirPass. This is related to a 2025H1 project goal for better UB checks in debug mode: https://github.com/rust-lang/rust-project-goals/pull/177.
10 lines
223 B
Rust
10 lines
223 B
Rust
// Make sure that we don't insert a check for places that do not read.
|
|
//@ run-pass
|
|
//@ compile-flags: -C debug-assertions
|
|
|
|
fn main() {
|
|
let ptr: *const u16 = std::ptr::null();
|
|
unsafe {
|
|
let _ = *ptr;
|
|
}
|
|
}
|