Skip to content

Commit 7387dd6

Browse files
committed
cleanup: Declare more private padding fields Padding's
We have more private fields that are padding areas that are currently not marked as Padding, which is causing the generated Hash and PartialEq implementations to take care of them wrongly. Fix them
1 parent 66e1f24 commit 7387dd6

File tree

15 files changed

+44
-44
lines changed

15 files changed

+44
-44
lines changed

src/fuchsia/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ s! {
520520
pub ssi_syscall: i32,
521521
pub ssi_call_addr: u64,
522522
pub ssi_arch: u32,
523-
_pad: [u8; 28],
523+
_pad: Padding<[u8; 28]>,
524524
}
525525

526526
pub struct itimerspec {

src/new/musl/sys/socket.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@ s! {
1010
pub msg_namelen: crate::socklen_t,
1111
pub msg_iov: *mut crate::iovec,
1212
#[cfg(all(target_pointer_width = "64", target_endian = "big"))]
13-
__pad1: c_int,
13+
__pad1: Padding<c_int>,
1414
pub msg_iovlen: c_int,
1515
#[cfg(all(target_pointer_width = "64", target_endian = "little"))]
16-
__pad1: c_int,
16+
__pad1: Padding<c_int>,
1717
pub msg_control: *mut c_void,
1818
#[cfg(all(target_pointer_width = "64", target_endian = "big"))]
19-
__pad2: c_int,
19+
__pad2: Padding<c_int>,
2020
pub msg_controllen: crate::socklen_t,
2121
#[cfg(all(target_pointer_width = "64", target_endian = "little"))]
22-
__pad2: c_int,
22+
__pad2: Padding<c_int>,
2323
pub msg_flags: c_int,
2424
}
2525

src/new/netbsd/utmpx_.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ s! {
4646
pub ut_exit: __exit_status, // FIXME(netbsd): when anonymous struct are supported
4747
pub ut_ss: crate::sockaddr_storage,
4848
pub ut_tv: crate::timeval,
49-
ut_pad: [u8; _UTX_PADSIZE],
49+
ut_pad: Padding<[u8; _UTX_PADSIZE]>,
5050
}
5151

5252
pub struct __exit_status {

src/unix/bsd/apple/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1313,7 +1313,7 @@ s! {
13131313
pub ut_type: c_short,
13141314
pub ut_tv: crate::timeval,
13151315
pub ut_host: [c_char; _UTX_HOSTSIZE],
1316-
ut_pad: [u32; 16],
1316+
ut_pad: Padding<[u32; 16]>,
13171317
}
13181318

13191319
pub struct sigevent {

src/unix/bsd/freebsdlike/freebsd/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@ s! {
346346
m_ceilings: [u32; 2],
347347
m_rb_link: crate::uintptr_t,
348348
#[cfg(target_pointer_width = "32")]
349-
m_pad: u32,
349+
m_pad: Padding<u32>,
350350
m_spare: [u32; 2],
351351
}
352352

@@ -1684,7 +1684,7 @@ s_no_extra_traits! {
16841684
}
16851685

16861686
pub struct in_addr_4in6 {
1687-
_ia46_pad32: [u32; 3],
1687+
_ia46_pad32: Padding<[u32; 3]>,
16881688
pub ia46_addr4: crate::in_addr,
16891689
}
16901690

src/unix/bsd/netbsdlike/netbsd/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ s! {
230230
target_arch = "x86",
231231
target_arch = "x86_64"
232232
))]
233-
ptm_pad1: [u8; 3],
233+
ptm_pad1: Padding<[u8; 3]>,
234234
// actually a union with a non-unused, 0-initialized field
235235
ptm_unused: __pthread_spin_t,
236236
#[cfg(any(
@@ -239,7 +239,7 @@ s! {
239239
target_arch = "x86",
240240
target_arch = "x86_64"
241241
))]
242-
ptm_pad2: [u8; 3],
242+
ptm_pad2: Padding<[u8; 3]>,
243243
ptm_owner: crate::pthread_t,
244244
ptm_waiters: *mut u8,
245245
ptm_recursed: c_uint,
@@ -1281,9 +1281,9 @@ cfg_if! {
12811281
pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t {
12821282
ptm_magic: 0x33330003,
12831283
ptm_errorcheck: 0,
1284-
ptm_pad1: [0; 3],
1284+
ptm_pad1: Padding::uninit(),
12851285
ptm_unused: 0,
1286-
ptm_pad2: [0; 3],
1286+
ptm_pad2: Padding::uninit(),
12871287
ptm_waiters: 0 as *mut _,
12881288
ptm_owner: 0,
12891289
ptm_recursed: 0,

src/unix/bsd/netbsdlike/openbsd/mod.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -623,9 +623,9 @@ s! {
623623
pub struct sockaddr_storage {
624624
pub ss_len: u8,
625625
pub ss_family: crate::sa_family_t,
626-
__ss_pad1: [u8; 6],
627-
__ss_pad2: i64,
628-
__ss_pad3: [u8; 240],
626+
__ss_pad1: Padding<[u8; 6]>,
627+
__ss_pad2: Padding<i64>,
628+
__ss_pad3: Padding<[u8; 240]>,
629629
}
630630

631631
pub struct siginfo_t {
@@ -634,9 +634,9 @@ s! {
634634
pub si_errno: c_int,
635635
pub si_addr: *mut c_char,
636636
#[cfg(target_pointer_width = "32")]
637-
__pad: [u8; 112],
637+
__pad: Padding<[u8; 112]>,
638638
#[cfg(target_pointer_width = "64")]
639-
__pad: [u8; 108],
639+
__pad: Padding<[u8; 108]>,
640640
}
641641

642642
pub struct lastlog {

src/unix/linux_like/linux/gnu/b32/arm/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,15 @@ s! {
8484
pub st_atime: crate::time_t,
8585
pub st_atime_nsec: c_long,
8686
#[cfg(gnu_time_bits64)]
87-
_atime_pad: c_int,
87+
_atime_pad: Padding<c_int>,
8888
pub st_mtime: crate::time_t,
8989
pub st_mtime_nsec: c_long,
9090
#[cfg(gnu_time_bits64)]
91-
_mtime_pad: c_int,
91+
_mtime_pad: Padding<c_int>,
9292
pub st_ctime: crate::time_t,
9393
pub st_ctime_nsec: c_long,
9494
#[cfg(gnu_time_bits64)]
95-
_ctime_pad: c_int,
95+
_ctime_pad: Padding<c_int>,
9696
#[cfg(not(gnu_time_bits64))]
9797
pub st_ino: crate::ino64_t,
9898
}

src/unix/linux_like/linux/gnu/b32/mips/mod.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,15 +45,15 @@ s! {
4545

4646
pub st_atime: crate::time_t,
4747
#[cfg(gnu_time_bits64)]
48-
_atime_pad: c_int,
48+
_atime_pad: Padding<c_int>,
4949
pub st_atime_nsec: c_long,
5050
pub st_mtime: crate::time_t,
5151
#[cfg(gnu_time_bits64)]
52-
_mtime_pad: c_int,
52+
_mtime_pad: Padding<c_int>,
5353
pub st_mtime_nsec: c_long,
5454
pub st_ctime: crate::time_t,
5555
#[cfg(gnu_time_bits64)]
56-
_ctime_pad: c_int,
56+
_ctime_pad: Padding<c_int>,
5757
pub st_ctime_nsec: c_long,
5858

5959
#[cfg(not(gnu_time_bits64))]
@@ -98,15 +98,15 @@ s! {
9898

9999
pub st_atime: crate::time_t,
100100
#[cfg(gnu_time_bits64)]
101-
_atime_pad: c_int,
101+
_atime_pad: Padding<c_int>,
102102
pub st_atime_nsec: c_long,
103103
pub st_mtime: crate::time_t,
104104
#[cfg(gnu_time_bits64)]
105-
_mtime_pad: c_int,
105+
_mtime_pad: Padding<c_int>,
106106
pub st_mtime_nsec: c_long,
107107
pub st_ctime: crate::time_t,
108108
#[cfg(gnu_time_bits64)]
109-
_ctime_pad: c_int,
109+
_ctime_pad: Padding<c_int>,
110110
pub st_ctime_nsec: c_long,
111111

112112
#[cfg(not(gnu_time_bits64))]

src/unix/linux_like/linux/gnu/b32/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,15 +106,15 @@ cfg_if! {
106106
pub st_atime: crate::time_t,
107107
pub st_atime_nsec: c_long,
108108
#[cfg(gnu_time_bits64)]
109-
_atime_pad: c_int,
109+
_atime_pad: Padding<c_int>,
110110
pub st_mtime: crate::time_t,
111111
pub st_mtime_nsec: c_long,
112112
#[cfg(gnu_time_bits64)]
113-
_mtime_pad: c_int,
113+
_mtime_pad: Padding<c_int>,
114114
pub st_ctime: crate::time_t,
115115
pub st_ctime_nsec: c_long,
116116
#[cfg(gnu_time_bits64)]
117-
_ctime_pad: c_int,
117+
_ctime_pad: Padding<c_int>,
118118

119119
#[cfg(not(gnu_file_offset_bits64))]
120120
__glibc_reserved4: c_long,

0 commit comments

Comments
 (0)