summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosh Triplett <josh@joshtriplett.org>2020-08-19 22:58:10 -0700
committerJosh Triplett <josh@joshtriplett.org>2020-08-19 22:58:10 -0700
commitb1144cc924e61c803e51b6fcd0888d41fa2cb759 (patch)
tree02354cab1c9ce53caacecbf096a8a1fa7ba40279
parent6bd95e4f0e0d7afa0c05d506b9ac5d5e36d4c1ed (diff)
downloadrust-libc-b1144cc924e61c803e51b6fcd0888d41fa2cb759.tar.gz
libc can't use derive(Copy,Clone) because it doesn't work in rustc
-rw-r--r--src/unix/linux_like/linux/gnu/mod.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/unix/linux_like/linux/gnu/mod.rs b/src/unix/linux_like/linux/gnu/mod.rs
index 166134ec0b..44232e98cb 100644
--- a/src/unix/linux_like/linux/gnu/mod.rs
+++ b/src/unix/linux_like/linux/gnu/mod.rs
@@ -317,7 +317,6 @@ cfg_if! {
if #[cfg(libc_union)] {
// Internal, for casts to access union fields
#[repr(C)]
- #[derive(Copy,Clone)]
struct sifields_sigchld {
si_pid: ::pid_t,
si_uid: ::uid_t,
@@ -325,6 +324,12 @@ cfg_if! {
si_utime: ::c_long,
si_stime: ::c_long,
}
+ impl ::Copy for sifields_sigchld {}
+ impl ::Clone for sifields_sigchld {
+ fn clone(&self) -> sifields_sigchld {
+ *self
+ }
+ }
// Internal, for casts to access union fields
#[repr(C)]