about summary refs log tree commit diff
path: root/src/liblibc
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-08-17 08:46:09 +0000
committerbors <bors@rust-lang.org>2014-08-17 08:46:09 +0000
commit921240e00aa3002c73fb3a8b240eb69118ee391e (patch)
tree601a6d7d7f5fb4160367e23294f7703f76c0ab17 /src/liblibc
parent6dca1426bcda309c0e046aa3c31d42026c25b5d6 (diff)
parent086a5ca7d25307325912cab2a67384867daa04c5 (diff)
downloadrust-921240e00aa3002c73fb3a8b240eb69118ee391e.tar.gz
rust-921240e00aa3002c73fb3a8b240eb69118ee391e.zip
auto merge of #16432 : pcwalton/rust/kindck-traits, r=nikomatsakis
them during kind checking.

This implements RFC #11.

Closes #15759.

r? @nikomatsakis
Diffstat (limited to 'src/liblibc')
-rw-r--r--src/liblibc/lib.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/liblibc/lib.rs b/src/liblibc/lib.rs
index bf0a9f06df8..0051d9a89c2 100644
--- a/src/liblibc/lib.rs
+++ b/src/liblibc/lib.rs
@@ -1456,13 +1456,24 @@ pub mod types {
                     pub Data4: [BYTE, ..8],
                 }
 
+                // NOTE(pcwalton, stage0): Remove after snapshot (typeck bug
+                // workaround).
+                #[cfg(stage0)]
                 pub struct WSAPROTOCOLCHAIN {
                     pub ChainLen: c_int,
                     pub ChainEntries: [DWORD, ..MAX_PROTOCOL_CHAIN],
                 }
+                #[cfg(not(stage0))]
+                pub struct WSAPROTOCOLCHAIN {
+                    pub ChainLen: c_int,
+                    pub ChainEntries: [DWORD, ..MAX_PROTOCOL_CHAIN as uint],
+                }
 
                 pub type LPWSAPROTOCOLCHAIN = *mut WSAPROTOCOLCHAIN;
 
+                // NOTE(pcwalton, stage0): Remove after snapshot (typeck bug
+                // workaround).
+                #[cfg(stage0)]
                 pub struct WSAPROTOCOL_INFO {
                     pub dwServiceFlags1: DWORD,
                     pub dwServiceFlags2: DWORD,
@@ -1485,6 +1496,29 @@ pub mod types {
                     pub dwProviderReserved: DWORD,
                     pub szProtocol: [u8, ..WSAPROTOCOL_LEN+1],
                 }
+                #[cfg(not(stage0))]
+                pub struct WSAPROTOCOL_INFO {
+                    pub dwServiceFlags1: DWORD,
+                    pub dwServiceFlags2: DWORD,
+                    pub dwServiceFlags3: DWORD,
+                    pub dwServiceFlags4: DWORD,
+                    pub dwProviderFlags: DWORD,
+                    pub ProviderId: GUID,
+                    pub dwCatalogEntryId: DWORD,
+                    pub ProtocolChain: WSAPROTOCOLCHAIN,
+                    pub iVersion: c_int,
+                    pub iAddressFamily: c_int,
+                    pub iMaxSockAddr: c_int,
+                    pub iMinSockAddr: c_int,
+                    pub iSocketType: c_int,
+                    pub iProtocol: c_int,
+                    pub iProtocolMaxOffset: c_int,
+                    pub iNetworkByteOrder: c_int,
+                    pub iSecurityScheme: c_int,
+                    pub dwMessageSize: DWORD,
+                    pub dwProviderReserved: DWORD,
+                    pub szProtocol: [u8, ..(WSAPROTOCOL_LEN as uint) + 1u],
+                }
 
                 pub type LPWSAPROTOCOL_INFO = *mut WSAPROTOCOL_INFO;