diff options
author | Qiu Chaofan <qcf@ecnelises.com> | 2023-04-06 17:07:07 +0800 |
---|---|---|
committer | Qiu Chaofan <qcf@ecnelises.com> | 2023-04-06 17:07:07 +0800 |
commit | 7a1d2c6f9daa45f88810b93d6e28ed612a001397 (patch) | |
tree | eaf4fd948cd4927e10efa8c2f6ed4284c677027a /src | |
parent | 66171ee47ff8db0a39bc44863ceb5893670bdfa6 (diff) | |
download | rust-libc-7a1d2c6f9daa45f88810b93d6e28ed612a001397.tar.gz |
Remove AIX specific definition of sigval
AIX definition of sigval is actually the same as other unix. Remove the
union definition as other platforms treat it like a pointer.
Diffstat (limited to 'src')
-rw-r--r-- | src/unix/aix/mod.rs | 2 | ||||
-rw-r--r-- | src/unix/aix/powerpc64.rs | 42 |
2 files changed, 3 insertions, 41 deletions
diff --git a/src/unix/aix/mod.rs b/src/unix/aix/mod.rs index 98a09b5abc..8332d0ad5a 100644 --- a/src/unix/aix/mod.rs +++ b/src/unix/aix/mod.rs @@ -303,7 +303,7 @@ s! { pub sigev_value: ::sigval, pub sigev_signo: ::c_int, pub sigev_notify: ::c_int, - pub sigev_notify_function: extern fn(val: sigval), + pub sigev_notify_function: extern fn(val: ::sigval), pub sigev_notify_attributes: *mut pthread_attr_t, } diff --git a/src/unix/aix/powerpc64.rs b/src/unix/aix/powerpc64.rs index 6c6b87db74..8dcce98fb3 100644 --- a/src/unix/aix/powerpc64.rs +++ b/src/unix/aix/powerpc64.rs @@ -96,12 +96,6 @@ s! { } s_no_extra_traits! { - #[cfg(libc_union)] - pub union sigval { - pub sival_ptr: *mut ::c_void, - pub sival_int: ::c_int, - } - pub struct siginfo_t { pub si_signo: ::c_int, pub si_errno: ::c_int, @@ -111,8 +105,7 @@ s_no_extra_traits! { pub si_status: ::c_int, pub si_addr: *mut ::c_void, pub si_band: ::c_long, - #[cfg(libc_union)] - pub si_value: sigval, + pub si_value: ::sigval, pub __si_flags: ::c_int, pub __pad: [::c_int; 3], } @@ -197,7 +190,6 @@ impl siginfo_t { self.si_addr } - #[cfg(libc_union)] pub unsafe fn si_value(&self) -> ::sigval { self.si_value } @@ -217,36 +209,6 @@ impl siginfo_t { cfg_if! { if #[cfg(feature = "extra_traits")] { - #[cfg(libc_union)] - impl PartialEq for sigval { - fn eq(&self, other: &sigval) -> bool { - unsafe { - self.sival_ptr == other.sival_ptr - && self.sival_int == other.sival_int - } - } - } - #[cfg(libc_union)] - impl Eq for sigval {} - #[cfg(libc_union)] - impl ::fmt::Debug for sigval { - fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { - f.debug_struct("sigval") - .field("sival_ptr", unsafe { &self.sival_ptr }) - .field("sival_int", unsafe { &self.sival_int }) - .finish() - } - } - #[cfg(libc_union)] - impl ::hash::Hash for sigval { - fn hash<H: ::hash::Hasher>(&self, state: &mut H) { - unsafe { - self.sival_ptr.hash(state); - self.sival_int.hash(state); - } - } - } - impl PartialEq for siginfo_t { fn eq(&self, other: &siginfo_t) -> bool { #[cfg(libc_union)] @@ -313,7 +275,7 @@ cfg_if! { #[cfg(libc_union)] impl ::fmt::Debug for _kernel_simple_lock { fn fmt(&self, f: &mut ::fmt::Formatter) -> ::fmt::Result { - f.debug_struct("sigval") + f.debug_struct("_kernel_simple_lock") .field("_slock", unsafe { &self._slock }) .field("_slockp", unsafe { &self._slockp }) .finish() |