diff --git a/src/fuchsia/mod.rs b/src/fuchsia/mod.rs index 60f0a2f45e740..6513002ca96d2 100644 --- a/src/fuchsia/mod.rs +++ b/src/fuchsia/mod.rs @@ -841,7 +841,7 @@ s! { pub f_namelen: c_ulong, pub f_frsize: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 4], + f_spare: Padding<[c_ulong; 4]>, } pub struct msghdr { @@ -858,7 +858,7 @@ s! { pub struct cmsghdr { pub cmsg_len: crate::socklen_t, - pub __pad1: c_int, + __pad1: Padding, pub cmsg_level: c_int, pub cmsg_type: c_int, } @@ -924,7 +924,7 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, diff --git a/src/new/apple/xnu/mach/arm/_structs.rs b/src/new/apple/xnu/mach/arm/_structs.rs index 6160e773fd33b..7ecd67e76a88a 100644 --- a/src/new/apple/xnu/mach/arm/_structs.rs +++ b/src/new/apple/xnu/mach/arm/_structs.rs @@ -2,7 +2,6 @@ //! //! -#[cfg(target_arch = "arm")] use crate::prelude::*; s! { @@ -19,7 +18,7 @@ s! { pub __sp: u64, pub __pc: u64, pub __cpsr: u32, - pub __pad: u32, + __pad: Padding, } #[cfg(target_arch = "aarch64")] diff --git a/src/new/apple/xnu/mach/i386/_structs.rs b/src/new/apple/xnu/mach/i386/_structs.rs index 15822f7710de8..fd7de380c8de0 100644 --- a/src/new/apple/xnu/mach/i386/_structs.rs +++ b/src/new/apple/xnu/mach/i386/_structs.rs @@ -46,18 +46,18 @@ s! { } pub struct __darwin_x86_float_state64 { - pub __fpu_reserved: [c_int; 2], + __fpu_reserved: Padding<[c_int; 2]>, __fpu_fcw: c_short, __fpu_fsw: c_short, pub __fpu_ftw: u8, - pub __fpu_rsrv1: u8, + __fpu_rsrv1: Padding, pub __fpu_fop: u16, pub __fpu_ip: u32, pub __fpu_cs: u16, - pub __fpu_rsrv2: u16, + __fpu_rsrv2: Padding, pub __fpu_dp: u32, pub __fpu_ds: u16, - pub __fpu_rsrv3: u16, + __fpu_rsrv3: Padding, pub __fpu_mxcsr: u32, pub __fpu_mxcsrmask: u32, pub __fpu_stmm0: __darwin_mmst_reg, @@ -87,6 +87,6 @@ s! { // FIXME(apple): this field is actually [u8; 96], but defining it with a bigger type allows // us to auto-implement traits for it since the length of the array is less than 32 __fpu_rsrv4: [u32; 24], - pub __fpu_reserved1: c_int, + __fpu_reserved1: Padding, } } diff --git a/src/new/apple/xnu/net/bpf.rs b/src/new/apple/xnu/net/bpf.rs index 2f938c577088e..3580190c9d7fc 100644 --- a/src/new/apple/xnu/net/bpf.rs +++ b/src/new/apple/xnu/net/bpf.rs @@ -28,7 +28,7 @@ s_no_extra_traits! { pub union __c_anonymous_bfl_u { pub bflu_list: *mut u32, - pub bflu_pad: u64, + bflu_pad: Padding, } } diff --git a/src/new/glibc/sysdeps/unix/linux/net/route.rs b/src/new/glibc/sysdeps/unix/linux/net/route.rs index 1da2b47ebbb4a..ea3755743b067 100644 --- a/src/new/glibc/sysdeps/unix/linux/net/route.rs +++ b/src/new/glibc/sysdeps/unix/linux/net/route.rs @@ -7,20 +7,19 @@ use crate::prelude::*; s! { pub struct rtentry { - pub rt_pad1: c_ulong, + rt_pad1: Padding, pub rt_dst: crate::sockaddr, pub rt_gateway: crate::sockaddr, pub rt_genmask: crate::sockaddr, pub rt_flags: c_ushort, - pub rt_pad2: c_short, - pub rt_pad3: c_ulong, + rt_pad2: Padding, + rt_pad3: Padding, pub rt_tos: c_uchar, pub rt_class: c_uchar, - // FIXME(1.0): private padding fields #[cfg(target_pointer_width = "64")] - pub rt_pad4: [c_short; 3usize], + rt_pad4: Padding<[c_short; 3usize]>, #[cfg(not(target_pointer_width = "64"))] - pub rt_pad4: c_short, + rt_pad4: Padding, pub rt_metric: c_short, pub rt_dev: *mut c_char, pub rt_mtu: c_ulong, diff --git a/src/new/linux_uapi/linux/if_packet.rs b/src/new/linux_uapi/linux/if_packet.rs index 56e4a9d4dfb9e..fac2c65b4506c 100644 --- a/src/new/linux_uapi/linux/if_packet.rs +++ b/src/new/linux_uapi/linux/if_packet.rs @@ -141,14 +141,14 @@ s! { pub tp_nsec: u32, pub tp_vlan_tci: u16, pub tp_vlan_tpid: u16, - pub tp_padding: [u8; 4], + tp_padding: Padding<[u8; 4]>, } pub struct tpacket_hdr_variant1 { pub tp_rxhash: u32, pub tp_vlan_tci: u32, pub tp_vlan_tpid: u16, - pub tp_padding: u16, + tp_padding: Padding, } pub struct tpacket3_hdr { @@ -161,7 +161,7 @@ s! { pub tp_mac: u16, pub tp_net: u16, pub hv1: tpacket_hdr_variant1, - pub tp_padding: [u8; 8], + tp_padding: Padding<[u8; 8]>, } pub struct tpacket_bd_ts { diff --git a/src/new/musl/sys/socket.rs b/src/new/musl/sys/socket.rs index 8083ddc2a7dc4..ab01080ca4076 100644 --- a/src/new/musl/sys/socket.rs +++ b/src/new/musl/sys/socket.rs @@ -26,10 +26,10 @@ s! { pub struct cmsghdr { #[cfg(all(target_pointer_width = "64", target_endian = "big"))] - pub __pad1: c_int, + __pad1: Padding, pub cmsg_len: crate::socklen_t, #[cfg(all(target_pointer_width = "64", target_endian = "little"))] - pub __pad1: c_int, + __pad1: Padding, pub cmsg_level: c_int, pub cmsg_type: c_int, } diff --git a/src/unix/aix/mod.rs b/src/unix/aix/mod.rs index b593c11cce0ff..eccf47efa3ea1 100644 --- a/src/unix/aix/mod.rs +++ b/src/unix/aix/mod.rs @@ -154,7 +154,7 @@ s! { pub f_flag: c_ulong, pub f_namemax: c_ulong, pub f_fstr: [c_char; 32], - pub f_filler: [c_ulong; 16], + f_filler: Padding<[c_ulong; 16]>, } pub struct lconv { @@ -373,7 +373,7 @@ s! { pub ss_sp: *mut c_void, pub ss_size: size_t, pub ss_flags: c_int, - pub __pad: [c_int; 4], + __pad: Padding<[c_int; 4]>, } pub struct posix_spawnattr_t { @@ -420,9 +420,9 @@ s! { pub ut_time: time64_t, pub ut_exit: exit_status, pub ut_host: [c_char; 256], - pub __dbl_word_pad: c_int, - pub __reservedA: [c_int; 2], - pub __reservedV: [c_int; 6], + __dbl_word_pad: Padding, + __reservedA: Padding<[c_int; 2]>, + __reservedV: Padding<[c_int; 6]>, } pub struct regmatch_t { diff --git a/src/unix/aix/powerpc64.rs b/src/unix/aix/powerpc64.rs index 37f0d0f743cbe..5aa45145a9547 100644 --- a/src/unix/aix/powerpc64.rs +++ b/src/unix/aix/powerpc64.rs @@ -40,7 +40,7 @@ s! { pub f_flag: c_ulong, pub f_namemax: c_ulong, pub f_fstr: [c_char; 32], - pub f_filler: [c_ulong; 16], + f_filler: Padding<[c_ulong; 16]>, } pub struct pthread_rwlock_t { diff --git a/src/unix/bsd/apple/b32/mod.rs b/src/unix/bsd/apple/b32/mod.rs index f6e861abc3434..37ef55c0f8e0b 100644 --- a/src/unix/bsd/apple/b32/mod.rs +++ b/src/unix/bsd/apple/b32/mod.rs @@ -13,7 +13,7 @@ s! { pub ifi_hdrlen: c_uchar, pub ifi_recvquota: c_uchar, pub ifi_xmitquota: c_uchar, - pub ifi_unused1: c_uchar, + ifi_unused1: Padding, pub ifi_mtu: u32, pub ifi_metric: u32, pub ifi_baudrate: u32, @@ -31,10 +31,10 @@ s! { pub ifi_recvtiming: u32, pub ifi_xmittiming: u32, pub ifi_lastchange: crate::timeval, - pub ifi_unused2: u32, + ifi_unused2: Padding, pub ifi_hwassist: u32, - pub ifi_reserved1: u32, - pub ifi_reserved2: u32, + ifi_reserved1: Padding, + ifi_reserved2: Padding, } #[cfg(target_os = "macos")] diff --git a/src/unix/bsd/apple/b64/mod.rs b/src/unix/bsd/apple/b64/mod.rs index 541d16e3e5608..a938cf1a2b3e4 100644 --- a/src/unix/bsd/apple/b64/mod.rs +++ b/src/unix/bsd/apple/b64/mod.rs @@ -17,7 +17,7 @@ s! { pub ifi_hdrlen: c_uchar, pub ifi_recvquota: c_uchar, pub ifi_xmitquota: c_uchar, - pub ifi_unused1: c_uchar, + ifi_unused1: Padding, pub ifi_mtu: u32, pub ifi_metric: u32, pub ifi_baudrate: u32, @@ -35,10 +35,10 @@ s! { pub ifi_recvtiming: u32, pub ifi_xmittiming: u32, pub ifi_lastchange: timeval32, - pub ifi_unused2: u32, + ifi_unused2: Padding, pub ifi_hwassist: u32, - pub ifi_reserved1: u32, - pub ifi_reserved2: u32, + ifi_reserved1: Padding, + ifi_reserved2: Padding, } #[cfg(target_os = "macos")] diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index 9cbf2c807a350..522ab44b4670e 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -309,8 +309,8 @@ s! { pub st_blksize: blksize_t, pub st_flags: u32, pub st_gen: u32, - pub st_lspare: i32, - pub st_qspare: [i64; 2], + st_lspare: Padding, + st_qspare: Padding<[i64; 2]>, } pub struct siginfo_t { @@ -350,10 +350,10 @@ s! { } pub struct fpunchhole_t { - pub fp_flags: c_uint, /* unused */ - pub reserved: c_uint, /* (to maintain 8-byte alignment) */ - pub fp_offset: off_t, /* IN: start of the region */ - pub fp_length: off_t, /* IN: size of the region */ + pub fp_flags: c_uint, /* unused */ + reserved: Padding, /* (to maintain 8-byte alignment) */ + pub fp_offset: off_t, /* IN: start of the region */ + pub fp_length: off_t, /* IN: size of the region */ } pub struct ftrimactivefile_t { @@ -363,7 +363,7 @@ s! { pub struct fspecread_t { pub fsr_flags: c_uint, - pub reserved: c_uint, + reserved: Padding, pub fsr_offset: off_t, pub fsr_length: off_t, } @@ -422,7 +422,7 @@ s! { pub dqb_btime: u32, pub dqb_itime: u32, pub dqb_id: u32, - pub dqb_spare: [u32; 4], + dqb_spare: Padding<[u32; 4]>, } pub struct if_msghdr { @@ -476,7 +476,7 @@ s! { pub rmx_rtt: u32, pub rmx_rttvar: u32, pub rmx_pksent: u32, - pub rmx_filler: [u32; 4], + rmx_filler: Padding<[u32; 4]>, } #[cfg(target_os = "macos")] @@ -505,7 +505,7 @@ s! { pub rtm_addrs: c_int, pub rtm_refcnt: i32, pub rtm_parentflags: c_int, - pub rtm_reserved: c_int, + rtm_reserved: Padding, pub rtm_use: c_int, pub rtm_inits: u32, pub rtm_rmx: rt_metrics, @@ -724,7 +724,7 @@ s! { pub ss_sysaddr: u16, pub sc_id: u32, pub sc_unit: u32, - pub sc_reserved: [u32; 5], + sc_reserved: Padding<[u32; 5]>, } pub struct in_pktinfo { @@ -895,14 +895,14 @@ s! { pub vst_flags: u32, pub vst_gen: u32, pub vst_rdev: u32, - pub vst_qspare: [i64; 2], + vst_qspare: Padding<[i64; 2]>, } #[cfg(target_os = "macos")] pub struct vnode_info { pub vi_stat: vinfo_stat, pub vi_type: c_int, - pub vi_pad: c_int, + vi_pad: Padding, pub vi_fsid: crate::fsid_t, } @@ -1074,7 +1074,7 @@ s! { pub struct attrlist { pub bitmapcount: c_ushort, - pub reserved: u16, + reserved: Padding, pub commonattr: attrgroup_t, pub volattr: attrgroup_t, pub dirattr: attrgroup_t, @@ -1244,7 +1244,7 @@ s! { /// Number of drops in send queue pub ifmd_snd_drops: c_uint, /// For future expansion - pub ifmd_filler: [c_uint; 4], + ifmd_filler: Padding<[c_uint; 4]>, /// Generic information and statistics pub ifmd_data: if_data64, } @@ -1300,10 +1300,10 @@ s! { pub sem_base: i32, pub sem_nsems: c_ushort, pub sem_otime: crate::time_t, - pub sem_pad1: i32, + sem_pad1: Padding, pub sem_ctime: crate::time_t, - pub sem_pad2: i32, - pub sem_pad3: [i32; 4], + sem_pad2: Padding, + sem_pad3: Padding<[i32; 4]>, } #[repr(packed(4))] @@ -1317,7 +1317,7 @@ s! { pub shm_dtime: crate::time_t, // FIXME(macos): 64-bit wrong align => wrong offset pub shm_ctime: crate::time_t, // FIXME(macos): 64-bit wrong align => wrong offset // FIXME: 64-bit wrong align => wrong offset: - pub shm_internal: *mut c_void, + shm_internal: Padding<*mut c_void>, } #[cfg(target_os = "macos")] @@ -1352,7 +1352,7 @@ s! { pub f_mntonname: [c_char; 1024], pub f_mntfromname: [c_char; 1024], pub f_flags_ext: u32, - pub f_reserved: [u32; 7], + f_reserved: Padding<[u32; 7]>, } pub struct dirent { @@ -1473,7 +1473,7 @@ s! { pub ifi_hdrlen: c_uchar, pub ifi_recvquota: c_uchar, pub ifi_xmitquota: c_uchar, - pub ifi_unused1: c_uchar, + ifi_unused1: Padding, pub ifi_mtu: u32, pub ifi_metric: u32, pub ifi_baudrate: u64, @@ -1598,7 +1598,7 @@ s! { pub struct sockaddr_vm { pub svm_len: c_uchar, pub svm_family: crate::sa_family_t, - pub svm_reserved1: c_ushort, + svm_reserved1: Padding, pub svm_port: c_uint, pub svm_cid: c_uint, } diff --git a/src/unix/bsd/freebsdlike/dragonfly/mod.rs b/src/unix/bsd/freebsdlike/dragonfly/mod.rs index 17610214e5e60..b35afe5fd38fa 100644 --- a/src/unix/bsd/freebsdlike/dragonfly/mod.rs +++ b/src/unix/bsd/freebsdlike/dragonfly/mod.rs @@ -152,9 +152,9 @@ s! { pub __old_st_blksize: u32, pub st_flags: u32, pub st_gen: u32, - pub st_lspare: i32, + st_lspare: Padding, pub st_blksize: i64, - pub st_qspare2: i64, + st_qspare2: Padding, } pub struct if_data { diff --git a/src/unix/bsd/freebsdlike/freebsd/aarch64.rs b/src/unix/bsd/freebsdlike/freebsd/aarch64.rs index 232770f6e00fa..d0296698064d7 100644 --- a/src/unix/bsd/freebsdlike/freebsd/aarch64.rs +++ b/src/unix/bsd/freebsdlike/freebsd/aarch64.rs @@ -13,7 +13,7 @@ s! { pub gp_sp: crate::register_t, pub gp_elr: crate::register_t, pub gp_spsr: u32, - pub gp_pad: c_int, + gp_pad: Padding, } pub struct fpregs { @@ -21,15 +21,15 @@ s! { pub fp_sr: u32, pub fp_cr: u32, pub fp_flags: c_int, - pub fp_pad: c_int, + fp_pad: Padding, } pub struct mcontext_t { pub mc_gpregs: gpregs, pub mc_fpregs: fpregs, pub mc_flags: c_int, - pub mc_pad: c_int, - pub mc_spare: [u64; 8], + mc_pad: Padding, + mc_spare: Padding<[u64; 8]>, } } diff --git a/src/unix/bsd/freebsdlike/freebsd/arm.rs b/src/unix/bsd/freebsdlike/freebsd/arm.rs index a0f51834d45dd..4aa0f69455f92 100644 --- a/src/unix/bsd/freebsdlike/freebsd/arm.rs +++ b/src/unix/bsd/freebsdlike/freebsd/arm.rs @@ -13,7 +13,7 @@ s! { pub __gregs: crate::__gregset_t, pub mc_vfp_size: usize, pub mc_vfp_ptr: *mut c_void, - pub mc_spare: [c_uint; 33], + mc_spare: Padding<[c_uint; 33]>, } } diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs index cd0c3e071012f..76de5d946ec72 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs @@ -21,7 +21,7 @@ s! { pub st_blksize: crate::blksize_t, pub st_flags: crate::fflags_t, pub st_gen: u32, - pub st_lspare: i32, + st_lspare: Padding, pub st_birthtime: crate::time_t, pub st_birthtime_nsec: c_long, __unused: Padding<[u8; 8]>, diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs index 9e80a792a8c7b..b7ee3bbc19000 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs @@ -21,7 +21,7 @@ s! { pub st_blksize: crate::blksize_t, pub st_flags: crate::fflags_t, pub st_gen: u32, - pub st_lspare: i32, + st_lspare: Padding, pub st_birthtime: crate::time_t, pub st_birthtime_nsec: c_long, } diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs index 87b9ac9fcf810..dafb4dd3b67bd 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs @@ -73,7 +73,7 @@ s! { /// Job control counter. pub ki_jobc: c_short, /// Unused (just here for alignment). - pub ki_spare_short1: c_short, + ki_spare_short1: Padding, /// Controlling tty dev. pub ki_tdev: crate::dev_t, /// Signals arrived but not delivered. @@ -97,7 +97,7 @@ s! { /// Number of groups. pub ki_ngroups: c_short, /// Unused (just here for alignment). - pub ki_spare_short2: c_short, + ki_spare_short2: Padding, /// Groups. pub ki_groups: [crate::gid_t; crate::KI_NGROUPS], /// Virtual size. @@ -167,9 +167,9 @@ s! { /// More thread name. pub ki_moretdname: [c_char; crate::MAXCOMLEN - crate::TDNAMLEN + 1], /// Spare string space. - pub ki_sparestrings: [c_char; 46], + ki_sparestrings: Padding<[c_char; 46]>, /// Spare room for growth. - pub ki_spareints: [c_int; crate::KI_NSPARE_INT], + ki_spareints: Padding<[c_int; crate::KI_NSPARE_INT]>, /// Which cpu we are on. pub ki_oncpu: c_int, /// Last cpu we were on. @@ -203,8 +203,8 @@ s! { pub ki_udata: *mut c_void, // This is normally "struct thread". pub ki_tdaddr: *mut c_void, - pub ki_spareptrs: [*mut c_void; crate::KI_NSPARE_PTR], - pub ki_sparelongs: [c_long; crate::KI_NSPARE_LONG], + ki_spareptrs: Padding<[*mut c_void; crate::KI_NSPARE_PTR]>, + ki_sparelongs: Padding<[c_long; crate::KI_NSPARE_LONG]>, /// PS_* flags. pub ki_sflag: c_long, /// kthread flag. diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs index ab1de57b051a1..33f1e2d004d10 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs @@ -81,7 +81,7 @@ s! { /// Job control counter. pub ki_jobc: c_short, /// Unused (just here for alignment). - pub ki_spare_short1: c_short, + ki_spare_short1: Padding, /// Controlling tty dev. pub ki_tdev_freebsd11: u32, /// Signals arrived but not delivered. @@ -105,7 +105,7 @@ s! { /// Number of groups. pub ki_ngroups: c_short, /// Unused (just here for alignment). - pub ki_spare_short2: c_short, + ki_spare_short2: Padding, /// Groups. pub ki_groups: [crate::gid_t; crate::KI_NGROUPS], /// Virtual size. @@ -175,9 +175,9 @@ s! { /// More thread name. pub ki_moretdname: [c_char; crate::MAXCOMLEN - crate::TDNAMLEN + 1], /// Spare string space. - pub ki_sparestrings: [c_char; 46], + ki_sparestrings: Padding<[c_char; 46]>, /// Spare room for growth. - pub ki_spareints: [c_int; crate::KI_NSPARE_INT], + ki_spareints: Padding<[c_int; crate::KI_NSPARE_INT]>, /// Controlling tty dev. pub ki_tdev: crate::dev_t, /// Which cpu we are on. @@ -213,8 +213,8 @@ s! { pub ki_udata: *mut c_void, // This is normally "struct thread". pub ki_tdaddr: *mut c_void, - pub ki_spareptrs: [*mut c_void; crate::KI_NSPARE_PTR], - pub ki_sparelongs: [c_long; crate::KI_NSPARE_LONG], + ki_spareptrs: Padding<[*mut c_void; crate::KI_NSPARE_PTR]>, + ki_sparelongs: Padding<[c_long; crate::KI_NSPARE_LONG]>, /// PS_* flags. pub ki_sflag: c_long, /// kthread flag. @@ -252,7 +252,7 @@ s! { pub st_blksize: crate::blksize_t, pub st_flags: crate::fflags_t, pub st_gen: u64, - pub st_spare: [u64; 10], + st_spare: Padding<[u64; 10]>, } pub struct dirent { diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs index 27f24faa3e197..7dbabfda9ee8d 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs @@ -91,7 +91,7 @@ s! { /// Job control counter. pub ki_jobc: c_short, /// Unused (just here for alignment). - pub ki_spare_short1: c_short, + ki_spare_short1: Padding, /// Controlling tty dev. pub ki_tdev_freebsd11: u32, /// Signals arrived but not delivered. @@ -115,7 +115,7 @@ s! { /// Number of groups. pub ki_ngroups: c_short, /// Unused (just here for alignment). - pub ki_spare_short2: c_short, + ki_spare_short2: Padding, /// Groups. pub ki_groups: [crate::gid_t; crate::KI_NGROUPS], /// Virtual size. @@ -185,9 +185,9 @@ s! { /// More thread name. pub ki_moretdname: [c_char; crate::MAXCOMLEN - crate::TDNAMLEN + 1], /// Spare string space. - pub ki_sparestrings: [c_char; 46], + ki_sparestrings: Padding<[c_char; 46]>, /// Spare room for growth. - pub ki_spareints: [c_int; crate::KI_NSPARE_INT], + ki_spareints: Padding<[c_int; crate::KI_NSPARE_INT]>, /// Controlling tty dev. pub ki_tdev: u64, /// Which cpu we are on. @@ -226,8 +226,8 @@ s! { // This is normally "struct pwddesc". /// Pointer to process paths info. pub ki_pd: *mut c_void, - pub ki_spareptrs: [*mut c_void; crate::KI_NSPARE_PTR], - pub ki_sparelongs: [c_long; crate::KI_NSPARE_LONG], + ki_spareptrs: Padding<[*mut c_void; crate::KI_NSPARE_PTR]>, + ki_sparelongs: Padding<[c_long; crate::KI_NSPARE_LONG]>, /// PS_* flags. pub ki_sflag: c_long, /// kthread flag. @@ -265,7 +265,7 @@ s! { pub st_blksize: crate::blksize_t, pub st_flags: crate::fflags_t, pub st_gen: u64, - pub st_spare: [u64; 10], + st_spare: Padding<[u64; 10]>, } pub struct dirent { diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs index 0ac28e8771dda..1090c0aa27e87 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs @@ -91,7 +91,7 @@ s! { /// Job control counter. pub ki_jobc: c_short, /// Unused (just here for alignment). - pub ki_spare_short1: c_short, + ki_spare_short1: Padding, /// Controlling tty dev. pub ki_tdev_freebsd11: u32, /// Signals arrived but not delivered. @@ -115,7 +115,7 @@ s! { /// Number of groups. pub ki_ngroups: c_short, /// Unused (just here for alignment). - pub ki_spare_short2: c_short, + ki_spare_short2: Padding, /// Groups. pub ki_groups: [crate::gid_t; crate::KI_NGROUPS], /// Virtual size. @@ -185,9 +185,9 @@ s! { /// More thread name. pub ki_moretdname: [c_char; crate::MAXCOMLEN - crate::TDNAMLEN + 1], /// Spare string space. - pub ki_sparestrings: [c_char; 46], + ki_sparestrings: Padding<[c_char; 46]>, /// Spare room for growth. - pub ki_spareints: [c_int; crate::KI_NSPARE_INT], + ki_spareints: Padding<[c_int; crate::KI_NSPARE_INT]>, /// Controlling tty dev. pub ki_tdev: u64, /// Which cpu we are on. @@ -226,8 +226,8 @@ s! { // This is normally "struct pwddesc". /// Pointer to process paths info. pub ki_pd: *mut c_void, - pub ki_spareptrs: [*mut c_void; crate::KI_NSPARE_PTR], - pub ki_sparelongs: [c_long; crate::KI_NSPARE_LONG], + ki_spareptrs: Padding<[*mut c_void; crate::KI_NSPARE_PTR]>, + ki_sparelongs: Padding<[c_long; crate::KI_NSPARE_LONG]>, /// PS_* flags. pub ki_sflag: c_long, /// kthread flag. @@ -267,7 +267,7 @@ s! { pub st_flags: crate::fflags_t, pub st_gen: u64, pub st_filerev: u64, - pub st_spare: [u64; 9], + st_spare: Padding<[u64; 9]>, } pub struct dirent { diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs index 94f01c3786c31..d3f9290988ea7 100644 --- a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs @@ -92,7 +92,7 @@ s! { /// Job control counter. pub ki_jobc: c_short, /// Unused (just here for alignment). - pub ki_spare_short1: c_short, + ki_spare_short1: Padding, /// Controlling tty dev. pub ki_tdev_freebsd11: u32, /// Signals arrived but not delivered. @@ -116,7 +116,7 @@ s! { /// Number of groups. pub ki_ngroups: c_short, /// Unused (just here for alignment). - pub ki_spare_short2: c_short, + ki_spare_short2: Padding, /// Groups. pub ki_groups: [crate::gid_t; crate::KI_NGROUPS], /// Virtual size. @@ -186,9 +186,9 @@ s! { /// More thread name. pub ki_moretdname: [c_char; crate::MAXCOMLEN - crate::TDNAMLEN + 1], /// Spare string space. - pub ki_sparestrings: [c_char; 46], + ki_sparestrings: Padding<[c_char; 46]>, /// Spare room for growth. - pub ki_spareints: [c_int; crate::KI_NSPARE_INT], + ki_spareints: Padding<[c_int; crate::KI_NSPARE_INT]>, /// Controlling tty dev. pub ki_tdev: u64, /// Which cpu we are on. @@ -229,8 +229,8 @@ s! { pub ki_pd: *mut c_void, /// Address of the ext err msg place pub ki_uerrmsg: *mut c_void, - pub ki_spareptrs: [*mut c_void; crate::KI_NSPARE_PTR], - pub ki_sparelongs: [c_long; crate::KI_NSPARE_LONG], + ki_spareptrs: Padding<[*mut c_void; crate::KI_NSPARE_PTR]>, + ki_sparelongs: Padding<[c_long; crate::KI_NSPARE_LONG]>, /// PS_* flags. pub ki_sflag: c_long, /// kthread flag. @@ -269,7 +269,7 @@ s! { pub st_flags: crate::fflags_t, pub st_gen: u64, pub st_filerev: u64, - pub st_spare: [u64; 9], + st_spare: Padding<[u64; 9]>, } pub struct dirent { diff --git a/src/unix/bsd/freebsdlike/freebsd/mod.rs b/src/unix/bsd/freebsdlike/freebsd/mod.rs index 2d9e00c49a638..e4522043e931f 100644 --- a/src/unix/bsd/freebsdlike/freebsd/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/mod.rs @@ -557,7 +557,7 @@ s! { pub t_pw: i16, pub t_sl: i16, pub t_sw: i16, - pub t_pad: [u16; 3], + t_pad: Padding<[u16; 3]>, } pub struct sockstat { @@ -620,7 +620,7 @@ s! { pub ifm_flags: c_int, /// index for associated ifp pub ifm_index: c_ushort, - pub _ifm_spare1: c_ushort, + _ifm_spare1: Padding, /// statistics and other data about if pub ifm_data: if_data, } @@ -639,12 +639,12 @@ s! { /// index for associated ifp pub ifm_index: c_ushort, /// spare space to grow if_index, see if_var.h - pub _ifm_spare1: c_ushort, + _ifm_spare1: Padding, /// length of if_msghdrl incl. if_data pub ifm_len: c_ushort, /// offset of if_data from beginning pub ifm_data_off: c_ushort, - pub _ifm_spare2: c_int, + _ifm_spare2: Padding, /// statistics and other data about if pub ifm_data: if_data, } @@ -662,7 +662,7 @@ s! { pub ifam_flags: c_int, /// index for associated ifp pub ifam_index: c_ushort, - pub _ifam_spare1: c_ushort, + _ifam_spare1: Padding, /// value of ifa_ifp->if_metric pub ifam_metric: c_int, } @@ -681,7 +681,7 @@ s! { /// index for associated ifp pub ifam_index: c_ushort, /// spare space to grow if_index, see if_var.h - pub _ifam_spare1: c_ushort, + _ifam_spare1: Padding, /// length of ifa_msghdrl incl. if_data pub ifam_len: c_ushort, /// offset of if_data from beginning @@ -705,7 +705,7 @@ s! { pub ifmam_flags: c_int, /// index for associated ifp pub ifmam_index: c_ushort, - pub _ifmam_spare1: c_ushort, + _ifmam_spare1: Padding, } pub struct if_announcemsghdr { @@ -778,8 +778,8 @@ s! { pub offset: u8, /// read length pub len: u8, - pub spare0: u8, - pub spare1: u32, + spare0: Padding, + spare1: Padding, /// read buffer pub data: [u8; 8], } @@ -789,8 +789,8 @@ s! { pub ifrh_name: [c_char; crate::IFNAMSIZ as usize], /// RSS_FUNC_ pub ifrh_func: u8, - pub ifrh_spare0: u8, - pub ifrh_spare1: u16, + ifrh_spare0: Padding, + ifrh_spare1: Padding, /// RSS_TYPE_ pub ifrh_types: u32, } @@ -809,7 +809,7 @@ s! { /// number of drops in send queue pub ifmd_snd_drops: c_int, /// for future expansion - pub ifmd_filler: [c_int; 4], + ifmd_filler: Padding<[c_int; 4]>, /// generic information and statistics pub ifmd_data: if_data, } @@ -859,7 +859,7 @@ s! { pub hz: c_int, /// micro-seconds per hz tick pub tick: c_int, - pub spare: c_int, + spare: Padding, /// statistics clock frequency pub stathz: c_int, /// profiling clock frequency @@ -1060,11 +1060,11 @@ s! { #[cfg(any(freebsd15, freebsd14, freebsd13))] pub tcpi_dupacks: u32, #[cfg(any(freebsd14, freebsd13))] - pub __tcpi_pad: [u32; 10], + __tcpi_pad: Padding<[u32; 10]>, #[cfg(freebsd15)] - pub __tcpi_pad: [u32; 14], + __tcpi_pad: Padding<[u32; 14]>, #[cfg(not(any(freebsd15, freebsd14, freebsd13)))] - pub __tcpi_pad: [u32; 26], + __tcpi_pad: Padding<[u32; 26]>, } pub struct _umtx_time { @@ -1132,7 +1132,7 @@ s! { pub sinfo_assoc_id: crate::sctp_assoc_t, pub sinfo_keynumber: u16, pub sinfo_keynumber_valid: u16, - pub __reserve_pad: [u8; SCTP_ALIGN_RESV_PAD], + __reserve_pad: Padding<[u8; SCTP_ALIGN_RESV_PAD]>, } pub struct sctp_extrcvinfo { @@ -1152,7 +1152,7 @@ s! { pub serinfo_next_ppid: u32, pub sinfo_keynumber: u16, pub sinfo_keynumber_valid: u16, - pub __reserve_pad: [u8; SCTP_ALIGN_RESV_PAD_SHORT], + __reserve_pad: Padding<[u8; SCTP_ALIGN_RESV_PAD_SHORT]>, } pub struct sctp_sndinfo { @@ -1384,7 +1384,7 @@ s! { pub ut_user: [c_char; 32], pub ut_line: [c_char; 16], pub ut_host: [c_char; 128], - pub __ut_spare: [c_char; 64], + __ut_spare: Padding<[c_char; 64]>, } pub struct xucred { @@ -1496,7 +1496,7 @@ s! { pub ifrk_name: [c_char; crate::IFNAMSIZ as usize], /// RSS_FUNC_ pub ifrk_func: u8, - pub ifrk_spare0: u8, + ifrk_spare0: Padding, pub ifrk_keylen: u16, pub ifrk_key: [u8; crate::RSS_KEYLEN as usize], } diff --git a/src/unix/bsd/freebsdlike/freebsd/riscv64.rs b/src/unix/bsd/freebsdlike/freebsd/riscv64.rs index e2d7920541d9a..be951d71f5807 100644 --- a/src/unix/bsd/freebsdlike/freebsd/riscv64.rs +++ b/src/unix/bsd/freebsdlike/freebsd/riscv64.rs @@ -23,15 +23,15 @@ s! { pub fp_x: [[u64; 2]; 32], pub fp_fcsr: u64, pub fp_flags: c_int, - pub pad: c_int, + pad: Padding, } pub struct mcontext_t { pub mc_gpregs: gpregs, pub mc_fpregs: fpregs, pub mc_flags: c_int, - pub mc_pad: c_int, - pub mc_spare: [u64; 8], + mc_pad: Padding, + mc_spare: Padding<[u64; 8]>, } } diff --git a/src/unix/bsd/freebsdlike/freebsd/x86.rs b/src/unix/bsd/freebsdlike/freebsd/x86.rs index a95914d8a49a2..4047509ad66a5 100644 --- a/src/unix/bsd/freebsdlike/freebsd/x86.rs +++ b/src/unix/bsd/freebsdlike/freebsd/x86.rs @@ -38,7 +38,7 @@ s! { pub mc_gsbase: register_t, pub mc_xfpustate: register_t, pub mc_xfpustate_len: register_t, - pub mc_spare2: [c_int; 4], + mc_spare2: Padding<[c_int; 4]>, } } diff --git a/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs b/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs index 984854261d764..72813a4ff0d8e 100644 --- a/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs +++ b/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs @@ -62,21 +62,21 @@ s! { pub fpr_env: [u32; 7], pub fpr_acc: [[u8; 10]; 8], pub fpr_ex_sw: u32, - pub fpr_pad: [u8; 64], + fpr_pad: Padding<[u8; 64]>, } pub struct fpreg { pub fpr_env: [u64; 4], pub fpr_acc: [[u8; 16]; 8], pub fpr_xacc: [[u8; 16]; 16], - pub fpr_spare: [u64; 12], + fpr_spare: Padding<[u64; 12]>, } pub struct xmmreg { pub xmm_env: [u32; 8], pub xmm_acc: [[u8; 16]; 8], pub xmm_reg: [[u8; 16]; 8], - pub xmm_pad: [u8; 224], + xmm_pad: Padding<[u8; 224]>, } #[repr(align(16))] #[cfg_attr(not(any(freebsd11, freebsd12, freebsd13, freebsd14)), non_exhaustive)] @@ -120,12 +120,12 @@ s! { pub mc_xfpustate_len: register_t, // freebsd < 15 #[cfg(any(freebsd11, freebsd12, freebsd13))] - pub mc_spare: [c_long; 4], + mc_spare: Padding<[c_long; 4]>, // freebsd >= 15 #[cfg(not(any(freebsd11, freebsd12, freebsd13)))] pub mc_tlsbase: register_t, #[cfg(not(any(freebsd11, freebsd12, freebsd13)))] - pub mc_spare: [c_long; 3], + mc_spare: Padding<[c_long; 3]>, } } diff --git a/src/unix/bsd/netbsdlike/netbsd/mod.rs b/src/unix/bsd/netbsdlike/netbsd/mod.rs index 8b7bfd24824c9..a61d262d53951 100644 --- a/src/unix/bsd/netbsdlike/netbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/netbsd/mod.rs @@ -207,7 +207,7 @@ s! { pub st_blksize: crate::blksize_t, pub st_flags: u32, pub st_gen: u32, - pub st_spare: [u32; 2], + st_spare: Padding<[u32; 2]>, } pub struct addrinfo { @@ -739,7 +739,7 @@ s! { pub tcpi_snd_rexmitpack: u32, pub tcpi_rcv_ooopack: u32, pub tcpi_snd_zerowin: u32, - pub __tcpi_pad: [u32; 26], + __tcpi_pad: Padding<[u32; 26]>, } pub struct in_pktinfo { diff --git a/src/unix/bsd/netbsdlike/openbsd/mod.rs b/src/unix/bsd/netbsdlike/openbsd/mod.rs index 89348d7ec1560..7012414d0ed29 100644 --- a/src/unix/bsd/netbsdlike/openbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/openbsd/mod.rs @@ -346,8 +346,8 @@ s! { pub ifm_hdrlen: c_ushort, pub ifm_index: c_ushort, pub ifm_tableid: c_ushort, - pub ifm_pad1: c_uchar, - pub ifm_pad2: c_uchar, + ifm_pad1: Padding, + ifm_pad2: Padding, pub ifm_addrs: c_int, pub ifm_flags: c_int, pub ifm_xflags: c_int, diff --git a/src/unix/cygwin/mod.rs b/src/unix/cygwin/mod.rs index 5645bdd2b2dcf..f69b0e6ee9c76 100644 --- a/src/unix/cygwin/mod.rs +++ b/src/unix/cygwin/mod.rs @@ -438,7 +438,7 @@ s! { pub f_ffree: c_long, pub f_fsid: c_long, pub f_namelen: c_long, - pub f_spare: [c_long; 6], + f_spare: Padding<[c_long; 6]>, } pub struct sockaddr_un { diff --git a/src/unix/hurd/mod.rs b/src/unix/hurd/mod.rs index 3335786cd2be5..11867f8129811 100644 --- a/src/unix/hurd/mod.rs +++ b/src/unix/hurd/mod.rs @@ -581,7 +581,7 @@ s! { pub struct statx_timestamp { pub tv_sec: i64, pub tv_nsec: u32, - pub __statx_timestamp_pad1: [i32; 1], + __statx_timestamp_pad1: Padding<[i32; 1]>, } pub struct statfs { diff --git a/src/unix/linux_like/android/b32/mod.rs b/src/unix/linux_like/android/b32/mod.rs index 4f298d7041801..13593fe741b38 100644 --- a/src/unix/linux_like/android/b32/mod.rs +++ b/src/unix/linux_like/android/b32/mod.rs @@ -64,7 +64,7 @@ s! { pub f_namelen: u32, pub f_frsize: u32, pub f_flags: u32, - pub f_spare: [u32; 4], + f_spare: Padding<[u32; 4]>, } pub struct statvfs64 { @@ -138,7 +138,7 @@ s! { pub f_namelen: u32, pub f_frsize: u32, pub f_flags: u32, - pub f_spare: [u32; 4], + f_spare: Padding<[u32; 4]>, } pub struct sysinfo { @@ -151,11 +151,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 8], + _f: Padding<[c_char; 8]>, } } diff --git a/src/unix/linux_like/android/b64/mod.rs b/src/unix/linux_like/android/b64/mod.rs index c8df732d5a2b6..c7ae025fb5d53 100644 --- a/src/unix/linux_like/android/b64/mod.rs +++ b/src/unix/linux_like/android/b64/mod.rs @@ -60,7 +60,7 @@ s! { pub f_namelen: u64, pub f_frsize: u64, pub f_flags: u64, - pub f_spare: [u64; 4], + f_spare: Padding<[u64; 4]>, } pub struct sysinfo { @@ -73,11 +73,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 0], + _f: Padding<[c_char; 0]>, } // FIXME(1.0,deprecate): lfs binding to be removed @@ -93,7 +93,7 @@ s! { pub f_namelen: u64, pub f_frsize: u64, pub f_flags: u64, - pub f_spare: [u64; 4], + f_spare: Padding<[u64; 4]>, } // FIXME(1.0,deprecate): lfs binding to be removed diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs index 3173c04a13438..e245d6b1ba6a0 100644 --- a/src/unix/linux_like/android/mod.rs +++ b/src/unix/linux_like/android/mod.rs @@ -191,7 +191,7 @@ s! { pub struct genlmsghdr { pub cmd: u8, pub version: u8, - pub reserved: u16, + reserved: Padding, } pub struct nlmsghdr { @@ -249,7 +249,7 @@ s! { pub ee_origin: u8, pub ee_type: u8, pub ee_code: u8, - pub ee_pad: u8, + ee_pad: Padding, pub ee_info: u32, pub ee_data: u32, } @@ -268,7 +268,7 @@ s! { pub struct sockaddr_vm { pub svm_family: crate::sa_family_t, - pub svm_reserved1: c_ushort, + svm_reserved1: Padding, pub svm_port: c_uint, pub svm_cid: c_uint, pub svm_zero: [u8; 4], @@ -549,7 +549,7 @@ s! { pub si_signo: c_int, pub si_errno: c_int, pub si_code: c_int, - pub _pad: [c_int; 29], + _pad: Padding<[c_int; 29]>, _align: [usize; 0], } diff --git a/src/unix/linux_like/emscripten/mod.rs b/src/unix/linux_like/emscripten/mod.rs index 73b6cf71f11b3..78e3b75b7ef42 100644 --- a/src/unix/linux_like/emscripten/mod.rs +++ b/src/unix/linux_like/emscripten/mod.rs @@ -309,14 +309,14 @@ s! { pub f_namelen: c_ulong, pub f_frsize: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 4], + f_spare: Padding<[c_ulong; 4]>, } pub struct siginfo_t { pub si_signo: c_int, pub si_errno: c_int, pub si_code: c_int, - pub _pad: [c_int; 29], + _pad: Padding<[c_int; 29]>, _align: [usize; 0], } @@ -372,11 +372,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub __reserved: [c_char; 256], + __reserved: Padding<[c_char; 256]>, } pub struct mq_attr { diff --git a/src/unix/linux_like/l4re/uclibc/aarch64/mod.rs b/src/unix/linux_like/l4re/uclibc/aarch64/mod.rs index 23421f036c701..1b2be8ddac9f0 100644 --- a/src/unix/linux_like/l4re/uclibc/aarch64/mod.rs +++ b/src/unix/linux_like/l4re/uclibc/aarch64/mod.rs @@ -22,34 +22,34 @@ pub type __u64 = c_ulong; s! { pub struct stat { pub st_dev: c_ulong, - pub __pad1: c_ushort, + __pad1: Padding, pub st_ino: crate::ino_t, pub st_mode: crate::mode_t, pub st_nlink: nlink_t, pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: c_ulong, - pub __pad2: c_ushort, + __pad2: Padding, pub st_size: crate::off64_t, pub st_blksize: blksize_t, pub st_blocks: crate::blkcnt64_t, pub st_atim: crate::timespec, pub st_mtim: crate::timespec, pub st_ctim: crate::timespec, - pub __uclibc_unused4: c_ulong, - pub __uclibc_unused5: c_ulong, + __uclibc_unused4: Padding, + __uclibc_unused5: Padding, } pub struct stat64 { pub st_dev: c_ulong, - pub __pad1: c_uint, + __pad1: Padding, pub __st_ino: crate::ino_t, pub st_mode: crate::mode_t, pub st_nlink: nlink_t, pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: c_ulong, - pub __pad2: c_uint, + __pad2: Padding, pub st_size: crate::off64_t, pub st_blksize: blksize_t, pub st_blocks: crate::blkcnt64_t, @@ -76,7 +76,7 @@ s! { pub si_signo: c_int, pub si_errno: c_int, pub si_code: c_int, - pub _pad: [c_int; 28], + _pad: Padding<[c_int; 28]>, } pub struct stack_t { diff --git a/src/unix/linux_like/l4re/uclibc/mod.rs b/src/unix/linux_like/l4re/uclibc/mod.rs index 5d819e0212a68..0a512fb111213 100644 --- a/src/unix/linux_like/l4re/uclibc/mod.rs +++ b/src/unix/linux_like/l4re/uclibc/mod.rs @@ -60,7 +60,7 @@ s! { pub f_namelen: __sword_type, pub f_frsize: __sword_type, pub f_flags: __sword_type, - pub f_spare: [__sword_type; 4], + f_spare: Padding<[__sword_type; 4]>, } pub struct statfs64 { @@ -75,7 +75,7 @@ s! { pub f_namelen: __sword_type, pub f_frsize: __sword_type, pub f_flags: __sword_type, - pub f_spare: [__sword_type; 4], + f_spare: Padding<[__sword_type; 4]>, } pub struct ipc_perm { @@ -142,14 +142,14 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, #[cfg(target_pointer_width = "32")] - pub _f: [c_char; 8], + _f: Padding<[c_char; 8]>, #[cfg(target_pointer_width = "64")] - pub _f: [c_char; 0], + _f: Padding<[c_char; 0]>, } pub struct regex_t { @@ -164,19 +164,19 @@ s! { } pub struct rtentry { - pub rt_pad1: c_ulong, + rt_pad1: Padding, pub rt_dst: crate::sockaddr, pub rt_gateway: crate::sockaddr, pub rt_genmask: crate::sockaddr, pub rt_flags: c_ushort, - pub rt_pad2: c_short, - pub rt_pad3: c_ulong, + rt_pad2: Padding, + rt_pad3: Padding, pub rt_tos: c_uchar, pub rt_class: c_uchar, #[cfg(target_pointer_width = "64")] - pub rt_pad4: [c_short; 3usize], + rt_pad4: Padding<[c_short; 3usize]>, #[cfg(not(target_pointer_width = "64"))] - pub rt_pad4: c_short, + rt_pad4: Padding, pub rt_metric: c_short, pub rt_dev: *mut c_char, pub rt_mtu: c_ulong, diff --git a/src/unix/linux_like/l4re/uclibc/x86_64/mod.rs b/src/unix/linux_like/l4re/uclibc/x86_64/mod.rs index b6ae57d870571..a37b7769546a5 100644 --- a/src/unix/linux_like/l4re/uclibc/x86_64/mod.rs +++ b/src/unix/linux_like/l4re/uclibc/x86_64/mod.rs @@ -86,7 +86,7 @@ s! { pub si_signo: c_int, pub si_errno: c_int, pub si_code: c_int, - pub _pad: [c_int; 28], + _pad: Padding<[c_int; 28]>, } pub struct stack_t { diff --git a/src/unix/linux_like/linux/gnu/b32/arm/mod.rs b/src/unix/linux_like/linux/gnu/b32/arm/mod.rs index 5b5cfeca22271..99e57260fe551 100644 --- a/src/unix/linux_like/linux/gnu/b32/arm/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/arm/mod.rs @@ -100,7 +100,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b32/csky/mod.rs b/src/unix/linux_like/linux/gnu/b32/csky/mod.rs index b0afd57333998..043cf16a1ee02 100644 --- a/src/unix/linux_like/linux/gnu/b32/csky/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/csky/mod.rs @@ -87,7 +87,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b32/m68k/mod.rs b/src/unix/linux_like/linux/gnu/b32/m68k/mod.rs index f3940f4be51c4..e61186ea52962 100644 --- a/src/unix/linux_like/linux/gnu/b32/m68k/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/m68k/mod.rs @@ -87,7 +87,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b32/mips/mod.rs b/src/unix/linux_like/linux/gnu/b32/mips/mod.rs index b05ae5c2ebbf3..3c5e2a61b6c0b 100644 --- a/src/unix/linux_like/linux/gnu/b32/mips/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/mips/mod.rs @@ -147,7 +147,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 5], + f_spare: Padding<[c_long; 5]>, } pub struct statvfs64 { @@ -176,7 +176,7 @@ s! { pub si_signo: c_int, pub si_code: c_int, pub si_errno: c_int, - pub _pad: [c_int; 29], + _pad: Padding<[c_int; 29]>, } pub struct ipc_perm { diff --git a/src/unix/linux_like/linux/gnu/b32/mod.rs b/src/unix/linux_like/linux/gnu/b32/mod.rs index 2b2efb1e18131..b2bacc5277a4b 100644 --- a/src/unix/linux_like/linux/gnu/b32/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/mod.rs @@ -163,7 +163,7 @@ s! { pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 8], + _f: Padding<[c_char; 8]>, } pub struct semid_ds { @@ -229,17 +229,17 @@ s! { pub errcnt: c_longlong, pub stbcnt: c_longlong, pub tai: c_int, - pub __unused1: i32, - pub __unused2: i32, - pub __unused3: i32, - pub __unused4: i32, - pub __unused5: i32, - pub __unused6: i32, - pub __unused7: i32, - pub __unused8: i32, - pub __unused9: i32, - pub __unused10: i32, - pub __unused11: i32, + __unused1: Padding, + __unused2: Padding, + __unused3: Padding, + __unused4: Padding, + __unused5: Padding, + __unused6: Padding, + __unused7: Padding, + __unused8: Padding, + __unused9: Padding, + __unused10: Padding, + __unused11: Padding, } #[cfg(not(gnu_time_bits64))] @@ -264,17 +264,17 @@ s! { pub errcnt: c_long, pub stbcnt: c_long, pub tai: c_int, - pub __unused1: i32, - pub __unused2: i32, - pub __unused3: i32, - pub __unused4: i32, - pub __unused5: i32, - pub __unused6: i32, - pub __unused7: i32, - pub __unused8: i32, - pub __unused9: i32, - pub __unused10: i32, - pub __unused11: i32, + __unused1: Padding, + __unused2: Padding, + __unused3: Padding, + __unused4: Padding, + __unused5: Padding, + __unused6: Padding, + __unused7: Padding, + __unused8: Padding, + __unused9: Padding, + __unused10: Padding, + __unused11: Padding, } } diff --git a/src/unix/linux_like/linux/gnu/b32/powerpc.rs b/src/unix/linux_like/linux/gnu/b32/powerpc.rs index b63be98ecaeb2..ca38c9de3488a 100644 --- a/src/unix/linux_like/linux/gnu/b32/powerpc.rs +++ b/src/unix/linux_like/linux/gnu/b32/powerpc.rs @@ -129,7 +129,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs b/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs index 8a9c597ea0606..a47fbd6b7a1f5 100644 --- a/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs @@ -31,10 +31,10 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub __pad1: crate::dev_t, + __pad1: Padding, pub st_size: off64_t, pub st_blksize: crate::blksize_t, - pub __pad2: c_int, + __pad2: Padding, pub st_blocks: crate::blkcnt64_t, pub st_atime: crate::time_t, pub st_atime_nsec: c_long, @@ -57,7 +57,7 @@ s! { pub f_namelen: c_long, pub f_frsize: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 4], + f_spare: Padding<[c_long; 4]>, } pub struct statfs64 { @@ -72,7 +72,7 @@ s! { pub f_namelen: c_long, pub f_frsize: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 4], + f_spare: Padding<[c_long; 4]>, } pub struct statvfs64 { @@ -87,7 +87,7 @@ s! { pub f_fsid: c_ulong, pub f_flag: c_ulong, pub f_namemax: c_ulong, - pub __f_spare: [c_int; 6], + __f_spare: Padding<[c_int; 6]>, } pub struct siginfo_t { @@ -225,7 +225,7 @@ s_no_extra_traits! { pub struct __riscv_mc_q_ext_state { pub __f: [c_ulonglong; 64], pub __fcsr: c_uint, - pub __glibc_reserved: [c_uint; 3], + __glibc_reserved: Padding<[c_uint; 3]>, } } diff --git a/src/unix/linux_like/linux/gnu/b32/sparc/mod.rs b/src/unix/linux_like/linux/gnu/b32/sparc/mod.rs index f29605ba51e2b..c8714b8fa40c5 100644 --- a/src/unix/linux_like/linux/gnu/b32/sparc/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/sparc/mod.rs @@ -115,7 +115,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b32/x86/mod.rs b/src/unix/linux_like/linux/gnu/b32/x86/mod.rs index 1bed38e18fcfd..38ff7fef3a6ad 100644 --- a/src/unix/linux_like/linux/gnu/b32/x86/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/x86/mod.rs @@ -174,7 +174,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs index f863aa4357685..90a42108355f9 100644 --- a/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs @@ -100,7 +100,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs { diff --git a/src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs b/src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs index add1256ac6d2e..fdd96d99f315f 100644 --- a/src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/loongarch64/mod.rs @@ -41,10 +41,10 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub __pad1: crate::dev_t, + __pad1: Padding, pub st_size: off64_t, pub st_blksize: crate::blksize_t, - pub __pad2: c_int, + __pad2: Padding, pub st_blocks: crate::blkcnt_t, pub st_atime: crate::time_t, pub st_atime_nsec: c_long, @@ -67,7 +67,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statfs64 { @@ -82,7 +82,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct flock { @@ -187,7 +187,7 @@ s! { pub orig_a0: u64, pub csr_era: u64, pub csr_badv: u64, - pub reserved: [u64; 10], + reserved: Padding<[u64; 10]>, } pub struct user_fp_struct { diff --git a/src/unix/linux_like/linux/gnu/b64/mips64/mod.rs b/src/unix/linux_like/linux/gnu/b64/mips64/mod.rs index df2b8f9745a74..d4aa447b7515f 100644 --- a/src/unix/linux_like/linux/gnu/b64/mips64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/mips64/mod.rs @@ -100,7 +100,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 5], + f_spare: Padding<[c_long; 5]>, } pub struct statvfs { diff --git a/src/unix/linux_like/linux/gnu/b64/mod.rs b/src/unix/linux_like/linux/gnu/b64/mod.rs index 16b7bef085fe0..393a4535da7d3 100644 --- a/src/unix/linux_like/linux/gnu/b64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/mod.rs @@ -46,11 +46,11 @@ s! { pub totalswap: u64, pub freeswap: u64, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: u64, pub freehigh: u64, pub mem_unit: c_uint, - pub _f: [c_char; 0], + _f: Padding<[c_char; 0]>, } pub struct msqid_ds { @@ -175,17 +175,17 @@ s! { #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] pub stbcnt: c_long, pub tai: c_int, - pub __unused1: i32, - pub __unused2: i32, - pub __unused3: i32, - pub __unused4: i32, - pub __unused5: i32, - pub __unused6: i32, - pub __unused7: i32, - pub __unused8: i32, - pub __unused9: i32, - pub __unused10: i32, - pub __unused11: i32, + __unused1: Padding, + __unused2: Padding, + __unused3: Padding, + __unused4: Padding, + __unused5: Padding, + __unused6: Padding, + __unused7: Padding, + __unused8: Padding, + __unused9: Padding, + __unused10: Padding, + __unused11: Padding, } } diff --git a/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs b/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs index 0f7e065c8532c..54a66f6646a13 100644 --- a/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs @@ -100,7 +100,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs { @@ -240,7 +240,7 @@ s_no_extra_traits! { pub gp_regs: crate::gregset_t, pub fp_regs: crate::fpregset_t, pub v_regs: *mut vrregset_t, - pub vmx_reserve: [c_long; __NVRREG + __NVRREG + 1], + vmx_reserve: Padding<[c_long; __NVRREG + __NVRREG + 1]>, } #[repr(align(16))] diff --git a/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs b/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs index f473f8c7338c9..5931a2800c3e8 100644 --- a/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs @@ -27,10 +27,10 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub __pad1: crate::dev_t, + __pad1: Padding, pub st_size: off_t, pub st_blksize: crate::blksize_t, - pub __pad2: c_int, + __pad2: Padding, pub st_blocks: crate::blkcnt_t, pub st_atime: crate::time_t, pub st_atime_nsec: c_long, @@ -49,10 +49,10 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub __pad1: crate::dev_t, + __pad1: Padding, pub st_size: off64_t, pub st_blksize: crate::blksize_t, - pub __pad2: c_int, + __pad2: Padding, pub st_blocks: crate::blkcnt_t, pub st_atime: crate::time_t, pub st_atime_nsec: c_long, @@ -75,7 +75,7 @@ s! { pub f_namelen: c_long, pub f_frsize: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 4], + f_spare: Padding<[c_long; 4]>, } pub struct statfs64 { @@ -90,7 +90,7 @@ s! { pub f_namelen: c_long, pub f_frsize: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 4], + f_spare: Padding<[c_long; 4]>, } pub struct statvfs { @@ -105,7 +105,7 @@ s! { pub f_fsid: c_ulong, pub f_flag: c_ulong, pub f_namemax: c_ulong, - pub __f_spare: [c_int; 6], + __f_spare: Padding<[c_int; 6]>, } pub struct statvfs64 { @@ -120,7 +120,7 @@ s! { pub f_fsid: c_ulong, pub f_flag: c_ulong, pub f_namemax: c_ulong, - pub __f_spare: [c_int; 6], + __f_spare: Padding<[c_int; 6]>, } pub struct siginfo_t { @@ -273,7 +273,7 @@ s_no_extra_traits! { pub struct __riscv_mc_q_ext_state { pub __f: [c_ulonglong; 64], pub __fcsr: c_uint, - pub __glibc_reserved: [c_uint; 3], + __glibc_reserved: Padding<[c_uint; 3]>, } #[repr(align(16))] diff --git a/src/unix/linux_like/linux/gnu/b64/s390x.rs b/src/unix/linux_like/linux/gnu/b64/s390x.rs index eae7b7124e6b5..f59b07bc3dfa7 100644 --- a/src/unix/linux_like/linux/gnu/b64/s390x.rs +++ b/src/unix/linux_like/linux/gnu/b64/s390x.rs @@ -183,7 +183,7 @@ s! { pub f_namelen: c_uint, pub f_frsize: c_uint, pub f_flags: c_uint, - pub f_spare: [c_uint; 4], + f_spare: Padding<[c_uint; 4]>, } pub struct statvfs64 { diff --git a/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs b/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs index dcfc7c442fa0e..536d6487e2ba5 100644 --- a/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs @@ -122,7 +122,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs { diff --git a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs index 98506315c3712..5e02710e166e1 100644 --- a/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs @@ -120,7 +120,7 @@ s! { pub f_namelen: crate::__fsword_t, pub f_frsize: crate::__fsword_t, pub f_flags: crate::__fsword_t, - pub f_spare: [crate::__fsword_t; 4], + f_spare: Padding<[crate::__fsword_t; 4]>, } pub struct statvfs64 { @@ -259,7 +259,7 @@ s! { pub rseq_abi_size: crate::__u32, pub signature: crate::__u32, pub flags: crate::__u32, - pub pad: crate::__u32, + pad: Padding, } #[repr(align(8))] diff --git a/src/unix/linux_like/linux/gnu/mod.rs b/src/unix/linux_like/linux/gnu/mod.rs index 5202303d196c9..67f2206e16004 100644 --- a/src/unix/linux_like/linux/gnu/mod.rs +++ b/src/unix/linux_like/linux/gnu/mod.rs @@ -117,10 +117,10 @@ s! { pub maxerror: c_long, pub esterror: c_long, pub tai: c_long, - pub __glibc_reserved1: c_long, - pub __glibc_reserved2: c_long, - pub __glibc_reserved3: c_long, - pub __glibc_reserved4: c_long, + __glibc_reserved1: Padding, + __glibc_reserved2: Padding, + __glibc_reserved3: Padding, + __glibc_reserved4: Padding, } pub struct regex_t { @@ -136,7 +136,7 @@ s! { pub struct Elf64_Chdr { pub ch_type: crate::Elf64_Word, - pub ch_reserved: crate::Elf64_Word, + ch_reserved: Padding, pub ch_size: crate::Elf64_Xword, pub ch_addralign: crate::Elf64_Xword, } diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs index 37956affc2d7d..26a04171c8d81 100644 --- a/src/unix/linux_like/linux/mod.rs +++ b/src/unix/linux_like/linux/mod.rs @@ -262,7 +262,7 @@ s! { pub struct genlmsghdr { pub cmd: u8, pub version: u8, - pub reserved: u16, + reserved: Padding, } pub struct inotify_event { @@ -279,7 +279,7 @@ s! { pub struct fanotify_event_info_header { pub info_type: __u8, - pub pad: __u8, + pad: Padding<__u8>, pub len: __u16, } @@ -291,7 +291,7 @@ s! { pub struct sockaddr_vm { pub svm_family: crate::sa_family_t, - pub svm_reserved1: c_ushort, + svm_reserved1: Padding, pub svm_port: c_uint, pub svm_cid: c_uint, pub svm_flags: u8, @@ -303,7 +303,7 @@ s! { pub ee_origin: u8, pub ee_type: u8, pub ee_code: u8, - pub ee_pad: u8, + ee_pad: Padding, pub ee_info: u32, pub ee_data: u32, } @@ -362,19 +362,19 @@ s! { pub struct ptp_clock_time { pub sec: crate::__s64, pub nsec: __u32, - pub reserved: __u32, + reserved: Padding<__u32>, } pub struct ptp_extts_request { pub index: c_uint, pub flags: c_uint, - pub rsv: [c_uint; 2], + rsv: Padding<[c_uint; 2]>, } pub struct ptp_sys_offset_extended { pub n_samples: c_uint, pub clockid: __kernel_clockid_t, - pub rsv: [c_uint; 2], + rsv: Padding<[c_uint; 2]>, pub ts: [[ptp_clock_time; 3]; PTP_MAX_SAMPLES as usize], } @@ -382,7 +382,7 @@ s! { pub device: ptp_clock_time, pub sys_realtime: ptp_clock_time, pub sys_monoraw: ptp_clock_time, - pub rsv: [c_uint; 4], + rsv: Padding<[c_uint; 4]>, } pub struct ptp_extts_event { @@ -533,7 +533,7 @@ s! { pub busy_poll_usecs: u32, pub busy_poll_budget: u16, pub prefer_busy_poll: u8, - pub __pad: u8, // Must be zero + __pad: Padding, // Must be zero } #[cfg_attr( @@ -613,7 +613,7 @@ s! { pub struct fanotify_event_metadata { pub event_len: __u32, pub vers: __u8, - pub reserved: __u8, + reserved: Padding<__u8>, pub metadata_len: __u16, pub mask: __u64, pub fd: c_int, @@ -624,7 +624,7 @@ s! { pub struct ptp_sys_offset { pub n_samples: c_uint, - pub rsv: [c_uint; 3], + rsv: Padding<[c_uint; 3]>, // FIXME(garando): replace length with `2 * PTP_MAX_SAMPLES + 1` when supported pub ts: [ptp_clock_time; 51], } @@ -634,7 +634,7 @@ s! { pub index: c_uint, pub func: c_uint, pub chan: c_uint, - pub rsv: [c_uint; 5], + rsv: Padding<[c_uint; 5]>, } pub struct ptp_clock_caps { @@ -647,7 +647,7 @@ s! { pub cross_timestamping: c_int, pub adjust_phase: c_int, pub max_phase_adj: c_int, - pub rsv: [c_int; 11], + rsv: Padding<[c_int; 11]>, } // linux/if_xdp.h diff --git a/src/unix/linux_like/linux/musl/b32/mips/mod.rs b/src/unix/linux_like/linux/musl/b32/mips/mod.rs index 45c51cbcaef1c..8c55ba928a469 100644 --- a/src/unix/linux_like/linux/musl/b32/mips/mod.rs +++ b/src/unix/linux_like/linux/musl/b32/mips/mod.rs @@ -135,7 +135,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 5], + f_spare: Padding<[c_ulong; 5]>, } // FIXME(1.0,deprecate): lfs binding to be removed @@ -151,7 +151,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 5], + f_spare: Padding<[c_ulong; 5]>, } } diff --git a/src/unix/linux_like/linux/musl/b32/riscv32/mod.rs b/src/unix/linux_like/linux/musl/b32/riscv32/mod.rs index f4e67535754b7..8d3161f740109 100644 --- a/src/unix/linux_like/linux/musl/b32/riscv32/mod.rs +++ b/src/unix/linux_like/linux/musl/b32/riscv32/mod.rs @@ -14,10 +14,10 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub __pad1: crate::dev_t, + __pad1: Padding, pub st_size: off_t, pub st_blksize: crate::blksize_t, - pub __pad2: c_int, + __pad2: Padding, pub st_blocks: crate::blkcnt_t, #[cfg(not(musl_v1_2))] diff --git a/src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs b/src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs index 9e257f5f1d3e1..bad64fdd62b8b 100644 --- a/src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs +++ b/src/unix/linux_like/linux/musl/b64/loongarch64/mod.rs @@ -63,7 +63,7 @@ s! { pub orig_a0: u64, pub csr_era: u64, pub csr_badv: u64, - pub reserved: [u64; 10], + reserved: Padding<[u64; 10]>, } pub struct user_fp_struct { diff --git a/src/unix/linux_like/linux/musl/b64/mips64.rs b/src/unix/linux_like/linux/musl/b64/mips64.rs index 487668f0dce79..f10059043d60d 100644 --- a/src/unix/linux_like/linux/musl/b64/mips64.rs +++ b/src/unix/linux_like/linux/musl/b64/mips64.rs @@ -84,7 +84,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 5], + f_spare: Padding<[c_ulong; 5]>, } // FIXME(1.0,deprecate): lfs binding to be removed @@ -100,7 +100,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 5], + f_spare: Padding<[c_ulong; 5]>, } } diff --git a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs index 9495102fc48fc..31f388d5c8338 100644 --- a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs +++ b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs @@ -111,7 +111,7 @@ s_no_extra_traits! { pub struct __riscv_mc_q_ext_state { pub __f: [c_ulonglong; 64], pub __fcsr: c_uint, - pub __glibc_reserved: [c_uint; 3], + __glibc_reserved: Padding<[c_uint; 3]>, } } diff --git a/src/unix/linux_like/linux/musl/b64/s390x.rs b/src/unix/linux_like/linux/musl/b64/s390x.rs index ed0eee2db617a..efab13d3de875 100644 --- a/src/unix/linux_like/linux/musl/b64/s390x.rs +++ b/src/unix/linux_like/linux/musl/b64/s390x.rs @@ -77,7 +77,7 @@ s! { pub f_namelen: c_uint, pub f_frsize: c_uint, pub f_flags: c_uint, - pub f_spare: [c_uint; 4], + f_spare: Padding<[c_uint; 4]>, } pub struct __psw_t { diff --git a/src/unix/linux_like/linux/musl/mod.rs b/src/unix/linux_like/linux/musl/mod.rs index fa071954fd65c..d0224504bae2b 100644 --- a/src/unix/linux_like/linux/musl/mod.rs +++ b/src/unix/linux_like/linux/musl/mod.rs @@ -139,7 +139,7 @@ s! { pub struct fanotify_event_metadata { pub event_len: c_uint, pub vers: c_uchar, - pub reserved: c_uchar, + reserved: Padding, pub metadata_len: c_ushort, pub mask: c_ulonglong, pub fd: c_int, @@ -256,19 +256,19 @@ s! { } pub struct rtentry { - pub rt_pad1: c_ulong, + rt_pad1: Padding, pub rt_dst: crate::sockaddr, pub rt_gateway: crate::sockaddr, pub rt_genmask: crate::sockaddr, pub rt_flags: c_ushort, - pub rt_pad2: c_short, - pub rt_pad3: c_ulong, + rt_pad2: Padding, + rt_pad3: Padding, pub rt_tos: c_uchar, pub rt_class: c_uchar, #[cfg(target_pointer_width = "64")] - pub rt_pad4: [c_short; 3usize], + rt_pad4: Padding<[c_short; 3usize]>, #[cfg(not(target_pointer_width = "64"))] - pub rt_pad4: [c_short; 1usize], + rt_pad4: Padding<[c_short; 1usize]>, pub rt_metric: c_short, pub rt_dev: *mut c_char, pub rt_mtu: c_ulong, @@ -283,7 +283,7 @@ s! { pub struct Elf64_Chdr { pub ch_type: crate::Elf64_Word, - pub ch_reserved: crate::Elf64_Word, + ch_reserved: Padding, pub ch_size: crate::Elf64_Xword, pub ch_addralign: crate::Elf64_Xword, } @@ -315,7 +315,7 @@ s! { pub errcnt: c_long, pub stbcnt: c_long, pub tai: c_int, - pub __padding: [c_int; 11], + __padding: Padding<[c_int; 11]>, } pub struct ntptimeval { @@ -401,7 +401,7 @@ s! { pub f_namelen: c_ulong, pub f_frsize: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 4], + f_spare: Padding<[c_ulong; 4]>, } // MIPS/s390x implementation is special (see arch folders) @@ -419,7 +419,7 @@ s! { pub f_namelen: c_ulong, pub f_frsize: c_ulong, pub f_flags: c_ulong, - pub f_spare: [c_ulong; 4], + f_spare: Padding<[c_ulong; 4]>, } pub struct sysinfo { @@ -432,11 +432,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub __reserved: [c_char; 256], + __reserved: Padding<[c_char; 256]>, } pub struct utmpx { diff --git a/src/unix/linux_like/linux/uclibc/arm/mod.rs b/src/unix/linux_like/linux/uclibc/arm/mod.rs index 9d255b7388fcd..ef3757f197171 100644 --- a/src/unix/linux_like/linux/uclibc/arm/mod.rs +++ b/src/unix/linux_like/linux/uclibc/arm/mod.rs @@ -63,14 +63,14 @@ s! { pub struct stat64 { pub st_dev: c_ulonglong, - pub __pad1: c_uint, + __pad1: Padding, pub __st_ino: crate::ino_t, pub st_mode: crate::mode_t, pub st_nlink: crate::nlink_t, pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: c_ulonglong, - pub __pad2: c_uint, + __pad2: Padding, pub st_size: off64_t, pub st_blksize: crate::blksize_t, pub st_blocks: crate::blkcnt64_t, @@ -101,11 +101,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 8], + _f: Padding<[c_char; 8]>, } pub struct statfs { @@ -121,7 +121,7 @@ s! { pub f_namelen: c_int, pub f_frsize: c_int, pub f_flags: c_int, - pub f_spare: [c_int; 4], + f_spare: Padding<[c_int; 4]>, } pub struct statfs64 { @@ -136,7 +136,7 @@ s! { pub f_namelen: c_int, pub f_frsize: c_int, pub f_flags: c_int, - pub f_spare: [c_int; 4], + f_spare: Padding<[c_int; 4]>, } pub struct statvfs64 { @@ -183,7 +183,7 @@ s! { pub si_signo: c_int, pub si_errno: c_int, pub si_code: c_int, - pub _pad: [c_int; 29], + _pad: Padding<[c_int; 29]>, } pub struct stack_t { diff --git a/src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs b/src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs index 2c253f0164f11..697d68aa93dad 100644 --- a/src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs +++ b/src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs @@ -23,7 +23,7 @@ s! { pub st_uid: crate::uid_t, pub st_gid: crate::gid_t, pub st_rdev: crate::dev_t, - pub st_pad2: [c_long; 1], + st_pad2: Padding<[c_long; 1]>, pub st_size: off_t, st_pad3: Padding, pub st_atime: crate::time_t, @@ -70,10 +70,10 @@ s! { pub f_ffree: crate::fsfilcnt64_t, pub f_favail: crate::fsfilcnt64_t, pub f_fsid: c_ulong, - pub __f_unused: c_int, + __f_unused: Padding, pub f_flag: c_ulong, pub f_namemax: c_ulong, - pub __f_spare: [c_int; 6], + __f_spare: Padding<[c_int; 6]>, } pub struct pthread_attr_t { @@ -101,7 +101,7 @@ s! { pub si_signo: c_int, pub si_code: c_int, pub si_errno: c_int, - pub _pad: [c_int; 29], + _pad: Padding<[c_int; 29]>, } pub struct glob64_t { @@ -196,7 +196,7 @@ s! { pub f_fsid: crate::fsid_t, pub f_namelen: c_long, pub f_flags: c_long, - pub f_spare: [c_long; 5], + f_spare: Padding<[c_long; 5]>, } pub struct msghdr { @@ -244,11 +244,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 8], + _f: Padding<[c_char; 8]>, } // FIXME(1.0): this is actually a union diff --git a/src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs b/src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs index a6a63a33a93b3..c562b6c543cdb 100644 --- a/src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs +++ b/src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs @@ -177,11 +177,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 0], + _f: Padding<[c_char; 0]>, } // FIXME(1.0): this is actually a union diff --git a/src/unix/linux_like/linux/uclibc/mod.rs b/src/unix/linux_like/linux/uclibc/mod.rs index dd54a15e25fb0..3ae8892a27629 100644 --- a/src/unix/linux_like/linux/uclibc/mod.rs +++ b/src/unix/linux_like/linux/uclibc/mod.rs @@ -67,19 +67,19 @@ s! { } pub struct rtentry { - pub rt_pad1: c_ulong, + rt_pad1: Padding, pub rt_dst: crate::sockaddr, pub rt_gateway: crate::sockaddr, pub rt_genmask: crate::sockaddr, pub rt_flags: c_ushort, - pub rt_pad2: c_short, - pub rt_pad3: c_ulong, + rt_pad2: Padding, + rt_pad3: Padding, pub rt_tos: c_uchar, pub rt_class: c_uchar, #[cfg(target_pointer_width = "64")] - pub rt_pad4: [c_short; 3usize], + rt_pad4: Padding<[c_short; 3usize]>, #[cfg(not(target_pointer_width = "64"))] - pub rt_pad4: c_short, + rt_pad4: Padding, pub rt_metric: c_short, pub rt_dev: *mut c_char, pub rt_mtu: c_ulong, diff --git a/src/unix/linux_like/linux/uclibc/x86_64/mod.rs b/src/unix/linux_like/linux/uclibc/x86_64/mod.rs index af4bedbc082cc..9071e0f05d0db 100644 --- a/src/unix/linux_like/linux/uclibc/x86_64/mod.rs +++ b/src/unix/linux_like/linux/uclibc/x86_64/mod.rs @@ -52,10 +52,10 @@ s! { } pub struct siginfo_t { - si_signo: c_int, // signal number - si_errno: c_int, // if not zero: error value of signal, see errno.h - si_code: c_int, // signal code - pub _pad: [c_int; 28], // unported union + si_signo: c_int, // signal number + si_errno: c_int, // if not zero: error value of signal, see errno.h + si_code: c_int, // signal code + _pad: Padding<[c_int; 28]>, // unported union _align: [usize; 0], } @@ -171,7 +171,7 @@ s! { pub f_namelen: c_int, pub f_frsize: c_int, pub f_flags: c_int, - pub f_spare: [c_int; 4], + f_spare: Padding<[c_int; 4]>, } pub struct statvfs64 { @@ -227,11 +227,11 @@ s! { pub totalswap: c_ulong, pub freeswap: c_ulong, pub procs: c_ushort, - pub pad: c_ushort, + pad: Padding, pub totalhigh: c_ulong, pub freehigh: c_ulong, pub mem_unit: c_uint, - pub _f: [c_char; 0], + _f: Padding<[c_char; 0]>, } pub struct cpu_set_t { diff --git a/src/unix/newlib/mod.rs b/src/unix/newlib/mod.rs index f5c7396d67d94..3620294981c40 100644 --- a/src/unix/newlib/mod.rs +++ b/src/unix/newlib/mod.rs @@ -344,7 +344,7 @@ s! { pub st_ctim: crate::timespec, pub st_blksize: crate::blksize_t, pub st_blocks: crate::blkcnt_t, - pub st_spare4: [c_long; 2usize], + st_spare4: Padding<[c_long; 2usize]>, } #[cfg(not(target_os = "vita"))] diff --git a/src/unix/newlib/vita/mod.rs b/src/unix/newlib/vita/mod.rs index 14cf95a15f9f8..5986da84910b6 100644 --- a/src/unix/newlib/vita/mod.rs +++ b/src/unix/newlib/vita/mod.rs @@ -74,7 +74,7 @@ s! { pub st_ctime: crate::time_t, pub st_blksize: crate::blksize_t, pub st_blocks: crate::blkcnt_t, - pub st_spare4: [c_long; 2usize], + st_spare4: Padding<[c_long; 2usize]>, } #[repr(align(8))] diff --git a/src/unix/nto/mod.rs b/src/unix/nto/mod.rs index 3fe3f7579b892..66c88d7aca40e 100644 --- a/src/unix/nto/mod.rs +++ b/src/unix/nto/mod.rs @@ -755,7 +755,7 @@ s_no_extra_traits! { pub __rcond: crate::pthread_cond_t, // union pub __wcond: crate::pthread_cond_t, // union pub __owner: c_uint, - pub __spare: c_uint, + __spare: Padding, } // There is no canonical definition of c_longdouble in Rust. For both AArch64 and x86_64, @@ -2315,7 +2315,7 @@ pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t { __rcond: PTHREAD_COND_INITIALIZER, __wcond: PTHREAD_COND_INITIALIZER, __owner: -2i32 as c_uint, - __spare: 0, + __spare: Padding::new(0), }; #[cfg(target_os = "qnx")] pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = pthread_rwlock_t { __u: 0, __owner: 0 }; diff --git a/src/unix/redox/mod.rs b/src/unix/redox/mod.rs index d092f0eee9041..fd2957247a9dd 100644 --- a/src/unix/redox/mod.rs +++ b/src/unix/redox/mod.rs @@ -85,7 +85,7 @@ s! { pub struct epoll_event { pub events: u32, pub u64: u64, - pub _pad: u64, + _pad: Padding, } pub struct fd_set { diff --git a/src/unix/solarish/illumos.rs b/src/unix/solarish/illumos.rs index 4898b4b5a451b..0f4ddc28953ea 100644 --- a/src/unix/solarish/illumos.rs +++ b/src/unix/solarish/illumos.rs @@ -24,7 +24,7 @@ s! { pub aio_lio_opcode: c_int, pub aio_resultp: crate::aio_result_t, pub aio_state: c_int, - pub aio__pad: [c_int; 1], + aio__pad: Padding<[c_int; 1]>, } pub struct shmid_ds { @@ -39,7 +39,7 @@ s! { pub shm_atime: crate::time_t, pub shm_dtime: crate::time_t, pub shm_ctime: crate::time_t, - pub shm_pad4: [i64; 4], + shm_pad4: Padding<[i64; 4]>, } pub struct fil_info { @@ -57,7 +57,7 @@ s! { pub ut_exit: exit_status, pub ut_tv: crate::timeval, pub ut_session: c_int, - pub ut_pad: [c_int; _UTX_PADSIZE], + ut_pad: Padding<[c_int; _UTX_PADSIZE]>, pub ut_syslen: c_short, pub ut_host: [c_char; _UTX_HOSTSIZE], } diff --git a/src/unix/solarish/mod.rs b/src/unix/solarish/mod.rs index b54de0f0d3d8b..a423ce6f55a48 100644 --- a/src/unix/solarish/mod.rs +++ b/src/unix/solarish/mod.rs @@ -369,8 +369,8 @@ s! { pub sem_count: u32, pub sem_type: u16, pub sem_magic: u16, - pub sem_pad1: [u64; 3], - pub sem_pad2: [u64; 2], + sem_pad1: Padding<[u64; 3]>, + sem_pad2: Padding<[u64; 2]>, } pub struct flock { @@ -380,7 +380,7 @@ s! { pub l_len: off_t, pub l_sysid: c_int, pub l_pid: crate::pid_t, - pub l_pad: [c_long; 4], + l_pad: Padding<[c_long; 4]>, } pub struct if_nameindex { @@ -399,7 +399,7 @@ s! { pub struct port_event { pub portev_events: c_int, pub portev_source: c_ushort, - pub portev_pad: c_ushort, + portev_pad: Padding, pub portev_object: crate::uintptr_t, pub portev_user: *mut c_void, } @@ -539,7 +539,7 @@ s_no_extra_traits! { pub si_code: c_int, pub si_errno: c_int, #[cfg(target_pointer_width = "64")] - pub si_pad: c_int, + si_pad: Padding, __data_pad: [c_int; SIGINFO_DATA_SIZE], } diff --git a/src/unix/solarish/solaris.rs b/src/unix/solarish/solaris.rs index 6217cee1ec49e..11359b676438f 100644 --- a/src/unix/solarish/solaris.rs +++ b/src/unix/solarish/solaris.rs @@ -36,7 +36,7 @@ s! { pub aio_resultp: crate::aio_result_t, pub aio_state: c_char, pub aio_returned: c_char, - pub aio__pad1: [c_char; 2], + aio__pad1: Padding<[c_char; 2]>, pub aio_flags: c_int, } @@ -55,7 +55,7 @@ s! { pub shm_amp: *mut c_void, pub shm_gransize: u64, pub shm_allocated: u64, - pub shm_pad4: [i64; 1], + shm_pad4: Padding<[i64; 1]>, } pub struct xrs_t { @@ -72,7 +72,7 @@ s! { pub ut_exit: exit_status, pub ut_tv: crate::timeval, pub ut_session: c_int, - pub pad: [c_int; 5], + pad: Padding<[c_int; 5]>, pub ut_syslen: c_short, pub ut_host: [c_char; 257], } diff --git a/src/unix/solarish/x86_64.rs b/src/unix/solarish/x86_64.rs index a4c48064aaaa9..377fe41ca9dee 100644 --- a/src/unix/solarish/x86_64.rs +++ b/src/unix/solarish/x86_64.rs @@ -76,17 +76,17 @@ s! { pub uc_stack: crate::stack_t, pub uc_mcontext: mcontext_t, #[cfg(target_os = "illumos")] - pub uc_brand_data: [*mut c_void; 3], + uc_filler3: Padding<[c_long; 3]>, #[cfg(target_os = "illumos")] pub uc_xsave: c_long, #[cfg(target_os = "illumos")] - pub uc_filler: c_long, + uc_filler1: Padding, #[cfg(target_os = "solaris")] pub uc_xrs: solaris::xrs_t, #[cfg(target_os = "solaris")] pub uc_lwpid: c_uint, #[cfg(target_os = "solaris")] - pub uc_filler: [c_long; 2], + uc_filler: Padding<[c_long; 2]>, } }