File tree Expand file tree Collapse file tree 2 files changed +20
-26
lines changed Expand file tree Collapse file tree 2 files changed +20
-26
lines changed Original file line number Diff line number Diff line change 10
10
//
11
11
//===----------------------------------------------------------------------===//
12
12
13
+ #include <errno.h>
13
14
#include <fcntl.h>
14
15
#if !defined(_WIN32 ) || defined(__CYGWIN__ )
15
16
#include <semaphore.h>
@@ -104,3 +105,14 @@ SWIFT_CC(swift) extern char **_swift_FreeBSD_getEnv() {
104
105
return environ ;
105
106
}
106
107
#endif // defined(__FreeBSD__)
108
+
109
+ SWIFT_CC (swift )
110
+ extern int _swift_Platform_getErrno () {
111
+ return errno ;
112
+ }
113
+
114
+ SWIFT_CC (swift )
115
+ extern void _swift_Platform_setErrno (int value ) {
116
+ errno = value ;
117
+ }
118
+
Original file line number Diff line number Diff line change @@ -94,36 +94,18 @@ public func || <T : Boolean>(
94
94
// sys/errno.h
95
95
//===----------------------------------------------------------------------===//
96
96
97
+ @_silgen_name ( " _swift_Platform_getErrno " )
98
+ func _swift_Platform_getErrno( ) -> Int32
99
+
100
+ @_silgen_name ( " _swift_Platform_setErrno " )
101
+ func _swift_Platform_setErrno( _: Int32 )
102
+
97
103
public var errno : Int32 {
98
104
get {
99
- #if os(OSX) || os(iOS) || os(watchOS) || os(tvOS) || os(FreeBSD) || os(PS4)
100
- return __error ( ) . pointee
101
- #elseif os(Android)
102
- return __errno ( ) . pointee
103
- #elseif os(Windows)
104
- #if CYGWIN
105
- return __errno ( ) . pointee
106
- #else
107
- return _errno ( ) . pointee
108
- #endif
109
- #else
110
- return __errno_location ( ) . pointee
111
- #endif
105
+ return _swift_Platform_getErrno ( )
112
106
}
113
107
set ( val) {
114
- #if os(OSX) || os(iOS) || os(watchOS) || os(tvOS) || os(FreeBSD) || os(PS4)
115
- return __error ( ) . pointee = val
116
- #elseif os(Android)
117
- return __errno ( ) . pointee = val
118
- #elseif os(Windows)
119
- #if CYGWIN
120
- return __errno ( ) . pointee = val
121
- #else
122
- return _errno ( ) . pointee = val
123
- #endif
124
- #else
125
- return __errno_location ( ) . pointee = val
126
- #endif
108
+ return _swift_Platform_setErrno ( val)
127
109
}
128
110
}
129
111
You can’t perform that action at this time.
0 commit comments