From 5dd1760e2781d1d9ab207176b56a3ad82ff44be8 Mon Sep 17 00:00:00 2001 From: Thayne McCombs Date: Wed, 4 Apr 2018 23:12:47 -0600 Subject: [PATCH] Use #[repr(align(32))] instead of private field for in6_addr. This allows constructiong in6_addr instances as a constant from other crates. See https://github.com/rust-lang/rust/issues/44582#issuecomment-378488339 --- src/fuchsia/mod.rs | 4 ++-- src/redox/net.rs | 4 ++-- src/unix/mod.rs | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/fuchsia/mod.rs b/src/fuchsia/mod.rs index 929acaf8dcc18..2bc1ec1706dd5 100644 --- a/src/fuchsia/mod.rs +++ b/src/fuchsia/mod.rs @@ -166,9 +166,9 @@ s! { pub s_addr: in_addr_t, } + #[repr(align(4))] pub struct in6_addr { - pub s6_addr: [u8; 16], - __align: [u32; 0], + pub s6_addr: [u8; 16] } pub struct ip_mreq { diff --git a/src/redox/net.rs b/src/redox/net.rs index 0916916430141..dee3869b99143 100644 --- a/src/redox/net.rs +++ b/src/redox/net.rs @@ -9,9 +9,9 @@ s! { pub s_addr: in_addr_t, } + #[repr(align(4))] pub struct in6_addr { - pub s6_addr: [u8; 16], - __align: [u32; 0], + pub s6_addr: [u8; 16] } pub struct ip_mreq { diff --git a/src/unix/mod.rs b/src/unix/mod.rs index d6cde7ae71182..baf87362bd32c 100644 --- a/src/unix/mod.rs +++ b/src/unix/mod.rs @@ -104,9 +104,9 @@ s! { pub s_addr: in_addr_t, } + #[repr(align(4))] pub struct in6_addr { - pub s6_addr: [u8; 16], - __align: [u32; 0], + pub s6_addr: [u8; 16] } pub struct ip_mreq {