Open kkysen opened 2 years ago
Similar to https://github.com/immunant/c2rust/pull/683#issuecomment-1259581307, it would be good to know if this is a result of the transpiler. I believe that should be the focus over changes to analysis/test
specifically, if so.
Similar to #683 (comment), it would be good to know if this is a result of the transpiler. I believe that should be the focus over changes to
analysis/test
specifically, if so.
This is a result of the transpiler, at least the 0 as *{const,mut} _
s, but is intended for the time being. See #202 for a more thorough discussion. We had previously decided the current way was better, but that was before strict provenance was added, so I made this comment: https://github.com/immunant/c2rust/issues/202#issuecomment-1228089251, suggesting {core,std}::ptr::{null,null_mut}()
be preferred.
analysis/test
contains many int-to-ptr casts for null pointers, like0 as *const _
and0 as *mut _
. These useptr::from_exposed_addr
as part of strict provenance. Since we don't actually need to useptr::from_exposed_addr
here, we should switch to usingstr::ptr::null{,_mut}()
instead.miri
warns on these, so it's easier to find and fix UB bugs if these aren't in the way, and it's best practice to do this as well.See the
miri
warning: