blob: 3879af2a3c51f6915a6f069d42c03974cf2556cc [file] [log] [blame]
#![allow(dead_code, non_snake_case, non_camel_case_types, non_upper_case_globals)]
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct A {
pub a: ::std::os::raw::c_int,
}
#[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, concat!("Size of: ", stringify!(A))
);
assert_eq!(
::std::mem::align_of:: < A > (), 4usize, concat!("Alignment of ", stringify!(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"]
pub fn make() -> A;
}
impl A {
#[inline]
pub unsafe fn make() -> A {
make()
}
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct B {
pub b: ::std::os::raw::c_int,
}
#[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, concat!("Size of: ", stringify!(B))
);
assert_eq!(
::std::mem::align_of:: < B > (), 4usize, concat!("Alignment of ", stringify!(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"]
pub fn make1() -> B;
}
impl B {
#[inline]
pub unsafe fn make() -> B {
make1()
}
}