diff --git a/src/fuchsia/mod.rs b/src/fuchsia/mod.rs index 11a046720ceeb..98f438d6b1654 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 2c4fecf178e72..bda4112e7a8ef 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: Padding<[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 5e5a5f188617a..12a355023dd91 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 603a499b8c5c8..ca523839ef57d 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 28b4fad4129b4..0155b0d019cf0 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 f01f7f3bce39c..7451a0285f5de 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 3e1ddd1cc4024..bf6221810a520 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 26a84116cf025..9b721d8325902 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 2e9680a68520f..dbd9231c439fe 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 c298c910ea4f9..634366e0848d2 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 d4814029bba0e..2d9c1e508ec9e 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 4fddbb5988e48..c323d90c940d5 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 e3c14ee1d08ef..dd7c0165d8ba8 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 25ebcf60bbbfc..fb0fc010ccdaf 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 cced9a7be4408..b5f4925bc6c4b 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 41099ef56a77d..6921d72b7a774 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 shmid_ds { 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 66d192eb3c874..65e078774e0e8 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 shmid_ds { 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 b7b439d58fbfc..bb9a3d64cf206 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 shmid_ds { 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 546b60a994d74..59c7ffa3245b5 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 stack_t { @@ -160,7 +160,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 e86b0c469475c..800933c7af531 100644 --- a/src/unix/linux_like/linux/gnu/b32/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/mod.rs @@ -147,7 +147,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 { @@ -213,17 +213,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))] @@ -248,17 +248,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 9f0eeaa8b672a..70143652052eb 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 shmid_ds { 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 5b97eafe540e1..84429caa7ecd1 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 siginfo_t { @@ -203,7 +203,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 3ee2562dbbda4..0ae32029190c4 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 ipc_perm { 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 30d1d52ef7f76..cdcc80f11eafd 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 shmid_ds { 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 2852c265f9632..09924c9c87f53 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 pthread_attr_t { 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 dc01776efe127..db3f8cfa7a7c1 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 { @@ -150,7 +150,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 05ffdbb72dddd..9fab4d5674f13 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 pthread_attr_t { 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 b88e865cab9cd..f43c4e897e4cd 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 pthread_attr_t { @@ -203,7 +203,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 ac3918be4dec8..3e2a4288126f7 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 siginfo_t { @@ -236,7 +236,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 787415833ad85..6166783c82025 100644 --- a/src/unix/linux_like/linux/gnu/b64/s390x.rs +++ b/src/unix/linux_like/linux/gnu/b64/s390x.rs @@ -168,7 +168,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]>, } } 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 7a00da9f9ecf3..cd2d63237c6a1 100644 --- a/src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs +++ b/src/unix/linux_like/linux/gnu/b64/sparc64/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 pthread_attr_t { 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 4da4a17a6d008..b0bc5efc5b55f 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 @@ -113,7 +113,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 pthread_attr_t { @@ -237,7 +237,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 eee5a9fd3072a..6bc925e625d2e 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 957ef103b4014..4258f5f6fd3c6 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 0a55be16c428a..d1ade0a5e118b 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, @@ -291,19 +291,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, @@ -318,7 +318,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, } @@ -350,7 +350,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 { @@ -436,7 +436,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) @@ -454,7 +454,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 { @@ -467,11 +467,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 c133e22f9fb60..17fb3a9c9bc3e 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 d623328d60d62..475f85b9cf7e9 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 b4f101de4206e..72fc2d3ff959d 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 29d5392810b31..9de7510e6f4e6 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 8d1effde61901..8007556c8fecd 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 83f96d598cf7c..3e1f8b71c9e3d 100644 --- a/src/unix/newlib/mod.rs +++ b/src/unix/newlib/mod.rs @@ -360,7 +360,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 5efd8472cf401..b1e299ee2c596 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 f3e9c0120b3ee..9c25d36d8d976 100644 --- a/src/unix/redox/mod.rs +++ b/src/unix/redox/mod.rs @@ -96,7 +96,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 9fa2d2041b0dc..da8664ea79e05 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]>, } }