Skip to content

Commit f4861f3

Browse files
committed
Miri: santiy check that null pointer can never have an AllocId
1 parent 1c66d11 commit f4861f3

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

compiler/rustc_mir/src/interpret/memory.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -1142,7 +1142,11 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> Memory<'mir, 'tcx, M> {
11421142
Err(ptr) => ptr.into(),
11431143
Ok(bits) => {
11441144
let addr = u64::try_from(bits).unwrap();
1145-
M::ptr_from_addr(&self, addr)
1145+
let ptr = M::ptr_from_addr(&self, addr);
1146+
if addr == 0 {
1147+
assert!(ptr.provenance.is_none(), "null pointer can never have an AllocId");
1148+
}
1149+
ptr
11461150
}
11471151
}
11481152
}

0 commit comments

Comments
 (0)