diff options
Diffstat (limited to 'src/codegen/mod.rs')
-rw-r--r-- | src/codegen/mod.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/codegen/mod.rs b/src/codegen/mod.rs index 4fcbaefd..e4ce9526 100644 --- a/src/codegen/mod.rs +++ b/src/codegen/mod.rs @@ -2192,7 +2192,9 @@ impl CodeGenerator for CompInfo { quote! { assert_eq!( unsafe { - &(*(::#prefix::ptr::null::<#canonical_ident>())).#field_name as *const _ as usize + let uninit = ::#prefix::mem::MaybeUninit::<#canonical_ident>::uninit(); + let ptr = uninit.as_ptr(); + ::#prefix::ptr::addr_of!((*ptr).#field_name) as usize - ptr as usize }, #field_offset, concat!("Offset of field: ", stringify!(#canonical_ident), "::", stringify!(#field_name)) |