@@ -166,15 +166,31 @@ internal var _ENOPROTOOPT: CInt { ENOPROTOOPT }
166166internal var _EPROTONOSUPPORT : CInt { EPROTONOSUPPORT }
167167
168168@_alwaysEmitIntoClient
169- internal var _ESOCKTNOSUPPORT : CInt { ESOCKTNOSUPPORT }
169+ internal var _ESOCKTNOSUPPORT : CInt {
170+ #if os(Windows)
171+ return WSAESOCKTNOSUPPORT
172+ #else
173+ return ESOCKTNOSUPPORT
174+ #endif
175+ }
170176
171- #if !os(Windows)
172177@_alwaysEmitIntoClient
173- internal var _ENOTSUP : CInt { ENOTSUP }
178+ internal var _ENOTSUP : CInt {
179+ #if os(Windows)
180+ return WSAEOPNOTSUPP
181+ #else
182+ return ENOTSUP
174183#endif
184+ }
175185
176186@_alwaysEmitIntoClient
177- internal var _EPFNOSUPPORT : CInt { EPFNOSUPPORT }
187+ internal var _EPFNOSUPPORT : CInt {
188+ #if os(Windows)
189+ return WSAEPFNOSUPPORT
190+ #else
191+ return EPFNOSUPPORT
192+ #endif
193+ }
178194
179195@_alwaysEmitIntoClient
180196internal var _EAFNOSUPPORT : CInt { EAFNOSUPPORT }
@@ -210,10 +226,22 @@ internal var _EISCONN: CInt { EISCONN }
210226internal var _ENOTCONN : CInt { ENOTCONN }
211227
212228@_alwaysEmitIntoClient
213- internal var _ESHUTDOWN : CInt { ESHUTDOWN }
229+ internal var _ESHUTDOWN : CInt {
230+ #if os(Windows)
231+ return WSAESHUTDOWN
232+ #else
233+ return ESHUTDOWN
234+ #endif
235+ }
214236
215237@_alwaysEmitIntoClient
216- internal var _ETOOMANYREFS : CInt { ETOOMANYREFS }
238+ internal var _ETOOMANYREFS : CInt {
239+ #if os(Windows)
240+ return WSAETOOMANYREFS
241+ #else
242+ return ETOOMANYREFS
243+ #endif
244+ }
217245
218246@_alwaysEmitIntoClient
219247internal var _ETIMEDOUT : CInt { ETIMEDOUT }
@@ -228,7 +256,13 @@ internal var _ELOOP: CInt { ELOOP }
228256internal var _ENAMETOOLONG : CInt { ENAMETOOLONG }
229257
230258@_alwaysEmitIntoClient
231- internal var _EHOSTDOWN : CInt { EHOSTDOWN }
259+ internal var _EHOSTDOWN : CInt {
260+ #if os(Windows)
261+ return WSAEHOSTDOWN
262+ #else
263+ return EHOSTDOWN
264+ #endif
265+ }
232266
233267@_alwaysEmitIntoClient
234268internal var _EHOSTUNREACH : CInt { EHOSTUNREACH }
@@ -242,16 +276,40 @@ internal var _EPROCLIM: CInt { EPROCLIM }
242276#endif
243277
244278@_alwaysEmitIntoClient
245- internal var _EUSERS : CInt { EUSERS }
279+ internal var _EUSERS : CInt {
280+ #if os(Windows)
281+ return WSAEUSERS
282+ #else
283+ return EUSERS
284+ #endif
285+ }
246286
247287@_alwaysEmitIntoClient
248- internal var _EDQUOT : CInt { EDQUOT }
288+ internal var _EDQUOT : CInt {
289+ #if os(Windows)
290+ return WSAEDQUOT
291+ #else
292+ return EDQUOT
293+ #endif
294+ }
249295
250296@_alwaysEmitIntoClient
251- internal var _ESTALE : CInt { ESTALE }
297+ internal var _ESTALE : CInt {
298+ #if os(Windows)
299+ return WSAESTALE
300+ #else
301+ return ESTALE
302+ #endif
303+ }
252304
253305@_alwaysEmitIntoClient
254- internal var _EREMOTE : CInt { EREMOTE }
306+ internal var _EREMOTE : CInt {
307+ #if os(Windows)
308+ return WSAEREMOTE
309+ #else
310+ return EREMOTE
311+ #endif
312+ }
255313
256314#if os(macOS) || os(iOS) || os(watchOS) || os(tvOS)
257315@_alwaysEmitIntoClient
@@ -392,11 +450,11 @@ internal var _O_WRONLY: CInt { O_WRONLY }
392450@_alwaysEmitIntoClient
393451internal var _O_RDWR : CInt { O_RDWR }
394452
453+ #if !os(Windows)
395454// TODO: API?
396455@_alwaysEmitIntoClient
397456internal var _O_ACCMODE : CInt { O_ACCMODE }
398457
399- #if !os(Windows)
400458@_alwaysEmitIntoClient
401459internal var _O_NONBLOCK : CInt { O_NONBLOCK }
402460#endif
@@ -412,11 +470,11 @@ internal var _O_SHLOCK: CInt { O_SHLOCK }
412470internal var _O_EXLOCK : CInt { O_EXLOCK }
413471#endif
414472
473+ #if !os(Windows)
415474// TODO: API?
416475@_alwaysEmitIntoClient
417476internal var _O_ASYNC : CInt { O_ASYNC }
418477
419- #if !os(Windows)
420478@_alwaysEmitIntoClient
421479internal var _O_NOFOLLOW : CInt { O_NOFOLLOW }
422480#endif
@@ -435,13 +493,15 @@ internal var _O_EXCL: CInt { O_EXCL }
435493internal var _O_EVTONLY : CInt { O_EVTONLY }
436494#endif
437495
496+ #if !os(Windows)
438497// TODO: API?
439498@_alwaysEmitIntoClient
440499internal var _O_NOCTTY : CInt { O_NOCTTY }
441500
442501// TODO: API?
443502@_alwaysEmitIntoClient
444503internal var _O_DIRECTORY : CInt { O_DIRECTORY }
504+ #endif
445505
446506#if os(macOS) || os(iOS) || os(watchOS) || os(tvOS)
447507@_alwaysEmitIntoClient
0 commit comments