Skip to content

Commit 00da884

Browse files
committed
Update FIELD_OFFSET macro
1 parent e71470c commit 00da884

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

src/macros.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,11 @@ macro_rules! EXTERN {
2727
#[macro_export]
2828
#[doc(hidden)]
2929
macro_rules! FIELD_OFFSET {
30-
($_type:ty, $field:ident$(.$cfields:ident)*) => {
31-
unsafe {
32-
let base = ::core::mem::MaybeUninit::<$_type>::uninit().as_ptr();
33-
::core::ptr::addr_of!((*base).$field$(.$cfields)*) as usize - base as usize
34-
}
35-
};
30+
($_type:ty, $field:ident$(.$cfields:ident)*) => {{
31+
let obj = core::mem::MaybeUninit::<$_type>::uninit();
32+
let base = obj.as_ptr();
33+
unsafe { core::ptr::addr_of!((*base).$field$(.$cfields)*) as usize - base as usize }
34+
}};
3635
}
3736
macro_rules! BITFIELD {
3837
($base:ident $field:ident: $fieldtype:ty [

0 commit comments

Comments
 (0)