diff options
Diffstat (limited to 'tests')
255 files changed, 12930 insertions, 19569 deletions
diff --git a/tests/expectations/tests/16-byte-alignment.rs b/tests/expectations/tests/16-byte-alignment.rs index 6aa491d6..a60a63aa 100644 --- a/tests/expectations/tests/16-byte-alignment.rs +++ b/tests/expectations/tests/16-byte-alignment.rs @@ -26,6 +26,10 @@ pub struct rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -42,47 +46,32 @@ fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_dport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(dport) - ) - ); - } - test_field_dport(); - fn test_field_sport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(sport) - ) - ); - } - test_field_sport(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sport) + ) + ); } #[test] fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv4_tuple__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple__bindgen_ty_1>(), 4usize, @@ -93,25 +82,18 @@ fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(rte_ipv4_tuple__bindgen_ty_1)) ); - fn test_field_sctp_tag() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1), - "::", - stringify!(sctp_tag) - ) - ); - } - test_field_sctp_tag(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1), + "::", + stringify!(sctp_tag) + ) + ); } impl Default for rte_ipv4_tuple__bindgen_ty_1 { fn default() -> Self { @@ -124,6 +106,9 @@ impl Default for rte_ipv4_tuple__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv4_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv4_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple>(), 12usize, @@ -134,42 +119,30 @@ fn bindgen_test_layout_rte_ipv4_tuple() { 4usize, concat!("Alignment of ", stringify!(rte_ipv4_tuple)) ); - fn test_field_src_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv4_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple), - "::", - stringify!(src_addr) - ) - ); - } - test_field_src_addr(); - fn test_field_dst_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv4_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple), - "::", - stringify!(dst_addr) - ) - ); - } - test_field_dst_addr(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple), + "::", + stringify!(src_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple), + "::", + stringify!(dst_addr) + ) + ); } impl Default for rte_ipv4_tuple { fn default() -> Self { @@ -201,6 +174,10 @@ pub struct rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -217,47 +194,32 @@ fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_dport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(dport) - ) - ); - } - test_field_dport(); - fn test_field_sport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(sport) - ) - ); - } - test_field_sport(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sport) + ) + ); } #[test] fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv6_tuple__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple__bindgen_ty_1>(), 4usize, @@ -268,25 +230,18 @@ fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(rte_ipv6_tuple__bindgen_ty_1)) ); - fn test_field_sctp_tag() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1), - "::", - stringify!(sctp_tag) - ) - ); - } - test_field_sctp_tag(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1), + "::", + stringify!(sctp_tag) + ) + ); } impl Default for rte_ipv6_tuple__bindgen_ty_1 { fn default() -> Self { @@ -299,6 +254,9 @@ impl Default for rte_ipv6_tuple__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv6_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv6_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple>(), 36usize, @@ -309,42 +267,30 @@ fn bindgen_test_layout_rte_ipv6_tuple() { 4usize, concat!("Alignment of ", stringify!(rte_ipv6_tuple)) ); - fn test_field_src_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv6_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple), - "::", - stringify!(src_addr) - ) - ); - } - test_field_src_addr(); - fn test_field_dst_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv6_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple), - "::", - stringify!(dst_addr) - ) - ); - } - test_field_dst_addr(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple), + "::", + stringify!(src_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple), + "::", + stringify!(dst_addr) + ) + ); } impl Default for rte_ipv6_tuple { fn default() -> Self { @@ -364,6 +310,9 @@ pub union rte_thash_tuple { } #[test] fn bindgen_test_layout_rte_thash_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_thash_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_thash_tuple>(), 48usize, @@ -374,42 +323,26 @@ fn bindgen_test_layout_rte_thash_tuple() { 16usize, concat!("Alignment of ", stringify!(rte_thash_tuple)) ); - fn test_field_v4() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_thash_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v4) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_thash_tuple), - "::", - stringify!(v4) - ) - ); - } - test_field_v4(); - fn test_field_v6() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_thash_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v6) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_thash_tuple), - "::", - stringify!(v6) - ) - ); - } - test_field_v6(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v4) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_thash_tuple), + "::", + stringify!(v4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v6) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_thash_tuple), + "::", + stringify!(v6) + ) + ); } impl Default for rte_thash_tuple { fn default() -> Self { diff --git a/tests/expectations/tests/16-byte-alignment_1_0.rs b/tests/expectations/tests/16-byte-alignment_1_0.rs index b798697a..369e2c75 100644 --- a/tests/expectations/tests/16-byte-alignment_1_0.rs +++ b/tests/expectations/tests/16-byte-alignment_1_0.rs @@ -71,6 +71,10 @@ pub struct rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -87,44 +91,26 @@ fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_dport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(dport) - ) - ); - } - test_field_dport(); - fn test_field_sport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(sport) - ) - ); - } - test_field_sport(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sport) + ) + ); } impl Clone for rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -133,6 +119,9 @@ impl Clone for rte_ipv4_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv4_tuple__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple__bindgen_ty_1>(), 4usize, @@ -143,25 +132,18 @@ fn bindgen_test_layout_rte_ipv4_tuple__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(rte_ipv4_tuple__bindgen_ty_1)) ); - fn test_field_sctp_tag() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv4_tuple__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple__bindgen_ty_1), - "::", - stringify!(sctp_tag) - ) - ); - } - test_field_sctp_tag(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple__bindgen_ty_1), + "::", + stringify!(sctp_tag) + ) + ); } impl Clone for rte_ipv4_tuple__bindgen_ty_1 { fn clone(&self) -> Self { @@ -170,6 +152,9 @@ impl Clone for rte_ipv4_tuple__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv4_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv4_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv4_tuple>(), 12usize, @@ -180,42 +165,30 @@ fn bindgen_test_layout_rte_ipv4_tuple() { 4usize, concat!("Alignment of ", stringify!(rte_ipv4_tuple)) ); - fn test_field_src_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv4_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple), - "::", - stringify!(src_addr) - ) - ); - } - test_field_src_addr(); - fn test_field_dst_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv4_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv4_tuple), - "::", - stringify!(dst_addr) - ) - ); - } - test_field_dst_addr(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple), + "::", + stringify!(src_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv4_tuple), + "::", + stringify!(dst_addr) + ) + ); } impl Clone for rte_ipv4_tuple { fn clone(&self) -> Self { @@ -245,6 +218,10 @@ pub struct rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -261,44 +238,26 @@ fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_dport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(dport) - ) - ); - } - test_field_dport(); - fn test_field_sport() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(sport) - ) - ); - } - test_field_sport(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dport) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(dport) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sport) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(sport) + ) + ); } impl Clone for rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -307,6 +266,9 @@ impl Clone for rte_ipv6_tuple__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv6_tuple__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple__bindgen_ty_1>(), 4usize, @@ -317,25 +279,18 @@ fn bindgen_test_layout_rte_ipv6_tuple__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(rte_ipv6_tuple__bindgen_ty_1)) ); - fn test_field_sctp_tag() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_ipv6_tuple__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple__bindgen_ty_1), - "::", - stringify!(sctp_tag) - ) - ); - } - test_field_sctp_tag(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sctp_tag) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple__bindgen_ty_1), + "::", + stringify!(sctp_tag) + ) + ); } impl Clone for rte_ipv6_tuple__bindgen_ty_1 { fn clone(&self) -> Self { @@ -344,6 +299,9 @@ impl Clone for rte_ipv6_tuple__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_ipv6_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_ipv6_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ipv6_tuple>(), 36usize, @@ -354,42 +312,30 @@ fn bindgen_test_layout_rte_ipv6_tuple() { 4usize, concat!("Alignment of ", stringify!(rte_ipv6_tuple)) ); - fn test_field_src_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv6_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple), - "::", - stringify!(src_addr) - ) - ); - } - test_field_src_addr(); - fn test_field_dst_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ipv6_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_ipv6_tuple), - "::", - stringify!(dst_addr) - ) - ); - } - test_field_dst_addr(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple), + "::", + stringify!(src_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_addr) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_ipv6_tuple), + "::", + stringify!(dst_addr) + ) + ); } impl Clone for rte_ipv6_tuple { fn clone(&self) -> Self { @@ -405,47 +351,34 @@ pub struct rte_thash_tuple { } #[test] fn bindgen_test_layout_rte_thash_tuple() { + const UNINIT: ::std::mem::MaybeUninit<rte_thash_tuple> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_thash_tuple>(), 48usize, concat!("Size of: ", stringify!(rte_thash_tuple)) ); - fn test_field_v4() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_thash_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v4) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_thash_tuple), - "::", - stringify!(v4) - ) - ); - } - test_field_v4(); - fn test_field_v6() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_thash_tuple>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v6) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_thash_tuple), - "::", - stringify!(v6) - ) - ); - } - test_field_v6(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v4) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_thash_tuple), + "::", + stringify!(v4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v6) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_thash_tuple), + "::", + stringify!(v6) + ) + ); } impl Clone for rte_thash_tuple { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/accessors.rs b/tests/expectations/tests/accessors.rs index 843b792e..05fdaf4c 100644 --- a/tests/expectations/tests/accessors.rs +++ b/tests/expectations/tests/accessors.rs @@ -18,6 +18,9 @@ pub struct SomeAccessors { } #[test] fn bindgen_test_layout_SomeAccessors() { + const UNINIT: ::std::mem::MaybeUninit<SomeAccessors> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<SomeAccessors>(), 16usize, @@ -28,77 +31,56 @@ fn bindgen_test_layout_SomeAccessors() { 4usize, concat!("Alignment of ", stringify!(SomeAccessors)) ); - fn test_field_mNoAccessor() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SomeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mNoAccessor) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(SomeAccessors), - "::", - stringify!(mNoAccessor) - ) - ); - } - test_field_mNoAccessor(); - fn test_field_mBothAccessors() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SomeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(SomeAccessors), - "::", - stringify!(mBothAccessors) - ) - ); - } - test_field_mBothAccessors(); - fn test_field_mUnsafeAccessors() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SomeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mUnsafeAccessors) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(SomeAccessors), - "::", - stringify!(mUnsafeAccessors) - ) - ); - } - test_field_mUnsafeAccessors(); - fn test_field_mImmutableAccessor() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SomeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mImmutableAccessor) as usize - - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(SomeAccessors), - "::", - stringify!(mImmutableAccessor) - ) - ); - } - test_field_mImmutableAccessor(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mNoAccessor) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(SomeAccessors), + "::", + stringify!(mNoAccessor) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(SomeAccessors), + "::", + stringify!(mBothAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mUnsafeAccessors) as usize - + ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(SomeAccessors), + "::", + stringify!(mUnsafeAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mImmutableAccessor) as usize - + ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(SomeAccessors), + "::", + stringify!(mImmutableAccessor) + ) + ); } impl SomeAccessors { #[inline] @@ -133,6 +115,9 @@ pub struct AllAccessors { } #[test] fn bindgen_test_layout_AllAccessors() { + const UNINIT: ::std::mem::MaybeUninit<AllAccessors> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllAccessors>(), 8usize, @@ -143,42 +128,31 @@ fn bindgen_test_layout_AllAccessors() { 4usize, concat!("Alignment of ", stringify!(AllAccessors)) ); - fn test_field_mBothAccessors() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllAccessors), - "::", - stringify!(mBothAccessors) - ) - ); - } - test_field_mBothAccessors(); - fn test_field_mAlsoBothAccessors() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mAlsoBothAccessors) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(AllAccessors), - "::", - stringify!(mAlsoBothAccessors) - ) - ); - } - test_field_mAlsoBothAccessors(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllAccessors), + "::", + stringify!(mBothAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mAlsoBothAccessors) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(AllAccessors), + "::", + stringify!(mAlsoBothAccessors) + ) + ); } impl AllAccessors { #[inline] @@ -207,6 +181,9 @@ pub struct AllUnsafeAccessors { } #[test] fn bindgen_test_layout_AllUnsafeAccessors() { + const UNINIT: ::std::mem::MaybeUninit<AllUnsafeAccessors> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllUnsafeAccessors>(), 8usize, @@ -217,44 +194,31 @@ fn bindgen_test_layout_AllUnsafeAccessors() { 4usize, concat!("Alignment of ", stringify!(AllUnsafeAccessors)) ); - fn test_field_mBothAccessors() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<AllUnsafeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllUnsafeAccessors), - "::", - stringify!(mBothAccessors) - ) - ); - } - test_field_mBothAccessors(); - fn test_field_mAlsoBothAccessors() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<AllUnsafeAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mAlsoBothAccessors) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(AllUnsafeAccessors), - "::", - stringify!(mAlsoBothAccessors) - ) - ); - } - test_field_mAlsoBothAccessors(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllUnsafeAccessors), + "::", + stringify!(mBothAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mAlsoBothAccessors) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(AllUnsafeAccessors), + "::", + stringify!(mAlsoBothAccessors) + ) + ); } impl AllUnsafeAccessors { #[inline] @@ -292,6 +256,9 @@ pub struct ContradictAccessors { } #[test] fn bindgen_test_layout_ContradictAccessors() { + const UNINIT: ::std::mem::MaybeUninit<ContradictAccessors> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContradictAccessors>(), 16usize, @@ -302,82 +269,56 @@ fn bindgen_test_layout_ContradictAccessors() { 4usize, concat!("Alignment of ", stringify!(ContradictAccessors)) ); - fn test_field_mBothAccessors() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContradictAccessors), - "::", - stringify!(mBothAccessors) - ) - ); - } - test_field_mBothAccessors(); - fn test_field_mNoAccessors() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mNoAccessors) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ContradictAccessors), - "::", - stringify!(mNoAccessors) - ) - ); - } - test_field_mNoAccessors(); - fn test_field_mUnsafeAccessors() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mUnsafeAccessors) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ContradictAccessors), - "::", - stringify!(mUnsafeAccessors) - ) - ); - } - test_field_mUnsafeAccessors(); - fn test_field_mImmutableAccessor() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictAccessors>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mImmutableAccessor) as usize - - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(ContradictAccessors), - "::", - stringify!(mImmutableAccessor) - ) - ); - } - test_field_mImmutableAccessor(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBothAccessors) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContradictAccessors), + "::", + stringify!(mBothAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mNoAccessors) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ContradictAccessors), + "::", + stringify!(mNoAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mUnsafeAccessors) as usize - + ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ContradictAccessors), + "::", + stringify!(mUnsafeAccessors) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mImmutableAccessor) as usize - + ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ContradictAccessors), + "::", + stringify!(mImmutableAccessor) + ) + ); } impl ContradictAccessors { #[inline] @@ -411,6 +352,9 @@ pub struct Replaced { } #[test] fn bindgen_test_layout_Replaced() { + const UNINIT: ::std::mem::MaybeUninit<Replaced> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Replaced>(), 4usize, @@ -421,23 +365,18 @@ fn bindgen_test_layout_Replaced() { 4usize, concat!("Alignment of ", stringify!(Replaced)) ); - fn test_field_mAccessor() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Replaced>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mAccessor) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Replaced), - "::", - stringify!(mAccessor) - ) - ); - } - test_field_mAccessor(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mAccessor) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Replaced), + "::", + stringify!(mAccessor) + ) + ); } impl Replaced { #[inline] @@ -457,6 +396,9 @@ pub struct Wrapper { } #[test] fn bindgen_test_layout_Wrapper() { + const UNINIT: ::std::mem::MaybeUninit<Wrapper> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Wrapper>(), 4usize, @@ -467,23 +409,18 @@ fn bindgen_test_layout_Wrapper() { 4usize, concat!("Alignment of ", stringify!(Wrapper)) ); - fn test_field_mReplaced() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Wrapper>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mReplaced) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Wrapper), - "::", - stringify!(mReplaced) - ) - ); - } - test_field_mReplaced(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mReplaced) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Wrapper), + "::", + stringify!(mReplaced) + ) + ); } impl Wrapper { #[inline] diff --git a/tests/expectations/tests/allowlist-file.rs b/tests/expectations/tests/allowlist-file.rs index e737fe82..3b72fb75 100644 --- a/tests/expectations/tests/allowlist-file.rs +++ b/tests/expectations/tests/allowlist-file.rs @@ -58,6 +58,9 @@ pub struct StructWithAllowlistedDefinition { } #[test] fn bindgen_test_layout_StructWithAllowlistedDefinition() { + const UNINIT: ::std::mem::MaybeUninit<StructWithAllowlistedDefinition> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<StructWithAllowlistedDefinition>(), 8usize, @@ -68,25 +71,16 @@ fn bindgen_test_layout_StructWithAllowlistedDefinition() { 8usize, concat!("Alignment of ", stringify!(StructWithAllowlistedDefinition)) ); - fn test_field_other() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - StructWithAllowlistedDefinition, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(StructWithAllowlistedDefinition), - "::", - stringify!(other) - ) - ); - } - test_field_other(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(StructWithAllowlistedDefinition), + "::", + stringify!(other) + ) + ); } impl Default for StructWithAllowlistedDefinition { fn default() -> Self { @@ -104,6 +98,9 @@ pub struct StructWithAllowlistedFwdDecl { } #[test] fn bindgen_test_layout_StructWithAllowlistedFwdDecl() { + const UNINIT: ::std::mem::MaybeUninit<StructWithAllowlistedFwdDecl> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<StructWithAllowlistedFwdDecl>(), 4usize, @@ -114,25 +111,16 @@ fn bindgen_test_layout_StructWithAllowlistedFwdDecl() { 4usize, concat!("Alignment of ", stringify!(StructWithAllowlistedFwdDecl)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - StructWithAllowlistedFwdDecl, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(StructWithAllowlistedFwdDecl), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(StructWithAllowlistedFwdDecl), + "::", + stringify!(b) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -141,6 +129,9 @@ pub struct AllowlistMe { } #[test] fn bindgen_test_layout_AllowlistMe() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistMe> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistMe>(), 4usize, @@ -151,21 +142,14 @@ fn bindgen_test_layout_AllowlistMe() { 4usize, concat!("Alignment of ", stringify!(AllowlistMe)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllowlistMe>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistMe), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistMe), + "::", + stringify!(foo) + ) + ); } diff --git a/tests/expectations/tests/allowlist-namespaces.rs b/tests/expectations/tests/allowlist-namespaces.rs index ac868c64..ee9fe428 100644 --- a/tests/expectations/tests/allowlist-namespaces.rs +++ b/tests/expectations/tests/allowlist-namespaces.rs @@ -41,6 +41,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 1usize, @@ -51,24 +54,18 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_helper() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).helper) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(helper) - ) - ); - } - test_field_helper(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).helper) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Test), + "::", + stringify!(helper) + ) + ); } } } diff --git a/tests/expectations/tests/allowlist_warnings.rs b/tests/expectations/tests/allowlist_warnings.rs new file mode 100644 index 00000000..131dbdf3 --- /dev/null +++ b/tests/expectations/tests/allowlist_warnings.rs @@ -0,0 +1,6 @@ +#![allow( + dead_code, + non_snake_case, + non_camel_case_types, + non_upper_case_globals +)] diff --git a/tests/expectations/tests/allowlisted-item-references-no-hash.rs b/tests/expectations/tests/allowlisted-item-references-no-hash.rs index 82701634..56dc5bce 100644 --- a/tests/expectations/tests/allowlisted-item-references-no-hash.rs +++ b/tests/expectations/tests/allowlisted-item-references-no-hash.rs @@ -30,6 +30,9 @@ pub struct AllowlistMe { } #[test] fn bindgen_test_layout_AllowlistMe() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistMe> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistMe>(), 1usize, @@ -40,21 +43,14 @@ fn bindgen_test_layout_AllowlistMe() { 1usize, concat!("Alignment of ", stringify!(AllowlistMe)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllowlistMe>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistMe), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistMe), + "::", + stringify!(a) + ) + ); } diff --git a/tests/expectations/tests/allowlisted-item-references-no-partialeq.rs b/tests/expectations/tests/allowlisted-item-references-no-partialeq.rs index ec4e0c9d..36cdda0e 100644 --- a/tests/expectations/tests/allowlisted-item-references-no-partialeq.rs +++ b/tests/expectations/tests/allowlisted-item-references-no-partialeq.rs @@ -30,6 +30,9 @@ pub struct AllowlistMe { } #[test] fn bindgen_test_layout_AllowlistMe() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistMe> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistMe>(), 1usize, @@ -40,21 +43,14 @@ fn bindgen_test_layout_AllowlistMe() { 1usize, concat!("Alignment of ", stringify!(AllowlistMe)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllowlistMe>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistMe), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistMe), + "::", + stringify!(a) + ) + ); } diff --git a/tests/expectations/tests/allowlisted_item_references_no_copy.rs b/tests/expectations/tests/allowlisted_item_references_no_copy.rs index 9f6685ec..625e0ce6 100644 --- a/tests/expectations/tests/allowlisted_item_references_no_copy.rs +++ b/tests/expectations/tests/allowlisted_item_references_no_copy.rs @@ -30,6 +30,9 @@ pub struct AllowlistMe { } #[test] fn bindgen_test_layout_AllowlistMe() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistMe> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistMe>(), 1usize, @@ -40,21 +43,14 @@ fn bindgen_test_layout_AllowlistMe() { 1usize, concat!("Alignment of ", stringify!(AllowlistMe)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AllowlistMe>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistMe), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistMe), + "::", + stringify!(a) + ) + ); } diff --git a/tests/expectations/tests/annotation_hide.rs b/tests/expectations/tests/annotation_hide.rs index a899195e..a90c4261 100644 --- a/tests/expectations/tests/annotation_hide.rs +++ b/tests/expectations/tests/annotation_hide.rs @@ -32,6 +32,9 @@ pub struct NotAnnotated { } #[test] fn bindgen_test_layout_NotAnnotated() { + const UNINIT: ::std::mem::MaybeUninit<NotAnnotated> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NotAnnotated>(), 4usize, @@ -42,21 +45,14 @@ fn bindgen_test_layout_NotAnnotated() { 4usize, concat!("Alignment of ", stringify!(NotAnnotated)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NotAnnotated>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NotAnnotated), - "::", - stringify!(f) - ) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NotAnnotated), + "::", + stringify!(f) + ) + ); } diff --git a/tests/expectations/tests/anon-fields-prefix.rs b/tests/expectations/tests/anon-fields-prefix.rs index a77bc8a7..d09cab40 100644 --- a/tests/expectations/tests/anon-fields-prefix.rs +++ b/tests/expectations/tests/anon-fields-prefix.rs @@ -21,6 +21,9 @@ pub struct color__bindgen_ty_1 { } #[test] fn bindgen_test_layout_color__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<color__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<color__bindgen_ty_1>(), 3usize, @@ -31,60 +34,36 @@ fn bindgen_test_layout_color__bindgen_ty_1() { 1usize, concat!("Alignment of ", stringify!(color__bindgen_ty_1)) ); - fn test_field_r() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_1), - "::", - stringify!(r) - ) - ); - } - test_field_r(); - fn test_field_g() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_1), - "::", - stringify!(g) - ) - ); - } - test_field_g(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_1), + "::", + stringify!(r) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_1), + "::", + stringify!(g) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -95,6 +74,9 @@ pub struct color__bindgen_ty_2 { } #[test] fn bindgen_test_layout_color__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<color__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<color__bindgen_ty_2>(), 3usize, @@ -105,63 +87,42 @@ fn bindgen_test_layout_color__bindgen_ty_2() { 1usize, concat!("Alignment of ", stringify!(color__bindgen_ty_2)) ); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_2), - "::", - stringify!(y) - ) - ); - } - test_field_y(); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_2), - "::", - stringify!(u) - ) - ); - } - test_field_u(); - fn test_field_v() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<color__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(color__bindgen_ty_2), - "::", - stringify!(v) - ) - ); - } - test_field_v(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_2), + "::", + stringify!(y) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_2), + "::", + stringify!(u) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(color__bindgen_ty_2), + "::", + stringify!(v) + ) + ); } #[test] fn bindgen_test_layout_color() { + const UNINIT: ::std::mem::MaybeUninit<color> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<color>(), 3usize, @@ -172,23 +133,11 @@ fn bindgen_test_layout_color() { 1usize, concat!("Alignment of ", stringify!(color)) ); - fn test_field_v3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<color>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v3) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(color), - "::", - stringify!(v3) - ) - ); - } - test_field_v3(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v3) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(color), "::", stringify!(v3)) + ); } impl Default for color { fn default() -> Self { diff --git a/tests/expectations/tests/anon_enum.rs b/tests/expectations/tests/anon_enum.rs index 06e98e71..429f94ce 100644 --- a/tests/expectations/tests/anon_enum.rs +++ b/tests/expectations/tests/anon_enum.rs @@ -19,6 +19,9 @@ pub enum Test__bindgen_ty_1 { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 8usize, @@ -29,40 +32,16 @@ fn bindgen_test_layout_Test() { 4usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(foo)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(bar)) + ); } #[repr(u32)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] diff --git a/tests/expectations/tests/anon_struct_in_union.rs b/tests/expectations/tests/anon_struct_in_union.rs index 49caa13b..f32b057b 100644 --- a/tests/expectations/tests/anon_struct_in_union.rs +++ b/tests/expectations/tests/anon_struct_in_union.rs @@ -22,6 +22,9 @@ pub struct s__bindgen_ty_1_inner { } #[test] fn bindgen_test_layout_s__bindgen_ty_1_inner() { + const UNINIT: ::std::mem::MaybeUninit<s__bindgen_ty_1_inner> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s__bindgen_ty_1_inner>(), 4usize, @@ -32,27 +35,22 @@ fn bindgen_test_layout_s__bindgen_ty_1_inner() { 4usize, concat!("Alignment of ", stringify!(s__bindgen_ty_1_inner)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<s__bindgen_ty_1_inner>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(s__bindgen_ty_1_inner), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(s__bindgen_ty_1_inner), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_s__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<s__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s__bindgen_ty_1>(), 4usize, @@ -63,24 +61,16 @@ fn bindgen_test_layout_s__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(s__bindgen_ty_1)) ); - fn test_field_field() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<s__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(s__bindgen_ty_1), - "::", - stringify!(field) - ) - ); - } - test_field_field(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(s__bindgen_ty_1), + "::", + stringify!(field) + ) + ); } impl Default for s__bindgen_ty_1 { fn default() -> Self { @@ -93,6 +83,9 @@ impl Default for s__bindgen_ty_1 { } #[test] fn bindgen_test_layout_s() { + const UNINIT: ::std::mem::MaybeUninit<s> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s>(), 4usize, @@ -103,18 +96,11 @@ fn bindgen_test_layout_s() { 4usize, concat!("Alignment of ", stringify!(s)) ); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<s>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(s), "::", stringify!(u)) - ); - } - test_field_u(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(s), "::", stringify!(u)) + ); } impl Default for s { fn default() -> Self { diff --git a/tests/expectations/tests/anon_struct_in_union_1_0.rs b/tests/expectations/tests/anon_struct_in_union_1_0.rs index 492ed6ca..cbc5ac9b 100644 --- a/tests/expectations/tests/anon_struct_in_union_1_0.rs +++ b/tests/expectations/tests/anon_struct_in_union_1_0.rs @@ -66,6 +66,9 @@ pub struct s__bindgen_ty_1_inner { } #[test] fn bindgen_test_layout_s__bindgen_ty_1_inner() { + const UNINIT: ::std::mem::MaybeUninit<s__bindgen_ty_1_inner> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s__bindgen_ty_1_inner>(), 4usize, @@ -76,24 +79,16 @@ fn bindgen_test_layout_s__bindgen_ty_1_inner() { 4usize, concat!("Alignment of ", stringify!(s__bindgen_ty_1_inner)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<s__bindgen_ty_1_inner>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(s__bindgen_ty_1_inner), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(s__bindgen_ty_1_inner), + "::", + stringify!(b) + ) + ); } impl Clone for s__bindgen_ty_1_inner { fn clone(&self) -> Self { @@ -102,6 +97,9 @@ impl Clone for s__bindgen_ty_1_inner { } #[test] fn bindgen_test_layout_s__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<s__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s__bindgen_ty_1>(), 4usize, @@ -112,24 +110,16 @@ fn bindgen_test_layout_s__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(s__bindgen_ty_1)) ); - fn test_field_field() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<s__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(s__bindgen_ty_1), - "::", - stringify!(field) - ) - ); - } - test_field_field(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(s__bindgen_ty_1), + "::", + stringify!(field) + ) + ); } impl Clone for s__bindgen_ty_1 { fn clone(&self) -> Self { @@ -138,6 +128,9 @@ impl Clone for s__bindgen_ty_1 { } #[test] fn bindgen_test_layout_s() { + const UNINIT: ::std::mem::MaybeUninit<s> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<s>(), 4usize, @@ -148,18 +141,11 @@ fn bindgen_test_layout_s() { 4usize, concat!("Alignment of ", stringify!(s)) ); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<s>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(s), "::", stringify!(u)) - ); - } - test_field_u(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(s), "::", stringify!(u)) + ); } impl Clone for s { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/array-of-zero-sized-types.rs b/tests/expectations/tests/array-of-zero-sized-types.rs index 875aef10..ad1f22ed 100644 --- a/tests/expectations/tests/array-of-zero-sized-types.rs +++ b/tests/expectations/tests/array-of-zero-sized-types.rs @@ -33,6 +33,9 @@ pub struct HasArrayOfEmpty { } #[test] fn bindgen_test_layout_HasArrayOfEmpty() { + const UNINIT: ::std::mem::MaybeUninit<HasArrayOfEmpty> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<HasArrayOfEmpty>(), 10usize, @@ -43,22 +46,14 @@ fn bindgen_test_layout_HasArrayOfEmpty() { 1usize, concat!("Alignment of ", stringify!(HasArrayOfEmpty)) ); - fn test_field_empties() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<HasArrayOfEmpty>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).empties) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(HasArrayOfEmpty), - "::", - stringify!(empties) - ) - ); - } - test_field_empties(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).empties) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(HasArrayOfEmpty), + "::", + stringify!(empties) + ) + ); } diff --git a/tests/expectations/tests/bindgen-union-inside-namespace.rs b/tests/expectations/tests/bindgen-union-inside-namespace.rs index 04cdf0b4..8a091cb5 100644 --- a/tests/expectations/tests/bindgen-union-inside-namespace.rs +++ b/tests/expectations/tests/bindgen-union-inside-namespace.rs @@ -67,6 +67,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -77,40 +80,30 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(foo) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(bar) + ) + ); } impl Clone for Bar { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/bitfield-linux-32.rs b/tests/expectations/tests/bitfield-linux-32.rs index dd41d92d..44c68626 100644 --- a/tests/expectations/tests/bitfield-linux-32.rs +++ b/tests/expectations/tests/bitfield-linux-32.rs @@ -100,6 +100,9 @@ pub struct Test { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 16usize, @@ -110,23 +113,11 @@ fn bindgen_test_layout_Test() { 4usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(foo)) + ); } impl Test { #[inline] diff --git a/tests/expectations/tests/bitfield_align.rs b/tests/expectations/tests/bitfield_align.rs index 1b951336..4baca112 100644 --- a/tests/expectations/tests/bitfield_align.rs +++ b/tests/expectations/tests/bitfield_align.rs @@ -102,6 +102,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -112,30 +115,16 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(x)) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 3usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(y)) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(x)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 3usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(y)) + ); } impl A { #[inline] @@ -401,6 +390,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 8usize, @@ -411,30 +403,16 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(x)) - ); - } - test_field_x(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(baz)) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(x)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(baz)) + ); } impl C { #[inline] @@ -712,6 +690,9 @@ pub struct Date3 { } #[test] fn bindgen_test_layout_Date3() { + const UNINIT: ::std::mem::MaybeUninit<Date3> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Date3>(), 4usize, @@ -722,23 +703,16 @@ fn bindgen_test_layout_Date3() { 2usize, concat!("Alignment of ", stringify!(Date3)) ); - fn test_field_byte() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Date3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).byte) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(Date3), - "::", - stringify!(byte) - ) - ); - } - test_field_byte(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).byte) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(Date3), + "::", + stringify!(byte) + ) + ); } impl Date3 { #[inline] diff --git a/tests/expectations/tests/blocklist-and-impl-debug.rs b/tests/expectations/tests/blocklist-and-impl-debug.rs index 055cca8c..788cb30c 100644 --- a/tests/expectations/tests/blocklist-and-impl-debug.rs +++ b/tests/expectations/tests/blocklist-and-impl-debug.rs @@ -14,6 +14,9 @@ pub struct ShouldManuallyImplDebug { } #[test] fn bindgen_test_layout_ShouldManuallyImplDebug() { + const UNINIT: ::std::mem::MaybeUninit<ShouldManuallyImplDebug> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldManuallyImplDebug>(), 1usize, @@ -24,25 +27,16 @@ fn bindgen_test_layout_ShouldManuallyImplDebug() { 1usize, concat!("Alignment of ", stringify!(ShouldManuallyImplDebug)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldManuallyImplDebug>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldManuallyImplDebug), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldManuallyImplDebug), + "::", + stringify!(a) + ) + ); } impl Default for ShouldManuallyImplDebug { fn default() -> Self { diff --git a/tests/expectations/tests/blocklist-file.rs b/tests/expectations/tests/blocklist-file.rs index 7843028d..4d2b6712 100644 --- a/tests/expectations/tests/blocklist-file.rs +++ b/tests/expectations/tests/blocklist-file.rs @@ -14,6 +14,9 @@ pub struct SizedIntegers { } #[test] fn bindgen_test_layout_SizedIntegers() { + const UNINIT: ::std::mem::MaybeUninit<SizedIntegers> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<SizedIntegers>(), 8usize, @@ -24,57 +27,36 @@ fn bindgen_test_layout_SizedIntegers() { 4usize, concat!("Alignment of ", stringify!(SizedIntegers)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SizedIntegers>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(SizedIntegers), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SizedIntegers>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(SizedIntegers), - "::", - stringify!(y) - ) - ); - } - test_field_y(); - fn test_field_z() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<SizedIntegers>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).z) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(SizedIntegers), - "::", - stringify!(z) - ) - ); - } - test_field_z(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(SizedIntegers), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(SizedIntegers), + "::", + stringify!(y) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).z) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(SizedIntegers), + "::", + stringify!(z) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -83,6 +65,9 @@ pub struct StructWithBlocklistedFwdDecl { } #[test] fn bindgen_test_layout_StructWithBlocklistedFwdDecl() { + const UNINIT: ::std::mem::MaybeUninit<StructWithBlocklistedFwdDecl> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<StructWithBlocklistedFwdDecl>(), 1usize, @@ -93,23 +78,14 @@ fn bindgen_test_layout_StructWithBlocklistedFwdDecl() { 1usize, concat!("Alignment of ", stringify!(StructWithBlocklistedFwdDecl)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - StructWithBlocklistedFwdDecl, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(StructWithBlocklistedFwdDecl), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(StructWithBlocklistedFwdDecl), + "::", + stringify!(b) + ) + ); } diff --git a/tests/expectations/tests/blocks-signature.rs b/tests/expectations/tests/blocks-signature.rs index 048a0d4e..779d0ecb 100644 --- a/tests/expectations/tests/blocks-signature.rs +++ b/tests/expectations/tests/blocks-signature.rs @@ -37,6 +37,9 @@ pub struct contains_block_pointers { } #[test] fn bindgen_test_layout_contains_block_pointers() { + const UNINIT: ::std::mem::MaybeUninit<contains_block_pointers> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<contains_block_pointers>(), 16usize, @@ -47,44 +50,26 @@ fn bindgen_test_layout_contains_block_pointers() { 8usize, concat!("Alignment of ", stringify!(contains_block_pointers)) ); - fn test_field_val() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<contains_block_pointers>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(contains_block_pointers), - "::", - stringify!(val) - ) - ); - } - test_field_val(); - fn test_field_ptr_val() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<contains_block_pointers>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr_val) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(contains_block_pointers), - "::", - stringify!(ptr_val) - ) - ); - } - test_field_ptr_val(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(contains_block_pointers), + "::", + stringify!(val) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr_val) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(contains_block_pointers), + "::", + stringify!(ptr_val) + ) + ); } impl Default for contains_block_pointers { fn default() -> Self { diff --git a/tests/expectations/tests/blocks.rs b/tests/expectations/tests/blocks.rs index abeec80f..dbafaf94 100644 --- a/tests/expectations/tests/blocks.rs +++ b/tests/expectations/tests/blocks.rs @@ -36,6 +36,9 @@ pub struct contains_block_pointers { } #[test] fn bindgen_test_layout_contains_block_pointers() { + const UNINIT: ::std::mem::MaybeUninit<contains_block_pointers> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<contains_block_pointers>(), 16usize, @@ -46,44 +49,26 @@ fn bindgen_test_layout_contains_block_pointers() { 8usize, concat!("Alignment of ", stringify!(contains_block_pointers)) ); - fn test_field_val() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<contains_block_pointers>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(contains_block_pointers), - "::", - stringify!(val) - ) - ); - } - test_field_val(); - fn test_field_ptr_val() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<contains_block_pointers>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr_val) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(contains_block_pointers), - "::", - stringify!(ptr_val) - ) - ); - } - test_field_ptr_val(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(contains_block_pointers), + "::", + stringify!(val) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr_val) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(contains_block_pointers), + "::", + stringify!(ptr_val) + ) + ); } impl Default for contains_block_pointers { fn default() -> Self { diff --git a/tests/expectations/tests/c_naming.rs b/tests/expectations/tests/c_naming.rs index bc0955fe..3e56b1d6 100644 --- a/tests/expectations/tests/c_naming.rs +++ b/tests/expectations/tests/c_naming.rs @@ -12,6 +12,9 @@ pub struct struct_a { } #[test] fn bindgen_test_layout_struct_a() { + const UNINIT: ::std::mem::MaybeUninit<struct_a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<struct_a>(), 4usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_struct_a() { 4usize, concat!("Alignment of ", stringify!(struct_a)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<struct_a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(struct_a), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(struct_a), + "::", + stringify!(a) + ) + ); } pub type a = *const struct_a; #[repr(C)] @@ -49,6 +45,9 @@ pub union union_b { } #[test] fn bindgen_test_layout_union_b() { + const UNINIT: ::std::mem::MaybeUninit<union_b> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<union_b>(), 4usize, @@ -59,40 +58,26 @@ fn bindgen_test_layout_union_b() { 4usize, concat!("Alignment of ", stringify!(union_b)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<union_b>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(union_b), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<union_b>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(union_b), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(union_b), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(union_b), + "::", + stringify!(b) + ) + ); } impl Default for union_b { fn default() -> Self { diff --git a/tests/expectations/tests/canonical-types.rs b/tests/expectations/tests/canonical-types.rs index effe7fed..a68e1424 100644 --- a/tests/expectations/tests/canonical-types.rs +++ b/tests/expectations/tests/canonical-types.rs @@ -166,6 +166,9 @@ pub struct ClassAInner { } #[test] fn bindgen_test_layout_ClassAInner() { + const UNINIT: ::std::mem::MaybeUninit<ClassAInner> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ClassAInner>(), 8usize, @@ -176,23 +179,16 @@ fn bindgen_test_layout_ClassAInner() { 8usize, concat!("Alignment of ", stringify!(ClassAInner)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ClassAInner>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ClassAInner), - "::", - stringify!(x) - ) - ); - } - test_field_x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ClassAInner), + "::", + stringify!(x) + ) + ); } impl Default for ClassAInner { fn default() -> Self { @@ -210,6 +206,9 @@ pub struct ClassCInnerA { } #[test] fn bindgen_test_layout_ClassCInnerA() { + const UNINIT: ::std::mem::MaybeUninit<ClassCInnerA> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ClassCInnerA>(), 8usize, @@ -220,23 +219,16 @@ fn bindgen_test_layout_ClassCInnerA() { 8usize, concat!("Alignment of ", stringify!(ClassCInnerA)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ClassCInnerA>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ClassCInnerA), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ClassCInnerA), + "::", + stringify!(member) + ) + ); } impl Default for ClassCInnerA { fn default() -> Self { @@ -254,6 +246,9 @@ pub struct ClassCInnerB { } #[test] fn bindgen_test_layout_ClassCInnerB() { + const UNINIT: ::std::mem::MaybeUninit<ClassCInnerB> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ClassCInnerB>(), 8usize, @@ -264,23 +259,16 @@ fn bindgen_test_layout_ClassCInnerB() { 8usize, concat!("Alignment of ", stringify!(ClassCInnerB)) ); - fn test_field_cache() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ClassCInnerB>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cache) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ClassCInnerB), - "::", - stringify!(cache) - ) - ); - } - test_field_cache(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cache) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ClassCInnerB), + "::", + stringify!(cache) + ) + ); } impl Default for ClassCInnerB { fn default() -> Self { diff --git a/tests/expectations/tests/char.rs b/tests/expectations/tests/char.rs index 3b6e1195..960a681f 100644 --- a/tests/expectations/tests/char.rs +++ b/tests/expectations/tests/char.rs @@ -26,6 +26,9 @@ pub struct Test { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 12usize, @@ -36,198 +39,69 @@ fn bindgen_test_layout_Test() { 1usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_ch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(ch) - ) - ); - } - test_field_ch(); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 1usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) - ); - } - test_field_u(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 2usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) - ); - } - test_field_d(); - fn test_field_cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cch) - ) - ); - } - test_field_cch(); - fn test_field_cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cu) - ) - ); - } - test_field_cu(); - fn test_field_cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cd) - ) - ); - } - test_field_cd(); - fn test_field_Cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cch) - ) - ); - } - test_field_Cch(); - fn test_field_Cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cu) - ) - ); - } - test_field_Cu(); - fn test_field_Cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cd) - ) - ); - } - test_field_Cd(); - fn test_field_Ccch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccch) - ) - ); - } - test_field_Ccch(); - fn test_field_Ccu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccu) - ) - ); - } - test_field_Ccu(); - fn test_field_Ccd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize - }, - 11usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccd) - ) - ); - } - test_field_Ccd(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(ch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 1usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 2usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize }, + 3usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize }, + 5usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize }, + 6usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize }, + 7usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(Test), + "::", + stringify!(Ccch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize }, + 10usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize }, + 11usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccd)) + ); } diff --git a/tests/expectations/tests/class.rs b/tests/expectations/tests/class.rs index 3bfba7e1..8542135b 100644 --- a/tests/expectations/tests/class.rs +++ b/tests/expectations/tests/class.rs @@ -43,6 +43,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 40usize, @@ -53,35 +56,23 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(big_array) + ) + ); } impl Default for C { fn default() -> Self { @@ -100,6 +91,9 @@ pub struct C_with_zero_length_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array>(), 40usize, @@ -110,64 +104,41 @@ fn bindgen_test_layout_C_with_zero_length_array() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(zero_length_array) + ) + ); } impl Default for C_with_zero_length_array { fn default() -> Self { @@ -186,6 +157,9 @@ pub struct C_with_zero_length_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_2>(), 4usize, @@ -196,45 +170,29 @@ fn bindgen_test_layout_C_with_zero_length_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] pub struct C_with_incomplete_array { @@ -353,6 +311,9 @@ pub struct WithDtor { } #[test] fn bindgen_test_layout_WithDtor() { + const UNINIT: ::std::mem::MaybeUninit<WithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithDtor>(), 4usize, @@ -363,23 +324,16 @@ fn bindgen_test_layout_WithDtor() { 4usize, concat!("Alignment of ", stringify!(WithDtor)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithDtor), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithDtor), + "::", + stringify!(b) + ) + ); } #[repr(C)] pub struct IncompleteArrayNonCopiable { @@ -416,6 +370,9 @@ pub union Union { } #[test] fn bindgen_test_layout_Union() { + const UNINIT: ::std::mem::MaybeUninit<Union> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Union>(), 4usize, @@ -426,40 +383,16 @@ fn bindgen_test_layout_Union() { 4usize, concat!("Alignment of ", stringify!(Union)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(d) - ) - ); - } - test_field_d(); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(i)) + ); } impl Default for Union { fn default() -> Self { @@ -477,6 +410,9 @@ pub struct WithUnion { } #[test] fn bindgen_test_layout_WithUnion() { + const UNINIT: ::std::mem::MaybeUninit<WithUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithUnion>(), 4usize, @@ -487,23 +423,16 @@ fn bindgen_test_layout_WithUnion() { 4usize, concat!("Alignment of ", stringify!(WithUnion)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithUnion), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithUnion), + "::", + stringify!(data) + ) + ); } impl Default for WithUnion { fn default() -> Self { diff --git a/tests/expectations/tests/class_1_0.rs b/tests/expectations/tests/class_1_0.rs index 5415500a..f6c3021e 100644 --- a/tests/expectations/tests/class_1_0.rs +++ b/tests/expectations/tests/class_1_0.rs @@ -86,6 +86,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 40usize, @@ -96,35 +99,23 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(big_array) + ) + ); } impl Clone for C { fn clone(&self) -> Self { @@ -153,6 +144,9 @@ pub struct C_with_zero_length_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array>(), 40usize, @@ -163,64 +157,41 @@ fn bindgen_test_layout_C_with_zero_length_array() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(zero_length_array) + ) + ); } impl Default for C_with_zero_length_array { fn default() -> Self { @@ -239,6 +210,9 @@ pub struct C_with_zero_length_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_2>(), 4usize, @@ -249,45 +223,29 @@ fn bindgen_test_layout_C_with_zero_length_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] pub struct C_with_incomplete_array { @@ -406,6 +364,9 @@ pub struct WithDtor { } #[test] fn bindgen_test_layout_WithDtor() { + const UNINIT: ::std::mem::MaybeUninit<WithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithDtor>(), 4usize, @@ -416,23 +377,16 @@ fn bindgen_test_layout_WithDtor() { 4usize, concat!("Alignment of ", stringify!(WithDtor)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithDtor), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithDtor), + "::", + stringify!(b) + ) + ); } #[repr(C)] pub struct IncompleteArrayNonCopiable { @@ -470,6 +424,9 @@ pub struct Union { } #[test] fn bindgen_test_layout_Union() { + const UNINIT: ::std::mem::MaybeUninit<Union> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Union>(), 4usize, @@ -480,40 +437,16 @@ fn bindgen_test_layout_Union() { 4usize, concat!("Alignment of ", stringify!(Union)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(d) - ) - ); - } - test_field_d(); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(i)) + ); } impl Clone for Union { fn clone(&self) -> Self { @@ -527,6 +460,9 @@ pub struct WithUnion { } #[test] fn bindgen_test_layout_WithUnion() { + const UNINIT: ::std::mem::MaybeUninit<WithUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithUnion>(), 4usize, @@ -537,23 +473,16 @@ fn bindgen_test_layout_WithUnion() { 4usize, concat!("Alignment of ", stringify!(WithUnion)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithUnion), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithUnion), + "::", + stringify!(data) + ) + ); } impl Clone for WithUnion { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/class_nested.rs b/tests/expectations/tests/class_nested.rs index 7ea2fe81..f2cc8326 100644 --- a/tests/expectations/tests/class_nested.rs +++ b/tests/expectations/tests/class_nested.rs @@ -17,6 +17,9 @@ pub struct A_B { } #[test] fn bindgen_test_layout_A_B() { + const UNINIT: ::std::mem::MaybeUninit<A_B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A_B>(), 4usize, @@ -27,23 +30,18 @@ fn bindgen_test_layout_A_B() { 4usize, concat!("Alignment of ", stringify!(A_B)) ); - fn test_field_member_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member_b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A_B), - "::", - stringify!(member_b) - ) - ); - } - test_field_member_b(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).member_b) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A_B), + "::", + stringify!(member_b) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -62,6 +60,9 @@ impl<T> Default for A_D<T> { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -72,23 +73,18 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_member_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member_a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A), - "::", - stringify!(member_a) - ) - ); - } - test_field_member_a(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).member_a) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A), + "::", + stringify!(member_a) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -97,6 +93,9 @@ pub struct A_C { } #[test] fn bindgen_test_layout_A_C() { + const UNINIT: ::std::mem::MaybeUninit<A_C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A_C>(), 4usize, @@ -107,23 +106,11 @@ fn bindgen_test_layout_A_C() { 4usize, concat!("Alignment of ", stringify!(A_C)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A_C), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A_C), "::", stringify!(baz)) + ); } extern "C" { pub static mut var: A_B; @@ -157,6 +144,9 @@ pub struct D { } #[test] fn bindgen_test_layout_D() { + const UNINIT: ::std::mem::MaybeUninit<D> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<D>(), 4usize, @@ -167,23 +157,11 @@ fn bindgen_test_layout_D() { 4usize, concat!("Alignment of ", stringify!(D)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<D>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(D), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(D), "::", stringify!(member)) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] diff --git a/tests/expectations/tests/class_no_members.rs b/tests/expectations/tests/class_no_members.rs index 75487a40..676590c8 100644 --- a/tests/expectations/tests/class_no_members.rs +++ b/tests/expectations/tests/class_no_members.rs @@ -48,6 +48,9 @@ pub struct whatever_child_with_member { } #[test] fn bindgen_test_layout_whatever_child_with_member() { + const UNINIT: ::std::mem::MaybeUninit<whatever_child_with_member> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<whatever_child_with_member>(), 4usize, @@ -58,23 +61,16 @@ fn bindgen_test_layout_whatever_child_with_member() { 4usize, concat!("Alignment of ", stringify!(whatever_child_with_member)) ); - fn test_field_m_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - whatever_child_with_member, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(whatever_child_with_member), - "::", - stringify!(m_member) - ) - ); - } - test_field_m_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(whatever_child_with_member), + "::", + stringify!(m_member) + ) + ); } diff --git a/tests/expectations/tests/class_use_as.rs b/tests/expectations/tests/class_use_as.rs index 12a51bd6..ef130c16 100644 --- a/tests/expectations/tests/class_use_as.rs +++ b/tests/expectations/tests/class_use_as.rs @@ -13,6 +13,9 @@ pub struct whatever { } #[test] fn bindgen_test_layout_whatever() { + const UNINIT: ::std::mem::MaybeUninit<whatever> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<whatever>(), 4usize, @@ -23,23 +26,18 @@ fn bindgen_test_layout_whatever() { 4usize, concat!("Alignment of ", stringify!(whatever)) ); - fn test_field_replacement() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<whatever>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).replacement) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(whatever), - "::", - stringify!(replacement) - ) - ); - } - test_field_replacement(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).replacement) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(whatever), + "::", + stringify!(replacement) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -48,6 +46,9 @@ pub struct container { } #[test] fn bindgen_test_layout_container() { + const UNINIT: ::std::mem::MaybeUninit<container> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<container>(), 4usize, @@ -58,21 +59,14 @@ fn bindgen_test_layout_container() { 4usize, concat!("Alignment of ", stringify!(container)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<container>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(container), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(container), + "::", + stringify!(c) + ) + ); } diff --git a/tests/expectations/tests/class_with_dtor.rs b/tests/expectations/tests/class_with_dtor.rs index a6e75867..86d2a576 100644 --- a/tests/expectations/tests/class_with_dtor.rs +++ b/tests/expectations/tests/class_with_dtor.rs @@ -28,6 +28,9 @@ pub struct WithoutDtor { } #[test] fn bindgen_test_layout_WithoutDtor() { + const UNINIT: ::std::mem::MaybeUninit<WithoutDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithoutDtor>(), 8usize, @@ -38,24 +41,19 @@ fn bindgen_test_layout_WithoutDtor() { 8usize, concat!("Alignment of ", stringify!(WithoutDtor)) ); - fn test_field_shouldBeWithDtor() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithoutDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).shouldBeWithDtor) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithoutDtor), - "::", - stringify!(shouldBeWithDtor) - ) - ); - } - test_field_shouldBeWithDtor(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).shouldBeWithDtor) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithoutDtor), + "::", + stringify!(shouldBeWithDtor) + ) + ); } impl Default for WithoutDtor { fn default() -> Self { diff --git a/tests/expectations/tests/class_with_inner_struct.rs b/tests/expectations/tests/class_with_inner_struct.rs index ba1373b2..eab9d598 100644 --- a/tests/expectations/tests/class_with_inner_struct.rs +++ b/tests/expectations/tests/class_with_inner_struct.rs @@ -20,6 +20,9 @@ pub struct A_Segment { } #[test] fn bindgen_test_layout_A_Segment() { + const UNINIT: ::std::mem::MaybeUninit<A_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A_Segment>(), 8usize, @@ -30,40 +33,26 @@ fn bindgen_test_layout_A_Segment() { 4usize, concat!("Alignment of ", stringify!(A_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(A_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(A_Segment), + "::", + stringify!(end) + ) + ); } #[repr(C)] #[derive(Copy, Clone)] @@ -72,6 +61,9 @@ pub union A__bindgen_ty_1 { } #[test] fn bindgen_test_layout_A__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<A__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A__bindgen_ty_1>(), 4usize, @@ -82,24 +74,16 @@ fn bindgen_test_layout_A__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(A__bindgen_ty_1)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<A__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A__bindgen_ty_1), - "::", - stringify!(f) - ) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A__bindgen_ty_1), + "::", + stringify!(f) + ) + ); } impl Default for A__bindgen_ty_1 { fn default() -> Self { @@ -117,6 +101,9 @@ pub union A__bindgen_ty_2 { } #[test] fn bindgen_test_layout_A__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<A__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A__bindgen_ty_2>(), 4usize, @@ -127,24 +114,16 @@ fn bindgen_test_layout_A__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(A__bindgen_ty_2)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<A__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A__bindgen_ty_2), - "::", - stringify!(d) - ) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A__bindgen_ty_2), + "::", + stringify!(d) + ) + ); } impl Default for A__bindgen_ty_2 { fn default() -> Self { @@ -157,6 +136,9 @@ impl Default for A__bindgen_ty_2 { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 12usize, @@ -167,35 +149,23 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(c)) - ); - } - test_field_c(); - fn test_field_named_union() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).named_union) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(A), - "::", - stringify!(named_union) - ) - ); - } - test_field_named_union(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(c)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).named_union) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(A), + "::", + stringify!(named_union) + ) + ); } impl Default for A { fn default() -> Self { @@ -219,6 +189,9 @@ pub struct B_Segment { } #[test] fn bindgen_test_layout_B_Segment() { + const UNINIT: ::std::mem::MaybeUninit<B_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B_Segment>(), 8usize, @@ -229,43 +202,32 @@ fn bindgen_test_layout_B_Segment() { 4usize, concat!("Alignment of ", stringify!(B_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(B_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(B_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(B_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(B_Segment), + "::", + stringify!(end) + ) + ); } #[test] fn bindgen_test_layout_B() { + const UNINIT: ::std::mem::MaybeUninit<B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B>(), 4usize, @@ -276,18 +238,11 @@ fn bindgen_test_layout_B() { 4usize, concat!("Alignment of ", stringify!(B)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(B), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(B), "::", stringify!(d)) + ); } #[repr(i32)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -319,6 +274,9 @@ pub struct C__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1__bindgen_ty_1>(), 16usize, @@ -329,82 +287,46 @@ fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_mX1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mX1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mX1) - ) - ); - } - test_field_mX1(); - fn test_field_mY1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mY1) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mY1) - ) - ); - } - test_field_mY1(); - fn test_field_mX2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mX2) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mX2) - ) - ); - } - test_field_mX2(); - fn test_field_mY2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mY2) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mY2) - ) - ); - } - test_field_mY2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mX1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mX1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mY1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mY1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mX2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mX2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mY2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mY2) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -414,6 +336,9 @@ pub struct C__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1__bindgen_ty_2>(), 8usize, @@ -424,44 +349,28 @@ fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_mStepSyntax() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mStepSyntax) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(mStepSyntax) - ) - ); - } - test_field_mStepSyntax(); - fn test_field_mSteps() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mSteps) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(mSteps) - ) - ); - } - test_field_mSteps(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mStepSyntax) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(mStepSyntax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mSteps) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(mSteps) + ) + ); } impl Default for C__bindgen_ty_1__bindgen_ty_2 { fn default() -> Self { @@ -474,6 +383,9 @@ impl Default for C__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1>(), 16usize, @@ -484,24 +396,16 @@ fn bindgen_test_layout_C__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1)) ); - fn test_field_mFunc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFunc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1), - "::", - stringify!(mFunc) - ) - ); - } - test_field_mFunc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFunc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1), + "::", + stringify!(mFunc) + ) + ); } impl Default for C__bindgen_ty_1 { fn default() -> Self { @@ -520,6 +424,9 @@ pub struct C_Segment { } #[test] fn bindgen_test_layout_C_Segment() { + const UNINIT: ::std::mem::MaybeUninit<C_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_Segment>(), 8usize, @@ -530,43 +437,32 @@ fn bindgen_test_layout_C_Segment() { 4usize, concat!("Alignment of ", stringify!(C_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_Segment), + "::", + stringify!(end) + ) + ); } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 20usize, @@ -577,18 +473,11 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/class_with_inner_struct_1_0.rs b/tests/expectations/tests/class_with_inner_struct_1_0.rs index 3774c144..42656079 100644 --- a/tests/expectations/tests/class_with_inner_struct_1_0.rs +++ b/tests/expectations/tests/class_with_inner_struct_1_0.rs @@ -63,6 +63,9 @@ pub struct A_Segment { } #[test] fn bindgen_test_layout_A_Segment() { + const UNINIT: ::std::mem::MaybeUninit<A_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A_Segment>(), 8usize, @@ -73,40 +76,26 @@ fn bindgen_test_layout_A_Segment() { 4usize, concat!("Alignment of ", stringify!(A_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(A_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(A_Segment), + "::", + stringify!(end) + ) + ); } impl Clone for A_Segment { fn clone(&self) -> Self { @@ -121,6 +110,9 @@ pub struct A__bindgen_ty_1 { } #[test] fn bindgen_test_layout_A__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<A__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A__bindgen_ty_1>(), 4usize, @@ -131,24 +123,16 @@ fn bindgen_test_layout_A__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(A__bindgen_ty_1)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<A__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A__bindgen_ty_1), - "::", - stringify!(f) - ) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A__bindgen_ty_1), + "::", + stringify!(f) + ) + ); } impl Clone for A__bindgen_ty_1 { fn clone(&self) -> Self { @@ -163,6 +147,9 @@ pub struct A__bindgen_ty_2 { } #[test] fn bindgen_test_layout_A__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<A__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A__bindgen_ty_2>(), 4usize, @@ -173,24 +160,16 @@ fn bindgen_test_layout_A__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(A__bindgen_ty_2)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<A__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A__bindgen_ty_2), - "::", - stringify!(d) - ) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A__bindgen_ty_2), + "::", + stringify!(d) + ) + ); } impl Clone for A__bindgen_ty_2 { fn clone(&self) -> Self { @@ -199,6 +178,9 @@ impl Clone for A__bindgen_ty_2 { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 12usize, @@ -209,35 +191,23 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(c)) - ); - } - test_field_c(); - fn test_field_named_union() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).named_union) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(A), - "::", - stringify!(named_union) - ) - ); - } - test_field_named_union(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(c)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).named_union) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(A), + "::", + stringify!(named_union) + ) + ); } impl Clone for A { fn clone(&self) -> Self { @@ -257,6 +227,9 @@ pub struct B_Segment { } #[test] fn bindgen_test_layout_B_Segment() { + const UNINIT: ::std::mem::MaybeUninit<B_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B_Segment>(), 8usize, @@ -267,40 +240,26 @@ fn bindgen_test_layout_B_Segment() { 4usize, concat!("Alignment of ", stringify!(B_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(B_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(B_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(B_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(B_Segment), + "::", + stringify!(end) + ) + ); } impl Clone for B_Segment { fn clone(&self) -> Self { @@ -309,6 +268,9 @@ impl Clone for B_Segment { } #[test] fn bindgen_test_layout_B() { + const UNINIT: ::std::mem::MaybeUninit<B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B>(), 4usize, @@ -319,18 +281,11 @@ fn bindgen_test_layout_B() { 4usize, concat!("Alignment of ", stringify!(B)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(B), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(B), "::", stringify!(d)) + ); } impl Clone for B { fn clone(&self) -> Self { @@ -368,6 +323,9 @@ pub struct C__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1__bindgen_ty_1>(), 16usize, @@ -378,82 +336,46 @@ fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_mX1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mX1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mX1) - ) - ); - } - test_field_mX1(); - fn test_field_mY1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mY1) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mY1) - ) - ); - } - test_field_mY1(); - fn test_field_mX2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mX2) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mX2) - ) - ); - } - test_field_mX2(); - fn test_field_mY2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mY2) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(mY2) - ) - ); - } - test_field_mY2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mX1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mX1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mY1) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mY1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mX2) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mX2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mY2) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(mY2) + ) + ); } impl Clone for C__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -468,6 +390,9 @@ pub struct C__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1__bindgen_ty_2>(), 8usize, @@ -478,44 +403,28 @@ fn bindgen_test_layout_C__bindgen_ty_1__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_mStepSyntax() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mStepSyntax) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(mStepSyntax) - ) - ); - } - test_field_mStepSyntax(); - fn test_field_mSteps() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mSteps) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(mSteps) - ) - ); - } - test_field_mSteps(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mStepSyntax) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(mStepSyntax) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mSteps) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(mSteps) + ) + ); } impl Clone for C__bindgen_ty_1__bindgen_ty_2 { fn clone(&self) -> Self { @@ -533,6 +442,9 @@ impl Default for C__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_C__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<C__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C__bindgen_ty_1>(), 16usize, @@ -543,24 +455,16 @@ fn bindgen_test_layout_C__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(C__bindgen_ty_1)) ); - fn test_field_mFunc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFunc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C__bindgen_ty_1), - "::", - stringify!(mFunc) - ) - ); - } - test_field_mFunc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFunc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C__bindgen_ty_1), + "::", + stringify!(mFunc) + ) + ); } impl Clone for C__bindgen_ty_1 { fn clone(&self) -> Self { @@ -575,6 +479,9 @@ pub struct C_Segment { } #[test] fn bindgen_test_layout_C_Segment() { + const UNINIT: ::std::mem::MaybeUninit<C_Segment> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_Segment>(), 8usize, @@ -585,40 +492,26 @@ fn bindgen_test_layout_C_Segment() { 4usize, concat!("Alignment of ", stringify!(C_Segment)) ); - fn test_field_begin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_Segment), - "::", - stringify!(begin) - ) - ); - } - test_field_begin(); - fn test_field_end() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C_Segment>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_Segment), - "::", - stringify!(end) - ) - ); - } - test_field_end(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).begin) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_Segment), + "::", + stringify!(begin) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_Segment), + "::", + stringify!(end) + ) + ); } impl Clone for C_Segment { fn clone(&self) -> Self { @@ -627,6 +520,9 @@ impl Clone for C_Segment { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 20usize, @@ -637,18 +533,11 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) + ); } impl Clone for C { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/class_with_typedef.rs b/tests/expectations/tests/class_with_typedef.rs index 6df675b9..65e86b27 100644 --- a/tests/expectations/tests/class_with_typedef.rs +++ b/tests/expectations/tests/class_with_typedef.rs @@ -19,6 +19,9 @@ pub type C_MyInt = ::std::os::raw::c_int; pub type C_Lookup = *const ::std::os::raw::c_char; #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 72usize, @@ -29,71 +32,38 @@ fn bindgen_test_layout_C() { 8usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(c)) - ); - } - test_field_c(); - fn test_field_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(ptr)) - ); - } - test_field_ptr(); - fn test_field_arr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize - }, - 16usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(arr)) - ); - } - test_field_arr(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 56usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) - ); - } - test_field_d(); - fn test_field_other_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).other_ptr) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(other_ptr) - ) - ); - } - test_field_other_ptr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(c)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize }, + 16usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(arr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 56usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(d)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).other_ptr) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(other_ptr) + ) + ); } extern "C" { #[link_name = "\u{1}_ZN1C6methodEi"] @@ -146,6 +116,9 @@ pub struct D { } #[test] fn bindgen_test_layout_D() { + const UNINIT: ::std::mem::MaybeUninit<D> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<D>(), 80usize, @@ -156,18 +129,11 @@ fn bindgen_test_layout_D() { 8usize, concat!("Alignment of ", stringify!(D)) ); - fn test_field_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<D>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize - }, - 72usize, - concat!("Offset of field: ", stringify!(D), "::", stringify!(ptr)) - ); - } - test_field_ptr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 72usize, + concat!("Offset of field: ", stringify!(D), "::", stringify!(ptr)) + ); } impl Default for D { fn default() -> Self { diff --git a/tests/expectations/tests/comment-indent.rs b/tests/expectations/tests/comment-indent.rs index 93412f2f..3ad221aa 100644 --- a/tests/expectations/tests/comment-indent.rs +++ b/tests/expectations/tests/comment-indent.rs @@ -70,6 +70,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz>(), 4usize, @@ -80,24 +83,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Baz)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Baz), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Baz), + "::", + stringify!(member) + ) + ); } /// I'm in an inline namespace, and as such I shouldn't get generated inside /// a rust module, except when the relevant option is specified. Also, this diff --git a/tests/expectations/tests/complex.rs b/tests/expectations/tests/complex.rs index ba1d4ae8..e9c4be9d 100644 --- a/tests/expectations/tests/complex.rs +++ b/tests/expectations/tests/complex.rs @@ -18,6 +18,9 @@ pub struct TestDouble { } #[test] fn bindgen_test_layout_TestDouble() { + const UNINIT: ::std::mem::MaybeUninit<TestDouble> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<TestDouble>(), 16usize, @@ -28,23 +31,16 @@ fn bindgen_test_layout_TestDouble() { 8usize, concat!("Alignment of ", stringify!(TestDouble)) ); - fn test_field_mMember() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<TestDouble>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(TestDouble), - "::", - stringify!(mMember) - ) - ); - } - test_field_mMember(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(TestDouble), + "::", + stringify!(mMember) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -53,6 +49,9 @@ pub struct TestDoublePtr { } #[test] fn bindgen_test_layout_TestDoublePtr() { + const UNINIT: ::std::mem::MaybeUninit<TestDoublePtr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<TestDoublePtr>(), 8usize, @@ -63,23 +62,16 @@ fn bindgen_test_layout_TestDoublePtr() { 8usize, concat!("Alignment of ", stringify!(TestDoublePtr)) ); - fn test_field_mMember() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<TestDoublePtr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(TestDoublePtr), - "::", - stringify!(mMember) - ) - ); - } - test_field_mMember(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(TestDoublePtr), + "::", + stringify!(mMember) + ) + ); } impl Default for TestDoublePtr { fn default() -> Self { @@ -97,6 +89,9 @@ pub struct TestFloat { } #[test] fn bindgen_test_layout_TestFloat() { + const UNINIT: ::std::mem::MaybeUninit<TestFloat> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<TestFloat>(), 8usize, @@ -107,23 +102,16 @@ fn bindgen_test_layout_TestFloat() { 4usize, concat!("Alignment of ", stringify!(TestFloat)) ); - fn test_field_mMember() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<TestFloat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(TestFloat), - "::", - stringify!(mMember) - ) - ); - } - test_field_mMember(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(TestFloat), + "::", + stringify!(mMember) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -132,6 +120,9 @@ pub struct TestFloatPtr { } #[test] fn bindgen_test_layout_TestFloatPtr() { + const UNINIT: ::std::mem::MaybeUninit<TestFloatPtr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<TestFloatPtr>(), 8usize, @@ -142,23 +133,16 @@ fn bindgen_test_layout_TestFloatPtr() { 8usize, concat!("Alignment of ", stringify!(TestFloatPtr)) ); - fn test_field_mMember() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<TestFloatPtr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(TestFloatPtr), - "::", - stringify!(mMember) - ) - ); - } - test_field_mMember(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(TestFloatPtr), + "::", + stringify!(mMember) + ) + ); } impl Default for TestFloatPtr { fn default() -> Self { diff --git a/tests/expectations/tests/const-const-mut-ptr.rs b/tests/expectations/tests/const-const-mut-ptr.rs index b6b3bdb9..e8f13dff 100644 --- a/tests/expectations/tests/const-const-mut-ptr.rs +++ b/tests/expectations/tests/const-const-mut-ptr.rs @@ -12,6 +12,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -22,23 +25,11 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/constified-enum-module-overflow.rs b/tests/expectations/tests/constified-enum-module-overflow.rs index df112982..d47338f1 100644 --- a/tests/expectations/tests/constified-enum-module-overflow.rs +++ b/tests/expectations/tests/constified-enum-module-overflow.rs @@ -23,6 +23,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 1usize, @@ -33,18 +36,11 @@ fn bindgen_test_layout_A() { 1usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(u)) - ); - } - test_field_u(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(u)) + ); } #[test] fn __bindgen_test_layout_C_open0_A_close0_instantiation() { diff --git a/tests/expectations/tests/constify-all-enums.rs b/tests/expectations/tests/constify-all-enums.rs index c926d857..e3c82156 100644 --- a/tests/expectations/tests/constify-all-enums.rs +++ b/tests/expectations/tests/constify-all-enums.rs @@ -16,6 +16,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -26,24 +29,19 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_this_should_work() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).this_should_work) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(this_should_work) - ) - ); - } - test_field_this_should_work(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).this_should_work) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(this_should_work) + ) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-basic.rs b/tests/expectations/tests/constify-module-enums-basic.rs index 6078ef20..c5c32983 100644 --- a/tests/expectations/tests/constify-module-enums-basic.rs +++ b/tests/expectations/tests/constify-module-enums-basic.rs @@ -20,6 +20,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -30,24 +33,19 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_this_should_work() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).this_should_work) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(this_should_work) - ) - ); - } - test_field_this_should_work(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).this_should_work) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(this_should_work) + ) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-namespace.rs b/tests/expectations/tests/constify-module-enums-namespace.rs index 326c219d..0b8eec1e 100644 --- a/tests/expectations/tests/constify-module-enums-namespace.rs +++ b/tests/expectations/tests/constify-module-enums-namespace.rs @@ -32,6 +32,9 @@ pub mod root { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -42,26 +45,19 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_this_should_work() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).this_should_work) - as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(this_should_work) - ) - ); - } - test_field_this_should_work(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).this_should_work) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(this_should_work) + ) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-shadow-name.rs b/tests/expectations/tests/constify-module-enums-shadow-name.rs index a5340e69..44643d0f 100644 --- a/tests/expectations/tests/constify-module-enums-shadow-name.rs +++ b/tests/expectations/tests/constify-module-enums-shadow-name.rs @@ -19,6 +19,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -29,23 +32,16 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member) + ) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-simple-alias.rs b/tests/expectations/tests/constify-module-enums-simple-alias.rs index 52d46516..0262b128 100644 --- a/tests/expectations/tests/constify-module-enums-simple-alias.rs +++ b/tests/expectations/tests/constify-module-enums-simple-alias.rs @@ -28,6 +28,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 48usize, @@ -38,142 +41,74 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz1) - ) - ); - } - test_field_baz1(); - fn test_field_baz2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz2) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz2) - ) - ); - } - test_field_baz2(); - fn test_field_baz3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz3) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz3) - ) - ); - } - test_field_baz3(); - fn test_field_baz4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz4) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz4) - ) - ); - } - test_field_baz4(); - fn test_field_baz_ptr1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz_ptr1) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz_ptr1) - ) - ); - } - test_field_baz_ptr1(); - fn test_field_baz_ptr2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz_ptr2) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz_ptr2) - ) - ); - } - test_field_baz_ptr2(); - fn test_field_baz_ptr3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz_ptr3) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz_ptr3) - ) - ); - } - test_field_baz_ptr3(); - fn test_field_baz_ptr4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz_ptr4) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz_ptr4) - ) - ); - } - test_field_baz_ptr4(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz1) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz2) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz2)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz3) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz3)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz4) as usize - ptr as usize }, + 12usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz4)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz_ptr1) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz_ptr1) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz_ptr2) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz_ptr2) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz_ptr3) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz_ptr3) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz_ptr4) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz_ptr4) + ) + ); } impl Default for Bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-simple-nonamespace.rs b/tests/expectations/tests/constify-module-enums-simple-nonamespace.rs index c2032b21..75ebf48a 100644 --- a/tests/expectations/tests/constify-module-enums-simple-nonamespace.rs +++ b/tests/expectations/tests/constify-module-enums-simple-nonamespace.rs @@ -18,6 +18,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 16usize, @@ -28,40 +31,16 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz1) - ) - ); - } - test_field_baz1(); - fn test_field_baz2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz2) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz2) - ) - ); - } - test_field_baz2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz1) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz2) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz2)) + ); } impl Default for Bar { fn default() -> Self { diff --git a/tests/expectations/tests/constify-module-enums-types.rs b/tests/expectations/tests/constify-module-enums-types.rs index 7319ec72..c3c6d3ca 100644 --- a/tests/expectations/tests/constify-module-enums-types.rs +++ b/tests/expectations/tests/constify-module-enums-types.rs @@ -53,6 +53,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 48usize, @@ -63,176 +66,108 @@ fn bindgen_test_layout_bar() { 8usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_member1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member1) - ) - ); - } - test_field_member1(); - fn test_field_member2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member2) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member2) - ) - ); - } - test_field_member2(); - fn test_field_member3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member3) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member3) - ) - ); - } - test_field_member3(); - fn test_field_member4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member4) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member4) - ) - ); - } - test_field_member4(); - fn test_field_member5() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member5) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member5) - ) - ); - } - test_field_member5(); - fn test_field_member6() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member6) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member6) - ) - ); - } - test_field_member6(); - fn test_field_member7() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member7) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member7) - ) - ); - } - test_field_member7(); - fn test_field_member8() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member8) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member8) - ) - ); - } - test_field_member8(); - fn test_field_member9() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member9) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member9) - ) - ); - } - test_field_member9(); - fn test_field_member10() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member10) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(member10) - ) - ); - } - test_field_member10(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member2) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member3) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member4) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member4) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member5) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member5) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member6) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member6) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member7) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member7) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member8) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member9) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member9) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).member10) as usize - ptr as usize + }, + 44usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(member10) + ) + ); } impl Default for bar { fn default() -> Self { @@ -250,6 +185,9 @@ pub struct Baz { } #[test] fn bindgen_test_layout_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz>(), 4usize, @@ -260,23 +198,16 @@ fn bindgen_test_layout_Baz() { 4usize, concat!("Alignment of ", stringify!(Baz)) ); - fn test_field_member1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Baz), - "::", - stringify!(member1) - ) - ); - } - test_field_member1(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Baz), + "::", + stringify!(member1) + ) + ); } impl Default for Baz { fn default() -> Self { @@ -299,6 +230,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -309,23 +243,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz)) + ); } impl Default for Bar { fn default() -> Self { diff --git a/tests/expectations/tests/contains-vs-inherits-zero-sized.rs b/tests/expectations/tests/contains-vs-inherits-zero-sized.rs index b218a62f..62fc3749 100644 --- a/tests/expectations/tests/contains-vs-inherits-zero-sized.rs +++ b/tests/expectations/tests/contains-vs-inherits-zero-sized.rs @@ -33,6 +33,9 @@ pub struct Inherits { } #[test] fn bindgen_test_layout_Inherits() { + const UNINIT: ::std::mem::MaybeUninit<Inherits> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Inherits>(), 1usize, @@ -43,23 +46,16 @@ fn bindgen_test_layout_Inherits() { 1usize, concat!("Alignment of ", stringify!(Inherits)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Inherits>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Inherits), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Inherits), + "::", + stringify!(b) + ) + ); } /// This should not get an `_address` byte, but contains `Empty` which *does* get /// one, so `sizeof(Contains)` should be `1 + 1`. @@ -71,6 +67,9 @@ pub struct Contains { } #[test] fn bindgen_test_layout_Contains() { + const UNINIT: ::std::mem::MaybeUninit<Contains> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Contains>(), 2usize, @@ -81,38 +80,24 @@ fn bindgen_test_layout_Contains() { 1usize, concat!("Alignment of ", stringify!(Contains)) ); - fn test_field_empty() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Contains>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).empty) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Contains), - "::", - stringify!(empty) - ) - ); - } - test_field_empty(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Contains>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(Contains), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).empty) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Contains), + "::", + stringify!(empty) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(Contains), + "::", + stringify!(b) + ) + ); } diff --git a/tests/expectations/tests/convert-floats.rs b/tests/expectations/tests/convert-floats.rs index 6e6d1c67..e710a442 100644 --- a/tests/expectations/tests/convert-floats.rs +++ b/tests/expectations/tests/convert-floats.rs @@ -23,6 +23,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 48usize, @@ -33,110 +36,55 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); - fn test_field_bazz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bazz) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bazz) - ) - ); - } - test_field_bazz(); - fn test_field_bazzz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bazzz) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bazzz) - ) - ); - } - test_field_bazzz(); - fn test_field_complexFloat() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).complexFloat) as usize - - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(complexFloat) - ) - ); - } - test_field_complexFloat(); - fn test_field_complexDouble() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).complexDouble) as usize - - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(complexDouble) - ) - ); - } - test_field_complexDouble(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(baz)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bazz) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bazz)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bazzz) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(bazzz) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).complexFloat) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(complexFloat) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).complexDouble) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(complexDouble) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/ctypes-prefix-path.rs b/tests/expectations/tests/ctypes-prefix-path.rs index 0dc49095..5b3d186a 100644 --- a/tests/expectations/tests/ctypes-prefix-path.rs +++ b/tests/expectations/tests/ctypes-prefix-path.rs @@ -21,6 +21,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::core::mem::MaybeUninit<foo> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<foo>(), 16usize, @@ -31,47 +34,21 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/derive-bitfield-method-same-name.rs b/tests/expectations/tests/derive-bitfield-method-same-name.rs index 56bbdc54..ea6621dd 100644 --- a/tests/expectations/tests/derive-bitfield-method-same-name.rs +++ b/tests/expectations/tests/derive-bitfield-method-same-name.rs @@ -104,6 +104,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 136usize, @@ -114,23 +117,16 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_large() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(large) - ) - ); - } - test_field_large(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(large) + ) + ); } extern "C" { #[link_name = "\u{1}_ZN3Foo4typeEv"] diff --git a/tests/expectations/tests/derive-clone.rs b/tests/expectations/tests/derive-clone.rs index 4a80a856..19c28b69 100644 --- a/tests/expectations/tests/derive-clone.rs +++ b/tests/expectations/tests/derive-clone.rs @@ -13,6 +13,9 @@ pub struct ShouldDeriveClone { } #[test] fn bindgen_test_layout_ShouldDeriveClone() { + const UNINIT: ::std::mem::MaybeUninit<ShouldDeriveClone> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldDeriveClone>(), 132usize, @@ -23,24 +26,16 @@ fn bindgen_test_layout_ShouldDeriveClone() { 4usize, concat!("Alignment of ", stringify!(ShouldDeriveClone)) ); - fn test_field_large() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldDeriveClone>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldDeriveClone), - "::", - stringify!(large) - ) - ); - } - test_field_large(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldDeriveClone), + "::", + stringify!(large) + ) + ); } impl Default for ShouldDeriveClone { fn default() -> Self { diff --git a/tests/expectations/tests/derive-clone_1_0.rs b/tests/expectations/tests/derive-clone_1_0.rs index 90c8c72a..3d72db2f 100644 --- a/tests/expectations/tests/derive-clone_1_0.rs +++ b/tests/expectations/tests/derive-clone_1_0.rs @@ -14,6 +14,9 @@ pub struct ShouldImplClone { } #[test] fn bindgen_test_layout_ShouldImplClone() { + const UNINIT: ::std::mem::MaybeUninit<ShouldImplClone> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldImplClone>(), 132usize, @@ -24,24 +27,16 @@ fn bindgen_test_layout_ShouldImplClone() { 4usize, concat!("Alignment of ", stringify!(ShouldImplClone)) ); - fn test_field_large() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldImplClone>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldImplClone), - "::", - stringify!(large) - ) - ); - } - test_field_large(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldImplClone), + "::", + stringify!(large) + ) + ); } impl Clone for ShouldImplClone { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/derive-debug-bitfield-core.rs b/tests/expectations/tests/derive-debug-bitfield-core.rs index 249df3d5..2a78e930 100644 --- a/tests/expectations/tests/derive-debug-bitfield-core.rs +++ b/tests/expectations/tests/derive-debug-bitfield-core.rs @@ -102,6 +102,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::core::mem::MaybeUninit<C> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<C>(), 204usize, @@ -112,24 +115,18 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).large_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::core::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(large_array) + ) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/derive-debug-bitfield.rs b/tests/expectations/tests/derive-debug-bitfield.rs index 4ca28af3..0ae8f329 100644 --- a/tests/expectations/tests/derive-debug-bitfield.rs +++ b/tests/expectations/tests/derive-debug-bitfield.rs @@ -100,6 +100,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 204usize, @@ -110,23 +113,18 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(large_array) + ) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/derive-debug-function-pointer.rs b/tests/expectations/tests/derive-debug-function-pointer.rs index 9f4ceced..16b127bf 100644 --- a/tests/expectations/tests/derive-debug-function-pointer.rs +++ b/tests/expectations/tests/derive-debug-function-pointer.rs @@ -15,6 +15,9 @@ pub type Nice_Function = ::std::option::Option<unsafe extern "C" fn(data: ::std::os::raw::c_int)>; #[test] fn bindgen_test_layout_Nice() { + const UNINIT: ::std::mem::MaybeUninit<Nice> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Nice>(), 144usize, @@ -25,40 +28,28 @@ fn bindgen_test_layout_Nice() { 8usize, concat!("Alignment of ", stringify!(Nice)) ); - fn test_field_pointer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Nice>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pointer) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Nice), - "::", - stringify!(pointer) - ) - ); - } - test_field_pointer(); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Nice>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Nice), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pointer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Nice), + "::", + stringify!(pointer) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(Nice), + "::", + stringify!(large_array) + ) + ); } impl Default for Nice { fn default() -> Self { diff --git a/tests/expectations/tests/derive-debug-mangle-name.rs b/tests/expectations/tests/derive-debug-mangle-name.rs index 8e66efc6..a757d679 100644 --- a/tests/expectations/tests/derive-debug-mangle-name.rs +++ b/tests/expectations/tests/derive-debug-mangle-name.rs @@ -20,6 +20,9 @@ pub union perf_event_attr__bindgen_ty_1 { } #[test] fn bindgen_test_layout_perf_event_attr__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<perf_event_attr__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<perf_event_attr__bindgen_ty_1>(), 4usize, @@ -30,44 +33,26 @@ fn bindgen_test_layout_perf_event_attr__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(perf_event_attr__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - perf_event_attr__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(perf_event_attr__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - perf_event_attr__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(perf_event_attr__bindgen_ty_1), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(perf_event_attr__bindgen_ty_1), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(perf_event_attr__bindgen_ty_1), + "::", + stringify!(c) + ) + ); } impl Default for perf_event_attr__bindgen_ty_1 { fn default() -> Self { @@ -85,6 +70,9 @@ impl ::std::fmt::Debug for perf_event_attr__bindgen_ty_1 { } #[test] fn bindgen_test_layout_perf_event_attr() { + const UNINIT: ::std::mem::MaybeUninit<perf_event_attr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<perf_event_attr>(), 12usize, @@ -95,42 +83,26 @@ fn bindgen_test_layout_perf_event_attr() { 4usize, concat!("Alignment of ", stringify!(perf_event_attr)) ); - fn test_field_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<perf_event_attr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(perf_event_attr), - "::", - stringify!(type_) - ) - ); - } - test_field_type(); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<perf_event_attr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(perf_event_attr), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(perf_event_attr), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(perf_event_attr), + "::", + stringify!(a) + ) + ); } impl Default for perf_event_attr { fn default() -> Self { diff --git a/tests/expectations/tests/derive-debug-opaque-template-instantiation.rs b/tests/expectations/tests/derive-debug-opaque-template-instantiation.rs index 78101ada..a0cc87ff 100644 --- a/tests/expectations/tests/derive-debug-opaque-template-instantiation.rs +++ b/tests/expectations/tests/derive-debug-opaque-template-instantiation.rs @@ -11,6 +11,9 @@ pub struct Instance { } #[test] fn bindgen_test_layout_Instance() { + const UNINIT: ::std::mem::MaybeUninit<Instance> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Instance>(), 200usize, @@ -21,23 +24,16 @@ fn bindgen_test_layout_Instance() { 4usize, concat!("Alignment of ", stringify!(Instance)) ); - fn test_field_val() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Instance>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Instance), - "::", - stringify!(val) - ) - ); - } - test_field_val(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).val) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Instance), + "::", + stringify!(val) + ) + ); } impl Default for Instance { fn default() -> Self { diff --git a/tests/expectations/tests/derive-debug-opaque.rs b/tests/expectations/tests/derive-debug-opaque.rs index 06f33952..5cebc9b8 100644 --- a/tests/expectations/tests/derive-debug-opaque.rs +++ b/tests/expectations/tests/derive-debug-opaque.rs @@ -43,6 +43,9 @@ pub struct OpaqueUser { } #[test] fn bindgen_test_layout_OpaqueUser() { + const UNINIT: ::std::mem::MaybeUninit<OpaqueUser> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<OpaqueUser>(), 164usize, @@ -53,23 +56,16 @@ fn bindgen_test_layout_OpaqueUser() { 4usize, concat!("Alignment of ", stringify!(OpaqueUser)) ); - fn test_field_opaque() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<OpaqueUser>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(OpaqueUser), - "::", - stringify!(opaque) - ) - ); - } - test_field_opaque(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(OpaqueUser), + "::", + stringify!(opaque) + ) + ); } impl Default for OpaqueUser { fn default() -> Self { diff --git a/tests/expectations/tests/derive-default-and-blocklist.rs b/tests/expectations/tests/derive-default-and-blocklist.rs index 4b8ecf97..fe3790c2 100644 --- a/tests/expectations/tests/derive-default-and-blocklist.rs +++ b/tests/expectations/tests/derive-default-and-blocklist.rs @@ -15,6 +15,9 @@ pub struct ShouldNotDeriveDefault { } #[test] fn bindgen_test_layout_ShouldNotDeriveDefault() { + const UNINIT: ::std::mem::MaybeUninit<ShouldNotDeriveDefault> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldNotDeriveDefault>(), 1usize, @@ -25,24 +28,16 @@ fn bindgen_test_layout_ShouldNotDeriveDefault() { 1usize, concat!("Alignment of ", stringify!(ShouldNotDeriveDefault)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotDeriveDefault>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotDeriveDefault), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotDeriveDefault), + "::", + stringify!(a) + ) + ); } impl Default for ShouldNotDeriveDefault { fn default() -> Self { diff --git a/tests/expectations/tests/derive-fn-ptr.rs b/tests/expectations/tests/derive-fn-ptr.rs index bab7f6b8..9da0a40a 100644 --- a/tests/expectations/tests/derive-fn-ptr.rs +++ b/tests/expectations/tests/derive-fn-ptr.rs @@ -32,6 +32,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 8usize, @@ -42,23 +45,18 @@ fn bindgen_test_layout_Foo() { 8usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_callback() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(callback) - ) - ); - } - test_field_callback(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(callback) + ) + ); } pub type my_fun2_t = ::std::option::Option< unsafe extern "C" fn( @@ -83,6 +81,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -93,21 +94,16 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_callback() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(callback) - ) - ); - } - test_field_callback(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(callback) + ) + ); } diff --git a/tests/expectations/tests/derive-hash-and-blocklist.rs b/tests/expectations/tests/derive-hash-and-blocklist.rs index ca436fa8..c677b15e 100644 --- a/tests/expectations/tests/derive-hash-and-blocklist.rs +++ b/tests/expectations/tests/derive-hash-and-blocklist.rs @@ -14,6 +14,9 @@ pub struct ShouldNotDeriveHash { } #[test] fn bindgen_test_layout_ShouldNotDeriveHash() { + const UNINIT: ::std::mem::MaybeUninit<ShouldNotDeriveHash> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldNotDeriveHash>(), 1usize, @@ -24,24 +27,16 @@ fn bindgen_test_layout_ShouldNotDeriveHash() { 1usize, concat!("Alignment of ", stringify!(ShouldNotDeriveHash)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotDeriveHash>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotDeriveHash), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotDeriveHash), + "::", + stringify!(a) + ) + ); } impl Default for ShouldNotDeriveHash { fn default() -> Self { diff --git a/tests/expectations/tests/derive-hash-blocklisting.rs b/tests/expectations/tests/derive-hash-blocklisting.rs index e2aaf03f..868bf9f2 100644 --- a/tests/expectations/tests/derive-hash-blocklisting.rs +++ b/tests/expectations/tests/derive-hash-blocklisting.rs @@ -20,6 +20,9 @@ pub struct AllowlistedOne { } #[test] fn bindgen_test_layout_AllowlistedOne() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistedOne> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistedOne>(), 4usize, @@ -30,24 +33,16 @@ fn bindgen_test_layout_AllowlistedOne() { 4usize, concat!("Alignment of ", stringify!(AllowlistedOne)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<AllowlistedOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistedOne), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistedOne), + "::", + stringify!(a) + ) + ); } impl Default for AllowlistedOne { fn default() -> Self { @@ -65,6 +60,9 @@ pub struct AllowlistedTwo { } #[test] fn bindgen_test_layout_AllowlistedTwo() { + const UNINIT: ::std::mem::MaybeUninit<AllowlistedTwo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AllowlistedTwo>(), 4usize, @@ -75,24 +73,16 @@ fn bindgen_test_layout_AllowlistedTwo() { 4usize, concat!("Alignment of ", stringify!(AllowlistedTwo)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<AllowlistedTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AllowlistedTwo), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AllowlistedTwo), + "::", + stringify!(b) + ) + ); } impl Default for AllowlistedTwo { fn default() -> Self { diff --git a/tests/expectations/tests/derive-hash-struct-with-anon-struct-float.rs b/tests/expectations/tests/derive-hash-struct-with-anon-struct-float.rs index c5198856..78c8449b 100644 --- a/tests/expectations/tests/derive-hash-struct-with-anon-struct-float.rs +++ b/tests/expectations/tests/derive-hash-struct-with-anon-struct-float.rs @@ -19,6 +19,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -29,45 +32,32 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -78,21 +68,9 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/derive-hash-struct-with-float-array.rs b/tests/expectations/tests/derive-hash-struct-with-float-array.rs index b561cc37..a3f6013b 100644 --- a/tests/expectations/tests/derive-hash-struct-with-float-array.rs +++ b/tests/expectations/tests/derive-hash-struct-with-float-array.rs @@ -13,6 +13,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 12usize, @@ -23,21 +26,9 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/derive-hash-struct-with-incomplete-array.rs b/tests/expectations/tests/derive-hash-struct-with-incomplete-array.rs index abba4b28..06c8da1b 100644 --- a/tests/expectations/tests/derive-hash-struct-with-incomplete-array.rs +++ b/tests/expectations/tests/derive-hash-struct-with-incomplete-array.rs @@ -43,6 +43,9 @@ pub struct test { } #[test] fn bindgen_test_layout_test() { + const UNINIT: ::std::mem::MaybeUninit<test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<test>(), 4usize, @@ -53,36 +56,24 @@ fn bindgen_test_layout_test() { 4usize, concat!("Alignment of ", stringify!(test)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(test), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(test), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(test), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(test), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] #[derive(Debug, Default)] diff --git a/tests/expectations/tests/derive-hash-struct-with-pointer.rs b/tests/expectations/tests/derive-hash-struct-with-pointer.rs index 65881008..3efd55c9 100644 --- a/tests/expectations/tests/derive-hash-struct-with-pointer.rs +++ b/tests/expectations/tests/derive-hash-struct-with-pointer.rs @@ -13,6 +13,9 @@ pub struct ConstPtrMutObj { } #[test] fn bindgen_test_layout_ConstPtrMutObj() { + const UNINIT: ::std::mem::MaybeUninit<ConstPtrMutObj> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ConstPtrMutObj>(), 8usize, @@ -23,24 +26,16 @@ fn bindgen_test_layout_ConstPtrMutObj() { 8usize, concat!("Alignment of ", stringify!(ConstPtrMutObj)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ConstPtrMutObj>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ConstPtrMutObj), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ConstPtrMutObj), + "::", + stringify!(bar) + ) + ); } impl Default for ConstPtrMutObj { fn default() -> Self { @@ -58,6 +53,9 @@ pub struct MutPtrMutObj { } #[test] fn bindgen_test_layout_MutPtrMutObj() { + const UNINIT: ::std::mem::MaybeUninit<MutPtrMutObj> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<MutPtrMutObj>(), 8usize, @@ -68,23 +66,16 @@ fn bindgen_test_layout_MutPtrMutObj() { 8usize, concat!("Alignment of ", stringify!(MutPtrMutObj)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<MutPtrMutObj>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(MutPtrMutObj), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(MutPtrMutObj), + "::", + stringify!(bar) + ) + ); } impl Default for MutPtrMutObj { fn default() -> Self { @@ -102,6 +93,9 @@ pub struct MutPtrConstObj { } #[test] fn bindgen_test_layout_MutPtrConstObj() { + const UNINIT: ::std::mem::MaybeUninit<MutPtrConstObj> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<MutPtrConstObj>(), 8usize, @@ -112,24 +106,16 @@ fn bindgen_test_layout_MutPtrConstObj() { 8usize, concat!("Alignment of ", stringify!(MutPtrConstObj)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<MutPtrConstObj>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(MutPtrConstObj), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(MutPtrConstObj), + "::", + stringify!(bar) + ) + ); } impl Default for MutPtrConstObj { fn default() -> Self { @@ -147,6 +133,9 @@ pub struct ConstPtrConstObj { } #[test] fn bindgen_test_layout_ConstPtrConstObj() { + const UNINIT: ::std::mem::MaybeUninit<ConstPtrConstObj> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ConstPtrConstObj>(), 8usize, @@ -157,24 +146,16 @@ fn bindgen_test_layout_ConstPtrConstObj() { 8usize, concat!("Alignment of ", stringify!(ConstPtrConstObj)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ConstPtrConstObj>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ConstPtrConstObj), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ConstPtrConstObj), + "::", + stringify!(bar) + ) + ); } impl Default for ConstPtrConstObj { fn default() -> Self { diff --git a/tests/expectations/tests/derive-hash-template-inst-float.rs b/tests/expectations/tests/derive-hash-template-inst-float.rs index 18cccb3b..b2e2d8d0 100644 --- a/tests/expectations/tests/derive-hash-template-inst-float.rs +++ b/tests/expectations/tests/derive-hash-template-inst-float.rs @@ -29,6 +29,9 @@ pub struct IntStr { } #[test] fn bindgen_test_layout_IntStr() { + const UNINIT: ::std::mem::MaybeUninit<IntStr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<IntStr>(), 4usize, @@ -39,23 +42,11 @@ fn bindgen_test_layout_IntStr() { 4usize, concat!("Alignment of ", stringify!(IntStr)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<IntStr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(IntStr), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(IntStr), "::", stringify!(a)) + ); } impl Default for IntStr { fn default() -> Self { @@ -74,6 +65,9 @@ pub struct FloatStr { } #[test] fn bindgen_test_layout_FloatStr() { + const UNINIT: ::std::mem::MaybeUninit<FloatStr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<FloatStr>(), 4usize, @@ -84,23 +78,16 @@ fn bindgen_test_layout_FloatStr() { 4usize, concat!("Alignment of ", stringify!(FloatStr)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<FloatStr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(FloatStr), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(FloatStr), + "::", + stringify!(a) + ) + ); } impl Default for FloatStr { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-and-blocklist.rs b/tests/expectations/tests/derive-partialeq-and-blocklist.rs index 23c493dc..c772c0b9 100644 --- a/tests/expectations/tests/derive-partialeq-and-blocklist.rs +++ b/tests/expectations/tests/derive-partialeq-and-blocklist.rs @@ -15,6 +15,9 @@ pub struct ShouldNotDerivePartialEq { } #[test] fn bindgen_test_layout_ShouldNotDerivePartialEq() { + const UNINIT: ::std::mem::MaybeUninit<ShouldNotDerivePartialEq> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldNotDerivePartialEq>(), 1usize, @@ -25,25 +28,16 @@ fn bindgen_test_layout_ShouldNotDerivePartialEq() { 1usize, concat!("Alignment of ", stringify!(ShouldNotDerivePartialEq)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotDerivePartialEq>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotDerivePartialEq), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotDerivePartialEq), + "::", + stringify!(a) + ) + ); } impl Default for ShouldNotDerivePartialEq { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-base.rs b/tests/expectations/tests/derive-partialeq-base.rs index 25f37549..840720f2 100644 --- a/tests/expectations/tests/derive-partialeq-base.rs +++ b/tests/expectations/tests/derive-partialeq-base.rs @@ -12,6 +12,9 @@ pub struct Base { } #[test] fn bindgen_test_layout_Base() { + const UNINIT: ::std::mem::MaybeUninit<Base> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Base>(), 132usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_Base() { 4usize, concat!("Alignment of ", stringify!(Base)) ); - fn test_field_large() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Base>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Base), - "::", - stringify!(large) - ) - ); - } - test_field_large(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).large) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Base), + "::", + stringify!(large) + ) + ); } impl Default for Base { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-bitfield.rs b/tests/expectations/tests/derive-partialeq-bitfield.rs index b27f1cb5..cb9781de 100644 --- a/tests/expectations/tests/derive-partialeq-bitfield.rs +++ b/tests/expectations/tests/derive-partialeq-bitfield.rs @@ -100,6 +100,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 204usize, @@ -110,23 +113,18 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(large_array) + ) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-core.rs b/tests/expectations/tests/derive-partialeq-core.rs index eec02324..620b40fa 100644 --- a/tests/expectations/tests/derive-partialeq-core.rs +++ b/tests/expectations/tests/derive-partialeq-core.rs @@ -14,6 +14,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::core::mem::MaybeUninit<C> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<C>(), 1680usize, @@ -24,24 +27,18 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).large_array) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::core::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(large_array) + ) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-pointer.rs b/tests/expectations/tests/derive-partialeq-pointer.rs index 4b29a5d4..e0d3c062 100644 --- a/tests/expectations/tests/derive-partialeq-pointer.rs +++ b/tests/expectations/tests/derive-partialeq-pointer.rs @@ -12,6 +12,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Bar), "::", stringify!(b)) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(b)) + ); } impl Default for Bar { fn default() -> Self { @@ -105,6 +101,9 @@ pub struct a { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 1usize, @@ -115,18 +114,11 @@ fn bindgen_test_layout_a() { 1usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(d)) + ); } impl Default for a { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-union.rs b/tests/expectations/tests/derive-partialeq-union.rs index 00074775..5ffd0bcd 100644 --- a/tests/expectations/tests/derive-partialeq-union.rs +++ b/tests/expectations/tests/derive-partialeq-union.rs @@ -14,6 +14,9 @@ pub union ShouldNotDerivePartialEq { } #[test] fn bindgen_test_layout_ShouldNotDerivePartialEq() { + const UNINIT: ::std::mem::MaybeUninit<ShouldNotDerivePartialEq> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldNotDerivePartialEq>(), 4usize, @@ -24,44 +27,26 @@ fn bindgen_test_layout_ShouldNotDerivePartialEq() { 4usize, concat!("Alignment of ", stringify!(ShouldNotDerivePartialEq)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotDerivePartialEq>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotDerivePartialEq), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotDerivePartialEq>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotDerivePartialEq), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotDerivePartialEq), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotDerivePartialEq), + "::", + stringify!(b) + ) + ); } impl Default for ShouldNotDerivePartialEq { fn default() -> Self { diff --git a/tests/expectations/tests/derive-partialeq-union_1_0.rs b/tests/expectations/tests/derive-partialeq-union_1_0.rs index dd6f756c..a53b9ba8 100644 --- a/tests/expectations/tests/derive-partialeq-union_1_0.rs +++ b/tests/expectations/tests/derive-partialeq-union_1_0.rs @@ -58,6 +58,9 @@ pub struct ShouldDerivePartialEq { } #[test] fn bindgen_test_layout_ShouldDerivePartialEq() { + const UNINIT: ::std::mem::MaybeUninit<ShouldDerivePartialEq> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldDerivePartialEq>(), 152usize, @@ -68,42 +71,26 @@ fn bindgen_test_layout_ShouldDerivePartialEq() { 4usize, concat!("Alignment of ", stringify!(ShouldDerivePartialEq)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldDerivePartialEq>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldDerivePartialEq), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldDerivePartialEq>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldDerivePartialEq), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldDerivePartialEq), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldDerivePartialEq), + "::", + stringify!(b) + ) + ); } impl Clone for ShouldDerivePartialEq { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/disable-nested-struct-naming.rs b/tests/expectations/tests/disable-nested-struct-naming.rs index 23391041..ce8a01ad 100644 --- a/tests/expectations/tests/disable-nested-struct-naming.rs +++ b/tests/expectations/tests/disable-nested-struct-naming.rs @@ -35,6 +35,9 @@ pub struct bar4 { } #[test] fn bindgen_test_layout_bar4() { + const UNINIT: ::std::mem::MaybeUninit<bar4> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar4>(), 4usize, @@ -45,26 +48,17 @@ fn bindgen_test_layout_bar4() { 4usize, concat!("Alignment of ", stringify!(bar4)) ); - fn test_field_x4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x4) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar4), - "::", - stringify!(x4) - ) - ); - } - test_field_x4(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x4) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(bar4), "::", stringify!(x4)) + ); } #[test] fn bindgen_test_layout_bar1__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<bar1__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar1__bindgen_ty_1__bindgen_ty_1>(), 8usize, @@ -78,47 +72,32 @@ fn bindgen_test_layout_bar1__bindgen_ty_1__bindgen_ty_1() { stringify!(bar1__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_x3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - bar1__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x3) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar1__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(x3) - ) - ); - } - test_field_x3(); - fn test_field_b4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - bar1__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b4) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar1__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b4) - ) - ); - } - test_field_b4(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x3) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar1__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(x3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b4) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(bar1__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b4) + ) + ); } #[test] fn bindgen_test_layout_bar1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<bar1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar1__bindgen_ty_1>(), 12usize, @@ -129,45 +108,32 @@ fn bindgen_test_layout_bar1__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(bar1__bindgen_ty_1)) ); - fn test_field_x2() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<bar1__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar1__bindgen_ty_1), - "::", - stringify!(x2) - ) - ); - } - test_field_x2(); - fn test_field_b3() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<bar1__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b3) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar1__bindgen_ty_1), - "::", - stringify!(b3) - ) - ); - } - test_field_b3(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar1__bindgen_ty_1), + "::", + stringify!(x2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b3) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(bar1__bindgen_ty_1), + "::", + stringify!(b3) + ) + ); } #[test] fn bindgen_test_layout_bar1() { + const UNINIT: ::std::mem::MaybeUninit<bar1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar1>(), 16usize, @@ -178,43 +144,22 @@ fn bindgen_test_layout_bar1() { 4usize, concat!("Alignment of ", stringify!(bar1)) ); - fn test_field_x1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar1), - "::", - stringify!(x1) - ) - ); - } - test_field_x1(); - fn test_field_b2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar1), - "::", - stringify!(b2) - ) - ); - } - test_field_b2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x1) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(bar1), "::", stringify!(x1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(bar1), "::", stringify!(b2)) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 16usize, @@ -225,18 +170,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_b1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b1)) - ); - } - test_field_b1(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b1)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -255,6 +193,9 @@ pub struct baz { } #[test] fn bindgen_test_layout_baz() { + const UNINIT: ::std::mem::MaybeUninit<baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<baz>(), 4usize, @@ -265,21 +206,17 @@ fn bindgen_test_layout_baz() { 4usize, concat!("Alignment of ", stringify!(baz)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(baz), "::", stringify!(x)) - ); - } - test_field_x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(baz), "::", stringify!(x)) + ); } #[test] fn bindgen_test_layout__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<_bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -290,28 +227,22 @@ fn bindgen_test_layout__bindgen_ty_1__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(_bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - _bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<_bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_bindgen_ty_1>(), 4usize, @@ -322,23 +253,16 @@ fn bindgen_test_layout__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_anon2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).anon2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(anon2) - ) - ); - } - test_field_anon2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).anon2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(anon2) + ) + ); } extern "C" { pub static mut anon1: _bindgen_ty_1; diff --git a/tests/expectations/tests/disable-untagged-union.rs b/tests/expectations/tests/disable-untagged-union.rs index 912238b3..515f496b 100644 --- a/tests/expectations/tests/disable-untagged-union.rs +++ b/tests/expectations/tests/disable-untagged-union.rs @@ -57,6 +57,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -67,38 +70,14 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(baz)) + ); } diff --git a/tests/expectations/tests/do-not-derive-copy.rs b/tests/expectations/tests/do-not-derive-copy.rs index 2e02cc50..4f9081ad 100644 --- a/tests/expectations/tests/do-not-derive-copy.rs +++ b/tests/expectations/tests/do-not-derive-copy.rs @@ -12,6 +12,9 @@ pub struct WouldBeCopyButWeAreNotDerivingCopy { } #[test] fn bindgen_test_layout_WouldBeCopyButWeAreNotDerivingCopy() { + const UNINIT: ::std::mem::MaybeUninit<WouldBeCopyButWeAreNotDerivingCopy> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WouldBeCopyButWeAreNotDerivingCopy>(), 4usize, @@ -25,23 +28,14 @@ fn bindgen_test_layout_WouldBeCopyButWeAreNotDerivingCopy() { stringify!(WouldBeCopyButWeAreNotDerivingCopy) ) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - WouldBeCopyButWeAreNotDerivingCopy, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WouldBeCopyButWeAreNotDerivingCopy), - "::", - stringify!(x) - ) - ); - } - test_field_x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WouldBeCopyButWeAreNotDerivingCopy), + "::", + stringify!(x) + ) + ); } diff --git a/tests/expectations/tests/doggo-or-null.rs b/tests/expectations/tests/doggo-or-null.rs index 0b34b3d0..90287159 100644 --- a/tests/expectations/tests/doggo-or-null.rs +++ b/tests/expectations/tests/doggo-or-null.rs @@ -12,6 +12,9 @@ pub struct Doggo { } #[test] fn bindgen_test_layout_Doggo() { + const UNINIT: ::std::mem::MaybeUninit<Doggo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Doggo>(), 4usize, @@ -22,23 +25,11 @@ fn bindgen_test_layout_Doggo() { 4usize, concat!("Alignment of ", stringify!(Doggo)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Doggo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Doggo), - "::", - stringify!(x) - ) - ); - } - test_field_x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Doggo), "::", stringify!(x)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq)] diff --git a/tests/expectations/tests/duplicated-namespaces-definitions.rs b/tests/expectations/tests/duplicated-namespaces-definitions.rs index 2322aa87..8e7c895b 100644 --- a/tests/expectations/tests/duplicated-namespaces-definitions.rs +++ b/tests/expectations/tests/duplicated-namespaces-definitions.rs @@ -20,6 +20,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -30,40 +33,30 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(foo) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz) + ) + ); } } pub mod bar { @@ -76,6 +69,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 8usize, @@ -86,23 +82,18 @@ pub mod root { 8usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(ptr) - ) - ); - } - test_field_ptr(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(ptr) + ) + ); } impl Default for Foo { fn default() -> Self { diff --git a/tests/expectations/tests/dynamic_loading_with_blocklist.rs b/tests/expectations/tests/dynamic_loading_with_blocklist.rs index f2ffe671..af482ad9 100644 --- a/tests/expectations/tests/dynamic_loading_with_blocklist.rs +++ b/tests/expectations/tests/dynamic_loading_with_blocklist.rs @@ -12,6 +12,9 @@ pub struct X { } #[test] fn bindgen_test_layout_X() { + const UNINIT: ::std::mem::MaybeUninit<X> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<X>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_X() { 4usize, concat!("Alignment of ", stringify!(X)) ); - fn test_field__x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<X>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr)._x) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(X), "::", stringify!(_x)) - ); - } - test_field__x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(X), "::", stringify!(_x)) + ); } extern "C" { #[link_name = "\u{1}_ZN1X13some_functionEv"] diff --git a/tests/expectations/tests/dynamic_loading_with_class.rs b/tests/expectations/tests/dynamic_loading_with_class.rs index 03655c8e..514cff73 100644 --- a/tests/expectations/tests/dynamic_loading_with_class.rs +++ b/tests/expectations/tests/dynamic_loading_with_class.rs @@ -12,6 +12,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field__x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr)._x) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(_x)) - ); - } - test_field__x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(_x)) + ); } extern "C" { #[link_name = "\u{1}_ZN1A13some_functionEv"] diff --git a/tests/expectations/tests/enum-default-bitfield.rs b/tests/expectations/tests/enum-default-bitfield.rs index 6ea42d0b..4c075766 100644 --- a/tests/expectations/tests/enum-default-bitfield.rs +++ b/tests/expectations/tests/enum-default-bitfield.rs @@ -43,6 +43,9 @@ impl ::std::ops::BitAndAssign for foo__bindgen_ty_1 { pub struct foo__bindgen_ty_1(pub ::std::os::raw::c_uint); #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -53,23 +56,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum-default-consts.rs b/tests/expectations/tests/enum-default-consts.rs index 631617bd..ddce26c2 100644 --- a/tests/expectations/tests/enum-default-consts.rs +++ b/tests/expectations/tests/enum-default-consts.rs @@ -15,6 +15,9 @@ pub const foo_FOO_B: foo__bindgen_ty_1 = 1; pub type foo__bindgen_ty_1 = ::std::os::raw::c_uint; #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -25,23 +28,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum-default-module.rs b/tests/expectations/tests/enum-default-module.rs index e74e9fc3..ae026d8b 100644 --- a/tests/expectations/tests/enum-default-module.rs +++ b/tests/expectations/tests/enum-default-module.rs @@ -17,6 +17,9 @@ pub mod foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -27,23 +30,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum-default-rust.rs b/tests/expectations/tests/enum-default-rust.rs index 8cc843a3..c3b728f8 100644 --- a/tests/expectations/tests/enum-default-rust.rs +++ b/tests/expectations/tests/enum-default-rust.rs @@ -20,6 +20,9 @@ pub enum foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -30,23 +33,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum-no-debug-rust.rs b/tests/expectations/tests/enum-no-debug-rust.rs index 6291137f..33c7b5c7 100644 --- a/tests/expectations/tests/enum-no-debug-rust.rs +++ b/tests/expectations/tests/enum-no-debug-rust.rs @@ -20,6 +20,9 @@ pub enum foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -30,23 +33,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum.rs b/tests/expectations/tests/enum.rs index 484adf5b..65b734a3 100644 --- a/tests/expectations/tests/enum.rs +++ b/tests/expectations/tests/enum.rs @@ -15,6 +15,9 @@ pub const foo_FOO_B: foo__bindgen_ty_1 = 1; pub type foo__bindgen_ty_1 = ::std::os::raw::c_uint; #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -25,23 +28,16 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(member) + ) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/enum_and_vtable_mangling.rs b/tests/expectations/tests/enum_and_vtable_mangling.rs index 5f41a62b..f414812b 100644 --- a/tests/expectations/tests/enum_and_vtable_mangling.rs +++ b/tests/expectations/tests/enum_and_vtable_mangling.rs @@ -25,6 +25,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 16usize, @@ -35,18 +38,11 @@ fn bindgen_test_layout_C() { 8usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(i)) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(i)) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/explicit-padding.rs b/tests/expectations/tests/explicit-padding.rs index 508c6b5b..a6ea7671 100644 --- a/tests/expectations/tests/explicit-padding.rs +++ b/tests/expectations/tests/explicit-padding.rs @@ -16,6 +16,9 @@ pub struct pad_me { } #[test] fn bindgen_test_layout_pad_me() { + const UNINIT: ::std::mem::MaybeUninit<pad_me> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<pad_me>(), 12usize, @@ -26,57 +29,36 @@ fn bindgen_test_layout_pad_me() { 4usize, concat!("Alignment of ", stringify!(pad_me)) ); - fn test_field_first() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).first) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pad_me), - "::", - stringify!(first) - ) - ); - } - test_field_first(); - fn test_field_second() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).second) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(pad_me), - "::", - stringify!(second) - ) - ); - } - test_field_second(); - fn test_field_third() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).third) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(pad_me), - "::", - stringify!(third) - ) - ); - } - test_field_third(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).first) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pad_me), + "::", + stringify!(first) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).second) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(pad_me), + "::", + stringify!(second) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).third) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(pad_me), + "::", + stringify!(third) + ) + ); } #[repr(C)] #[derive(Copy, Clone)] @@ -87,6 +69,9 @@ pub union dont_pad_me { } #[test] fn bindgen_test_layout_dont_pad_me() { + const UNINIT: ::std::mem::MaybeUninit<dont_pad_me> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<dont_pad_me>(), 4usize, @@ -97,57 +82,36 @@ fn bindgen_test_layout_dont_pad_me() { 4usize, concat!("Alignment of ", stringify!(dont_pad_me)) ); - fn test_field_first() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dont_pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).first) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(dont_pad_me), - "::", - stringify!(first) - ) - ); - } - test_field_first(); - fn test_field_second() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dont_pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).second) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(dont_pad_me), - "::", - stringify!(second) - ) - ); - } - test_field_second(); - fn test_field_third() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dont_pad_me>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).third) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(dont_pad_me), - "::", - stringify!(third) - ) - ); - } - test_field_third(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).first) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(dont_pad_me), + "::", + stringify!(first) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).second) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(dont_pad_me), + "::", + stringify!(second) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).third) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(dont_pad_me), + "::", + stringify!(third) + ) + ); } impl Default for dont_pad_me { fn default() -> Self { diff --git a/tests/expectations/tests/extern-const-struct.rs b/tests/expectations/tests/extern-const-struct.rs index ab2b3a66..8060316a 100644 --- a/tests/expectations/tests/extern-const-struct.rs +++ b/tests/expectations/tests/extern-const-struct.rs @@ -12,6 +12,9 @@ pub struct nsFoo { } #[test] fn bindgen_test_layout_nsFoo() { + const UNINIT: ::std::mem::MaybeUninit<nsFoo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsFoo>(), 1600usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_nsFoo() { 4usize, concat!("Alignment of ", stringify!(nsFoo)) ); - fn test_field_details() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsFoo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).details) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsFoo), - "::", - stringify!(details) - ) - ); - } - test_field_details(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).details) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsFoo), + "::", + stringify!(details) + ) + ); } impl Default for nsFoo { fn default() -> Self { diff --git a/tests/expectations/tests/forward-declaration-autoptr.rs b/tests/expectations/tests/forward-declaration-autoptr.rs index f46f73b6..9f4fdca0 100644 --- a/tests/expectations/tests/forward-declaration-autoptr.rs +++ b/tests/expectations/tests/forward-declaration-autoptr.rs @@ -32,6 +32,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -42,23 +45,18 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_m_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(m_member) - ) - ); - } - test_field_m_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(m_member) + ) + ); } impl Default for Bar { fn default() -> Self { diff --git a/tests/expectations/tests/forward_declared_complex_types.rs b/tests/expectations/tests/forward_declared_complex_types.rs index 9c3d7c66..c1b1f23d 100644 --- a/tests/expectations/tests/forward_declared_complex_types.rs +++ b/tests/expectations/tests/forward_declared_complex_types.rs @@ -35,6 +35,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -45,18 +48,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) + ); } impl Default for Bar { fn default() -> Self { diff --git a/tests/expectations/tests/forward_declared_complex_types_1_0.rs b/tests/expectations/tests/forward_declared_complex_types_1_0.rs index 0e792633..ecdbe49d 100644 --- a/tests/expectations/tests/forward_declared_complex_types_1_0.rs +++ b/tests/expectations/tests/forward_declared_complex_types_1_0.rs @@ -45,6 +45,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -55,18 +58,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) + ); } impl Clone for Bar { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/forward_declared_struct.rs b/tests/expectations/tests/forward_declared_struct.rs index eee7da73..f877666a 100644 --- a/tests/expectations/tests/forward_declared_struct.rs +++ b/tests/expectations/tests/forward_declared_struct.rs @@ -12,6 +12,9 @@ pub struct a { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_a() { 4usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -42,6 +38,9 @@ pub struct c { } #[test] fn bindgen_test_layout_c() { + const UNINIT: ::std::mem::MaybeUninit<c> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<c>(), 4usize, @@ -52,16 +51,9 @@ fn bindgen_test_layout_c() { 4usize, concat!("Alignment of ", stringify!(c)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<c>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(c), "::", stringify!(d)) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(c), "::", stringify!(d)) + ); } diff --git a/tests/expectations/tests/func_ptr_in_struct.rs b/tests/expectations/tests/func_ptr_in_struct.rs index 8709ee2b..745720d9 100644 --- a/tests/expectations/tests/func_ptr_in_struct.rs +++ b/tests/expectations/tests/func_ptr_in_struct.rs @@ -22,6 +22,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 8usize, @@ -32,21 +35,9 @@ fn bindgen_test_layout_Foo() { 8usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/gen-destructors-neg.rs b/tests/expectations/tests/gen-destructors-neg.rs index 09c14862..b87eb1d4 100644 --- a/tests/expectations/tests/gen-destructors-neg.rs +++ b/tests/expectations/tests/gen-destructors-neg.rs @@ -12,6 +12,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -22,21 +25,9 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/gen-destructors.rs b/tests/expectations/tests/gen-destructors.rs index 79f4ed80..1711f76d 100644 --- a/tests/expectations/tests/gen-destructors.rs +++ b/tests/expectations/tests/gen-destructors.rs @@ -12,6 +12,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -22,23 +25,11 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); } extern "C" { #[link_name = "\u{1}_ZN3FooD1Ev"] diff --git a/tests/expectations/tests/i128.rs b/tests/expectations/tests/i128.rs index 545198c6..dee57a6d 100644 --- a/tests/expectations/tests/i128.rs +++ b/tests/expectations/tests/i128.rs @@ -14,6 +14,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 32usize, @@ -24,38 +27,28 @@ fn bindgen_test_layout_foo() { 16usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_my_signed() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).my_signed) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(my_signed) - ) - ); - } - test_field_my_signed(); - fn test_field_my_unsigned() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).my_unsigned) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(my_unsigned) - ) - ); - } - test_field_my_unsigned(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).my_signed) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(my_signed) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).my_unsigned) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(my_unsigned) + ) + ); } diff --git a/tests/expectations/tests/inline_namespace.rs b/tests/expectations/tests/inline_namespace.rs index daa08685..c569bba6 100644 --- a/tests/expectations/tests/inline_namespace.rs +++ b/tests/expectations/tests/inline_namespace.rs @@ -21,6 +21,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -31,22 +34,15 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz) + ) + ); } } diff --git a/tests/expectations/tests/inline_namespace_conservative.rs b/tests/expectations/tests/inline_namespace_conservative.rs index d855e061..4ffafd46 100644 --- a/tests/expectations/tests/inline_namespace_conservative.rs +++ b/tests/expectations/tests/inline_namespace_conservative.rs @@ -26,6 +26,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -36,22 +39,15 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(baz) + ) + ); } } diff --git a/tests/expectations/tests/inner_const.rs b/tests/expectations/tests/inner_const.rs index 41c99047..69a7c39a 100644 --- a/tests/expectations/tests/inner_const.rs +++ b/tests/expectations/tests/inner_const.rs @@ -20,6 +20,9 @@ extern "C" { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -30,21 +33,9 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/inner_template_self.rs b/tests/expectations/tests/inner_template_self.rs index 033dc57b..13d9ac14 100644 --- a/tests/expectations/tests/inner_template_self.rs +++ b/tests/expectations/tests/inner_template_self.rs @@ -27,6 +27,9 @@ pub struct InstantiateIt { } #[test] fn bindgen_test_layout_InstantiateIt() { + const UNINIT: ::std::mem::MaybeUninit<InstantiateIt> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<InstantiateIt>(), 16usize, @@ -37,23 +40,16 @@ fn bindgen_test_layout_InstantiateIt() { 8usize, concat!("Alignment of ", stringify!(InstantiateIt)) ); - fn test_field_m_list() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<InstantiateIt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_list) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(InstantiateIt), - "::", - stringify!(m_list) - ) - ); - } - test_field_m_list(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_list) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(InstantiateIt), + "::", + stringify!(m_list) + ) + ); } impl Default for InstantiateIt { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1118-using-forward-decl.rs b/tests/expectations/tests/issue-1118-using-forward-decl.rs index 121c0866..e881c8c4 100644 --- a/tests/expectations/tests/issue-1118-using-forward-decl.rs +++ b/tests/expectations/tests/issue-1118-using-forward-decl.rs @@ -13,6 +13,9 @@ pub struct nsTArray_base { } #[test] fn bindgen_test_layout_nsTArray_base() { + const UNINIT: ::std::mem::MaybeUninit<nsTArray_base> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsTArray_base>(), 8usize, @@ -23,23 +26,16 @@ fn bindgen_test_layout_nsTArray_base() { 8usize, concat!("Alignment of ", stringify!(nsTArray_base)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsTArray_base>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsTArray_base), - "::", - stringify!(d) - ) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsTArray_base), + "::", + stringify!(d) + ) + ); } impl Default for nsTArray_base { fn default() -> Self { @@ -71,6 +67,9 @@ pub struct nsIContent { } #[test] fn bindgen_test_layout_nsIContent() { + const UNINIT: ::std::mem::MaybeUninit<nsIContent> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsIContent>(), 8usize, @@ -81,23 +80,16 @@ fn bindgen_test_layout_nsIContent() { 8usize, concat!("Alignment of ", stringify!(nsIContent)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsIContent>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsIContent), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsIContent), + "::", + stringify!(foo) + ) + ); } impl Default for nsIContent { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1216-variadic-member.rs b/tests/expectations/tests/issue-1216-variadic-member.rs index 792586b4..bb57c856 100644 --- a/tests/expectations/tests/issue-1216-variadic-member.rs +++ b/tests/expectations/tests/issue-1216-variadic-member.rs @@ -22,6 +22,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 8usize, @@ -32,16 +35,9 @@ fn bindgen_test_layout_Foo() { 8usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Foo), "::", stringify!(f)) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(f)) + ); } diff --git a/tests/expectations/tests/issue-1281.rs b/tests/expectations/tests/issue-1281.rs index 9da4c954..db99cbce 100644 --- a/tests/expectations/tests/issue-1281.rs +++ b/tests/expectations/tests/issue-1281.rs @@ -17,6 +17,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -27,26 +30,17 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(foo)) + ); } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -57,18 +51,11 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(bar), "::", stringify!(u)) - ); - } - test_field_u(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(bar), "::", stringify!(u)) + ); } pub type bar_t = bar; #[repr(C)] @@ -78,6 +65,9 @@ pub struct baz { } #[test] fn bindgen_test_layout_baz() { + const UNINIT: ::std::mem::MaybeUninit<baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<baz>(), 4usize, @@ -88,16 +78,9 @@ fn bindgen_test_layout_baz() { 4usize, concat!("Alignment of ", stringify!(baz)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(baz), "::", stringify!(f)) - ); - } - test_field_f(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(baz), "::", stringify!(f)) + ); } diff --git a/tests/expectations/tests/issue-1285.rs b/tests/expectations/tests/issue-1285.rs index 37f07476..08aab0a9 100644 --- a/tests/expectations/tests/issue-1285.rs +++ b/tests/expectations/tests/issue-1285.rs @@ -18,6 +18,9 @@ pub union foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -28,42 +31,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { @@ -76,6 +63,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -86,23 +76,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1291.rs b/tests/expectations/tests/issue-1291.rs index 6776a19d..25f4f105 100644 --- a/tests/expectations/tests/issue-1291.rs +++ b/tests/expectations/tests/issue-1291.rs @@ -27,6 +27,9 @@ pub struct RTCRay { } #[test] fn bindgen_test_layout_RTCRay() { + const UNINIT: ::std::mem::MaybeUninit<RTCRay> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<RTCRay>(), 96usize, @@ -37,259 +40,144 @@ fn bindgen_test_layout_RTCRay() { 16usize, concat!("Alignment of ", stringify!(RTCRay)) ); - fn test_field_org() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).org) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(org) - ) - ); - } - test_field_org(); - fn test_field_align0() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).align0) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(align0) - ) - ); - } - test_field_align0(); - fn test_field_dir() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dir) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(dir) - ) - ); - } - test_field_dir(); - fn test_field_align1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).align1) as usize - ptr as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(align1) - ) - ); - } - test_field_align1(); - fn test_field_tnear() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tnear) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(tnear) - ) - ); - } - test_field_tnear(); - fn test_field_tfar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tfar) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(tfar) - ) - ); - } - test_field_tfar(); - fn test_field_time() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).time) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(time) - ) - ); - } - test_field_time(); - fn test_field_mask() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(mask) - ) - ); - } - test_field_mask(); - fn test_field_Ng() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ng) as usize - ptr as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(Ng) - ) - ); - } - test_field_Ng(); - fn test_field_align2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).align2) as usize - ptr as usize - }, - 60usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(align2) - ) - ); - } - test_field_align2(); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(u) - ) - ); - } - test_field_u(); - fn test_field_v() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize - }, - 68usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(v) - ) - ); - } - test_field_v(); - fn test_field_geomID() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).geomID) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(geomID) - ) - ); - } - test_field_geomID(); - fn test_field_primID() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).primID) as usize - ptr as usize - }, - 76usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(primID) - ) - ); - } - test_field_primID(); - fn test_field_instID() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<RTCRay>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).instID) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(RTCRay), - "::", - stringify!(instID) - ) - ); - } - test_field_instID(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).org) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(org) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).align0) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(align0) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dir) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(dir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).align1) as usize - ptr as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(align1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tnear) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(tnear) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tfar) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(tfar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).time) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(time) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(mask) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ng) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(Ng) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).align2) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(align2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 64usize, + concat!("Offset of field: ", stringify!(RTCRay), "::", stringify!(u)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).v) as usize - ptr as usize }, + 68usize, + concat!("Offset of field: ", stringify!(RTCRay), "::", stringify!(v)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).geomID) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(geomID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).primID) as usize - ptr as usize }, + 76usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(primID) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).instID) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(RTCRay), + "::", + stringify!(instID) + ) + ); } diff --git a/tests/expectations/tests/issue-1382-rust-primitive-types.rs b/tests/expectations/tests/issue-1382-rust-primitive-types.rs index 4ef922c3..b767d5e4 100644 --- a/tests/expectations/tests/issue-1382-rust-primitive-types.rs +++ b/tests/expectations/tests/issue-1382-rust-primitive-types.rs @@ -33,6 +33,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 56usize, @@ -43,242 +46,94 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_i8() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i8_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(i8_) - ) - ); - } - test_field_i8(); - fn test_field_u8() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u8_) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(u8_) - ) - ); - } - test_field_u8(); - fn test_field_i16() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i16_) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(i16_) - ) - ); - } - test_field_i16(); - fn test_field_u16() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u16_) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(u16_) - ) - ); - } - test_field_u16(); - fn test_field_i32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(i32_) - ) - ); - } - test_field_i32(); - fn test_field_u32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize - }, - 20usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(u32_) - ) - ); - } - test_field_u32(); - fn test_field_i64() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i64_) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(i64_) - ) - ); - } - test_field_i64(); - fn test_field_u64() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u64_) as usize - ptr as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(u64_) - ) - ); - } - test_field_u64(); - fn test_field_i128() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i128_) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(i128_) - ) - ); - } - test_field_i128(); - fn test_field_u128() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u128_) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(u128_) - ) - ); - } - test_field_u128(); - fn test_field_isize() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).isize_) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(isize_) - ) - ); - } - test_field_isize(); - fn test_field_usize() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).usize_) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(usize_) - ) - ); - } - test_field_usize(); - fn test_field_f32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f32_) as usize - ptr as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(f32_) - ) - ); - } - test_field_f32(); - fn test_field_f64() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f64_) as usize - ptr as usize - }, - 52usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(f64_) - ) - ); - } - test_field_f64(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i8_) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(i8_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u8_) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(u8_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i16_) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(i16_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u16_) as usize - ptr as usize }, + 12usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(u16_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize }, + 16usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(i32_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize }, + 20usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(u32_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i64_) as usize - ptr as usize }, + 24usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(i64_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u64_) as usize - ptr as usize }, + 28usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(u64_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i128_) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(i128_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u128_) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(u128_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).isize_) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(isize_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).usize_) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(usize_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f32_) as usize - ptr as usize }, + 48usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(f32_)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f64_) as usize - ptr as usize }, + 52usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(f64_)) + ); } diff --git a/tests/expectations/tests/issue-1443.rs b/tests/expectations/tests/issue-1443.rs index 92a1c7d4..48cae79f 100644 --- a/tests/expectations/tests/issue-1443.rs +++ b/tests/expectations/tests/issue-1443.rs @@ -18,6 +18,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 16usize, @@ -28,30 +31,16 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) - ); - } - test_field_f(); - fn test_field_m() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(Bar), "::", stringify!(m)) - ); - } - test_field_m(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(f)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(m)) + ); } impl Default for Bar { fn default() -> Self { @@ -70,6 +59,9 @@ pub struct Baz { } #[test] fn bindgen_test_layout_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz>(), 16usize, @@ -80,30 +72,16 @@ fn bindgen_test_layout_Baz() { 8usize, concat!("Alignment of ", stringify!(Baz)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Baz), "::", stringify!(f)) - ); - } - test_field_f(); - fn test_field_m() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(Baz), "::", stringify!(m)) - ); - } - test_field_m(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Baz), "::", stringify!(f)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Baz), "::", stringify!(m)) + ); } impl Default for Baz { fn default() -> Self { @@ -122,6 +100,9 @@ pub struct Tar { } #[test] fn bindgen_test_layout_Tar() { + const UNINIT: ::std::mem::MaybeUninit<Tar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Tar>(), 16usize, @@ -132,30 +113,16 @@ fn bindgen_test_layout_Tar() { 8usize, concat!("Alignment of ", stringify!(Tar)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Tar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Tar), "::", stringify!(f)) - ); - } - test_field_f(); - fn test_field_m() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Tar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(Tar), "::", stringify!(m)) - ); - } - test_field_m(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Tar), "::", stringify!(f)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Tar), "::", stringify!(m)) + ); } impl Default for Tar { fn default() -> Self { @@ -174,6 +141,9 @@ pub struct Taz { } #[test] fn bindgen_test_layout_Taz() { + const UNINIT: ::std::mem::MaybeUninit<Taz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Taz>(), 16usize, @@ -184,30 +154,16 @@ fn bindgen_test_layout_Taz() { 8usize, concat!("Alignment of ", stringify!(Taz)) ); - fn test_field_f() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Taz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Taz), "::", stringify!(f)) - ); - } - test_field_f(); - fn test_field_m() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Taz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(Taz), "::", stringify!(m)) - ); - } - test_field_m(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).f) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Taz), "::", stringify!(f)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Taz), "::", stringify!(m)) + ); } impl Default for Taz { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1454.rs b/tests/expectations/tests/issue-1454.rs index e0ad1d71..8da43cb0 100644 --- a/tests/expectations/tests/issue-1454.rs +++ b/tests/expectations/tests/issue-1454.rs @@ -16,6 +16,9 @@ pub struct local_type { } #[test] fn bindgen_test_layout_local_type() { + const UNINIT: ::std::mem::MaybeUninit<local_type> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<local_type>(), 0usize, @@ -26,21 +29,14 @@ fn bindgen_test_layout_local_type() { 1usize, concat!("Alignment of ", stringify!(local_type)) ); - fn test_field_inner() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<local_type>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).inner) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(local_type), - "::", - stringify!(inner) - ) - ); - } - test_field_inner(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).inner) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(local_type), + "::", + stringify!(inner) + ) + ); } diff --git a/tests/expectations/tests/issue-1498.rs b/tests/expectations/tests/issue-1498.rs index b3064e64..08ba9ef4 100644 --- a/tests/expectations/tests/issue-1498.rs +++ b/tests/expectations/tests/issue-1498.rs @@ -33,6 +33,9 @@ pub union rte_memseg__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_memseg__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_memseg__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_memseg__bindgen_ty_1>(), 8usize, @@ -43,44 +46,26 @@ fn bindgen_test_layout_rte_memseg__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(rte_memseg__bindgen_ty_1)) ); - fn test_field_addr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_memseg__bindgen_ty_1>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg__bindgen_ty_1), - "::", - stringify!(addr) - ) - ); - } - test_field_addr(); - fn test_field_addr_64() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_memseg__bindgen_ty_1>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).addr_64) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg__bindgen_ty_1), - "::", - stringify!(addr_64) - ) - ); - } - test_field_addr_64(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg__bindgen_ty_1), + "::", + stringify!(addr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).addr_64) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg__bindgen_ty_1), + "::", + stringify!(addr_64) + ) + ); } impl Default for rte_memseg__bindgen_ty_1 { fn default() -> Self { @@ -93,6 +78,9 @@ impl Default for rte_memseg__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_memseg() { + const UNINIT: ::std::mem::MaybeUninit<rte_memseg> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_memseg>(), 44usize, @@ -103,108 +91,74 @@ fn bindgen_test_layout_rte_memseg() { 1usize, concat!("Alignment of ", stringify!(rte_memseg)) ); - fn test_field_phys_addr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).phys_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(phys_addr) - ) - ); - } - test_field_phys_addr(); - fn test_field_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(len) - ) - ); - } - test_field_len(); - fn test_field_hugepage_sz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hugepage_sz) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(hugepage_sz) - ) - ); - } - test_field_hugepage_sz(); - fn test_field_socket_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).socket_id) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(socket_id) - ) - ); - } - test_field_socket_id(); - fn test_field_nchannel() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nchannel) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(nchannel) - ) - ); - } - test_field_nchannel(); - fn test_field_nrank() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_memseg>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nrank) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_memseg), - "::", - stringify!(nrank) - ) - ); - } - test_field_nrank(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).phys_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(phys_addr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).hugepage_sz) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(hugepage_sz) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).socket_id) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(socket_id) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nchannel) as usize - ptr as usize + }, + 36usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(nchannel) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nrank) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_memseg), + "::", + stringify!(nrank) + ) + ); } impl Default for rte_memseg { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1947.rs b/tests/expectations/tests/issue-1947.rs index e32b7f5f..e133ed85 100644 --- a/tests/expectations/tests/issue-1947.rs +++ b/tests/expectations/tests/issue-1947.rs @@ -107,6 +107,9 @@ pub struct V56AMDY { } #[test] fn bindgen_test_layout_V56AMDY() { + const UNINIT: ::std::mem::MaybeUninit<V56AMDY> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<V56AMDY>(), 8usize, @@ -117,57 +120,36 @@ fn bindgen_test_layout_V56AMDY() { 2usize, concat!("Alignment of ", stringify!(V56AMDY)) ); - fn test_field_MADK() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<V56AMDY>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).MADK) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(V56AMDY), - "::", - stringify!(MADK) - ) - ); - } - test_field_MADK(); - fn test_field_MABR() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<V56AMDY>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).MABR) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(V56AMDY), - "::", - stringify!(MABR) - ) - ); - } - test_field_MABR(); - fn test_field__rB_() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<V56AMDY>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr)._rB_) as usize - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(V56AMDY), - "::", - stringify!(_rB_) - ) - ); - } - test_field__rB_(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).MADK) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(V56AMDY), + "::", + stringify!(MADK) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).MABR) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(V56AMDY), + "::", + stringify!(MABR) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._rB_) as usize - ptr as usize }, + 7usize, + concat!( + "Offset of field: ", + stringify!(V56AMDY), + "::", + stringify!(_rB_) + ) + ); } impl V56AMDY { #[inline] diff --git a/tests/expectations/tests/issue-1977-larger-arrays.rs b/tests/expectations/tests/issue-1977-larger-arrays.rs index be4723fe..6375ea7e 100644 --- a/tests/expectations/tests/issue-1977-larger-arrays.rs +++ b/tests/expectations/tests/issue-1977-larger-arrays.rs @@ -12,6 +12,9 @@ pub struct S { } #[test] fn bindgen_test_layout_S() { + const UNINIT: ::std::mem::MaybeUninit<S> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<S>(), 33usize, @@ -22,23 +25,18 @@ fn bindgen_test_layout_S() { 1usize, concat!("Alignment of ", stringify!(S)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<S>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(S), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(S), + "::", + stringify!(large_array) + ) + ); } impl Default for S { fn default() -> Self { diff --git a/tests/expectations/tests/issue-1995.rs b/tests/expectations/tests/issue-1995.rs index a0f10c01..890479b5 100644 --- a/tests/expectations/tests/issue-1995.rs +++ b/tests/expectations/tests/issue-1995.rs @@ -19,6 +19,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -29,21 +32,9 @@ fn bindgen_test_layout_Bar() { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(baz)) + ); } diff --git a/tests/expectations/tests/issue-2019.rs b/tests/expectations/tests/issue-2019.rs index 6140dfdd..294e9f0e 100644 --- a/tests/expectations/tests/issue-2019.rs +++ b/tests/expectations/tests/issue-2019.rs @@ -12,6 +12,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(a)) + ); } extern "C" { #[link_name = "\u{1}_ZN1A4makeEv"] @@ -52,6 +48,9 @@ pub struct B { } #[test] fn bindgen_test_layout_B() { + const UNINIT: ::std::mem::MaybeUninit<B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B>(), 4usize, @@ -62,18 +61,11 @@ fn bindgen_test_layout_B() { 4usize, concat!("Alignment of ", stringify!(B)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(B), "::", stringify!(b)) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(B), "::", stringify!(b)) + ); } extern "C" { #[link_name = "\u{1}_ZN1B4makeEv"] diff --git a/tests/expectations/tests/issue-2239-template-dependent-bit-width.rs b/tests/expectations/tests/issue-2239-template-dependent-bit-width.rs new file mode 100644 index 00000000..75ec9e43 --- /dev/null +++ b/tests/expectations/tests/issue-2239-template-dependent-bit-width.rs @@ -0,0 +1,19 @@ +#![allow( + dead_code, + non_snake_case, + non_camel_case_types, + non_upper_case_globals +)] + +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct b { + pub _address: u8, +} +pub type b_td<a> = a; +pub type b_ta<a> = a; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct b_foo { + pub _address: u8, +} diff --git a/tests/expectations/tests/issue-372.rs b/tests/expectations/tests/issue-372.rs index f46d2c9f..e87fb4d1 100644 --- a/tests/expectations/tests/issue-372.rs +++ b/tests/expectations/tests/issue-372.rs @@ -18,6 +18,9 @@ pub mod root { } #[test] fn bindgen_test_layout_i() { + const UNINIT: ::std::mem::MaybeUninit<i> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<i>(), 24usize, @@ -28,57 +31,21 @@ pub mod root { 8usize, concat!("Alignment of ", stringify!(i)) ); - fn test_field_j() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<i>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).j) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(i), - "::", - stringify!(j) - ) - ); - } - test_field_j(); - fn test_field_k() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<i>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).k) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(i), - "::", - stringify!(k) - ) - ); - } - test_field_k(); - fn test_field_l() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<i>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).l) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(i), - "::", - stringify!(l) - ) - ); - } - test_field_l(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).j) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(i), "::", stringify!(j)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).k) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(i), "::", stringify!(k)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).l) as usize - ptr as usize }, + 16usize, + concat!("Offset of field: ", stringify!(i), "::", stringify!(l)) + ); } impl Default for i { fn default() -> Self { @@ -96,6 +63,9 @@ pub mod root { } #[test] fn bindgen_test_layout_d() { + const UNINIT: ::std::mem::MaybeUninit<d> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<d>(), 24usize, @@ -106,23 +76,11 @@ pub mod root { 8usize, concat!("Alignment of ", stringify!(d)) ); - fn test_field_m() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<d>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(d), - "::", - stringify!(m) - ) - ); - } - test_field_m(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(d), "::", stringify!(m)) + ); } impl Default for d { fn default() -> Self { @@ -155,6 +113,9 @@ pub mod root { } #[test] fn bindgen_test_layout_F() { + const UNINIT: ::std::mem::MaybeUninit<F> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<F>(), 264usize, @@ -165,23 +126,11 @@ pub mod root { 8usize, concat!("Alignment of ", stringify!(F)) ); - fn test_field_w() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<F>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).w) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(F), - "::", - stringify!(w) - ) - ); - } - test_field_w(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).w) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(F), "::", stringify!(w)) + ); } impl Default for F { fn default() -> Self { diff --git a/tests/expectations/tests/issue-537-repr-packed-n.rs b/tests/expectations/tests/issue-537-repr-packed-n.rs index 55ff25a4..b1e42ca7 100644 --- a/tests/expectations/tests/issue-537-repr-packed-n.rs +++ b/tests/expectations/tests/issue-537-repr-packed-n.rs @@ -15,6 +15,9 @@ pub struct AlignedToOne { } #[test] fn bindgen_test_layout_AlignedToOne() { + const UNINIT: ::std::mem::MaybeUninit<AlignedToOne> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AlignedToOne>(), 4usize, @@ -25,23 +28,16 @@ fn bindgen_test_layout_AlignedToOne() { 1usize, concat!("Alignment of ", stringify!(AlignedToOne)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AlignedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AlignedToOne), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AlignedToOne), + "::", + stringify!(i) + ) + ); } /// This should be be packed because Rust 1.33 has `#[repr(packed(N))]`. #[repr(C, packed(2))] @@ -51,6 +47,9 @@ pub struct AlignedToTwo { } #[test] fn bindgen_test_layout_AlignedToTwo() { + const UNINIT: ::std::mem::MaybeUninit<AlignedToTwo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AlignedToTwo>(), 4usize, @@ -61,23 +60,16 @@ fn bindgen_test_layout_AlignedToTwo() { 2usize, concat!("Alignment of ", stringify!(AlignedToTwo)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AlignedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AlignedToTwo), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AlignedToTwo), + "::", + stringify!(i) + ) + ); } /// This should not be opaque because although `libclang` doesn't give us the /// `#pragma pack(1)`, we can detect that alignment is 1 and add @@ -90,6 +82,9 @@ pub struct PackedToOne { } #[test] fn bindgen_test_layout_PackedToOne() { + const UNINIT: ::std::mem::MaybeUninit<PackedToOne> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PackedToOne>(), 8usize, @@ -100,40 +95,26 @@ fn bindgen_test_layout_PackedToOne() { 1usize, concat!("Alignment of ", stringify!(PackedToOne)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PackedToOne), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(PackedToOne), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PackedToOne), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(PackedToOne), + "::", + stringify!(y) + ) + ); } /// This should be be packed because Rust 1.33 has `#[repr(packed(N))]`. #[repr(C, packed(2))] @@ -144,6 +125,9 @@ pub struct PackedToTwo { } #[test] fn bindgen_test_layout_PackedToTwo() { + const UNINIT: ::std::mem::MaybeUninit<PackedToTwo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PackedToTwo>(), 8usize, @@ -154,38 +138,24 @@ fn bindgen_test_layout_PackedToTwo() { 2usize, concat!("Alignment of ", stringify!(PackedToTwo)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PackedToTwo), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(PackedToTwo), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PackedToTwo), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(PackedToTwo), + "::", + stringify!(y) + ) + ); } diff --git a/tests/expectations/tests/issue-537.rs b/tests/expectations/tests/issue-537.rs index d3a0e8c5..e2be9d63 100644 --- a/tests/expectations/tests/issue-537.rs +++ b/tests/expectations/tests/issue-537.rs @@ -14,6 +14,9 @@ pub struct AlignedToOne { } #[test] fn bindgen_test_layout_AlignedToOne() { + const UNINIT: ::std::mem::MaybeUninit<AlignedToOne> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AlignedToOne>(), 4usize, @@ -24,23 +27,16 @@ fn bindgen_test_layout_AlignedToOne() { 1usize, concat!("Alignment of ", stringify!(AlignedToOne)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AlignedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AlignedToOne), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AlignedToOne), + "::", + stringify!(i) + ) + ); } /// This should be opaque because although we can see the attributes, Rust before /// 1.33 doesn't have `#[repr(packed(N))]`. @@ -51,6 +47,9 @@ pub struct AlignedToTwo { } #[test] fn bindgen_test_layout_AlignedToTwo() { + const UNINIT: ::std::mem::MaybeUninit<AlignedToTwo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AlignedToTwo>(), 4usize, @@ -61,23 +60,16 @@ fn bindgen_test_layout_AlignedToTwo() { 2usize, concat!("Alignment of ", stringify!(AlignedToTwo)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AlignedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AlignedToTwo), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AlignedToTwo), + "::", + stringify!(i) + ) + ); } /// This should not be opaque because although `libclang` doesn't give us the /// `#pragma pack(1)`, we can detect that alignment is 1 and add @@ -90,6 +82,9 @@ pub struct PackedToOne { } #[test] fn bindgen_test_layout_PackedToOne() { + const UNINIT: ::std::mem::MaybeUninit<PackedToOne> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PackedToOne>(), 8usize, @@ -100,40 +95,26 @@ fn bindgen_test_layout_PackedToOne() { 1usize, concat!("Alignment of ", stringify!(PackedToOne)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PackedToOne), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToOne>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(PackedToOne), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PackedToOne), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(PackedToOne), + "::", + stringify!(y) + ) + ); } /// In this case, even if we can detect the weird alignment triggered by /// `#pragma pack(2)`, we can't do anything about it because Rust before 1.33 @@ -146,6 +127,9 @@ pub struct PackedToTwo { } #[test] fn bindgen_test_layout_PackedToTwo() { + const UNINIT: ::std::mem::MaybeUninit<PackedToTwo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PackedToTwo>(), 8usize, @@ -156,38 +140,24 @@ fn bindgen_test_layout_PackedToTwo() { 2usize, concat!("Alignment of ", stringify!(PackedToTwo)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PackedToTwo), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PackedToTwo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(PackedToTwo), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PackedToTwo), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(PackedToTwo), + "::", + stringify!(y) + ) + ); } diff --git a/tests/expectations/tests/issue-573-layout-test-failures.rs b/tests/expectations/tests/issue-573-layout-test-failures.rs index 1c94f94f..fbff1362 100644 --- a/tests/expectations/tests/issue-573-layout-test-failures.rs +++ b/tests/expectations/tests/issue-573-layout-test-failures.rs @@ -17,6 +17,9 @@ pub struct AutoIdVector { } #[test] fn bindgen_test_layout_AutoIdVector() { + const UNINIT: ::std::mem::MaybeUninit<AutoIdVector> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<AutoIdVector>(), 1usize, @@ -27,23 +30,16 @@ fn bindgen_test_layout_AutoIdVector() { 1usize, concat!("Alignment of ", stringify!(AutoIdVector)) ); - fn test_field_ar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<AutoIdVector>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(AutoIdVector), - "::", - stringify!(ar) - ) - ); - } - test_field_ar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(AutoIdVector), + "::", + stringify!(ar) + ) + ); } #[test] fn __bindgen_test_layout_Outer_open0_int_close0_instantiation() { diff --git a/tests/expectations/tests/issue-574-assertion-failure-in-codegen.rs b/tests/expectations/tests/issue-574-assertion-failure-in-codegen.rs index 66407d81..22aa9d16 100644 --- a/tests/expectations/tests/issue-574-assertion-failure-in-codegen.rs +++ b/tests/expectations/tests/issue-574-assertion-failure-in-codegen.rs @@ -17,6 +17,9 @@ pub struct _bindgen_ty_1 { } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<_bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_bindgen_ty_1>(), 1usize, @@ -27,23 +30,16 @@ fn bindgen_test_layout__bindgen_ty_1() { 1usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_ar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(ar) - ) - ); - } - test_field_ar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(ar) + ) + ); } extern "C" { pub static mut AutoIdVector: _bindgen_ty_1; diff --git a/tests/expectations/tests/issue-584-stylo-template-analysis-panic.rs b/tests/expectations/tests/issue-584-stylo-template-analysis-panic.rs index 2a1d045b..3765315c 100644 --- a/tests/expectations/tests/issue-584-stylo-template-analysis-panic.rs +++ b/tests/expectations/tests/issue-584-stylo-template-analysis-panic.rs @@ -51,6 +51,9 @@ pub struct g { } #[test] fn bindgen_test_layout_g() { + const UNINIT: ::std::mem::MaybeUninit<g> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<g>(), 1usize, @@ -61,18 +64,11 @@ fn bindgen_test_layout_g() { 1usize, concat!("Alignment of ", stringify!(g)) ); - fn test_field_h() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<g>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(g), "::", stringify!(h)) - ); - } - test_field_h(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(g), "::", stringify!(h)) + ); } impl Default for g { fn default() -> Self { diff --git a/tests/expectations/tests/issue-639-typedef-anon-field.rs b/tests/expectations/tests/issue-639-typedef-anon-field.rs index 8f4b2a5a..bac8a04c 100644 --- a/tests/expectations/tests/issue-639-typedef-anon-field.rs +++ b/tests/expectations/tests/issue-639-typedef-anon-field.rs @@ -17,6 +17,9 @@ pub struct Foo_Bar { } #[test] fn bindgen_test_layout_Foo_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Foo_Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo_Bar>(), 4usize, @@ -27,26 +30,22 @@ fn bindgen_test_layout_Foo_Bar() { 4usize, concat!("Alignment of ", stringify!(Foo_Bar)) ); - fn test_field_abc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo_Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).abc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo_Bar), - "::", - stringify!(abc) - ) - ); - } - test_field_abc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).abc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Foo_Bar), + "::", + stringify!(abc) + ) + ); } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -57,23 +56,11 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(bar)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -87,6 +74,9 @@ pub struct Baz_Bar { } #[test] fn bindgen_test_layout_Baz_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Baz_Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz_Bar>(), 4usize, @@ -97,23 +87,16 @@ fn bindgen_test_layout_Baz_Bar() { 4usize, concat!("Alignment of ", stringify!(Baz_Bar)) ); - fn test_field_abc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz_Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).abc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Baz_Bar), - "::", - stringify!(abc) - ) - ); - } - test_field_abc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).abc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Baz_Bar), + "::", + stringify!(abc) + ) + ); } #[test] fn bindgen_test_layout_Baz() { diff --git a/tests/expectations/tests/issue-643-inner-struct.rs b/tests/expectations/tests/issue-643-inner-struct.rs index 0fb586c4..b69aa16e 100644 --- a/tests/expectations/tests/issue-643-inner-struct.rs +++ b/tests/expectations/tests/issue-643-inner-struct.rs @@ -50,6 +50,9 @@ pub struct rte_ring_prod { } #[test] fn bindgen_test_layout_rte_ring_prod() { + const UNINIT: ::std::mem::MaybeUninit<rte_ring_prod> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ring_prod>(), 4usize, @@ -60,23 +63,18 @@ fn bindgen_test_layout_rte_ring_prod() { 4usize, concat!("Alignment of ", stringify!(rte_ring_prod)) ); - fn test_field_watermark() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring_prod>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).watermark) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ring_prod), - "::", - stringify!(watermark) - ) - ); - } - test_field_watermark(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).watermark) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ring_prod), + "::", + stringify!(watermark) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -85,6 +83,9 @@ pub struct rte_ring_cons { } #[test] fn bindgen_test_layout_rte_ring_cons() { + const UNINIT: ::std::mem::MaybeUninit<rte_ring_cons> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ring_cons>(), 4usize, @@ -95,23 +96,18 @@ fn bindgen_test_layout_rte_ring_cons() { 4usize, concat!("Alignment of ", stringify!(rte_ring_cons)) ); - fn test_field_sc_dequeue() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring_cons>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sc_dequeue) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ring_cons), - "::", - stringify!(sc_dequeue) - ) - ); - } - test_field_sc_dequeue(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sc_dequeue) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ring_cons), + "::", + stringify!(sc_dequeue) + ) + ); } #[test] fn bindgen_test_layout_rte_ring() { diff --git a/tests/expectations/tests/issue-648-derive-debug-with-padding.rs b/tests/expectations/tests/issue-648-derive-debug-with-padding.rs index f91bd469..13cdf0c9 100644 --- a/tests/expectations/tests/issue-648-derive-debug-with-padding.rs +++ b/tests/expectations/tests/issue-648-derive-debug-with-padding.rs @@ -15,6 +15,9 @@ pub struct NoDebug { } #[test] fn bindgen_test_layout_NoDebug() { + const UNINIT: ::std::mem::MaybeUninit<NoDebug> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoDebug>(), 64usize, @@ -25,23 +28,16 @@ fn bindgen_test_layout_NoDebug() { 64usize, concat!("Alignment of ", stringify!(NoDebug)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoDebug>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoDebug), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NoDebug), + "::", + stringify!(c) + ) + ); } impl Default for NoDebug { fn default() -> Self { @@ -70,6 +66,9 @@ pub struct ShouldDeriveDebugButDoesNot { } #[test] fn bindgen_test_layout_ShouldDeriveDebugButDoesNot() { + const UNINIT: ::std::mem::MaybeUninit<ShouldDeriveDebugButDoesNot> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldDeriveDebugButDoesNot>(), 64usize, @@ -80,44 +79,26 @@ fn bindgen_test_layout_ShouldDeriveDebugButDoesNot() { 64usize, concat!("Alignment of ", stringify!(ShouldDeriveDebugButDoesNot)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ShouldDeriveDebugButDoesNot, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldDeriveDebugButDoesNot), - "::", - stringify!(c) - ) - ); - } - test_field_c(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ShouldDeriveDebugButDoesNot, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ShouldDeriveDebugButDoesNot), - "::", - stringify!(d) - ) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldDeriveDebugButDoesNot), + "::", + stringify!(c) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ShouldDeriveDebugButDoesNot), + "::", + stringify!(d) + ) + ); } impl Default for ShouldDeriveDebugButDoesNot { fn default() -> Self { diff --git a/tests/expectations/tests/issue-674-1.rs b/tests/expectations/tests/issue-674-1.rs index e3e7a54f..b37d7a27 100644 --- a/tests/expectations/tests/issue-674-1.rs +++ b/tests/expectations/tests/issue-674-1.rs @@ -26,6 +26,9 @@ pub mod root { } #[test] fn bindgen_test_layout_CapturingContentInfo() { + const UNINIT: ::std::mem::MaybeUninit<CapturingContentInfo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<CapturingContentInfo>(), 1usize, @@ -36,24 +39,15 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(CapturingContentInfo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<CapturingContentInfo>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(CapturingContentInfo), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(CapturingContentInfo), + "::", + stringify!(a) + ) + ); } } diff --git a/tests/expectations/tests/issue-674-2.rs b/tests/expectations/tests/issue-674-2.rs index 61a456f6..12b2aa20 100644 --- a/tests/expectations/tests/issue-674-2.rs +++ b/tests/expectations/tests/issue-674-2.rs @@ -26,6 +26,9 @@ pub mod root { } #[test] fn bindgen_test_layout_c() { + const UNINIT: ::std::mem::MaybeUninit<c> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<c>(), 1usize, @@ -36,23 +39,11 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(c)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<c>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(c), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(c), "::", stringify!(b)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -61,6 +52,9 @@ pub mod root { } #[test] fn bindgen_test_layout_B() { + const UNINIT: ::std::mem::MaybeUninit<B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B>(), 1usize, @@ -71,23 +65,11 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(B)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(B), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(B), "::", stringify!(a)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] diff --git a/tests/expectations/tests/issue-674-3.rs b/tests/expectations/tests/issue-674-3.rs index b45a953e..e7af6b8d 100644 --- a/tests/expectations/tests/issue-674-3.rs +++ b/tests/expectations/tests/issue-674-3.rs @@ -22,6 +22,9 @@ pub mod root { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 1usize, @@ -32,23 +35,11 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(a), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -57,6 +48,9 @@ pub mod root { } #[test] fn bindgen_test_layout_nsCSSValue() { + const UNINIT: ::std::mem::MaybeUninit<nsCSSValue> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsCSSValue>(), 1usize, @@ -67,23 +61,15 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(nsCSSValue)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<nsCSSValue>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsCSSValue), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsCSSValue), + "::", + stringify!(c) + ) + ); } } diff --git a/tests/expectations/tests/issue-801-opaque-sloppiness.rs b/tests/expectations/tests/issue-801-opaque-sloppiness.rs index cd89eec5..b3192b72 100644 --- a/tests/expectations/tests/issue-801-opaque-sloppiness.rs +++ b/tests/expectations/tests/issue-801-opaque-sloppiness.rs @@ -40,6 +40,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 1usize, @@ -50,16 +53,9 @@ fn bindgen_test_layout_C() { 1usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(b)) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(b)) + ); } diff --git a/tests/expectations/tests/issue-807-opaque-types-methods-being-generated.rs b/tests/expectations/tests/issue-807-opaque-types-methods-being-generated.rs index 584bd00a..f8869528 100644 --- a/tests/expectations/tests/issue-807-opaque-types-methods-being-generated.rs +++ b/tests/expectations/tests/issue-807-opaque-types-methods-being-generated.rs @@ -109,6 +109,9 @@ pub struct Allowlisted { } #[test] fn bindgen_test_layout_Allowlisted() { + const UNINIT: ::std::mem::MaybeUninit<Allowlisted> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Allowlisted>(), 1usize, @@ -119,21 +122,16 @@ fn bindgen_test_layout_Allowlisted() { 1usize, concat!("Alignment of ", stringify!(Allowlisted)) ); - fn test_field_some_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Allowlisted>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).some_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Allowlisted), - "::", - stringify!(some_member) - ) - ); - } - test_field_some_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).some_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Allowlisted), + "::", + stringify!(some_member) + ) + ); } diff --git a/tests/expectations/tests/issue-944-derive-copy-and-blocklisting.rs b/tests/expectations/tests/issue-944-derive-copy-and-blocklisting.rs index af00cb2d..d9c365d8 100644 --- a/tests/expectations/tests/issue-944-derive-copy-and-blocklisting.rs +++ b/tests/expectations/tests/issue-944-derive-copy-and-blocklisting.rs @@ -14,6 +14,9 @@ pub struct ShouldNotBeCopy { } #[test] fn bindgen_test_layout_ShouldNotBeCopy() { + const UNINIT: ::std::mem::MaybeUninit<ShouldNotBeCopy> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ShouldNotBeCopy>(), 1usize, @@ -24,24 +27,16 @@ fn bindgen_test_layout_ShouldNotBeCopy() { 1usize, concat!("Alignment of ", stringify!(ShouldNotBeCopy)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ShouldNotBeCopy>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ShouldNotBeCopy), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ShouldNotBeCopy), + "::", + stringify!(a) + ) + ); } impl Default for ShouldNotBeCopy { fn default() -> Self { diff --git a/tests/expectations/tests/jsval_layout_opaque.rs b/tests/expectations/tests/jsval_layout_opaque.rs index 383410bd..2873f6a2 100644 --- a/tests/expectations/tests/jsval_layout_opaque.rs +++ b/tests/expectations/tests/jsval_layout_opaque.rs @@ -277,6 +277,10 @@ pub union jsval_layout__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_jsval_layout__bindgen_ty_2__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + jsval_layout__bindgen_ty_2__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout__bindgen_ty_2__bindgen_ty_1>(), 4usize, @@ -293,63 +297,36 @@ fn bindgen_test_layout_jsval_layout__bindgen_ty_2__bindgen_ty_1() { stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1) ) ); - fn test_field_i32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(i32_) - ) - ); - } - test_field_i32(); - fn test_field_u32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(u32_) - ) - ); - } - test_field_u32(); - fn test_field_why() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).why) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(why) - ) - ); - } - test_field_why(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(i32_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(u32_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).why) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(why) + ) + ); } impl Default for jsval_layout__bindgen_ty_2__bindgen_ty_1 { fn default() -> Self { @@ -362,6 +339,9 @@ impl Default for jsval_layout__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_jsval_layout__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<jsval_layout__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout__bindgen_ty_2>(), 4usize, @@ -372,25 +352,16 @@ fn bindgen_test_layout_jsval_layout__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(jsval_layout__bindgen_ty_2)) ); - fn test_field_payload() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).payload) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2), - "::", - stringify!(payload) - ) - ); - } - test_field_payload(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).payload) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2), + "::", + stringify!(payload) + ) + ); } impl Default for jsval_layout__bindgen_ty_2 { fn default() -> Self { @@ -403,6 +374,9 @@ impl Default for jsval_layout__bindgen_ty_2 { } #[test] fn bindgen_test_layout_jsval_layout() { + const UNINIT: ::std::mem::MaybeUninit<jsval_layout> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout>(), 8usize, @@ -413,125 +387,82 @@ fn bindgen_test_layout_jsval_layout() { 8usize, concat!("Alignment of ", stringify!(jsval_layout)) ); - fn test_field_asBits() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asBits) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asBits) - ) - ); - } - test_field_asBits(); - fn test_field_debugView() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).debugView) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(debugView) - ) - ); - } - test_field_debugView(); - fn test_field_s() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(s) - ) - ); - } - test_field_s(); - fn test_field_asDouble() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asDouble) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asDouble) - ) - ); - } - test_field_asDouble(); - fn test_field_asPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asPtr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asPtr) - ) - ); - } - test_field_asPtr(); - fn test_field_asWord() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asWord) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asWord) - ) - ); - } - test_field_asWord(); - fn test_field_asUIntPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asUIntPtr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asUIntPtr) - ) - ); - } - test_field_asUIntPtr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asBits) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asBits) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).debugView) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(debugView) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(s) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).asDouble) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asDouble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asPtr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asPtr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asWord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asWord) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).asUIntPtr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asUIntPtr) + ) + ); } impl Default for jsval_layout { fn default() -> Self { @@ -549,6 +480,9 @@ pub struct Value { } #[test] fn bindgen_test_layout_Value() { + const UNINIT: ::std::mem::MaybeUninit<Value> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Value>(), 8usize, @@ -559,23 +493,16 @@ fn bindgen_test_layout_Value() { 8usize, concat!("Alignment of ", stringify!(Value)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Value>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Value), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Value), + "::", + stringify!(data) + ) + ); } impl Default for Value { fn default() -> Self { diff --git a/tests/expectations/tests/jsval_layout_opaque_1_0.rs b/tests/expectations/tests/jsval_layout_opaque_1_0.rs index bdb41104..33594c0e 100644 --- a/tests/expectations/tests/jsval_layout_opaque_1_0.rs +++ b/tests/expectations/tests/jsval_layout_opaque_1_0.rs @@ -327,6 +327,10 @@ pub struct jsval_layout__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_jsval_layout__bindgen_ty_2__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + jsval_layout__bindgen_ty_2__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout__bindgen_ty_2__bindgen_ty_1>(), 4usize, @@ -343,63 +347,36 @@ fn bindgen_test_layout_jsval_layout__bindgen_ty_2__bindgen_ty_1() { stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1) ) ); - fn test_field_i32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(i32_) - ) - ); - } - test_field_i32(); - fn test_field_u32() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(u32_) - ) - ); - } - test_field_u32(); - fn test_field_why() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).why) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(why) - ) - ); - } - test_field_why(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i32_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(i32_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u32_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(u32_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).why) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2__bindgen_ty_1), + "::", + stringify!(why) + ) + ); } impl Clone for jsval_layout__bindgen_ty_2__bindgen_ty_1 { fn clone(&self) -> Self { @@ -408,6 +385,9 @@ impl Clone for jsval_layout__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_jsval_layout__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<jsval_layout__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout__bindgen_ty_2>(), 4usize, @@ -418,25 +398,16 @@ fn bindgen_test_layout_jsval_layout__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(jsval_layout__bindgen_ty_2)) ); - fn test_field_payload() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - jsval_layout__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).payload) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout__bindgen_ty_2), - "::", - stringify!(payload) - ) - ); - } - test_field_payload(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).payload) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout__bindgen_ty_2), + "::", + stringify!(payload) + ) + ); } impl Clone for jsval_layout__bindgen_ty_2 { fn clone(&self) -> Self { @@ -445,6 +416,9 @@ impl Clone for jsval_layout__bindgen_ty_2 { } #[test] fn bindgen_test_layout_jsval_layout() { + const UNINIT: ::std::mem::MaybeUninit<jsval_layout> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<jsval_layout>(), 8usize, @@ -455,125 +429,82 @@ fn bindgen_test_layout_jsval_layout() { 8usize, concat!("Alignment of ", stringify!(jsval_layout)) ); - fn test_field_asBits() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asBits) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asBits) - ) - ); - } - test_field_asBits(); - fn test_field_debugView() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).debugView) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(debugView) - ) - ); - } - test_field_debugView(); - fn test_field_s() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(s) - ) - ); - } - test_field_s(); - fn test_field_asDouble() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asDouble) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asDouble) - ) - ); - } - test_field_asDouble(); - fn test_field_asPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asPtr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asPtr) - ) - ); - } - test_field_asPtr(); - fn test_field_asWord() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asWord) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asWord) - ) - ); - } - test_field_asWord(); - fn test_field_asUIntPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<jsval_layout>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).asUIntPtr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(jsval_layout), - "::", - stringify!(asUIntPtr) - ) - ); - } - test_field_asUIntPtr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asBits) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asBits) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).debugView) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(debugView) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(s) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).asDouble) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asDouble) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asPtr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asPtr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).asWord) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asWord) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).asUIntPtr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(jsval_layout), + "::", + stringify!(asUIntPtr) + ) + ); } impl Clone for jsval_layout { fn clone(&self) -> Self { @@ -587,6 +518,9 @@ pub struct Value { } #[test] fn bindgen_test_layout_Value() { + const UNINIT: ::std::mem::MaybeUninit<Value> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Value>(), 8usize, @@ -597,23 +531,16 @@ fn bindgen_test_layout_Value() { 8usize, concat!("Alignment of ", stringify!(Value)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Value>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Value), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Value), + "::", + stringify!(data) + ) + ); } impl Clone for Value { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/keywords.rs b/tests/expectations/tests/keywords.rs index 055b0f00..a1e7f877 100644 --- a/tests/expectations/tests/keywords.rs +++ b/tests/expectations/tests/keywords.rs @@ -70,6 +70,14 @@ extern "C" { pub static mut as_: ::std::os::raw::c_int; } extern "C" { + #[link_name = "\u{1}async"] + pub static mut async_: ::std::os::raw::c_int; +} +extern "C" { + #[link_name = "\u{1}await"] + pub static mut await_: ::std::os::raw::c_int; +} +extern "C" { #[link_name = "\u{1}box"] pub static mut box_: ::std::os::raw::c_int; } diff --git a/tests/expectations/tests/layout_align.rs b/tests/expectations/tests/layout_align.rs index 44df4c1c..466e7686 100644 --- a/tests/expectations/tests/layout_align.rs +++ b/tests/expectations/tests/layout_align.rs @@ -169,6 +169,9 @@ pub struct rte_eth_link { } #[test] fn bindgen_test_layout_rte_eth_link() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_link> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_link>(), 8usize, @@ -179,23 +182,18 @@ fn bindgen_test_layout_rte_eth_link() { 8usize, concat!("Alignment of ", stringify!(rte_eth_link)) ); - fn test_field_link_speed() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_link>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).link_speed) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_link), - "::", - stringify!(link_speed) - ) - ); - } - test_field_link_speed(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).link_speed) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_link), + "::", + stringify!(link_speed) + ) + ); } impl rte_eth_link { #[inline] diff --git a/tests/expectations/tests/layout_arp.rs b/tests/expectations/tests/layout_arp.rs index fc3aa5d5..6852c236 100644 --- a/tests/expectations/tests/layout_arp.rs +++ b/tests/expectations/tests/layout_arp.rs @@ -30,6 +30,9 @@ pub struct ether_addr { } #[test] fn bindgen_test_layout_ether_addr() { + const UNINIT: ::std::mem::MaybeUninit<ether_addr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ether_addr>(), 6usize, @@ -40,23 +43,18 @@ fn bindgen_test_layout_ether_addr() { 1usize, concat!("Alignment of ", stringify!(ether_addr)) ); - fn test_field_addr_bytes() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ether_addr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).addr_bytes) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ether_addr), - "::", - stringify!(addr_bytes) - ) - ); - } - test_field_addr_bytes(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).addr_bytes) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ether_addr), + "::", + stringify!(addr_bytes) + ) + ); } /// ARP header IPv4 payload. #[repr(C, packed)] @@ -73,6 +71,9 @@ pub struct arp_ipv4 { } #[test] fn bindgen_test_layout_arp_ipv4() { + const UNINIT: ::std::mem::MaybeUninit<arp_ipv4> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<arp_ipv4>(), 20usize, @@ -83,74 +84,46 @@ fn bindgen_test_layout_arp_ipv4() { 1usize, concat!("Alignment of ", stringify!(arp_ipv4)) ); - fn test_field_arp_sha() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_ipv4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_sha) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(arp_ipv4), - "::", - stringify!(arp_sha) - ) - ); - } - test_field_arp_sha(); - fn test_field_arp_sip() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_ipv4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_sip) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(arp_ipv4), - "::", - stringify!(arp_sip) - ) - ); - } - test_field_arp_sip(); - fn test_field_arp_tha() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_ipv4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_tha) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(arp_ipv4), - "::", - stringify!(arp_tha) - ) - ); - } - test_field_arp_tha(); - fn test_field_arp_tip() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_ipv4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_tip) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(arp_ipv4), - "::", - stringify!(arp_tip) - ) - ); - } - test_field_arp_tip(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_sha) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(arp_ipv4), + "::", + stringify!(arp_sha) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_sip) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(arp_ipv4), + "::", + stringify!(arp_sip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_tha) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(arp_ipv4), + "::", + stringify!(arp_tha) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_tip) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(arp_ipv4), + "::", + stringify!(arp_tip) + ) + ); } /// ARP header. #[repr(C, packed)] @@ -165,6 +138,9 @@ pub struct arp_hdr { } #[test] fn bindgen_test_layout_arp_hdr() { + const UNINIT: ::std::mem::MaybeUninit<arp_hdr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<arp_hdr>(), 28usize, @@ -175,106 +151,66 @@ fn bindgen_test_layout_arp_hdr() { 1usize, concat!("Alignment of ", stringify!(arp_hdr)) ); - fn test_field_arp_hrd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_hrd) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_hrd) - ) - ); - } - test_field_arp_hrd(); - fn test_field_arp_pro() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_pro) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_pro) - ) - ); - } - test_field_arp_pro(); - fn test_field_arp_hln() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_hln) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_hln) - ) - ); - } - test_field_arp_hln(); - fn test_field_arp_pln() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_pln) as usize - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_pln) - ) - ); - } - test_field_arp_pln(); - fn test_field_arp_op() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_op) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_op) - ) - ); - } - test_field_arp_op(); - fn test_field_arp_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<arp_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arp_data) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(arp_hdr), - "::", - stringify!(arp_data) - ) - ); - } - test_field_arp_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_hrd) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_hrd) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_pro) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_pro) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_hln) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_hln) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_pln) as usize - ptr as usize }, + 5usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_pln) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arp_op) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_op) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).arp_data) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(arp_hdr), + "::", + stringify!(arp_data) + ) + ); } diff --git a/tests/expectations/tests/layout_array.rs b/tests/expectations/tests/layout_array.rs index c8ee4216..f3bbf51e 100644 --- a/tests/expectations/tests/layout_array.rs +++ b/tests/expectations/tests/layout_array.rs @@ -69,6 +69,9 @@ pub struct rte_mempool_ops { } #[test] fn bindgen_test_layout_rte_mempool_ops() { + const UNINIT: ::std::mem::MaybeUninit<rte_mempool_ops> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mempool_ops>(), 128usize, @@ -79,114 +82,68 @@ fn bindgen_test_layout_rte_mempool_ops() { 64usize, concat!("Alignment of ", stringify!(rte_mempool_ops)) ); - fn test_field_name() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(name) - ) - ); - } - test_field_name(); - fn test_field_alloc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).alloc) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(alloc) - ) - ); - } - test_field_alloc(); - fn test_field_free() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).free) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(free) - ) - ); - } - test_field_free(); - fn test_field_enqueue() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enqueue) as usize - ptr as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(enqueue) - ) - ); - } - test_field_enqueue(); - fn test_field_dequeue() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dequeue) as usize - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(dequeue) - ) - ); - } - test_field_dequeue(); - fn test_field_get_count() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).get_count) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops), - "::", - stringify!(get_count) - ) - ); - } - test_field_get_count(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(name) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).alloc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(alloc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).free) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(free) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).enqueue) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(enqueue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dequeue) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(dequeue) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).get_count) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops), + "::", + stringify!(get_count) + ) + ); } impl Default for rte_mempool_ops { fn default() -> Self { @@ -216,6 +173,9 @@ pub struct rte_spinlock_t { } #[test] fn bindgen_test_layout_rte_spinlock_t() { + const UNINIT: ::std::mem::MaybeUninit<rte_spinlock_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_spinlock_t>(), 4usize, @@ -226,24 +186,16 @@ fn bindgen_test_layout_rte_spinlock_t() { 4usize, concat!("Alignment of ", stringify!(rte_spinlock_t)) ); - fn test_field_locked() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_spinlock_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).locked) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_spinlock_t), - "::", - stringify!(locked) - ) - ); - } - test_field_locked(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locked) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_spinlock_t), + "::", + stringify!(locked) + ) + ); } /// Structure storing the table of registered ops structs, each of which contain /// the function pointers for the mempool ops functions. @@ -266,6 +218,9 @@ pub struct rte_mempool_ops_table { } #[test] fn bindgen_test_layout_rte_mempool_ops_table() { + const UNINIT: ::std::mem::MaybeUninit<rte_mempool_ops_table> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mempool_ops_table>(), 2112usize, @@ -276,60 +231,36 @@ fn bindgen_test_layout_rte_mempool_ops_table() { 64usize, concat!("Alignment of ", stringify!(rte_mempool_ops_table)) ); - fn test_field_sl() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops_table>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sl) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops_table), - "::", - stringify!(sl) - ) - ); - } - test_field_sl(); - fn test_field_num_ops() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops_table>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).num_ops) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops_table), - "::", - stringify!(num_ops) - ) - ); - } - test_field_num_ops(); - fn test_field_ops() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mempool_ops_table>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ops) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_mempool_ops_table), - "::", - stringify!(ops) - ) - ); - } - test_field_ops(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sl) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops_table), + "::", + stringify!(sl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_ops) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops_table), + "::", + stringify!(num_ops) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ops) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_mempool_ops_table), + "::", + stringify!(ops) + ) + ); } impl Default for rte_mempool_ops_table { fn default() -> Self { @@ -357,6 +288,9 @@ pub struct malloc_heap__bindgen_ty_1 { } #[test] fn bindgen_test_layout_malloc_heap__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<malloc_heap__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<malloc_heap__bindgen_ty_1>(), 8usize, @@ -367,23 +301,18 @@ fn bindgen_test_layout_malloc_heap__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(malloc_heap__bindgen_ty_1)) ); - fn test_field_lh_first() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < malloc_heap__bindgen_ty_1 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lh_first) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(malloc_heap__bindgen_ty_1), - "::", - stringify!(lh_first) - ) - ); - } - test_field_lh_first(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).lh_first) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(malloc_heap__bindgen_ty_1), + "::", + stringify!(lh_first) + ) + ); } impl Default for malloc_heap__bindgen_ty_1 { fn default() -> Self { @@ -396,6 +325,9 @@ impl Default for malloc_heap__bindgen_ty_1 { } #[test] fn bindgen_test_layout_malloc_heap() { + const UNINIT: ::std::mem::MaybeUninit<malloc_heap> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<malloc_heap>(), 128usize, @@ -406,74 +338,52 @@ fn bindgen_test_layout_malloc_heap() { 64usize, concat!("Alignment of ", stringify!(malloc_heap)) ); - fn test_field_lock() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<malloc_heap>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lock) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(malloc_heap), - "::", - stringify!(lock) - ) - ); - } - test_field_lock(); - fn test_field_free_head() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<malloc_heap>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).free_head) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(malloc_heap), - "::", - stringify!(free_head) - ) - ); - } - test_field_free_head(); - fn test_field_alloc_count() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<malloc_heap>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).alloc_count) as usize - ptr as usize - }, - 112usize, - concat!( - "Offset of field: ", - stringify!(malloc_heap), - "::", - stringify!(alloc_count) - ) - ); - } - test_field_alloc_count(); - fn test_field_total_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<malloc_heap>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize - }, - 120usize, - concat!( - "Offset of field: ", - stringify!(malloc_heap), - "::", - stringify!(total_size) - ) - ); - } - test_field_total_size(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lock) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(malloc_heap), + "::", + stringify!(lock) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).free_head) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(malloc_heap), + "::", + stringify!(free_head) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).alloc_count) as usize - ptr as usize + }, + 112usize, + concat!( + "Offset of field: ", + stringify!(malloc_heap), + "::", + stringify!(alloc_count) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize + }, + 120usize, + concat!( + "Offset of field: ", + stringify!(malloc_heap), + "::", + stringify!(total_size) + ) + ); } impl Default for malloc_heap { fn default() -> Self { diff --git a/tests/expectations/tests/layout_array_too_long.rs b/tests/expectations/tests/layout_array_too_long.rs index 586d35ec..56b3c021 100644 --- a/tests/expectations/tests/layout_array_too_long.rs +++ b/tests/expectations/tests/layout_array_too_long.rs @@ -35,6 +35,9 @@ pub struct ip_frag { } #[test] fn bindgen_test_layout_ip_frag() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag>(), 16usize, @@ -45,57 +48,36 @@ fn bindgen_test_layout_ip_frag() { 8usize, concat!("Alignment of ", stringify!(ip_frag)) ); - fn test_field_ofs() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ofs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(ofs) - ) - ); - } - test_field_ofs(); - fn test_field_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(len) - ) - ); - } - test_field_len(); - fn test_field_mb() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mb) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(mb) - ) - ); - } - test_field_mb(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ofs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(ofs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mb) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(mb) + ) + ); } impl Default for ip_frag { fn default() -> Self { @@ -119,6 +101,9 @@ pub struct ip_frag_key { } #[test] fn bindgen_test_layout_ip_frag_key() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_key> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_key>(), 40usize, @@ -129,57 +114,36 @@ fn bindgen_test_layout_ip_frag_key() { 8usize, concat!("Alignment of ", stringify!(ip_frag_key)) ); - fn test_field_src_dst() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_dst) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(src_dst) - ) - ); - } - test_field_src_dst(); - fn test_field_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(id) - ) - ); - } - test_field_id(); - fn test_field_key_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).key_len) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(key_len) - ) - ); - } - test_field_key_len(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_dst) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(src_dst) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key_len) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(key_len) + ) + ); } /// @internal Fragmented packet to reassemble. /// First two entries in the frags[] array are for the last and first fragments. @@ -210,6 +174,9 @@ pub struct ip_frag_pkt__bindgen_ty_1 { } #[test] fn bindgen_test_layout_ip_frag_pkt__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_pkt__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_pkt__bindgen_ty_1>(), 16usize, @@ -220,40 +187,30 @@ fn bindgen_test_layout_ip_frag_pkt__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(ip_frag_pkt__bindgen_ty_1)) ); - fn test_field_tqe_next() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < ip_frag_pkt__bindgen_ty_1 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqe_next) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt__bindgen_ty_1), - "::", - stringify!(tqe_next) - ) - ); - } - test_field_tqe_next(); - fn test_field_tqe_prev() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < ip_frag_pkt__bindgen_ty_1 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqe_prev) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt__bindgen_ty_1), - "::", - stringify!(tqe_prev) - ) - ); - } - test_field_tqe_prev(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqe_next) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt__bindgen_ty_1), + "::", + stringify!(tqe_next) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqe_prev) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt__bindgen_ty_1), + "::", + stringify!(tqe_prev) + ) + ); } impl Default for ip_frag_pkt__bindgen_ty_1 { fn default() -> Self { @@ -266,6 +223,9 @@ impl Default for ip_frag_pkt__bindgen_ty_1 { } #[test] fn bindgen_test_layout_ip_frag_pkt() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_pkt> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_pkt>(), 192usize, @@ -276,125 +236,82 @@ fn bindgen_test_layout_ip_frag_pkt() { 64usize, concat!("Alignment of ", stringify!(ip_frag_pkt)) ); - fn test_field_lru() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(lru) - ) - ); - } - test_field_lru(); - fn test_field_key() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(key) - ) - ); - } - test_field_key(); - fn test_field_start() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(start) - ) - ); - } - test_field_start(); - fn test_field_total_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(total_size) - ) - ); - } - test_field_total_size(); - fn test_field_frag_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).frag_size) as usize - ptr as usize - }, - 68usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(frag_size) - ) - ); - } - test_field_frag_size(); - fn test_field_last_idx() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).last_idx) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(last_idx) - ) - ); - } - test_field_last_idx(); - fn test_field_frags() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).frags) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(frags) - ) - ); - } - test_field_frags(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(lru) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(start) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(total_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).frag_size) as usize - ptr as usize + }, + 68usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(frag_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).last_idx) as usize - ptr as usize + }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(last_idx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).frags) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(frags) + ) + ); } impl Default for ip_frag_pkt { fn default() -> Self { diff --git a/tests/expectations/tests/layout_cmdline_token.rs b/tests/expectations/tests/layout_cmdline_token.rs index a4360cd3..899703bd 100644 --- a/tests/expectations/tests/layout_cmdline_token.rs +++ b/tests/expectations/tests/layout_cmdline_token.rs @@ -15,6 +15,9 @@ pub struct cmdline_token_hdr { } #[test] fn bindgen_test_layout_cmdline_token_hdr() { + const UNINIT: ::std::mem::MaybeUninit<cmdline_token_hdr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<cmdline_token_hdr>(), 16usize, @@ -25,42 +28,26 @@ fn bindgen_test_layout_cmdline_token_hdr() { 8usize, concat!("Alignment of ", stringify!(cmdline_token_hdr)) ); - fn test_field_ops() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ops) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_hdr), - "::", - stringify!(ops) - ) - ); - } - test_field_ops(); - fn test_field_offset() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_hdr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_hdr), - "::", - stringify!(offset) - ) - ); - } - test_field_offset(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ops) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_hdr), + "::", + stringify!(ops) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_hdr), + "::", + stringify!(offset) + ) + ); } impl Default for cmdline_token_hdr { fn default() -> Self { @@ -129,6 +116,9 @@ pub struct cmdline_token_ops { } #[test] fn bindgen_test_layout_cmdline_token_ops() { + const UNINIT: ::std::mem::MaybeUninit<cmdline_token_ops> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<cmdline_token_ops>(), 32usize, @@ -139,80 +129,53 @@ fn bindgen_test_layout_cmdline_token_ops() { 8usize, concat!("Alignment of ", stringify!(cmdline_token_ops)) ); - fn test_field_parse() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).parse) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_ops), - "::", - stringify!(parse) - ) - ); - } - test_field_parse(); - fn test_field_complete_get_nb() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).complete_get_nb) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_ops), - "::", - stringify!(complete_get_nb) - ) - ); - } - test_field_complete_get_nb(); - fn test_field_complete_get_elt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).complete_get_elt) as usize - - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_ops), - "::", - stringify!(complete_get_elt) - ) - ); - } - test_field_complete_get_elt(); - fn test_field_get_help() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_ops>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).get_help) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_ops), - "::", - stringify!(get_help) - ) - ); - } - test_field_get_help(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).parse) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_ops), + "::", + stringify!(parse) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).complete_get_nb) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_ops), + "::", + stringify!(complete_get_nb) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).complete_get_elt) as usize - + ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_ops), + "::", + stringify!(complete_get_elt) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).get_help) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_ops), + "::", + stringify!(get_help) + ) + ); } #[repr(u32)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -233,6 +196,9 @@ pub struct cmdline_token_num_data { } #[test] fn bindgen_test_layout_cmdline_token_num_data() { + const UNINIT: ::std::mem::MaybeUninit<cmdline_token_num_data> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<cmdline_token_num_data>(), 4usize, @@ -243,24 +209,16 @@ fn bindgen_test_layout_cmdline_token_num_data() { 4usize, concat!("Alignment of ", stringify!(cmdline_token_num_data)) ); - fn test_field_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_num_data>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_num_data), - "::", - stringify!(type_) - ) - ); - } - test_field_type(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_num_data), + "::", + stringify!(type_) + ) + ); } impl Default for cmdline_token_num_data { fn default() -> Self { @@ -279,6 +237,9 @@ pub struct cmdline_token_num { } #[test] fn bindgen_test_layout_cmdline_token_num() { + const UNINIT: ::std::mem::MaybeUninit<cmdline_token_num> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<cmdline_token_num>(), 24usize, @@ -289,42 +250,28 @@ fn bindgen_test_layout_cmdline_token_num() { 8usize, concat!("Alignment of ", stringify!(cmdline_token_num)) ); - fn test_field_hdr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_num>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hdr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_num), - "::", - stringify!(hdr) - ) - ); - } - test_field_hdr(); - fn test_field_num_data() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<cmdline_token_num>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).num_data) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(cmdline_token_num), - "::", - stringify!(num_data) - ) - ); - } - test_field_num_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hdr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_num), + "::", + stringify!(hdr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).num_data) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(cmdline_token_num), + "::", + stringify!(num_data) + ) + ); } impl Default for cmdline_token_num { fn default() -> Self { diff --git a/tests/expectations/tests/layout_eth_conf.rs b/tests/expectations/tests/layout_eth_conf.rs index 3296a0f8..62b99e90 100644 --- a/tests/expectations/tests/layout_eth_conf.rs +++ b/tests/expectations/tests/layout_eth_conf.rs @@ -160,6 +160,9 @@ pub struct rte_eth_rxmode { } #[test] fn bindgen_test_layout_rte_eth_rxmode() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_rxmode> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_rxmode>(), 12usize, @@ -170,62 +173,40 @@ fn bindgen_test_layout_rte_eth_rxmode() { 4usize, concat!("Alignment of ", stringify!(rte_eth_rxmode)) ); - fn test_field_mq_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(mq_mode) - ) - ); - } - test_field_mq_mode(); - fn test_field_max_rx_pkt_len() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).max_rx_pkt_len) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(max_rx_pkt_len) - ) - ); - } - test_field_max_rx_pkt_len(); - fn test_field_split_hdr_size() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).split_hdr_size) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(split_hdr_size) - ) - ); - } - test_field_split_hdr_size(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(mq_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).max_rx_pkt_len) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(max_rx_pkt_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).split_hdr_size) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(split_hdr_size) + ) + ); } impl Default for rte_eth_rxmode { fn default() -> Self { @@ -442,6 +423,9 @@ pub struct rte_eth_txmode { } #[test] fn bindgen_test_layout_rte_eth_txmode() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_txmode> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_txmode>(), 8usize, @@ -452,42 +436,26 @@ fn bindgen_test_layout_rte_eth_txmode() { 4usize, concat!("Alignment of ", stringify!(rte_eth_txmode)) ); - fn test_field_mq_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_txmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_txmode), - "::", - stringify!(mq_mode) - ) - ); - } - test_field_mq_mode(); - fn test_field_pvid() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_txmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pvid) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_txmode), - "::", - stringify!(pvid) - ) - ); - } - test_field_pvid(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_txmode), + "::", + stringify!(mq_mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pvid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_txmode), + "::", + stringify!(pvid) + ) + ); } impl Default for rte_eth_txmode { fn default() -> Self { @@ -591,6 +559,9 @@ pub struct rte_eth_rss_conf { } #[test] fn bindgen_test_layout_rte_eth_rss_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_rss_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_rss_conf>(), 24usize, @@ -601,60 +572,38 @@ fn bindgen_test_layout_rte_eth_rss_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_rss_conf)) ); - fn test_field_rss_key() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_key) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_key) - ) - ); - } - test_field_rss_key(); - fn test_field_rss_key_len() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_key_len) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_key_len) - ) - ); - } - test_field_rss_key_len(); - fn test_field_rss_hf() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_hf) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_hf) - ) - ); - } - test_field_rss_hf(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss_key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_key) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rss_key_len) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_key_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss_hf) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_hf) + ) + ); } impl Default for rte_eth_rss_conf { fn default() -> Self { @@ -723,6 +672,9 @@ pub struct rte_eth_vmdq_dcb_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_conf__bindgen_ty_1>(), 16usize, @@ -736,47 +688,32 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_conf__bindgen_ty_1() { stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1) ) ); - fn test_field_vlan_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_dcb_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), - "::", - stringify!(vlan_id) - ) - ); - } - test_field_vlan_id(); - fn test_field_pools() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_dcb_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), - "::", - stringify!(pools) - ) - ); - } - test_field_pools(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), + "::", + stringify!(vlan_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), + "::", + stringify!(pools) + ) + ); } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_conf>(), 1040usize, @@ -787,118 +724,77 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_dcb_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_enable_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(enable_default_pool) - ) - ); - } - test_field_enable_default_pool(); - fn test_field_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).default_pool) as usize - - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(default_pool) - ) - ); - } - test_field_default_pool(); - fn test_field_nb_pool_maps() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(nb_pool_maps) - ) - ); - } - test_field_nb_pool_maps(); - fn test_field_pool_map() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(pool_map) - ) - ); - } - test_field_pool_map(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 1032usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(enable_default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).default_pool) as usize - ptr as usize + }, + 5usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(nb_pool_maps) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(pool_map) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Default for rte_eth_vmdq_dcb_conf { fn default() -> Self { @@ -919,6 +815,9 @@ pub struct rte_eth_dcb_rx_conf { } #[test] fn bindgen_test_layout_rte_eth_dcb_rx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_dcb_rx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_dcb_rx_conf>(), 12usize, @@ -929,42 +828,26 @@ fn bindgen_test_layout_rte_eth_dcb_rx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_dcb_rx_conf)) ); - fn test_field_nb_tcs() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_rx_conf), - "::", - stringify!(nb_tcs) - ) - ); - } - test_field_nb_tcs(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_rx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_rx_conf), + "::", + stringify!(nb_tcs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_rx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Default for rte_eth_dcb_rx_conf { fn default() -> Self { @@ -985,6 +868,9 @@ pub struct rte_eth_vmdq_dcb_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_tx_conf>(), 12usize, @@ -995,45 +881,28 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_dcb_tx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_tx_conf>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_tx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_tx_conf>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_tx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_tx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_tx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Default for rte_eth_vmdq_dcb_tx_conf { fn default() -> Self { @@ -1054,6 +923,9 @@ pub struct rte_eth_dcb_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_dcb_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_dcb_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_dcb_tx_conf>(), 12usize, @@ -1064,42 +936,26 @@ fn bindgen_test_layout_rte_eth_dcb_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_dcb_tx_conf)) ); - fn test_field_nb_tcs() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_tx_conf), - "::", - stringify!(nb_tcs) - ) - ); - } - test_field_nb_tcs(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_tx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_tx_conf), + "::", + stringify!(nb_tcs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_tx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Default for rte_eth_dcb_tx_conf { fn default() -> Self { @@ -1118,6 +974,9 @@ pub struct rte_eth_vmdq_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_vmdq_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_tx_conf>(), 4usize, @@ -1128,25 +987,18 @@ fn bindgen_test_layout_rte_eth_vmdq_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_tx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_tx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_tx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); } impl Default for rte_eth_vmdq_tx_conf { fn default() -> Self { @@ -1185,6 +1037,9 @@ pub struct rte_eth_vmdq_rx_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_rx_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_rx_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_rx_conf__bindgen_ty_1>(), 16usize, @@ -1198,47 +1053,32 @@ fn bindgen_test_layout_rte_eth_vmdq_rx_conf__bindgen_ty_1() { stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1) ) ); - fn test_field_vlan_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_rx_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), - "::", - stringify!(vlan_id) - ) - ); - } - test_field_vlan_id(); - fn test_field_pools() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_rx_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), - "::", - stringify!(pools) - ) - ); - } - test_field_pools(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), + "::", + stringify!(vlan_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), + "::", + stringify!(pools) + ) + ); } #[test] fn bindgen_test_layout_rte_eth_vmdq_rx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_rx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_rx_conf>(), 1040usize, @@ -1249,137 +1089,90 @@ fn bindgen_test_layout_rte_eth_vmdq_rx_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_rx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_enable_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(enable_default_pool) - ) - ); - } - test_field_enable_default_pool(); - fn test_field_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).default_pool) as usize - - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(default_pool) - ) - ); - } - test_field_default_pool(); - fn test_field_enable_loop_back() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_loop_back) as usize - - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(enable_loop_back) - ) - ); - } - test_field_enable_loop_back(); - fn test_field_nb_pool_maps() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(nb_pool_maps) - ) - ); - } - test_field_nb_pool_maps(); - fn test_field_rx_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_mode) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(rx_mode) - ) - ); - } - test_field_rx_mode(); - fn test_field_pool_map() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(pool_map) - ) - ); - } - test_field_pool_map(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(enable_default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).default_pool) as usize - ptr as usize + }, + 5usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_loop_back) as usize - + ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(enable_loop_back) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - ptr as usize + }, + 7usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(nb_pool_maps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rx_mode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(rx_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(pool_map) + ) + ); } impl Default for rte_eth_vmdq_rx_conf { fn default() -> Self { @@ -1445,6 +1238,9 @@ pub struct rte_eth_ipv4_flow { } #[test] fn bindgen_test_layout_rte_eth_ipv4_flow() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_ipv4_flow> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_ipv4_flow>(), 12usize, @@ -1455,96 +1251,56 @@ fn bindgen_test_layout_rte_eth_ipv4_flow() { 4usize, concat!("Alignment of ", stringify!(rte_eth_ipv4_flow)) ); - fn test_field_src_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(src_ip) - ) - ); - } - test_field_src_ip(); - fn test_field_dst_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(dst_ip) - ) - ); - } - test_field_dst_ip(); - fn test_field_tos() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tos) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(tos) - ) - ); - } - test_field_tos(); - fn test_field_ttl() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ttl) as usize - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(ttl) - ) - ); - } - test_field_ttl(); - fn test_field_proto() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(proto) - ) - ); - } - test_field_proto(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(src_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(dst_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tos) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(tos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ttl) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(ttl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(proto) + ) + ); } /// A structure used to define the input for IPV6 flow #[repr(C)] @@ -1563,6 +1319,9 @@ pub struct rte_eth_ipv6_flow { } #[test] fn bindgen_test_layout_rte_eth_ipv6_flow() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_ipv6_flow> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_ipv6_flow>(), 36usize, @@ -1573,96 +1332,58 @@ fn bindgen_test_layout_rte_eth_ipv6_flow() { 4usize, concat!("Alignment of ", stringify!(rte_eth_ipv6_flow)) ); - fn test_field_src_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(src_ip) - ) - ); - } - test_field_src_ip(); - fn test_field_dst_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(dst_ip) - ) - ); - } - test_field_dst_ip(); - fn test_field_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tc) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(tc) - ) - ); - } - test_field_tc(); - fn test_field_proto() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize - }, - 33usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(proto) - ) - ); - } - test_field_proto(); - fn test_field_hop_limits() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hop_limits) as usize - ptr as usize - }, - 34usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(hop_limits) - ) - ); - } - test_field_hop_limits(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(src_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(dst_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(tc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(proto) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).hop_limits) as usize - ptr as usize + }, + 34usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(hop_limits) + ) + ); } /// A structure used to configure FDIR masks that are used by the device /// to match the various fields of RX packet headers. @@ -1690,6 +1411,9 @@ pub struct rte_eth_fdir_masks { } #[test] fn bindgen_test_layout_rte_eth_fdir_masks() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_masks> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_masks>(), 68usize, @@ -1700,156 +1424,104 @@ fn bindgen_test_layout_rte_eth_fdir_masks() { 4usize, concat!("Alignment of ", stringify!(rte_eth_fdir_masks)) ); - fn test_field_vlan_tci_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci_mask) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(vlan_tci_mask) - ) - ); - } - test_field_vlan_tci_mask(); - fn test_field_ipv4_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ipv4_mask) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(ipv4_mask) - ) - ); - } - test_field_ipv4_mask(); - fn test_field_ipv6_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ipv6_mask) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(ipv6_mask) - ) - ); - } - test_field_ipv6_mask(); - fn test_field_src_port_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_port_mask) as usize - - ptr as usize - }, - 52usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(src_port_mask) - ) - ); - } - test_field_src_port_mask(); - fn test_field_dst_port_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_port_mask) as usize - - ptr as usize - }, - 54usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(dst_port_mask) - ) - ); - } - test_field_dst_port_mask(); - fn test_field_mac_addr_byte_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mac_addr_byte_mask) as usize - - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(mac_addr_byte_mask) - ) - ); - } - test_field_mac_addr_byte_mask(); - fn test_field_tunnel_id_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tunnel_id_mask) as usize - - ptr as usize - }, - 60usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(tunnel_id_mask) - ) - ); - } - test_field_tunnel_id_mask(); - fn test_field_tunnel_type_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tunnel_type_mask) as usize - - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(tunnel_type_mask) - ) - ); - } - test_field_tunnel_type_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci_mask) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(vlan_tci_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ipv4_mask) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(ipv4_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ipv6_mask) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(ipv6_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_port_mask) as usize - ptr as usize + }, + 52usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(src_port_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_port_mask) as usize - ptr as usize + }, + 54usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(dst_port_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mac_addr_byte_mask) as usize - + ptr as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(mac_addr_byte_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tunnel_id_mask) as usize - ptr as usize + }, + 60usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(tunnel_id_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tunnel_type_mask) as usize - + ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(tunnel_type_mask) + ) + ); } #[repr(u32)] /// Payload type @@ -1873,6 +1545,9 @@ pub struct rte_eth_flex_payload_cfg { } #[test] fn bindgen_test_layout_rte_eth_flex_payload_cfg() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_flex_payload_cfg> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_flex_payload_cfg>(), 36usize, @@ -1883,44 +1558,28 @@ fn bindgen_test_layout_rte_eth_flex_payload_cfg() { 4usize, concat!("Alignment of ", stringify!(rte_eth_flex_payload_cfg)) ); - fn test_field_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_flex_payload_cfg>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_flex_payload_cfg), - "::", - stringify!(type_) - ) - ); - } - test_field_type(); - fn test_field_src_offset() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_flex_payload_cfg>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_offset) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_flex_payload_cfg), - "::", - stringify!(src_offset) - ) - ); - } - test_field_src_offset(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_flex_payload_cfg), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_offset) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_flex_payload_cfg), + "::", + stringify!(src_offset) + ) + ); } impl Default for rte_eth_flex_payload_cfg { fn default() -> Self { @@ -1941,6 +1600,9 @@ pub struct rte_eth_fdir_flex_mask { } #[test] fn bindgen_test_layout_rte_eth_fdir_flex_mask() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_flex_mask> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_flex_mask>(), 18usize, @@ -1951,42 +1613,28 @@ fn bindgen_test_layout_rte_eth_fdir_flex_mask() { 2usize, concat!("Alignment of ", stringify!(rte_eth_fdir_flex_mask)) ); - fn test_field_flow_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_mask>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flow_type) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_mask), - "::", - stringify!(flow_type) - ) - ); - } - test_field_flow_type(); - fn test_field_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_mask>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_mask), - "::", - stringify!(mask) - ) - ); - } - test_field_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flow_type) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_mask), + "::", + stringify!(flow_type) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_mask), + "::", + stringify!(mask) + ) + ); } /// A structure used to define all flexible payload related setting /// include flex payload and flex mask @@ -2002,6 +1650,9 @@ pub struct rte_eth_fdir_flex_conf { } #[test] fn bindgen_test_layout_rte_eth_fdir_flex_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_flex_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_flex_conf>(), 688usize, @@ -2012,79 +1663,54 @@ fn bindgen_test_layout_rte_eth_fdir_flex_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_fdir_flex_conf)) ); - fn test_field_nb_payloads() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_payloads) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(nb_payloads) - ) - ); - } - test_field_nb_payloads(); - fn test_field_nb_flexmasks() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_flexmasks) as usize - - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(nb_flexmasks) - ) - ); - } - test_field_nb_flexmasks(); - fn test_field_flex_set() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_set) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(flex_set) - ) - ); - } - test_field_flex_set(); - fn test_field_flex_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_mask) as usize - ptr as usize - }, - 292usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(flex_mask) - ) - ); - } - test_field_flex_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_payloads) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(nb_payloads) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_flexmasks) as usize - ptr as usize + }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(nb_flexmasks) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_set) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(flex_set) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_mask) as usize - ptr as usize + }, + 292usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(flex_mask) + ) + ); } impl Default for rte_eth_fdir_flex_conf { fn default() -> Self { @@ -2115,6 +1741,9 @@ pub struct rte_fdir_conf { } #[test] fn bindgen_test_layout_rte_fdir_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_fdir_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_fdir_conf>(), 772usize, @@ -2125,108 +1754,70 @@ fn bindgen_test_layout_rte_fdir_conf() { 4usize, concat!("Alignment of ", stringify!(rte_fdir_conf)) ); - fn test_field_mode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(mode) - ) - ); - } - test_field_mode(); - fn test_field_pballoc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pballoc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(pballoc) - ) - ); - } - test_field_pballoc(); - fn test_field_status() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(status) - ) - ); - } - test_field_status(); - fn test_field_drop_queue() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).drop_queue) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(drop_queue) - ) - ); - } - test_field_drop_queue(); - fn test_field_mask() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(mask) - ) - ); - } - test_field_mask(); - fn test_field_flex_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_conf) as usize - ptr as usize - }, - 84usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(flex_conf) - ) - ); - } - test_field_flex_conf(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pballoc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(pballoc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(status) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).drop_queue) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(drop_queue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_conf) as usize - ptr as usize + }, + 84usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(flex_conf) + ) + ); } impl Default for rte_fdir_conf { fn default() -> Self { @@ -2248,6 +1839,9 @@ pub struct rte_intr_conf { } #[test] fn bindgen_test_layout_rte_intr_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_intr_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_intr_conf>(), 4usize, @@ -2258,40 +1852,26 @@ fn bindgen_test_layout_rte_intr_conf() { 2usize, concat!("Alignment of ", stringify!(rte_intr_conf)) ); - fn test_field_lsc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_intr_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lsc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_intr_conf), - "::", - stringify!(lsc) - ) - ); - } - test_field_lsc(); - fn test_field_rxq() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_intr_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rxq) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_intr_conf), - "::", - stringify!(rxq) - ) - ); - } - test_field_rxq(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lsc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_intr_conf), + "::", + stringify!(lsc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rxq) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_intr_conf), + "::", + stringify!(rxq) + ) + ); } /// A structure used to configure an Ethernet port. /// Depending upon the RX multi-queue mode, extra advanced @@ -2340,6 +1920,9 @@ pub struct rte_eth_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf__bindgen_ty_1>(), 2120usize, @@ -2350,84 +1933,54 @@ fn bindgen_test_layout_rte_eth_conf__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(rte_eth_conf__bindgen_ty_1)) ); - fn test_field_rss_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_conf) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(rss_conf) - ) - ); - } - test_field_rss_conf(); - fn test_field_vmdq_dcb_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_dcb_conf) as usize - - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(vmdq_dcb_conf) - ) - ); - } - test_field_vmdq_dcb_conf(); - fn test_field_dcb_rx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_rx_conf) as usize - ptr as usize - }, - 1064usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(dcb_rx_conf) - ) - ); - } - test_field_dcb_rx_conf(); - fn test_field_vmdq_rx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_rx_conf) as usize - - ptr as usize - }, - 1080usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(vmdq_rx_conf) - ) - ); - } - test_field_vmdq_rx_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rss_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(rss_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_dcb_conf) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(vmdq_dcb_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_rx_conf) as usize - ptr as usize + }, + 1064usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(dcb_rx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_rx_conf) as usize - ptr as usize + }, + 1080usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(vmdq_rx_conf) + ) + ); } impl Default for rte_eth_conf__bindgen_ty_1 { fn default() -> Self { @@ -2447,6 +2000,9 @@ pub union rte_eth_conf__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_eth_conf__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf__bindgen_ty_2>(), 12usize, @@ -2457,65 +2013,43 @@ fn bindgen_test_layout_rte_eth_conf__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(rte_eth_conf__bindgen_ty_2)) ); - fn test_field_vmdq_dcb_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_dcb_tx_conf) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(vmdq_dcb_tx_conf) - ) - ); - } - test_field_vmdq_dcb_tx_conf(); - fn test_field_dcb_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tx_conf) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(dcb_tx_conf) - ) - ); - } - test_field_dcb_tx_conf(); - fn test_field_vmdq_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_tx_conf) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(vmdq_tx_conf) - ) - ); - } - test_field_vmdq_tx_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_dcb_tx_conf) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(vmdq_dcb_tx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_tx_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(dcb_tx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_tx_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(vmdq_tx_conf) + ) + ); } impl Default for rte_eth_conf__bindgen_ty_2 { fn default() -> Self { @@ -2528,6 +2062,9 @@ impl Default for rte_eth_conf__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_eth_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf>(), 2944usize, @@ -2538,160 +2075,111 @@ fn bindgen_test_layout_rte_eth_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_conf)) ); - fn test_field_link_speeds() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).link_speeds) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(link_speeds) - ) - ); - } - test_field_link_speeds(); - fn test_field_rxmode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rxmode) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(rxmode) - ) - ); - } - test_field_rxmode(); - fn test_field_txmode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).txmode) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(txmode) - ) - ); - } - test_field_txmode(); - fn test_field_lpbk_mode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lpbk_mode) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(lpbk_mode) - ) - ); - } - test_field_lpbk_mode(); - fn test_field_rx_adv_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_adv_conf) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(rx_adv_conf) - ) - ); - } - test_field_rx_adv_conf(); - fn test_field_tx_adv_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tx_adv_conf) as usize - ptr as usize - }, - 2152usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(tx_adv_conf) - ) - ); - } - test_field_tx_adv_conf(); - fn test_field_dcb_capability_en() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_capability_en) as usize - - ptr as usize - }, - 2164usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(dcb_capability_en) - ) - ); - } - test_field_dcb_capability_en(); - fn test_field_fdir_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fdir_conf) as usize - ptr as usize - }, - 2168usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(fdir_conf) - ) - ); - } - test_field_fdir_conf(); - fn test_field_intr_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).intr_conf) as usize - ptr as usize - }, - 2940usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(intr_conf) - ) - ); - } - test_field_intr_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).link_speeds) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(link_speeds) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rxmode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(rxmode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).txmode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(txmode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).lpbk_mode) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(lpbk_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rx_adv_conf) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(rx_adv_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tx_adv_conf) as usize - ptr as usize + }, + 2152usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(tx_adv_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_capability_en) as usize - + ptr as usize + }, + 2164usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(dcb_capability_en) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fdir_conf) as usize - ptr as usize + }, + 2168usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(fdir_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).intr_conf) as usize - ptr as usize + }, + 2940usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(intr_conf) + ) + ); } impl Default for rte_eth_conf { fn default() -> Self { diff --git a/tests/expectations/tests/layout_eth_conf_1_0.rs b/tests/expectations/tests/layout_eth_conf_1_0.rs index 0458a3ab..d7fa0a63 100644 --- a/tests/expectations/tests/layout_eth_conf_1_0.rs +++ b/tests/expectations/tests/layout_eth_conf_1_0.rs @@ -203,6 +203,9 @@ pub struct rte_eth_rxmode { } #[test] fn bindgen_test_layout_rte_eth_rxmode() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_rxmode> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_rxmode>(), 12usize, @@ -213,62 +216,40 @@ fn bindgen_test_layout_rte_eth_rxmode() { 4usize, concat!("Alignment of ", stringify!(rte_eth_rxmode)) ); - fn test_field_mq_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(mq_mode) - ) - ); - } - test_field_mq_mode(); - fn test_field_max_rx_pkt_len() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).max_rx_pkt_len) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(max_rx_pkt_len) - ) - ); - } - test_field_max_rx_pkt_len(); - fn test_field_split_hdr_size() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rxmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).split_hdr_size) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rxmode), - "::", - stringify!(split_hdr_size) - ) - ); - } - test_field_split_hdr_size(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(mq_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).max_rx_pkt_len) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(max_rx_pkt_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).split_hdr_size) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rxmode), + "::", + stringify!(split_hdr_size) + ) + ); } impl Clone for rte_eth_rxmode { fn clone(&self) -> Self { @@ -490,6 +471,9 @@ pub struct rte_eth_txmode { } #[test] fn bindgen_test_layout_rte_eth_txmode() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_txmode> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_txmode>(), 8usize, @@ -500,42 +484,26 @@ fn bindgen_test_layout_rte_eth_txmode() { 4usize, concat!("Alignment of ", stringify!(rte_eth_txmode)) ); - fn test_field_mq_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_txmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_txmode), - "::", - stringify!(mq_mode) - ) - ); - } - test_field_mq_mode(); - fn test_field_pvid() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_txmode>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pvid) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_txmode), - "::", - stringify!(pvid) - ) - ); - } - test_field_pvid(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mq_mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_txmode), + "::", + stringify!(mq_mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pvid) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_txmode), + "::", + stringify!(pvid) + ) + ); } impl Clone for rte_eth_txmode { fn clone(&self) -> Self { @@ -644,6 +612,9 @@ pub struct rte_eth_rss_conf { } #[test] fn bindgen_test_layout_rte_eth_rss_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_rss_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_rss_conf>(), 24usize, @@ -654,60 +625,38 @@ fn bindgen_test_layout_rte_eth_rss_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_rss_conf)) ); - fn test_field_rss_key() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_key) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_key) - ) - ); - } - test_field_rss_key(); - fn test_field_rss_key_len() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_key_len) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_key_len) - ) - ); - } - test_field_rss_key_len(); - fn test_field_rss_hf() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_rss_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_hf) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_rss_conf), - "::", - stringify!(rss_hf) - ) - ); - } - test_field_rss_hf(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss_key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_key) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rss_key_len) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_key_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss_hf) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_rss_conf), + "::", + stringify!(rss_hf) + ) + ); } impl Clone for rte_eth_rss_conf { fn clone(&self) -> Self { @@ -781,6 +730,9 @@ pub struct rte_eth_vmdq_dcb_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_conf__bindgen_ty_1>(), 16usize, @@ -794,44 +746,26 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_conf__bindgen_ty_1() { stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1) ) ); - fn test_field_vlan_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_dcb_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), - "::", - stringify!(vlan_id) - ) - ); - } - test_field_vlan_id(); - fn test_field_pools() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_dcb_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), - "::", - stringify!(pools) - ) - ); - } - test_field_pools(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), + "::", + stringify!(vlan_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf__bindgen_ty_1), + "::", + stringify!(pools) + ) + ); } impl Clone for rte_eth_vmdq_dcb_conf__bindgen_ty_1 { fn clone(&self) -> Self { @@ -840,6 +774,9 @@ impl Clone for rte_eth_vmdq_dcb_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_conf>(), 1040usize, @@ -850,118 +787,77 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_dcb_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_enable_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(enable_default_pool) - ) - ); - } - test_field_enable_default_pool(); - fn test_field_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).default_pool) as usize - - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(default_pool) - ) - ); - } - test_field_default_pool(); - fn test_field_nb_pool_maps() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(nb_pool_maps) - ) - ); - } - test_field_nb_pool_maps(); - fn test_field_pool_map() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(pool_map) - ) - ); - } - test_field_pool_map(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 1032usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(enable_default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).default_pool) as usize - ptr as usize + }, + 5usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(nb_pool_maps) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(pool_map) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 1032usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Clone for rte_eth_vmdq_dcb_conf { fn clone(&self) -> Self { @@ -987,6 +883,9 @@ pub struct rte_eth_dcb_rx_conf { } #[test] fn bindgen_test_layout_rte_eth_dcb_rx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_dcb_rx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_dcb_rx_conf>(), 12usize, @@ -997,42 +896,26 @@ fn bindgen_test_layout_rte_eth_dcb_rx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_dcb_rx_conf)) ); - fn test_field_nb_tcs() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_rx_conf), - "::", - stringify!(nb_tcs) - ) - ); - } - test_field_nb_tcs(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_rx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_rx_conf), + "::", + stringify!(nb_tcs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_rx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Clone for rte_eth_dcb_rx_conf { fn clone(&self) -> Self { @@ -1058,6 +941,9 @@ pub struct rte_eth_vmdq_dcb_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_vmdq_dcb_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_dcb_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_dcb_tx_conf>(), 12usize, @@ -1068,45 +954,28 @@ fn bindgen_test_layout_rte_eth_vmdq_dcb_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_dcb_tx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_tx_conf>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_tx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_dcb_tx_conf>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_dcb_tx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_tx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_dcb_tx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Clone for rte_eth_vmdq_dcb_tx_conf { fn clone(&self) -> Self { @@ -1132,6 +1001,9 @@ pub struct rte_eth_dcb_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_dcb_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_dcb_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_dcb_tx_conf>(), 12usize, @@ -1142,42 +1014,26 @@ fn bindgen_test_layout_rte_eth_dcb_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_dcb_tx_conf)) ); - fn test_field_nb_tcs() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_tx_conf), - "::", - stringify!(nb_tcs) - ) - ); - } - test_field_nb_tcs(); - fn test_field_dcb_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_dcb_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_dcb_tx_conf), - "::", - stringify!(dcb_tc) - ) - ); - } - test_field_dcb_tc(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_tcs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_tx_conf), + "::", + stringify!(nb_tcs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dcb_tc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_dcb_tx_conf), + "::", + stringify!(dcb_tc) + ) + ); } impl Clone for rte_eth_dcb_tx_conf { fn clone(&self) -> Self { @@ -1201,6 +1057,9 @@ pub struct rte_eth_vmdq_tx_conf { } #[test] fn bindgen_test_layout_rte_eth_vmdq_tx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_tx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_tx_conf>(), 4usize, @@ -1211,25 +1070,18 @@ fn bindgen_test_layout_rte_eth_vmdq_tx_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_tx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_tx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_tx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_tx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); } impl Clone for rte_eth_vmdq_tx_conf { fn clone(&self) -> Self { @@ -1273,6 +1125,9 @@ pub struct rte_eth_vmdq_rx_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_rx_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_rx_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_rx_conf__bindgen_ty_1>(), 16usize, @@ -1286,44 +1141,26 @@ fn bindgen_test_layout_rte_eth_vmdq_rx_conf__bindgen_ty_1() { stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1) ) ); - fn test_field_vlan_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_rx_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), - "::", - stringify!(vlan_id) - ) - ); - } - test_field_vlan_id(); - fn test_field_pools() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_vmdq_rx_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), - "::", - stringify!(pools) - ) - ); - } - test_field_pools(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).vlan_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), + "::", + stringify!(vlan_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pools) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf__bindgen_ty_1), + "::", + stringify!(pools) + ) + ); } impl Clone for rte_eth_vmdq_rx_conf__bindgen_ty_1 { fn clone(&self) -> Self { @@ -1332,6 +1169,9 @@ impl Clone for rte_eth_vmdq_rx_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_vmdq_rx_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_vmdq_rx_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_vmdq_rx_conf>(), 1040usize, @@ -1342,137 +1182,90 @@ fn bindgen_test_layout_rte_eth_vmdq_rx_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_vmdq_rx_conf)) ); - fn test_field_nb_queue_pools() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(nb_queue_pools) - ) - ); - } - test_field_nb_queue_pools(); - fn test_field_enable_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(enable_default_pool) - ) - ); - } - test_field_enable_default_pool(); - fn test_field_default_pool() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).default_pool) as usize - - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(default_pool) - ) - ); - } - test_field_default_pool(); - fn test_field_enable_loop_back() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).enable_loop_back) as usize - - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(enable_loop_back) - ) - ); - } - test_field_enable_loop_back(); - fn test_field_nb_pool_maps() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(nb_pool_maps) - ) - ); - } - test_field_nb_pool_maps(); - fn test_field_rx_mode() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_mode) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(rx_mode) - ) - ); - } - test_field_rx_mode(); - fn test_field_pool_map() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_vmdq_rx_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_vmdq_rx_conf), - "::", - stringify!(pool_map) - ) - ); - } - test_field_pool_map(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_queue_pools) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(nb_queue_pools) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_default_pool) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(enable_default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).default_pool) as usize - ptr as usize + }, + 5usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(default_pool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).enable_loop_back) as usize - + ptr as usize + }, + 6usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(enable_loop_back) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_pool_maps) as usize - ptr as usize + }, + 7usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(nb_pool_maps) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rx_mode) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(rx_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).pool_map) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_vmdq_rx_conf), + "::", + stringify!(pool_map) + ) + ); } impl Clone for rte_eth_vmdq_rx_conf { fn clone(&self) -> Self { @@ -1543,6 +1336,9 @@ pub struct rte_eth_ipv4_flow { } #[test] fn bindgen_test_layout_rte_eth_ipv4_flow() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_ipv4_flow> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_ipv4_flow>(), 12usize, @@ -1553,96 +1349,56 @@ fn bindgen_test_layout_rte_eth_ipv4_flow() { 4usize, concat!("Alignment of ", stringify!(rte_eth_ipv4_flow)) ); - fn test_field_src_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(src_ip) - ) - ); - } - test_field_src_ip(); - fn test_field_dst_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(dst_ip) - ) - ); - } - test_field_dst_ip(); - fn test_field_tos() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tos) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(tos) - ) - ); - } - test_field_tos(); - fn test_field_ttl() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ttl) as usize - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(ttl) - ) - ); - } - test_field_ttl(); - fn test_field_proto() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv4_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv4_flow), - "::", - stringify!(proto) - ) - ); - } - test_field_proto(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(src_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(dst_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tos) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(tos) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ttl) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(ttl) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv4_flow), + "::", + stringify!(proto) + ) + ); } impl Clone for rte_eth_ipv4_flow { fn clone(&self) -> Self { @@ -1666,6 +1422,9 @@ pub struct rte_eth_ipv6_flow { } #[test] fn bindgen_test_layout_rte_eth_ipv6_flow() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_ipv6_flow> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_ipv6_flow>(), 36usize, @@ -1676,96 +1435,58 @@ fn bindgen_test_layout_rte_eth_ipv6_flow() { 4usize, concat!("Alignment of ", stringify!(rte_eth_ipv6_flow)) ); - fn test_field_src_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(src_ip) - ) - ); - } - test_field_src_ip(); - fn test_field_dst_ip() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(dst_ip) - ) - ); - } - test_field_dst_ip(); - fn test_field_tc() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tc) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(tc) - ) - ); - } - test_field_tc(); - fn test_field_proto() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize - }, - 33usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(proto) - ) - ); - } - test_field_proto(); - fn test_field_hop_limits() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_ipv6_flow>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hop_limits) as usize - ptr as usize - }, - 34usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_ipv6_flow), - "::", - stringify!(hop_limits) - ) - ); - } - test_field_hop_limits(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_ip) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(src_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dst_ip) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(dst_ip) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tc) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(tc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).proto) as usize - ptr as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(proto) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).hop_limits) as usize - ptr as usize + }, + 34usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_ipv6_flow), + "::", + stringify!(hop_limits) + ) + ); } impl Clone for rte_eth_ipv6_flow { fn clone(&self) -> Self { @@ -1798,6 +1519,9 @@ pub struct rte_eth_fdir_masks { } #[test] fn bindgen_test_layout_rte_eth_fdir_masks() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_masks> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_masks>(), 68usize, @@ -1808,156 +1532,104 @@ fn bindgen_test_layout_rte_eth_fdir_masks() { 4usize, concat!("Alignment of ", stringify!(rte_eth_fdir_masks)) ); - fn test_field_vlan_tci_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci_mask) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(vlan_tci_mask) - ) - ); - } - test_field_vlan_tci_mask(); - fn test_field_ipv4_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ipv4_mask) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(ipv4_mask) - ) - ); - } - test_field_ipv4_mask(); - fn test_field_ipv6_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ipv6_mask) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(ipv6_mask) - ) - ); - } - test_field_ipv6_mask(); - fn test_field_src_port_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_port_mask) as usize - - ptr as usize - }, - 52usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(src_port_mask) - ) - ); - } - test_field_src_port_mask(); - fn test_field_dst_port_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dst_port_mask) as usize - - ptr as usize - }, - 54usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(dst_port_mask) - ) - ); - } - test_field_dst_port_mask(); - fn test_field_mac_addr_byte_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mac_addr_byte_mask) as usize - - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(mac_addr_byte_mask) - ) - ); - } - test_field_mac_addr_byte_mask(); - fn test_field_tunnel_id_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tunnel_id_mask) as usize - - ptr as usize - }, - 60usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(tunnel_id_mask) - ) - ); - } - test_field_tunnel_id_mask(); - fn test_field_tunnel_type_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_masks>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tunnel_type_mask) as usize - - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_masks), - "::", - stringify!(tunnel_type_mask) - ) - ); - } - test_field_tunnel_type_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci_mask) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(vlan_tci_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ipv4_mask) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(ipv4_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ipv6_mask) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(ipv6_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_port_mask) as usize - ptr as usize + }, + 52usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(src_port_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dst_port_mask) as usize - ptr as usize + }, + 54usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(dst_port_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mac_addr_byte_mask) as usize - + ptr as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(mac_addr_byte_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tunnel_id_mask) as usize - ptr as usize + }, + 60usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(tunnel_id_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tunnel_type_mask) as usize - + ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_masks), + "::", + stringify!(tunnel_type_mask) + ) + ); } impl Clone for rte_eth_fdir_masks { fn clone(&self) -> Self { @@ -1986,6 +1658,9 @@ pub struct rte_eth_flex_payload_cfg { } #[test] fn bindgen_test_layout_rte_eth_flex_payload_cfg() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_flex_payload_cfg> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_flex_payload_cfg>(), 36usize, @@ -1996,44 +1671,28 @@ fn bindgen_test_layout_rte_eth_flex_payload_cfg() { 4usize, concat!("Alignment of ", stringify!(rte_eth_flex_payload_cfg)) ); - fn test_field_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_flex_payload_cfg>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_flex_payload_cfg), - "::", - stringify!(type_) - ) - ); - } - test_field_type(); - fn test_field_src_offset() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_flex_payload_cfg>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_offset) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_flex_payload_cfg), - "::", - stringify!(src_offset) - ) - ); - } - test_field_src_offset(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_flex_payload_cfg), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).src_offset) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_flex_payload_cfg), + "::", + stringify!(src_offset) + ) + ); } impl Clone for rte_eth_flex_payload_cfg { fn clone(&self) -> Self { @@ -2059,6 +1718,9 @@ pub struct rte_eth_fdir_flex_mask { } #[test] fn bindgen_test_layout_rte_eth_fdir_flex_mask() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_flex_mask> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_flex_mask>(), 18usize, @@ -2069,42 +1731,28 @@ fn bindgen_test_layout_rte_eth_fdir_flex_mask() { 2usize, concat!("Alignment of ", stringify!(rte_eth_fdir_flex_mask)) ); - fn test_field_flow_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_mask>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flow_type) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_mask), - "::", - stringify!(flow_type) - ) - ); - } - test_field_flow_type(); - fn test_field_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_mask>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_mask), - "::", - stringify!(mask) - ) - ); - } - test_field_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flow_type) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_mask), + "::", + stringify!(flow_type) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_mask), + "::", + stringify!(mask) + ) + ); } impl Clone for rte_eth_fdir_flex_mask { fn clone(&self) -> Self { @@ -2125,6 +1773,9 @@ pub struct rte_eth_fdir_flex_conf { } #[test] fn bindgen_test_layout_rte_eth_fdir_flex_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_fdir_flex_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_fdir_flex_conf>(), 688usize, @@ -2135,79 +1786,54 @@ fn bindgen_test_layout_rte_eth_fdir_flex_conf() { 4usize, concat!("Alignment of ", stringify!(rte_eth_fdir_flex_conf)) ); - fn test_field_nb_payloads() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_payloads) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(nb_payloads) - ) - ); - } - test_field_nb_payloads(); - fn test_field_nb_flexmasks() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_flexmasks) as usize - - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(nb_flexmasks) - ) - ); - } - test_field_nb_flexmasks(); - fn test_field_flex_set() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_set) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(flex_set) - ) - ); - } - test_field_flex_set(); - fn test_field_flex_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_eth_fdir_flex_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_mask) as usize - ptr as usize - }, - 292usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_fdir_flex_conf), - "::", - stringify!(flex_mask) - ) - ); - } - test_field_flex_mask(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_payloads) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(nb_payloads) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_flexmasks) as usize - ptr as usize + }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(nb_flexmasks) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_set) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(flex_set) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_mask) as usize - ptr as usize + }, + 292usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_fdir_flex_conf), + "::", + stringify!(flex_mask) + ) + ); } impl Clone for rte_eth_fdir_flex_conf { fn clone(&self) -> Self { @@ -2243,6 +1869,9 @@ pub struct rte_fdir_conf { } #[test] fn bindgen_test_layout_rte_fdir_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_fdir_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_fdir_conf>(), 772usize, @@ -2253,108 +1882,70 @@ fn bindgen_test_layout_rte_fdir_conf() { 4usize, concat!("Alignment of ", stringify!(rte_fdir_conf)) ); - fn test_field_mode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(mode) - ) - ); - } - test_field_mode(); - fn test_field_pballoc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pballoc) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(pballoc) - ) - ); - } - test_field_pballoc(); - fn test_field_status() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(status) - ) - ); - } - test_field_status(); - fn test_field_drop_queue() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).drop_queue) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(drop_queue) - ) - ); - } - test_field_drop_queue(); - fn test_field_mask() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(mask) - ) - ); - } - test_field_mask(); - fn test_field_flex_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_fdir_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).flex_conf) as usize - ptr as usize - }, - 84usize, - concat!( - "Offset of field: ", - stringify!(rte_fdir_conf), - "::", - stringify!(flex_conf) - ) - ); - } - test_field_flex_conf(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mode) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(mode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pballoc) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(pballoc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(status) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).drop_queue) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(drop_queue) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mask) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).flex_conf) as usize - ptr as usize + }, + 84usize, + concat!( + "Offset of field: ", + stringify!(rte_fdir_conf), + "::", + stringify!(flex_conf) + ) + ); } impl Clone for rte_fdir_conf { fn clone(&self) -> Self { @@ -2381,6 +1972,9 @@ pub struct rte_intr_conf { } #[test] fn bindgen_test_layout_rte_intr_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_intr_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_intr_conf>(), 4usize, @@ -2391,40 +1985,26 @@ fn bindgen_test_layout_rte_intr_conf() { 2usize, concat!("Alignment of ", stringify!(rte_intr_conf)) ); - fn test_field_lsc() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_intr_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lsc) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_intr_conf), - "::", - stringify!(lsc) - ) - ); - } - test_field_lsc(); - fn test_field_rxq() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_intr_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rxq) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(rte_intr_conf), - "::", - stringify!(rxq) - ) - ); - } - test_field_rxq(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lsc) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_intr_conf), + "::", + stringify!(lsc) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rxq) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(rte_intr_conf), + "::", + stringify!(rxq) + ) + ); } impl Clone for rte_intr_conf { fn clone(&self) -> Self { @@ -2478,6 +2058,9 @@ pub struct rte_eth_conf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_eth_conf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf__bindgen_ty_1>(), 2120usize, @@ -2488,84 +2071,54 @@ fn bindgen_test_layout_rte_eth_conf__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(rte_eth_conf__bindgen_ty_1)) ); - fn test_field_rss_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss_conf) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(rss_conf) - ) - ); - } - test_field_rss_conf(); - fn test_field_vmdq_dcb_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_dcb_conf) as usize - - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(vmdq_dcb_conf) - ) - ); - } - test_field_vmdq_dcb_conf(); - fn test_field_dcb_rx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_rx_conf) as usize - ptr as usize - }, - 1064usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(dcb_rx_conf) - ) - ); - } - test_field_dcb_rx_conf(); - fn test_field_vmdq_rx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_rx_conf) as usize - - ptr as usize - }, - 1080usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_1), - "::", - stringify!(vmdq_rx_conf) - ) - ); - } - test_field_vmdq_rx_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rss_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(rss_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_dcb_conf) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(vmdq_dcb_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_rx_conf) as usize - ptr as usize + }, + 1064usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(dcb_rx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_rx_conf) as usize - ptr as usize + }, + 1080usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_1), + "::", + stringify!(vmdq_rx_conf) + ) + ); } impl Clone for rte_eth_conf__bindgen_ty_1 { fn clone(&self) -> Self { @@ -2591,6 +2144,9 @@ pub struct rte_eth_conf__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_eth_conf__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf__bindgen_ty_2>(), 12usize, @@ -2601,65 +2157,43 @@ fn bindgen_test_layout_rte_eth_conf__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(rte_eth_conf__bindgen_ty_2)) ); - fn test_field_vmdq_dcb_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_dcb_tx_conf) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(vmdq_dcb_tx_conf) - ) - ); - } - test_field_vmdq_dcb_tx_conf(); - fn test_field_dcb_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_tx_conf) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(dcb_tx_conf) - ) - ); - } - test_field_dcb_tx_conf(); - fn test_field_vmdq_tx_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_eth_conf__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vmdq_tx_conf) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf__bindgen_ty_2), - "::", - stringify!(vmdq_tx_conf) - ) - ); - } - test_field_vmdq_tx_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_dcb_tx_conf) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(vmdq_dcb_tx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_tx_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(dcb_tx_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vmdq_tx_conf) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf__bindgen_ty_2), + "::", + stringify!(vmdq_tx_conf) + ) + ); } impl Clone for rte_eth_conf__bindgen_ty_2 { fn clone(&self) -> Self { @@ -2668,6 +2202,9 @@ impl Clone for rte_eth_conf__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_eth_conf() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_conf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_conf>(), 2944usize, @@ -2678,160 +2215,111 @@ fn bindgen_test_layout_rte_eth_conf() { 8usize, concat!("Alignment of ", stringify!(rte_eth_conf)) ); - fn test_field_link_speeds() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).link_speeds) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(link_speeds) - ) - ); - } - test_field_link_speeds(); - fn test_field_rxmode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rxmode) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(rxmode) - ) - ); - } - test_field_rxmode(); - fn test_field_txmode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).txmode) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(txmode) - ) - ); - } - test_field_txmode(); - fn test_field_lpbk_mode() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lpbk_mode) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(lpbk_mode) - ) - ); - } - test_field_lpbk_mode(); - fn test_field_rx_adv_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_adv_conf) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(rx_adv_conf) - ) - ); - } - test_field_rx_adv_conf(); - fn test_field_tx_adv_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tx_adv_conf) as usize - ptr as usize - }, - 2152usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(tx_adv_conf) - ) - ); - } - test_field_tx_adv_conf(); - fn test_field_dcb_capability_en() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dcb_capability_en) as usize - - ptr as usize - }, - 2164usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(dcb_capability_en) - ) - ); - } - test_field_dcb_capability_en(); - fn test_field_fdir_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fdir_conf) as usize - ptr as usize - }, - 2168usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(fdir_conf) - ) - ); - } - test_field_fdir_conf(); - fn test_field_intr_conf() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_conf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).intr_conf) as usize - ptr as usize - }, - 2940usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_conf), - "::", - stringify!(intr_conf) - ) - ); - } - test_field_intr_conf(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).link_speeds) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(link_speeds) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rxmode) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(rxmode) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).txmode) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(txmode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).lpbk_mode) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(lpbk_mode) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rx_adv_conf) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(rx_adv_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tx_adv_conf) as usize - ptr as usize + }, + 2152usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(tx_adv_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).dcb_capability_en) as usize - + ptr as usize + }, + 2164usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(dcb_capability_en) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fdir_conf) as usize - ptr as usize + }, + 2168usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(fdir_conf) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).intr_conf) as usize - ptr as usize + }, + 2940usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_conf), + "::", + stringify!(intr_conf) + ) + ); } impl Clone for rte_eth_conf { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/layout_kni_mbuf.rs b/tests/expectations/tests/layout_kni_mbuf.rs index 4eaa7078..be88d20f 100644 --- a/tests/expectations/tests/layout_kni_mbuf.rs +++ b/tests/expectations/tests/layout_kni_mbuf.rs @@ -34,6 +34,9 @@ pub struct rte_kni_mbuf { } #[test] fn bindgen_test_layout_rte_kni_mbuf() { + const UNINIT: ::std::mem::MaybeUninit<rte_kni_mbuf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_kni_mbuf>(), 128usize, @@ -44,245 +47,156 @@ fn bindgen_test_layout_rte_kni_mbuf() { 64usize, concat!("Alignment of ", stringify!(rte_kni_mbuf)) ); - fn test_field_buf_addr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(buf_addr) - ) - ); - } - test_field_buf_addr(); - fn test_field_buf_physaddr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(buf_physaddr) - ) - ); - } - test_field_buf_physaddr(); - fn test_field_pad0() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pad0) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pad0) - ) - ); - } - test_field_pad0(); - fn test_field_data_off() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(data_off) - ) - ); - } - test_field_data_off(); - fn test_field_pad1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pad1) as usize - ptr as usize - }, - 20usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pad1) - ) - ); - } - test_field_pad1(); - fn test_field_nb_segs() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize - }, - 22usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(nb_segs) - ) - ); - } - test_field_nb_segs(); - fn test_field_pad4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pad4) as usize - ptr as usize - }, - 23usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pad4) - ) - ); - } - test_field_pad4(); - fn test_field_ol_flags() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(ol_flags) - ) - ); - } - test_field_ol_flags(); - fn test_field_pad2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pad2) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pad2) - ) - ); - } - test_field_pad2(); - fn test_field_pkt_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pkt_len) - ) - ); - } - test_field_pkt_len(); - fn test_field_data_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(data_len) - ) - ); - } - test_field_data_len(); - fn test_field_pad3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pad3) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pad3) - ) - ); - } - test_field_pad3(); - fn test_field_pool() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(pool) - ) - ); - } - test_field_pool(); - fn test_field_next() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_mbuf), - "::", - stringify!(next) - ) - ); - } - test_field_next(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(buf_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(buf_physaddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pad0) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pad0) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(data_off) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pad1) as usize - ptr as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pad1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(nb_segs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pad4) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pad4) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(ol_flags) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pad2) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pad2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pkt_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(data_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pad3) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pad3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(pool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_mbuf), + "::", + stringify!(next) + ) + ); } impl Default for rte_kni_mbuf { fn default() -> Self { diff --git a/tests/expectations/tests/layout_large_align_field.rs b/tests/expectations/tests/layout_large_align_field.rs index daf3d562..075ef46a 100644 --- a/tests/expectations/tests/layout_large_align_field.rs +++ b/tests/expectations/tests/layout_large_align_field.rs @@ -65,6 +65,9 @@ pub struct ip_frag { } #[test] fn bindgen_test_layout_ip_frag() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag>(), 16usize, @@ -75,57 +78,36 @@ fn bindgen_test_layout_ip_frag() { 8usize, concat!("Alignment of ", stringify!(ip_frag)) ); - fn test_field_ofs() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ofs) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(ofs) - ) - ); - } - test_field_ofs(); - fn test_field_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(len) - ) - ); - } - test_field_len(); - fn test_field_mb() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mb) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_frag), - "::", - stringify!(mb) - ) - ); - } - test_field_mb(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ofs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(ofs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mb) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_frag), + "::", + stringify!(mb) + ) + ); } impl Default for ip_frag { fn default() -> Self { @@ -149,6 +131,9 @@ pub struct ip_frag_key { } #[test] fn bindgen_test_layout_ip_frag_key() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_key> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_key>(), 40usize, @@ -159,57 +144,36 @@ fn bindgen_test_layout_ip_frag_key() { 8usize, concat!("Alignment of ", stringify!(ip_frag_key)) ); - fn test_field_src_dst() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).src_dst) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(src_dst) - ) - ); - } - test_field_src_dst(); - fn test_field_id() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(id) - ) - ); - } - test_field_id(); - fn test_field_key_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_key>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).key_len) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_key), - "::", - stringify!(key_len) - ) - ); - } - test_field_key_len(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).src_dst) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(src_dst) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key_len) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_key), + "::", + stringify!(key_len) + ) + ); } /// @internal Fragmented packet to reassemble. /// First two entries in the frags[] array are for the last and first fragments. @@ -240,6 +204,9 @@ pub struct ip_frag_pkt__bindgen_ty_1 { } #[test] fn bindgen_test_layout_ip_frag_pkt__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_pkt__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_pkt__bindgen_ty_1>(), 16usize, @@ -250,40 +217,30 @@ fn bindgen_test_layout_ip_frag_pkt__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(ip_frag_pkt__bindgen_ty_1)) ); - fn test_field_tqe_next() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < ip_frag_pkt__bindgen_ty_1 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqe_next) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt__bindgen_ty_1), - "::", - stringify!(tqe_next) - ) - ); - } - test_field_tqe_next(); - fn test_field_tqe_prev() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < ip_frag_pkt__bindgen_ty_1 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqe_prev) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt__bindgen_ty_1), - "::", - stringify!(tqe_prev) - ) - ); - } - test_field_tqe_prev(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqe_next) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt__bindgen_ty_1), + "::", + stringify!(tqe_next) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqe_prev) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt__bindgen_ty_1), + "::", + stringify!(tqe_prev) + ) + ); } impl Default for ip_frag_pkt__bindgen_ty_1 { fn default() -> Self { @@ -296,6 +253,9 @@ impl Default for ip_frag_pkt__bindgen_ty_1 { } #[test] fn bindgen_test_layout_ip_frag_pkt() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_pkt> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_pkt>(), 192usize, @@ -306,125 +266,82 @@ fn bindgen_test_layout_ip_frag_pkt() { 64usize, concat!("Alignment of ", stringify!(ip_frag_pkt)) ); - fn test_field_lru() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(lru) - ) - ); - } - test_field_lru(); - fn test_field_key() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(key) - ) - ); - } - test_field_key(); - fn test_field_start() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(start) - ) - ); - } - test_field_start(); - fn test_field_total_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(total_size) - ) - ); - } - test_field_total_size(); - fn test_field_frag_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).frag_size) as usize - ptr as usize - }, - 68usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(frag_size) - ) - ); - } - test_field_frag_size(); - fn test_field_last_idx() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).last_idx) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(last_idx) - ) - ); - } - test_field_last_idx(); - fn test_field_frags() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_frag_pkt>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).frags) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_pkt), - "::", - stringify!(frags) - ) - ); - } - test_field_frags(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(lru) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(start) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).total_size) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(total_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).frag_size) as usize - ptr as usize + }, + 68usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(frag_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).last_idx) as usize - ptr as usize + }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(last_idx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).frags) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_pkt), + "::", + stringify!(frags) + ) + ); } impl Default for ip_frag_pkt { fn default() -> Self { @@ -443,6 +360,9 @@ pub struct ip_pkt_list { } #[test] fn bindgen_test_layout_ip_pkt_list() { + const UNINIT: ::std::mem::MaybeUninit<ip_pkt_list> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_pkt_list>(), 16usize, @@ -453,40 +373,30 @@ fn bindgen_test_layout_ip_pkt_list() { 8usize, concat!("Alignment of ", stringify!(ip_pkt_list)) ); - fn test_field_tqh_first() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_pkt_list>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqh_first) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_pkt_list), - "::", - stringify!(tqh_first) - ) - ); - } - test_field_tqh_first(); - fn test_field_tqh_last() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ip_pkt_list>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tqh_last) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_pkt_list), - "::", - stringify!(tqh_last) - ) - ); - } - test_field_tqh_last(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqh_first) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_pkt_list), + "::", + stringify!(tqh_first) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tqh_last) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_pkt_list), + "::", + stringify!(tqh_last) + ) + ); } impl Default for ip_pkt_list { fn default() -> Self { @@ -517,6 +427,9 @@ pub struct ip_frag_tbl_stat { } #[test] fn bindgen_test_layout_ip_frag_tbl_stat() { + const UNINIT: ::std::mem::MaybeUninit<ip_frag_tbl_stat> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ip_frag_tbl_stat>(), 64usize, @@ -527,115 +440,74 @@ fn bindgen_test_layout_ip_frag_tbl_stat() { 64usize, concat!("Alignment of ", stringify!(ip_frag_tbl_stat)) ); - fn test_field_find_num() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).find_num) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(find_num) - ) - ); - } - test_field_find_num(); - fn test_field_add_num() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).add_num) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(add_num) - ) - ); - } - test_field_add_num(); - fn test_field_del_num() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).del_num) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(del_num) - ) - ); - } - test_field_del_num(); - fn test_field_reuse_num() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).reuse_num) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(reuse_num) - ) - ); - } - test_field_reuse_num(); - fn test_field_fail_total() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fail_total) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(fail_total) - ) - ); - } - test_field_fail_total(); - fn test_field_fail_nospace() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ip_frag_tbl_stat>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fail_nospace) as usize - - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(ip_frag_tbl_stat), - "::", - stringify!(fail_nospace) - ) - ); - } - test_field_fail_nospace(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).find_num) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(find_num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).add_num) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(add_num) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).del_num) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(del_num) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).reuse_num) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(reuse_num) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fail_total) as usize - ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(fail_total) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).fail_nospace) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ip_frag_tbl_stat), + "::", + stringify!(fail_nospace) + ) + ); } impl Default for ip_frag_tbl_stat { fn default() -> Self { @@ -676,6 +548,9 @@ pub struct rte_ip_frag_tbl { } #[test] fn bindgen_test_layout_rte_ip_frag_tbl() { + const UNINIT: ::std::mem::MaybeUninit<rte_ip_frag_tbl> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ip_frag_tbl>(), 128usize, @@ -686,205 +561,130 @@ fn bindgen_test_layout_rte_ip_frag_tbl() { 64usize, concat!("Alignment of ", stringify!(rte_ip_frag_tbl)) ); - fn test_field_max_cycles() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).max_cycles) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(max_cycles) - ) - ); - } - test_field_max_cycles(); - fn test_field_entry_mask() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).entry_mask) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(entry_mask) - ) - ); - } - test_field_entry_mask(); - fn test_field_max_entries() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).max_entries) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(max_entries) - ) - ); - } - test_field_max_entries(); - fn test_field_use_entries() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).use_entries) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(use_entries) - ) - ); - } - test_field_use_entries(); - fn test_field_bucket_entries() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bucket_entries) as usize - - ptr as usize - }, - 20usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(bucket_entries) - ) - ); - } - test_field_bucket_entries(); - fn test_field_nb_entries() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_entries) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(nb_entries) - ) - ); - } - test_field_nb_entries(); - fn test_field_nb_buckets() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_buckets) as usize - ptr as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(nb_buckets) - ) - ); - } - test_field_nb_buckets(); - fn test_field_last() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).last) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(last) - ) - ); - } - test_field_last(); - fn test_field_lru() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(lru) - ) - ); - } - test_field_lru(); - fn test_field_stat() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).stat) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(stat) - ) - ); - } - test_field_stat(); - fn test_field_pkt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_ip_frag_tbl>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pkt) as usize - ptr as usize - }, - 128usize, - concat!( - "Offset of field: ", - stringify!(rte_ip_frag_tbl), - "::", - stringify!(pkt) - ) - ); - } - test_field_pkt(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).max_cycles) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(max_cycles) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).entry_mask) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(entry_mask) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).max_entries) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(max_entries) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).use_entries) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(use_entries) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bucket_entries) as usize - ptr as usize + }, + 20usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(bucket_entries) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_entries) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(nb_entries) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).nb_buckets) as usize - ptr as usize + }, + 28usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(nb_buckets) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).last) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(last) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lru) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(lru) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).stat) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(stat) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pkt) as usize - ptr as usize }, + 128usize, + concat!( + "Offset of field: ", + stringify!(rte_ip_frag_tbl), + "::", + stringify!(pkt) + ) + ); } impl Default for rte_ip_frag_tbl { fn default() -> Self { diff --git a/tests/expectations/tests/layout_mbuf.rs b/tests/expectations/tests/layout_mbuf.rs index 549c5292..800a303b 100644 --- a/tests/expectations/tests/layout_mbuf.rs +++ b/tests/expectations/tests/layout_mbuf.rs @@ -106,6 +106,9 @@ pub struct rte_atomic16_t { } #[test] fn bindgen_test_layout_rte_atomic16_t() { + const UNINIT: ::std::mem::MaybeUninit<rte_atomic16_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_atomic16_t>(), 2usize, @@ -116,24 +119,16 @@ fn bindgen_test_layout_rte_atomic16_t() { 2usize, concat!("Alignment of ", stringify!(rte_atomic16_t)) ); - fn test_field_cnt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_atomic16_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cnt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_atomic16_t), - "::", - stringify!(cnt) - ) - ); - } - test_field_cnt(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cnt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_atomic16_t), + "::", + stringify!(cnt) + ) + ); } /// The generic rte_mbuf, containing a packet mbuf. #[repr(C)] @@ -198,6 +193,9 @@ pub union rte_mbuf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_1>(), 2usize, @@ -208,43 +206,28 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_1)) ); - fn test_field_refcnt_atomic() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).refcnt_atomic) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_1), - "::", - stringify!(refcnt_atomic) - ) - ); - } - test_field_refcnt_atomic(); - fn test_field_refcnt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).refcnt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_1), - "::", - stringify!(refcnt) - ) - ); - } - test_field_refcnt(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).refcnt_atomic) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_1), + "::", + stringify!(refcnt_atomic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).refcnt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_1), + "::", + stringify!(refcnt) + ) + ); } impl Default for rte_mbuf__bindgen_ty_1 { fn default() -> Self { @@ -428,6 +411,9 @@ impl rte_mbuf__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_2>(), 4usize, @@ -438,24 +424,18 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_2)) ); - fn test_field_packet_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).packet_type) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_2), - "::", - stringify!(packet_type) - ) - ); - } - test_field_packet_type(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).packet_type) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_2), + "::", + stringify!(packet_type) + ) + ); } impl Default for rte_mbuf__bindgen_ty_2 { fn default() -> Self { @@ -500,19 +480,21 @@ pub struct rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1( ) { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq ! (:: std :: mem :: size_of :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))); assert_eq ! (:: std :: mem :: align_of :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))); - fn test_field_hash() { - assert_eq ! (unsafe { let uninit = :: std :: mem :: MaybeUninit :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > :: uninit () ; let ptr = uninit . as_ptr () ; :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (hash))); - } - test_field_hash(); - fn test_field_id() { - assert_eq ! (unsafe { let uninit = :: std :: mem :: MaybeUninit :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > :: uninit () ; let ptr = uninit . as_ptr () ; :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (id))); - } - test_field_id(); + assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (hash))); + assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (id))); } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1>( ), @@ -532,25 +514,16 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_lo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(lo) - ) - ); - } - test_field_lo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(lo) + ) + ); } impl Default for rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { fn default() -> Self { @@ -563,6 +536,10 @@ impl Default for rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_1>(), 8usize, @@ -579,25 +556,16 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1) ) ); - fn test_field_hi() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1), - "::", - stringify!(hi) - ) - ); - } - test_field_hi(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1), + "::", + stringify!(hi) + ) + ); } impl Default for rte_mbuf__bindgen_ty_3__bindgen_ty_1 { fn default() -> Self { @@ -616,6 +584,10 @@ pub struct rte_mbuf__bindgen_ty_3__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_2>(), 8usize, @@ -632,47 +604,32 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_2() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2) ) ); - fn test_field_lo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), - "::", - stringify!(lo) - ) - ); - } - test_field_lo(); - fn test_field_hi() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), - "::", - stringify!(hi) - ) - ); - } - test_field_hi(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), + "::", + stringify!(lo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), + "::", + stringify!(hi) + ) + ); } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_3> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3>(), 8usize, @@ -683,78 +640,46 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3() { 4usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_3)) ); - fn test_field_rss() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(rss) - ) - ); - } - test_field_rss(); - fn test_field_fdir() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fdir) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(fdir) - ) - ); - } - test_field_fdir(); - fn test_field_sched() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sched) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(sched) - ) - ); - } - test_field_sched(); - fn test_field_usr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).usr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(usr) - ) - ); - } - test_field_usr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(rss) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fdir) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(fdir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sched) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(sched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).usr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(usr) + ) + ); } impl Default for rte_mbuf__bindgen_ty_3 { fn default() -> Self { @@ -775,6 +700,9 @@ pub union rte_mbuf__bindgen_ty_4 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_4> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_4>(), 8usize, @@ -785,42 +713,28 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_4() { 8usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_4)) ); - fn test_field_userdata() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).userdata) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_4), - "::", - stringify!(userdata) - ) - ); - } - test_field_userdata(); - fn test_field_udata64() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).udata64) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_4), - "::", - stringify!(udata64) - ) - ); - } - test_field_udata64(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).userdata) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_4), + "::", + stringify!(userdata) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).udata64) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_4), + "::", + stringify!(udata64) + ) + ); } impl Default for rte_mbuf__bindgen_ty_4 { fn default() -> Self { @@ -985,6 +899,9 @@ impl rte_mbuf__bindgen_ty_5__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_5> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_5>(), 8usize, @@ -995,24 +912,18 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_5() { 8usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_5)) ); - fn test_field_tx_offload() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_5>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tx_offload) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_5), - "::", - stringify!(tx_offload) - ) - ); - } - test_field_tx_offload(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tx_offload) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_5), + "::", + stringify!(tx_offload) + ) + ); } impl Default for rte_mbuf__bindgen_ty_5 { fn default() -> Self { @@ -1025,6 +936,9 @@ impl Default for rte_mbuf__bindgen_ty_5 { } #[test] fn bindgen_test_layout_rte_mbuf() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf>(), 128usize, @@ -1035,366 +949,243 @@ fn bindgen_test_layout_rte_mbuf() { 64usize, concat!("Alignment of ", stringify!(rte_mbuf)) ); - fn test_field_cacheline0() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cacheline0) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(cacheline0) - ) - ); - } - test_field_cacheline0(); - fn test_field_buf_addr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_addr) - ) - ); - } - test_field_buf_addr(); - fn test_field_buf_physaddr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_physaddr) - ) - ); - } - test_field_buf_physaddr(); - fn test_field_buf_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_len) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_len) - ) - ); - } - test_field_buf_len(); - fn test_field_rearm_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rearm_data) as usize - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(rearm_data) - ) - ); - } - test_field_rearm_data(); - fn test_field_data_off() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(data_off) - ) - ); - } - test_field_data_off(); - fn test_field_nb_segs() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize - }, - 22usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(nb_segs) - ) - ); - } - test_field_nb_segs(); - fn test_field_port() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).port) as usize - ptr as usize - }, - 23usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(port) - ) - ); - } - test_field_port(); - fn test_field_ol_flags() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(ol_flags) - ) - ); - } - test_field_ol_flags(); - fn test_field_rx_descriptor_fields1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_descriptor_fields1) as usize - - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(rx_descriptor_fields1) - ) - ); - } - test_field_rx_descriptor_fields1(); - fn test_field_pkt_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(pkt_len) - ) - ); - } - test_field_pkt_len(); - fn test_field_data_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(data_len) - ) - ); - } - test_field_data_len(); - fn test_field_vlan_tci() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci) as usize - ptr as usize - }, - 42usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(vlan_tci) - ) - ); - } - test_field_vlan_tci(); - fn test_field_hash() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hash) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(hash) - ) - ); - } - test_field_hash(); - fn test_field_seqn() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).seqn) as usize - ptr as usize - }, - 52usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(seqn) - ) - ); - } - test_field_seqn(); - fn test_field_vlan_tci_outer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci_outer) as usize - - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(vlan_tci_outer) - ) - ); - } - test_field_vlan_tci_outer(); - fn test_field_cacheline1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cacheline1) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(cacheline1) - ) - ); - } - test_field_cacheline1(); - fn test_field_pool() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(pool) - ) - ); - } - test_field_pool(); - fn test_field_next() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(next) - ) - ); - } - test_field_next(); - fn test_field_priv_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).priv_size) as usize - ptr as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(priv_size) - ) - ); - } - test_field_priv_size(); - fn test_field_timesync() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).timesync) as usize - ptr as usize - }, - 98usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(timesync) - ) - ); - } - test_field_timesync(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).cacheline0) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(cacheline0) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_physaddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).buf_len) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rearm_data) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(rearm_data) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(data_off) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(nb_segs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).port) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(port) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(ol_flags) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rx_descriptor_fields1) as usize - + ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(rx_descriptor_fields1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(pkt_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(data_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci) as usize - ptr as usize + }, + 42usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(vlan_tci) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hash) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(hash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).seqn) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(seqn) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci_outer) as usize - ptr as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(vlan_tci_outer) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).cacheline1) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(cacheline1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(pool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(next) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).priv_size) as usize - ptr as usize + }, + 96usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(priv_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).timesync) as usize - ptr as usize + }, + 98usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(timesync) + ) + ); } impl Default for rte_mbuf { fn default() -> Self { diff --git a/tests/expectations/tests/layout_mbuf_1_0.rs b/tests/expectations/tests/layout_mbuf_1_0.rs index b9fddeb3..90f7ed09 100644 --- a/tests/expectations/tests/layout_mbuf_1_0.rs +++ b/tests/expectations/tests/layout_mbuf_1_0.rs @@ -149,6 +149,9 @@ pub struct rte_atomic16_t { } #[test] fn bindgen_test_layout_rte_atomic16_t() { + const UNINIT: ::std::mem::MaybeUninit<rte_atomic16_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_atomic16_t>(), 2usize, @@ -159,24 +162,16 @@ fn bindgen_test_layout_rte_atomic16_t() { 2usize, concat!("Alignment of ", stringify!(rte_atomic16_t)) ); - fn test_field_cnt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_atomic16_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cnt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_atomic16_t), - "::", - stringify!(cnt) - ) - ); - } - test_field_cnt(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cnt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_atomic16_t), + "::", + stringify!(cnt) + ) + ); } impl Clone for rte_atomic16_t { fn clone(&self) -> Self { @@ -247,6 +242,9 @@ pub struct rte_mbuf__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_1>(), 2usize, @@ -257,43 +255,28 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_1)) ); - fn test_field_refcnt_atomic() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).refcnt_atomic) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_1), - "::", - stringify!(refcnt_atomic) - ) - ); - } - test_field_refcnt_atomic(); - fn test_field_refcnt() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).refcnt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_1), - "::", - stringify!(refcnt) - ) - ); - } - test_field_refcnt(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).refcnt_atomic) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_1), + "::", + stringify!(refcnt_atomic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).refcnt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_1), + "::", + stringify!(refcnt) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_1 { fn clone(&self) -> Self { @@ -480,6 +463,9 @@ impl rte_mbuf__bindgen_ty_2__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_2>(), 4usize, @@ -490,24 +476,18 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_2)) ); - fn test_field_packet_type() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).packet_type) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_2), - "::", - stringify!(packet_type) - ) - ); - } - test_field_packet_type(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).packet_type) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_2), + "::", + stringify!(packet_type) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_2 { fn clone(&self) -> Self { @@ -551,16 +531,14 @@ pub struct rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1( ) { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq ! (:: std :: mem :: size_of :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))); assert_eq ! (:: std :: mem :: align_of :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))); - fn test_field_hash() { - assert_eq ! (unsafe { let uninit = :: std :: mem :: MaybeUninit :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > :: uninit () ; let ptr = uninit . as_ptr () ; :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (hash))); - } - test_field_hash(); - fn test_field_id() { - assert_eq ! (unsafe { let uninit = :: std :: mem :: MaybeUninit :: < rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > :: uninit () ; let ptr = uninit . as_ptr () ; :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (id))); - } - test_field_id(); + assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (hash))); + assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (id))); } impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 @@ -571,6 +549,10 @@ impl Clone } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1>( ), @@ -590,25 +572,16 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1) ) ); - fn test_field_lo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(lo) - ) - ); - } - test_field_lo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(lo) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -617,6 +590,10 @@ impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_1, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_1>(), 8usize, @@ -633,25 +610,16 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_1() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1) ) ); - fn test_field_hi() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1), - "::", - stringify!(hi) - ) - ); - } - test_field_hi(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_1), + "::", + stringify!(hi) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_1 { fn clone(&self) -> Self { @@ -666,6 +634,10 @@ pub struct rte_mbuf__bindgen_ty_3__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit< + rte_mbuf__bindgen_ty_3__bindgen_ty_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3__bindgen_ty_2>(), 8usize, @@ -682,44 +654,26 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3__bindgen_ty_2() { stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2) ) ); - fn test_field_lo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), - "::", - stringify!(lo) - ) - ); - } - test_field_lo(); - fn test_field_hi() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - rte_mbuf__bindgen_ty_3__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), - "::", - stringify!(hi) - ) - ); - } - test_field_hi(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), + "::", + stringify!(lo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hi) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3__bindgen_ty_2), + "::", + stringify!(hi) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_2 { fn clone(&self) -> Self { @@ -728,6 +682,9 @@ impl Clone for rte_mbuf__bindgen_ty_3__bindgen_ty_2 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_3() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_3> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_3>(), 8usize, @@ -738,78 +695,46 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_3() { 4usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_3)) ); - fn test_field_rss() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rss) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(rss) - ) - ); - } - test_field_rss(); - fn test_field_fdir() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).fdir) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(fdir) - ) - ); - } - test_field_fdir(); - fn test_field_sched() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sched) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(sched) - ) - ); - } - test_field_sched(); - fn test_field_usr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).usr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_3), - "::", - stringify!(usr) - ) - ); - } - test_field_usr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rss) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(rss) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fdir) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(fdir) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sched) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(sched) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).usr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_3), + "::", + stringify!(usr) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_3 { fn clone(&self) -> Self { @@ -827,6 +752,9 @@ pub struct rte_mbuf__bindgen_ty_4 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_4() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_4> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_4>(), 8usize, @@ -837,42 +765,28 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_4() { 8usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_4)) ); - fn test_field_userdata() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).userdata) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_4), - "::", - stringify!(userdata) - ) - ); - } - test_field_userdata(); - fn test_field_udata64() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_4>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).udata64) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_4), - "::", - stringify!(udata64) - ) - ); - } - test_field_udata64(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).userdata) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_4), + "::", + stringify!(userdata) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).udata64) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_4), + "::", + stringify!(udata64) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_4 { fn clone(&self) -> Self { @@ -1040,6 +954,9 @@ impl rte_mbuf__bindgen_ty_5__bindgen_ty_1 { } #[test] fn bindgen_test_layout_rte_mbuf__bindgen_ty_5() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf__bindgen_ty_5> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf__bindgen_ty_5>(), 8usize, @@ -1050,24 +967,18 @@ fn bindgen_test_layout_rte_mbuf__bindgen_ty_5() { 8usize, concat!("Alignment of ", stringify!(rte_mbuf__bindgen_ty_5)) ); - fn test_field_tx_offload() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<rte_mbuf__bindgen_ty_5>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tx_offload) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf__bindgen_ty_5), - "::", - stringify!(tx_offload) - ) - ); - } - test_field_tx_offload(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).tx_offload) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf__bindgen_ty_5), + "::", + stringify!(tx_offload) + ) + ); } impl Clone for rte_mbuf__bindgen_ty_5 { fn clone(&self) -> Self { @@ -1076,371 +987,251 @@ impl Clone for rte_mbuf__bindgen_ty_5 { } #[test] fn bindgen_test_layout_rte_mbuf() { + const UNINIT: ::std::mem::MaybeUninit<rte_mbuf> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_mbuf>(), 128usize, concat!("Size of: ", stringify!(rte_mbuf)) ); - fn test_field_cacheline0() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cacheline0) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(cacheline0) - ) - ); - } - test_field_cacheline0(); - fn test_field_buf_addr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_addr) - ) - ); - } - test_field_buf_addr(); - fn test_field_buf_physaddr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_physaddr) - ) - ); - } - test_field_buf_physaddr(); - fn test_field_buf_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buf_len) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(buf_len) - ) - ); - } - test_field_buf_len(); - fn test_field_rearm_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rearm_data) as usize - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(rearm_data) - ) - ); - } - test_field_rearm_data(); - fn test_field_data_off() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(data_off) - ) - ); - } - test_field_data_off(); - fn test_field_nb_segs() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize - }, - 22usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(nb_segs) - ) - ); - } - test_field_nb_segs(); - fn test_field_port() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).port) as usize - ptr as usize - }, - 23usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(port) - ) - ); - } - test_field_port(); - fn test_field_ol_flags() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(ol_flags) - ) - ); - } - test_field_ol_flags(); - fn test_field_rx_descriptor_fields1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rx_descriptor_fields1) as usize - - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(rx_descriptor_fields1) - ) - ); - } - test_field_rx_descriptor_fields1(); - fn test_field_pkt_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(pkt_len) - ) - ); - } - test_field_pkt_len(); - fn test_field_data_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(data_len) - ) - ); - } - test_field_data_len(); - fn test_field_vlan_tci() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci) as usize - ptr as usize - }, - 42usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(vlan_tci) - ) - ); - } - test_field_vlan_tci(); - fn test_field_hash() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).hash) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(hash) - ) - ); - } - test_field_hash(); - fn test_field_seqn() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).seqn) as usize - ptr as usize - }, - 52usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(seqn) - ) - ); - } - test_field_seqn(); - fn test_field_vlan_tci_outer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).vlan_tci_outer) as usize - - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(vlan_tci_outer) - ) - ); - } - test_field_vlan_tci_outer(); - fn test_field_cacheline1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cacheline1) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(cacheline1) - ) - ); - } - test_field_cacheline1(); - fn test_field_pool() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(pool) - ) - ); - } - test_field_pool(); - fn test_field_next() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(next) - ) - ); - } - test_field_next(); - fn test_field_priv_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).priv_size) as usize - ptr as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(priv_size) - ) - ); - } - test_field_priv_size(); - fn test_field_timesync() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_mbuf>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).timesync) as usize - ptr as usize - }, - 98usize, - concat!( - "Offset of field: ", - stringify!(rte_mbuf), - "::", - stringify!(timesync) - ) - ); - } - test_field_timesync(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).cacheline0) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(cacheline0) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_addr) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_addr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).buf_physaddr) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_physaddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).buf_len) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(buf_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rearm_data) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(rearm_data) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_off) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(data_off) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nb_segs) as usize - ptr as usize }, + 22usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(nb_segs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).port) as usize - ptr as usize }, + 23usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(port) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).ol_flags) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(ol_flags) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).rx_descriptor_fields1) as usize - + ptr as usize + }, + 32usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(rx_descriptor_fields1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pkt_len) as usize - ptr as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(pkt_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).data_len) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(data_len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci) as usize - ptr as usize + }, + 42usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(vlan_tci) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).hash) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(hash) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).seqn) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(seqn) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).vlan_tci_outer) as usize - ptr as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(vlan_tci_outer) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).cacheline1) as usize - ptr as usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(cacheline1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pool) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(pool) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(next) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).priv_size) as usize - ptr as usize + }, + 96usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(priv_size) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).timesync) as usize - ptr as usize + }, + 98usize, + concat!( + "Offset of field: ", + stringify!(rte_mbuf), + "::", + stringify!(timesync) + ) + ); } impl Default for rte_mbuf { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-5/call-conv-field.rs b/tests/expectations/tests/libclang-5/call-conv-field.rs index f83181ea..62b5ace2 100644 --- a/tests/expectations/tests/libclang-5/call-conv-field.rs +++ b/tests/expectations/tests/libclang-5/call-conv-field.rs @@ -18,6 +18,9 @@ pub struct JNINativeInterface_ { } #[test] fn bindgen_test_layout_JNINativeInterface_() { + const UNINIT: ::std::mem::MaybeUninit<JNINativeInterface_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<JNINativeInterface_>(), 16usize, @@ -28,42 +31,28 @@ fn bindgen_test_layout_JNINativeInterface_() { 8usize, concat!("Alignment of ", stringify!(JNINativeInterface_)) ); - fn test_field_GetVersion() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JNINativeInterface_>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).GetVersion) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(JNINativeInterface_), - "::", - stringify!(GetVersion) - ) - ); - } - test_field_GetVersion(); - fn test_field___hack() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JNINativeInterface_>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).__hack) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(JNINativeInterface_), - "::", - stringify!(__hack) - ) - ); - } - test_field___hack(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).GetVersion) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(JNINativeInterface_), + "::", + stringify!(GetVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__hack) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(JNINativeInterface_), + "::", + stringify!(__hack) + ) + ); } extern "stdcall" { pub fn bar(); diff --git a/tests/expectations/tests/libclang-5/type_alias_template_specialized.rs b/tests/expectations/tests/libclang-5/type_alias_template_specialized.rs index 213d4cd6..19f8881d 100644 --- a/tests/expectations/tests/libclang-5/type_alias_template_specialized.rs +++ b/tests/expectations/tests/libclang-5/type_alias_template_specialized.rs @@ -12,6 +12,9 @@ pub struct Rooted { } #[test] fn bindgen_test_layout_Rooted() { + const UNINIT: ::std::mem::MaybeUninit<Rooted> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Rooted>(), 4usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_Rooted() { 4usize, concat!("Alignment of ", stringify!(Rooted)) ); - fn test_field_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Rooted>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rooted), - "::", - stringify!(ptr) - ) - ); - } - test_field_ptr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Rooted), + "::", + stringify!(ptr) + ) + ); } impl Default for Rooted { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-9/call-conv-field.rs b/tests/expectations/tests/libclang-9/call-conv-field.rs index f83181ea..62b5ace2 100644 --- a/tests/expectations/tests/libclang-9/call-conv-field.rs +++ b/tests/expectations/tests/libclang-9/call-conv-field.rs @@ -18,6 +18,9 @@ pub struct JNINativeInterface_ { } #[test] fn bindgen_test_layout_JNINativeInterface_() { + const UNINIT: ::std::mem::MaybeUninit<JNINativeInterface_> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<JNINativeInterface_>(), 16usize, @@ -28,42 +31,28 @@ fn bindgen_test_layout_JNINativeInterface_() { 8usize, concat!("Alignment of ", stringify!(JNINativeInterface_)) ); - fn test_field_GetVersion() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JNINativeInterface_>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).GetVersion) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(JNINativeInterface_), - "::", - stringify!(GetVersion) - ) - ); - } - test_field_GetVersion(); - fn test_field___hack() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JNINativeInterface_>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).__hack) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(JNINativeInterface_), - "::", - stringify!(__hack) - ) - ); - } - test_field___hack(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).GetVersion) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(JNINativeInterface_), + "::", + stringify!(GetVersion) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__hack) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(JNINativeInterface_), + "::", + stringify!(__hack) + ) + ); } extern "stdcall" { pub fn bar(); diff --git a/tests/expectations/tests/libclang-9/class.rs b/tests/expectations/tests/libclang-9/class.rs index 82ab6806..0d64a9ff 100644 --- a/tests/expectations/tests/libclang-9/class.rs +++ b/tests/expectations/tests/libclang-9/class.rs @@ -43,6 +43,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 40usize, @@ -53,35 +56,23 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(big_array) + ) + ); } impl Default for C { fn default() -> Self { @@ -100,6 +91,9 @@ pub struct C_with_zero_length_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array>(), 40usize, @@ -110,64 +104,41 @@ fn bindgen_test_layout_C_with_zero_length_array() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(zero_length_array) + ) + ); } impl Default for C_with_zero_length_array { fn default() -> Self { @@ -186,6 +157,9 @@ pub struct C_with_zero_length_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_2>(), 4usize, @@ -196,45 +170,29 @@ fn bindgen_test_layout_C_with_zero_length_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] pub struct C_with_incomplete_array { @@ -244,6 +202,9 @@ pub struct C_with_incomplete_array { } #[test] fn bindgen_test_layout_C_with_incomplete_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_incomplete_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_incomplete_array>(), 40usize, @@ -254,64 +215,41 @@ fn bindgen_test_layout_C_with_incomplete_array() { 4usize, concat!("Alignment of ", stringify!(C_with_incomplete_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for C_with_incomplete_array { fn default() -> Self { @@ -330,6 +268,9 @@ pub struct C_with_incomplete_array_2 { } #[test] fn bindgen_test_layout_C_with_incomplete_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_incomplete_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_incomplete_array_2>(), 4usize, @@ -340,41 +281,29 @@ fn bindgen_test_layout_C_with_incomplete_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_incomplete_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < C_with_incomplete_array_2 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < C_with_incomplete_array_2 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array_2), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array_2), + "::", + stringify!(incomplete_array) + ) + ); } #[repr(C)] pub struct C_with_zero_length_array_and_incomplete_array { @@ -385,6 +314,10 @@ pub struct C_with_zero_length_array_and_incomplete_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array() { + const UNINIT: ::std::mem::MaybeUninit< + C_with_zero_length_array_and_incomplete_array, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_and_incomplete_array>(), 40usize, @@ -401,84 +334,54 @@ fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array() { stringify!(C_with_zero_length_array_and_incomplete_array) ) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(zero_length_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for C_with_zero_length_array_and_incomplete_array { fn default() -> Self { @@ -498,6 +401,10 @@ pub struct C_with_zero_length_array_and_incomplete_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array_2() { + const UNINIT: ::std::mem::MaybeUninit< + C_with_zero_length_array_and_incomplete_array_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_and_incomplete_array_2>( ), @@ -516,65 +423,42 @@ fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array_2() { stringify!(C_with_zero_length_array_and_incomplete_array_2) ) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(zero_length_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(incomplete_array) + ) + ); } #[repr(C)] #[derive(Debug, Default, Hash, PartialOrd, Ord, PartialEq, Eq)] @@ -583,6 +467,9 @@ pub struct WithDtor { } #[test] fn bindgen_test_layout_WithDtor() { + const UNINIT: ::std::mem::MaybeUninit<WithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithDtor>(), 4usize, @@ -593,23 +480,16 @@ fn bindgen_test_layout_WithDtor() { 4usize, concat!("Alignment of ", stringify!(WithDtor)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithDtor), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithDtor), + "::", + stringify!(b) + ) + ); } #[repr(C)] pub struct IncompleteArrayNonCopiable { @@ -618,6 +498,9 @@ pub struct IncompleteArrayNonCopiable { } #[test] fn bindgen_test_layout_IncompleteArrayNonCopiable() { + const UNINIT: ::std::mem::MaybeUninit<IncompleteArrayNonCopiable> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<IncompleteArrayNonCopiable>(), 8usize, @@ -628,45 +511,31 @@ fn bindgen_test_layout_IncompleteArrayNonCopiable() { 8usize, concat!("Alignment of ", stringify!(IncompleteArrayNonCopiable)) ); - fn test_field_whatever() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - IncompleteArrayNonCopiable, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(IncompleteArrayNonCopiable), - "::", - stringify!(whatever) - ) - ); - } - test_field_whatever(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - IncompleteArrayNonCopiable, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(IncompleteArrayNonCopiable), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(IncompleteArrayNonCopiable), + "::", + stringify!(whatever) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(IncompleteArrayNonCopiable), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for IncompleteArrayNonCopiable { fn default() -> Self { @@ -685,6 +554,9 @@ pub union Union { } #[test] fn bindgen_test_layout_Union() { + const UNINIT: ::std::mem::MaybeUninit<Union> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Union>(), 4usize, @@ -695,40 +567,16 @@ fn bindgen_test_layout_Union() { 4usize, concat!("Alignment of ", stringify!(Union)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(d) - ) - ); - } - test_field_d(); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(i)) + ); } impl Default for Union { fn default() -> Self { @@ -746,6 +594,9 @@ pub struct WithUnion { } #[test] fn bindgen_test_layout_WithUnion() { + const UNINIT: ::std::mem::MaybeUninit<WithUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithUnion>(), 4usize, @@ -756,23 +607,16 @@ fn bindgen_test_layout_WithUnion() { 4usize, concat!("Alignment of ", stringify!(WithUnion)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithUnion), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithUnion), + "::", + stringify!(data) + ) + ); } impl Default for WithUnion { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-9/class_1_0.rs b/tests/expectations/tests/libclang-9/class_1_0.rs index 604dde7b..e8c2e077 100644 --- a/tests/expectations/tests/libclang-9/class_1_0.rs +++ b/tests/expectations/tests/libclang-9/class_1_0.rs @@ -86,6 +86,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 40usize, @@ -96,35 +99,23 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(big_array) + ) + ); } impl Clone for C { fn clone(&self) -> Self { @@ -153,6 +144,9 @@ pub struct C_with_zero_length_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array>(), 40usize, @@ -163,64 +157,41 @@ fn bindgen_test_layout_C_with_zero_length_array() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_zero_length_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array), + "::", + stringify!(zero_length_array) + ) + ); } impl Default for C_with_zero_length_array { fn default() -> Self { @@ -239,6 +210,9 @@ pub struct C_with_zero_length_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_zero_length_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_2>(), 4usize, @@ -249,45 +223,29 @@ fn bindgen_test_layout_C_with_zero_length_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_zero_length_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_2), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] pub struct C_with_incomplete_array { @@ -297,6 +255,9 @@ pub struct C_with_incomplete_array { } #[test] fn bindgen_test_layout_C_with_incomplete_array() { + const UNINIT: ::std::mem::MaybeUninit<C_with_incomplete_array> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_incomplete_array>(), 40usize, @@ -307,64 +268,41 @@ fn bindgen_test_layout_C_with_incomplete_array() { 4usize, concat!("Alignment of ", stringify!(C_with_incomplete_array)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<C_with_incomplete_array>::uninit( - ); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for C_with_incomplete_array { fn default() -> Self { @@ -383,6 +321,9 @@ pub struct C_with_incomplete_array_2 { } #[test] fn bindgen_test_layout_C_with_incomplete_array_2() { + const UNINIT: ::std::mem::MaybeUninit<C_with_incomplete_array_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_incomplete_array_2>(), 4usize, @@ -393,41 +334,29 @@ fn bindgen_test_layout_C_with_incomplete_array_2() { 4usize, concat!("Alignment of ", stringify!(C_with_incomplete_array_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < C_with_incomplete_array_2 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = :: std :: mem :: MaybeUninit :: < C_with_incomplete_array_2 > :: uninit () ; - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_incomplete_array_2), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_incomplete_array_2), + "::", + stringify!(incomplete_array) + ) + ); } #[repr(C)] pub struct C_with_zero_length_array_and_incomplete_array { @@ -438,6 +367,10 @@ pub struct C_with_zero_length_array_and_incomplete_array { } #[test] fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array() { + const UNINIT: ::std::mem::MaybeUninit< + C_with_zero_length_array_and_incomplete_array, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_and_incomplete_array>(), 40usize, @@ -454,84 +387,54 @@ fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array() { stringify!(C_with_zero_length_array_and_incomplete_array) ) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_big_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(big_array) - ) - ); - } - test_field_big_array(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 37usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).big_array) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(big_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(zero_length_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 37usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for C_with_zero_length_array_and_incomplete_array { fn default() -> Self { @@ -551,6 +454,10 @@ pub struct C_with_zero_length_array_and_incomplete_array_2 { } #[test] fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array_2() { + const UNINIT: ::std::mem::MaybeUninit< + C_with_zero_length_array_and_incomplete_array_2, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C_with_zero_length_array_and_incomplete_array_2>( ), @@ -569,65 +476,42 @@ fn bindgen_test_layout_C_with_zero_length_array_and_incomplete_array_2() { stringify!(C_with_zero_length_array_and_incomplete_array_2) ) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - C_with_zero_length_array_and_incomplete_array_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C_with_zero_length_array_and_incomplete_array_2), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(zero_length_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C_with_zero_length_array_and_incomplete_array_2), + "::", + stringify!(incomplete_array) + ) + ); } #[repr(C)] #[derive(Debug, Default, Hash, PartialEq, Eq)] @@ -636,6 +520,9 @@ pub struct WithDtor { } #[test] fn bindgen_test_layout_WithDtor() { + const UNINIT: ::std::mem::MaybeUninit<WithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithDtor>(), 4usize, @@ -646,23 +533,16 @@ fn bindgen_test_layout_WithDtor() { 4usize, concat!("Alignment of ", stringify!(WithDtor)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithDtor), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithDtor), + "::", + stringify!(b) + ) + ); } #[repr(C)] pub struct IncompleteArrayNonCopiable { @@ -671,6 +551,9 @@ pub struct IncompleteArrayNonCopiable { } #[test] fn bindgen_test_layout_IncompleteArrayNonCopiable() { + const UNINIT: ::std::mem::MaybeUninit<IncompleteArrayNonCopiable> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<IncompleteArrayNonCopiable>(), 8usize, @@ -681,45 +564,31 @@ fn bindgen_test_layout_IncompleteArrayNonCopiable() { 8usize, concat!("Alignment of ", stringify!(IncompleteArrayNonCopiable)) ); - fn test_field_whatever() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - IncompleteArrayNonCopiable, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(IncompleteArrayNonCopiable), - "::", - stringify!(whatever) - ) - ); - } - test_field_whatever(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - IncompleteArrayNonCopiable, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(IncompleteArrayNonCopiable), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(IncompleteArrayNonCopiable), + "::", + stringify!(whatever) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(IncompleteArrayNonCopiable), + "::", + stringify!(incomplete_array) + ) + ); } impl Default for IncompleteArrayNonCopiable { fn default() -> Self { @@ -739,6 +608,9 @@ pub struct Union { } #[test] fn bindgen_test_layout_Union() { + const UNINIT: ::std::mem::MaybeUninit<Union> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Union>(), 4usize, @@ -749,40 +621,16 @@ fn bindgen_test_layout_Union() { 4usize, concat!("Alignment of ", stringify!(Union)) ); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(d) - ) - ); - } - test_field_d(); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Union>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Union), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Union), "::", stringify!(i)) + ); } impl Clone for Union { fn clone(&self) -> Self { @@ -796,6 +644,9 @@ pub struct WithUnion { } #[test] fn bindgen_test_layout_WithUnion() { + const UNINIT: ::std::mem::MaybeUninit<WithUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithUnion>(), 4usize, @@ -806,23 +657,16 @@ fn bindgen_test_layout_WithUnion() { 4usize, concat!("Alignment of ", stringify!(WithUnion)) ); - fn test_field_data() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithUnion), - "::", - stringify!(data) - ) - ); - } - test_field_data(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithUnion), + "::", + stringify!(data) + ) + ); } impl Clone for WithUnion { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/libclang-9/derive-hash-struct-with-incomplete-array.rs b/tests/expectations/tests/libclang-9/derive-hash-struct-with-incomplete-array.rs index 2365d9a3..2af22cc4 100644 --- a/tests/expectations/tests/libclang-9/derive-hash-struct-with-incomplete-array.rs +++ b/tests/expectations/tests/libclang-9/derive-hash-struct-with-incomplete-array.rs @@ -43,6 +43,9 @@ pub struct test { } #[test] fn bindgen_test_layout_test() { + const UNINIT: ::std::mem::MaybeUninit<test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<test>(), 4usize, @@ -53,36 +56,24 @@ fn bindgen_test_layout_test() { 4usize, concat!("Alignment of ", stringify!(test)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(test), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(test), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(test), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(test), + "::", + stringify!(zero_length_array) + ) + ); } #[repr(C)] #[derive(Debug, Default)] @@ -92,6 +83,9 @@ pub struct test2 { } #[test] fn bindgen_test_layout_test2() { + const UNINIT: ::std::mem::MaybeUninit<test2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<test2>(), 4usize, @@ -102,41 +96,24 @@ fn bindgen_test_layout_test2() { 4usize, concat!("Alignment of ", stringify!(test2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(test2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(test2), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(test2), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(test2), + "::", + stringify!(incomplete_array) + ) + ); } #[repr(C)] #[derive(Debug, Default)] @@ -147,6 +124,9 @@ pub struct test3 { } #[test] fn bindgen_test_layout_test3() { + const UNINIT: ::std::mem::MaybeUninit<test3> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<test3>(), 4usize, @@ -157,57 +137,35 @@ fn bindgen_test_layout_test3() { 4usize, concat!("Alignment of ", stringify!(test3)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(test3), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_zero_length_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(test3), - "::", - stringify!(zero_length_array) - ) - ); - } - test_field_zero_length_array(); - fn test_field_incomplete_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<test3>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(test3), - "::", - stringify!(incomplete_array) - ) - ); - } - test_field_incomplete_array(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(test3), "::", stringify!(a)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).zero_length_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(test3), + "::", + stringify!(zero_length_array) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).incomplete_array) as usize - + ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(test3), + "::", + stringify!(incomplete_array) + ) + ); } diff --git a/tests/expectations/tests/libclang-9/incomplete-array-padding.rs b/tests/expectations/tests/libclang-9/incomplete-array-padding.rs index d796cc60..1de963bf 100644 --- a/tests/expectations/tests/libclang-9/incomplete-array-padding.rs +++ b/tests/expectations/tests/libclang-9/incomplete-array-padding.rs @@ -130,6 +130,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -140,18 +143,11 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-9/issue-643-inner-struct.rs b/tests/expectations/tests/libclang-9/issue-643-inner-struct.rs index 53f12548..ab402cfb 100644 --- a/tests/expectations/tests/libclang-9/issue-643-inner-struct.rs +++ b/tests/expectations/tests/libclang-9/issue-643-inner-struct.rs @@ -50,6 +50,9 @@ pub struct rte_ring_prod { } #[test] fn bindgen_test_layout_rte_ring_prod() { + const UNINIT: ::std::mem::MaybeUninit<rte_ring_prod> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ring_prod>(), 4usize, @@ -60,23 +63,18 @@ fn bindgen_test_layout_rte_ring_prod() { 4usize, concat!("Alignment of ", stringify!(rte_ring_prod)) ); - fn test_field_watermark() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring_prod>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).watermark) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ring_prod), - "::", - stringify!(watermark) - ) - ); - } - test_field_watermark(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).watermark) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ring_prod), + "::", + stringify!(watermark) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -85,6 +83,9 @@ pub struct rte_ring_cons { } #[test] fn bindgen_test_layout_rte_ring_cons() { + const UNINIT: ::std::mem::MaybeUninit<rte_ring_cons> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ring_cons>(), 4usize, @@ -95,26 +96,24 @@ fn bindgen_test_layout_rte_ring_cons() { 4usize, concat!("Alignment of ", stringify!(rte_ring_cons)) ); - fn test_field_sc_dequeue() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring_cons>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).sc_dequeue) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ring_cons), - "::", - stringify!(sc_dequeue) - ) - ); - } - test_field_sc_dequeue(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).sc_dequeue) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ring_cons), + "::", + stringify!(sc_dequeue) + ) + ); } #[test] fn bindgen_test_layout_rte_ring() { + const UNINIT: ::std::mem::MaybeUninit<rte_ring> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_ring>(), 16usize, @@ -125,74 +124,46 @@ fn bindgen_test_layout_rte_ring() { 8usize, concat!("Alignment of ", stringify!(rte_ring)) ); - fn test_field_memzone() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).memzone) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_ring), - "::", - stringify!(memzone) - ) - ); - } - test_field_memzone(); - fn test_field_prod() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).prod) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_ring), - "::", - stringify!(prod) - ) - ); - } - test_field_prod(); - fn test_field_cons() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cons) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(rte_ring), - "::", - stringify!(cons) - ) - ); - } - test_field_cons(); - fn test_field_ring() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_ring>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ring) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_ring), - "::", - stringify!(ring) - ) - ); - } - test_field_ring(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).memzone) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_ring), + "::", + stringify!(memzone) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).prod) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_ring), + "::", + stringify!(prod) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cons) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(rte_ring), + "::", + stringify!(cons) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ring) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_ring), + "::", + stringify!(ring) + ) + ); } impl Default for rte_ring { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-9/layout_align.rs b/tests/expectations/tests/libclang-9/layout_align.rs index 2ecbb6f9..f6a32704 100644 --- a/tests/expectations/tests/libclang-9/layout_align.rs +++ b/tests/expectations/tests/libclang-9/layout_align.rs @@ -137,6 +137,9 @@ pub struct rte_kni_fifo { } #[test] fn bindgen_test_layout_rte_kni_fifo() { + const UNINIT: ::std::mem::MaybeUninit<rte_kni_fifo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_kni_fifo>(), 16usize, @@ -147,91 +150,58 @@ fn bindgen_test_layout_rte_kni_fifo() { 8usize, concat!("Alignment of ", stringify!(rte_kni_fifo)) ); - fn test_field_write() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_fifo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).write) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_fifo), - "::", - stringify!(write) - ) - ); - } - test_field_write(); - fn test_field_read() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_fifo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).read) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_fifo), - "::", - stringify!(read) - ) - ); - } - test_field_read(); - fn test_field_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_fifo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_fifo), - "::", - stringify!(len) - ) - ); - } - test_field_len(); - fn test_field_elem_size() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_fifo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).elem_size) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_fifo), - "::", - stringify!(elem_size) - ) - ); - } - test_field_elem_size(); - fn test_field_buffer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_kni_fifo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).buffer) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(rte_kni_fifo), - "::", - stringify!(buffer) - ) - ); - } - test_field_buffer(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).write) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_fifo), + "::", + stringify!(write) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).read) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_fifo), + "::", + stringify!(read) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_fifo), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).elem_size) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_fifo), + "::", + stringify!(elem_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).buffer) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(rte_kni_fifo), + "::", + stringify!(buffer) + ) + ); } impl Default for rte_kni_fifo { fn default() -> Self { @@ -254,6 +224,9 @@ pub struct rte_eth_link { } #[test] fn bindgen_test_layout_rte_eth_link() { + const UNINIT: ::std::mem::MaybeUninit<rte_eth_link> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<rte_eth_link>(), 8usize, @@ -264,23 +237,18 @@ fn bindgen_test_layout_rte_eth_link() { 8usize, concat!("Alignment of ", stringify!(rte_eth_link)) ); - fn test_field_link_speed() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<rte_eth_link>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).link_speed) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(rte_eth_link), - "::", - stringify!(link_speed) - ) - ); - } - test_field_link_speed(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).link_speed) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(rte_eth_link), + "::", + stringify!(link_speed) + ) + ); } impl rte_eth_link { #[inline] diff --git a/tests/expectations/tests/libclang-9/type_alias_template_specialized.rs b/tests/expectations/tests/libclang-9/type_alias_template_specialized.rs index 213d4cd6..19f8881d 100644 --- a/tests/expectations/tests/libclang-9/type_alias_template_specialized.rs +++ b/tests/expectations/tests/libclang-9/type_alias_template_specialized.rs @@ -12,6 +12,9 @@ pub struct Rooted { } #[test] fn bindgen_test_layout_Rooted() { + const UNINIT: ::std::mem::MaybeUninit<Rooted> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Rooted>(), 4usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_Rooted() { 4usize, concat!("Alignment of ", stringify!(Rooted)) ); - fn test_field_ptr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Rooted>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Rooted), - "::", - stringify!(ptr) - ) - ); - } - test_field_ptr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Rooted), + "::", + stringify!(ptr) + ) + ); } impl Default for Rooted { fn default() -> Self { diff --git a/tests/expectations/tests/libclang-9/zero-sized-array.rs b/tests/expectations/tests/libclang-9/zero-sized-array.rs index 185b8e21..3066fac4 100644 --- a/tests/expectations/tests/libclang-9/zero-sized-array.rs +++ b/tests/expectations/tests/libclang-9/zero-sized-array.rs @@ -43,6 +43,9 @@ pub struct ZeroSizedArray { } #[test] fn bindgen_test_layout_ZeroSizedArray() { + const UNINIT: ::std::mem::MaybeUninit<ZeroSizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ZeroSizedArray>(), 0usize, @@ -53,24 +56,16 @@ fn bindgen_test_layout_ZeroSizedArray() { 1usize, concat!("Alignment of ", stringify!(ZeroSizedArray)) ); - fn test_field_arr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ZeroSizedArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ZeroSizedArray), - "::", - stringify!(arr) - ) - ); - } - test_field_arr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ZeroSizedArray), + "::", + stringify!(arr) + ) + ); } /// And nor should this get an `_address` field. #[repr(C)] @@ -80,6 +75,9 @@ pub struct ContainsZeroSizedArray { } #[test] fn bindgen_test_layout_ContainsZeroSizedArray() { + const UNINIT: ::std::mem::MaybeUninit<ContainsZeroSizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsZeroSizedArray>(), 0usize, @@ -90,24 +88,16 @@ fn bindgen_test_layout_ContainsZeroSizedArray() { 1usize, concat!("Alignment of ", stringify!(ContainsZeroSizedArray)) ); - fn test_field_zsa() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsZeroSizedArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zsa) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsZeroSizedArray), - "::", - stringify!(zsa) - ) - ); - } - test_field_zsa(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).zsa) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsZeroSizedArray), + "::", + stringify!(zsa) + ) + ); } /// Inheriting from ZeroSizedArray shouldn't cause an `_address` to be inserted /// either. @@ -137,6 +127,9 @@ pub struct DynamicallySizedArray { } #[test] fn bindgen_test_layout_DynamicallySizedArray() { + const UNINIT: ::std::mem::MaybeUninit<DynamicallySizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<DynamicallySizedArray>(), 0usize, @@ -147,24 +140,16 @@ fn bindgen_test_layout_DynamicallySizedArray() { 1usize, concat!("Alignment of ", stringify!(DynamicallySizedArray)) ); - fn test_field_arr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<DynamicallySizedArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(DynamicallySizedArray), - "::", - stringify!(arr) - ) - ); - } - test_field_arr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(DynamicallySizedArray), + "::", + stringify!(arr) + ) + ); } /// No `_address` field here either. #[repr(C)] @@ -174,6 +159,9 @@ pub struct ContainsDynamicallySizedArray { } #[test] fn bindgen_test_layout_ContainsDynamicallySizedArray() { + const UNINIT: ::std::mem::MaybeUninit<ContainsDynamicallySizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsDynamicallySizedArray>(), 0usize, @@ -184,23 +172,14 @@ fn bindgen_test_layout_ContainsDynamicallySizedArray() { 1usize, concat!("Alignment of ", stringify!(ContainsDynamicallySizedArray)) ); - fn test_field_dsa() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ContainsDynamicallySizedArray, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).dsa) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsDynamicallySizedArray), - "::", - stringify!(dsa) - ) - ); - } - test_field_dsa(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dsa) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsDynamicallySizedArray), + "::", + stringify!(dsa) + ) + ); } diff --git a/tests/expectations/tests/long_double.rs b/tests/expectations/tests/long_double.rs index 7e2dfd2a..2c3b6c93 100644 --- a/tests/expectations/tests/long_double.rs +++ b/tests/expectations/tests/long_double.rs @@ -13,6 +13,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 16usize, @@ -23,21 +26,9 @@ fn bindgen_test_layout_foo() { 16usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/msvc-no-usr.rs b/tests/expectations/tests/msvc-no-usr.rs index 6e8a98c3..285670ed 100644 --- a/tests/expectations/tests/msvc-no-usr.rs +++ b/tests/expectations/tests/msvc-no-usr.rs @@ -13,6 +13,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 8usize, @@ -23,16 +26,9 @@ fn bindgen_test_layout_A() { 8usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(foo)) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(foo)) + ); } diff --git a/tests/expectations/tests/mutable.rs b/tests/expectations/tests/mutable.rs index feae0609..94c70326 100644 --- a/tests/expectations/tests/mutable.rs +++ b/tests/expectations/tests/mutable.rs @@ -13,6 +13,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 8usize, @@ -23,40 +26,28 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_m_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(m_member) - ) - ); - } - test_field_m_member(); - fn test_field_m_other() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_other) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(m_other) - ) - ); - } - test_field_m_other(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(m_member) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_other) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(m_other) + ) + ); } #[repr(C)] #[derive(Debug, Default)] @@ -65,6 +56,9 @@ pub struct NonCopiable { } #[test] fn bindgen_test_layout_NonCopiable() { + const UNINIT: ::std::mem::MaybeUninit<NonCopiable> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NonCopiable>(), 4usize, @@ -75,23 +69,18 @@ fn bindgen_test_layout_NonCopiable() { 4usize, concat!("Alignment of ", stringify!(NonCopiable)) ); - fn test_field_m_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NonCopiable>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NonCopiable), - "::", - stringify!(m_member) - ) - ); - } - test_field_m_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NonCopiable), + "::", + stringify!(m_member) + ) + ); } #[repr(C)] #[derive(Debug, Default)] @@ -100,6 +89,10 @@ pub struct NonCopiableWithNonCopiableMutableMember { } #[test] fn bindgen_test_layout_NonCopiableWithNonCopiableMutableMember() { + const UNINIT: ::std::mem::MaybeUninit< + NonCopiableWithNonCopiableMutableMember, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NonCopiableWithNonCopiableMutableMember>(), 4usize, @@ -116,23 +109,16 @@ fn bindgen_test_layout_NonCopiableWithNonCopiableMutableMember() { stringify!(NonCopiableWithNonCopiableMutableMember) ) ); - fn test_field_m_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - NonCopiableWithNonCopiableMutableMember, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NonCopiableWithNonCopiableMutableMember), - "::", - stringify!(m_member) - ) - ); - } - test_field_m_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).m_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NonCopiableWithNonCopiableMutableMember), + "::", + stringify!(m_member) + ) + ); } diff --git a/tests/expectations/tests/namespace.rs b/tests/expectations/tests/namespace.rs index 72c17ee6..49c8a7ef 100644 --- a/tests/expectations/tests/namespace.rs +++ b/tests/expectations/tests/namespace.rs @@ -33,6 +33,9 @@ pub mod root { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -43,23 +46,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(A), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(A), + "::", + stringify!(b) + ) + ); } } #[repr(C)] diff --git a/tests/expectations/tests/nested.rs b/tests/expectations/tests/nested.rs index 48061e9b..415a7405 100644 --- a/tests/expectations/tests/nested.rs +++ b/tests/expectations/tests/nested.rs @@ -12,6 +12,9 @@ pub struct Calc { } #[test] fn bindgen_test_layout_Calc() { + const UNINIT: ::std::mem::MaybeUninit<Calc> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Calc>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_Calc() { 4usize, concat!("Alignment of ", stringify!(Calc)) ); - fn test_field_w() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Calc>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).w) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Calc), "::", stringify!(w)) - ); - } - test_field_w(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).w) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Calc), "::", stringify!(w)) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -66,6 +62,9 @@ fn bindgen_test_layout_Test_Size_Dimension() { } #[test] fn bindgen_test_layout_Test_Size() { + const UNINIT: ::std::mem::MaybeUninit<Test_Size> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test_Size>(), 8usize, @@ -76,40 +75,26 @@ fn bindgen_test_layout_Test_Size() { 4usize, concat!("Alignment of ", stringify!(Test_Size)) ); - fn test_field_mWidth() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test_Size>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mWidth) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test_Size), - "::", - stringify!(mWidth) - ) - ); - } - test_field_mWidth(); - fn test_field_mHeight() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test_Size>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mHeight) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Test_Size), - "::", - stringify!(mHeight) - ) - ); - } - test_field_mHeight(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mWidth) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Test_Size), + "::", + stringify!(mWidth) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mHeight) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(Test_Size), + "::", + stringify!(mHeight) + ) + ); } #[test] fn bindgen_test_layout_Test() { diff --git a/tests/expectations/tests/nested_within_namespace.rs b/tests/expectations/tests/nested_within_namespace.rs index 3e6e0466..629c449a 100644 --- a/tests/expectations/tests/nested_within_namespace.rs +++ b/tests/expectations/tests/nested_within_namespace.rs @@ -24,6 +24,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Bar_Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar_Baz>(), 4usize, @@ -34,27 +37,24 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar_Baz)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<Bar_Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar_Baz), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar_Baz), + "::", + stringify!(foo) + ) + ); } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -65,23 +65,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(foo) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -90,6 +85,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz>(), 4usize, @@ -100,23 +98,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Baz)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Baz), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Baz), + "::", + stringify!(baz) + ) + ); } } } diff --git a/tests/expectations/tests/no-comments.rs b/tests/expectations/tests/no-comments.rs index f13b4f8b..a375d8ea 100644 --- a/tests/expectations/tests/no-comments.rs +++ b/tests/expectations/tests/no-comments.rs @@ -12,6 +12,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 4usize, @@ -22,16 +25,9 @@ fn bindgen_test_layout_Foo() { 4usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_s() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Foo), "::", stringify!(s)) - ); - } - test_field_s(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(s)) + ); } diff --git a/tests/expectations/tests/no-derive-debug.rs b/tests/expectations/tests/no-derive-debug.rs index 2aa1c102..c7a6d184 100644 --- a/tests/expectations/tests/no-derive-debug.rs +++ b/tests/expectations/tests/no-derive-debug.rs @@ -21,6 +21,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 8usize, @@ -31,40 +34,16 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(bar), "::", stringify!(foo)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(bar), "::", stringify!(baz)) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/no-derive-default.rs b/tests/expectations/tests/no-derive-default.rs index 6e5efbe6..46b2cb4e 100644 --- a/tests/expectations/tests/no-derive-default.rs +++ b/tests/expectations/tests/no-derive-default.rs @@ -21,6 +21,9 @@ pub struct bar { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 8usize, @@ -31,38 +34,14 @@ fn bindgen_test_layout_bar() { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(bar), "::", stringify!(foo)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(bar), "::", stringify!(baz)) + ); } diff --git a/tests/expectations/tests/no-hash-allowlisted.rs b/tests/expectations/tests/no-hash-allowlisted.rs index 43132cb0..549b72b5 100644 --- a/tests/expectations/tests/no-hash-allowlisted.rs +++ b/tests/expectations/tests/no-hash-allowlisted.rs @@ -12,6 +12,9 @@ pub struct NoHash { } #[test] fn bindgen_test_layout_NoHash() { + const UNINIT: ::std::mem::MaybeUninit<NoHash> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoHash>(), 4usize, @@ -22,21 +25,9 @@ fn bindgen_test_layout_NoHash() { 4usize, concat!("Alignment of ", stringify!(NoHash)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoHash>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoHash), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(NoHash), "::", stringify!(i)) + ); } diff --git a/tests/expectations/tests/no-partialeq-allowlisted.rs b/tests/expectations/tests/no-partialeq-allowlisted.rs index e43e8557..c7895fe6 100644 --- a/tests/expectations/tests/no-partialeq-allowlisted.rs +++ b/tests/expectations/tests/no-partialeq-allowlisted.rs @@ -12,6 +12,9 @@ pub struct NoPartialEq { } #[test] fn bindgen_test_layout_NoPartialEq() { + const UNINIT: ::std::mem::MaybeUninit<NoPartialEq> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoPartialEq>(), 4usize, @@ -22,21 +25,14 @@ fn bindgen_test_layout_NoPartialEq() { 4usize, concat!("Alignment of ", stringify!(NoPartialEq)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoPartialEq>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoPartialEq), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NoPartialEq), + "::", + stringify!(i) + ) + ); } diff --git a/tests/expectations/tests/no-recursive-allowlisting.rs b/tests/expectations/tests/no-recursive-allowlisting.rs index 197b099d..6f1e19ba 100644 --- a/tests/expectations/tests/no-recursive-allowlisting.rs +++ b/tests/expectations/tests/no-recursive-allowlisting.rs @@ -14,6 +14,9 @@ pub struct Foo { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 8usize, @@ -24,23 +27,11 @@ fn bindgen_test_layout_Foo() { 8usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Foo), "::", stringify!(baz)) + ); } impl Default for Foo { fn default() -> Self { diff --git a/tests/expectations/tests/no-std.rs b/tests/expectations/tests/no-std.rs index f3157bbe..457242c2 100644 --- a/tests/expectations/tests/no-std.rs +++ b/tests/expectations/tests/no-std.rs @@ -19,6 +19,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::core::mem::MaybeUninit<foo> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<foo>(), 16usize, @@ -29,47 +32,21 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/no_copy_allowlisted.rs b/tests/expectations/tests/no_copy_allowlisted.rs index ae086d21..1c46de75 100644 --- a/tests/expectations/tests/no_copy_allowlisted.rs +++ b/tests/expectations/tests/no_copy_allowlisted.rs @@ -12,6 +12,9 @@ pub struct NoCopy { } #[test] fn bindgen_test_layout_NoCopy() { + const UNINIT: ::std::mem::MaybeUninit<NoCopy> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoCopy>(), 4usize, @@ -22,21 +25,9 @@ fn bindgen_test_layout_NoCopy() { 4usize, concat!("Alignment of ", stringify!(NoCopy)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoCopy>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoCopy), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(NoCopy), "::", stringify!(i)) + ); } diff --git a/tests/expectations/tests/no_debug_allowlisted.rs b/tests/expectations/tests/no_debug_allowlisted.rs index 9f070d24..859dad8c 100644 --- a/tests/expectations/tests/no_debug_allowlisted.rs +++ b/tests/expectations/tests/no_debug_allowlisted.rs @@ -12,6 +12,9 @@ pub struct NoDebug { } #[test] fn bindgen_test_layout_NoDebug() { + const UNINIT: ::std::mem::MaybeUninit<NoDebug> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoDebug>(), 4usize, @@ -22,21 +25,14 @@ fn bindgen_test_layout_NoDebug() { 4usize, concat!("Alignment of ", stringify!(NoDebug)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoDebug>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoDebug), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NoDebug), + "::", + stringify!(i) + ) + ); } diff --git a/tests/expectations/tests/no_default_allowlisted.rs b/tests/expectations/tests/no_default_allowlisted.rs index 07e01b72..c4deceb4 100644 --- a/tests/expectations/tests/no_default_allowlisted.rs +++ b/tests/expectations/tests/no_default_allowlisted.rs @@ -12,6 +12,9 @@ pub struct NoDefault { } #[test] fn bindgen_test_layout_NoDefault() { + const UNINIT: ::std::mem::MaybeUninit<NoDefault> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NoDefault>(), 4usize, @@ -22,21 +25,14 @@ fn bindgen_test_layout_NoDefault() { 4usize, concat!("Alignment of ", stringify!(NoDefault)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<NoDefault>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NoDefault), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NoDefault), + "::", + stringify!(i) + ) + ); } diff --git a/tests/expectations/tests/non-type-params.rs b/tests/expectations/tests/non-type-params.rs index f6478528..2b38e216 100644 --- a/tests/expectations/tests/non-type-params.rs +++ b/tests/expectations/tests/non-type-params.rs @@ -16,6 +16,9 @@ pub struct UsesArray { } #[test] fn bindgen_test_layout_UsesArray() { + const UNINIT: ::std::mem::MaybeUninit<UsesArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<UsesArray>(), 40usize, @@ -26,57 +29,40 @@ fn bindgen_test_layout_UsesArray() { 4usize, concat!("Alignment of ", stringify!(UsesArray)) ); - fn test_field_array_char_16() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UsesArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).array_char_16) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(UsesArray), - "::", - stringify!(array_char_16) - ) - ); - } - test_field_array_char_16(); - fn test_field_array_bool_8() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UsesArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).array_bool_8) as usize - - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(UsesArray), - "::", - stringify!(array_bool_8) - ) - ); - } - test_field_array_bool_8(); - fn test_field_array_int_4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UsesArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).array_int_4) as usize - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(UsesArray), - "::", - stringify!(array_int_4) - ) - ); - } - test_field_array_int_4(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).array_char_16) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(UsesArray), + "::", + stringify!(array_char_16) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).array_bool_8) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(UsesArray), + "::", + stringify!(array_bool_8) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).array_int_4) as usize - ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(UsesArray), + "::", + stringify!(array_int_4) + ) + ); } diff --git a/tests/expectations/tests/objc_interface_type.rs b/tests/expectations/tests/objc_interface_type.rs index 5cafeede..423ba910 100644 --- a/tests/expectations/tests/objc_interface_type.rs +++ b/tests/expectations/tests/objc_interface_type.rs @@ -33,6 +33,9 @@ pub struct FooStruct { } #[test] fn bindgen_test_layout_FooStruct() { + const UNINIT: ::std::mem::MaybeUninit<FooStruct> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<FooStruct>(), 8usize, @@ -43,23 +46,16 @@ fn bindgen_test_layout_FooStruct() { 8usize, concat!("Alignment of ", stringify!(FooStruct)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<FooStruct>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(FooStruct), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(FooStruct), + "::", + stringify!(foo) + ) + ); } impl Default for FooStruct { fn default() -> Self { diff --git a/tests/expectations/tests/opaque-template-inst-member-2.rs b/tests/expectations/tests/opaque-template-inst-member-2.rs index 391c46d1..c28d9356 100644 --- a/tests/expectations/tests/opaque-template-inst-member-2.rs +++ b/tests/expectations/tests/opaque-template-inst-member-2.rs @@ -21,6 +21,9 @@ pub struct ContainsOpaqueTemplate { } #[test] fn bindgen_test_layout_ContainsOpaqueTemplate() { + const UNINIT: ::std::mem::MaybeUninit<ContainsOpaqueTemplate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsOpaqueTemplate>(), 8usize, @@ -31,42 +34,26 @@ fn bindgen_test_layout_ContainsOpaqueTemplate() { 4usize, concat!("Alignment of ", stringify!(ContainsOpaqueTemplate)) ); - fn test_field_mBlah() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBlah) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueTemplate), - "::", - stringify!(mBlah) - ) - ); - } - test_field_mBlah(); - fn test_field_mBaz() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBaz) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueTemplate), - "::", - stringify!(mBaz) - ) - ); - } - test_field_mBaz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBlah) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueTemplate), + "::", + stringify!(mBlah) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBaz) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueTemplate), + "::", + stringify!(mBaz) + ) + ); } /// Should also derive Debug/Hash/PartialEq. #[repr(C)] @@ -77,6 +64,9 @@ pub struct InheritsOpaqueTemplate { } #[test] fn bindgen_test_layout_InheritsOpaqueTemplate() { + const UNINIT: ::std::mem::MaybeUninit<InheritsOpaqueTemplate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<InheritsOpaqueTemplate>(), 16usize, @@ -87,24 +77,16 @@ fn bindgen_test_layout_InheritsOpaqueTemplate() { 8usize, concat!("Alignment of ", stringify!(InheritsOpaqueTemplate)) ); - fn test_field_wow() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<InheritsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).wow) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(InheritsOpaqueTemplate), - "::", - stringify!(wow) - ) - ); - } - test_field_wow(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wow) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(InheritsOpaqueTemplate), + "::", + stringify!(wow) + ) + ); } impl Default for InheritsOpaqueTemplate { fn default() -> Self { diff --git a/tests/expectations/tests/opaque-template-inst-member.rs b/tests/expectations/tests/opaque-template-inst-member.rs index 09429768..4ba85f66 100644 --- a/tests/expectations/tests/opaque-template-inst-member.rs +++ b/tests/expectations/tests/opaque-template-inst-member.rs @@ -19,6 +19,9 @@ pub struct ContainsOpaqueTemplate { } #[test] fn bindgen_test_layout_ContainsOpaqueTemplate() { + const UNINIT: ::std::mem::MaybeUninit<ContainsOpaqueTemplate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsOpaqueTemplate>(), 408usize, @@ -29,42 +32,26 @@ fn bindgen_test_layout_ContainsOpaqueTemplate() { 4usize, concat!("Alignment of ", stringify!(ContainsOpaqueTemplate)) ); - fn test_field_mBlah() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBlah) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueTemplate), - "::", - stringify!(mBlah) - ) - ); - } - test_field_mBlah(); - fn test_field_mBaz() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBaz) as usize - ptr as usize - }, - 404usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueTemplate), - "::", - stringify!(mBaz) - ) - ); - } - test_field_mBaz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBlah) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueTemplate), + "::", + stringify!(mBlah) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBaz) as usize - ptr as usize }, + 404usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueTemplate), + "::", + stringify!(mBaz) + ) + ); } impl Default for ContainsOpaqueTemplate { fn default() -> Self { @@ -89,6 +76,9 @@ pub struct InheritsOpaqueTemplate { } #[test] fn bindgen_test_layout_InheritsOpaqueTemplate() { + const UNINIT: ::std::mem::MaybeUninit<InheritsOpaqueTemplate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<InheritsOpaqueTemplate>(), 416usize, @@ -99,24 +89,16 @@ fn bindgen_test_layout_InheritsOpaqueTemplate() { 8usize, concat!("Alignment of ", stringify!(InheritsOpaqueTemplate)) ); - fn test_field_wow() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<InheritsOpaqueTemplate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).wow) as usize - ptr as usize - }, - 408usize, - concat!( - "Offset of field: ", - stringify!(InheritsOpaqueTemplate), - "::", - stringify!(wow) - ) - ); - } - test_field_wow(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).wow) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(InheritsOpaqueTemplate), + "::", + stringify!(wow) + ) + ); } impl Default for InheritsOpaqueTemplate { fn default() -> Self { diff --git a/tests/expectations/tests/opaque-template-instantiation-namespaced.rs b/tests/expectations/tests/opaque-template-instantiation-namespaced.rs index 293f2a1b..3575216c 100644 --- a/tests/expectations/tests/opaque-template-instantiation-namespaced.rs +++ b/tests/expectations/tests/opaque-template-instantiation-namespaced.rs @@ -35,6 +35,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Foo() { + const UNINIT: ::std::mem::MaybeUninit<Foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Foo>(), 1usize, @@ -45,23 +48,18 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(Foo)) ); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Foo), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Foo), + "::", + stringify!(c) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -70,6 +68,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -80,23 +81,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_i() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(i) - ) - ); - } - test_field_i(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(i) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -105,6 +101,9 @@ pub mod root { } #[test] fn bindgen_test_layout_ContainsInstantiation() { + const UNINIT: ::std::mem::MaybeUninit<ContainsInstantiation> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsInstantiation>(), 1usize, @@ -115,26 +114,19 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(ContainsInstantiation)) ); - fn test_field_not_opaque() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ContainsInstantiation, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).not_opaque) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsInstantiation), - "::", - stringify!(not_opaque) - ) - ); - } - test_field_not_opaque(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).not_opaque) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsInstantiation), + "::", + stringify!(not_opaque) + ) + ); } impl Default for ContainsInstantiation { fn default() -> Self { @@ -152,6 +144,9 @@ pub mod root { } #[test] fn bindgen_test_layout_ContainsOpaqueInstantiation() { + const UNINIT: ::std::mem::MaybeUninit<ContainsOpaqueInstantiation> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsOpaqueInstantiation>(), 4usize, @@ -165,26 +160,18 @@ pub mod root { stringify!(ContainsOpaqueInstantiation) ) ); - fn test_field_opaque() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ContainsOpaqueInstantiation, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).opaque) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueInstantiation), - "::", - stringify!(opaque) - ) - ); - } - test_field_opaque(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueInstantiation), + "::", + stringify!(opaque) + ) + ); } } #[test] diff --git a/tests/expectations/tests/opaque-template-instantiation.rs b/tests/expectations/tests/opaque-template-instantiation.rs index 9f02920e..910c616f 100644 --- a/tests/expectations/tests/opaque-template-instantiation.rs +++ b/tests/expectations/tests/opaque-template-instantiation.rs @@ -27,6 +27,9 @@ pub struct ContainsInstantiation { } #[test] fn bindgen_test_layout_ContainsInstantiation() { + const UNINIT: ::std::mem::MaybeUninit<ContainsInstantiation> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsInstantiation>(), 1usize, @@ -37,24 +40,18 @@ fn bindgen_test_layout_ContainsInstantiation() { 1usize, concat!("Alignment of ", stringify!(ContainsInstantiation)) ); - fn test_field_not_opaque() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsInstantiation>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).not_opaque) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsInstantiation), - "::", - stringify!(not_opaque) - ) - ); - } - test_field_not_opaque(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).not_opaque) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsInstantiation), + "::", + stringify!(not_opaque) + ) + ); } impl Default for ContainsInstantiation { fn default() -> Self { @@ -72,6 +69,9 @@ pub struct ContainsOpaqueInstantiation { } #[test] fn bindgen_test_layout_ContainsOpaqueInstantiation() { + const UNINIT: ::std::mem::MaybeUninit<ContainsOpaqueInstantiation> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsOpaqueInstantiation>(), 4usize, @@ -82,25 +82,16 @@ fn bindgen_test_layout_ContainsOpaqueInstantiation() { 4usize, concat!("Alignment of ", stringify!(ContainsOpaqueInstantiation)) ); - fn test_field_opaque() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - ContainsOpaqueInstantiation, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsOpaqueInstantiation), - "::", - stringify!(opaque) - ) - ); - } - test_field_opaque(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsOpaqueInstantiation), + "::", + stringify!(opaque) + ) + ); } #[test] fn __bindgen_test_layout_Template_open0_char_close0_instantiation() { diff --git a/tests/expectations/tests/opaque_in_struct.rs b/tests/expectations/tests/opaque_in_struct.rs index 4af91c4f..0d13b121 100644 --- a/tests/expectations/tests/opaque_in_struct.rs +++ b/tests/expectations/tests/opaque_in_struct.rs @@ -32,6 +32,9 @@ pub struct container { } #[test] fn bindgen_test_layout_container() { + const UNINIT: ::std::mem::MaybeUninit<container> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<container>(), 4usize, @@ -42,21 +45,16 @@ fn bindgen_test_layout_container() { 4usize, concat!("Alignment of ", stringify!(container)) ); - fn test_field_contained() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<container>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).contained) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(container), - "::", - stringify!(contained) - ) - ); - } - test_field_contained(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).contained) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(container), + "::", + stringify!(contained) + ) + ); } diff --git a/tests/expectations/tests/opaque_pointer.rs b/tests/expectations/tests/opaque_pointer.rs index 7230c3c0..13b8cc36 100644 --- a/tests/expectations/tests/opaque_pointer.rs +++ b/tests/expectations/tests/opaque_pointer.rs @@ -40,6 +40,9 @@ pub struct WithOpaquePtr { } #[test] fn bindgen_test_layout_WithOpaquePtr() { + const UNINIT: ::std::mem::MaybeUninit<WithOpaquePtr> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithOpaquePtr>(), 16usize, @@ -50,57 +53,38 @@ fn bindgen_test_layout_WithOpaquePtr() { 8usize, concat!("Alignment of ", stringify!(WithOpaquePtr)) ); - fn test_field_whatever() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithOpaquePtr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithOpaquePtr), - "::", - stringify!(whatever) - ) - ); - } - test_field_whatever(); - fn test_field_other() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithOpaquePtr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(WithOpaquePtr), - "::", - stringify!(other) - ) - ); - } - test_field_other(); - fn test_field_t() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithOpaquePtr>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).t) as usize - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(WithOpaquePtr), - "::", - stringify!(t) - ) - ); - } - test_field_t(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).whatever) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithOpaquePtr), + "::", + stringify!(whatever) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(WithOpaquePtr), + "::", + stringify!(other) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).t) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(WithOpaquePtr), + "::", + stringify!(t) + ) + ); } impl Default for WithOpaquePtr { fn default() -> Self { diff --git a/tests/expectations/tests/packed-n-with-padding.rs b/tests/expectations/tests/packed-n-with-padding.rs index 6e749b1b..b171b1da 100644 --- a/tests/expectations/tests/packed-n-with-padding.rs +++ b/tests/expectations/tests/packed-n-with-padding.rs @@ -15,6 +15,9 @@ pub struct Packed { } #[test] fn bindgen_test_layout_Packed() { + const UNINIT: ::std::mem::MaybeUninit<Packed> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Packed>(), 10usize, @@ -25,72 +28,24 @@ fn bindgen_test_layout_Packed() { 2usize, concat!("Alignment of ", stringify!(Packed)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Packed>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Packed), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Packed>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(Packed), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Packed>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Packed), - "::", - stringify!(c) - ) - ); - } - test_field_c(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Packed>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(Packed), - "::", - stringify!(d) - ) - ); - } - test_field_d(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Packed), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 2usize, + concat!("Offset of field: ", stringify!(Packed), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Packed), "::", stringify!(c)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 6usize, + concat!("Offset of field: ", stringify!(Packed), "::", stringify!(d)) + ); } diff --git a/tests/expectations/tests/pointer-attr.rs b/tests/expectations/tests/pointer-attr.rs new file mode 100644 index 00000000..95fe9c5f --- /dev/null +++ b/tests/expectations/tests/pointer-attr.rs @@ -0,0 +1,10 @@ +#![allow( + dead_code, + non_snake_case, + non_camel_case_types, + non_upper_case_globals +)] + +extern "C" { + pub fn a(arg1: *const ::std::os::raw::c_char); +} diff --git a/tests/expectations/tests/private.rs b/tests/expectations/tests/private.rs index 63b56768..ab57d37f 100644 --- a/tests/expectations/tests/private.rs +++ b/tests/expectations/tests/private.rs @@ -14,6 +14,9 @@ pub struct HasPrivate { } #[test] fn bindgen_test_layout_HasPrivate() { + const UNINIT: ::std::mem::MaybeUninit<HasPrivate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<HasPrivate>(), 8usize, @@ -24,40 +27,30 @@ fn bindgen_test_layout_HasPrivate() { 4usize, concat!("Alignment of ", stringify!(HasPrivate)) ); - fn test_field_mNotPrivate() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<HasPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mNotPrivate) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(HasPrivate), - "::", - stringify!(mNotPrivate) - ) - ); - } - test_field_mNotPrivate(); - fn test_field_mIsPrivate() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<HasPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(HasPrivate), - "::", - stringify!(mIsPrivate) - ) - ); - } - test_field_mIsPrivate(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mNotPrivate) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(HasPrivate), + "::", + stringify!(mNotPrivate) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(HasPrivate), + "::", + stringify!(mIsPrivate) + ) + ); } /// <div rustbindgen private></div> #[repr(C)] @@ -68,6 +61,9 @@ pub struct VeryPrivate { } #[test] fn bindgen_test_layout_VeryPrivate() { + const UNINIT: ::std::mem::MaybeUninit<VeryPrivate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<VeryPrivate>(), 8usize, @@ -78,41 +74,30 @@ fn bindgen_test_layout_VeryPrivate() { 4usize, concat!("Alignment of ", stringify!(VeryPrivate)) ); - fn test_field_mIsPrivate() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<VeryPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(VeryPrivate), - "::", - stringify!(mIsPrivate) - ) - ); - } - test_field_mIsPrivate(); - fn test_field_mIsAlsoPrivate() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<VeryPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsAlsoPrivate) as usize - - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(VeryPrivate), - "::", - stringify!(mIsAlsoPrivate) - ) - ); - } - test_field_mIsAlsoPrivate(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(VeryPrivate), + "::", + stringify!(mIsPrivate) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsAlsoPrivate) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(VeryPrivate), + "::", + stringify!(mIsAlsoPrivate) + ) + ); } /// <div rustbindgen private></div> #[repr(C)] @@ -124,6 +109,9 @@ pub struct ContradictPrivate { } #[test] fn bindgen_test_layout_ContradictPrivate() { + const UNINIT: ::std::mem::MaybeUninit<ContradictPrivate> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContradictPrivate>(), 8usize, @@ -134,40 +122,28 @@ fn bindgen_test_layout_ContradictPrivate() { 4usize, concat!("Alignment of ", stringify!(ContradictPrivate)) ); - fn test_field_mNotPrivate() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mNotPrivate) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContradictPrivate), - "::", - stringify!(mNotPrivate) - ) - ); - } - test_field_mNotPrivate(); - fn test_field_mIsPrivate() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContradictPrivate>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ContradictPrivate), - "::", - stringify!(mIsPrivate) - ) - ); - } - test_field_mIsPrivate(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mNotPrivate) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContradictPrivate), + "::", + stringify!(mNotPrivate) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsPrivate) as usize - ptr as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ContradictPrivate), + "::", + stringify!(mIsPrivate) + ) + ); } diff --git a/tests/expectations/tests/private_fields.rs b/tests/expectations/tests/private_fields.rs index bea0fa4c..8db332a5 100644 --- a/tests/expectations/tests/private_fields.rs +++ b/tests/expectations/tests/private_fields.rs @@ -99,6 +99,9 @@ pub struct PubPriv { } #[test] fn bindgen_test_layout_PubPriv() { + const UNINIT: ::std::mem::MaybeUninit<PubPriv> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PubPriv>(), 8usize, @@ -109,40 +112,26 @@ fn bindgen_test_layout_PubPriv() { 4usize, concat!("Alignment of ", stringify!(PubPriv)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PubPriv>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PubPriv), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<PubPriv>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(PubPriv), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PubPriv), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(PubPriv), + "::", + stringify!(y) + ) + ); } #[repr(C)] #[repr(align(4))] @@ -349,6 +338,9 @@ pub struct Base { } #[test] fn bindgen_test_layout_Base() { + const UNINIT: ::std::mem::MaybeUninit<Base> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Base>(), 4usize, @@ -359,23 +351,16 @@ fn bindgen_test_layout_Base() { 4usize, concat!("Alignment of ", stringify!(Base)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Base>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Base), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Base), + "::", + stringify!(member) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -426,6 +411,9 @@ pub struct WithAnonStruct__bindgen_ty_1 { } #[test] fn bindgen_test_layout_WithAnonStruct__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<WithAnonStruct__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithAnonStruct__bindgen_ty_1>(), 4usize, @@ -436,25 +424,16 @@ fn bindgen_test_layout_WithAnonStruct__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(WithAnonStruct__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - WithAnonStruct__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithAnonStruct__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithAnonStruct__bindgen_ty_1), + "::", + stringify!(a) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -463,6 +442,9 @@ pub struct WithAnonStruct__bindgen_ty_2 { } #[test] fn bindgen_test_layout_WithAnonStruct__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<WithAnonStruct__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithAnonStruct__bindgen_ty_2>(), 4usize, @@ -473,25 +455,16 @@ fn bindgen_test_layout_WithAnonStruct__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(WithAnonStruct__bindgen_ty_2)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - WithAnonStruct__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithAnonStruct__bindgen_ty_2), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithAnonStruct__bindgen_ty_2), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_WithAnonStruct() { diff --git a/tests/expectations/tests/reparented_replacement.rs b/tests/expectations/tests/reparented_replacement.rs index f8426c28..d9d13c1a 100644 --- a/tests/expectations/tests/reparented_replacement.rs +++ b/tests/expectations/tests/reparented_replacement.rs @@ -20,6 +20,9 @@ pub mod root { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -30,24 +33,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_bazz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bazz) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(bazz) - ) - ); - } - test_field_bazz(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).bazz) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(bazz) + ) + ); } } pub type ReferencesBar = root::foo::Bar; diff --git a/tests/expectations/tests/replace_use.rs b/tests/expectations/tests/replace_use.rs index 9478801f..d4228e12 100644 --- a/tests/expectations/tests/replace_use.rs +++ b/tests/expectations/tests/replace_use.rs @@ -18,6 +18,9 @@ pub struct Test { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 4usize, @@ -28,18 +31,11 @@ fn bindgen_test_layout_Test() { 4usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(a)) + ); } #[test] fn __bindgen_test_layout_nsTArray_open0_long_close0_instantiation() { diff --git a/tests/expectations/tests/repr-align.rs b/tests/expectations/tests/repr-align.rs index 3f00fce3..c6fee20d 100644 --- a/tests/expectations/tests/repr-align.rs +++ b/tests/expectations/tests/repr-align.rs @@ -15,6 +15,9 @@ pub struct a { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 8usize, @@ -25,30 +28,16 @@ fn bindgen_test_layout_a() { 8usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(c)) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(c)) + ); } #[repr(C)] #[repr(align(8))] @@ -59,6 +48,9 @@ pub struct b { } #[test] fn bindgen_test_layout_b() { + const UNINIT: ::std::mem::MaybeUninit<b> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<b>(), 8usize, @@ -69,28 +61,14 @@ fn bindgen_test_layout_b() { 8usize, concat!("Alignment of ", stringify!(b)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<b>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(b), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<b>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(b), "::", stringify!(c)) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(b), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(b), "::", stringify!(c)) + ); } diff --git a/tests/expectations/tests/same_struct_name_in_different_namespaces.rs b/tests/expectations/tests/same_struct_name_in_different_namespaces.rs index 294861d1..80024761 100644 --- a/tests/expectations/tests/same_struct_name_in_different_namespaces.rs +++ b/tests/expectations/tests/same_struct_name_in_different_namespaces.rs @@ -18,6 +18,9 @@ pub struct JS_shadow_Zone { } #[test] fn bindgen_test_layout_JS_shadow_Zone() { + const UNINIT: ::std::mem::MaybeUninit<JS_shadow_Zone> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<JS_shadow_Zone>(), 8usize, @@ -28,40 +31,24 @@ fn bindgen_test_layout_JS_shadow_Zone() { 4usize, concat!("Alignment of ", stringify!(JS_shadow_Zone)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JS_shadow_Zone>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(JS_shadow_Zone), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<JS_shadow_Zone>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(JS_shadow_Zone), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(JS_shadow_Zone), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(JS_shadow_Zone), + "::", + stringify!(y) + ) + ); } diff --git a/tests/expectations/tests/sentry-defined-multiple-times.rs b/tests/expectations/tests/sentry-defined-multiple-times.rs index bf76d0e1..48f8ca81 100644 --- a/tests/expectations/tests/sentry-defined-multiple-times.rs +++ b/tests/expectations/tests/sentry-defined-multiple-times.rs @@ -29,6 +29,9 @@ pub mod root { } #[test] fn bindgen_test_layout_sentry() { + const UNINIT: ::std::mem::MaybeUninit<sentry> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<sentry>(), 1usize, @@ -39,25 +42,19 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(sentry)) ); - fn test_field_i_am_plain_sentry() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<sentry>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i_am_plain_sentry) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(sentry), - "::", - stringify!(i_am_plain_sentry) - ) - ); - } - test_field_i_am_plain_sentry(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).i_am_plain_sentry) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(sentry), + "::", + stringify!(i_am_plain_sentry) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -84,6 +81,9 @@ pub mod root { } #[test] fn bindgen_test_layout_NotTemplateWrapper_sentry() { + const UNINIT: ::std::mem::MaybeUninit<NotTemplateWrapper_sentry> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<NotTemplateWrapper_sentry>(), 1usize, @@ -94,28 +94,21 @@ pub mod root { 1usize, concat!("Alignment of ", stringify!(NotTemplateWrapper_sentry)) ); - fn test_field_i_am_not_template_wrapper_sentry() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - NotTemplateWrapper_sentry, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!( - (*ptr).i_am_not_template_wrapper_sentry - ) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(NotTemplateWrapper_sentry), - "::", - stringify!(i_am_not_template_wrapper_sentry) - ) - ); - } - test_field_i_am_not_template_wrapper_sentry(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!( + (*ptr).i_am_not_template_wrapper_sentry + ) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(NotTemplateWrapper_sentry), + "::", + stringify!(i_am_not_template_wrapper_sentry) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -129,6 +122,10 @@ pub mod root { } #[test] fn bindgen_test_layout_InlineNotTemplateWrapper_sentry() { + const UNINIT: ::std::mem::MaybeUninit< + InlineNotTemplateWrapper_sentry, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<InlineNotTemplateWrapper_sentry>(), 1usize, @@ -145,28 +142,21 @@ pub mod root { stringify!(InlineNotTemplateWrapper_sentry) ) ); - fn test_field_i_am_inline_not_template_wrapper_sentry() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - InlineNotTemplateWrapper_sentry, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!( - (*ptr).i_am_inline_not_template_wrapper_sentry - ) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(InlineNotTemplateWrapper_sentry), - "::", - stringify!(i_am_inline_not_template_wrapper_sentry) - ) - ); - } - test_field_i_am_inline_not_template_wrapper_sentry(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!( + (*ptr).i_am_inline_not_template_wrapper_sentry + ) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(InlineNotTemplateWrapper_sentry), + "::", + stringify!(i_am_inline_not_template_wrapper_sentry) + ) + ); } #[test] fn bindgen_test_layout_InlineNotTemplateWrapper() { @@ -240,6 +230,10 @@ pub mod root { } #[test] fn bindgen_test_layout_OuterDoubleWrapper_InnerDoubleWrapper_sentry() { + const UNINIT: ::std::mem::MaybeUninit< + OuterDoubleWrapper_InnerDoubleWrapper_sentry, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::< OuterDoubleWrapper_InnerDoubleWrapper_sentry, @@ -260,29 +254,20 @@ pub mod root { stringify!(OuterDoubleWrapper_InnerDoubleWrapper_sentry) ) ); - fn test_field_i_am_double_wrapper_sentry() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - OuterDoubleWrapper_InnerDoubleWrapper_sentry, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i_am_double_wrapper_sentry) - as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!( - OuterDoubleWrapper_InnerDoubleWrapper_sentry - ), - "::", - stringify!(i_am_double_wrapper_sentry) - ) - ); - } - test_field_i_am_double_wrapper_sentry(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).i_am_double_wrapper_sentry) + as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(OuterDoubleWrapper_InnerDoubleWrapper_sentry), + "::", + stringify!(i_am_double_wrapper_sentry) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -302,12 +287,13 @@ pub mod root { #[test] fn bindgen_test_layout_OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry( ) { + const UNINIT: ::std::mem::MaybeUninit< + OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry, + > = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq ! (:: std :: mem :: size_of :: < OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry > () , 4usize , concat ! ("Size of: " , stringify ! (OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry))); assert_eq ! (:: std :: mem :: align_of :: < OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry > () , 4usize , concat ! ("Alignment of " , stringify ! (OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry))); - fn test_field_i_am_double_wrapper_inline_sentry() { - assert_eq ! (unsafe { let uninit = :: std :: mem :: MaybeUninit :: < OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry > :: uninit () ; let ptr = uninit . as_ptr () ; :: std :: ptr :: addr_of ! ((* ptr) . i_am_double_wrapper_inline_sentry) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry) , "::" , stringify ! (i_am_double_wrapper_inline_sentry))); - } - test_field_i_am_double_wrapper_inline_sentry(); + assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . i_am_double_wrapper_inline_sentry) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (OuterDoubleInlineWrapper_InnerDoubleInlineWrapper_sentry) , "::" , stringify ! (i_am_double_wrapper_inline_sentry))); } #[test] fn bindgen_test_layout_OuterDoubleInlineWrapper_InnerDoubleInlineWrapper( @@ -368,6 +354,9 @@ pub mod root { } #[test] fn bindgen_test_layout_sentry() { + const UNINIT: ::std::mem::MaybeUninit<sentry> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<sentry>(), 4usize, @@ -378,24 +367,19 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(sentry)) ); - fn test_field_i_am_outside_namespace_sentry() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<sentry>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).i_am_outside_namespace_sentry) - as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(sentry), - "::", - stringify!(i_am_outside_namespace_sentry) - ) - ); - } - test_field_i_am_outside_namespace_sentry(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).i_am_outside_namespace_sentry) + as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(sentry), + "::", + stringify!(i_am_outside_namespace_sentry) + ) + ); } } diff --git a/tests/expectations/tests/size_t_is_usize.rs b/tests/expectations/tests/size_t_is_usize.rs index f4e4b79b..2397e0a5 100644 --- a/tests/expectations/tests/size_t_is_usize.rs +++ b/tests/expectations/tests/size_t_is_usize.rs @@ -14,6 +14,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 24usize, @@ -24,47 +27,21 @@ fn bindgen_test_layout_A() { 8usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_len() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(len)) - ); - } - test_field_len(); - fn test_field_offset() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(A), - "::", - stringify!(offset) - ) - ); - } - test_field_offset(); - fn test_field_next() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize - }, - 16usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(next)) - ); - } - test_field_next(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(len)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(offset)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize }, + 16usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(next)) + ); } impl Default for A { fn default() -> Self { diff --git a/tests/expectations/tests/size_t_template.rs b/tests/expectations/tests/size_t_template.rs index 3c14d857..1aa8b9ac 100644 --- a/tests/expectations/tests/size_t_template.rs +++ b/tests/expectations/tests/size_t_template.rs @@ -12,6 +12,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 12usize, @@ -22,16 +25,9 @@ fn bindgen_test_layout_C() { 4usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_arr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(arr)) - ); - } - test_field_arr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(arr)) + ); } diff --git a/tests/expectations/tests/sorted-items.rs b/tests/expectations/tests/sorted-items.rs new file mode 100644 index 00000000..7df7c3d7 --- /dev/null +++ b/tests/expectations/tests/sorted-items.rs @@ -0,0 +1,82 @@ +#![allow( + dead_code, + non_snake_case, + non_camel_case_types, + non_upper_case_globals +)] + +pub type number = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Point { + pub x: number, + pub y: number, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Angle { + pub a: number, + pub b: number, +} +pub const NUMBER: number = 42; +#[test] +fn bindgen_test_layout_Point() { + const UNINIT: ::std::mem::MaybeUninit<Point> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<Point>(), + 8usize, + concat!("Size of: ", stringify!(Point)) + ); + assert_eq!( + ::std::mem::align_of::<Point>(), + 4usize, + concat!("Alignment of ", stringify!(Point)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Point), "::", stringify!(x)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Point), "::", stringify!(y)) + ); +} +#[test] +fn bindgen_test_layout_Angle() { + const UNINIT: ::std::mem::MaybeUninit<Angle> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<Angle>(), + 8usize, + concat!("Size of: ", stringify!(Angle)) + ); + assert_eq!( + ::std::mem::align_of::<Angle>(), + 4usize, + concat!("Alignment of ", stringify!(Angle)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Angle), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Angle), "::", stringify!(b)) + ); +} +extern "C" { + pub fn foo() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn bar(x: number) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn baz(point: Point) -> ::std::os::raw::c_int; +} diff --git a/tests/expectations/tests/struct_containing_forward_declared_struct.rs b/tests/expectations/tests/struct_containing_forward_declared_struct.rs index bd1419c6..8279fe1f 100644 --- a/tests/expectations/tests/struct_containing_forward_declared_struct.rs +++ b/tests/expectations/tests/struct_containing_forward_declared_struct.rs @@ -12,6 +12,9 @@ pub struct a { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 8usize, @@ -22,23 +25,11 @@ fn bindgen_test_layout_a() { 8usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_val_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).val_a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(a), - "::", - stringify!(val_a) - ) - ); - } - test_field_val_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).val_a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(val_a)) + ); } impl Default for a { fn default() -> Self { @@ -56,6 +47,9 @@ pub struct b { } #[test] fn bindgen_test_layout_b() { + const UNINIT: ::std::mem::MaybeUninit<b> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<b>(), 4usize, @@ -66,21 +60,9 @@ fn bindgen_test_layout_b() { 4usize, concat!("Alignment of ", stringify!(b)) ); - fn test_field_val_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<b>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).val_b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(b), - "::", - stringify!(val_b) - ) - ); - } - test_field_val_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).val_b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(b), "::", stringify!(val_b)) + ); } diff --git a/tests/expectations/tests/struct_typedef.rs b/tests/expectations/tests/struct_typedef.rs index 1eab593e..f9d7fedb 100644 --- a/tests/expectations/tests/struct_typedef.rs +++ b/tests/expectations/tests/struct_typedef.rs @@ -12,6 +12,9 @@ pub struct typedef_named_struct { } #[test] fn bindgen_test_layout_typedef_named_struct() { + const UNINIT: ::std::mem::MaybeUninit<typedef_named_struct> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<typedef_named_struct>(), 1usize, @@ -22,24 +25,18 @@ fn bindgen_test_layout_typedef_named_struct() { 1usize, concat!("Alignment of ", stringify!(typedef_named_struct)) ); - fn test_field_has_name() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<typedef_named_struct>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).has_name) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(typedef_named_struct), - "::", - stringify!(has_name) - ) - ); - } - test_field_has_name(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).has_name) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(typedef_named_struct), + "::", + stringify!(has_name) + ) + ); } #[repr(C)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -48,6 +45,9 @@ pub struct _bindgen_ty_1 { } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<_bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_bindgen_ty_1>(), 8usize, @@ -58,23 +58,16 @@ fn bindgen_test_layout__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_no_name() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).no_name) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(no_name) - ) - ); - } - test_field_no_name(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).no_name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(no_name) + ) + ); } impl Default for _bindgen_ty_1 { fn default() -> Self { diff --git a/tests/expectations/tests/struct_typedef_ns.rs b/tests/expectations/tests/struct_typedef_ns.rs index 8b113567..2bad358a 100644 --- a/tests/expectations/tests/struct_typedef_ns.rs +++ b/tests/expectations/tests/struct_typedef_ns.rs @@ -19,6 +19,9 @@ pub mod root { } #[test] fn bindgen_test_layout_typedef_struct() { + const UNINIT: ::std::mem::MaybeUninit<typedef_struct> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<typedef_struct>(), 4usize, @@ -29,24 +32,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(typedef_struct)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<typedef_struct>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(typedef_struct), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(typedef_struct), + "::", + stringify!(foo) + ) + ); } #[repr(u32)] #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] @@ -64,6 +61,9 @@ pub mod root { } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<_bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<_bindgen_ty_1>(), 4usize, @@ -74,24 +74,18 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(foo) + ) + ); } pub type typedef_struct = root::_bindgen_mod_id_12::_bindgen_ty_1; pub const _bindgen_mod_id_12_BAR: diff --git a/tests/expectations/tests/struct_with_anon_struct.rs b/tests/expectations/tests/struct_with_anon_struct.rs index 88e1d7b5..238400a1 100644 --- a/tests/expectations/tests/struct_with_anon_struct.rs +++ b/tests/expectations/tests/struct_with_anon_struct.rs @@ -18,6 +18,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -28,45 +31,32 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -77,21 +67,9 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/struct_with_anon_struct_array.rs b/tests/expectations/tests/struct_with_anon_struct_array.rs index b5566993..f3af6b60 100644 --- a/tests/expectations/tests/struct_with_anon_struct_array.rs +++ b/tests/expectations/tests/struct_with_anon_struct_array.rs @@ -19,6 +19,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -29,42 +32,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -74,6 +61,9 @@ pub struct foo__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_2>(), 8usize, @@ -84,45 +74,32 @@ fn bindgen_test_layout_foo__bindgen_ty_2() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_2), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_2), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 208usize, @@ -133,38 +110,14 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 16usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(baz)) + ); } diff --git a/tests/expectations/tests/struct_with_anon_struct_pointer.rs b/tests/expectations/tests/struct_with_anon_struct_pointer.rs index 5050ef45..5bb10079 100644 --- a/tests/expectations/tests/struct_with_anon_struct_pointer.rs +++ b/tests/expectations/tests/struct_with_anon_struct_pointer.rs @@ -18,6 +18,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -28,45 +31,32 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -77,23 +67,11 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_anon_union.rs b/tests/expectations/tests/struct_with_anon_union.rs index 37f07476..08aab0a9 100644 --- a/tests/expectations/tests/struct_with_anon_union.rs +++ b/tests/expectations/tests/struct_with_anon_union.rs @@ -18,6 +18,9 @@ pub union foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -28,42 +31,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { @@ -76,6 +63,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -86,23 +76,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_anon_union_1_0.rs b/tests/expectations/tests/struct_with_anon_union_1_0.rs index 03e0efc7..8db33d11 100644 --- a/tests/expectations/tests/struct_with_anon_union_1_0.rs +++ b/tests/expectations/tests/struct_with_anon_union_1_0.rs @@ -62,6 +62,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -72,42 +75,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { @@ -116,6 +103,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -126,23 +116,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/struct_with_anon_unnamed_struct.rs b/tests/expectations/tests/struct_with_anon_unnamed_struct.rs index 8916bcd4..56981065 100644 --- a/tests/expectations/tests/struct_with_anon_unnamed_struct.rs +++ b/tests/expectations/tests/struct_with_anon_unnamed_struct.rs @@ -18,6 +18,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -28,42 +31,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { diff --git a/tests/expectations/tests/struct_with_anon_unnamed_union.rs b/tests/expectations/tests/struct_with_anon_unnamed_union.rs index eb177c9b..499fc7a1 100644 --- a/tests/expectations/tests/struct_with_anon_unnamed_union.rs +++ b/tests/expectations/tests/struct_with_anon_unnamed_union.rs @@ -18,6 +18,9 @@ pub union foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -28,42 +31,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_anon_unnamed_union_1_0.rs b/tests/expectations/tests/struct_with_anon_unnamed_union_1_0.rs index 0098a404..55432d47 100644 --- a/tests/expectations/tests/struct_with_anon_unnamed_union_1_0.rs +++ b/tests/expectations/tests/struct_with_anon_unnamed_union_1_0.rs @@ -62,6 +62,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -72,42 +75,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/struct_with_bitfields.rs b/tests/expectations/tests/struct_with_bitfields.rs index 00123956..a9be3006 100644 --- a/tests/expectations/tests/struct_with_bitfields.rs +++ b/tests/expectations/tests/struct_with_bitfields.rs @@ -102,6 +102,9 @@ pub struct bitfield { } #[test] fn bindgen_test_layout_bitfield() { + const UNINIT: ::std::mem::MaybeUninit<bitfield> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bitfield>(), 16usize, @@ -112,23 +115,16 @@ fn bindgen_test_layout_bitfield() { 4usize, concat!("Alignment of ", stringify!(bitfield)) ); - fn test_field_e() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bitfield>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).e) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(bitfield), - "::", - stringify!(e) - ) - ); - } - test_field_e(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).e) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(bitfield), + "::", + stringify!(e) + ) + ); } impl bitfield { #[inline] diff --git a/tests/expectations/tests/struct_with_derive_debug.rs b/tests/expectations/tests/struct_with_derive_debug.rs index a2729bbe..1bb7c77d 100644 --- a/tests/expectations/tests/struct_with_derive_debug.rs +++ b/tests/expectations/tests/struct_with_derive_debug.rs @@ -12,6 +12,9 @@ pub struct LittleArray { } #[test] fn bindgen_test_layout_LittleArray() { + const UNINIT: ::std::mem::MaybeUninit<LittleArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<LittleArray>(), 128usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_LittleArray() { 4usize, concat!("Alignment of ", stringify!(LittleArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<LittleArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(LittleArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(LittleArray), + "::", + stringify!(a) + ) + ); } #[repr(C)] #[derive(Copy, Clone)] @@ -47,6 +43,9 @@ pub struct BigArray { } #[test] fn bindgen_test_layout_BigArray() { + const UNINIT: ::std::mem::MaybeUninit<BigArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<BigArray>(), 132usize, @@ -57,23 +56,16 @@ fn bindgen_test_layout_BigArray() { 4usize, concat!("Alignment of ", stringify!(BigArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<BigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(BigArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(BigArray), + "::", + stringify!(a) + ) + ); } impl Default for BigArray { fn default() -> Self { @@ -91,6 +83,9 @@ pub struct WithLittleArray { } #[test] fn bindgen_test_layout_WithLittleArray() { + const UNINIT: ::std::mem::MaybeUninit<WithLittleArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithLittleArray>(), 128usize, @@ -101,24 +96,16 @@ fn bindgen_test_layout_WithLittleArray() { 4usize, concat!("Alignment of ", stringify!(WithLittleArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<WithLittleArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithLittleArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithLittleArray), + "::", + stringify!(a) + ) + ); } #[repr(C)] #[derive(Copy, Clone)] @@ -127,6 +114,9 @@ pub struct WithBigArray { } #[test] fn bindgen_test_layout_WithBigArray() { + const UNINIT: ::std::mem::MaybeUninit<WithBigArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigArray>(), 132usize, @@ -137,23 +127,16 @@ fn bindgen_test_layout_WithBigArray() { 4usize, concat!("Alignment of ", stringify!(WithBigArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray), + "::", + stringify!(a) + ) + ); } impl Default for WithBigArray { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_large_array.rs b/tests/expectations/tests/struct_with_large_array.rs index e792f71a..9f2c0ecc 100644 --- a/tests/expectations/tests/struct_with_large_array.rs +++ b/tests/expectations/tests/struct_with_large_array.rs @@ -12,6 +12,9 @@ pub struct S { } #[test] fn bindgen_test_layout_S() { + const UNINIT: ::std::mem::MaybeUninit<S> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<S>(), 33usize, @@ -22,23 +25,18 @@ fn bindgen_test_layout_S() { 1usize, concat!("Alignment of ", stringify!(S)) ); - fn test_field_large_array() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<S>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(S), - "::", - stringify!(large_array) - ) - ); - } - test_field_large_array(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).large_array) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(S), + "::", + stringify!(large_array) + ) + ); } impl Default for S { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_nesting.rs b/tests/expectations/tests/struct_with_nesting.rs index 5b98fc49..ff177ff1 100644 --- a/tests/expectations/tests/struct_with_nesting.rs +++ b/tests/expectations/tests/struct_with_nesting.rs @@ -26,6 +26,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -36,44 +39,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_c1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(c1) - ) - ); - } - test_field_c1(); - fn test_field_c2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(c2) - ) - ); - } - test_field_c2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(c1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(c2) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -85,6 +70,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_2>(), 4usize, @@ -95,85 +83,52 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { 1usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_d1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d1) - ) - ); - } - test_field_d1(); - fn test_field_d2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d2) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d2) - ) - ); - } - test_field_d2(); - fn test_field_d3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d3) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d3) - ) - ); - } - test_field_d3(); - fn test_field_d4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d4) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d4) - ) - ); - } - test_field_d4(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d2) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d3) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d4) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d4) + ) + ); } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -184,24 +139,16 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { @@ -214,6 +161,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -224,18 +174,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/struct_with_nesting_1_0.rs b/tests/expectations/tests/struct_with_nesting_1_0.rs index 0a7e1ec9..af795b64 100644 --- a/tests/expectations/tests/struct_with_nesting_1_0.rs +++ b/tests/expectations/tests/struct_with_nesting_1_0.rs @@ -70,6 +70,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_1>(), 4usize, @@ -80,44 +83,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_c1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(c1) - ) - ); - } - test_field_c1(); - fn test_field_c2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(c2) - ) - ); - } - test_field_c2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(c1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(c2) + ) + ); } impl Clone for foo__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -134,6 +119,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_2>(), 4usize, @@ -144,82 +132,46 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { 1usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_d1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d1) - ) - ); - } - test_field_d1(); - fn test_field_d2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d2) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d2) - ) - ); - } - test_field_d2(); - fn test_field_d3() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d3) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d3) - ) - ); - } - test_field_d3(); - fn test_field_d4() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d4) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(d4) - ) - ); - } - test_field_d4(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d2) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d2) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d3) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d3) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d4) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(d4) + ) + ); } impl Clone for foo__bindgen_ty_1__bindgen_ty_2 { fn clone(&self) -> Self { @@ -228,6 +180,9 @@ impl Clone for foo__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -238,24 +193,16 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { @@ -264,6 +211,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -274,18 +224,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/struct_with_packing.rs b/tests/expectations/tests/struct_with_packing.rs index c82edf28..b8ea17cd 100644 --- a/tests/expectations/tests/struct_with_packing.rs +++ b/tests/expectations/tests/struct_with_packing.rs @@ -13,6 +13,9 @@ pub struct a { } #[test] fn bindgen_test_layout_a() { + const UNINIT: ::std::mem::MaybeUninit<a> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<a>(), 3usize, @@ -23,28 +26,14 @@ fn bindgen_test_layout_a() { 1usize, concat!("Alignment of ", stringify!(a)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<a>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 1usize, - concat!("Offset of field: ", stringify!(a), "::", stringify!(c)) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 1usize, + concat!("Offset of field: ", stringify!(a), "::", stringify!(c)) + ); } diff --git a/tests/expectations/tests/struct_with_struct.rs b/tests/expectations/tests/struct_with_struct.rs index a8d06937..b1ee5db4 100644 --- a/tests/expectations/tests/struct_with_struct.rs +++ b/tests/expectations/tests/struct_with_struct.rs @@ -18,6 +18,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -28,45 +31,32 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(x) - ) - ); - } - test_field_x(); - fn test_field_y() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(y) - ) - ); - } - test_field_y(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(x) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(y) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -77,21 +67,9 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } diff --git a/tests/expectations/tests/template.rs b/tests/expectations/tests/template.rs index 4de7b7aa..7637295a 100644 --- a/tests/expectations/tests/template.rs +++ b/tests/expectations/tests/template.rs @@ -68,6 +68,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 104usize, @@ -78,276 +81,180 @@ fn bindgen_test_layout_C() { 8usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_mB() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mB) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(mB)) - ); - } - test_field_mB(); - fn test_field_mBConstPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstPtr) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstPtr) - ) - ); - } - test_field_mBConstPtr(); - fn test_field_mBConstStructPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstStructPtr) as usize - - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstStructPtr) - ) - ); - } - test_field_mBConstStructPtr(); - fn test_field_mBConstStructPtrArray() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstStructPtrArray) as usize - - ptr as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstStructPtrArray) - ) - ); - } - test_field_mBConstStructPtrArray(); - fn test_field_mBConst() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConst) as usize - ptr as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConst) - ) - ); - } - test_field_mBConst(); - fn test_field_mBVolatile() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBVolatile) as usize - ptr as usize - }, - 36usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBVolatile) - ) - ); - } - test_field_mBVolatile(); - fn test_field_mBConstBool() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstBool) as usize - ptr as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstBool) - ) - ); - } - test_field_mBConstBool(); - fn test_field_mBConstChar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstChar) as usize - ptr as usize - }, - 42usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstChar) - ) - ); - } - test_field_mBConstChar(); - fn test_field_mBArray() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBArray) as usize - ptr as usize - }, - 44usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBArray) - ) - ); - } - test_field_mBArray(); - fn test_field_mBPtrArray() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBPtrArray) as usize - ptr as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBPtrArray) - ) - ); - } - test_field_mBPtrArray(); - fn test_field_mBArrayPtr() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBArrayPtr) as usize - ptr as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBArrayPtr) - ) - ); - } - test_field_mBArrayPtr(); - fn test_field_mBRef() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBRef) as usize - ptr as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBRef) - ) - ); - } - test_field_mBRef(); - fn test_field_mBConstRef() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstRef) as usize - ptr as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstRef) - ) - ); - } - test_field_mBConstRef(); - fn test_field_mPtrRef() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mPtrRef) as usize - ptr as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mPtrRef) - ) - ); - } - test_field_mPtrRef(); - fn test_field_mArrayRef() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mArrayRef) as usize - ptr as usize - }, - 88usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mArrayRef) - ) - ); - } - test_field_mArrayRef(); - fn test_field_mBConstArray() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBConstArray) as usize - - ptr as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(C), - "::", - stringify!(mBConstArray) - ) - ); - } - test_field_mBConstArray(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mB) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(mB)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstPtr) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstPtr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstStructPtr) as usize - + ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstStructPtr) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstStructPtrArray) as usize - + ptr as usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstStructPtrArray) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBConst) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConst) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBVolatile) as usize - ptr as usize + }, + 36usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBVolatile) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstBool) as usize - ptr as usize + }, + 40usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstBool) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstChar) as usize - ptr as usize + }, + 42usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstChar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBArray) as usize - ptr as usize }, + 44usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBArray) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBPtrArray) as usize - ptr as usize + }, + 48usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBPtrArray) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBArrayPtr) as usize - ptr as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBArrayPtr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBRef) as usize - ptr as usize }, + 64usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(mBRef)) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstRef) as usize - ptr as usize + }, + 72usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstRef) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mPtrRef) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mPtrRef) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mArrayRef) as usize - ptr as usize + }, + 88usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mArrayRef) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mBConstArray) as usize - ptr as usize + }, + 96usize, + concat!( + "Offset of field: ", + stringify!(C), + "::", + stringify!(mBConstArray) + ) + ); } impl Default for C { fn default() -> Self { @@ -413,6 +320,9 @@ pub struct RootedContainer { } #[test] fn bindgen_test_layout_RootedContainer() { + const UNINIT: ::std::mem::MaybeUninit<RootedContainer> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<RootedContainer>(), 24usize, @@ -423,24 +333,16 @@ fn bindgen_test_layout_RootedContainer() { 8usize, concat!("Alignment of ", stringify!(RootedContainer)) ); - fn test_field_root() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<RootedContainer>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).root) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(RootedContainer), - "::", - stringify!(root) - ) - ); - } - test_field_root(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).root) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(RootedContainer), + "::", + stringify!(root) + ) + ); } impl Default for RootedContainer { fn default() -> Self { @@ -474,6 +376,9 @@ pub struct PODButContainsDtor { } #[test] fn bindgen_test_layout_PODButContainsDtor() { + const UNINIT: ::std::mem::MaybeUninit<PODButContainsDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<PODButContainsDtor>(), 4usize, @@ -484,24 +389,16 @@ fn bindgen_test_layout_PODButContainsDtor() { 4usize, concat!("Alignment of ", stringify!(PODButContainsDtor)) ); - fn test_field_member() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<PODButContainsDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(PODButContainsDtor), - "::", - stringify!(member) - ) - ); - } - test_field_member(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).member) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(PODButContainsDtor), + "::", + stringify!(member) + ) + ); } impl Default for PODButContainsDtor { fn default() -> Self { @@ -525,6 +422,9 @@ pub struct POD { } #[test] fn bindgen_test_layout_POD() { + const UNINIT: ::std::mem::MaybeUninit<POD> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<POD>(), 4usize, @@ -535,24 +435,18 @@ fn bindgen_test_layout_POD() { 4usize, concat!("Alignment of ", stringify!(POD)) ); - fn test_field_opaque_member() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<POD>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).opaque_member) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(POD), - "::", - stringify!(opaque_member) - ) - ); - } - test_field_opaque_member(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).opaque_member) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(POD), + "::", + stringify!(opaque_member) + ) + ); } /// <div rustbindgen replaces="NestedReplaced"></div> #[repr(C)] diff --git a/tests/expectations/tests/test_mixed_header_and_header_contents.rs b/tests/expectations/tests/test_mixed_header_and_header_contents.rs index 369d10d3..5f8da2af 100644 --- a/tests/expectations/tests/test_mixed_header_and_header_contents.rs +++ b/tests/expectations/tests/test_mixed_header_and_header_contents.rs @@ -33,6 +33,9 @@ pub struct Test { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 12usize, @@ -43,198 +46,69 @@ fn bindgen_test_layout_Test() { 1usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_ch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(ch) - ) - ); - } - test_field_ch(); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 1usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) - ); - } - test_field_u(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 2usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) - ); - } - test_field_d(); - fn test_field_cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cch) - ) - ); - } - test_field_cch(); - fn test_field_cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cu) - ) - ); - } - test_field_cu(); - fn test_field_cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cd) - ) - ); - } - test_field_cd(); - fn test_field_Cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cch) - ) - ); - } - test_field_Cch(); - fn test_field_Cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cu) - ) - ); - } - test_field_Cu(); - fn test_field_Cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cd) - ) - ); - } - test_field_Cd(); - fn test_field_Ccch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccch) - ) - ); - } - test_field_Ccch(); - fn test_field_Ccu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccu) - ) - ); - } - test_field_Ccu(); - fn test_field_Ccd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize - }, - 11usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccd) - ) - ); - } - test_field_Ccd(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(ch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 1usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 2usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize }, + 3usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize }, + 5usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize }, + 6usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize }, + 7usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(Test), + "::", + stringify!(Ccch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize }, + 10usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize }, + 11usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccd)) + ); } diff --git a/tests/expectations/tests/test_multiple_header_calls_in_builder.rs b/tests/expectations/tests/test_multiple_header_calls_in_builder.rs index b05dd971..b594d70c 100644 --- a/tests/expectations/tests/test_multiple_header_calls_in_builder.rs +++ b/tests/expectations/tests/test_multiple_header_calls_in_builder.rs @@ -27,6 +27,9 @@ pub struct Test { } #[test] fn bindgen_test_layout_Test() { + const UNINIT: ::std::mem::MaybeUninit<Test> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Test>(), 12usize, @@ -37,198 +40,69 @@ fn bindgen_test_layout_Test() { 1usize, concat!("Alignment of ", stringify!(Test)) ); - fn test_field_ch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(ch) - ) - ); - } - test_field_ch(); - fn test_field_u() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize - }, - 1usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) - ); - } - test_field_u(); - fn test_field_d() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize - }, - 2usize, - concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) - ); - } - test_field_d(); - fn test_field_cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cch) - ) - ); - } - test_field_cch(); - fn test_field_cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cu) - ) - ); - } - test_field_cu(); - fn test_field_cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize - }, - 5usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(cd) - ) - ); - } - test_field_cd(); - fn test_field_Cch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize - }, - 6usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cch) - ) - ); - } - test_field_Cch(); - fn test_field_Cu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize - }, - 7usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cu) - ) - ); - } - test_field_Cu(); - fn test_field_Cd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Cd) - ) - ); - } - test_field_Cd(); - fn test_field_Ccch() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccch) - ) - ); - } - test_field_Ccch(); - fn test_field_Ccu() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccu) - ) - ); - } - test_field_Ccu(); - fn test_field_Ccd() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Test>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize - }, - 11usize, - concat!( - "Offset of field: ", - stringify!(Test), - "::", - stringify!(Ccd) - ) - ); - } - test_field_Ccd(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ch) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(ch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize }, + 1usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(u)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize }, + 2usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(d)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cch) as usize - ptr as usize }, + 3usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cu) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cd) as usize - ptr as usize }, + 5usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cch) as usize - ptr as usize }, + 6usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cch)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cu) as usize - ptr as usize }, + 7usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Cd) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Cd)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccch) as usize - ptr as usize }, + 9usize, + concat!( + "Offset of field: ", + stringify!(Test), + "::", + stringify!(Ccch) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccu) as usize - ptr as usize }, + 10usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccu)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).Ccd) as usize - ptr as usize }, + 11usize, + concat!("Offset of field: ", stringify!(Test), "::", stringify!(Ccd)) + ); } diff --git a/tests/expectations/tests/timex.rs b/tests/expectations/tests/timex.rs index 8f0677b1..dfcebdd2 100644 --- a/tests/expectations/tests/timex.rs +++ b/tests/expectations/tests/timex.rs @@ -100,6 +100,9 @@ pub struct timex { } #[test] fn bindgen_test_layout_timex() { + const UNINIT: ::std::mem::MaybeUninit<timex> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<timex>(), 48usize, @@ -110,23 +113,16 @@ fn bindgen_test_layout_timex() { 4usize, concat!("Alignment of ", stringify!(timex)) ); - fn test_field_tai() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<timex>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tai) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timex), - "::", - stringify!(tai) - ) - ); - } - test_field_tai(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tai) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(timex), + "::", + stringify!(tai) + ) + ); } impl Default for timex { fn default() -> Self { @@ -146,6 +142,9 @@ pub struct timex_named { } #[test] fn bindgen_test_layout_timex_named() { + const UNINIT: ::std::mem::MaybeUninit<timex_named> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<timex_named>(), 48usize, @@ -156,23 +155,16 @@ fn bindgen_test_layout_timex_named() { 4usize, concat!("Alignment of ", stringify!(timex_named)) ); - fn test_field_tai() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<timex_named>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).tai) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timex_named), - "::", - stringify!(tai) - ) - ); - } - test_field_tai(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tai) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(timex_named), + "::", + stringify!(tai) + ) + ); } impl Default for timex_named { fn default() -> Self { diff --git a/tests/expectations/tests/type-referenced-by-allowlisted-function.rs b/tests/expectations/tests/type-referenced-by-allowlisted-function.rs index 421abdc9..7ae042bc 100644 --- a/tests/expectations/tests/type-referenced-by-allowlisted-function.rs +++ b/tests/expectations/tests/type-referenced-by-allowlisted-function.rs @@ -12,6 +12,9 @@ pub struct dl_phdr_info { } #[test] fn bindgen_test_layout_dl_phdr_info() { + const UNINIT: ::std::mem::MaybeUninit<dl_phdr_info> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<dl_phdr_info>(), 4usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_dl_phdr_info() { 4usize, concat!("Alignment of ", stringify!(dl_phdr_info)) ); - fn test_field_x() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dl_phdr_info>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(dl_phdr_info), - "::", - stringify!(x) - ) - ); - } - test_field_x(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(dl_phdr_info), + "::", + stringify!(x) + ) + ); } extern "C" { pub fn dl_iterate_phdr(arg1: *mut dl_phdr_info) -> ::std::os::raw::c_int; diff --git a/tests/expectations/tests/typeref.rs b/tests/expectations/tests/typeref.rs index f4b048c6..a3a31daf 100644 --- a/tests/expectations/tests/typeref.rs +++ b/tests/expectations/tests/typeref.rs @@ -12,6 +12,9 @@ pub struct mozilla_FragmentOrURL { } #[test] fn bindgen_test_layout_mozilla_FragmentOrURL() { + const UNINIT: ::std::mem::MaybeUninit<mozilla_FragmentOrURL> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<mozilla_FragmentOrURL>(), 1usize, @@ -22,24 +25,18 @@ fn bindgen_test_layout_mozilla_FragmentOrURL() { 1usize, concat!("Alignment of ", stringify!(mozilla_FragmentOrURL)) ); - fn test_field_mIsLocalRef() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<mozilla_FragmentOrURL>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsLocalRef) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(mozilla_FragmentOrURL), - "::", - stringify!(mIsLocalRef) - ) - ); - } - test_field_mIsLocalRef(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsLocalRef) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(mozilla_FragmentOrURL), + "::", + stringify!(mIsLocalRef) + ) + ); } #[repr(C)] #[derive(Debug, Default, Copy, Clone, Hash, PartialEq, Eq)] @@ -93,6 +90,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -103,23 +103,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_mFoo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(mFoo) - ) - ); - } - test_field_mFoo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(mFoo)) + ); } impl Default for Bar { fn default() -> Self { @@ -136,6 +124,9 @@ pub struct nsFoo { } #[test] fn bindgen_test_layout_nsFoo() { + const UNINIT: ::std::mem::MaybeUninit<nsFoo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsFoo>(), 8usize, @@ -146,23 +137,16 @@ fn bindgen_test_layout_nsFoo() { 8usize, concat!("Alignment of ", stringify!(nsFoo)) ); - fn test_field_mBar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsFoo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsFoo), - "::", - stringify!(mBar) - ) - ); - } - test_field_mBar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsFoo), + "::", + stringify!(mBar) + ) + ); } impl Default for nsFoo { fn default() -> Self { diff --git a/tests/expectations/tests/typeref_1_0.rs b/tests/expectations/tests/typeref_1_0.rs index 273a7741..8e4143c0 100644 --- a/tests/expectations/tests/typeref_1_0.rs +++ b/tests/expectations/tests/typeref_1_0.rs @@ -55,6 +55,9 @@ pub struct mozilla_FragmentOrURL { } #[test] fn bindgen_test_layout_mozilla_FragmentOrURL() { + const UNINIT: ::std::mem::MaybeUninit<mozilla_FragmentOrURL> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<mozilla_FragmentOrURL>(), 1usize, @@ -65,24 +68,18 @@ fn bindgen_test_layout_mozilla_FragmentOrURL() { 1usize, concat!("Alignment of ", stringify!(mozilla_FragmentOrURL)) ); - fn test_field_mIsLocalRef() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<mozilla_FragmentOrURL>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mIsLocalRef) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(mozilla_FragmentOrURL), - "::", - stringify!(mIsLocalRef) - ) - ); - } - test_field_mIsLocalRef(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mIsLocalRef) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(mozilla_FragmentOrURL), + "::", + stringify!(mIsLocalRef) + ) + ); } impl Clone for mozilla_FragmentOrURL { fn clone(&self) -> Self { @@ -131,6 +128,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 8usize, @@ -141,23 +141,11 @@ fn bindgen_test_layout_Bar() { 8usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_mFoo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(mFoo) - ) - ); - } - test_field_mFoo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(mFoo)) + ); } impl Clone for Bar { fn clone(&self) -> Self { @@ -180,6 +168,9 @@ pub struct nsFoo { } #[test] fn bindgen_test_layout_nsFoo() { + const UNINIT: ::std::mem::MaybeUninit<nsFoo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsFoo>(), 8usize, @@ -190,23 +181,16 @@ fn bindgen_test_layout_nsFoo() { 8usize, concat!("Alignment of ", stringify!(nsFoo)) ); - fn test_field_mBar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsFoo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsFoo), - "::", - stringify!(mBar) - ) - ); - } - test_field_mBar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsFoo), + "::", + stringify!(mBar) + ) + ); } impl Clone for nsFoo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/underscore.rs b/tests/expectations/tests/underscore.rs index a9c20d0e..bfc05ac1 100644 --- a/tests/expectations/tests/underscore.rs +++ b/tests/expectations/tests/underscore.rs @@ -13,6 +13,9 @@ pub struct ptr_t { } #[test] fn bindgen_test_layout_ptr_t() { + const UNINIT: ::std::mem::MaybeUninit<ptr_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ptr_t>(), 8usize, @@ -23,21 +26,9 @@ fn bindgen_test_layout_ptr_t() { 1usize, concat!("Alignment of ", stringify!(ptr_t)) ); - fn test_field__() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<ptr_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).__) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ptr_t), - "::", - stringify!(__) - ) - ); - } - test_field__(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(ptr_t), "::", stringify!(__)) + ); } diff --git a/tests/expectations/tests/union-align.rs b/tests/expectations/tests/union-align.rs index 53701694..062ea97a 100644 --- a/tests/expectations/tests/union-align.rs +++ b/tests/expectations/tests/union-align.rs @@ -13,6 +13,9 @@ pub union Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 16usize, @@ -23,23 +26,11 @@ fn bindgen_test_layout_Bar() { 16usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(foo) - ) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Bar), "::", stringify!(foo)) + ); } impl Default for Bar { fn default() -> Self { @@ -58,6 +49,9 @@ pub union Baz { } #[test] fn bindgen_test_layout_Baz() { + const UNINIT: ::std::mem::MaybeUninit<Baz> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Baz>(), 16usize, @@ -68,23 +62,11 @@ fn bindgen_test_layout_Baz() { 16usize, concat!("Alignment of ", stringify!(Baz)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Baz>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Baz), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Baz), "::", stringify!(bar)) + ); } impl Default for Baz { fn default() -> Self { diff --git a/tests/expectations/tests/union-in-ns.rs b/tests/expectations/tests/union-in-ns.rs index 28e7fa23..65f3f8f2 100644 --- a/tests/expectations/tests/union-in-ns.rs +++ b/tests/expectations/tests/union-in-ns.rs @@ -16,6 +16,9 @@ pub mod root { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -26,23 +29,16 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(baz) + ) + ); } impl Default for bar { fn default() -> Self { diff --git a/tests/expectations/tests/union-in-ns_1_0.rs b/tests/expectations/tests/union-in-ns_1_0.rs index 2d0584a6..a057cc34 100644 --- a/tests/expectations/tests/union-in-ns_1_0.rs +++ b/tests/expectations/tests/union-in-ns_1_0.rs @@ -63,6 +63,9 @@ pub mod root { } #[test] fn bindgen_test_layout_bar() { + const UNINIT: ::std::mem::MaybeUninit<bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<bar>(), 4usize, @@ -73,23 +76,16 @@ pub mod root { 4usize, concat!("Alignment of ", stringify!(bar)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bar), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bar), + "::", + stringify!(baz) + ) + ); } impl Clone for bar { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_dtor.rs b/tests/expectations/tests/union_dtor.rs index 359005cb..085e5ca3 100644 --- a/tests/expectations/tests/union_dtor.rs +++ b/tests/expectations/tests/union_dtor.rs @@ -12,6 +12,9 @@ pub union UnionWithDtor { } #[test] fn bindgen_test_layout_UnionWithDtor() { + const UNINIT: ::std::mem::MaybeUninit<UnionWithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<UnionWithDtor>(), 8usize, @@ -22,40 +25,26 @@ fn bindgen_test_layout_UnionWithDtor() { 8usize, concat!("Alignment of ", stringify!(UnionWithDtor)) ); - fn test_field_mFoo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UnionWithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(UnionWithDtor), - "::", - stringify!(mFoo) - ) - ); - } - test_field_mFoo(); - fn test_field_mBar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UnionWithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(UnionWithDtor), - "::", - stringify!(mBar) - ) - ); - } - test_field_mBar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(UnionWithDtor), + "::", + stringify!(mFoo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(UnionWithDtor), + "::", + stringify!(mBar) + ) + ); } extern "C" { #[link_name = "\u{1}_ZN13UnionWithDtorD1Ev"] diff --git a/tests/expectations/tests/union_dtor_1_0.rs b/tests/expectations/tests/union_dtor_1_0.rs index 68ebced5..67455aa8 100644 --- a/tests/expectations/tests/union_dtor_1_0.rs +++ b/tests/expectations/tests/union_dtor_1_0.rs @@ -57,6 +57,9 @@ pub struct UnionWithDtor { } #[test] fn bindgen_test_layout_UnionWithDtor() { + const UNINIT: ::std::mem::MaybeUninit<UnionWithDtor> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<UnionWithDtor>(), 8usize, @@ -67,40 +70,26 @@ fn bindgen_test_layout_UnionWithDtor() { 8usize, concat!("Alignment of ", stringify!(UnionWithDtor)) ); - fn test_field_mFoo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UnionWithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(UnionWithDtor), - "::", - stringify!(mFoo) - ) - ); - } - test_field_mFoo(); - fn test_field_mBar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<UnionWithDtor>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(UnionWithDtor), - "::", - stringify!(mBar) - ) - ); - } - test_field_mBar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFoo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(UnionWithDtor), + "::", + stringify!(mFoo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mBar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(UnionWithDtor), + "::", + stringify!(mBar) + ) + ); } extern "C" { #[link_name = "\u{1}_ZN13UnionWithDtorD1Ev"] diff --git a/tests/expectations/tests/union_fields.rs b/tests/expectations/tests/union_fields.rs index 7864ac15..9135ca3c 100644 --- a/tests/expectations/tests/union_fields.rs +++ b/tests/expectations/tests/union_fields.rs @@ -14,6 +14,9 @@ pub union nsStyleUnion { } #[test] fn bindgen_test_layout_nsStyleUnion() { + const UNINIT: ::std::mem::MaybeUninit<nsStyleUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsStyleUnion>(), 8usize, @@ -24,57 +27,38 @@ fn bindgen_test_layout_nsStyleUnion() { 8usize, concat!("Alignment of ", stringify!(nsStyleUnion)) ); - fn test_field_mInt() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mInt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mInt) - ) - ); - } - test_field_mInt(); - fn test_field_mFloat() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFloat) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mFloat) - ) - ); - } - test_field_mFloat(); - fn test_field_mPointer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mPointer) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mPointer) - ) - ); - } - test_field_mPointer(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mInt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mInt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFloat) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mFloat) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mPointer) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mPointer) + ) + ); } impl Default for nsStyleUnion { fn default() -> Self { diff --git a/tests/expectations/tests/union_fields_1_0.rs b/tests/expectations/tests/union_fields_1_0.rs index 5fccd4e1..b5f94bcd 100644 --- a/tests/expectations/tests/union_fields_1_0.rs +++ b/tests/expectations/tests/union_fields_1_0.rs @@ -58,6 +58,9 @@ pub struct nsStyleUnion { } #[test] fn bindgen_test_layout_nsStyleUnion() { + const UNINIT: ::std::mem::MaybeUninit<nsStyleUnion> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<nsStyleUnion>(), 8usize, @@ -68,57 +71,38 @@ fn bindgen_test_layout_nsStyleUnion() { 8usize, concat!("Alignment of ", stringify!(nsStyleUnion)) ); - fn test_field_mInt() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mInt) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mInt) - ) - ); - } - test_field_mInt(); - fn test_field_mFloat() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFloat) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mFloat) - ) - ); - } - test_field_mFloat(); - fn test_field_mPointer() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<nsStyleUnion>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mPointer) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nsStyleUnion), - "::", - stringify!(mPointer) - ) - ); - } - test_field_mPointer(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mInt) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mInt) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mFloat) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mFloat) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mPointer) as usize - ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nsStyleUnion), + "::", + stringify!(mPointer) + ) + ); } impl Clone for nsStyleUnion { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_anon_struct.rs b/tests/expectations/tests/union_with_anon_struct.rs index 7a67b2d6..35b5829b 100644 --- a/tests/expectations/tests/union_with_anon_struct.rs +++ b/tests/expectations/tests/union_with_anon_struct.rs @@ -18,6 +18,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -28,45 +31,32 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -77,23 +67,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_anon_struct_1_0.rs b/tests/expectations/tests/union_with_anon_struct_1_0.rs index aed67ec6..8b11e757 100644 --- a/tests/expectations/tests/union_with_anon_struct_1_0.rs +++ b/tests/expectations/tests/union_with_anon_struct_1_0.rs @@ -62,6 +62,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 8usize, @@ -72,42 +75,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { @@ -116,6 +103,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -126,23 +116,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_anon_struct_bitfield.rs b/tests/expectations/tests/union_with_anon_struct_bitfield.rs index 87186fe0..e81b3bef 100644 --- a/tests/expectations/tests/union_with_anon_struct_bitfield.rs +++ b/tests/expectations/tests/union_with_anon_struct_bitfield.rs @@ -164,6 +164,9 @@ impl foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -174,18 +177,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_anon_struct_bitfield_1_0.rs b/tests/expectations/tests/union_with_anon_struct_bitfield_1_0.rs index 66f33674..6ce6ed22 100644 --- a/tests/expectations/tests/union_with_anon_struct_bitfield_1_0.rs +++ b/tests/expectations/tests/union_with_anon_struct_bitfield_1_0.rs @@ -213,6 +213,9 @@ impl foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -223,18 +226,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_anon_union.rs b/tests/expectations/tests/union_with_anon_union.rs index 789fb495..487650bf 100644 --- a/tests/expectations/tests/union_with_anon_union.rs +++ b/tests/expectations/tests/union_with_anon_union.rs @@ -18,6 +18,9 @@ pub union foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -28,42 +31,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { @@ -76,6 +63,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -86,23 +76,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_anon_union_1_0.rs b/tests/expectations/tests/union_with_anon_union_1_0.rs index 4bb91cf3..f3e4b840 100644 --- a/tests/expectations/tests/union_with_anon_union_1_0.rs +++ b/tests/expectations/tests/union_with_anon_union_1_0.rs @@ -63,6 +63,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 4usize, @@ -73,42 +76,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 4usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { @@ -117,6 +104,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -127,23 +117,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_anon_unnamed_struct.rs b/tests/expectations/tests/union_with_anon_unnamed_struct.rs index 968e20fa..cff5df04 100644 --- a/tests/expectations/tests/union_with_anon_unnamed_struct.rs +++ b/tests/expectations/tests/union_with_anon_unnamed_struct.rs @@ -21,6 +21,9 @@ pub struct pixel__bindgen_ty_1 { } #[test] fn bindgen_test_layout_pixel__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<pixel__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<pixel__bindgen_ty_1>(), 4usize, @@ -31,81 +34,52 @@ fn bindgen_test_layout_pixel__bindgen_ty_1() { 1usize, concat!("Alignment of ", stringify!(pixel__bindgen_ty_1)) ); - fn test_field_r() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(r) - ) - ); - } - test_field_r(); - fn test_field_g() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(g) - ) - ); - } - test_field_g(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(r) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(g) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(a) + ) + ); } #[test] fn bindgen_test_layout_pixel() { + const UNINIT: ::std::mem::MaybeUninit<pixel> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<pixel>(), 4usize, @@ -116,23 +90,16 @@ fn bindgen_test_layout_pixel() { 4usize, concat!("Alignment of ", stringify!(pixel)) ); - fn test_field_rgba() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<pixel>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rgba) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pixel), - "::", - stringify!(rgba) - ) - ); - } - test_field_rgba(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rgba) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pixel), + "::", + stringify!(rgba) + ) + ); } impl Default for pixel { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_anon_unnamed_struct_1_0.rs b/tests/expectations/tests/union_with_anon_unnamed_struct_1_0.rs index b6f315bf..1562a8c9 100644 --- a/tests/expectations/tests/union_with_anon_unnamed_struct_1_0.rs +++ b/tests/expectations/tests/union_with_anon_unnamed_struct_1_0.rs @@ -65,6 +65,9 @@ pub struct pixel__bindgen_ty_1 { } #[test] fn bindgen_test_layout_pixel__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<pixel__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<pixel__bindgen_ty_1>(), 4usize, @@ -75,78 +78,46 @@ fn bindgen_test_layout_pixel__bindgen_ty_1() { 1usize, concat!("Alignment of ", stringify!(pixel__bindgen_ty_1)) ); - fn test_field_r() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(r) - ) - ); - } - test_field_r(); - fn test_field_g() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize - }, - 1usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(g) - ) - ); - } - test_field_g(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 2usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<pixel__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 3usize, - concat!( - "Offset of field: ", - stringify!(pixel__bindgen_ty_1), - "::", - stringify!(a) - ) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(r) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).g) as usize - ptr as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(g) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 3usize, + concat!( + "Offset of field: ", + stringify!(pixel__bindgen_ty_1), + "::", + stringify!(a) + ) + ); } impl Clone for pixel__bindgen_ty_1 { fn clone(&self) -> Self { @@ -155,6 +126,9 @@ impl Clone for pixel__bindgen_ty_1 { } #[test] fn bindgen_test_layout_pixel() { + const UNINIT: ::std::mem::MaybeUninit<pixel> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<pixel>(), 4usize, @@ -165,23 +139,16 @@ fn bindgen_test_layout_pixel() { 4usize, concat!("Alignment of ", stringify!(pixel)) ); - fn test_field_rgba() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<pixel>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).rgba) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pixel), - "::", - stringify!(rgba) - ) - ); - } - test_field_rgba(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rgba) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pixel), + "::", + stringify!(rgba) + ) + ); } impl Clone for pixel { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_anon_unnamed_union.rs b/tests/expectations/tests/union_with_anon_unnamed_union.rs index f7defd06..f1abfc5a 100644 --- a/tests/expectations/tests/union_with_anon_unnamed_union.rs +++ b/tests/expectations/tests/union_with_anon_unnamed_union.rs @@ -19,6 +19,9 @@ pub union foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 2usize, @@ -29,42 +32,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(c) + ) + ); } impl Default for foo__bindgen_ty_1 { fn default() -> Self { @@ -77,6 +64,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -87,18 +77,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_anon_unnamed_union_1_0.rs b/tests/expectations/tests/union_with_anon_unnamed_union_1_0.rs index 72239a30..197a6bbf 100644 --- a/tests/expectations/tests/union_with_anon_unnamed_union_1_0.rs +++ b/tests/expectations/tests/union_with_anon_unnamed_union_1_0.rs @@ -64,6 +64,9 @@ pub struct foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1>(), 2usize, @@ -74,42 +77,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1)) ); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(b) - ) - ); - } - test_field_b(); - fn test_field_c() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<foo__bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1), - "::", - stringify!(c) - ) - ); - } - test_field_c(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(b) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1), + "::", + stringify!(c) + ) + ); } impl Clone for foo__bindgen_ty_1 { fn clone(&self) -> Self { @@ -118,6 +105,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -128,18 +118,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_big_member.rs b/tests/expectations/tests/union_with_big_member.rs index 72210c83..7110257b 100644 --- a/tests/expectations/tests/union_with_big_member.rs +++ b/tests/expectations/tests/union_with_big_member.rs @@ -13,6 +13,9 @@ pub union WithBigArray { } #[test] fn bindgen_test_layout_WithBigArray() { + const UNINIT: ::std::mem::MaybeUninit<WithBigArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigArray>(), 132usize, @@ -23,40 +26,26 @@ fn bindgen_test_layout_WithBigArray() { 4usize, concat!("Alignment of ", stringify!(WithBigArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray), + "::", + stringify!(b) + ) + ); } impl Default for WithBigArray { fn default() -> Self { @@ -75,6 +64,9 @@ pub union WithBigArray2 { } #[test] fn bindgen_test_layout_WithBigArray2() { + const UNINIT: ::std::mem::MaybeUninit<WithBigArray2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigArray2>(), 36usize, @@ -85,40 +77,26 @@ fn bindgen_test_layout_WithBigArray2() { 4usize, concat!("Alignment of ", stringify!(WithBigArray2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray2), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray2), + "::", + stringify!(b) + ) + ); } impl Default for WithBigArray2 { fn default() -> Self { @@ -137,6 +115,9 @@ pub union WithBigMember { } #[test] fn bindgen_test_layout_WithBigMember() { + const UNINIT: ::std::mem::MaybeUninit<WithBigMember> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigMember>(), 132usize, @@ -147,40 +128,26 @@ fn bindgen_test_layout_WithBigMember() { 4usize, concat!("Alignment of ", stringify!(WithBigMember)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigMember>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigMember), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigMember>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigMember), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigMember), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigMember), + "::", + stringify!(b) + ) + ); } impl Default for WithBigMember { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_big_member_1_0.rs b/tests/expectations/tests/union_with_big_member_1_0.rs index 8be46be7..63b43baa 100644 --- a/tests/expectations/tests/union_with_big_member_1_0.rs +++ b/tests/expectations/tests/union_with_big_member_1_0.rs @@ -57,6 +57,9 @@ pub struct WithBigArray { } #[test] fn bindgen_test_layout_WithBigArray() { + const UNINIT: ::std::mem::MaybeUninit<WithBigArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigArray>(), 132usize, @@ -67,40 +70,26 @@ fn bindgen_test_layout_WithBigArray() { 4usize, concat!("Alignment of ", stringify!(WithBigArray)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray), + "::", + stringify!(b) + ) + ); } impl Clone for WithBigArray { fn clone(&self) -> Self { @@ -125,6 +114,9 @@ pub struct WithBigArray2 { } #[test] fn bindgen_test_layout_WithBigArray2() { + const UNINIT: ::std::mem::MaybeUninit<WithBigArray2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigArray2>(), 36usize, @@ -135,40 +127,26 @@ fn bindgen_test_layout_WithBigArray2() { 4usize, concat!("Alignment of ", stringify!(WithBigArray2)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray2), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigArray2>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigArray2), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray2), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigArray2), + "::", + stringify!(b) + ) + ); } impl Clone for WithBigArray2 { fn clone(&self) -> Self { @@ -184,6 +162,9 @@ pub struct WithBigMember { } #[test] fn bindgen_test_layout_WithBigMember() { + const UNINIT: ::std::mem::MaybeUninit<WithBigMember> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<WithBigMember>(), 132usize, @@ -194,40 +175,26 @@ fn bindgen_test_layout_WithBigMember() { 4usize, concat!("Alignment of ", stringify!(WithBigMember)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigMember>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigMember), - "::", - stringify!(a) - ) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<WithBigMember>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(WithBigMember), - "::", - stringify!(b) - ) - ); - } - test_field_b(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigMember), + "::", + stringify!(a) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(WithBigMember), + "::", + stringify!(b) + ) + ); } impl Clone for WithBigMember { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/union_with_nesting.rs b/tests/expectations/tests/union_with_nesting.rs index 3ef99f7f..ec9c1480 100644 --- a/tests/expectations/tests/union_with_nesting.rs +++ b/tests/expectations/tests/union_with_nesting.rs @@ -25,6 +25,9 @@ pub union foo__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_1>(), 2usize, @@ -35,44 +38,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_b1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b1) - ) - ); - } - test_field_b1(); - fn test_field_b2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b2) - ) - ); - } - test_field_b2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b2) + ) + ); } impl Default for foo__bindgen_ty_1__bindgen_ty_1 { fn default() -> Self { @@ -91,6 +76,9 @@ pub union foo__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_2>(), 2usize, @@ -101,44 +89,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_c1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(c1) - ) - ); - } - test_field_c1(); - fn test_field_c2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(c2) - ) - ); - } - test_field_c2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(c1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(c2) + ) + ); } impl Default for foo__bindgen_ty_1__bindgen_ty_2 { fn default() -> Self { @@ -173,6 +143,9 @@ impl Default for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -183,18 +156,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Default for foo { fn default() -> Self { diff --git a/tests/expectations/tests/union_with_nesting_1_0.rs b/tests/expectations/tests/union_with_nesting_1_0.rs index 9d4fc4d2..a1e452fe 100644 --- a/tests/expectations/tests/union_with_nesting_1_0.rs +++ b/tests/expectations/tests/union_with_nesting_1_0.rs @@ -70,6 +70,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_1>(), 2usize, @@ -80,44 +83,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_1() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_1)) ); - fn test_field_b1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b1) - ) - ); - } - test_field_b1(); - fn test_field_b2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_1, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(b2) - ) - ); - } - test_field_b2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(b2) + ) + ); } impl Clone for foo__bindgen_ty_1__bindgen_ty_1 { fn clone(&self) -> Self { @@ -133,6 +118,9 @@ pub struct foo__bindgen_ty_1__bindgen_ty_2 { } #[test] fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { + const UNINIT: ::std::mem::MaybeUninit<foo__bindgen_ty_1__bindgen_ty_2> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo__bindgen_ty_1__bindgen_ty_2>(), 2usize, @@ -143,44 +131,26 @@ fn bindgen_test_layout_foo__bindgen_ty_1__bindgen_ty_2() { 2usize, concat!("Alignment of ", stringify!(foo__bindgen_ty_1__bindgen_ty_2)) ); - fn test_field_c1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(c1) - ) - ); - } - test_field_c1(); - fn test_field_c2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::< - foo__bindgen_ty_1__bindgen_ty_2, - >::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo__bindgen_ty_1__bindgen_ty_2), - "::", - stringify!(c2) - ) - ); - } - test_field_c2(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c1) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(c1) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).c2) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(c2) + ) + ); } impl Clone for foo__bindgen_ty_1__bindgen_ty_2 { fn clone(&self) -> Self { @@ -207,6 +177,9 @@ impl Clone for foo__bindgen_ty_1 { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 4usize, @@ -217,18 +190,11 @@ fn bindgen_test_layout_foo() { 4usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); } impl Clone for foo { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/unknown_attr.rs b/tests/expectations/tests/unknown_attr.rs index cc29d8b3..c790f009 100644 --- a/tests/expectations/tests/unknown_attr.rs +++ b/tests/expectations/tests/unknown_attr.rs @@ -15,6 +15,9 @@ pub struct max_align_t { } #[test] fn bindgen_test_layout_max_align_t() { + const UNINIT: ::std::mem::MaybeUninit<max_align_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<max_align_t>(), 32usize, @@ -25,40 +28,30 @@ fn bindgen_test_layout_max_align_t() { 16usize, concat!("Alignment of ", stringify!(max_align_t)) ); - fn test_field___clang_max_align_nonce1() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<max_align_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).__clang_max_align_nonce1) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce1) - ) - ); - } - test_field___clang_max_align_nonce1(); - fn test_field___clang_max_align_nonce2() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<max_align_t>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).__clang_max_align_nonce2) as usize - - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce2) - ) - ); - } - test_field___clang_max_align_nonce2(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).__clang_max_align_nonce1) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(max_align_t), + "::", + stringify!(__clang_max_align_nonce1) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).__clang_max_align_nonce2) as usize - + ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(max_align_t), + "::", + stringify!(__clang_max_align_nonce2) + ) + ); } diff --git a/tests/expectations/tests/unsorted-items.rs b/tests/expectations/tests/unsorted-items.rs new file mode 100644 index 00000000..ce0c5f3f --- /dev/null +++ b/tests/expectations/tests/unsorted-items.rs @@ -0,0 +1,82 @@ +#![allow( + dead_code, + non_snake_case, + non_camel_case_types, + non_upper_case_globals +)] + +extern "C" { + pub fn foo() -> ::std::os::raw::c_int; +} +pub type number = ::std::os::raw::c_int; +extern "C" { + pub fn bar(x: number) -> ::std::os::raw::c_int; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Point { + pub x: number, + pub y: number, +} +#[test] +fn bindgen_test_layout_Point() { + const UNINIT: ::std::mem::MaybeUninit<Point> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<Point>(), + 8usize, + concat!("Size of: ", stringify!(Point)) + ); + assert_eq!( + ::std::mem::align_of::<Point>(), + 4usize, + concat!("Alignment of ", stringify!(Point)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Point), "::", stringify!(x)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Point), "::", stringify!(y)) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Angle { + pub a: number, + pub b: number, +} +#[test] +fn bindgen_test_layout_Angle() { + const UNINIT: ::std::mem::MaybeUninit<Angle> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<Angle>(), + 8usize, + concat!("Size of: ", stringify!(Angle)) + ); + assert_eq!( + ::std::mem::align_of::<Angle>(), + 4usize, + concat!("Alignment of ", stringify!(Angle)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(Angle), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(Angle), "::", stringify!(b)) + ); +} +extern "C" { + pub fn baz(point: Point) -> ::std::os::raw::c_int; +} +pub const NUMBER: number = 42; diff --git a/tests/expectations/tests/use-core.rs b/tests/expectations/tests/use-core.rs index cc588219..e6124d5a 100644 --- a/tests/expectations/tests/use-core.rs +++ b/tests/expectations/tests/use-core.rs @@ -16,6 +16,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::core::mem::MaybeUninit<foo> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<foo>(), 16usize, @@ -26,47 +29,21 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Default for foo { fn default() -> Self { @@ -85,6 +62,9 @@ pub union _bindgen_ty_1 { } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::core::mem::MaybeUninit<_bindgen_ty_1> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_bindgen_ty_1>(), 8usize, @@ -95,42 +75,26 @@ fn bindgen_test_layout__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = - ::core::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = - ::core::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(bar) + ) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(baz) + ) + ); } impl Default for _bindgen_ty_1 { fn default() -> Self { diff --git a/tests/expectations/tests/use-core_1_0.rs b/tests/expectations/tests/use-core_1_0.rs index bb5ce957..8c6d0fd2 100644 --- a/tests/expectations/tests/use-core_1_0.rs +++ b/tests/expectations/tests/use-core_1_0.rs @@ -59,6 +59,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::core::mem::MaybeUninit<foo> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<foo>(), 16usize, @@ -69,47 +72,21 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_a() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) - ); - } - test_field_a(); - fn test_field_b() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize - }, - 4usize, - concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) - ); - } - test_field_b(); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::core::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).a) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(a)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).b) as usize - ptr as usize }, + 4usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(b)) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(foo), "::", stringify!(bar)) + ); } impl Clone for foo { fn clone(&self) -> Self { @@ -134,6 +111,9 @@ pub struct _bindgen_ty_1 { } #[test] fn bindgen_test_layout__bindgen_ty_1() { + const UNINIT: ::core::mem::MaybeUninit<_bindgen_ty_1> = + ::core::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::core::mem::size_of::<_bindgen_ty_1>(), 8usize, @@ -144,42 +124,26 @@ fn bindgen_test_layout__bindgen_ty_1() { 8usize, concat!("Alignment of ", stringify!(_bindgen_ty_1)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = - ::core::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(bar) - ) - ); - } - test_field_bar(); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = - ::core::mem::MaybeUninit::<_bindgen_ty_1>::uninit(); - let ptr = uninit.as_ptr(); - ::core::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_bindgen_ty_1), - "::", - stringify!(baz) - ) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(bar) + ) + ); + assert_eq!( + unsafe { ::core::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_bindgen_ty_1), + "::", + stringify!(baz) + ) + ); } impl Clone for _bindgen_ty_1 { fn clone(&self) -> Self { diff --git a/tests/expectations/tests/var-tracing.rs b/tests/expectations/tests/var-tracing.rs index 2ce68539..4280802e 100644 --- a/tests/expectations/tests/var-tracing.rs +++ b/tests/expectations/tests/var-tracing.rs @@ -12,6 +12,9 @@ pub struct Bar { } #[test] fn bindgen_test_layout_Bar() { + const UNINIT: ::std::mem::MaybeUninit<Bar> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Bar>(), 4usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_Bar() { 4usize, concat!("Alignment of ", stringify!(Bar)) ); - fn test_field_m_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Bar>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).m_baz) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Bar), - "::", - stringify!(m_baz) - ) - ); - } - test_field_m_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).m_baz) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Bar), + "::", + stringify!(m_baz) + ) + ); } extern "C" { #[link_name = "\u{1}_ZN3BarC1Ei"] diff --git a/tests/expectations/tests/vector.rs b/tests/expectations/tests/vector.rs index 936d29c6..12d2e1b1 100644 --- a/tests/expectations/tests/vector.rs +++ b/tests/expectations/tests/vector.rs @@ -12,6 +12,9 @@ pub struct foo { } #[test] fn bindgen_test_layout_foo() { + const UNINIT: ::std::mem::MaybeUninit<foo> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<foo>(), 8usize, @@ -22,23 +25,16 @@ fn bindgen_test_layout_foo() { 8usize, concat!("Alignment of ", stringify!(foo)) ); - fn test_field_mMember() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<foo>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(foo), - "::", - stringify!(mMember) - ) - ); - } - test_field_mMember(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mMember) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(foo), + "::", + stringify!(mMember) + ) + ); } pub type __m128 = [f32; 4usize]; pub type __m128d = [f64; 2usize]; diff --git a/tests/expectations/tests/virtual_inheritance.rs b/tests/expectations/tests/virtual_inheritance.rs index 9e56c826..2c15b428 100644 --- a/tests/expectations/tests/virtual_inheritance.rs +++ b/tests/expectations/tests/virtual_inheritance.rs @@ -12,6 +12,9 @@ pub struct A { } #[test] fn bindgen_test_layout_A() { + const UNINIT: ::std::mem::MaybeUninit<A> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<A>(), 4usize, @@ -22,18 +25,11 @@ fn bindgen_test_layout_A() { 4usize, concat!("Alignment of ", stringify!(A)) ); - fn test_field_foo() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<A>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize - }, - 0usize, - concat!("Offset of field: ", stringify!(A), "::", stringify!(foo)) - ); - } - test_field_foo(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).foo) as usize - ptr as usize }, + 0usize, + concat!("Offset of field: ", stringify!(A), "::", stringify!(foo)) + ); } #[repr(C)] pub struct B__bindgen_vtable(::std::os::raw::c_void); @@ -45,6 +41,9 @@ pub struct B { } #[test] fn bindgen_test_layout_B() { + const UNINIT: ::std::mem::MaybeUninit<B> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<B>(), 16usize, @@ -55,18 +54,11 @@ fn bindgen_test_layout_B() { 8usize, concat!("Alignment of ", stringify!(B)) ); - fn test_field_bar() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<B>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(B), "::", stringify!(bar)) - ); - } - test_field_bar(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bar) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(B), "::", stringify!(bar)) + ); } impl Default for B { fn default() -> Self { @@ -87,6 +79,9 @@ pub struct C { } #[test] fn bindgen_test_layout_C() { + const UNINIT: ::std::mem::MaybeUninit<C> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<C>(), 16usize, @@ -97,18 +92,11 @@ fn bindgen_test_layout_C() { 8usize, concat!("Alignment of ", stringify!(C)) ); - fn test_field_baz() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<C>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize - }, - 8usize, - concat!("Offset of field: ", stringify!(C), "::", stringify!(baz)) - ); - } - test_field_baz(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).baz) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(C), "::", stringify!(baz)) + ); } impl Default for C { fn default() -> Self { diff --git a/tests/expectations/tests/weird_bitfields.rs b/tests/expectations/tests/weird_bitfields.rs index c524b90d..9383bada 100644 --- a/tests/expectations/tests/weird_bitfields.rs +++ b/tests/expectations/tests/weird_bitfields.rs @@ -121,6 +121,9 @@ pub struct Weird { } #[test] fn bindgen_test_layout_Weird() { + const UNINIT: ::std::mem::MaybeUninit<Weird> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<Weird>(), 24usize, @@ -131,218 +134,153 @@ fn bindgen_test_layout_Weird() { 4usize, concat!("Alignment of ", stringify!(Weird)) ); - fn test_field_mStrokeDasharrayLength() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mStrokeDasharrayLength) as usize - - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mStrokeDasharrayLength) - ) - ); - } - test_field_mStrokeDasharrayLength(); - fn test_field_mClipRule() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mClipRule) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mClipRule) - ) - ); - } - test_field_mClipRule(); - fn test_field_mColorInterpolation() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mColorInterpolation) as usize - - ptr as usize - }, - 9usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mColorInterpolation) - ) - ); - } - test_field_mColorInterpolation(); - fn test_field_mColorInterpolationFilters() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mColorInterpolationFilters) as usize - - ptr as usize - }, - 10usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mColorInterpolationFilters) - ) - ); - } - test_field_mColorInterpolationFilters(); - fn test_field_mFillRule() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mFillRule) as usize - ptr as usize - }, - 11usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mFillRule) - ) - ); - } - test_field_mFillRule(); - fn test_field_mImageRendering() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mImageRendering) as usize - - ptr as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mImageRendering) - ) - ); - } - test_field_mImageRendering(); - fn test_field_mPaintOrder() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mPaintOrder) as usize - ptr as usize - }, - 13usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mPaintOrder) - ) - ); - } - test_field_mPaintOrder(); - fn test_field_mShapeRendering() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mShapeRendering) as usize - - ptr as usize - }, - 14usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mShapeRendering) - ) - ); - } - test_field_mShapeRendering(); - fn test_field_mStrokeLinecap() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mStrokeLinecap) as usize - - ptr as usize - }, - 15usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mStrokeLinecap) - ) - ); - } - test_field_mStrokeLinecap(); - fn test_field_mStrokeLinejoin() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mStrokeLinejoin) as usize - - ptr as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mStrokeLinejoin) - ) - ); - } - test_field_mStrokeLinejoin(); - fn test_field_mTextAnchor() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mTextAnchor) as usize - ptr as usize - }, - 17usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mTextAnchor) - ) - ); - } - test_field_mTextAnchor(); - fn test_field_mTextRendering() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<Weird>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).mTextRendering) as usize - - ptr as usize - }, - 18usize, - concat!( - "Offset of field: ", - stringify!(Weird), - "::", - stringify!(mTextRendering) - ) - ); - } - test_field_mTextRendering(); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mStrokeDasharrayLength) as usize - + ptr as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mStrokeDasharrayLength) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mClipRule) as usize - ptr as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mClipRule) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mColorInterpolation) as usize - + ptr as usize + }, + 9usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mColorInterpolation) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mColorInterpolationFilters) as usize - + ptr as usize + }, + 10usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mColorInterpolationFilters) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mFillRule) as usize - ptr as usize + }, + 11usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mFillRule) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mImageRendering) as usize - ptr as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mImageRendering) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mPaintOrder) as usize - ptr as usize + }, + 13usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mPaintOrder) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mShapeRendering) as usize - ptr as usize + }, + 14usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mShapeRendering) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mStrokeLinecap) as usize - ptr as usize + }, + 15usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mStrokeLinecap) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mStrokeLinejoin) as usize - ptr as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mStrokeLinejoin) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mTextAnchor) as usize - ptr as usize + }, + 17usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mTextAnchor) + ) + ); + assert_eq!( + unsafe { + ::std::ptr::addr_of!((*ptr).mTextRendering) as usize - ptr as usize + }, + 18usize, + concat!( + "Offset of field: ", + stringify!(Weird), + "::", + stringify!(mTextRendering) + ) + ); } impl Default for Weird { fn default() -> Self { diff --git a/tests/expectations/tests/zero-size-array-align.rs b/tests/expectations/tests/zero-size-array-align.rs index 31eff389..d7d0f661 100644 --- a/tests/expectations/tests/zero-size-array-align.rs +++ b/tests/expectations/tests/zero-size-array-align.rs @@ -44,6 +44,9 @@ pub struct dm_deps { } #[test] fn bindgen_test_layout_dm_deps() { + const UNINIT: ::std::mem::MaybeUninit<dm_deps> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<dm_deps>(), 8usize, @@ -54,55 +57,34 @@ fn bindgen_test_layout_dm_deps() { 8usize, concat!("Alignment of ", stringify!(dm_deps)) ); - fn test_field_count() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dm_deps>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(dm_deps), - "::", - stringify!(count) - ) - ); - } - test_field_count(); - fn test_field_filler() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dm_deps>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).filler) as usize - ptr as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(dm_deps), - "::", - stringify!(filler) - ) - ); - } - test_field_filler(); - fn test_field_device() { - assert_eq!( - unsafe { - let uninit = ::std::mem::MaybeUninit::<dm_deps>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).device) as usize - ptr as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(dm_deps), - "::", - stringify!(device) - ) - ); - } - test_field_device(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(dm_deps), + "::", + stringify!(count) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).filler) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(dm_deps), + "::", + stringify!(filler) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).device) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(dm_deps), + "::", + stringify!(device) + ) + ); } diff --git a/tests/expectations/tests/zero-sized-array.rs b/tests/expectations/tests/zero-sized-array.rs index c12afa59..4ba52498 100644 --- a/tests/expectations/tests/zero-sized-array.rs +++ b/tests/expectations/tests/zero-sized-array.rs @@ -43,6 +43,9 @@ pub struct ZeroSizedArray { } #[test] fn bindgen_test_layout_ZeroSizedArray() { + const UNINIT: ::std::mem::MaybeUninit<ZeroSizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ZeroSizedArray>(), 0usize, @@ -53,24 +56,16 @@ fn bindgen_test_layout_ZeroSizedArray() { 1usize, concat!("Alignment of ", stringify!(ZeroSizedArray)) ); - fn test_field_arr() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ZeroSizedArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ZeroSizedArray), - "::", - stringify!(arr) - ) - ); - } - test_field_arr(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).arr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ZeroSizedArray), + "::", + stringify!(arr) + ) + ); } /// And nor should this get an `_address` field. #[repr(C)] @@ -80,6 +75,9 @@ pub struct ContainsZeroSizedArray { } #[test] fn bindgen_test_layout_ContainsZeroSizedArray() { + const UNINIT: ::std::mem::MaybeUninit<ContainsZeroSizedArray> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); assert_eq!( ::std::mem::size_of::<ContainsZeroSizedArray>(), 0usize, @@ -90,24 +88,16 @@ fn bindgen_test_layout_ContainsZeroSizedArray() { 1usize, concat!("Alignment of ", stringify!(ContainsZeroSizedArray)) ); - fn test_field_zsa() { - assert_eq!( - unsafe { - let uninit = - ::std::mem::MaybeUninit::<ContainsZeroSizedArray>::uninit(); - let ptr = uninit.as_ptr(); - ::std::ptr::addr_of!((*ptr).zsa) as usize - ptr as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ContainsZeroSizedArray), - "::", - stringify!(zsa) - ) - ); - } - test_field_zsa(); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).zsa) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ContainsZeroSizedArray), + "::", + stringify!(zsa) + ) + ); } /// Inheriting from ZeroSizedArray shouldn't cause an `_address` to be inserted /// either. diff --git a/tests/headers/allowlist_warnings.h b/tests/headers/allowlist_warnings.h new file mode 100644 index 00000000..83c9e259 --- /dev/null +++ b/tests/headers/allowlist_warnings.h @@ -0,0 +1,2 @@ +// bindgen-flags: --allowlist-function "doesnt_match_anything" +int non_matched_function(int arg); diff --git a/tests/headers/issue-2239-template-dependent-bit-width.hpp b/tests/headers/issue-2239-template-dependent-bit-width.hpp new file mode 100644 index 00000000..4e6feb3f --- /dev/null +++ b/tests/headers/issue-2239-template-dependent-bit-width.hpp @@ -0,0 +1,10 @@ +template <class a> class b { + typedef a td; + using ta = a; + struct foo { + a foo : sizeof(a); + a : sizeof(a); + td : sizeof(td); + ta : sizeof(ta); + }; +}; diff --git a/tests/headers/keywords.h b/tests/headers/keywords.h index d7fe2065..3b3fc497 100644 --- a/tests/headers/keywords.h +++ b/tests/headers/keywords.h @@ -15,6 +15,8 @@ int str; int dyn; int as; +int async; +int await; int box; int crate; int false; diff --git a/tests/headers/pointer-attr.h b/tests/headers/pointer-attr.h new file mode 100644 index 00000000..fe0004b8 --- /dev/null +++ b/tests/headers/pointer-attr.h @@ -0,0 +1 @@ +void a(const char __attribute__((btf_type_tag("a"))) *); diff --git a/tests/headers/sorted-items.h b/tests/headers/sorted-items.h new file mode 100644 index 00000000..11fc2ef4 --- /dev/null +++ b/tests/headers/sorted-items.h @@ -0,0 +1,17 @@ +// bindgen-flags: --sort-semantically -- --target=x86_64-unknown-linux + +int foo(); +typedef int number; +int bar(number x); +struct Point +{ + number x; + number y; +}; +struct Angle +{ + number a; + number b; +}; +int baz(struct Point point); +const number NUMBER = 42; diff --git a/tests/headers/unsorted-items.h b/tests/headers/unsorted-items.h new file mode 100644 index 00000000..23962d18 --- /dev/null +++ b/tests/headers/unsorted-items.h @@ -0,0 +1,15 @@ +int foo(); +typedef int number; +int bar(number x); +struct Point +{ + number x; + number y; +}; +struct Angle +{ + number a; + number b; +}; +int baz(struct Point point); +const number NUMBER = 42; diff --git a/tests/tests.rs b/tests/tests.rs index cc64cfdd..8dcc5437 100644 --- a/tests/tests.rs +++ b/tests/tests.rs @@ -139,7 +139,7 @@ fn error_diff_mismatch( println!("+++ generated from: {:?}", header); } - for diff in diff::lines(&expected, &actual) { + for diff in diff::lines(expected, actual) { match diff { diff::Result::Left(l) => println!("-{}", l), diff::Result::Both(l, _) => println!(" {}", l), @@ -168,7 +168,7 @@ fn error_diff_mismatch( .output()?; } - return Err(Error::new(ErrorKind::Other, "Header and binding differ! Run with BINDGEN_OVERWRITE_EXPECTED=1 in the environment to automatically overwrite the expectation or with BINDGEN_TESTS_DIFFTOOL=meld to do this manually.")); + Err(Error::new(ErrorKind::Other, "Header and binding differ! Run with BINDGEN_OVERWRITE_EXPECTED=1 in the environment to automatically overwrite the expectation or with BINDGEN_TESTS_DIFFTOOL=meld to do this manually.")) } fn compare_generated_header( @@ -670,3 +670,19 @@ fn dump_preprocessed_input() { "cpp-empty-layout.hpp is in the preprocessed file" ); } + +#[test] +fn allowlist_warnings() { + let header = concat!( + env!("CARGO_MANIFEST_DIR"), + "/tests/headers/allowlist_warnings.h" + ); + + let bindings = builder() + .header(header) + .allowlist_function("doesnt_match_anything") + .generate() + .expect("unable to generate bindings"); + + assert_eq!(1, bindings.warnings().len()); +} |