Start testing types of struct fields

This commit is contained in:
Alex Crichton 2015-09-16 14:13:20 -07:00
parent e0f4d107fa
commit f3b9748e4c
3 changed files with 8 additions and 3 deletions

View File

@ -189,5 +189,10 @@ fn main() {
// Windows dllimport oddness?
cfg.skip_fn_ptrcheck(move |_| windows);
cfg.skip_field_type(|struct_, field| {
// This is a weird union, don't check the type.
struct_ == "ifaddrs" && field == "ifa_ifu"
});
cfg.generate("../src/lib.rs", "all.rs");
}

View File

@ -48,7 +48,7 @@ s! {
}
pub struct in6_addr {
pub s6_addr: [u16; 8],
pub s6_addr16: [u16; 8],
__align: [u32; 0],
}

View File

@ -24,7 +24,7 @@ pub enum timezone {}
s! {
pub struct sockaddr {
pub sa_family: sa_family_t,
pub sa_data: [u8; 14],
pub sa_data: [::c_char; 14],
}
pub struct sockaddr_in {
@ -49,7 +49,7 @@ s! {
pub struct sockaddr_storage {
pub ss_family: sa_family_t,
__ss_align: isize,
__ss_align: ::size_t,
#[cfg(target_pointer_width = "32")]
__ss_pad2: [u8; 128 - 2 * 4],
#[cfg(target_pointer_width = "64")]