authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-10-21 19:59:12-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-10-21 19:59:12-07:00
logce5035c07d2f8cab44639262f11a032fb52459b1
tree6ad1091bc5e49725e451ddae368d733d0bda8c35
parent44f8e6a534bd2977c741afdbf5ba9df49bde0fd9
parent11a9eff36ef3d6dd7dbfec27e7b59d237607f6c9

Merge branch 'kubkon-macos-libc'

closes #6752 closes #5031

113 files changed, 19725 insertions(+), 6 deletions(-)

README.md+10-6
......@@ -111,16 +111,20 @@ stage2/bin/zig build install -Drelease
111111
112112The ultimate goal of the Zig project is to serve users. As a first-order
113113effect, this means users of the compiler, helping programmers to write better
114code. Even more important, however, are the end users.
114software. Even more important, however, are the end users.
115115
116Zig is intended to be used to help end users accomplish their goals. For
117example, it would be inappropriate and offensive to use Zig to implement
118[dark patterns](https://en.wikipedia.org/wiki/Dark_pattern) and it would be
119shameful to utilize Zig to exploit people instead of benefit them.
116Zig is intended to be used to help **end users** accomplish their goals. Zig
117should be used to empower end users, never to exploit them financially or to
118limit their freedom to interact with hardware or software in any way.
120119
121120However, such problems are best solved with social norms, not with software
122121licenses. Any attempt to complicate the software license of Zig would risk
123compromising the value Zig provides to users.
122compromising the value Zig provides.
124123
125124Therefore, Zig is available under the MIT (Expat) License, and comes with a
126125humble request: use it to make software better serve the needs of end users.
126
127This project redistributes code from other projects, some of which have other
128licenses besides MIT. Such licenses are generally similar to the MIT license
129for practical purposes. See the subdirectories and files inside lib/ for more
130details.
lib/libc/include/x86_64-macos-gnu/Availability.h created+606
......@@ -0,0 +1,606 @@
1/*
2 * Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef __AVAILABILITY__
25#define __AVAILABILITY__
26 /*
27 These macros are for use in OS header files. They enable function prototypes
28 and Objective-C methods to be tagged with the OS version in which they
29 were first available; and, if applicable, the OS version in which they
30 became deprecated.
31
32 The desktop Mac OS X and iOS each have different version numbers.
33 The __OSX_AVAILABLE_STARTING() macro allows you to specify both the desktop
34 and iOS version numbers. For instance:
35 __OSX_AVAILABLE_STARTING(__MAC_10_2,__IPHONE_2_0)
36 means the function/method was first available on Mac OS X 10.2 on the desktop
37 and first available in iOS 2.0 on the iPhone.
38
39 If a function is available on one platform, but not the other a _NA (not
40 applicable) parameter is used. For instance:
41 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA)
42 means that the function/method was first available on Mac OS X 10.3, and it
43 currently not implemented on the iPhone.
44
45 At some point, a function/method may be deprecated. That means Apple
46 recommends applications stop using the function, either because there is a
47 better replacement or the functionality is being phased out. Deprecated
48 functions/methods can be tagged with a __OSX_AVAILABLE_BUT_DEPRECATED()
49 macro which specifies the OS version where the function became available
50 as well as the OS version in which it became deprecated. For instance:
51 __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA)
52 means that the function/method was introduced in Mac OS X 10.0, then
53 became deprecated beginning in Mac OS X 10.5. On iOS the function
54 has never been available.
55
56 For these macros to function properly, a program must specify the OS version range
57 it is targeting. The min OS version is specified as an option to the compiler:
58 -mmacosx-version-min=10.x when building for Mac OS X, and -miphoneos-version-min=y.z
59 when building for the iPhone. The upper bound for the OS version is rarely needed,
60 but it can be set on the command line via: -D__MAC_OS_X_VERSION_MAX_ALLOWED=10x0 for
61 Mac OS X and __IPHONE_OS_VERSION_MAX_ALLOWED = y0z00 for iOS.
62
63 Examples:
64
65 A function available in Mac OS X 10.5 and later, but not on the phone:
66
67 extern void mymacfunc() __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
68
69
70 An Objective-C method in Mac OS X 10.5 and later, but not on the phone:
71
72 @interface MyClass : NSObject
73 -(void) mymacmethod __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
74 @end
75
76
77 An enum available on the phone, but not available on Mac OS X:
78
79 #if __IPHONE_OS_VERSION_MIN_REQUIRED
80 enum { myEnum = 1 };
81 #endif
82 Note: this works when targeting the Mac OS X platform because
83 __IPHONE_OS_VERSION_MIN_REQUIRED is undefined which evaluates to zero.
84
85
86 An enum with values added in different iPhoneOS versions:
87
88 enum {
89 myX = 1, // Usable on iPhoneOS 2.1 and later
90 myY = 2, // Usable on iPhoneOS 3.0 and later
91 myZ = 3, // Usable on iPhoneOS 3.0 and later
92 ...
93 Note: you do not want to use #if with enumeration values
94 when a client needs to see all values at compile time
95 and use runtime logic to only use the viable values.
96
97
98 It is also possible to use the *_VERSION_MIN_REQUIRED in source code to make one
99 source base that can be compiled to target a range of OS versions. It is best
100 to not use the _MAC_* and __IPHONE_* macros for comparisons, but rather their values.
101 That is because you might get compiled on an old OS that does not define a later
102 OS version macro, and in the C preprocessor undefined values evaluate to zero
103 in expresssions, which could cause the #if expression to evaluate in an unexpected
104 way.
105
106 #ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
107 // code only compiled when targeting Mac OS X and not iPhone
108 // note use of 1050 instead of __MAC_10_5
109 #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1050
110 // code in here might run on pre-Leopard OS
111 #else
112 // code here can assume Leopard or later
113 #endif
114 #endif
115
116
117*/
118
119/*
120 * __API_TO_BE_DEPRECATED is used as a version number in API that will be deprecated
121 * in an upcoming release. This soft deprecation is an intermediate step before formal
122 * deprecation to notify developers about the API before compiler warnings are generated.
123 * You can find all places in your code that use soft deprecated API by redefining the
124 * value of this macro to your current minimum deployment target, for example:
125 * (macOS)
126 * clang -D__API_TO_BE_DEPRECATED=10.12 <other compiler flags>
127 * (iOS)
128 * clang -D__API_TO_BE_DEPRECATED=11.0 <other compiler flags>
129 */
130
131#ifndef __API_TO_BE_DEPRECATED
132#define __API_TO_BE_DEPRECATED 100000
133#endif
134
135#ifndef __MAC_10_0
136#define __MAC_10_0 1000
137#define __MAC_10_1 1010
138#define __MAC_10_2 1020
139#define __MAC_10_3 1030
140#define __MAC_10_4 1040
141#define __MAC_10_5 1050
142#define __MAC_10_6 1060
143#define __MAC_10_7 1070
144#define __MAC_10_8 1080
145#define __MAC_10_9 1090
146#define __MAC_10_10 101000
147#define __MAC_10_10_2 101002
148#define __MAC_10_10_3 101003
149#define __MAC_10_11 101100
150#define __MAC_10_11_2 101102
151#define __MAC_10_11_3 101103
152#define __MAC_10_11_4 101104
153#define __MAC_10_12 101200
154#define __MAC_10_12_1 101201
155#define __MAC_10_12_2 101202
156#define __MAC_10_12_4 101204
157#define __MAC_10_13 101300
158#define __MAC_10_13_1 101301
159#define __MAC_10_13_2 101302
160#define __MAC_10_13_4 101304
161#define __MAC_10_14 101400
162#define __MAC_10_14_1 101401
163#define __MAC_10_14_4 101404
164#define __MAC_10_15 101500
165#define __MAC_10_15_1 101501
166#define __MAC_10_15_4 101504
167/* __MAC_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable */
168
169#define __IPHONE_2_0 20000
170#define __IPHONE_2_1 20100
171#define __IPHONE_2_2 20200
172#define __IPHONE_3_0 30000
173#define __IPHONE_3_1 30100
174#define __IPHONE_3_2 30200
175#define __IPHONE_4_0 40000
176#define __IPHONE_4_1 40100
177#define __IPHONE_4_2 40200
178#define __IPHONE_4_3 40300
179#define __IPHONE_5_0 50000
180#define __IPHONE_5_1 50100
181#define __IPHONE_6_0 60000
182#define __IPHONE_6_1 60100
183#define __IPHONE_7_0 70000
184#define __IPHONE_7_1 70100
185#define __IPHONE_8_0 80000
186#define __IPHONE_8_1 80100
187#define __IPHONE_8_2 80200
188#define __IPHONE_8_3 80300
189#define __IPHONE_8_4 80400
190#define __IPHONE_9_0 90000
191#define __IPHONE_9_1 90100
192#define __IPHONE_9_2 90200
193#define __IPHONE_9_3 90300
194#define __IPHONE_10_0 100000
195#define __IPHONE_10_1 100100
196#define __IPHONE_10_2 100200
197#define __IPHONE_10_3 100300
198#define __IPHONE_11_0 110000
199#define __IPHONE_11_1 110100
200#define __IPHONE_11_2 110200
201#define __IPHONE_11_3 110300
202#define __IPHONE_11_4 110400
203#define __IPHONE_12_0 120000
204#define __IPHONE_12_1 120100
205#define __IPHONE_12_2 120200
206#define __IPHONE_12_3 120300
207#define __IPHONE_13_0 130000
208#define __IPHONE_13_1 130100
209#define __IPHONE_13_2 130200
210#define __IPHONE_13_3 130300
211#define __IPHONE_13_4 130400
212#define __IPHONE_13_5 130500
213#define __IPHONE_13_6 130600
214/* __IPHONE_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable */
215
216#define __TVOS_9_0 90000
217#define __TVOS_9_1 90100
218#define __TVOS_9_2 90200
219#define __TVOS_10_0 100000
220#define __TVOS_10_0_1 100001
221#define __TVOS_10_1 100100
222#define __TVOS_10_2 100200
223#define __TVOS_11_0 110000
224#define __TVOS_11_1 110100
225#define __TVOS_11_2 110200
226#define __TVOS_11_3 110300
227#define __TVOS_11_4 110400
228#define __TVOS_12_0 120000
229#define __TVOS_12_1 120100
230#define __TVOS_12_2 120200
231#define __TVOS_12_3 120300
232#define __TVOS_13_0 130000
233#define __TVOS_13_2 130200
234#define __TVOS_13_3 130300
235#define __TVOS_13_4 130400
236
237#define __WATCHOS_1_0 10000
238#define __WATCHOS_2_0 20000
239#define __WATCHOS_2_1 20100
240#define __WATCHOS_2_2 20200
241#define __WATCHOS_3_0 30000
242#define __WATCHOS_3_1 30100
243#define __WATCHOS_3_1_1 30101
244#define __WATCHOS_3_2 30200
245#define __WATCHOS_4_0 40000
246#define __WATCHOS_4_1 40100
247#define __WATCHOS_4_2 40200
248#define __WATCHOS_4_3 40300
249#define __WATCHOS_5_0 50000
250#define __WATCHOS_5_1 50100
251#define __WATCHOS_5_2 50200
252#define __WATCHOS_6_0 60000
253#define __WATCHOS_6_1 60100
254#define __WATCHOS_6_2 60200
255
256#define __DRIVERKIT_19_0 190000
257#endif /* __MAC_10_0 */
258
259#include <AvailabilityInternal.h>
260
261#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
262 #define __OSX_AVAILABLE_STARTING(_osx, _ios) __AVAILABILITY_INTERNAL##_ios
263 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep) \
264 __AVAILABILITY_INTERNAL##_iosIntro##_DEP##_iosDep
265 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg) \
266 __AVAILABILITY_INTERNAL##_iosIntro##_DEP##_iosDep##_MSG(_msg)
267
268#elif defined(__MAC_OS_X_VERSION_MIN_REQUIRED)
269
270 #if defined(__has_builtin)
271 #if __has_builtin(__is_target_arch)
272 #if __has_builtin(__is_target_vendor)
273 #if __has_builtin(__is_target_os)
274 #if __has_builtin(__is_target_environment)
275 #if __has_builtin(__is_target_variant_os)
276 #if __has_builtin(__is_target_variant_environment)
277 #if (__is_target_arch(x86_64) && __is_target_vendor(apple) && ((__is_target_os(ios) && __is_target_environment(macabi)) || (__is_target_variant_os(ios) && __is_target_variant_environment(macabi))))
278 #define __OSX_AVAILABLE_STARTING(_osx, _ios) __AVAILABILITY_INTERNAL##_osx __AVAILABILITY_INTERNAL##_ios
279 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep) \
280 __AVAILABILITY_INTERNAL##_osxIntro##_DEP##_osxDep __AVAILABILITY_INTERNAL##_iosIntro##_DEP##_iosDep
281 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg) \
282 __AVAILABILITY_INTERNAL##_osxIntro##_DEP##_osxDep##_MSG(_msg) __AVAILABILITY_INTERNAL##_iosIntro##_DEP##_iosDep##_MSG(_msg)
283 #endif /* # if __is_target_arch... */
284 #endif /* #if __has_builtin(__is_target_variant_environment) */
285 #endif /* #if __has_builtin(__is_target_variant_os) */
286 #endif /* #if __has_builtin(__is_target_environment) */
287 #endif /* #if __has_builtin(__is_target_os) */
288 #endif /* #if __has_builtin(__is_target_vendor) */
289 #endif /* #if __has_builtin(__is_target_arch) */
290 #endif /* #if defined(__has_builtin) */
291
292 #ifndef __OSX_AVAILABLE_STARTING
293 #if defined(__has_attribute) && defined(__has_feature)
294 #if __has_attribute(availability)
295 #define __OSX_AVAILABLE_STARTING(_osx, _ios) __AVAILABILITY_INTERNAL##_osx
296 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep) \
297 __AVAILABILITY_INTERNAL##_osxIntro##_DEP##_osxDep
298 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg) \
299 __AVAILABILITY_INTERNAL##_osxIntro##_DEP##_osxDep##_MSG(_msg)
300 #else
301 #define __OSX_AVAILABLE_STARTING(_osx, _ios)
302 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep)
303 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
304 #endif
305 #else
306 #define __OSX_AVAILABLE_STARTING(_osx, _ios)
307 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep)
308 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
309 #endif
310#endif /* __OSX_AVAILABLE_STARTING */
311
312#else
313 #define __OSX_AVAILABLE_STARTING(_osx, _ios)
314 #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep)
315 #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
316#endif
317
318
319#if defined(__has_feature)
320 #if __has_feature(attribute_availability_with_message)
321 #define __OS_AVAILABILITY(_target, _availability) __attribute__((availability(_target,_availability)))
322 #define __OS_AVAILABILITY_MSG(_target, _availability, _msg) __attribute__((availability(_target,_availability,message=_msg)))
323 #elif __has_feature(attribute_availability)
324 #define __OS_AVAILABILITY(_target, _availability) __attribute__((availability(_target,_availability)))
325 #define __OS_AVAILABILITY_MSG(_target, _availability, _msg) __attribute__((availability(_target,_availability)))
326 #else
327 #define __OS_AVAILABILITY(_target, _availability)
328 #define __OS_AVAILABILITY_MSG(_target, _availability, _msg)
329 #endif
330#else
331 #define __OS_AVAILABILITY(_target, _availability)
332 #define __OS_AVAILABILITY_MSG(_target, _availability, _msg)
333#endif
334
335
336/* for use to document app extension usage */
337#if defined(__has_feature)
338 #if __has_feature(attribute_availability_app_extension)
339 #define __OSX_EXTENSION_UNAVAILABLE(_msg) __OS_AVAILABILITY_MSG(macosx_app_extension,unavailable,_msg)
340 #define __IOS_EXTENSION_UNAVAILABLE(_msg) __OS_AVAILABILITY_MSG(ios_app_extension,unavailable,_msg)
341 #else
342 #define __OSX_EXTENSION_UNAVAILABLE(_msg)
343 #define __IOS_EXTENSION_UNAVAILABLE(_msg)
344 #endif
345#else
346 #define __OSX_EXTENSION_UNAVAILABLE(_msg)
347 #define __IOS_EXTENSION_UNAVAILABLE(_msg)
348#endif
349
350#define __OS_EXTENSION_UNAVAILABLE(_msg) __OSX_EXTENSION_UNAVAILABLE(_msg) __IOS_EXTENSION_UNAVAILABLE(_msg)
351
352
353
354/* for use marking APIs available info for Mac OSX */
355#if defined(__has_attribute)
356 #if __has_attribute(availability)
357 #define __OSX_UNAVAILABLE __OS_AVAILABILITY(macosx,unavailable)
358 #define __OSX_AVAILABLE(_vers) __OS_AVAILABILITY(macosx,introduced=_vers)
359 #define __OSX_DEPRECATED(_start, _dep, _msg) __OSX_AVAILABLE(_start) __OS_AVAILABILITY_MSG(macosx,deprecated=_dep,_msg)
360 #endif
361#endif
362
363#ifndef __OSX_UNAVAILABLE
364 #define __OSX_UNAVAILABLE
365#endif
366
367#ifndef __OSX_AVAILABLE
368 #define __OSX_AVAILABLE(_vers)
369#endif
370
371#ifndef __OSX_DEPRECATED
372 #define __OSX_DEPRECATED(_start, _dep, _msg)
373#endif
374
375
376/* for use marking APIs available info for iOS */
377#if defined(__has_attribute)
378 #if __has_attribute(availability)
379 #define __IOS_UNAVAILABLE __OS_AVAILABILITY(ios,unavailable)
380 #define __IOS_PROHIBITED __OS_AVAILABILITY(ios,unavailable)
381 #define __IOS_AVAILABLE(_vers) __OS_AVAILABILITY(ios,introduced=_vers)
382 #define __IOS_DEPRECATED(_start, _dep, _msg) __IOS_AVAILABLE(_start) __OS_AVAILABILITY_MSG(ios,deprecated=_dep,_msg)
383 #endif
384#endif
385
386#ifndef __IOS_UNAVAILABLE
387 #define __IOS_UNAVAILABLE
388#endif
389
390#ifndef __IOS_PROHIBITED
391 #define __IOS_PROHIBITED
392#endif
393
394#ifndef __IOS_AVAILABLE
395 #define __IOS_AVAILABLE(_vers)
396#endif
397
398#ifndef __IOS_DEPRECATED
399 #define __IOS_DEPRECATED(_start, _dep, _msg)
400#endif
401
402
403/* for use marking APIs available info for tvOS */
404#if defined(__has_feature)
405 #if __has_feature(attribute_availability_tvos)
406 #define __TVOS_UNAVAILABLE __OS_AVAILABILITY(tvos,unavailable)
407 #define __TVOS_PROHIBITED __OS_AVAILABILITY(tvos,unavailable)
408 #define __TVOS_AVAILABLE(_vers) __OS_AVAILABILITY(tvos,introduced=_vers)
409 #define __TVOS_DEPRECATED(_start, _dep, _msg) __TVOS_AVAILABLE(_start) __OS_AVAILABILITY_MSG(tvos,deprecated=_dep,_msg)
410 #endif
411#endif
412
413#ifndef __TVOS_UNAVAILABLE
414 #define __TVOS_UNAVAILABLE
415#endif
416
417#ifndef __TVOS_PROHIBITED
418 #define __TVOS_PROHIBITED
419#endif
420
421#ifndef __TVOS_AVAILABLE
422 #define __TVOS_AVAILABLE(_vers)
423#endif
424
425#ifndef __TVOS_DEPRECATED
426 #define __TVOS_DEPRECATED(_start, _dep, _msg)
427#endif
428
429
430/* for use marking APIs available info for Watch OS */
431#if defined(__has_feature)
432 #if __has_feature(attribute_availability_watchos)
433 #define __WATCHOS_UNAVAILABLE __OS_AVAILABILITY(watchos,unavailable)
434 #define __WATCHOS_PROHIBITED __OS_AVAILABILITY(watchos,unavailable)
435 #define __WATCHOS_AVAILABLE(_vers) __OS_AVAILABILITY(watchos,introduced=_vers)
436 #define __WATCHOS_DEPRECATED(_start, _dep, _msg) __WATCHOS_AVAILABLE(_start) __OS_AVAILABILITY_MSG(watchos,deprecated=_dep,_msg)
437 #endif
438#endif
439
440#ifndef __WATCHOS_UNAVAILABLE
441 #define __WATCHOS_UNAVAILABLE
442#endif
443
444#ifndef __WATCHOS_PROHIBITED
445 #define __WATCHOS_PROHIBITED
446#endif
447
448#ifndef __WATCHOS_AVAILABLE
449 #define __WATCHOS_AVAILABLE(_vers)
450#endif
451
452#ifndef __WATCHOS_DEPRECATED
453 #define __WATCHOS_DEPRECATED(_start, _dep, _msg)
454#endif
455
456
457/* for use marking APIs unavailable for swift */
458#if defined(__has_feature)
459 #if __has_feature(attribute_availability_swift)
460 #define __SWIFT_UNAVAILABLE __OS_AVAILABILITY(swift,unavailable)
461 #define __SWIFT_UNAVAILABLE_MSG(_msg) __OS_AVAILABILITY_MSG(swift,unavailable,_msg)
462 #endif
463#endif
464
465#ifndef __SWIFT_UNAVAILABLE
466 #define __SWIFT_UNAVAILABLE
467#endif
468
469#ifndef __SWIFT_UNAVAILABLE_MSG
470 #define __SWIFT_UNAVAILABLE_MSG(_msg)
471#endif
472
473/*
474 Macros for defining which versions/platform a given symbol can be used.
475
476 @see http://clang.llvm.org/docs/AttributeReference.html#availability
477
478 * Note that these macros are only compatible with clang compilers that
479 * support the following target selection options:
480 *
481 * -mmacosx-version-min
482 * -miphoneos-version-min
483 * -mwatchos-version-min
484 * -mtvos-version-min
485 */
486
487#if defined(__has_feature) && defined(__has_attribute)
488 #if __has_attribute(availability)
489
490 /*
491 * API Introductions
492 *
493 * Use to specify the release that a particular API became available.
494 *
495 * Platform names:
496 * macos, ios, tvos, watchos
497 *
498 * Examples:
499 * __API_AVAILABLE(macos(10.10))
500 * __API_AVAILABLE(macos(10.9), ios(10.0))
501 * __API_AVAILABLE(macos(10.4), ios(8.0), watchos(2.0), tvos(10.0))
502 * __API_AVAILABLE(driverkit(19.0))
503 */
504 #define __API_AVAILABLE(...) __API_AVAILABLE_GET_MACRO(__VA_ARGS__,__API_AVAILABLE7, __API_AVAILABLE6, __API_AVAILABLE5, __API_AVAILABLE4, __API_AVAILABLE3, __API_AVAILABLE2, __API_AVAILABLE1, 0)(__VA_ARGS__)
505
506 #define __API_AVAILABLE_BEGIN(...) _Pragma("clang attribute push") __API_AVAILABLE_BEGIN_GET_MACRO(__VA_ARGS__,__API_AVAILABLE_BEGIN7, __API_AVAILABLE_BEGIN6, __API_AVAILABLE_BEGIN5, __API_AVAILABLE_BEGIN4, __API_AVAILABLE_BEGIN3, __API_AVAILABLE_BEGIN2, __API_AVAILABLE_BEGIN1, 0)(__VA_ARGS__)
507 #define __API_AVAILABLE_END _Pragma("clang attribute pop")
508
509 /*
510 * API Deprecations
511 *
512 * Use to specify the release that a particular API became unavailable.
513 *
514 * Platform names:
515 * macos, ios, tvos, watchos
516 *
517 * Examples:
518 *
519 * __API_DEPRECATED("No longer supported", macos(10.4, 10.8))
520 * __API_DEPRECATED("No longer supported", macos(10.4, 10.8), ios(2.0, 3.0), watchos(2.0, 3.0), tvos(9.0, 10.0))
521 *
522 * __API_DEPRECATED_WITH_REPLACEMENT("-setName:", tvos(10.0, 10.4), ios(9.0, 10.0))
523 * __API_DEPRECATED_WITH_REPLACEMENT("SomeClassName", macos(10.4, 10.6), watchos(2.0, 3.0))
524 */
525 #define __API_DEPRECATED(...) __API_DEPRECATED_MSG_GET_MACRO(__VA_ARGS__,__API_DEPRECATED_MSG8,__API_DEPRECATED_MSG7,__API_DEPRECATED_MSG6,__API_DEPRECATED_MSG5,__API_DEPRECATED_MSG4,__API_DEPRECATED_MSG3,__API_DEPRECATED_MSG2,__API_DEPRECATED_MSG1, 0)(__VA_ARGS__)
526 #define __API_DEPRECATED_WITH_REPLACEMENT(...) __API_DEPRECATED_REP_GET_MACRO(__VA_ARGS__,__API_DEPRECATED_REP8,__API_DEPRECATED_REP7,__API_DEPRECATED_REP6,__API_DEPRECATED_REP5,__API_DEPRECATED_REP4,__API_DEPRECATED_REP3,__API_DEPRECATED_REP2,__API_DEPRECATED_REP1, 0)(__VA_ARGS__)
527
528 #define __API_DEPRECATED_BEGIN(...) _Pragma("clang attribute push") __API_DEPRECATED_BEGIN_MSG_GET_MACRO(__VA_ARGS__,__API_DEPRECATED_BEGIN_MSG8,__API_DEPRECATED_BEGIN_MSG7, __API_DEPRECATED_BEGIN_MSG6, __API_DEPRECATED_BEGIN_MSG5, __API_DEPRECATED_BEGIN_MSG4, __API_DEPRECATED_BEGIN_MSG3, __API_DEPRECATED_BEGIN_MSG2, __API_DEPRECATED_BEGIN_MSG1, 0)(__VA_ARGS__)
529 #define __API_DEPRECATED_END _Pragma("clang attribute pop")
530
531 #define __API_DEPRECATED_WITH_REPLACEMENT_BEGIN(...) _Pragma("clang attribute push") __API_DEPRECATED_BEGIN_REP_GET_MACRO(__VA_ARGS__,__API_DEPRECATED_BEGIN_REP8,__API_DEPRECATED_BEGIN_REP7, __API_DEPRECATED_BEGIN_REP6, __API_DEPRECATED_BEGIN_REP5, __API_DEPRECATED_BEGIN_REP4, __API_DEPRECATED_BEGIN_REP3, __API_DEPRECATED_BEGIN_REP2, __API_DEPRECATED_BEGIN_REP1, 0)(__VA_ARGS__)
532 #define __API_DEPRECATED_WITH_REPLACEMENT_END _Pragma("clang attribute pop")
533
534 /*
535 * API Unavailability
536 * Use to specify that an API is unavailable for a particular platform.
537 *
538 * Example:
539 * __API_UNAVAILABLE(macos)
540 * __API_UNAVAILABLE(watchos, tvos)
541 */
542 #define __API_UNAVAILABLE(...) __API_UNAVAILABLE_GET_MACRO(__VA_ARGS__,__API_UNAVAILABLE7,__API_UNAVAILABLE6,__API_UNAVAILABLE5,__API_UNAVAILABLE4,__API_UNAVAILABLE3,__API_UNAVAILABLE2,__API_UNAVAILABLE1, 0)(__VA_ARGS__)
543
544 #define __API_UNAVAILABLE_BEGIN(...) _Pragma("clang attribute push") __API_UNAVAILABLE_BEGIN_GET_MACRO(__VA_ARGS__,__API_UNAVAILABLE_BEGIN7,__API_UNAVAILABLE_BEGIN6, __API_UNAVAILABLE_BEGIN5, __API_UNAVAILABLE_BEGIN4, __API_UNAVAILABLE_BEGIN3, __API_UNAVAILABLE_BEGIN2, __API_UNAVAILABLE_BEGIN1, 0)(__VA_ARGS__)
545 #define __API_UNAVAILABLE_END _Pragma("clang attribute pop")
546 #else
547
548 /*
549 * Evaluate to nothing for compilers that don't support availability.
550 */
551
552 #define __API_AVAILABLE(...)
553 #define __API_AVAILABLE_BEGIN(...)
554 #define __API_AVAILABLE_END
555 #define __API_DEPRECATED(...)
556 #define __API_DEPRECATED_WITH_REPLACEMENT(...)
557 #define __API_DEPRECATED_BEGIN(...)
558 #define __API_DEPRECATED_END
559 #define __API_DEPRECATED_WITH_REPLACEMENT_BEGIN(...)
560 #define __API_DEPRECATED_WITH_REPLACEMENT_END
561 #define __API_UNAVAILABLE(...)
562 #define __API_UNAVAILABLE_BEGIN(...)
563 #define __API_UNAVAILABLE_END
564 #endif /* __has_attribute(availability) */
565#else
566
567 /*
568 * Evaluate to nothing for compilers that don't support clang language extensions.
569 */
570
571 #define __API_AVAILABLE(...)
572 #define __API_AVAILABLE_BEGIN(...)
573 #define __API_AVAILABLE_END
574 #define __API_DEPRECATED(...)
575 #define __API_DEPRECATED_WITH_REPLACEMENT(...)
576 #define __API_DEPRECATED_BEGIN(...)
577 #define __API_DEPRECATED_END
578 #define __API_DEPRECATED_WITH_REPLACEMENT_BEGIN(...)
579 #define __API_DEPRECATED_WITH_REPLACEMENT_END
580 #define __API_UNAVAILABLE(...)
581 #define __API_UNAVAILABLE_BEGIN(...)
582 #define __API_UNAVAILABLE_END
583#endif /* #if defined(__has_feature) && defined(__has_attribute) */
584
585#if __has_include(<AvailabilityProhibitedInternal.h>)
586 #include <AvailabilityProhibitedInternal.h>
587#endif
588
589/*
590 * If SPI decorations have not been defined elsewhere, disable them.
591 */
592
593#ifndef __SPI_AVAILABLE
594 #define __SPI_AVAILABLE(...)
595#endif
596
597#ifndef __SPI_DEPRECATED
598 #define __SPI_DEPRECATED(...)
599#endif
600
601#ifndef __SPI_DEPRECATED_WITH_REPLACEMENT
602 #define __SPI_DEPRECATED_WITH_REPLACEMENT(...)
603#endif
604
605#endif /* __AVAILABILITY__ */
606
lib/libc/include/x86_64-macos-gnu/AvailabilityInternal.h created+4672
......@@ -0,0 +1,4672 @@
1/*
2 * Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24/*
25 File: AvailabilityInternal.h
26
27 Contains: implementation details of __OSX_AVAILABLE_* macros from <Availability.h>
28
29*/
30#ifndef __AVAILABILITY_INTERNAL__
31#define __AVAILABILITY_INTERNAL__
32
33#if __has_include(<AvailabilityInternalPrivate.h>)
34 #include <AvailabilityInternalPrivate.h>
35#endif
36
37#ifndef __MAC_OS_X_VERSION_MIN_REQUIRED
38 #ifdef __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
39 /* compiler for Mac OS X sets __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ */
40 #define __MAC_OS_X_VERSION_MIN_REQUIRED __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
41 #endif
42#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED*/
43
44#ifndef __IPHONE_OS_VERSION_MIN_REQUIRED
45 #ifdef __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
46 /* compiler sets __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ when -miphoneos-version-min is used */
47 #define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__
48 #endif
49#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED */
50
51#ifndef __TV_OS_VERSION_MIN_REQUIRED
52 #ifdef __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
53 /* compiler sets __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__ when -mtvos-version-min is used */
54 #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
55 #define __TV_OS_VERSION_MAX_ALLOWED __TVOS_13_0
56 /* for compatibility with existing code. New code should use platform specific checks */
57 #define __IPHONE_OS_VERSION_MIN_REQUIRED 90000
58 #endif
59#endif
60
61#ifndef __WATCH_OS_VERSION_MIN_REQUIRED
62 #ifdef __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
63 /* compiler sets __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ when -mwatchos-version-min is used */
64 #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
65 #define __WATCH_OS_VERSION_MAX_ALLOWED 60000
66 /* for compatibility with existing code. New code should use platform specific checks */
67 #define __IPHONE_OS_VERSION_MIN_REQUIRED 90000
68 #endif
69#endif
70
71#ifndef __BRIDGE_OS_VERSION_MIN_REQUIRED
72 #ifdef __ENVIRONMENT_BRIDGE_OS_VERSION_MIN_REQUIRED__
73
74 #define __BRIDGE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_BRIDGE_OS_VERSION_MIN_REQUIRED__
75 #define __BRIDGE_OS_VERSION_MAX_ALLOWED 20000
76 /* for compatibility with existing code. New code should use platform specific checks */
77 #define __IPHONE_OS_VERSION_MIN_REQUIRED 110000
78 #endif
79#endif
80
81#ifndef __DRIVERKIT_VERSION_MIN_REQUIRED
82 #ifdef __ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__
83 #define __DRIVERKIT_VERSION_MIN_REQUIRED __ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__
84 #endif
85#endif
86
87#ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
88 /* make sure a default max version is set */
89 #ifndef __MAC_OS_X_VERSION_MAX_ALLOWED
90 #define __MAC_OS_X_VERSION_MAX_ALLOWED __MAC_10_15
91 #endif
92#endif /* __MAC_OS_X_VERSION_MIN_REQUIRED */
93
94#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
95 /* make sure a default max version is set */
96 #ifndef __IPHONE_OS_VERSION_MAX_ALLOWED
97 #define __IPHONE_OS_VERSION_MAX_ALLOWED __IPHONE_13_0
98 #endif
99 /* make sure a valid min is set */
100 #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_2_0
101 #undef __IPHONE_OS_VERSION_MIN_REQUIRED
102 #define __IPHONE_OS_VERSION_MIN_REQUIRED __IPHONE_2_0
103 #endif
104#endif
105
106#define __AVAILABILITY_INTERNAL_DEPRECATED __attribute__((deprecated))
107#ifdef __has_feature
108 #if __has_feature(attribute_deprecated_with_message)
109 #define __AVAILABILITY_INTERNAL_DEPRECATED_MSG(_msg) __attribute__((deprecated(_msg)))
110 #else
111 #define __AVAILABILITY_INTERNAL_DEPRECATED_MSG(_msg) __attribute__((deprecated))
112 #endif
113#elif defined(__GNUC__) && ((__GNUC__ >= 5) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 5)))
114 #define __AVAILABILITY_INTERNAL_DEPRECATED_MSG(_msg) __attribute__((deprecated(_msg)))
115#else
116 #define __AVAILABILITY_INTERNAL_DEPRECATED_MSG(_msg) __attribute__((deprecated))
117#endif
118#define __AVAILABILITY_INTERNAL_UNAVAILABLE __attribute__((unavailable))
119#define __AVAILABILITY_INTERNAL_WEAK_IMPORT __attribute__((weak_import))
120#define __AVAILABILITY_INTERNAL_REGULAR
121
122#if defined(__has_builtin)
123 #if __has_builtin(__is_target_arch)
124 #if __has_builtin(__is_target_vendor)
125 #if __has_builtin(__is_target_os)
126 #if __has_builtin(__is_target_environment)
127 #if __has_builtin(__is_target_variant_os)
128 #if __has_builtin(__is_target_variant_environment)
129 #if (__is_target_arch(x86_64) && __is_target_vendor(apple) && ((__is_target_os(ios) && __is_target_environment(macabi)) || (__is_target_variant_os(ios) && __is_target_variant_environment(macabi))))
130 #define __ENABLE_LEGACY_IPHONE_AVAILABILITY 1
131 #define __ENABLE_LEGACY_MAC_AVAILABILITY 1
132 #endif /* # if __is_target_arch... */
133 #endif /* #if __has_builtin(__is_target_variant_environment) */
134 #endif /* #if __has_builtin(__is_target_variant_os) */
135 #endif /* #if __has_builtin(__is_target_environment) */
136 #endif /* #if __has_builtin(__is_target_os) */
137 #endif /* #if __has_builtin(__is_target_vendor) */
138 #endif /* #if __has_builtin(__is_target_arch) */
139#endif /* #if defined(__has_builtin) */
140
141#ifndef __ENABLE_LEGACY_IPHONE_AVAILABILITY
142 #ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
143 #define __ENABLE_LEGACY_IPHONE_AVAILABILITY 1
144 #elif defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)
145 #define __ENABLE_LEGACY_MAC_AVAILABILITY 1
146 #endif
147#endif /* __ENABLE_LEGACY_IPHONE_AVAILABILITY */
148
149#ifdef __ENABLE_LEGACY_IPHONE_AVAILABILITY
150 #if defined(__has_attribute) && defined(__has_feature)
151 #if __has_attribute(availability)
152 /* use better attributes if possible */
153 #define __AVAILABILITY_INTERNAL__IPHONE_2_0 __attribute__((availability(ios,introduced=2.0)))
154 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=2.0,deprecated=10.0)))
155 #if __has_feature(attribute_availability_with_message)
156 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.0,message=_msg)))
157 #else
158 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.0)))
159 #endif
160 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=2.0,deprecated=10.1)))
161 #if __has_feature(attribute_availability_with_message)
162 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.1,message=_msg)))
163 #else
164 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.1)))
165 #endif
166 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=2.0,deprecated=10.2)))
167 #if __has_feature(attribute_availability_with_message)
168 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.2,message=_msg)))
169 #else
170 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.2)))
171 #endif
172 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=2.0,deprecated=10.3)))
173 #if __has_feature(attribute_availability_with_message)
174 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.3,message=_msg)))
175 #else
176 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=10.3)))
177 #endif
178 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_11_0 __attribute__((availability(ios,introduced=2.0,deprecated=11.0)))
179 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_0 __attribute__((availability(ios,introduced=2.0,deprecated=2.0)))
180 #if __has_feature(attribute_availability_with_message)
181 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.0,message=_msg)))
182 #else
183 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.0)))
184 #endif
185 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_1 __attribute__((availability(ios,introduced=2.0,deprecated=2.1)))
186 #if __has_feature(attribute_availability_with_message)
187 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.1,message=_msg)))
188 #else
189 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.1)))
190 #endif
191 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_2 __attribute__((availability(ios,introduced=2.0,deprecated=2.2)))
192 #if __has_feature(attribute_availability_with_message)
193 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.2,message=_msg)))
194 #else
195 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=2.2)))
196 #endif
197 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_0 __attribute__((availability(ios,introduced=2.0,deprecated=3.0)))
198 #if __has_feature(attribute_availability_with_message)
199 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.0,message=_msg)))
200 #else
201 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.0)))
202 #endif
203 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_1 __attribute__((availability(ios,introduced=2.0,deprecated=3.1)))
204 #if __has_feature(attribute_availability_with_message)
205 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.1,message=_msg)))
206 #else
207 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.1)))
208 #endif
209 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=2.0,deprecated=3.2)))
210 #if __has_feature(attribute_availability_with_message)
211 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.2,message=_msg)))
212 #else
213 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=3.2)))
214 #endif
215 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=2.0,deprecated=4.0)))
216 #if __has_feature(attribute_availability_with_message)
217 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.0,message=_msg)))
218 #else
219 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.0)))
220 #endif
221 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=2.0,deprecated=4.1)))
222 #if __has_feature(attribute_availability_with_message)
223 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.1,message=_msg)))
224 #else
225 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.1)))
226 #endif
227 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=2.0,deprecated=4.2)))
228 #if __has_feature(attribute_availability_with_message)
229 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.2,message=_msg)))
230 #else
231 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.2)))
232 #endif
233 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=2.0,deprecated=4.3)))
234 #if __has_feature(attribute_availability_with_message)
235 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.3,message=_msg)))
236 #else
237 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=4.3)))
238 #endif
239 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=2.0,deprecated=5.0)))
240 #if __has_feature(attribute_availability_with_message)
241 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=5.0,message=_msg)))
242 #else
243 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=5.0)))
244 #endif
245 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=2.0,deprecated=5.1)))
246 #if __has_feature(attribute_availability_with_message)
247 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=5.1,message=_msg)))
248 #else
249 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=5.1)))
250 #endif
251 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=2.0,deprecated=6.0)))
252 #if __has_feature(attribute_availability_with_message)
253 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=6.0,message=_msg)))
254 #else
255 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=6.0)))
256 #endif
257 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=2.0,deprecated=6.1)))
258 #if __has_feature(attribute_availability_with_message)
259 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=6.1,message=_msg)))
260 #else
261 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=6.1)))
262 #endif
263 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=2.0,deprecated=7.0)))
264 #if __has_feature(attribute_availability_with_message)
265 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=7.0,message=_msg)))
266 #else
267 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=7.0)))
268 #endif
269 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=2.0,deprecated=7.1)))
270 #if __has_feature(attribute_availability_with_message)
271 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=7.1,message=_msg)))
272 #else
273 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=7.1)))
274 #endif
275 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=2.0,deprecated=8.0)))
276 #if __has_feature(attribute_availability_with_message)
277 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.0,message=_msg)))
278 #else
279 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.0)))
280 #endif
281 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=2.0,deprecated=8.1)))
282 #if __has_feature(attribute_availability_with_message)
283 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.1,message=_msg)))
284 #else
285 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.1)))
286 #endif
287 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=2.0,deprecated=8.2)))
288 #if __has_feature(attribute_availability_with_message)
289 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.2,message=_msg)))
290 #else
291 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.2)))
292 #endif
293 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=2.0,deprecated=8.3)))
294 #if __has_feature(attribute_availability_with_message)
295 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.3,message=_msg)))
296 #else
297 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.3)))
298 #endif
299 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=2.0,deprecated=8.4)))
300 #if __has_feature(attribute_availability_with_message)
301 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.4,message=_msg)))
302 #else
303 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=8.4)))
304 #endif
305 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=2.0,deprecated=9.0)))
306 #if __has_feature(attribute_availability_with_message)
307 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.0,message=_msg)))
308 #else
309 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.0)))
310 #endif
311 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=2.0,deprecated=9.1)))
312 #if __has_feature(attribute_availability_with_message)
313 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.1,message=_msg)))
314 #else
315 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.1)))
316 #endif
317 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=2.0,deprecated=9.2)))
318 #if __has_feature(attribute_availability_with_message)
319 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.2,message=_msg)))
320 #else
321 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.2)))
322 #endif
323 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=2.0,deprecated=9.3)))
324 #if __has_feature(attribute_availability_with_message)
325 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.3,message=_msg)))
326 #else
327 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.0,deprecated=9.3)))
328 #endif
329 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=2.0)))
330 #define __AVAILABILITY_INTERNAL__IPHONE_2_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=2.0)))
331 #define __AVAILABILITY_INTERNAL__IPHONE_2_1 __attribute__((availability(ios,introduced=2.1)))
332 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=2.1,deprecated=10.0)))
333 #if __has_feature(attribute_availability_with_message)
334 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.0,message=_msg)))
335 #else
336 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.0)))
337 #endif
338 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=2.1,deprecated=10.1)))
339 #if __has_feature(attribute_availability_with_message)
340 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.1,message=_msg)))
341 #else
342 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.1)))
343 #endif
344 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=2.1,deprecated=10.2)))
345 #if __has_feature(attribute_availability_with_message)
346 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.2,message=_msg)))
347 #else
348 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.2)))
349 #endif
350 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=2.1,deprecated=10.3)))
351 #if __has_feature(attribute_availability_with_message)
352 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.3,message=_msg)))
353 #else
354 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=10.3)))
355 #endif
356 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_1 __attribute__((availability(ios,introduced=2.1,deprecated=2.1)))
357 #if __has_feature(attribute_availability_with_message)
358 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=2.1,message=_msg)))
359 #else
360 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=2.1)))
361 #endif
362 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_2 __attribute__((availability(ios,introduced=2.1,deprecated=2.2)))
363 #if __has_feature(attribute_availability_with_message)
364 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=2.2,message=_msg)))
365 #else
366 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=2.2)))
367 #endif
368 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_0 __attribute__((availability(ios,introduced=2.1,deprecated=3.0)))
369 #if __has_feature(attribute_availability_with_message)
370 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.0,message=_msg)))
371 #else
372 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.0)))
373 #endif
374 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_1 __attribute__((availability(ios,introduced=2.1,deprecated=3.1)))
375 #if __has_feature(attribute_availability_with_message)
376 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.1,message=_msg)))
377 #else
378 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.1)))
379 #endif
380 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=2.1,deprecated=3.2)))
381 #if __has_feature(attribute_availability_with_message)
382 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.2,message=_msg)))
383 #else
384 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=3.2)))
385 #endif
386 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=2.1,deprecated=4.0)))
387 #if __has_feature(attribute_availability_with_message)
388 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.0,message=_msg)))
389 #else
390 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.0)))
391 #endif
392 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=2.1,deprecated=4.1)))
393 #if __has_feature(attribute_availability_with_message)
394 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.1,message=_msg)))
395 #else
396 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.1)))
397 #endif
398 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=2.1,deprecated=4.2)))
399 #if __has_feature(attribute_availability_with_message)
400 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.2,message=_msg)))
401 #else
402 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.2)))
403 #endif
404 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=2.1,deprecated=4.3)))
405 #if __has_feature(attribute_availability_with_message)
406 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.3,message=_msg)))
407 #else
408 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=4.3)))
409 #endif
410 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=2.1,deprecated=5.0)))
411 #if __has_feature(attribute_availability_with_message)
412 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=5.0,message=_msg)))
413 #else
414 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=5.0)))
415 #endif
416 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=2.1,deprecated=5.1)))
417 #if __has_feature(attribute_availability_with_message)
418 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=5.1,message=_msg)))
419 #else
420 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=5.1)))
421 #endif
422 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=2.1,deprecated=6.0)))
423 #if __has_feature(attribute_availability_with_message)
424 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=6.0,message=_msg)))
425 #else
426 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=6.0)))
427 #endif
428 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=2.1,deprecated=6.1)))
429 #if __has_feature(attribute_availability_with_message)
430 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=6.1,message=_msg)))
431 #else
432 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=6.1)))
433 #endif
434 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=2.1,deprecated=7.0)))
435 #if __has_feature(attribute_availability_with_message)
436 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=7.0,message=_msg)))
437 #else
438 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=7.0)))
439 #endif
440 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=2.1,deprecated=7.1)))
441 #if __has_feature(attribute_availability_with_message)
442 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=7.1,message=_msg)))
443 #else
444 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=7.1)))
445 #endif
446 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=2.1,deprecated=8.0)))
447 #if __has_feature(attribute_availability_with_message)
448 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.0,message=_msg)))
449 #else
450 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.0)))
451 #endif
452 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=2.1,deprecated=8.1)))
453 #if __has_feature(attribute_availability_with_message)
454 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.1,message=_msg)))
455 #else
456 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.1)))
457 #endif
458 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=2.1,deprecated=8.2)))
459 #if __has_feature(attribute_availability_with_message)
460 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.2,message=_msg)))
461 #else
462 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.2)))
463 #endif
464 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=2.1,deprecated=8.3)))
465 #if __has_feature(attribute_availability_with_message)
466 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.3,message=_msg)))
467 #else
468 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.3)))
469 #endif
470 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=2.1,deprecated=8.4)))
471 #if __has_feature(attribute_availability_with_message)
472 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.4,message=_msg)))
473 #else
474 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=8.4)))
475 #endif
476 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=2.1,deprecated=9.0)))
477 #if __has_feature(attribute_availability_with_message)
478 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.0,message=_msg)))
479 #else
480 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.0)))
481 #endif
482 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=2.1,deprecated=9.1)))
483 #if __has_feature(attribute_availability_with_message)
484 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.1,message=_msg)))
485 #else
486 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.1)))
487 #endif
488 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=2.1,deprecated=9.2)))
489 #if __has_feature(attribute_availability_with_message)
490 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.2,message=_msg)))
491 #else
492 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.2)))
493 #endif
494 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=2.1,deprecated=9.3)))
495 #if __has_feature(attribute_availability_with_message)
496 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.3,message=_msg)))
497 #else
498 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.1,deprecated=9.3)))
499 #endif
500 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=2.1)))
501 #define __AVAILABILITY_INTERNAL__IPHONE_2_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=2.1)))
502 #define __AVAILABILITY_INTERNAL__IPHONE_2_2 __attribute__((availability(ios,introduced=2.2)))
503 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=2.2,deprecated=10.0)))
504 #if __has_feature(attribute_availability_with_message)
505 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.0,message=_msg)))
506 #else
507 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.0)))
508 #endif
509 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=2.2,deprecated=10.1)))
510 #if __has_feature(attribute_availability_with_message)
511 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.1,message=_msg)))
512 #else
513 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.1)))
514 #endif
515 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=2.2,deprecated=10.2)))
516 #if __has_feature(attribute_availability_with_message)
517 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.2,message=_msg)))
518 #else
519 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.2)))
520 #endif
521 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=2.2,deprecated=10.3)))
522 #if __has_feature(attribute_availability_with_message)
523 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.3,message=_msg)))
524 #else
525 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=10.3)))
526 #endif
527 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_2_2 __attribute__((availability(ios,introduced=2.2,deprecated=2.2)))
528 #if __has_feature(attribute_availability_with_message)
529 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=2.2,message=_msg)))
530 #else
531 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_2_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=2.2)))
532 #endif
533 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_0 __attribute__((availability(ios,introduced=2.2,deprecated=3.0)))
534 #if __has_feature(attribute_availability_with_message)
535 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.0,message=_msg)))
536 #else
537 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.0)))
538 #endif
539 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_1 __attribute__((availability(ios,introduced=2.2,deprecated=3.1)))
540 #if __has_feature(attribute_availability_with_message)
541 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.1,message=_msg)))
542 #else
543 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.1)))
544 #endif
545 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=2.2,deprecated=3.2)))
546 #if __has_feature(attribute_availability_with_message)
547 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.2,message=_msg)))
548 #else
549 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=3.2)))
550 #endif
551 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=2.2,deprecated=4.0)))
552 #if __has_feature(attribute_availability_with_message)
553 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.0,message=_msg)))
554 #else
555 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.0)))
556 #endif
557 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=2.2,deprecated=4.1)))
558 #if __has_feature(attribute_availability_with_message)
559 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.1,message=_msg)))
560 #else
561 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.1)))
562 #endif
563 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=2.2,deprecated=4.2)))
564 #if __has_feature(attribute_availability_with_message)
565 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.2,message=_msg)))
566 #else
567 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.2)))
568 #endif
569 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=2.2,deprecated=4.3)))
570 #if __has_feature(attribute_availability_with_message)
571 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.3,message=_msg)))
572 #else
573 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=4.3)))
574 #endif
575 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=2.2,deprecated=5.0)))
576 #if __has_feature(attribute_availability_with_message)
577 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=5.0,message=_msg)))
578 #else
579 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=5.0)))
580 #endif
581 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=2.2,deprecated=5.1)))
582 #if __has_feature(attribute_availability_with_message)
583 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=5.1,message=_msg)))
584 #else
585 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=5.1)))
586 #endif
587 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=2.2,deprecated=6.0)))
588 #if __has_feature(attribute_availability_with_message)
589 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=6.0,message=_msg)))
590 #else
591 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=6.0)))
592 #endif
593 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=2.2,deprecated=6.1)))
594 #if __has_feature(attribute_availability_with_message)
595 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=6.1,message=_msg)))
596 #else
597 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=6.1)))
598 #endif
599 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=2.2,deprecated=7.0)))
600 #if __has_feature(attribute_availability_with_message)
601 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=7.0,message=_msg)))
602 #else
603 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=7.0)))
604 #endif
605 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=2.2,deprecated=7.1)))
606 #if __has_feature(attribute_availability_with_message)
607 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=7.1,message=_msg)))
608 #else
609 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=7.1)))
610 #endif
611 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=2.2,deprecated=8.0)))
612 #if __has_feature(attribute_availability_with_message)
613 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.0,message=_msg)))
614 #else
615 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.0)))
616 #endif
617 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=2.2,deprecated=8.1)))
618 #if __has_feature(attribute_availability_with_message)
619 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.1,message=_msg)))
620 #else
621 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.1)))
622 #endif
623 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=2.2,deprecated=8.2)))
624 #if __has_feature(attribute_availability_with_message)
625 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.2,message=_msg)))
626 #else
627 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.2)))
628 #endif
629 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=2.2,deprecated=8.3)))
630 #if __has_feature(attribute_availability_with_message)
631 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.3,message=_msg)))
632 #else
633 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.3)))
634 #endif
635 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=2.2,deprecated=8.4)))
636 #if __has_feature(attribute_availability_with_message)
637 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.4,message=_msg)))
638 #else
639 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=8.4)))
640 #endif
641 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=2.2,deprecated=9.0)))
642 #if __has_feature(attribute_availability_with_message)
643 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.0,message=_msg)))
644 #else
645 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.0)))
646 #endif
647 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=2.2,deprecated=9.1)))
648 #if __has_feature(attribute_availability_with_message)
649 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.1,message=_msg)))
650 #else
651 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.1)))
652 #endif
653 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=2.2,deprecated=9.2)))
654 #if __has_feature(attribute_availability_with_message)
655 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.2,message=_msg)))
656 #else
657 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.2)))
658 #endif
659 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=2.2,deprecated=9.3)))
660 #if __has_feature(attribute_availability_with_message)
661 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.3,message=_msg)))
662 #else
663 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=2.2,deprecated=9.3)))
664 #endif
665 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=2.2)))
666 #define __AVAILABILITY_INTERNAL__IPHONE_2_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=2.2)))
667 #define __AVAILABILITY_INTERNAL__IPHONE_3_0 __attribute__((availability(ios,introduced=3.0)))
668 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=3.0,deprecated=10.0)))
669 #if __has_feature(attribute_availability_with_message)
670 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.0,message=_msg)))
671 #else
672 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.0)))
673 #endif
674 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=3.0,deprecated=10.1)))
675 #if __has_feature(attribute_availability_with_message)
676 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.1,message=_msg)))
677 #else
678 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.1)))
679 #endif
680 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=3.0,deprecated=10.2)))
681 #if __has_feature(attribute_availability_with_message)
682 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.2,message=_msg)))
683 #else
684 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.2)))
685 #endif
686 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=3.0,deprecated=10.3)))
687 #if __has_feature(attribute_availability_with_message)
688 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.3,message=_msg)))
689 #else
690 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=10.3)))
691 #endif
692 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_0 __attribute__((availability(ios,introduced=3.0,deprecated=3.0)))
693 #if __has_feature(attribute_availability_with_message)
694 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.0,message=_msg)))
695 #else
696 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.0)))
697 #endif
698 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_1 __attribute__((availability(ios,introduced=3.0,deprecated=3.1)))
699 #if __has_feature(attribute_availability_with_message)
700 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.1,message=_msg)))
701 #else
702 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.1)))
703 #endif
704 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=3.0,deprecated=3.2)))
705 #if __has_feature(attribute_availability_with_message)
706 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.2,message=_msg)))
707 #else
708 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=3.2)))
709 #endif
710 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=3.0,deprecated=4.0)))
711 #if __has_feature(attribute_availability_with_message)
712 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.0,message=_msg)))
713 #else
714 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.0)))
715 #endif
716 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=3.0,deprecated=4.1)))
717 #if __has_feature(attribute_availability_with_message)
718 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.1,message=_msg)))
719 #else
720 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.1)))
721 #endif
722 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=3.0,deprecated=4.2)))
723 #if __has_feature(attribute_availability_with_message)
724 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.2,message=_msg)))
725 #else
726 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.2)))
727 #endif
728 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=3.0,deprecated=4.3)))
729 #if __has_feature(attribute_availability_with_message)
730 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.3,message=_msg)))
731 #else
732 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=4.3)))
733 #endif
734 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=3.0,deprecated=5.0)))
735 #if __has_feature(attribute_availability_with_message)
736 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=5.0,message=_msg)))
737 #else
738 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=5.0)))
739 #endif
740 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=3.0,deprecated=5.1)))
741 #if __has_feature(attribute_availability_with_message)
742 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=5.1,message=_msg)))
743 #else
744 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=5.1)))
745 #endif
746 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=3.0,deprecated=6.0)))
747 #if __has_feature(attribute_availability_with_message)
748 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=6.0,message=_msg)))
749 #else
750 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=6.0)))
751 #endif
752 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=3.0,deprecated=6.1)))
753 #if __has_feature(attribute_availability_with_message)
754 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=6.1,message=_msg)))
755 #else
756 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=6.1)))
757 #endif
758 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=3.0,deprecated=7.0)))
759 #if __has_feature(attribute_availability_with_message)
760 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=7.0,message=_msg)))
761 #else
762 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=7.0)))
763 #endif
764 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=3.0,deprecated=7.1)))
765 #if __has_feature(attribute_availability_with_message)
766 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=7.1,message=_msg)))
767 #else
768 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=7.1)))
769 #endif
770 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=3.0,deprecated=8.0)))
771 #if __has_feature(attribute_availability_with_message)
772 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.0,message=_msg)))
773 #else
774 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.0)))
775 #endif
776 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=3.0,deprecated=8.1)))
777 #if __has_feature(attribute_availability_with_message)
778 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.1,message=_msg)))
779 #else
780 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.1)))
781 #endif
782 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=3.0,deprecated=8.2)))
783 #if __has_feature(attribute_availability_with_message)
784 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.2,message=_msg)))
785 #else
786 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.2)))
787 #endif
788 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=3.0,deprecated=8.3)))
789 #if __has_feature(attribute_availability_with_message)
790 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.3,message=_msg)))
791 #else
792 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.3)))
793 #endif
794 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=3.0,deprecated=8.4)))
795 #if __has_feature(attribute_availability_with_message)
796 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.4,message=_msg)))
797 #else
798 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=8.4)))
799 #endif
800 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=3.0,deprecated=9.0)))
801 #if __has_feature(attribute_availability_with_message)
802 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.0,message=_msg)))
803 #else
804 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.0)))
805 #endif
806 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=3.0,deprecated=9.1)))
807 #if __has_feature(attribute_availability_with_message)
808 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.1,message=_msg)))
809 #else
810 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.1)))
811 #endif
812 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=3.0,deprecated=9.2)))
813 #if __has_feature(attribute_availability_with_message)
814 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.2,message=_msg)))
815 #else
816 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.2)))
817 #endif
818 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=3.0,deprecated=9.3)))
819 #if __has_feature(attribute_availability_with_message)
820 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.3,message=_msg)))
821 #else
822 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.0,deprecated=9.3)))
823 #endif
824 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=3.0)))
825 #define __AVAILABILITY_INTERNAL__IPHONE_3_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=3.0)))
826 #define __AVAILABILITY_INTERNAL__IPHONE_3_1 __attribute__((availability(ios,introduced=3.1)))
827 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=3.1,deprecated=10.0)))
828 #if __has_feature(attribute_availability_with_message)
829 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.0,message=_msg)))
830 #else
831 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.0)))
832 #endif
833 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=3.1,deprecated=10.1)))
834 #if __has_feature(attribute_availability_with_message)
835 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.1,message=_msg)))
836 #else
837 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.1)))
838 #endif
839 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=3.1,deprecated=10.2)))
840 #if __has_feature(attribute_availability_with_message)
841 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.2,message=_msg)))
842 #else
843 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.2)))
844 #endif
845 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=3.1,deprecated=10.3)))
846 #if __has_feature(attribute_availability_with_message)
847 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.3,message=_msg)))
848 #else
849 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=10.3)))
850 #endif
851 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_1 __attribute__((availability(ios,introduced=3.1,deprecated=3.1)))
852 #if __has_feature(attribute_availability_with_message)
853 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=3.1,message=_msg)))
854 #else
855 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=3.1)))
856 #endif
857 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=3.1,deprecated=3.2)))
858 #if __has_feature(attribute_availability_with_message)
859 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=3.2,message=_msg)))
860 #else
861 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=3.2)))
862 #endif
863 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=3.1,deprecated=4.0)))
864 #if __has_feature(attribute_availability_with_message)
865 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.0,message=_msg)))
866 #else
867 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.0)))
868 #endif
869 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=3.1,deprecated=4.1)))
870 #if __has_feature(attribute_availability_with_message)
871 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.1,message=_msg)))
872 #else
873 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.1)))
874 #endif
875 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=3.1,deprecated=4.2)))
876 #if __has_feature(attribute_availability_with_message)
877 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.2,message=_msg)))
878 #else
879 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.2)))
880 #endif
881 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=3.1,deprecated=4.3)))
882 #if __has_feature(attribute_availability_with_message)
883 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.3,message=_msg)))
884 #else
885 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=4.3)))
886 #endif
887 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=3.1,deprecated=5.0)))
888 #if __has_feature(attribute_availability_with_message)
889 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=5.0,message=_msg)))
890 #else
891 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=5.0)))
892 #endif
893 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=3.1,deprecated=5.1)))
894 #if __has_feature(attribute_availability_with_message)
895 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=5.1,message=_msg)))
896 #else
897 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=5.1)))
898 #endif
899 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=3.1,deprecated=6.0)))
900 #if __has_feature(attribute_availability_with_message)
901 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=6.0,message=_msg)))
902 #else
903 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=6.0)))
904 #endif
905 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=3.1,deprecated=6.1)))
906 #if __has_feature(attribute_availability_with_message)
907 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=6.1,message=_msg)))
908 #else
909 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=6.1)))
910 #endif
911 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=3.1,deprecated=7.0)))
912 #if __has_feature(attribute_availability_with_message)
913 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=7.0,message=_msg)))
914 #else
915 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=7.0)))
916 #endif
917 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=3.1,deprecated=7.1)))
918 #if __has_feature(attribute_availability_with_message)
919 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=7.1,message=_msg)))
920 #else
921 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=7.1)))
922 #endif
923 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=3.1,deprecated=8.0)))
924 #if __has_feature(attribute_availability_with_message)
925 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.0,message=_msg)))
926 #else
927 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.0)))
928 #endif
929 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=3.1,deprecated=8.1)))
930 #if __has_feature(attribute_availability_with_message)
931 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.1,message=_msg)))
932 #else
933 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.1)))
934 #endif
935 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=3.1,deprecated=8.2)))
936 #if __has_feature(attribute_availability_with_message)
937 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.2,message=_msg)))
938 #else
939 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.2)))
940 #endif
941 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=3.1,deprecated=8.3)))
942 #if __has_feature(attribute_availability_with_message)
943 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.3,message=_msg)))
944 #else
945 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.3)))
946 #endif
947 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=3.1,deprecated=8.4)))
948 #if __has_feature(attribute_availability_with_message)
949 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.4,message=_msg)))
950 #else
951 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=8.4)))
952 #endif
953 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=3.1,deprecated=9.0)))
954 #if __has_feature(attribute_availability_with_message)
955 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.0,message=_msg)))
956 #else
957 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.0)))
958 #endif
959 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=3.1,deprecated=9.1)))
960 #if __has_feature(attribute_availability_with_message)
961 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.1,message=_msg)))
962 #else
963 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.1)))
964 #endif
965 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=3.1,deprecated=9.2)))
966 #if __has_feature(attribute_availability_with_message)
967 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.2,message=_msg)))
968 #else
969 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.2)))
970 #endif
971 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=3.1,deprecated=9.3)))
972 #if __has_feature(attribute_availability_with_message)
973 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.3,message=_msg)))
974 #else
975 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.1,deprecated=9.3)))
976 #endif
977 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=3.1)))
978 #define __AVAILABILITY_INTERNAL__IPHONE_3_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=3.1)))
979 #define __AVAILABILITY_INTERNAL__IPHONE_3_2 __attribute__((availability(ios,introduced=3.2)))
980 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=3.2,deprecated=10.0)))
981 #if __has_feature(attribute_availability_with_message)
982 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.0,message=_msg)))
983 #else
984 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.0)))
985 #endif
986 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=3.2,deprecated=10.1)))
987 #if __has_feature(attribute_availability_with_message)
988 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.1,message=_msg)))
989 #else
990 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.1)))
991 #endif
992 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=3.2,deprecated=10.2)))
993 #if __has_feature(attribute_availability_with_message)
994 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.2,message=_msg)))
995 #else
996 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.2)))
997 #endif
998 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=3.2,deprecated=10.3)))
999 #if __has_feature(attribute_availability_with_message)
1000 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.3,message=_msg)))
1001 #else
1002 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=10.3)))
1003 #endif
1004 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_3_2 __attribute__((availability(ios,introduced=3.2,deprecated=3.2)))
1005 #if __has_feature(attribute_availability_with_message)
1006 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=3.2,message=_msg)))
1007 #else
1008 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_3_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=3.2)))
1009 #endif
1010 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=3.2,deprecated=4.0)))
1011 #if __has_feature(attribute_availability_with_message)
1012 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.0,message=_msg)))
1013 #else
1014 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.0)))
1015 #endif
1016 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=3.2,deprecated=4.1)))
1017 #if __has_feature(attribute_availability_with_message)
1018 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.1,message=_msg)))
1019 #else
1020 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.1)))
1021 #endif
1022 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=3.2,deprecated=4.2)))
1023 #if __has_feature(attribute_availability_with_message)
1024 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.2,message=_msg)))
1025 #else
1026 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.2)))
1027 #endif
1028 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=3.2,deprecated=4.3)))
1029 #if __has_feature(attribute_availability_with_message)
1030 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.3,message=_msg)))
1031 #else
1032 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=4.3)))
1033 #endif
1034 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=3.2,deprecated=5.0)))
1035 #if __has_feature(attribute_availability_with_message)
1036 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=5.0,message=_msg)))
1037 #else
1038 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=5.0)))
1039 #endif
1040 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=3.2,deprecated=5.1)))
1041 #if __has_feature(attribute_availability_with_message)
1042 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=5.1,message=_msg)))
1043 #else
1044 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=5.1)))
1045 #endif
1046 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=3.2,deprecated=6.0)))
1047 #if __has_feature(attribute_availability_with_message)
1048 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=6.0,message=_msg)))
1049 #else
1050 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=6.0)))
1051 #endif
1052 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=3.2,deprecated=6.1)))
1053 #if __has_feature(attribute_availability_with_message)
1054 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=6.1,message=_msg)))
1055 #else
1056 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=6.1)))
1057 #endif
1058 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=3.2,deprecated=7.0)))
1059 #if __has_feature(attribute_availability_with_message)
1060 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=7.0,message=_msg)))
1061 #else
1062 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=7.0)))
1063 #endif
1064 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=3.2,deprecated=7.1)))
1065 #if __has_feature(attribute_availability_with_message)
1066 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=7.1,message=_msg)))
1067 #else
1068 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=7.1)))
1069 #endif
1070 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=3.2,deprecated=8.0)))
1071 #if __has_feature(attribute_availability_with_message)
1072 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.0,message=_msg)))
1073 #else
1074 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.0)))
1075 #endif
1076 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=3.2,deprecated=8.1)))
1077 #if __has_feature(attribute_availability_with_message)
1078 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.1,message=_msg)))
1079 #else
1080 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.1)))
1081 #endif
1082 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=3.2,deprecated=8.2)))
1083 #if __has_feature(attribute_availability_with_message)
1084 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.2,message=_msg)))
1085 #else
1086 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.2)))
1087 #endif
1088 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=3.2,deprecated=8.3)))
1089 #if __has_feature(attribute_availability_with_message)
1090 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.3,message=_msg)))
1091 #else
1092 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.3)))
1093 #endif
1094 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=3.2,deprecated=8.4)))
1095 #if __has_feature(attribute_availability_with_message)
1096 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.4,message=_msg)))
1097 #else
1098 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=8.4)))
1099 #endif
1100 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=3.2,deprecated=9.0)))
1101 #if __has_feature(attribute_availability_with_message)
1102 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.0,message=_msg)))
1103 #else
1104 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.0)))
1105 #endif
1106 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=3.2,deprecated=9.1)))
1107 #if __has_feature(attribute_availability_with_message)
1108 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.1,message=_msg)))
1109 #else
1110 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.1)))
1111 #endif
1112 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=3.2,deprecated=9.2)))
1113 #if __has_feature(attribute_availability_with_message)
1114 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.2,message=_msg)))
1115 #else
1116 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.2)))
1117 #endif
1118 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=3.2,deprecated=9.3)))
1119 #if __has_feature(attribute_availability_with_message)
1120 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.3,message=_msg)))
1121 #else
1122 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=3.2,deprecated=9.3)))
1123 #endif
1124 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=3.2)))
1125 #define __AVAILABILITY_INTERNAL__IPHONE_3_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=3.2)))
1126 #define __AVAILABILITY_INTERNAL__IPHONE_4_0 __attribute__((availability(ios,introduced=4.0)))
1127 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=4.0,deprecated=10.0)))
1128 #if __has_feature(attribute_availability_with_message)
1129 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.0,message=_msg)))
1130 #else
1131 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.0)))
1132 #endif
1133 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=4.0,deprecated=10.1)))
1134 #if __has_feature(attribute_availability_with_message)
1135 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.1,message=_msg)))
1136 #else
1137 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.1)))
1138 #endif
1139 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=4.0,deprecated=10.2)))
1140 #if __has_feature(attribute_availability_with_message)
1141 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.2,message=_msg)))
1142 #else
1143 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.2)))
1144 #endif
1145 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=4.0,deprecated=10.3)))
1146 #if __has_feature(attribute_availability_with_message)
1147 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.3,message=_msg)))
1148 #else
1149 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=10.3)))
1150 #endif
1151 #if __has_feature(attribute_availability_with_message)
1152 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_12_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=12.0,message=_msg)))
1153 #else
1154 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_12_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=12.0)))
1155 #endif
1156 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_0 __attribute__((availability(ios,introduced=4.0,deprecated=4.0)))
1157 #if __has_feature(attribute_availability_with_message)
1158 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.0,message=_msg)))
1159 #else
1160 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.0)))
1161 #endif
1162 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=4.0,deprecated=4.1)))
1163 #if __has_feature(attribute_availability_with_message)
1164 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.1,message=_msg)))
1165 #else
1166 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.1)))
1167 #endif
1168 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=4.0,deprecated=4.2)))
1169 #if __has_feature(attribute_availability_with_message)
1170 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.2,message=_msg)))
1171 #else
1172 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.2)))
1173 #endif
1174 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=4.0,deprecated=4.3)))
1175 #if __has_feature(attribute_availability_with_message)
1176 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.3,message=_msg)))
1177 #else
1178 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.3)))
1179 #endif
1180 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=4.0,deprecated=5.0)))
1181 #if __has_feature(attribute_availability_with_message)
1182 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=5.0,message=_msg)))
1183 #else
1184 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=5.0)))
1185 #endif
1186 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=4.0,deprecated=5.1)))
1187 #if __has_feature(attribute_availability_with_message)
1188 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=5.1,message=_msg)))
1189 #else
1190 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=5.1)))
1191 #endif
1192 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=4.0,deprecated=6.0)))
1193 #if __has_feature(attribute_availability_with_message)
1194 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=6.0,message=_msg)))
1195 #else
1196 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=6.0)))
1197 #endif
1198 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=4.0,deprecated=6.1)))
1199 #if __has_feature(attribute_availability_with_message)
1200 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=6.1,message=_msg)))
1201 #else
1202 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=6.1)))
1203 #endif
1204 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=4.0,deprecated=7.0)))
1205 #if __has_feature(attribute_availability_with_message)
1206 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=7.0,message=_msg)))
1207 #else
1208 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=7.0)))
1209 #endif
1210 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=4.0,deprecated=7.1)))
1211 #if __has_feature(attribute_availability_with_message)
1212 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=7.1,message=_msg)))
1213 #else
1214 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=7.1)))
1215 #endif
1216 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=4.0,deprecated=8.0)))
1217 #if __has_feature(attribute_availability_with_message)
1218 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.0,message=_msg)))
1219 #else
1220 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.0)))
1221 #endif
1222 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=4.0,deprecated=8.1)))
1223 #if __has_feature(attribute_availability_with_message)
1224 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.1,message=_msg)))
1225 #else
1226 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.1)))
1227 #endif
1228 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=4.0,deprecated=8.2)))
1229 #if __has_feature(attribute_availability_with_message)
1230 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.2,message=_msg)))
1231 #else
1232 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.2)))
1233 #endif
1234 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=4.0,deprecated=8.3)))
1235 #if __has_feature(attribute_availability_with_message)
1236 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.3,message=_msg)))
1237 #else
1238 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.3)))
1239 #endif
1240 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=4.0,deprecated=8.4)))
1241 #if __has_feature(attribute_availability_with_message)
1242 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.4,message=_msg)))
1243 #else
1244 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=8.4)))
1245 #endif
1246 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=4.0,deprecated=9.0)))
1247 #if __has_feature(attribute_availability_with_message)
1248 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.0,message=_msg)))
1249 #else
1250 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.0)))
1251 #endif
1252 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=4.0,deprecated=9.1)))
1253 #if __has_feature(attribute_availability_with_message)
1254 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.1,message=_msg)))
1255 #else
1256 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.1)))
1257 #endif
1258 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=4.0,deprecated=9.2)))
1259 #if __has_feature(attribute_availability_with_message)
1260 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.2,message=_msg)))
1261 #else
1262 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.2)))
1263 #endif
1264 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=4.0,deprecated=9.3)))
1265 #if __has_feature(attribute_availability_with_message)
1266 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.3,message=_msg)))
1267 #else
1268 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=9.3)))
1269 #endif
1270 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=4.0)))
1271 #define __AVAILABILITY_INTERNAL__IPHONE_4_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=4.0)))
1272 #define __AVAILABILITY_INTERNAL__IPHONE_4_1 __attribute__((availability(ios,introduced=4.1)))
1273 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=4.1,deprecated=10.0)))
1274 #if __has_feature(attribute_availability_with_message)
1275 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.0,message=_msg)))
1276 #else
1277 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.0)))
1278 #endif
1279 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=4.1,deprecated=10.1)))
1280 #if __has_feature(attribute_availability_with_message)
1281 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.1,message=_msg)))
1282 #else
1283 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.1)))
1284 #endif
1285 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=4.1,deprecated=10.2)))
1286 #if __has_feature(attribute_availability_with_message)
1287 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.2,message=_msg)))
1288 #else
1289 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.2)))
1290 #endif
1291 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=4.1,deprecated=10.3)))
1292 #if __has_feature(attribute_availability_with_message)
1293 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.3,message=_msg)))
1294 #else
1295 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=10.3)))
1296 #endif
1297 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_1 __attribute__((availability(ios,introduced=4.1,deprecated=4.1)))
1298 #if __has_feature(attribute_availability_with_message)
1299 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.1,message=_msg)))
1300 #else
1301 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.1)))
1302 #endif
1303 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=4.1,deprecated=4.2)))
1304 #if __has_feature(attribute_availability_with_message)
1305 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.2,message=_msg)))
1306 #else
1307 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.2)))
1308 #endif
1309 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=4.1,deprecated=4.3)))
1310 #if __has_feature(attribute_availability_with_message)
1311 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.3,message=_msg)))
1312 #else
1313 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=4.3)))
1314 #endif
1315 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=4.1,deprecated=5.0)))
1316 #if __has_feature(attribute_availability_with_message)
1317 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=5.0,message=_msg)))
1318 #else
1319 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=5.0)))
1320 #endif
1321 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=4.1,deprecated=5.1)))
1322 #if __has_feature(attribute_availability_with_message)
1323 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=5.1,message=_msg)))
1324 #else
1325 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=5.1)))
1326 #endif
1327 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=4.1,deprecated=6.0)))
1328 #if __has_feature(attribute_availability_with_message)
1329 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=6.0,message=_msg)))
1330 #else
1331 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=6.0)))
1332 #endif
1333 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=4.1,deprecated=6.1)))
1334 #if __has_feature(attribute_availability_with_message)
1335 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=6.1,message=_msg)))
1336 #else
1337 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=6.1)))
1338 #endif
1339 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=4.1,deprecated=7.0)))
1340 #if __has_feature(attribute_availability_with_message)
1341 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=7.0,message=_msg)))
1342 #else
1343 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=7.0)))
1344 #endif
1345 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=4.1,deprecated=7.1)))
1346 #if __has_feature(attribute_availability_with_message)
1347 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=7.1,message=_msg)))
1348 #else
1349 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=7.1)))
1350 #endif
1351 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=4.1,deprecated=8.0)))
1352 #if __has_feature(attribute_availability_with_message)
1353 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.0,message=_msg)))
1354 #else
1355 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.0)))
1356 #endif
1357 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=4.1,deprecated=8.1)))
1358 #if __has_feature(attribute_availability_with_message)
1359 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.1,message=_msg)))
1360 #else
1361 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.1)))
1362 #endif
1363 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=4.1,deprecated=8.2)))
1364 #if __has_feature(attribute_availability_with_message)
1365 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.2,message=_msg)))
1366 #else
1367 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.2)))
1368 #endif
1369 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=4.1,deprecated=8.3)))
1370 #if __has_feature(attribute_availability_with_message)
1371 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.3,message=_msg)))
1372 #else
1373 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.3)))
1374 #endif
1375 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=4.1,deprecated=8.4)))
1376 #if __has_feature(attribute_availability_with_message)
1377 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.4,message=_msg)))
1378 #else
1379 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=8.4)))
1380 #endif
1381 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=4.1,deprecated=9.0)))
1382 #if __has_feature(attribute_availability_with_message)
1383 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.0,message=_msg)))
1384 #else
1385 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.0)))
1386 #endif
1387 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=4.1,deprecated=9.1)))
1388 #if __has_feature(attribute_availability_with_message)
1389 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.1,message=_msg)))
1390 #else
1391 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.1)))
1392 #endif
1393 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=4.1,deprecated=9.2)))
1394 #if __has_feature(attribute_availability_with_message)
1395 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.2,message=_msg)))
1396 #else
1397 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.2)))
1398 #endif
1399 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=4.1,deprecated=9.3)))
1400 #if __has_feature(attribute_availability_with_message)
1401 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.3,message=_msg)))
1402 #else
1403 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.1,deprecated=9.3)))
1404 #endif
1405 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=4.1)))
1406 #define __AVAILABILITY_INTERNAL__IPHONE_4_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=4.1)))
1407 #define __AVAILABILITY_INTERNAL__IPHONE_4_2 __attribute__((availability(ios,introduced=4.2)))
1408 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=4.2,deprecated=10.0)))
1409 #if __has_feature(attribute_availability_with_message)
1410 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.0,message=_msg)))
1411 #else
1412 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.0)))
1413 #endif
1414 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=4.2,deprecated=10.1)))
1415 #if __has_feature(attribute_availability_with_message)
1416 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.1,message=_msg)))
1417 #else
1418 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.1)))
1419 #endif
1420 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=4.2,deprecated=10.2)))
1421 #if __has_feature(attribute_availability_with_message)
1422 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.2,message=_msg)))
1423 #else
1424 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.2)))
1425 #endif
1426 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=4.2,deprecated=10.3)))
1427 #if __has_feature(attribute_availability_with_message)
1428 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.3,message=_msg)))
1429 #else
1430 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=10.3)))
1431 #endif
1432 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_2 __attribute__((availability(ios,introduced=4.2,deprecated=4.2)))
1433 #if __has_feature(attribute_availability_with_message)
1434 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=4.2,message=_msg)))
1435 #else
1436 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=4.2)))
1437 #endif
1438 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=4.2,deprecated=4.3)))
1439 #if __has_feature(attribute_availability_with_message)
1440 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=4.3,message=_msg)))
1441 #else
1442 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=4.3)))
1443 #endif
1444 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=4.2,deprecated=5.0)))
1445 #if __has_feature(attribute_availability_with_message)
1446 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=5.0,message=_msg)))
1447 #else
1448 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=5.0)))
1449 #endif
1450 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=4.2,deprecated=5.1)))
1451 #if __has_feature(attribute_availability_with_message)
1452 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=5.1,message=_msg)))
1453 #else
1454 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=5.1)))
1455 #endif
1456 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=4.2,deprecated=6.0)))
1457 #if __has_feature(attribute_availability_with_message)
1458 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=6.0,message=_msg)))
1459 #else
1460 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=6.0)))
1461 #endif
1462 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=4.2,deprecated=6.1)))
1463 #if __has_feature(attribute_availability_with_message)
1464 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=6.1,message=_msg)))
1465 #else
1466 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=6.1)))
1467 #endif
1468 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=4.2,deprecated=7.0)))
1469 #if __has_feature(attribute_availability_with_message)
1470 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=7.0,message=_msg)))
1471 #else
1472 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=7.0)))
1473 #endif
1474 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=4.2,deprecated=7.1)))
1475 #if __has_feature(attribute_availability_with_message)
1476 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=7.1,message=_msg)))
1477 #else
1478 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=7.1)))
1479 #endif
1480 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=4.2,deprecated=8.0)))
1481 #if __has_feature(attribute_availability_with_message)
1482 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.0,message=_msg)))
1483 #else
1484 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.0)))
1485 #endif
1486 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=4.2,deprecated=8.1)))
1487 #if __has_feature(attribute_availability_with_message)
1488 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.1,message=_msg)))
1489 #else
1490 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.1)))
1491 #endif
1492 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=4.2,deprecated=8.2)))
1493 #if __has_feature(attribute_availability_with_message)
1494 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.2,message=_msg)))
1495 #else
1496 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.2)))
1497 #endif
1498 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=4.2,deprecated=8.3)))
1499 #if __has_feature(attribute_availability_with_message)
1500 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.3,message=_msg)))
1501 #else
1502 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.3)))
1503 #endif
1504 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=4.2,deprecated=8.4)))
1505 #if __has_feature(attribute_availability_with_message)
1506 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.4,message=_msg)))
1507 #else
1508 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=8.4)))
1509 #endif
1510 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=4.2,deprecated=9.0)))
1511 #if __has_feature(attribute_availability_with_message)
1512 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.0,message=_msg)))
1513 #else
1514 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.0)))
1515 #endif
1516 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=4.2,deprecated=9.1)))
1517 #if __has_feature(attribute_availability_with_message)
1518 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.1,message=_msg)))
1519 #else
1520 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.1)))
1521 #endif
1522 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=4.2,deprecated=9.2)))
1523 #if __has_feature(attribute_availability_with_message)
1524 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.2,message=_msg)))
1525 #else
1526 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.2)))
1527 #endif
1528 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=4.2,deprecated=9.3)))
1529 #if __has_feature(attribute_availability_with_message)
1530 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.3,message=_msg)))
1531 #else
1532 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.2,deprecated=9.3)))
1533 #endif
1534 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=4.2)))
1535 #define __AVAILABILITY_INTERNAL__IPHONE_4_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=4.2)))
1536 #define __AVAILABILITY_INTERNAL__IPHONE_4_3 __attribute__((availability(ios,introduced=4.3)))
1537 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=4.3,deprecated=10.0)))
1538 #if __has_feature(attribute_availability_with_message)
1539 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.0,message=_msg)))
1540 #else
1541 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.0)))
1542 #endif
1543 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=4.3,deprecated=10.1)))
1544 #if __has_feature(attribute_availability_with_message)
1545 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.1,message=_msg)))
1546 #else
1547 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.1)))
1548 #endif
1549 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=4.3,deprecated=10.2)))
1550 #if __has_feature(attribute_availability_with_message)
1551 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.2,message=_msg)))
1552 #else
1553 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.2)))
1554 #endif
1555 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=4.3,deprecated=10.3)))
1556 #if __has_feature(attribute_availability_with_message)
1557 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.3,message=_msg)))
1558 #else
1559 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=10.3)))
1560 #endif
1561 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_4_3 __attribute__((availability(ios,introduced=4.3,deprecated=4.3)))
1562 #if __has_feature(attribute_availability_with_message)
1563 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=4.3,message=_msg)))
1564 #else
1565 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_4_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=4.3)))
1566 #endif
1567 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=4.3,deprecated=5.0)))
1568 #if __has_feature(attribute_availability_with_message)
1569 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=5.0,message=_msg)))
1570 #else
1571 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=5.0)))
1572 #endif
1573 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=4.3,deprecated=5.1)))
1574 #if __has_feature(attribute_availability_with_message)
1575 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=5.1,message=_msg)))
1576 #else
1577 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=5.1)))
1578 #endif
1579 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=4.3,deprecated=6.0)))
1580 #if __has_feature(attribute_availability_with_message)
1581 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=6.0,message=_msg)))
1582 #else
1583 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=6.0)))
1584 #endif
1585 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=4.3,deprecated=6.1)))
1586 #if __has_feature(attribute_availability_with_message)
1587 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=6.1,message=_msg)))
1588 #else
1589 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=6.1)))
1590 #endif
1591 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=4.3,deprecated=7.0)))
1592 #if __has_feature(attribute_availability_with_message)
1593 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=7.0,message=_msg)))
1594 #else
1595 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=7.0)))
1596 #endif
1597 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=4.3,deprecated=7.1)))
1598 #if __has_feature(attribute_availability_with_message)
1599 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=7.1,message=_msg)))
1600 #else
1601 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=7.1)))
1602 #endif
1603 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=4.3,deprecated=8.0)))
1604 #if __has_feature(attribute_availability_with_message)
1605 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.0,message=_msg)))
1606 #else
1607 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.0)))
1608 #endif
1609 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=4.3,deprecated=8.1)))
1610 #if __has_feature(attribute_availability_with_message)
1611 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.1,message=_msg)))
1612 #else
1613 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.1)))
1614 #endif
1615 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=4.3,deprecated=8.2)))
1616 #if __has_feature(attribute_availability_with_message)
1617 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.2,message=_msg)))
1618 #else
1619 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.2)))
1620 #endif
1621 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=4.3,deprecated=8.3)))
1622 #if __has_feature(attribute_availability_with_message)
1623 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.3,message=_msg)))
1624 #else
1625 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.3)))
1626 #endif
1627 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=4.3,deprecated=8.4)))
1628 #if __has_feature(attribute_availability_with_message)
1629 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.4,message=_msg)))
1630 #else
1631 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=8.4)))
1632 #endif
1633 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=4.3,deprecated=9.0)))
1634 #if __has_feature(attribute_availability_with_message)
1635 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.0,message=_msg)))
1636 #else
1637 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.0)))
1638 #endif
1639 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=4.3,deprecated=9.1)))
1640 #if __has_feature(attribute_availability_with_message)
1641 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.1,message=_msg)))
1642 #else
1643 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.1)))
1644 #endif
1645 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=4.3,deprecated=9.2)))
1646 #if __has_feature(attribute_availability_with_message)
1647 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.2,message=_msg)))
1648 #else
1649 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.2)))
1650 #endif
1651 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=4.3,deprecated=9.3)))
1652 #if __has_feature(attribute_availability_with_message)
1653 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.3,message=_msg)))
1654 #else
1655 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=4.3,deprecated=9.3)))
1656 #endif
1657 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_NA __attribute__((availability(ios,introduced=4.3)))
1658 #define __AVAILABILITY_INTERNAL__IPHONE_4_3_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=4.3)))
1659 #define __AVAILABILITY_INTERNAL__IPHONE_5_0 __attribute__((availability(ios,introduced=5.0)))
1660 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=5.0,deprecated=10.0)))
1661 #if __has_feature(attribute_availability_with_message)
1662 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.0,message=_msg)))
1663 #else
1664 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.0)))
1665 #endif
1666 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=5.0,deprecated=10.1)))
1667 #if __has_feature(attribute_availability_with_message)
1668 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.1,message=_msg)))
1669 #else
1670 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.1)))
1671 #endif
1672 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=5.0,deprecated=10.2)))
1673 #if __has_feature(attribute_availability_with_message)
1674 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.2,message=_msg)))
1675 #else
1676 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.2)))
1677 #endif
1678 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=5.0,deprecated=10.3)))
1679 #if __has_feature(attribute_availability_with_message)
1680 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.3,message=_msg)))
1681 #else
1682 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=10.3)))
1683 #endif
1684 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_11_0 __attribute__((availability(ios,introduced=5.0,deprecated=11.0)))
1685 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_0 __attribute__((availability(ios,introduced=5.0,deprecated=5.0)))
1686 #if __has_feature(attribute_availability_with_message)
1687 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=5.0,message=_msg)))
1688 #else
1689 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=5.0)))
1690 #endif
1691 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=5.0,deprecated=5.1)))
1692 #if __has_feature(attribute_availability_with_message)
1693 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=5.1,message=_msg)))
1694 #else
1695 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=5.1)))
1696 #endif
1697 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=5.0,deprecated=6.0)))
1698 #if __has_feature(attribute_availability_with_message)
1699 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=6.0,message=_msg)))
1700 #else
1701 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=6.0)))
1702 #endif
1703 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=5.0,deprecated=6.1)))
1704 #if __has_feature(attribute_availability_with_message)
1705 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=6.1,message=_msg)))
1706 #else
1707 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=6.1)))
1708 #endif
1709 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=5.0,deprecated=7.0)))
1710 #if __has_feature(attribute_availability_with_message)
1711 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=7.0,message=_msg)))
1712 #else
1713 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=7.0)))
1714 #endif
1715 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=5.0,deprecated=7.1)))
1716 #if __has_feature(attribute_availability_with_message)
1717 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=7.1,message=_msg)))
1718 #else
1719 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=7.1)))
1720 #endif
1721 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=5.0,deprecated=8.0)))
1722 #if __has_feature(attribute_availability_with_message)
1723 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.0,message=_msg)))
1724 #else
1725 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.0)))
1726 #endif
1727 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=5.0,deprecated=8.1)))
1728 #if __has_feature(attribute_availability_with_message)
1729 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.1,message=_msg)))
1730 #else
1731 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.1)))
1732 #endif
1733 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=5.0,deprecated=8.2)))
1734 #if __has_feature(attribute_availability_with_message)
1735 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.2,message=_msg)))
1736 #else
1737 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.2)))
1738 #endif
1739 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=5.0,deprecated=8.3)))
1740 #if __has_feature(attribute_availability_with_message)
1741 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.3,message=_msg)))
1742 #else
1743 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.3)))
1744 #endif
1745 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=5.0,deprecated=8.4)))
1746 #if __has_feature(attribute_availability_with_message)
1747 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.4,message=_msg)))
1748 #else
1749 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=8.4)))
1750 #endif
1751 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=5.0,deprecated=9.0)))
1752 #if __has_feature(attribute_availability_with_message)
1753 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.0,message=_msg)))
1754 #else
1755 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.0)))
1756 #endif
1757 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=5.0,deprecated=9.1)))
1758 #if __has_feature(attribute_availability_with_message)
1759 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.1,message=_msg)))
1760 #else
1761 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.1)))
1762 #endif
1763 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=5.0,deprecated=9.2)))
1764 #if __has_feature(attribute_availability_with_message)
1765 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.2,message=_msg)))
1766 #else
1767 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.2)))
1768 #endif
1769 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=5.0,deprecated=9.3)))
1770 #if __has_feature(attribute_availability_with_message)
1771 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.3,message=_msg)))
1772 #else
1773 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=5.0,deprecated=9.3)))
1774 #endif
1775 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=5.0)))
1776 #define __AVAILABILITY_INTERNAL__IPHONE_5_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=5.0)))
1777 #define __AVAILABILITY_INTERNAL__IPHONE_5_1 __attribute__((availability(ios,introduced=5.1)))
1778 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=5.1,deprecated=10.0)))
1779 #if __has_feature(attribute_availability_with_message)
1780 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.0,message=_msg)))
1781 #else
1782 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.0)))
1783 #endif
1784 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=5.1,deprecated=10.1)))
1785 #if __has_feature(attribute_availability_with_message)
1786 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.1,message=_msg)))
1787 #else
1788 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.1)))
1789 #endif
1790 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=5.1,deprecated=10.2)))
1791 #if __has_feature(attribute_availability_with_message)
1792 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.2,message=_msg)))
1793 #else
1794 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.2)))
1795 #endif
1796 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=5.1,deprecated=10.3)))
1797 #if __has_feature(attribute_availability_with_message)
1798 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.3,message=_msg)))
1799 #else
1800 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=10.3)))
1801 #endif
1802 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_5_1 __attribute__((availability(ios,introduced=5.1,deprecated=5.1)))
1803 #if __has_feature(attribute_availability_with_message)
1804 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=5.1,message=_msg)))
1805 #else
1806 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_5_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=5.1)))
1807 #endif
1808 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=5.1,deprecated=6.0)))
1809 #if __has_feature(attribute_availability_with_message)
1810 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=6.0,message=_msg)))
1811 #else
1812 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=6.0)))
1813 #endif
1814 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=5.1,deprecated=6.1)))
1815 #if __has_feature(attribute_availability_with_message)
1816 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=6.1,message=_msg)))
1817 #else
1818 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=6.1)))
1819 #endif
1820 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=5.1,deprecated=7.0)))
1821 #if __has_feature(attribute_availability_with_message)
1822 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=7.0,message=_msg)))
1823 #else
1824 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=7.0)))
1825 #endif
1826 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=5.1,deprecated=7.1)))
1827 #if __has_feature(attribute_availability_with_message)
1828 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=7.1,message=_msg)))
1829 #else
1830 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=7.1)))
1831 #endif
1832 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=5.1,deprecated=8.0)))
1833 #if __has_feature(attribute_availability_with_message)
1834 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.0,message=_msg)))
1835 #else
1836 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.0)))
1837 #endif
1838 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=5.1,deprecated=8.1)))
1839 #if __has_feature(attribute_availability_with_message)
1840 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.1,message=_msg)))
1841 #else
1842 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.1)))
1843 #endif
1844 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=5.1,deprecated=8.2)))
1845 #if __has_feature(attribute_availability_with_message)
1846 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.2,message=_msg)))
1847 #else
1848 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.2)))
1849 #endif
1850 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=5.1,deprecated=8.3)))
1851 #if __has_feature(attribute_availability_with_message)
1852 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.3,message=_msg)))
1853 #else
1854 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.3)))
1855 #endif
1856 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=5.1,deprecated=8.4)))
1857 #if __has_feature(attribute_availability_with_message)
1858 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.4,message=_msg)))
1859 #else
1860 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=8.4)))
1861 #endif
1862 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=5.1,deprecated=9.0)))
1863 #if __has_feature(attribute_availability_with_message)
1864 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.0,message=_msg)))
1865 #else
1866 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.0)))
1867 #endif
1868 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=5.1,deprecated=9.1)))
1869 #if __has_feature(attribute_availability_with_message)
1870 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.1,message=_msg)))
1871 #else
1872 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.1)))
1873 #endif
1874 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=5.1,deprecated=9.2)))
1875 #if __has_feature(attribute_availability_with_message)
1876 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.2,message=_msg)))
1877 #else
1878 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.2)))
1879 #endif
1880 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=5.1,deprecated=9.3)))
1881 #if __has_feature(attribute_availability_with_message)
1882 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.3,message=_msg)))
1883 #else
1884 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=5.1,deprecated=9.3)))
1885 #endif
1886 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=5.1)))
1887 #define __AVAILABILITY_INTERNAL__IPHONE_5_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=5.1)))
1888 #define __AVAILABILITY_INTERNAL__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0)))
1889 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=6.0,deprecated=10.0)))
1890 #if __has_feature(attribute_availability_with_message)
1891 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.0,message=_msg)))
1892 #else
1893 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.0)))
1894 #endif
1895 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=6.0,deprecated=10.1)))
1896 #if __has_feature(attribute_availability_with_message)
1897 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.1,message=_msg)))
1898 #else
1899 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.1)))
1900 #endif
1901 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=6.0,deprecated=10.2)))
1902 #if __has_feature(attribute_availability_with_message)
1903 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.2,message=_msg)))
1904 #else
1905 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.2)))
1906 #endif
1907 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=6.0,deprecated=10.3)))
1908 #if __has_feature(attribute_availability_with_message)
1909 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.3,message=_msg)))
1910 #else
1911 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=10.3)))
1912 #endif
1913 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0 __attribute__((availability(ios,introduced=6.0,deprecated=6.0)))
1914 #if __has_feature(attribute_availability_with_message)
1915 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.0,message=_msg)))
1916 #else
1917 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.0)))
1918 #endif
1919 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=6.0,deprecated=6.1)))
1920 #if __has_feature(attribute_availability_with_message)
1921 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.1,message=_msg)))
1922 #else
1923 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=6.1)))
1924 #endif
1925 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=6.0,deprecated=7.0)))
1926 #if __has_feature(attribute_availability_with_message)
1927 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=7.0,message=_msg)))
1928 #else
1929 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=7.0)))
1930 #endif
1931 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=6.0,deprecated=7.1)))
1932 #if __has_feature(attribute_availability_with_message)
1933 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=7.1,message=_msg)))
1934 #else
1935 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=7.1)))
1936 #endif
1937 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=6.0,deprecated=8.0)))
1938 #if __has_feature(attribute_availability_with_message)
1939 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.0,message=_msg)))
1940 #else
1941 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.0)))
1942 #endif
1943 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=6.0,deprecated=8.1)))
1944 #if __has_feature(attribute_availability_with_message)
1945 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.1,message=_msg)))
1946 #else
1947 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.1)))
1948 #endif
1949 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=6.0,deprecated=8.2)))
1950 #if __has_feature(attribute_availability_with_message)
1951 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.2,message=_msg)))
1952 #else
1953 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.2)))
1954 #endif
1955 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=6.0,deprecated=8.3)))
1956 #if __has_feature(attribute_availability_with_message)
1957 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.3,message=_msg)))
1958 #else
1959 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.3)))
1960 #endif
1961 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=6.0,deprecated=8.4)))
1962 #if __has_feature(attribute_availability_with_message)
1963 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.4,message=_msg)))
1964 #else
1965 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=8.4)))
1966 #endif
1967 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=6.0,deprecated=9.0)))
1968 #if __has_feature(attribute_availability_with_message)
1969 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.0,message=_msg)))
1970 #else
1971 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.0)))
1972 #endif
1973 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=6.0,deprecated=9.1)))
1974 #if __has_feature(attribute_availability_with_message)
1975 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.1,message=_msg)))
1976 #else
1977 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.1)))
1978 #endif
1979 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=6.0,deprecated=9.2)))
1980 #if __has_feature(attribute_availability_with_message)
1981 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.2,message=_msg)))
1982 #else
1983 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.2)))
1984 #endif
1985 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=6.0,deprecated=9.3)))
1986 #if __has_feature(attribute_availability_with_message)
1987 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.3,message=_msg)))
1988 #else
1989 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=6.0,deprecated=9.3)))
1990 #endif
1991 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=6.0)))
1992 #define __AVAILABILITY_INTERNAL__IPHONE_6_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=6.0)))
1993 #define __AVAILABILITY_INTERNAL__IPHONE_6_1 __attribute__((availability(ios,introduced=6.1)))
1994 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=6.1,deprecated=10.0)))
1995 #if __has_feature(attribute_availability_with_message)
1996 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.0,message=_msg)))
1997 #else
1998 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.0)))
1999 #endif
2000 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=6.1,deprecated=10.1)))
2001 #if __has_feature(attribute_availability_with_message)
2002 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.1,message=_msg)))
2003 #else
2004 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.1)))
2005 #endif
2006 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=6.1,deprecated=10.2)))
2007 #if __has_feature(attribute_availability_with_message)
2008 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.2,message=_msg)))
2009 #else
2010 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.2)))
2011 #endif
2012 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=6.1,deprecated=10.3)))
2013 #if __has_feature(attribute_availability_with_message)
2014 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.3,message=_msg)))
2015 #else
2016 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=10.3)))
2017 #endif
2018 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_6_1 __attribute__((availability(ios,introduced=6.1,deprecated=6.1)))
2019 #if __has_feature(attribute_availability_with_message)
2020 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=6.1,message=_msg)))
2021 #else
2022 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_6_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=6.1)))
2023 #endif
2024 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=6.1,deprecated=7.0)))
2025 #if __has_feature(attribute_availability_with_message)
2026 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=7.0,message=_msg)))
2027 #else
2028 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=7.0)))
2029 #endif
2030 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=6.1,deprecated=7.1)))
2031 #if __has_feature(attribute_availability_with_message)
2032 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=7.1,message=_msg)))
2033 #else
2034 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=7.1)))
2035 #endif
2036 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=6.1,deprecated=8.0)))
2037 #if __has_feature(attribute_availability_with_message)
2038 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.0,message=_msg)))
2039 #else
2040 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.0)))
2041 #endif
2042 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=6.1,deprecated=8.1)))
2043 #if __has_feature(attribute_availability_with_message)
2044 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.1,message=_msg)))
2045 #else
2046 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.1)))
2047 #endif
2048 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=6.1,deprecated=8.2)))
2049 #if __has_feature(attribute_availability_with_message)
2050 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.2,message=_msg)))
2051 #else
2052 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.2)))
2053 #endif
2054 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=6.1,deprecated=8.3)))
2055 #if __has_feature(attribute_availability_with_message)
2056 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.3,message=_msg)))
2057 #else
2058 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.3)))
2059 #endif
2060 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=6.1,deprecated=8.4)))
2061 #if __has_feature(attribute_availability_with_message)
2062 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.4,message=_msg)))
2063 #else
2064 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=8.4)))
2065 #endif
2066 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=6.1,deprecated=9.0)))
2067 #if __has_feature(attribute_availability_with_message)
2068 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.0,message=_msg)))
2069 #else
2070 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.0)))
2071 #endif
2072 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=6.1,deprecated=9.1)))
2073 #if __has_feature(attribute_availability_with_message)
2074 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.1,message=_msg)))
2075 #else
2076 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.1)))
2077 #endif
2078 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=6.1,deprecated=9.2)))
2079 #if __has_feature(attribute_availability_with_message)
2080 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.2,message=_msg)))
2081 #else
2082 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.2)))
2083 #endif
2084 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=6.1,deprecated=9.3)))
2085 #if __has_feature(attribute_availability_with_message)
2086 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.3,message=_msg)))
2087 #else
2088 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=6.1,deprecated=9.3)))
2089 #endif
2090 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=6.1)))
2091 #define __AVAILABILITY_INTERNAL__IPHONE_6_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=6.1)))
2092 #define __AVAILABILITY_INTERNAL__IPHONE_7_0 __attribute__((availability(ios,introduced=7.0)))
2093 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=7.0,deprecated=10.0)))
2094 #if __has_feature(attribute_availability_with_message)
2095 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.0,message=_msg)))
2096 #else
2097 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.0)))
2098 #endif
2099 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=7.0,deprecated=10.1)))
2100 #if __has_feature(attribute_availability_with_message)
2101 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.1,message=_msg)))
2102 #else
2103 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.1)))
2104 #endif
2105 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=7.0,deprecated=10.2)))
2106 #if __has_feature(attribute_availability_with_message)
2107 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.2,message=_msg)))
2108 #else
2109 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.2)))
2110 #endif
2111 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=7.0,deprecated=10.3)))
2112 #if __has_feature(attribute_availability_with_message)
2113 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.3,message=_msg)))
2114 #else
2115 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=10.3)))
2116 #endif
2117 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_11_0 __attribute__((availability(ios,introduced=7.0,deprecated=11.0)))
2118 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_11_3 __attribute__((availability(ios,introduced=7.0,deprecated=11.3)))
2119 #if __has_feature(attribute_availability_with_message)
2120 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_12_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=12.0,message=_msg)))
2121 #else
2122 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_12_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=12.0)))
2123 #endif
2124 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_0 __attribute__((availability(ios,introduced=7.0,deprecated=7.0)))
2125 #if __has_feature(attribute_availability_with_message)
2126 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=7.0,message=_msg)))
2127 #else
2128 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=7.0)))
2129 #endif
2130 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=7.0,deprecated=7.1)))
2131 #if __has_feature(attribute_availability_with_message)
2132 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=7.1,message=_msg)))
2133 #else
2134 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=7.1)))
2135 #endif
2136 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=7.0,deprecated=8.0)))
2137 #if __has_feature(attribute_availability_with_message)
2138 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.0,message=_msg)))
2139 #else
2140 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.0)))
2141 #endif
2142 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=7.0,deprecated=8.1)))
2143 #if __has_feature(attribute_availability_with_message)
2144 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.1,message=_msg)))
2145 #else
2146 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.1)))
2147 #endif
2148 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=7.0,deprecated=8.2)))
2149 #if __has_feature(attribute_availability_with_message)
2150 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.2,message=_msg)))
2151 #else
2152 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.2)))
2153 #endif
2154 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=7.0,deprecated=8.3)))
2155 #if __has_feature(attribute_availability_with_message)
2156 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.3,message=_msg)))
2157 #else
2158 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.3)))
2159 #endif
2160 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=7.0,deprecated=8.4)))
2161 #if __has_feature(attribute_availability_with_message)
2162 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.4,message=_msg)))
2163 #else
2164 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=8.4)))
2165 #endif
2166 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=7.0,deprecated=9.0)))
2167 #if __has_feature(attribute_availability_with_message)
2168 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.0,message=_msg)))
2169 #else
2170 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.0)))
2171 #endif
2172 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=7.0,deprecated=9.1)))
2173 #if __has_feature(attribute_availability_with_message)
2174 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.1,message=_msg)))
2175 #else
2176 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.1)))
2177 #endif
2178 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=7.0,deprecated=9.2)))
2179 #if __has_feature(attribute_availability_with_message)
2180 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.2,message=_msg)))
2181 #else
2182 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.2)))
2183 #endif
2184 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=7.0,deprecated=9.3)))
2185 #if __has_feature(attribute_availability_with_message)
2186 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.3,message=_msg)))
2187 #else
2188 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=7.0,deprecated=9.3)))
2189 #endif
2190 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=7.0)))
2191 #define __AVAILABILITY_INTERNAL__IPHONE_7_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=7.0)))
2192 #define __AVAILABILITY_INTERNAL__IPHONE_7_1 __attribute__((availability(ios,introduced=7.1)))
2193 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=7.1,deprecated=10.0)))
2194 #if __has_feature(attribute_availability_with_message)
2195 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.0,message=_msg)))
2196 #else
2197 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.0)))
2198 #endif
2199 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=7.1,deprecated=10.1)))
2200 #if __has_feature(attribute_availability_with_message)
2201 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.1,message=_msg)))
2202 #else
2203 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.1)))
2204 #endif
2205 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=7.1,deprecated=10.2)))
2206 #if __has_feature(attribute_availability_with_message)
2207 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.2,message=_msg)))
2208 #else
2209 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.2)))
2210 #endif
2211 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=7.1,deprecated=10.3)))
2212 #if __has_feature(attribute_availability_with_message)
2213 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.3,message=_msg)))
2214 #else
2215 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=10.3)))
2216 #endif
2217 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_7_1 __attribute__((availability(ios,introduced=7.1,deprecated=7.1)))
2218 #if __has_feature(attribute_availability_with_message)
2219 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=7.1,message=_msg)))
2220 #else
2221 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_7_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=7.1)))
2222 #endif
2223 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=7.1,deprecated=8.0)))
2224 #if __has_feature(attribute_availability_with_message)
2225 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.0,message=_msg)))
2226 #else
2227 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.0)))
2228 #endif
2229 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=7.1,deprecated=8.1)))
2230 #if __has_feature(attribute_availability_with_message)
2231 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.1,message=_msg)))
2232 #else
2233 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.1)))
2234 #endif
2235 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=7.1,deprecated=8.2)))
2236 #if __has_feature(attribute_availability_with_message)
2237 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.2,message=_msg)))
2238 #else
2239 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.2)))
2240 #endif
2241 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=7.1,deprecated=8.3)))
2242 #if __has_feature(attribute_availability_with_message)
2243 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.3,message=_msg)))
2244 #else
2245 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.3)))
2246 #endif
2247 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=7.1,deprecated=8.4)))
2248 #if __has_feature(attribute_availability_with_message)
2249 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.4,message=_msg)))
2250 #else
2251 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=8.4)))
2252 #endif
2253 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=7.1,deprecated=9.0)))
2254 #if __has_feature(attribute_availability_with_message)
2255 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.0,message=_msg)))
2256 #else
2257 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.0)))
2258 #endif
2259 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=7.1,deprecated=9.1)))
2260 #if __has_feature(attribute_availability_with_message)
2261 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.1,message=_msg)))
2262 #else
2263 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.1)))
2264 #endif
2265 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=7.1,deprecated=9.2)))
2266 #if __has_feature(attribute_availability_with_message)
2267 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.2,message=_msg)))
2268 #else
2269 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.2)))
2270 #endif
2271 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=7.1,deprecated=9.3)))
2272 #if __has_feature(attribute_availability_with_message)
2273 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.3,message=_msg)))
2274 #else
2275 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=7.1,deprecated=9.3)))
2276 #endif
2277 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=7.1)))
2278 #define __AVAILABILITY_INTERNAL__IPHONE_7_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=7.1)))
2279 #define __AVAILABILITY_INTERNAL__IPHONE_8_0 __attribute__((availability(ios,introduced=8.0)))
2280 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=8.0,deprecated=10.0)))
2281 #if __has_feature(attribute_availability_with_message)
2282 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.0,message=_msg)))
2283 #else
2284 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.0)))
2285 #endif
2286 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=8.0,deprecated=10.1)))
2287 #if __has_feature(attribute_availability_with_message)
2288 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.1,message=_msg)))
2289 #else
2290 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.1)))
2291 #endif
2292 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=8.0,deprecated=10.2)))
2293 #if __has_feature(attribute_availability_with_message)
2294 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.2,message=_msg)))
2295 #else
2296 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.2)))
2297 #endif
2298 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=8.0,deprecated=10.3)))
2299 #if __has_feature(attribute_availability_with_message)
2300 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.3,message=_msg)))
2301 #else
2302 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=10.3)))
2303 #endif
2304 #if __has_feature(attribute_availability_with_message)
2305 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_11_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=11,message=_msg)))
2306 #else
2307 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_11_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=11)))
2308 #endif
2309 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_11_3 __attribute__((availability(ios,introduced=8.0,deprecated=11.3)))
2310 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_12_0 __attribute__((availability(ios,introduced=8.0,deprecated=12.0)))
2311 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_0 __attribute__((availability(ios,introduced=8.0,deprecated=8.0)))
2312 #if __has_feature(attribute_availability_with_message)
2313 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.0,message=_msg)))
2314 #else
2315 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.0)))
2316 #endif
2317 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=8.0,deprecated=8.1)))
2318 #if __has_feature(attribute_availability_with_message)
2319 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.1,message=_msg)))
2320 #else
2321 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.1)))
2322 #endif
2323 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=8.0,deprecated=8.2)))
2324 #if __has_feature(attribute_availability_with_message)
2325 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.2,message=_msg)))
2326 #else
2327 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.2)))
2328 #endif
2329 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=8.0,deprecated=8.3)))
2330 #if __has_feature(attribute_availability_with_message)
2331 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.3,message=_msg)))
2332 #else
2333 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.3)))
2334 #endif
2335 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=8.0,deprecated=8.4)))
2336 #if __has_feature(attribute_availability_with_message)
2337 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.4,message=_msg)))
2338 #else
2339 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=8.4)))
2340 #endif
2341 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=8.0,deprecated=9.0)))
2342 #if __has_feature(attribute_availability_with_message)
2343 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.0,message=_msg)))
2344 #else
2345 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.0)))
2346 #endif
2347 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=8.0,deprecated=9.1)))
2348 #if __has_feature(attribute_availability_with_message)
2349 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.1,message=_msg)))
2350 #else
2351 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.1)))
2352 #endif
2353 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=8.0,deprecated=9.2)))
2354 #if __has_feature(attribute_availability_with_message)
2355 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.2,message=_msg)))
2356 #else
2357 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.2)))
2358 #endif
2359 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=8.0,deprecated=9.3)))
2360 #if __has_feature(attribute_availability_with_message)
2361 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.3,message=_msg)))
2362 #else
2363 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.0,deprecated=9.3)))
2364 #endif
2365 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=8.0)))
2366 #define __AVAILABILITY_INTERNAL__IPHONE_8_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=8.0)))
2367 #define __AVAILABILITY_INTERNAL__IPHONE_8_1 __attribute__((availability(ios,introduced=8.1)))
2368 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=8.1,deprecated=10.0)))
2369 #if __has_feature(attribute_availability_with_message)
2370 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.0,message=_msg)))
2371 #else
2372 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.0)))
2373 #endif
2374 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=8.1,deprecated=10.1)))
2375 #if __has_feature(attribute_availability_with_message)
2376 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.1,message=_msg)))
2377 #else
2378 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.1)))
2379 #endif
2380 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=8.1,deprecated=10.2)))
2381 #if __has_feature(attribute_availability_with_message)
2382 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.2,message=_msg)))
2383 #else
2384 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.2)))
2385 #endif
2386 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=8.1,deprecated=10.3)))
2387 #if __has_feature(attribute_availability_with_message)
2388 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.3,message=_msg)))
2389 #else
2390 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=10.3)))
2391 #endif
2392 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_1 __attribute__((availability(ios,introduced=8.1,deprecated=8.1)))
2393 #if __has_feature(attribute_availability_with_message)
2394 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.1,message=_msg)))
2395 #else
2396 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.1)))
2397 #endif
2398 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=8.1,deprecated=8.2)))
2399 #if __has_feature(attribute_availability_with_message)
2400 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.2,message=_msg)))
2401 #else
2402 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.2)))
2403 #endif
2404 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=8.1,deprecated=8.3)))
2405 #if __has_feature(attribute_availability_with_message)
2406 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.3,message=_msg)))
2407 #else
2408 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.3)))
2409 #endif
2410 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=8.1,deprecated=8.4)))
2411 #if __has_feature(attribute_availability_with_message)
2412 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.4,message=_msg)))
2413 #else
2414 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=8.4)))
2415 #endif
2416 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=8.1,deprecated=9.0)))
2417 #if __has_feature(attribute_availability_with_message)
2418 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.0,message=_msg)))
2419 #else
2420 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.0)))
2421 #endif
2422 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=8.1,deprecated=9.1)))
2423 #if __has_feature(attribute_availability_with_message)
2424 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.1,message=_msg)))
2425 #else
2426 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.1)))
2427 #endif
2428 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=8.1,deprecated=9.2)))
2429 #if __has_feature(attribute_availability_with_message)
2430 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.2,message=_msg)))
2431 #else
2432 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.2)))
2433 #endif
2434 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=8.1,deprecated=9.3)))
2435 #if __has_feature(attribute_availability_with_message)
2436 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.3,message=_msg)))
2437 #else
2438 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.1,deprecated=9.3)))
2439 #endif
2440 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=8.1)))
2441 #define __AVAILABILITY_INTERNAL__IPHONE_8_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=8.1)))
2442 #define __AVAILABILITY_INTERNAL__IPHONE_8_2 __attribute__((availability(ios,introduced=8.2)))
2443 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=8.2,deprecated=10.0)))
2444 #if __has_feature(attribute_availability_with_message)
2445 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.0,message=_msg)))
2446 #else
2447 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.0)))
2448 #endif
2449 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=8.2,deprecated=10.1)))
2450 #if __has_feature(attribute_availability_with_message)
2451 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.1,message=_msg)))
2452 #else
2453 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.1)))
2454 #endif
2455 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=8.2,deprecated=10.2)))
2456 #if __has_feature(attribute_availability_with_message)
2457 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.2,message=_msg)))
2458 #else
2459 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.2)))
2460 #endif
2461 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=8.2,deprecated=10.3)))
2462 #if __has_feature(attribute_availability_with_message)
2463 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.3,message=_msg)))
2464 #else
2465 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=10.3)))
2466 #endif
2467 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_2 __attribute__((availability(ios,introduced=8.2,deprecated=8.2)))
2468 #if __has_feature(attribute_availability_with_message)
2469 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.2,message=_msg)))
2470 #else
2471 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.2)))
2472 #endif
2473 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=8.2,deprecated=8.3)))
2474 #if __has_feature(attribute_availability_with_message)
2475 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.3,message=_msg)))
2476 #else
2477 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.3)))
2478 #endif
2479 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=8.2,deprecated=8.4)))
2480 #if __has_feature(attribute_availability_with_message)
2481 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.4,message=_msg)))
2482 #else
2483 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=8.4)))
2484 #endif
2485 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=8.2,deprecated=9.0)))
2486 #if __has_feature(attribute_availability_with_message)
2487 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.0,message=_msg)))
2488 #else
2489 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.0)))
2490 #endif
2491 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=8.2,deprecated=9.1)))
2492 #if __has_feature(attribute_availability_with_message)
2493 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.1,message=_msg)))
2494 #else
2495 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.1)))
2496 #endif
2497 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=8.2,deprecated=9.2)))
2498 #if __has_feature(attribute_availability_with_message)
2499 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.2,message=_msg)))
2500 #else
2501 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.2)))
2502 #endif
2503 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=8.2,deprecated=9.3)))
2504 #if __has_feature(attribute_availability_with_message)
2505 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.3,message=_msg)))
2506 #else
2507 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.2,deprecated=9.3)))
2508 #endif
2509 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=8.2)))
2510 #define __AVAILABILITY_INTERNAL__IPHONE_8_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=8.2)))
2511 #define __AVAILABILITY_INTERNAL__IPHONE_8_3 __attribute__((availability(ios,introduced=8.3)))
2512 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=8.3,deprecated=10.0)))
2513 #if __has_feature(attribute_availability_with_message)
2514 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.0,message=_msg)))
2515 #else
2516 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.0)))
2517 #endif
2518 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=8.3,deprecated=10.1)))
2519 #if __has_feature(attribute_availability_with_message)
2520 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.1,message=_msg)))
2521 #else
2522 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.1)))
2523 #endif
2524 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=8.3,deprecated=10.2)))
2525 #if __has_feature(attribute_availability_with_message)
2526 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.2,message=_msg)))
2527 #else
2528 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.2)))
2529 #endif
2530 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=8.3,deprecated=10.3)))
2531 #if __has_feature(attribute_availability_with_message)
2532 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.3,message=_msg)))
2533 #else
2534 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=10.3)))
2535 #endif
2536 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_3 __attribute__((availability(ios,introduced=8.3,deprecated=8.3)))
2537 #if __has_feature(attribute_availability_with_message)
2538 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=8.3,message=_msg)))
2539 #else
2540 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=8.3)))
2541 #endif
2542 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=8.3,deprecated=8.4)))
2543 #if __has_feature(attribute_availability_with_message)
2544 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=8.4,message=_msg)))
2545 #else
2546 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=8.4)))
2547 #endif
2548 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=8.3,deprecated=9.0)))
2549 #if __has_feature(attribute_availability_with_message)
2550 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.0,message=_msg)))
2551 #else
2552 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.0)))
2553 #endif
2554 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=8.3,deprecated=9.1)))
2555 #if __has_feature(attribute_availability_with_message)
2556 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.1,message=_msg)))
2557 #else
2558 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.1)))
2559 #endif
2560 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=8.3,deprecated=9.2)))
2561 #if __has_feature(attribute_availability_with_message)
2562 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.2,message=_msg)))
2563 #else
2564 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.2)))
2565 #endif
2566 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=8.3,deprecated=9.3)))
2567 #if __has_feature(attribute_availability_with_message)
2568 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.3,message=_msg)))
2569 #else
2570 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.3,deprecated=9.3)))
2571 #endif
2572 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_NA __attribute__((availability(ios,introduced=8.3)))
2573 #define __AVAILABILITY_INTERNAL__IPHONE_8_3_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=8.3)))
2574 #define __AVAILABILITY_INTERNAL__IPHONE_8_4 __attribute__((availability(ios,introduced=8.4)))
2575 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=8.4,deprecated=10.0)))
2576 #if __has_feature(attribute_availability_with_message)
2577 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.0,message=_msg)))
2578 #else
2579 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.0)))
2580 #endif
2581 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=8.4,deprecated=10.1)))
2582 #if __has_feature(attribute_availability_with_message)
2583 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.1,message=_msg)))
2584 #else
2585 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.1)))
2586 #endif
2587 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=8.4,deprecated=10.2)))
2588 #if __has_feature(attribute_availability_with_message)
2589 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.2,message=_msg)))
2590 #else
2591 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.2)))
2592 #endif
2593 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=8.4,deprecated=10.3)))
2594 #if __has_feature(attribute_availability_with_message)
2595 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.3,message=_msg)))
2596 #else
2597 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=10.3)))
2598 #endif
2599 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_8_4 __attribute__((availability(ios,introduced=8.4,deprecated=8.4)))
2600 #if __has_feature(attribute_availability_with_message)
2601 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=8.4,message=_msg)))
2602 #else
2603 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_8_4_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=8.4)))
2604 #endif
2605 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=8.4,deprecated=9.0)))
2606 #if __has_feature(attribute_availability_with_message)
2607 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.0,message=_msg)))
2608 #else
2609 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.0)))
2610 #endif
2611 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=8.4,deprecated=9.1)))
2612 #if __has_feature(attribute_availability_with_message)
2613 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.1,message=_msg)))
2614 #else
2615 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.1)))
2616 #endif
2617 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=8.4,deprecated=9.2)))
2618 #if __has_feature(attribute_availability_with_message)
2619 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.2,message=_msg)))
2620 #else
2621 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.2)))
2622 #endif
2623 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=8.4,deprecated=9.3)))
2624 #if __has_feature(attribute_availability_with_message)
2625 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.3,message=_msg)))
2626 #else
2627 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=8.4,deprecated=9.3)))
2628 #endif
2629 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_NA __attribute__((availability(ios,introduced=8.4)))
2630 #define __AVAILABILITY_INTERNAL__IPHONE_8_4_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=8.4)))
2631 #define __AVAILABILITY_INTERNAL__IPHONE_9_0 __attribute__((availability(ios,introduced=9.0)))
2632 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=9.0,deprecated=10.0)))
2633 #if __has_feature(attribute_availability_with_message)
2634 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.0,message=_msg)))
2635 #else
2636 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.0)))
2637 #endif
2638 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=9.0,deprecated=10.1)))
2639 #if __has_feature(attribute_availability_with_message)
2640 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.1,message=_msg)))
2641 #else
2642 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.1)))
2643 #endif
2644 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=9.0,deprecated=10.2)))
2645 #if __has_feature(attribute_availability_with_message)
2646 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.2,message=_msg)))
2647 #else
2648 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.2)))
2649 #endif
2650 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=9.0,deprecated=10.3)))
2651 #if __has_feature(attribute_availability_with_message)
2652 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.3,message=_msg)))
2653 #else
2654 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=10.3)))
2655 #endif
2656 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_0 __attribute__((availability(ios,introduced=9.0,deprecated=9.0)))
2657 #if __has_feature(attribute_availability_with_message)
2658 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.0,message=_msg)))
2659 #else
2660 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_0_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.0)))
2661 #endif
2662 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=9.0,deprecated=9.1)))
2663 #if __has_feature(attribute_availability_with_message)
2664 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.1,message=_msg)))
2665 #else
2666 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.1)))
2667 #endif
2668 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=9.0,deprecated=9.2)))
2669 #if __has_feature(attribute_availability_with_message)
2670 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.2,message=_msg)))
2671 #else
2672 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.2)))
2673 #endif
2674 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=9.0,deprecated=9.3)))
2675 #if __has_feature(attribute_availability_with_message)
2676 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.3,message=_msg)))
2677 #else
2678 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.0,deprecated=9.3)))
2679 #endif
2680 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=9.0)))
2681 #define __AVAILABILITY_INTERNAL__IPHONE_9_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=9.0)))
2682 #define __AVAILABILITY_INTERNAL__IPHONE_9_1 __attribute__((availability(ios,introduced=9.1)))
2683 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=9.1,deprecated=10.0)))
2684 #if __has_feature(attribute_availability_with_message)
2685 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.0,message=_msg)))
2686 #else
2687 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.0)))
2688 #endif
2689 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=9.1,deprecated=10.1)))
2690 #if __has_feature(attribute_availability_with_message)
2691 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.1,message=_msg)))
2692 #else
2693 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.1)))
2694 #endif
2695 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=9.1,deprecated=10.2)))
2696 #if __has_feature(attribute_availability_with_message)
2697 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.2,message=_msg)))
2698 #else
2699 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.2)))
2700 #endif
2701 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=9.1,deprecated=10.3)))
2702 #if __has_feature(attribute_availability_with_message)
2703 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.3,message=_msg)))
2704 #else
2705 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=10.3)))
2706 #endif
2707 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_1 __attribute__((availability(ios,introduced=9.1,deprecated=9.1)))
2708 #if __has_feature(attribute_availability_with_message)
2709 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.1,message=_msg)))
2710 #else
2711 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_1_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.1)))
2712 #endif
2713 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=9.1,deprecated=9.2)))
2714 #if __has_feature(attribute_availability_with_message)
2715 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.2,message=_msg)))
2716 #else
2717 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.2)))
2718 #endif
2719 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=9.1,deprecated=9.3)))
2720 #if __has_feature(attribute_availability_with_message)
2721 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.3,message=_msg)))
2722 #else
2723 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.1,deprecated=9.3)))
2724 #endif
2725 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=9.1)))
2726 #define __AVAILABILITY_INTERNAL__IPHONE_9_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=9.1)))
2727 #define __AVAILABILITY_INTERNAL__IPHONE_9_2 __attribute__((availability(ios,introduced=9.2)))
2728 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=9.2,deprecated=10.0)))
2729 #if __has_feature(attribute_availability_with_message)
2730 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.0,message=_msg)))
2731 #else
2732 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.0)))
2733 #endif
2734 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=9.2,deprecated=10.1)))
2735 #if __has_feature(attribute_availability_with_message)
2736 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.1,message=_msg)))
2737 #else
2738 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.1)))
2739 #endif
2740 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=9.2,deprecated=10.2)))
2741 #if __has_feature(attribute_availability_with_message)
2742 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.2,message=_msg)))
2743 #else
2744 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.2)))
2745 #endif
2746 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=9.2,deprecated=10.3)))
2747 #if __has_feature(attribute_availability_with_message)
2748 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.3,message=_msg)))
2749 #else
2750 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=10.3)))
2751 #endif
2752 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_2 __attribute__((availability(ios,introduced=9.2,deprecated=9.2)))
2753 #if __has_feature(attribute_availability_with_message)
2754 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=9.2,message=_msg)))
2755 #else
2756 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_2_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=9.2)))
2757 #endif
2758 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=9.2,deprecated=9.3)))
2759 #if __has_feature(attribute_availability_with_message)
2760 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=9.3,message=_msg)))
2761 #else
2762 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.2,deprecated=9.3)))
2763 #endif
2764 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=9.2)))
2765 #define __AVAILABILITY_INTERNAL__IPHONE_9_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=9.2)))
2766 #define __AVAILABILITY_INTERNAL__IPHONE_9_3 __attribute__((availability(ios,introduced=9.3)))
2767 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=9.3,deprecated=10.0)))
2768 #if __has_feature(attribute_availability_with_message)
2769 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.0,message=_msg)))
2770 #else
2771 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.0)))
2772 #endif
2773 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=9.3,deprecated=10.1)))
2774 #if __has_feature(attribute_availability_with_message)
2775 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.1,message=_msg)))
2776 #else
2777 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.1)))
2778 #endif
2779 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=9.3,deprecated=10.2)))
2780 #if __has_feature(attribute_availability_with_message)
2781 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.2,message=_msg)))
2782 #else
2783 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.2)))
2784 #endif
2785 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=9.3,deprecated=10.3)))
2786 #if __has_feature(attribute_availability_with_message)
2787 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.3,message=_msg)))
2788 #else
2789 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=10.3)))
2790 #endif
2791 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_9_3 __attribute__((availability(ios,introduced=9.3,deprecated=9.3)))
2792 #if __has_feature(attribute_availability_with_message)
2793 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=9.3,message=_msg)))
2794 #else
2795 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_9_3_MSG(_msg) __attribute__((availability(ios,introduced=9.3,deprecated=9.3)))
2796 #endif
2797 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_NA __attribute__((availability(ios,introduced=9.3)))
2798 #define __AVAILABILITY_INTERNAL__IPHONE_9_3_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=9.3)))
2799 #define __AVAILABILITY_INTERNAL__IPHONE_10_0 __attribute__((availability(ios,introduced=10.0)))
2800 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_0 __attribute__((availability(ios,introduced=10.0,deprecated=10.0)))
2801 #if __has_feature(attribute_availability_with_message)
2802 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.0,message=_msg)))
2803 #else
2804 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_0_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.0)))
2805 #endif
2806 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=10.0,deprecated=10.1)))
2807 #if __has_feature(attribute_availability_with_message)
2808 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.1,message=_msg)))
2809 #else
2810 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.1)))
2811 #endif
2812 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=10.0,deprecated=10.2)))
2813 #if __has_feature(attribute_availability_with_message)
2814 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.2,message=_msg)))
2815 #else
2816 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.2)))
2817 #endif
2818 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=10.0,deprecated=10.3)))
2819 #if __has_feature(attribute_availability_with_message)
2820 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.3,message=_msg)))
2821 #else
2822 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.0,deprecated=10.3)))
2823 #endif
2824 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_11_0 __attribute__((availability(ios,introduced=10.0,deprecated=11.0)))
2825 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_12_0 __attribute__((availability(ios,introduced=10.0,deprecated=12.0)))
2826 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_NA __attribute__((availability(ios,introduced=10.0)))
2827 #define __AVAILABILITY_INTERNAL__IPHONE_10_0_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=10.0)))
2828 #define __AVAILABILITY_INTERNAL__IPHONE_10_1 __attribute__((availability(ios,introduced=10.1)))
2829 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_1 __attribute__((availability(ios,introduced=10.1,deprecated=10.1)))
2830 #if __has_feature(attribute_availability_with_message)
2831 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.1,message=_msg)))
2832 #else
2833 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_1_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.1)))
2834 #endif
2835 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=10.1,deprecated=10.2)))
2836 #if __has_feature(attribute_availability_with_message)
2837 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.2,message=_msg)))
2838 #else
2839 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.2)))
2840 #endif
2841 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=10.1,deprecated=10.3)))
2842 #if __has_feature(attribute_availability_with_message)
2843 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.3,message=_msg)))
2844 #else
2845 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.1,deprecated=10.3)))
2846 #endif
2847 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_NA __attribute__((availability(ios,introduced=10.1)))
2848 #define __AVAILABILITY_INTERNAL__IPHONE_10_1_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=10.1)))
2849 #define __AVAILABILITY_INTERNAL__IPHONE_10_2 __attribute__((availability(ios,introduced=10.2)))
2850 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_2 __attribute__((availability(ios,introduced=10.2,deprecated=10.2)))
2851 #if __has_feature(attribute_availability_with_message)
2852 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.2,deprecated=10.2,message=_msg)))
2853 #else
2854 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_2_MSG(_msg) __attribute__((availability(ios,introduced=10.2,deprecated=10.2)))
2855 #endif
2856 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=10.2,deprecated=10.3)))
2857 #if __has_feature(attribute_availability_with_message)
2858 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.2,deprecated=10.3,message=_msg)))
2859 #else
2860 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.2,deprecated=10.3)))
2861 #endif
2862 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_NA __attribute__((availability(ios,introduced=10.2)))
2863 #define __AVAILABILITY_INTERNAL__IPHONE_10_2_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=10.2)))
2864 #define __AVAILABILITY_INTERNAL__IPHONE_10_3 __attribute__((availability(ios,introduced=10.3)))
2865 #define __AVAILABILITY_INTERNAL__IPHONE_10_3_DEP__IPHONE_10_3 __attribute__((availability(ios,introduced=10.3,deprecated=10.3)))
2866 #if __has_feature(attribute_availability_with_message)
2867 #define __AVAILABILITY_INTERNAL__IPHONE_10_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.3,deprecated=10.3,message=_msg)))
2868 #else
2869 #define __AVAILABILITY_INTERNAL__IPHONE_10_3_DEP__IPHONE_10_3_MSG(_msg) __attribute__((availability(ios,introduced=10.3,deprecated=10.3)))
2870 #endif
2871 #define __AVAILABILITY_INTERNAL__IPHONE_10_3_DEP__IPHONE_NA __attribute__((availability(ios,introduced=10.3)))
2872 #define __AVAILABILITY_INTERNAL__IPHONE_10_3_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,introduced=10.3)))
2873 #define __AVAILABILITY_INTERNAL__IPHONE_11 __attribute__((availability(ios,introduced=11)))
2874 #define __AVAILABILITY_INTERNAL__IPHONE_11_0 __attribute__((availability(ios,introduced=11.0)))
2875 #define __AVAILABILITY_INTERNAL__IPHONE_11_3 __attribute__((availability(ios,introduced=11.3)))
2876 #define __AVAILABILITY_INTERNAL__IPHONE_12_0 __attribute__((availability(ios,introduced=12.0)))
2877 #define __AVAILABILITY_INTERNAL__IPHONE_13_0 __attribute__((availability(ios,introduced=13.0)))
2878
2879 #define __AVAILABILITY_INTERNAL__IPHONE_NA __attribute__((availability(ios,unavailable)))
2880 #define __AVAILABILITY_INTERNAL__IPHONE_NA__IPHONE_NA __attribute__((availability(ios,unavailable)))
2881 #define __AVAILABILITY_INTERNAL__IPHONE_NA_DEP__IPHONE_NA __attribute__((availability(ios,unavailable)))
2882 #define __AVAILABILITY_INTERNAL__IPHONE_NA_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,unavailable)))
2883
2884 #if __has_builtin(__is_target_arch)
2885 #if __has_builtin(__is_target_vendor)
2886 #if __has_builtin(__is_target_os)
2887 #if __has_builtin(__is_target_environment)
2888 #if __has_builtin(__is_target_variant_os)
2889 #if __has_builtin(__is_target_variant_environment)
2890 #if (__is_target_arch(x86_64) && __is_target_vendor(apple) && __is_target_os(ios) && __is_target_environment(macabi))
2891 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION __attribute__((availability(ios,introduced=4.0)))
2892 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION __attribute__((availability(ios,unavailable)))
2893 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION_MSG(_msg) __attribute__((availability(ios,unavailable)))
2894 #endif
2895 #endif /* #if __has_builtin(__is_target_variant_environment) */
2896 #endif /* #if __has_builtin(__is_target_variant_os) */
2897 #endif /* #if __has_builtin(__is_target_environment) */
2898 #endif /* #if __has_builtin(__is_target_os) */
2899 #endif /* #if __has_builtin(__is_target_vendor) */
2900 #endif /* #if __has_builtin(__is_target_arch) */
2901
2902 #ifndef __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION
2903 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION __attribute__((availability(ios,introduced=4.0)))
2904 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION __attribute__((availability(ios,introduced=4.0,deprecated=4.0)))
2905 #if __has_feature(attribute_availability_with_message)
2906 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.0,message=_msg)))
2907 #else
2908 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION_MSG(_msg) __attribute__((availability(ios,introduced=4.0,deprecated=4.0)))
2909 #endif
2910 #endif /* __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION */
2911 #endif
2912 #endif
2913#endif
2914
2915#if __ENABLE_LEGACY_MAC_AVAILABILITY
2916 #if defined(__has_attribute) && defined(__has_feature)
2917 #if __has_attribute(availability)
2918 /* use better attributes if possible */
2919 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.1,deprecated=10.1)))
2920 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.1,deprecated=10.10)))
2921 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.2)))
2922 #if __has_feature(attribute_availability_with_message)
2923 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.2,message=_msg)))
2924 #else
2925 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.2)))
2926 #endif
2927 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.3)))
2928 #if __has_feature(attribute_availability_with_message)
2929 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.3,message=_msg)))
2930 #else
2931 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10.3)))
2932 #endif
2933 #if __has_feature(attribute_availability_with_message)
2934 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10,message=_msg)))
2935 #else
2936 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.10)))
2937 #endif
2938 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.1,deprecated=10.11)))
2939 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.2)))
2940 #if __has_feature(attribute_availability_with_message)
2941 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.2,message=_msg)))
2942 #else
2943 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.2)))
2944 #endif
2945 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.3)))
2946 #if __has_feature(attribute_availability_with_message)
2947 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.3,message=_msg)))
2948 #else
2949 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.3)))
2950 #endif
2951 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.4)))
2952 #if __has_feature(attribute_availability_with_message)
2953 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.4,message=_msg)))
2954 #else
2955 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11.4)))
2956 #endif
2957 #if __has_feature(attribute_availability_with_message)
2958 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11,message=_msg)))
2959 #else
2960 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.11)))
2961 #endif
2962 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.1,deprecated=10.12)))
2963 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.1)))
2964 #if __has_feature(attribute_availability_with_message)
2965 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.1,message=_msg)))
2966 #else
2967 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.1)))
2968 #endif
2969 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.2)))
2970 #if __has_feature(attribute_availability_with_message)
2971 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.2,message=_msg)))
2972 #else
2973 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.2)))
2974 #endif
2975 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.4)))
2976 #if __has_feature(attribute_availability_with_message)
2977 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.4,message=_msg)))
2978 #else
2979 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12.4)))
2980 #endif
2981 #if __has_feature(attribute_availability_with_message)
2982 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12,message=_msg)))
2983 #else
2984 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.12)))
2985 #endif
2986 #if __has_feature(attribute_availability_with_message)
2987 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.1,message=_msg)))
2988 #else
2989 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.1)))
2990 #endif
2991 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_2 __attribute__((availability(macosx,introduced=10.1,deprecated=10.2)))
2992 #if __has_feature(attribute_availability_with_message)
2993 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.2,message=_msg)))
2994 #else
2995 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.2)))
2996 #endif
2997 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_3 __attribute__((availability(macosx,introduced=10.1,deprecated=10.3)))
2998 #if __has_feature(attribute_availability_with_message)
2999 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.3,message=_msg)))
3000 #else
3001 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.3)))
3002 #endif
3003 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_4 __attribute__((availability(macosx,introduced=10.1,deprecated=10.4)))
3004 #if __has_feature(attribute_availability_with_message)
3005 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.4,message=_msg)))
3006 #else
3007 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.4)))
3008 #endif
3009 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.1,deprecated=10.5)))
3010 #if __has_feature(attribute_availability_with_message)
3011 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.5,message=_msg)))
3012 #else
3013 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.5)))
3014 #endif
3015 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.1,deprecated=10.6)))
3016 #if __has_feature(attribute_availability_with_message)
3017 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.6,message=_msg)))
3018 #else
3019 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.6)))
3020 #endif
3021 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.1,deprecated=10.7)))
3022 #if __has_feature(attribute_availability_with_message)
3023 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.7,message=_msg)))
3024 #else
3025 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.7)))
3026 #endif
3027 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.1,deprecated=10.8)))
3028 #if __has_feature(attribute_availability_with_message)
3029 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.8,message=_msg)))
3030 #else
3031 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.8)))
3032 #endif
3033 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.1,deprecated=10.9)))
3034 #if __has_feature(attribute_availability_with_message)
3035 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.9,message=_msg)))
3036 #else
3037 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.1,deprecated=10.9)))
3038 #endif
3039 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.1)))
3040 #define __AVAILABILITY_INTERNAL__MAC_10_1_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.1)))
3041 #define __AVAILABILITY_INTERNAL__MAC_10_2 __attribute__((availability(macosx,introduced=10.2)))
3042 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.2,deprecated=10.1)))
3043 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.2,deprecated=10.10)))
3044 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.2)))
3045 #if __has_feature(attribute_availability_with_message)
3046 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.2,message=_msg)))
3047 #else
3048 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.2)))
3049 #endif
3050 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.3)))
3051 #if __has_feature(attribute_availability_with_message)
3052 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.3,message=_msg)))
3053 #else
3054 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10.3)))
3055 #endif
3056 #if __has_feature(attribute_availability_with_message)
3057 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10,message=_msg)))
3058 #else
3059 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.10)))
3060 #endif
3061 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.2,deprecated=10.11)))
3062 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.2)))
3063 #if __has_feature(attribute_availability_with_message)
3064 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.2,message=_msg)))
3065 #else
3066 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.2)))
3067 #endif
3068 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.3)))
3069 #if __has_feature(attribute_availability_with_message)
3070 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.3,message=_msg)))
3071 #else
3072 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.3)))
3073 #endif
3074 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.4)))
3075 #if __has_feature(attribute_availability_with_message)
3076 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.4,message=_msg)))
3077 #else
3078 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11.4)))
3079 #endif
3080 #if __has_feature(attribute_availability_with_message)
3081 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11,message=_msg)))
3082 #else
3083 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.11)))
3084 #endif
3085 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.2,deprecated=10.12)))
3086 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.1)))
3087 #if __has_feature(attribute_availability_with_message)
3088 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.1,message=_msg)))
3089 #else
3090 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.1)))
3091 #endif
3092 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.2)))
3093 #if __has_feature(attribute_availability_with_message)
3094 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.2,message=_msg)))
3095 #else
3096 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.2)))
3097 #endif
3098 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.4)))
3099 #if __has_feature(attribute_availability_with_message)
3100 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.4,message=_msg)))
3101 #else
3102 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12.4)))
3103 #endif
3104 #if __has_feature(attribute_availability_with_message)
3105 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12,message=_msg)))
3106 #else
3107 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.12)))
3108 #endif
3109 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.2,deprecated=10.13)))
3110 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_2 __attribute__((availability(macosx,introduced=10.2,deprecated=10.2)))
3111 #if __has_feature(attribute_availability_with_message)
3112 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.2,message=_msg)))
3113 #else
3114 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.2)))
3115 #endif
3116 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_3 __attribute__((availability(macosx,introduced=10.2,deprecated=10.3)))
3117 #if __has_feature(attribute_availability_with_message)
3118 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.3,message=_msg)))
3119 #else
3120 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.3)))
3121 #endif
3122 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_4 __attribute__((availability(macosx,introduced=10.2,deprecated=10.4)))
3123 #if __has_feature(attribute_availability_with_message)
3124 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.4,message=_msg)))
3125 #else
3126 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.4)))
3127 #endif
3128 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.2,deprecated=10.5)))
3129 #if __has_feature(attribute_availability_with_message)
3130 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.5,message=_msg)))
3131 #else
3132 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.5)))
3133 #endif
3134 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.2,deprecated=10.6)))
3135 #if __has_feature(attribute_availability_with_message)
3136 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.6,message=_msg)))
3137 #else
3138 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.6)))
3139 #endif
3140 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.2,deprecated=10.7)))
3141 #if __has_feature(attribute_availability_with_message)
3142 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.7,message=_msg)))
3143 #else
3144 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.7)))
3145 #endif
3146 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.2,deprecated=10.8)))
3147 #if __has_feature(attribute_availability_with_message)
3148 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.8,message=_msg)))
3149 #else
3150 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.8)))
3151 #endif
3152 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.2,deprecated=10.9)))
3153 #if __has_feature(attribute_availability_with_message)
3154 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.9,message=_msg)))
3155 #else
3156 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.2,deprecated=10.9)))
3157 #endif
3158 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.2)))
3159 #define __AVAILABILITY_INTERNAL__MAC_10_2_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.2)))
3160 #define __AVAILABILITY_INTERNAL__MAC_10_3 __attribute__((availability(macosx,introduced=10.3)))
3161 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.3,deprecated=10.1)))
3162 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.3,deprecated=10.10)))
3163 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.2)))
3164 #if __has_feature(attribute_availability_with_message)
3165 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.2,message=_msg)))
3166 #else
3167 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.2)))
3168 #endif
3169 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.3)))
3170 #if __has_feature(attribute_availability_with_message)
3171 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.3,message=_msg)))
3172 #else
3173 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10.3)))
3174 #endif
3175 #if __has_feature(attribute_availability_with_message)
3176 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10,message=_msg)))
3177 #else
3178 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.10)))
3179 #endif
3180 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.3,deprecated=10.11)))
3181 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.2)))
3182 #if __has_feature(attribute_availability_with_message)
3183 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.2,message=_msg)))
3184 #else
3185 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.2)))
3186 #endif
3187 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.3)))
3188 #if __has_feature(attribute_availability_with_message)
3189 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.3,message=_msg)))
3190 #else
3191 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.3)))
3192 #endif
3193 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.4)))
3194 #if __has_feature(attribute_availability_with_message)
3195 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.4,message=_msg)))
3196 #else
3197 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11.4)))
3198 #endif
3199 #if __has_feature(attribute_availability_with_message)
3200 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11,message=_msg)))
3201 #else
3202 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.11)))
3203 #endif
3204 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.3,deprecated=10.12)))
3205 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.1)))
3206 #if __has_feature(attribute_availability_with_message)
3207 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.1,message=_msg)))
3208 #else
3209 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.1)))
3210 #endif
3211 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.2)))
3212 #if __has_feature(attribute_availability_with_message)
3213 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.2,message=_msg)))
3214 #else
3215 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.2)))
3216 #endif
3217 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.4)))
3218 #if __has_feature(attribute_availability_with_message)
3219 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.4,message=_msg)))
3220 #else
3221 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12.4)))
3222 #endif
3223 #if __has_feature(attribute_availability_with_message)
3224 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12,message=_msg)))
3225 #else
3226 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.12)))
3227 #endif
3228 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.3,deprecated=10.13)))
3229 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_3 __attribute__((availability(macosx,introduced=10.3,deprecated=10.3)))
3230 #if __has_feature(attribute_availability_with_message)
3231 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.3,message=_msg)))
3232 #else
3233 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.3)))
3234 #endif
3235 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_4 __attribute__((availability(macosx,introduced=10.3,deprecated=10.4)))
3236 #if __has_feature(attribute_availability_with_message)
3237 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.4,message=_msg)))
3238 #else
3239 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.4)))
3240 #endif
3241 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.3,deprecated=10.5)))
3242 #if __has_feature(attribute_availability_with_message)
3243 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.5,message=_msg)))
3244 #else
3245 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.5)))
3246 #endif
3247 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.3,deprecated=10.6)))
3248 #if __has_feature(attribute_availability_with_message)
3249 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.6,message=_msg)))
3250 #else
3251 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.6)))
3252 #endif
3253 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.3,deprecated=10.7)))
3254 #if __has_feature(attribute_availability_with_message)
3255 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.7,message=_msg)))
3256 #else
3257 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.7)))
3258 #endif
3259 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.3,deprecated=10.8)))
3260 #if __has_feature(attribute_availability_with_message)
3261 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.8,message=_msg)))
3262 #else
3263 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.8)))
3264 #endif
3265 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.3,deprecated=10.9)))
3266 #if __has_feature(attribute_availability_with_message)
3267 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.9,message=_msg)))
3268 #else
3269 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.3,deprecated=10.9)))
3270 #endif
3271 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.3)))
3272 #define __AVAILABILITY_INTERNAL__MAC_10_3_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.3)))
3273 #define __AVAILABILITY_INTERNAL__MAC_10_4 __attribute__((availability(macosx,introduced=10.4)))
3274 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.4,deprecated=10.1)))
3275 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.4,deprecated=10.10)))
3276 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.2)))
3277 #if __has_feature(attribute_availability_with_message)
3278 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.2,message=_msg)))
3279 #else
3280 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.2)))
3281 #endif
3282 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.3)))
3283 #if __has_feature(attribute_availability_with_message)
3284 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.3,message=_msg)))
3285 #else
3286 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10.3)))
3287 #endif
3288 #if __has_feature(attribute_availability_with_message)
3289 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10,message=_msg)))
3290 #else
3291 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.10)))
3292 #endif
3293 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.4,deprecated=10.11)))
3294 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.2)))
3295 #if __has_feature(attribute_availability_with_message)
3296 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.2,message=_msg)))
3297 #else
3298 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.2)))
3299 #endif
3300 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.3)))
3301 #if __has_feature(attribute_availability_with_message)
3302 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.3,message=_msg)))
3303 #else
3304 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.3)))
3305 #endif
3306 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.4)))
3307 #if __has_feature(attribute_availability_with_message)
3308 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.4,message=_msg)))
3309 #else
3310 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11.4)))
3311 #endif
3312 #if __has_feature(attribute_availability_with_message)
3313 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11,message=_msg)))
3314 #else
3315 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.11)))
3316 #endif
3317 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.4,deprecated=10.12)))
3318 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.1)))
3319 #if __has_feature(attribute_availability_with_message)
3320 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.1,message=_msg)))
3321 #else
3322 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.1)))
3323 #endif
3324 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.2)))
3325 #if __has_feature(attribute_availability_with_message)
3326 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.2,message=_msg)))
3327 #else
3328 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.2)))
3329 #endif
3330 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.4)))
3331 #if __has_feature(attribute_availability_with_message)
3332 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.4,message=_msg)))
3333 #else
3334 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12.4)))
3335 #endif
3336 #if __has_feature(attribute_availability_with_message)
3337 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12,message=_msg)))
3338 #else
3339 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.12)))
3340 #endif
3341 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.4,deprecated=10.13)))
3342 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_4 __attribute__((availability(macosx,introduced=10.4,deprecated=10.4)))
3343 #if __has_feature(attribute_availability_with_message)
3344 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.4,message=_msg)))
3345 #else
3346 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.4)))
3347 #endif
3348 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.4,deprecated=10.5)))
3349 #if __has_feature(attribute_availability_with_message)
3350 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.5,message=_msg)))
3351 #else
3352 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.5)))
3353 #endif
3354 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.4,deprecated=10.6)))
3355 #if __has_feature(attribute_availability_with_message)
3356 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.6,message=_msg)))
3357 #else
3358 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.6)))
3359 #endif
3360 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.4,deprecated=10.7)))
3361 #if __has_feature(attribute_availability_with_message)
3362 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.7,message=_msg)))
3363 #else
3364 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.7)))
3365 #endif
3366 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.4,deprecated=10.8)))
3367 #if __has_feature(attribute_availability_with_message)
3368 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.8,message=_msg)))
3369 #else
3370 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.8)))
3371 #endif
3372 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.4,deprecated=10.9)))
3373 #if __has_feature(attribute_availability_with_message)
3374 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.9,message=_msg)))
3375 #else
3376 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.4,deprecated=10.9)))
3377 #endif
3378 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.4)))
3379 #define __AVAILABILITY_INTERNAL__MAC_10_4_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.4)))
3380 #define __AVAILABILITY_INTERNAL__MAC_10_5 __attribute__((availability(macosx,introduced=10.5)))
3381 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEPRECATED__MAC_10_7 __attribute__((availability(macosx,introduced=10.5.DEPRECATED..MAC.10.7)))
3382 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.5,deprecated=10.1)))
3383 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.5,deprecated=10.10)))
3384 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.2)))
3385 #if __has_feature(attribute_availability_with_message)
3386 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.2,message=_msg)))
3387 #else
3388 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.2)))
3389 #endif
3390 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.3)))
3391 #if __has_feature(attribute_availability_with_message)
3392 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.3,message=_msg)))
3393 #else
3394 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10.3)))
3395 #endif
3396 #if __has_feature(attribute_availability_with_message)
3397 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10,message=_msg)))
3398 #else
3399 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.10)))
3400 #endif
3401 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.5,deprecated=10.11)))
3402 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.2)))
3403 #if __has_feature(attribute_availability_with_message)
3404 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.2,message=_msg)))
3405 #else
3406 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.2)))
3407 #endif
3408 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.3)))
3409 #if __has_feature(attribute_availability_with_message)
3410 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.3,message=_msg)))
3411 #else
3412 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.3)))
3413 #endif
3414 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.4)))
3415 #if __has_feature(attribute_availability_with_message)
3416 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.4,message=_msg)))
3417 #else
3418 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11.4)))
3419 #endif
3420 #if __has_feature(attribute_availability_with_message)
3421 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11,message=_msg)))
3422 #else
3423 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.11)))
3424 #endif
3425 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.5,deprecated=10.12)))
3426 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.1)))
3427 #if __has_feature(attribute_availability_with_message)
3428 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.1,message=_msg)))
3429 #else
3430 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.1)))
3431 #endif
3432 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.2)))
3433 #if __has_feature(attribute_availability_with_message)
3434 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.2,message=_msg)))
3435 #else
3436 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.2)))
3437 #endif
3438 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.4)))
3439 #if __has_feature(attribute_availability_with_message)
3440 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.4,message=_msg)))
3441 #else
3442 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12.4)))
3443 #endif
3444 #if __has_feature(attribute_availability_with_message)
3445 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12,message=_msg)))
3446 #else
3447 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.12)))
3448 #endif
3449 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.5,deprecated=10.5)))
3450 #if __has_feature(attribute_availability_with_message)
3451 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.5,message=_msg)))
3452 #else
3453 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.5)))
3454 #endif
3455 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.5,deprecated=10.6)))
3456 #if __has_feature(attribute_availability_with_message)
3457 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.6,message=_msg)))
3458 #else
3459 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.6)))
3460 #endif
3461 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.5,deprecated=10.7)))
3462 #if __has_feature(attribute_availability_with_message)
3463 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.7,message=_msg)))
3464 #else
3465 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.7)))
3466 #endif
3467 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.5,deprecated=10.8)))
3468 #if __has_feature(attribute_availability_with_message)
3469 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.8,message=_msg)))
3470 #else
3471 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.8)))
3472 #endif
3473 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.5,deprecated=10.9)))
3474 #if __has_feature(attribute_availability_with_message)
3475 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.9,message=_msg)))
3476 #else
3477 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.5,deprecated=10.9)))
3478 #endif
3479 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.5)))
3480 #define __AVAILABILITY_INTERNAL__MAC_10_5_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.5)))
3481 #define __AVAILABILITY_INTERNAL__MAC_10_6 __attribute__((availability(macosx,introduced=10.6)))
3482 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.6,deprecated=10.1)))
3483 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.6,deprecated=10.10)))
3484 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.2)))
3485 #if __has_feature(attribute_availability_with_message)
3486 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.2,message=_msg)))
3487 #else
3488 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.2)))
3489 #endif
3490 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.3)))
3491 #if __has_feature(attribute_availability_with_message)
3492 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.3,message=_msg)))
3493 #else
3494 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10.3)))
3495 #endif
3496 #if __has_feature(attribute_availability_with_message)
3497 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10,message=_msg)))
3498 #else
3499 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.10)))
3500 #endif
3501 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.6,deprecated=10.11)))
3502 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.2)))
3503 #if __has_feature(attribute_availability_with_message)
3504 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.2,message=_msg)))
3505 #else
3506 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.2)))
3507 #endif
3508 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.3)))
3509 #if __has_feature(attribute_availability_with_message)
3510 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.3,message=_msg)))
3511 #else
3512 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.3)))
3513 #endif
3514 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.4)))
3515 #if __has_feature(attribute_availability_with_message)
3516 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.4,message=_msg)))
3517 #else
3518 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11.4)))
3519 #endif
3520 #if __has_feature(attribute_availability_with_message)
3521 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11,message=_msg)))
3522 #else
3523 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.11)))
3524 #endif
3525 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.6,deprecated=10.12)))
3526 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.1)))
3527 #if __has_feature(attribute_availability_with_message)
3528 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.1,message=_msg)))
3529 #else
3530 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.1)))
3531 #endif
3532 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.2)))
3533 #if __has_feature(attribute_availability_with_message)
3534 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.2,message=_msg)))
3535 #else
3536 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.2)))
3537 #endif
3538 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.4)))
3539 #if __has_feature(attribute_availability_with_message)
3540 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.4,message=_msg)))
3541 #else
3542 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12.4)))
3543 #endif
3544 #if __has_feature(attribute_availability_with_message)
3545 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12,message=_msg)))
3546 #else
3547 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.12)))
3548 #endif
3549 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.6,deprecated=10.13)))
3550 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.6,deprecated=10.6)))
3551 #if __has_feature(attribute_availability_with_message)
3552 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.6,message=_msg)))
3553 #else
3554 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.6)))
3555 #endif
3556 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.6,deprecated=10.7)))
3557 #if __has_feature(attribute_availability_with_message)
3558 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.7,message=_msg)))
3559 #else
3560 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.7)))
3561 #endif
3562 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.6,deprecated=10.8)))
3563 #if __has_feature(attribute_availability_with_message)
3564 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.8,message=_msg)))
3565 #else
3566 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.8)))
3567 #endif
3568 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.6,deprecated=10.9)))
3569 #if __has_feature(attribute_availability_with_message)
3570 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.9,message=_msg)))
3571 #else
3572 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.6,deprecated=10.9)))
3573 #endif
3574 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.6)))
3575 #define __AVAILABILITY_INTERNAL__MAC_10_6_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.6)))
3576 #define __AVAILABILITY_INTERNAL__MAC_10_7 __attribute__((availability(macosx,introduced=10.7)))
3577 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.7,deprecated=10.1)))
3578 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.7,deprecated=10.10)))
3579 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.2)))
3580 #if __has_feature(attribute_availability_with_message)
3581 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.2,message=_msg)))
3582 #else
3583 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.2)))
3584 #endif
3585 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.3)))
3586 #if __has_feature(attribute_availability_with_message)
3587 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.3,message=_msg)))
3588 #else
3589 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10.3)))
3590 #endif
3591 #if __has_feature(attribute_availability_with_message)
3592 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10,message=_msg)))
3593 #else
3594 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.10)))
3595 #endif
3596 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.7,deprecated=10.11)))
3597 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.2)))
3598 #if __has_feature(attribute_availability_with_message)
3599 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.2,message=_msg)))
3600 #else
3601 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.2)))
3602 #endif
3603 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.3)))
3604 #if __has_feature(attribute_availability_with_message)
3605 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.3,message=_msg)))
3606 #else
3607 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.3)))
3608 #endif
3609 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.4)))
3610 #if __has_feature(attribute_availability_with_message)
3611 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.4,message=_msg)))
3612 #else
3613 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11.4)))
3614 #endif
3615 #if __has_feature(attribute_availability_with_message)
3616 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11,message=_msg)))
3617 #else
3618 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.11)))
3619 #endif
3620 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.7,deprecated=10.12)))
3621 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.1)))
3622 #if __has_feature(attribute_availability_with_message)
3623 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.1,message=_msg)))
3624 #else
3625 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.1)))
3626 #endif
3627 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.2)))
3628 #if __has_feature(attribute_availability_with_message)
3629 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.2,message=_msg)))
3630 #else
3631 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.2)))
3632 #endif
3633 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.4)))
3634 #if __has_feature(attribute_availability_with_message)
3635 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.4,message=_msg)))
3636 #else
3637 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12.4)))
3638 #endif
3639 #if __has_feature(attribute_availability_with_message)
3640 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12,message=_msg)))
3641 #else
3642 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.12)))
3643 #endif
3644 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_13_2 __attribute__((availability(macosx,introduced=10.7,deprecated=10.13.2)))
3645 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.7,deprecated=10.7)))
3646 #if __has_feature(attribute_availability_with_message)
3647 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.7,message=_msg)))
3648 #else
3649 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.7)))
3650 #endif
3651 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.7,deprecated=10.8)))
3652 #if __has_feature(attribute_availability_with_message)
3653 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.8,message=_msg)))
3654 #else
3655 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.8)))
3656 #endif
3657 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.7,deprecated=10.9)))
3658 #if __has_feature(attribute_availability_with_message)
3659 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.9,message=_msg)))
3660 #else
3661 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.7,deprecated=10.9)))
3662 #endif
3663 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.7)))
3664 #define __AVAILABILITY_INTERNAL__MAC_10_7_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.7)))
3665 #define __AVAILABILITY_INTERNAL__MAC_10_8 __attribute__((availability(macosx,introduced=10.8)))
3666 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.8,deprecated=10.1)))
3667 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.8,deprecated=10.10)))
3668 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.2)))
3669 #if __has_feature(attribute_availability_with_message)
3670 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.2,message=_msg)))
3671 #else
3672 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.2)))
3673 #endif
3674 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.3)))
3675 #if __has_feature(attribute_availability_with_message)
3676 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.3,message=_msg)))
3677 #else
3678 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10.3)))
3679 #endif
3680 #if __has_feature(attribute_availability_with_message)
3681 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10,message=_msg)))
3682 #else
3683 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.10)))
3684 #endif
3685 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.8,deprecated=10.11)))
3686 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.2)))
3687 #if __has_feature(attribute_availability_with_message)
3688 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.2,message=_msg)))
3689 #else
3690 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.2)))
3691 #endif
3692 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.3)))
3693 #if __has_feature(attribute_availability_with_message)
3694 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.3,message=_msg)))
3695 #else
3696 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.3)))
3697 #endif
3698 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.4)))
3699 #if __has_feature(attribute_availability_with_message)
3700 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.4,message=_msg)))
3701 #else
3702 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11.4)))
3703 #endif
3704 #if __has_feature(attribute_availability_with_message)
3705 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11,message=_msg)))
3706 #else
3707 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.11)))
3708 #endif
3709 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.8,deprecated=10.12)))
3710 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.1)))
3711 #if __has_feature(attribute_availability_with_message)
3712 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.1,message=_msg)))
3713 #else
3714 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.1)))
3715 #endif
3716 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.2)))
3717 #if __has_feature(attribute_availability_with_message)
3718 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.2,message=_msg)))
3719 #else
3720 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.2)))
3721 #endif
3722 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.4)))
3723 #if __has_feature(attribute_availability_with_message)
3724 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.4,message=_msg)))
3725 #else
3726 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12.4)))
3727 #endif
3728 #if __has_feature(attribute_availability_with_message)
3729 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12,message=_msg)))
3730 #else
3731 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.12)))
3732 #endif
3733 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.8,deprecated=10.13)))
3734 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.8,deprecated=10.8)))
3735 #if __has_feature(attribute_availability_with_message)
3736 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.8,message=_msg)))
3737 #else
3738 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.8)))
3739 #endif
3740 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.8,deprecated=10.9)))
3741 #if __has_feature(attribute_availability_with_message)
3742 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.9,message=_msg)))
3743 #else
3744 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.8,deprecated=10.9)))
3745 #endif
3746 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.8)))
3747 #define __AVAILABILITY_INTERNAL__MAC_10_8_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.8)))
3748 #define __AVAILABILITY_INTERNAL__MAC_10_9 __attribute__((availability(macosx,introduced=10.9)))
3749 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.9,deprecated=10.1)))
3750 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.9,deprecated=10.10)))
3751 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.2)))
3752 #if __has_feature(attribute_availability_with_message)
3753 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.2,message=_msg)))
3754 #else
3755 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.2)))
3756 #endif
3757 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.3)))
3758 #if __has_feature(attribute_availability_with_message)
3759 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.3,message=_msg)))
3760 #else
3761 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10.3)))
3762 #endif
3763 #if __has_feature(attribute_availability_with_message)
3764 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10,message=_msg)))
3765 #else
3766 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.10)))
3767 #endif
3768 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.9,deprecated=10.11)))
3769 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.2)))
3770 #if __has_feature(attribute_availability_with_message)
3771 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.2,message=_msg)))
3772 #else
3773 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.2)))
3774 #endif
3775 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.3)))
3776 #if __has_feature(attribute_availability_with_message)
3777 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.3,message=_msg)))
3778 #else
3779 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.3)))
3780 #endif
3781 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.4)))
3782 #if __has_feature(attribute_availability_with_message)
3783 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.4,message=_msg)))
3784 #else
3785 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11.4)))
3786 #endif
3787 #if __has_feature(attribute_availability_with_message)
3788 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11,message=_msg)))
3789 #else
3790 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.11)))
3791 #endif
3792 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.9,deprecated=10.12)))
3793 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.1)))
3794 #if __has_feature(attribute_availability_with_message)
3795 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.1,message=_msg)))
3796 #else
3797 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.1)))
3798 #endif
3799 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.2)))
3800 #if __has_feature(attribute_availability_with_message)
3801 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.2,message=_msg)))
3802 #else
3803 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.2)))
3804 #endif
3805 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.4)))
3806 #if __has_feature(attribute_availability_with_message)
3807 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.4,message=_msg)))
3808 #else
3809 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12.4)))
3810 #endif
3811 #if __has_feature(attribute_availability_with_message)
3812 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12,message=_msg)))
3813 #else
3814 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.12)))
3815 #endif
3816 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.9,deprecated=10.13)))
3817 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_14 __attribute__((availability(macosx,introduced=10.9,deprecated=10.14)))
3818 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.9,deprecated=10.9)))
3819 #if __has_feature(attribute_availability_with_message)
3820 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.9,message=_msg)))
3821 #else
3822 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.9,deprecated=10.9)))
3823 #endif
3824 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.9)))
3825 #define __AVAILABILITY_INTERNAL__MAC_10_9_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.9)))
3826 #define __AVAILABILITY_INTERNAL__MAC_10_0 __attribute__((availability(macosx,introduced=10.0)))
3827 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_0 __attribute__((availability(macosx,introduced=10.0,deprecated=10.0)))
3828 #if __has_feature(attribute_availability_with_message)
3829 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_0_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.0,message=_msg)))
3830 #else
3831 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_0_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.0)))
3832 #endif
3833 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.0,deprecated=10.1)))
3834 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.0,deprecated=10.10)))
3835 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.2)))
3836 #if __has_feature(attribute_availability_with_message)
3837 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.2,message=_msg)))
3838 #else
3839 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.2)))
3840 #endif
3841 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.3)))
3842 #if __has_feature(attribute_availability_with_message)
3843 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.3,message=_msg)))
3844 #else
3845 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10.3)))
3846 #endif
3847 #if __has_feature(attribute_availability_with_message)
3848 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10,message=_msg)))
3849 #else
3850 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.10)))
3851 #endif
3852 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.0,deprecated=10.11)))
3853 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.2)))
3854 #if __has_feature(attribute_availability_with_message)
3855 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.2,message=_msg)))
3856 #else
3857 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.2)))
3858 #endif
3859 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.3)))
3860 #if __has_feature(attribute_availability_with_message)
3861 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.3,message=_msg)))
3862 #else
3863 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.3)))
3864 #endif
3865 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.4)))
3866 #if __has_feature(attribute_availability_with_message)
3867 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.4,message=_msg)))
3868 #else
3869 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11.4)))
3870 #endif
3871 #if __has_feature(attribute_availability_with_message)
3872 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11,message=_msg)))
3873 #else
3874 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.11)))
3875 #endif
3876 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.0,deprecated=10.12)))
3877 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.1)))
3878 #if __has_feature(attribute_availability_with_message)
3879 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.1,message=_msg)))
3880 #else
3881 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.1)))
3882 #endif
3883 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.2)))
3884 #if __has_feature(attribute_availability_with_message)
3885 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.2,message=_msg)))
3886 #else
3887 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.2)))
3888 #endif
3889 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.4)))
3890 #if __has_feature(attribute_availability_with_message)
3891 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.4,message=_msg)))
3892 #else
3893 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12.4)))
3894 #endif
3895 #if __has_feature(attribute_availability_with_message)
3896 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12,message=_msg)))
3897 #else
3898 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.12)))
3899 #endif
3900 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.0,deprecated=10.13)))
3901 #if __has_feature(attribute_availability_with_message)
3902 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.1,message=_msg)))
3903 #else
3904 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.1)))
3905 #endif
3906 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_2 __attribute__((availability(macosx,introduced=10.0,deprecated=10.2)))
3907 #if __has_feature(attribute_availability_with_message)
3908 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.2,message=_msg)))
3909 #else
3910 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.2)))
3911 #endif
3912 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_3 __attribute__((availability(macosx,introduced=10.0,deprecated=10.3)))
3913 #if __has_feature(attribute_availability_with_message)
3914 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.3,message=_msg)))
3915 #else
3916 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.3)))
3917 #endif
3918 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_4 __attribute__((availability(macosx,introduced=10.0,deprecated=10.4)))
3919 #if __has_feature(attribute_availability_with_message)
3920 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.4,message=_msg)))
3921 #else
3922 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.4)))
3923 #endif
3924 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_5 __attribute__((availability(macosx,introduced=10.0,deprecated=10.5)))
3925 #if __has_feature(attribute_availability_with_message)
3926 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.5,message=_msg)))
3927 #else
3928 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_5_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.5)))
3929 #endif
3930 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_6 __attribute__((availability(macosx,introduced=10.0,deprecated=10.6)))
3931 #if __has_feature(attribute_availability_with_message)
3932 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.6,message=_msg)))
3933 #else
3934 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_6_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.6)))
3935 #endif
3936 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_7 __attribute__((availability(macosx,introduced=10.0,deprecated=10.7)))
3937 #if __has_feature(attribute_availability_with_message)
3938 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.7,message=_msg)))
3939 #else
3940 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_7_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.7)))
3941 #endif
3942 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_8 __attribute__((availability(macosx,introduced=10.0,deprecated=10.8)))
3943 #if __has_feature(attribute_availability_with_message)
3944 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.8,message=_msg)))
3945 #else
3946 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_8_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.8)))
3947 #endif
3948 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_9 __attribute__((availability(macosx,introduced=10.0,deprecated=10.9)))
3949 #if __has_feature(attribute_availability_with_message)
3950 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.9,message=_msg)))
3951 #else
3952 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_9_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.9)))
3953 #endif
3954 #if __has_feature(attribute_availability_with_message)
3955 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.13,message=_msg)))
3956 #else
3957 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.0,deprecated=10.13)))
3958 #endif
3959 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.0)))
3960 #define __AVAILABILITY_INTERNAL__MAC_10_0_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.0)))
3961 #define __AVAILABILITY_INTERNAL__MAC_10_1 __attribute__((availability(macosx,introduced=10.1)))
3962 #define __AVAILABILITY_INTERNAL__MAC_10_10 __attribute__((availability(macosx,introduced=10.10)))
3963 #define __AVAILABILITY_INTERNAL__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.10.2)))
3964 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.2)))
3965 #if __has_feature(attribute_availability_with_message)
3966 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.2,message=_msg)))
3967 #else
3968 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.2)))
3969 #endif
3970 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.3)))
3971 #if __has_feature(attribute_availability_with_message)
3972 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.3,message=_msg)))
3973 #else
3974 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.10.3)))
3975 #endif
3976 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11)))
3977 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.2)))
3978 #if __has_feature(attribute_availability_with_message)
3979 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.2,message=_msg)))
3980 #else
3981 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.2)))
3982 #endif
3983 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.3)))
3984 #if __has_feature(attribute_availability_with_message)
3985 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.3,message=_msg)))
3986 #else
3987 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.3)))
3988 #endif
3989 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.4)))
3990 #if __has_feature(attribute_availability_with_message)
3991 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.4,message=_msg)))
3992 #else
3993 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11.4)))
3994 #endif
3995 #if __has_feature(attribute_availability_with_message)
3996 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11,message=_msg)))
3997 #else
3998 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.11)))
3999 #endif
4000 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12)))
4001 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.1)))
4002 #if __has_feature(attribute_availability_with_message)
4003 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.1,message=_msg)))
4004 #else
4005 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.1)))
4006 #endif
4007 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.2)))
4008 #if __has_feature(attribute_availability_with_message)
4009 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.2,message=_msg)))
4010 #else
4011 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.2)))
4012 #endif
4013 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.4)))
4014 #if __has_feature(attribute_availability_with_message)
4015 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.4,message=_msg)))
4016 #else
4017 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12.4)))
4018 #endif
4019 #if __has_feature(attribute_availability_with_message)
4020 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12,message=_msg)))
4021 #else
4022 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2,deprecated=10.12)))
4023 #endif
4024 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.10.2)))
4025 #define __AVAILABILITY_INTERNAL__MAC_10_10_2_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.2)))
4026 #define __AVAILABILITY_INTERNAL__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.10.3)))
4027 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.10.3)))
4028 #if __has_feature(attribute_availability_with_message)
4029 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.10.3,message=_msg)))
4030 #else
4031 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.10.3)))
4032 #endif
4033 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11)))
4034 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.2)))
4035 #if __has_feature(attribute_availability_with_message)
4036 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.2,message=_msg)))
4037 #else
4038 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.2)))
4039 #endif
4040 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.3)))
4041 #if __has_feature(attribute_availability_with_message)
4042 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.3,message=_msg)))
4043 #else
4044 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.3)))
4045 #endif
4046 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.4)))
4047 #if __has_feature(attribute_availability_with_message)
4048 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.4,message=_msg)))
4049 #else
4050 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11.4)))
4051 #endif
4052 #if __has_feature(attribute_availability_with_message)
4053 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11,message=_msg)))
4054 #else
4055 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.11)))
4056 #endif
4057 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12)))
4058 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.1)))
4059 #if __has_feature(attribute_availability_with_message)
4060 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.1,message=_msg)))
4061 #else
4062 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.1)))
4063 #endif
4064 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.2)))
4065 #if __has_feature(attribute_availability_with_message)
4066 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.2,message=_msg)))
4067 #else
4068 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.2)))
4069 #endif
4070 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.4)))
4071 #if __has_feature(attribute_availability_with_message)
4072 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.4,message=_msg)))
4073 #else
4074 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12.4)))
4075 #endif
4076 #if __has_feature(attribute_availability_with_message)
4077 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12,message=_msg)))
4078 #else
4079 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3,deprecated=10.12)))
4080 #endif
4081 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.10.3)))
4082 #define __AVAILABILITY_INTERNAL__MAC_10_10_3_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.10.3)))
4083 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.10,deprecated=10.1)))
4084 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10 __attribute__((availability(macosx,introduced=10.10,deprecated=10.10)))
4085 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_2 __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.2)))
4086 #if __has_feature(attribute_availability_with_message)
4087 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.2,message=_msg)))
4088 #else
4089 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.2)))
4090 #endif
4091 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_3 __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.3)))
4092 #if __has_feature(attribute_availability_with_message)
4093 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.3,message=_msg)))
4094 #else
4095 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10.3)))
4096 #endif
4097 #if __has_feature(attribute_availability_with_message)
4098 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10,message=_msg)))
4099 #else
4100 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_10_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.10)))
4101 #endif
4102 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.10,deprecated=10.11)))
4103 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.2)))
4104 #if __has_feature(attribute_availability_with_message)
4105 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.2,message=_msg)))
4106 #else
4107 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.2)))
4108 #endif
4109 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.3)))
4110 #if __has_feature(attribute_availability_with_message)
4111 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.3,message=_msg)))
4112 #else
4113 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.3)))
4114 #endif
4115 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.4)))
4116 #if __has_feature(attribute_availability_with_message)
4117 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.4,message=_msg)))
4118 #else
4119 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11.4)))
4120 #endif
4121 #if __has_feature(attribute_availability_with_message)
4122 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11,message=_msg)))
4123 #else
4124 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.11)))
4125 #endif
4126 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.10,deprecated=10.12)))
4127 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.1)))
4128 #if __has_feature(attribute_availability_with_message)
4129 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.1,message=_msg)))
4130 #else
4131 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.1)))
4132 #endif
4133 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.2)))
4134 #if __has_feature(attribute_availability_with_message)
4135 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.2,message=_msg)))
4136 #else
4137 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.2)))
4138 #endif
4139 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.4)))
4140 #if __has_feature(attribute_availability_with_message)
4141 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.4,message=_msg)))
4142 #else
4143 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12.4)))
4144 #endif
4145 #if __has_feature(attribute_availability_with_message)
4146 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12,message=_msg)))
4147 #else
4148 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.12)))
4149 #endif
4150 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.10,deprecated=10.13)))
4151 #if __has_feature(attribute_availability_with_message)
4152 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.13,message=_msg)))
4153 #else
4154 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.10,deprecated=10.13)))
4155 #endif
4156 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_10_13_4 __attribute__((availability(macosx,introduced=10.10,deprecated=10.13.4)))
4157 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.10)))
4158 #define __AVAILABILITY_INTERNAL__MAC_10_10_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.10)))
4159 #define __AVAILABILITY_INTERNAL__MAC_10_11 __attribute__((availability(macosx,introduced=10.11)))
4160 #define __AVAILABILITY_INTERNAL__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.11.2)))
4161 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.2)))
4162 #if __has_feature(attribute_availability_with_message)
4163 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.2,message=_msg)))
4164 #else
4165 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.2)))
4166 #endif
4167 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.3)))
4168 #if __has_feature(attribute_availability_with_message)
4169 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.3,message=_msg)))
4170 #else
4171 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.3)))
4172 #endif
4173 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.4)))
4174 #if __has_feature(attribute_availability_with_message)
4175 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.4,message=_msg)))
4176 #else
4177 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.11.4)))
4178 #endif
4179 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12)))
4180 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.1)))
4181 #if __has_feature(attribute_availability_with_message)
4182 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.1,message=_msg)))
4183 #else
4184 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.1)))
4185 #endif
4186 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.2)))
4187 #if __has_feature(attribute_availability_with_message)
4188 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.2,message=_msg)))
4189 #else
4190 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.2)))
4191 #endif
4192 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.4)))
4193 #if __has_feature(attribute_availability_with_message)
4194 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.4,message=_msg)))
4195 #else
4196 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12.4)))
4197 #endif
4198 #if __has_feature(attribute_availability_with_message)
4199 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12,message=_msg)))
4200 #else
4201 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2,deprecated=10.12)))
4202 #endif
4203 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.11.2)))
4204 #define __AVAILABILITY_INTERNAL__MAC_10_11_2_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.2)))
4205 #define __AVAILABILITY_INTERNAL__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.11.3)))
4206 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.3)))
4207 #if __has_feature(attribute_availability_with_message)
4208 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.3,message=_msg)))
4209 #else
4210 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.3)))
4211 #endif
4212 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.4)))
4213 #if __has_feature(attribute_availability_with_message)
4214 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.4,message=_msg)))
4215 #else
4216 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.11.4)))
4217 #endif
4218 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12)))
4219 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.1)))
4220 #if __has_feature(attribute_availability_with_message)
4221 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.1,message=_msg)))
4222 #else
4223 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.1)))
4224 #endif
4225 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.2)))
4226 #if __has_feature(attribute_availability_with_message)
4227 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.2,message=_msg)))
4228 #else
4229 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.2)))
4230 #endif
4231 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.4)))
4232 #if __has_feature(attribute_availability_with_message)
4233 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.4,message=_msg)))
4234 #else
4235 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12.4)))
4236 #endif
4237 #if __has_feature(attribute_availability_with_message)
4238 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12,message=_msg)))
4239 #else
4240 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3,deprecated=10.12)))
4241 #endif
4242 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.11.3)))
4243 #define __AVAILABILITY_INTERNAL__MAC_10_11_3_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.3)))
4244 #define __AVAILABILITY_INTERNAL__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.11.4)))
4245 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.11.4)))
4246 #if __has_feature(attribute_availability_with_message)
4247 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.11.4,message=_msg)))
4248 #else
4249 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.11.4)))
4250 #endif
4251 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12)))
4252 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.1)))
4253 #if __has_feature(attribute_availability_with_message)
4254 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.1,message=_msg)))
4255 #else
4256 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.1)))
4257 #endif
4258 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.2)))
4259 #if __has_feature(attribute_availability_with_message)
4260 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.2,message=_msg)))
4261 #else
4262 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.2)))
4263 #endif
4264 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.4)))
4265 #if __has_feature(attribute_availability_with_message)
4266 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.4,message=_msg)))
4267 #else
4268 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12.4)))
4269 #endif
4270 #if __has_feature(attribute_availability_with_message)
4271 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12,message=_msg)))
4272 #else
4273 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4,deprecated=10.12)))
4274 #endif
4275 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.11.4)))
4276 #define __AVAILABILITY_INTERNAL__MAC_10_11_4_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.11.4)))
4277 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_1 __attribute__((availability(macosx,introduced=10.11,deprecated=10.1)))
4278 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11 __attribute__((availability(macosx,introduced=10.11,deprecated=10.11)))
4279 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_2 __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.2)))
4280 #if __has_feature(attribute_availability_with_message)
4281 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.2,message=_msg)))
4282 #else
4283 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.2)))
4284 #endif
4285 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_3 __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.3)))
4286 #if __has_feature(attribute_availability_with_message)
4287 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.3,message=_msg)))
4288 #else
4289 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_3_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.3)))
4290 #endif
4291 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_4 __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.4)))
4292 #if __has_feature(attribute_availability_with_message)
4293 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.4,message=_msg)))
4294 #else
4295 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11.4)))
4296 #endif
4297 #if __has_feature(attribute_availability_with_message)
4298 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11,message=_msg)))
4299 #else
4300 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_11_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.11)))
4301 #endif
4302 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.11,deprecated=10.12)))
4303 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.1)))
4304 #if __has_feature(attribute_availability_with_message)
4305 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.1,message=_msg)))
4306 #else
4307 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.1)))
4308 #endif
4309 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.2)))
4310 #if __has_feature(attribute_availability_with_message)
4311 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.2,message=_msg)))
4312 #else
4313 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.2)))
4314 #endif
4315 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.4)))
4316 #if __has_feature(attribute_availability_with_message)
4317 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.4,message=_msg)))
4318 #else
4319 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12.4)))
4320 #endif
4321 #if __has_feature(attribute_availability_with_message)
4322 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12,message=_msg)))
4323 #else
4324 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.11,deprecated=10.12)))
4325 #endif
4326 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.11)))
4327 #define __AVAILABILITY_INTERNAL__MAC_10_11_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.11)))
4328 #define __AVAILABILITY_INTERNAL__MAC_10_12 __attribute__((availability(macosx,introduced=10.12)))
4329 #define __AVAILABILITY_INTERNAL__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.12.1)))
4330 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.1)))
4331 #if __has_feature(attribute_availability_with_message)
4332 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.1,message=_msg)))
4333 #else
4334 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.1)))
4335 #endif
4336 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.2)))
4337 #if __has_feature(attribute_availability_with_message)
4338 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.2,message=_msg)))
4339 #else
4340 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.2)))
4341 #endif
4342 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.4)))
4343 #if __has_feature(attribute_availability_with_message)
4344 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.4,message=_msg)))
4345 #else
4346 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1,deprecated=10.12.4)))
4347 #endif
4348 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.12.1)))
4349 #define __AVAILABILITY_INTERNAL__MAC_10_12_1_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.1)))
4350 #define __AVAILABILITY_INTERNAL__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.12.2)))
4351 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.2)))
4352 #if __has_feature(attribute_availability_with_message)
4353 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.2,message=_msg)))
4354 #else
4355 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.2)))
4356 #endif
4357 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.4)))
4358 #if __has_feature(attribute_availability_with_message)
4359 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.4,message=_msg)))
4360 #else
4361 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.2,deprecated=10.12.4)))
4362 #endif
4363 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.12.2)))
4364 #define __AVAILABILITY_INTERNAL__MAC_10_12_2_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.2)))
4365 #define __AVAILABILITY_INTERNAL__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.12.4)))
4366 #define __AVAILABILITY_INTERNAL__MAC_10_12_4_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.12.4,deprecated=10.12.4)))
4367 #if __has_feature(attribute_availability_with_message)
4368 #define __AVAILABILITY_INTERNAL__MAC_10_12_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.4,deprecated=10.12.4,message=_msg)))
4369 #else
4370 #define __AVAILABILITY_INTERNAL__MAC_10_12_4_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.4,deprecated=10.12.4)))
4371 #endif
4372 #define __AVAILABILITY_INTERNAL__MAC_10_12_4_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.12.4)))
4373 #define __AVAILABILITY_INTERNAL__MAC_10_12_4_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.12.4)))
4374 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12 __attribute__((availability(macosx,introduced=10.12,deprecated=10.12)))
4375 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_1 __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.1)))
4376 #if __has_feature(attribute_availability_with_message)
4377 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.1,message=_msg)))
4378 #else
4379 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_1_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.1)))
4380 #endif
4381 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_2 __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.2)))
4382 #if __has_feature(attribute_availability_with_message)
4383 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.2,message=_msg)))
4384 #else
4385 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_2_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.2)))
4386 #endif
4387 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_4 __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.4)))
4388 #if __has_feature(attribute_availability_with_message)
4389 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.4,message=_msg)))
4390 #else
4391 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_4_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12.4)))
4392 #endif
4393 #if __has_feature(attribute_availability_with_message)
4394 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12,message=_msg)))
4395 #else
4396 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_12_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.12)))
4397 #endif
4398 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_13 __attribute__((availability(macosx,introduced=10.12,deprecated=10.13)))
4399 #if __has_feature(attribute_availability_with_message)
4400 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.13,message=_msg)))
4401 #else
4402 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_13_MSG(_msg) __attribute__((availability(macosx,introduced=10.12,deprecated=10.13)))
4403 #endif
4404 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_13_4 __attribute__((availability(macosx,introduced=10.12,deprecated=10.13.4)))
4405 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_10_14 __attribute__((availability(macosx,introduced=10.12,deprecated=10.14)))
4406 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_NA __attribute__((availability(macosx,introduced=10.12)))
4407 #define __AVAILABILITY_INTERNAL__MAC_10_12_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,introduced=10.12)))
4408 #define __AVAILABILITY_INTERNAL__MAC_10_13 __attribute__((availability(macosx,introduced=10.13)))
4409 #define __AVAILABILITY_INTERNAL__MAC_10_13_4 __attribute__((availability(macosx,introduced=10.13.4)))
4410 #define __AVAILABILITY_INTERNAL__MAC_10_14 __attribute__((availability(macosx,introduced=10.14)))
4411 #define __AVAILABILITY_INTERNAL__MAC_10_14_DEP__MAC_10_14 __attribute__((availability(macosx,introduced=10.14,deprecated=10.14)))
4412 #define __AVAILABILITY_INTERNAL__MAC_10_15 __attribute__((availability(macosx,introduced=10.15)))
4413
4414 #define __AVAILABILITY_INTERNAL__MAC_NA __attribute__((availability(macosx,unavailable)))
4415 #define __AVAILABILITY_INTERNAL__MAC_NA_DEP__MAC_NA __attribute__((availability(macosx,unavailable)))
4416 #define __AVAILABILITY_INTERNAL__MAC_NA_DEP__MAC_NA_MSG(_msg) __attribute__((availability(macosx,unavailable)))
4417
4418 #define __AVAILABILITY_INTERNAL__IPHONE_NA __attribute__((availability(ios,unavailable)))
4419 #define __AVAILABILITY_INTERNAL__IPHONE_NA__IPHONE_NA __attribute__((availability(ios,unavailable)))
4420 #define __AVAILABILITY_INTERNAL__IPHONE_NA_DEP__IPHONE_NA __attribute__((availability(ios,unavailable)))
4421 #define __AVAILABILITY_INTERNAL__IPHONE_NA_DEP__IPHONE_NA_MSG(_msg) __attribute__((availability(ios,unavailable)))
4422
4423 #ifndef __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION
4424 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION __attribute__((availability(ios,unavailable)))
4425 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION __attribute__((availability(ios,unavailable)))
4426 #define __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION_DEP__IPHONE_COMPAT_VERSION_MSG(_msg) __attribute__((availability(ios,unavailable)))
4427 #endif /* __AVAILABILITY_INTERNAL__IPHONE_COMPAT_VERSION */
4428 #endif
4429 #endif
4430#endif /* __ENABLE_LEGACY_MAC_AVAILABILITY */
4431
4432/*
4433 Macros for defining which versions/platform a given symbol can be used.
4434
4435 @see http://clang.llvm.org/docs/AttributeReference.html#availability
4436 */
4437
4438#if defined(__has_feature) && defined(__has_attribute)
4439 #if __has_attribute(availability)
4440
4441
4442 #define __API_AVAILABLE_PLATFORM_macos(x) macos,introduced=x
4443 #define __API_AVAILABLE_PLATFORM_macosx(x) macosx,introduced=x
4444 #define __API_AVAILABLE_PLATFORM_ios(x) ios,introduced=x
4445 #define __API_AVAILABLE_PLATFORM_watchos(x) watchos,introduced=x
4446 #define __API_AVAILABLE_PLATFORM_tvos(x) tvos,introduced=x
4447
4448 #define __API_AVAILABLE_PLATFORM_macCatalyst(x) macCatalyst,introduced=x
4449 #define __API_AVAILABLE_PLATFORM_macCatalyst(x) macCatalyst,introduced=x
4450 #ifndef __API_AVAILABLE_PLATFORM_uikitformac
4451 #define __API_AVAILABLE_PLATFORM_uikitformac(x) uikitformac,introduced=x
4452 #endif
4453 #define __API_AVAILABLE_PLATFORM_driverkit(x) driverkit,introduced=x
4454
4455 #if defined(__has_attribute)
4456 #if __has_attribute(availability)
4457 #define __API_A(x) __attribute__((availability(__API_AVAILABLE_PLATFORM_##x)))
4458 #else
4459 #define __API_A(x)
4460 #endif
4461 #else
4462 #define __API_A(x)
4463 #endif
4464
4465 #define __API_AVAILABLE1(x) __API_A(x)
4466 #define __API_AVAILABLE2(x,y) __API_A(x) __API_A(y)
4467 #define __API_AVAILABLE3(x,y,z) __API_A(x) __API_A(y) __API_A(z)
4468 #define __API_AVAILABLE4(x,y,z,t) __API_A(x) __API_A(y) __API_A(z) __API_A(t)
4469 #define __API_AVAILABLE5(x,y,z,t,b) __API_A(x) __API_A(y) __API_A(z) __API_A(t) __API_A(b)
4470 #define __API_AVAILABLE6(x,y,z,t,b,m) __API_A(x) __API_A(y) __API_A(z) __API_A(t) __API_A(b) __API_A(m)
4471 #define __API_AVAILABLE7(x,y,z,t,b,m,d) __API_A(x) __API_A(y) __API_A(z) __API_A(t) __API_A(b) __API_A(m) __API_A(d)
4472 #define __API_AVAILABLE_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,NAME,...) NAME
4473
4474 #define __API_APPLY_TO any(record, enum, enum_constant, function, objc_method, objc_category, objc_protocol, objc_interface, objc_property, type_alias, variable, field)
4475 #define __API_RANGE_STRINGIFY(x) __API_RANGE_STRINGIFY2(x)
4476 #define __API_RANGE_STRINGIFY2(x) #x
4477
4478 #define __API_A_BEGIN(x) _Pragma(__API_RANGE_STRINGIFY (clang attribute (__attribute__((availability(__API_AVAILABLE_PLATFORM_##x))), apply_to = __API_APPLY_TO)))
4479
4480 #define __API_AVAILABLE_BEGIN1(a) __API_A_BEGIN(a)
4481 #define __API_AVAILABLE_BEGIN2(a,b) __API_A_BEGIN(a) __API_A_BEGIN(b)
4482 #define __API_AVAILABLE_BEGIN3(a,b,c) __API_A_BEGIN(a) __API_A_BEGIN(b) __API_A_BEGIN(c)
4483 #define __API_AVAILABLE_BEGIN4(a,b,c,d) __API_A_BEGIN(a) __API_A_BEGIN(b) __API_A_BEGIN(c) __API_A_BEGIN(d)
4484 #define __API_AVAILABLE_BEGIN5(a,b,c,d,e) __API_A_BEGIN(a) __API_A_BEGIN(b) __API_A_BEGIN(c) __API_A_BEGIN(d) __API_A_BEGIN(e)
4485 #define __API_AVAILABLE_BEGIN6(a,b,c,d,e,f) __API_A_BEGIN(a) __API_A_BEGIN(b) __API_A_BEGIN(c) __API_A_BEGIN(d) __API_A_BEGIN(e) __API_A_BEGIN(f)
4486 #define __API_AVAILABLE_BEGIN7(a,b,c,d,e,f,g) __API_A_BEGIN(a) __API_A_BEGIN(b) __API_A_BEGIN(c) __API_A_BEGIN(d) __API_A_BEGIN(e) __API_A_BEGIN(f) __API_A_BEGIN(g)
4487 #define __API_AVAILABLE_BEGIN_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,NAME,...) NAME
4488
4489
4490 #define __API_DEPRECATED_PLATFORM_macos(x,y) macos,introduced=x,deprecated=y
4491 #define __API_DEPRECATED_PLATFORM_macosx(x,y) macosx,introduced=x,deprecated=y
4492 #define __API_DEPRECATED_PLATFORM_ios(x,y) ios,introduced=x,deprecated=y
4493 #define __API_DEPRECATED_PLATFORM_watchos(x,y) watchos,introduced=x,deprecated=y
4494 #define __API_DEPRECATED_PLATFORM_tvos(x,y) tvos,introduced=x,deprecated=y
4495
4496 #define __API_DEPRECATED_PLATFORM_macCatalyst(x,y) macCatalyst,introduced=x,deprecated=y
4497 #define __API_DEPRECATED_PLATFORM_macCatalyst(x,y) macCatalyst,introduced=x,deprecated=y
4498 #ifndef __API_DEPRECATED_PLATFORM_uikitformac
4499 #define __API_DEPRECATED_PLATFORM_uikitformac(x) uikitformac,introduced=x,deprecated=y
4500 #endif
4501 #define __API_DEPRECATED_PLATFORM_driverkit(x,y) driverkit,introduced=x,deprecated=y
4502
4503 #if defined(__has_attribute)
4504 #if __has_attribute(availability)
4505 #define __API_D(msg,x) __attribute__((availability(__API_DEPRECATED_PLATFORM_##x,message=msg)))
4506 #else
4507 #define __API_D(msg,x)
4508 #endif
4509 #else
4510 #define __API_D(msg,x)
4511 #endif
4512
4513 #define __API_DEPRECATED_MSG2(msg,x) __API_D(msg,x)
4514 #define __API_DEPRECATED_MSG3(msg,x,y) __API_D(msg,x) __API_D(msg,y)
4515 #define __API_DEPRECATED_MSG4(msg,x,y,z) __API_DEPRECATED_MSG3(msg,x,y) __API_D(msg,z)
4516 #define __API_DEPRECATED_MSG5(msg,x,y,z,t) __API_DEPRECATED_MSG4(msg,x,y,z) __API_D(msg,t)
4517 #define __API_DEPRECATED_MSG6(msg,x,y,z,t,b) __API_DEPRECATED_MSG5(msg,x,y,z,t) __API_D(msg,b)
4518 #define __API_DEPRECATED_MSG7(msg,x,y,z,t,b,m) __API_DEPRECATED_MSG6(msg,x,y,z,t,b) __API_D(msg,m)
4519 #define __API_DEPRECATED_MSG8(msg,x,y,z,t,b,m,d) __API_DEPRECATED_MSG7(msg,x,y,z,t,b,m) __API_D(msg,d)
4520 #define __API_DEPRECATED_MSG_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,_8,NAME,...) NAME
4521
4522 #define __API_D_BEGIN(msg, x) _Pragma(__API_RANGE_STRINGIFY (clang attribute (__attribute__((availability(__API_DEPRECATED_PLATFORM_##x,message=msg))), apply_to = __API_APPLY_TO)))
4523
4524 #define __API_DEPRECATED_BEGIN_MSG2(msg,a) __API_D_BEGIN(msg,a)
4525 #define __API_DEPRECATED_BEGIN_MSG3(msg,a,b) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b)
4526 #define __API_DEPRECATED_BEGIN_MSG4(msg,a,b,c) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b) __API_D_BEGIN(msg,c)
4527 #define __API_DEPRECATED_BEGIN_MSG5(msg,a,b,c,d) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b) __API_D_BEGIN(msg,c) __API_D_BEGIN(msg,d)
4528 #define __API_DEPRECATED_BEGIN_MSG6(msg,a,b,c,d,e) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b) __API_D_BEGIN(msg,c) __API_D_BEGIN(msg,d) __API_D_BEGIN(msg,e)
4529 #define __API_DEPRECATED_BEGIN_MSG7(msg,a,b,c,d,e,f) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b) __API_D_BEGIN(msg,c) __API_D_BEGIN(msg,d) __API_D_BEGIN(msg,e) __API_D_BEGIN(msg,f)
4530 #define __API_DEPRECATED_BEGIN_MSG8(msg,a,b,c,d,e,f,g) __API_D_BEGIN(msg,a) __API_D_BEGIN(msg,b) __API_D_BEGIN(msg,c) __API_D_BEGIN(msg,d) __API_D_BEGIN(msg,e) __API_D_BEGIN(msg,f) __API_D_BEGIN(msg,g)
4531 #define __API_DEPRECATED_BEGIN_MSG_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,_8,NAME,...) NAME
4532
4533 #if __has_feature(attribute_availability_with_replacement)
4534 #define __API_R(rep,x) __attribute__((availability(__API_DEPRECATED_PLATFORM_##x,replacement=rep)))
4535 #else
4536 #define __API_R(rep,x) __attribute__((availability(__API_DEPRECATED_PLATFORM_##x)))
4537 #endif
4538
4539 #define __API_DEPRECATED_REP2(rep,x) __API_R(rep,x)
4540 #define __API_DEPRECATED_REP3(rep,x,y) __API_R(rep,x) __API_R(rep,y)
4541 #define __API_DEPRECATED_REP4(rep,x,y,z) __API_DEPRECATED_REP3(rep,x,y) __API_R(rep,z)
4542 #define __API_DEPRECATED_REP5(rep,x,y,z,t) __API_DEPRECATED_REP4(rep,x,y,z) __API_R(rep,t)
4543 #define __API_DEPRECATED_REP6(rep,x,y,z,t,b) __API_DEPRECATED_REP5(rep,x,y,z,t) __API_R(rep,b)
4544 #define __API_DEPRECATED_REP7(rep,x,y,z,t,b,m) __API_DEPRECATED_REP6(rep,x,y,z,t,b) __API_R(rep,m)
4545 #define __API_DEPRECATED_REP8(rep,x,y,z,t,b,m,d) __API_DEPRECATED_REP7(rep,x,y,z,t,b,m) __API_R(rep,d)
4546 #define __API_DEPRECATED_REP_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,_8,NAME,...) NAME
4547
4548 #if __has_feature(attribute_availability_with_replacement)
4549 #define __API_R_BEGIN(rep,x) _Pragma(__API_RANGE_STRINGIFY (clang attribute (__attribute__((availability(__API_DEPRECATED_PLATFORM_##x,replacement=rep))), apply_to = __API_APPLY_TO)))
4550 #else
4551 #define __API_R_BEGIN(rep,x) _Pragma(__API_RANGE_STRINGIFY (clang attribute (__attribute__((availability(__API_DEPRECATED_PLATFORM_##x))), apply_to = __API_APPLY_TO)))
4552 #endif
4553
4554 #define __API_DEPRECATED_BEGIN_REP2(rep,a) __API_R_BEGIN(rep,a)
4555 #define __API_DEPRECATED_BEGIN_REP3(rep,a,b) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b)
4556 #define __API_DEPRECATED_BEGIN_REP4(rep,a,b,c) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b) __API_R_BEGIN(rep,c)
4557 #define __API_DEPRECATED_BEGIN_REP5(rep,a,b,c,d) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b) __API_R_BEGIN(rep,c) __API_R_BEGIN(rep,d)
4558 #define __API_DEPRECATED_BEGIN_REP6(rep,a,b,c,d,e) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b) __API_R_BEGIN(rep,c) __API_R_BEGIN(rep,d) __API_R_BEGIN(rep,e)
4559 #define __API_DEPRECATED_BEGIN_REP7(rep,a,b,c,d,e,f) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b) __API_R_BEGIN(rep,c) __API_R_BEGIN(rep,d) __API_R_BEGIN(rep,e) __API_R_BEGIN(rep,f)
4560 #define __API_DEPRECATED_BEGIN_REP8(rep,a,b,c,d,e,f,g) __API_R_BEGIN(rep,a) __API_R_BEGIN(rep,b) __API_R_BEGIN(rep,c) __API_R_BEGIN(rep,d) __API_R_BEGIN(rep,e) __API_R_BEGIN(rep,f) __API_R_BEGIN(rep,g)
4561 #define __API_DEPRECATED_BEGIN_REP_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,_8,NAME,...) NAME
4562
4563 /*
4564 * API Unavailability
4565 * Use to specify that an API is unavailable for a particular platform.
4566 *
4567 * Example:
4568 * __API_UNAVAILABLE(macos)
4569 * __API_UNAVAILABLE(watchos, tvos)
4570 */
4571 #define __API_UNAVAILABLE_PLATFORM_macos macos,unavailable
4572 #define __API_UNAVAILABLE_PLATFORM_macosx macosx,unavailable
4573 #define __API_UNAVAILABLE_PLATFORM_ios ios,unavailable
4574 #define __API_UNAVAILABLE_PLATFORM_watchos watchos,unavailable
4575 #define __API_UNAVAILABLE_PLATFORM_tvos tvos,unavailable
4576
4577 #define __API_UNAVAILABLE_PLATFORM_macCatalyst macCatalyst,unavailable
4578 #define __API_UNAVAILABLE_PLATFORM_macCatalyst macCatalyst,unavailable
4579 #ifndef __API_UNAVAILABLE_PLATFORM_uikitformac
4580 #define __API_UNAVAILABLE_PLATFORM_uikitformac(x) uikitformac,unavailable
4581 #endif
4582 #define __API_UNAVAILABLE_PLATFORM_driverkit driverkit,unavailable
4583
4584 #if defined(__has_attribute)
4585 #if __has_attribute(availability)
4586 #define __API_U(x) __attribute__((availability(__API_UNAVAILABLE_PLATFORM_##x)))
4587 #else
4588 #define __API_U(x)
4589 #endif
4590 #else
4591 #define __API_U(x)
4592 #endif
4593
4594 #define __API_UNAVAILABLE1(x) __API_U(x)
4595 #define __API_UNAVAILABLE2(x,y) __API_U(x) __API_U(y)
4596 #define __API_UNAVAILABLE3(x,y,z) __API_UNAVAILABLE2(x,y) __API_U(z)
4597 #define __API_UNAVAILABLE4(x,y,z,t) __API_UNAVAILABLE3(x,y,z) __API_U(t)
4598 #define __API_UNAVAILABLE5(x,y,z,t,b) __API_UNAVAILABLE4(x,y,z,t) __API_U(b)
4599 #define __API_UNAVAILABLE6(x,y,z,t,b,m) __API_UNAVAILABLE5(x,y,z,t,b) __API_U(m)
4600 #define __API_UNAVAILABLE7(x,y,z,t,b,m,d) __API_UNAVAILABLE6(x,y,z,t,b,m) __API_U(d)
4601 #define __API_UNAVAILABLE_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,NAME,...) NAME
4602
4603 #define __API_U_BEGIN(x) _Pragma(__API_RANGE_STRINGIFY (clang attribute (__attribute__((availability(__API_UNAVAILABLE_PLATFORM_##x))), apply_to = __API_APPLY_TO)))
4604
4605 #define __API_UNAVAILABLE_BEGIN1(a) __API_U_BEGIN(a)
4606 #define __API_UNAVAILABLE_BEGIN2(a,b) __API_U_BEGIN(a) __API_U_BEGIN(b)
4607 #define __API_UNAVAILABLE_BEGIN3(a,b,c) __API_U_BEGIN(a) __API_U_BEGIN(b) __API_U_BEGIN(c)
4608 #define __API_UNAVAILABLE_BEGIN4(a,b,c,d) __API_U_BEGIN(a) __API_U_BEGIN(b) __API_U_BEGIN(c) __API_U_BEGIN(d)
4609 #define __API_UNAVAILABLE_BEGIN5(a,b,c,d,e) __API_U_BEGIN(a) __API_U_BEGIN(b) __API_U_BEGIN(c) __API_U_BEGIN(d) __API_U_BEGIN(e)
4610 #define __API_UNAVAILABLE_BEGIN6(a,b,c,d,e,f) __API_U_BEGIN(a) __API_U_BEGIN(b) __API_U_BEGIN(c) __API_U_BEGIN(d) __API_U_BEGIN(e) __API_U_BEGIN(f)
4611 #define __API_UNAVAILABLE_BEGIN7(a,b,c,d,e,f) __API_U_BEGIN(a) __API_U_BEGIN(b) __API_U_BEGIN(c) __API_U_BEGIN(d) __API_U_BEGIN(e) __API_U_BEGIN(f) __API_U_BEGIN(g)
4612 #define __API_UNAVAILABLE_BEGIN_GET_MACRO(_1,_2,_3,_4,_5,_6,_7,NAME,...) NAME
4613 #else
4614
4615 /*
4616 * Evaluate to nothing for compilers that don't support availability.
4617 */
4618
4619 #define __API_AVAILABLE_GET_MACRO(...)
4620 #define __API_AVAILABLE_BEGIN_GET_MACRO(...)
4621 #define __API_DEPRECATED_MSG_GET_MACRO(...)
4622 #define __API_DEPRECATED_REP_GET_MACRO(...)
4623 #define __API_DEPRECATED_BEGIN_MSG_GET_MACRO(...)
4624 #define __API_DEPRECATED_BEGIN_REP_GET_MACRO
4625 #define __API_UNAVAILABLE_GET_MACRO(...)
4626 #define __API_UNAVAILABLE_BEGIN_GET_MACRO(...)
4627 #endif /* __has_attribute(availability) */
4628#else
4629
4630 /*
4631 * Evaluate to nothing for compilers that don't support clang language extensions.
4632 */
4633
4634 #define __API_AVAILABLE_GET_MACRO(...)
4635 #define __API_AVAILABLE_BEGIN_GET_MACRO(...)
4636 #define __API_DEPRECATED_MSG_GET_MACRO(...)
4637 #define __API_DEPRECATED_REP_GET_MACRO(...)
4638 #define __API_DEPRECATED_BEGIN_MSG_GET_MACRO(...)
4639 #define __API_DEPRECATED_BEGIN_REP_GET_MACRO
4640 #define __API_UNAVAILABLE_GET_MACRO(...)
4641 #define __API_UNAVAILABLE_BEGIN_GET_MACRO(...)
4642#endif /* #if defined(__has_feature) && defined(__has_attribute) */
4643
4644/*
4645 * Swift compiler version
4646 * Allows for project-agnostic “epochs” for frameworks imported into Swift via the Clang importer, like #if _compiler_version for Swift
4647 * Example:
4648 *
4649 * #if __swift_compiler_version_at_least(800, 2, 20)
4650 * - (nonnull NSString *)description;
4651 * #else
4652 * - (NSString *)description;
4653 * #endif
4654 */
4655
4656#ifdef __SWIFT_COMPILER_VERSION
4657 #define __swift_compiler_version_at_least_impl(X, Y, Z, a, b, ...) \
4658 __SWIFT_COMPILER_VERSION >= ((X * UINT64_C(1000) * 1000 * 1000) + (Z * 1000 * 1000) + (a * 1000) + b)
4659 #define __swift_compiler_version_at_least(...) __swift_compiler_version_at_least_impl(__VA_ARGS__, 0, 0, 0, 0)
4660#else
4661 #define __swift_compiler_version_at_least(...) 1
4662#endif
4663
4664/*
4665 * If __SPI_AVAILABLE has not been defined elsewhere, disable it.
4666 */
4667
4668#ifndef __SPI_AVAILABLE
4669 #define __SPI_AVAILABLE(...)
4670#endif
4671
4672#endif /* __AVAILABILITY_INTERNAL__ */
lib/libc/include/x86_64-macos-gnu/__wctype.h created+74
......@@ -0,0 +1,74 @@
1/*
2 * Copyright (c) 2017 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c)1999 Citrus Project,
25 * All rights reserved.
26 *
27 * Redistribution and use in source and binary forms, with or without
28 * modification, are permitted provided that the following conditions
29 * are met:
30 * 1. Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * 2. Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in the
34 * documentation and/or other materials provided with the distribution.
35 *
36 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
37 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
38 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
39 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
40 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
41 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
42 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
43 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
44 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
45 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
46 * SUCH DAMAGE.
47 *
48 */
49
50/*
51 * Common header for _wctype.h and xlocale/__wctype.h
52 */
53
54#ifndef ___WCTYPE_H_
55#define ___WCTYPE_H_
56
57#include <sys/cdefs.h>
58#include <_types.h>
59
60#include <sys/_types/_wint_t.h>
61#include <sys/_types/_wint_t.h>
62#include <_types/_wctype_t.h>
63
64#ifndef WEOF
65#define WEOF __DARWIN_WEOF
66#endif
67
68#ifndef __DARWIN_WCTYPE_TOP_inline
69#define __DARWIN_WCTYPE_TOP_inline __header_inline
70#endif
71
72#include <ctype.h>
73
74#endif /* ___WCTYPE_H_ */
lib/libc/include/x86_64-macos-gnu/_ctermid.h created+27
......@@ -0,0 +1,27 @@
1/*
2 * Copyright (c) 2000, 2002-2006, 2008-2010, 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _CTERMID_H_
25#define _CTERMID_H_
26char *ctermid(char *);
27#endif
lib/libc/include/x86_64-macos-gnu/_ctype.h created+387
......@@ -0,0 +1,387 @@
1/*
2 * Copyright (c) 2000, 2005, 2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24 * Copyright (c) 1989, 1993
25 * The Regents of the University of California. All rights reserved.
26 * (c) UNIX System Laboratories, Inc.
27 * All or some portions of this file are derived from material licensed
28 * to the University of California by American Telephone and Telegraph
29 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
30 * the permission of UNIX System Laboratories, Inc.
31 *
32 * This code is derived from software contributed to Berkeley by
33 * Paul Borman at Krystal Technologies.
34 *
35 * Redistribution and use in source and binary forms, with or without
36 * modification, are permitted provided that the following conditions
37 * are met:
38 * 1. Redistributions of source code must retain the above copyright
39 * notice, this list of conditions and the following disclaimer.
40 * 2. Redistributions in binary form must reproduce the above copyright
41 * notice, this list of conditions and the following disclaimer in the
42 * documentation and/or other materials provided with the distribution.
43 * 3. All advertising materials mentioning features or use of this software
44 * must display the following acknowledgement:
45 * This product includes software developed by the University of
46 * California, Berkeley and its contributors.
47 * 4. Neither the name of the University nor the names of its contributors
48 * may be used to endorse or promote products derived from this software
49 * without specific prior written permission.
50 *
51 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
52 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
53 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
55 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
59 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
60 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
61 * SUCH DAMAGE.
62 *
63 * @(#)ctype.h 8.4 (Berkeley) 1/21/94
64 */
65
66#ifndef __CTYPE_H_
67#define __CTYPE_H_
68
69#include <sys/cdefs.h>
70#include <runetype.h>
71
72#define _CTYPE_A 0x00000100L /* Alpha */
73#define _CTYPE_C 0x00000200L /* Control */
74#define _CTYPE_D 0x00000400L /* Digit */
75#define _CTYPE_G 0x00000800L /* Graph */
76#define _CTYPE_L 0x00001000L /* Lower */
77#define _CTYPE_P 0x00002000L /* Punct */
78#define _CTYPE_S 0x00004000L /* Space */
79#define _CTYPE_U 0x00008000L /* Upper */
80#define _CTYPE_X 0x00010000L /* X digit */
81#define _CTYPE_B 0x00020000L /* Blank */
82#define _CTYPE_R 0x00040000L /* Print */
83#define _CTYPE_I 0x00080000L /* Ideogram */
84#define _CTYPE_T 0x00100000L /* Special */
85#define _CTYPE_Q 0x00200000L /* Phonogram */
86#define _CTYPE_SW0 0x20000000L /* 0 width character */
87#define _CTYPE_SW1 0x40000000L /* 1 width character */
88#define _CTYPE_SW2 0x80000000L /* 2 width character */
89#define _CTYPE_SW3 0xc0000000L /* 3 width character */
90#define _CTYPE_SWM 0xe0000000L /* Mask for screen width data */
91#define _CTYPE_SWS 30 /* Bits to shift to get width */
92
93#ifdef _NONSTD_SOURCE
94/*
95 * Backward compatibility
96 */
97#define _A _CTYPE_A /* Alpha */
98#define _C _CTYPE_C /* Control */
99#define _D _CTYPE_D /* Digit */
100#define _G _CTYPE_G /* Graph */
101#define _L _CTYPE_L /* Lower */
102#define _P _CTYPE_P /* Punct */
103#define _S _CTYPE_S /* Space */
104#define _U _CTYPE_U /* Upper */
105#define _X _CTYPE_X /* X digit */
106#define _B _CTYPE_B /* Blank */
107#define _R _CTYPE_R /* Print */
108#define _I _CTYPE_I /* Ideogram */
109#define _T _CTYPE_T /* Special */
110#define _Q _CTYPE_Q /* Phonogram */
111#define _SW0 _CTYPE_SW0 /* 0 width character */
112#define _SW1 _CTYPE_SW1 /* 1 width character */
113#define _SW2 _CTYPE_SW2 /* 2 width character */
114#define _SW3 _CTYPE_SW3 /* 3 width character */
115#endif /* _NONSTD_SOURCE */
116
117#define __DARWIN_CTYPE_inline __header_inline
118
119#define __DARWIN_CTYPE_TOP_inline __header_inline
120
121/*
122 * Use inline functions if we are allowed to and the compiler supports them.
123 */
124#if !defined(_DONT_USE_CTYPE_INLINE_) && \
125 (defined(_USE_CTYPE_INLINE_) || defined(__GNUC__) || defined(__cplusplus))
126
127/* See comments in <machine/_type.h> about __darwin_ct_rune_t. */
128__BEGIN_DECLS
129unsigned long ___runetype(__darwin_ct_rune_t);
130__darwin_ct_rune_t ___tolower(__darwin_ct_rune_t);
131__darwin_ct_rune_t ___toupper(__darwin_ct_rune_t);
132__END_DECLS
133
134__DARWIN_CTYPE_TOP_inline int
135isascii(int _c)
136{
137 return ((_c & ~0x7F) == 0);
138}
139
140#ifdef USE_ASCII
141__DARWIN_CTYPE_inline int
142__maskrune(__darwin_ct_rune_t _c, unsigned long _f)
143{
144 return (int)_DefaultRuneLocale.__runetype[_c & 0xff] & (__uint32_t)_f;
145}
146#else /* !USE_ASCII */
147__BEGIN_DECLS
148int __maskrune(__darwin_ct_rune_t, unsigned long);
149__END_DECLS
150#endif /* USE_ASCII */
151
152__DARWIN_CTYPE_inline int
153__istype(__darwin_ct_rune_t _c, unsigned long _f)
154{
155#ifdef USE_ASCII
156 return !!(__maskrune(_c, _f));
157#else /* USE_ASCII */
158 return (isascii(_c) ? !!(_DefaultRuneLocale.__runetype[_c] & _f)
159 : !!__maskrune(_c, _f));
160#endif /* USE_ASCII */
161}
162
163__DARWIN_CTYPE_inline __darwin_ct_rune_t
164__isctype(__darwin_ct_rune_t _c, unsigned long _f)
165{
166#ifdef USE_ASCII
167 return !!(__maskrune(_c, _f));
168#else /* USE_ASCII */
169 return (_c < 0 || _c >= _CACHED_RUNES) ? 0 :
170 !!(_DefaultRuneLocale.__runetype[_c] & _f);
171#endif /* USE_ASCII */
172}
173
174#ifdef USE_ASCII
175__DARWIN_CTYPE_inline __darwin_ct_rune_t
176__toupper(__darwin_ct_rune_t _c)
177{
178 return _DefaultRuneLocale.__mapupper[_c & 0xff];
179}
180
181__DARWIN_CTYPE_inline __darwin_ct_rune_t
182__tolower(__darwin_ct_rune_t _c)
183{
184 return _DefaultRuneLocale.__maplower[_c & 0xff];
185}
186#else /* !USE_ASCII */
187__BEGIN_DECLS
188__darwin_ct_rune_t __toupper(__darwin_ct_rune_t);
189__darwin_ct_rune_t __tolower(__darwin_ct_rune_t);
190__END_DECLS
191#endif /* USE_ASCII */
192
193__DARWIN_CTYPE_inline int
194__wcwidth(__darwin_ct_rune_t _c)
195{
196 unsigned int _x;
197
198 if (_c == 0)
199 return (0);
200 _x = (unsigned int)__maskrune(_c, _CTYPE_SWM|_CTYPE_R);
201 if ((_x & _CTYPE_SWM) != 0)
202 return ((_x & _CTYPE_SWM) >> _CTYPE_SWS);
203 return ((_x & _CTYPE_R) != 0 ? 1 : -1);
204}
205
206#ifndef _EXTERNALIZE_CTYPE_INLINES_
207
208#define _tolower(c) __tolower(c)
209#define _toupper(c) __toupper(c)
210
211__DARWIN_CTYPE_TOP_inline int
212isalnum(int _c)
213{
214 return (__istype(_c, _CTYPE_A|_CTYPE_D));
215}
216
217__DARWIN_CTYPE_TOP_inline int
218isalpha(int _c)
219{
220 return (__istype(_c, _CTYPE_A));
221}
222
223__DARWIN_CTYPE_TOP_inline int
224isblank(int _c)
225{
226 return (__istype(_c, _CTYPE_B));
227}
228
229__DARWIN_CTYPE_TOP_inline int
230iscntrl(int _c)
231{
232 return (__istype(_c, _CTYPE_C));
233}
234
235/* ANSI -- locale independent */
236__DARWIN_CTYPE_TOP_inline int
237isdigit(int _c)
238{
239 return (__isctype(_c, _CTYPE_D));
240}
241
242__DARWIN_CTYPE_TOP_inline int
243isgraph(int _c)
244{
245 return (__istype(_c, _CTYPE_G));
246}
247
248__DARWIN_CTYPE_TOP_inline int
249islower(int _c)
250{
251 return (__istype(_c, _CTYPE_L));
252}
253
254__DARWIN_CTYPE_TOP_inline int
255isprint(int _c)
256{
257 return (__istype(_c, _CTYPE_R));
258}
259
260__DARWIN_CTYPE_TOP_inline int
261ispunct(int _c)
262{
263 return (__istype(_c, _CTYPE_P));
264}
265
266__DARWIN_CTYPE_TOP_inline int
267isspace(int _c)
268{
269 return (__istype(_c, _CTYPE_S));
270}
271
272__DARWIN_CTYPE_TOP_inline int
273isupper(int _c)
274{
275 return (__istype(_c, _CTYPE_U));
276}
277
278/* ANSI -- locale independent */
279__DARWIN_CTYPE_TOP_inline int
280isxdigit(int _c)
281{
282 return (__isctype(_c, _CTYPE_X));
283}
284
285__DARWIN_CTYPE_TOP_inline int
286toascii(int _c)
287{
288 return (_c & 0x7F);
289}
290
291__DARWIN_CTYPE_TOP_inline int
292tolower(int _c)
293{
294 return (__tolower(_c));
295}
296
297__DARWIN_CTYPE_TOP_inline int
298toupper(int _c)
299{
300 return (__toupper(_c));
301}
302
303#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
304__DARWIN_CTYPE_TOP_inline int
305digittoint(int _c)
306{
307 return (__maskrune(_c, 0x0F));
308}
309
310__DARWIN_CTYPE_TOP_inline int
311ishexnumber(int _c)
312{
313 return (__istype(_c, _CTYPE_X));
314}
315
316__DARWIN_CTYPE_TOP_inline int
317isideogram(int _c)
318{
319 return (__istype(_c, _CTYPE_I));
320}
321
322__DARWIN_CTYPE_TOP_inline int
323isnumber(int _c)
324{
325 return (__istype(_c, _CTYPE_D));
326}
327
328__DARWIN_CTYPE_TOP_inline int
329isphonogram(int _c)
330{
331 return (__istype(_c, _CTYPE_Q));
332}
333
334__DARWIN_CTYPE_TOP_inline int
335isrune(int _c)
336{
337 return (__istype(_c, 0xFFFFFFF0L));
338}
339
340__DARWIN_CTYPE_TOP_inline int
341isspecial(int _c)
342{
343 return (__istype(_c, _CTYPE_T));
344}
345#endif /* !_ANSI_SOURCE && (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
346#endif /* _EXTERNALIZE_CTYPE_INLINES_ */
347
348#else /* not using inlines */
349
350__BEGIN_DECLS
351int isalnum(int);
352int isalpha(int);
353int isblank(int);
354int iscntrl(int);
355int isdigit(int);
356int isgraph(int);
357int islower(int);
358int isprint(int);
359int ispunct(int);
360int isspace(int);
361int isupper(int);
362int isxdigit(int);
363int tolower(int);
364int toupper(int);
365int isascii(int);
366int toascii(int);
367
368#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
369int _tolower(int);
370int _toupper(int);
371int digittoint(int);
372int ishexnumber(int);
373int isideogram(int);
374int isnumber(int);
375int isphonogram(int);
376int isrune(int);
377int isspecial(int);
378#endif
379__END_DECLS
380
381#endif /* using inlines */
382
383#ifdef _USE_EXTENDED_LOCALES_
384#include <xlocale/_ctype.h>
385#endif /* _USE_EXTENDED_LOCALES_ */
386
387#endif /* !_CTYPE_H_ */
lib/libc/include/x86_64-macos-gnu/_locale.h created+76
......@@ -0,0 +1,76 @@
1/*
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. All advertising materials mentioning features or use of this software
14 * must display the following acknowledgement:
15 * This product includes software developed by the University of
16 * California, Berkeley and its contributors.
17 * 4. Neither the name of the University nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)locale.h 8.1 (Berkeley) 6/2/93
34 * $FreeBSD: /repoman/r/ncvs/src/include/locale.h,v 1.7 2002/10/09 09:19:27 tjr Exp $
35 */
36
37#ifndef __LOCALE_H_
38#define __LOCALE_H_
39
40#include <sys/cdefs.h>
41#include <_types.h>
42
43struct lconv {
44 char *decimal_point;
45 char *thousands_sep;
46 char *grouping;
47 char *int_curr_symbol;
48 char *currency_symbol;
49 char *mon_decimal_point;
50 char *mon_thousands_sep;
51 char *mon_grouping;
52 char *positive_sign;
53 char *negative_sign;
54 char int_frac_digits;
55 char frac_digits;
56 char p_cs_precedes;
57 char p_sep_by_space;
58 char n_cs_precedes;
59 char n_sep_by_space;
60 char p_sign_posn;
61 char n_sign_posn;
62 char int_p_cs_precedes;
63 char int_n_cs_precedes;
64 char int_p_sep_by_space;
65 char int_n_sep_by_space;
66 char int_p_sign_posn;
67 char int_n_sign_posn;
68};
69
70#include <sys/_types/_null.h>
71
72__BEGIN_DECLS
73struct lconv *localeconv(void);
74__END_DECLS
75
76#endif /* __LOCALE_H_ */
lib/libc/include/x86_64-macos-gnu/_stdio.h created+159
......@@ -0,0 +1,159 @@
1/*
2 * Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1990, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * This code is derived from software contributed to Berkeley by
28 * Chris Torek.
29 *
30 * Redistribution and use in source and binary forms, with or without
31 * modification, are permitted provided that the following conditions
32 * are met:
33 * 1. Redistributions of source code must retain the above copyright
34 * notice, this list of conditions and the following disclaimer.
35 * 2. Redistributions in binary form must reproduce the above copyright
36 * notice, this list of conditions and the following disclaimer in the
37 * documentation and/or other materials provided with the distribution.
38 * 3. All advertising materials mentioning features or use of this software
39 * must display the following acknowledgement:
40 * This product includes software developed by the University of
41 * California, Berkeley and its contributors.
42 * 4. Neither the name of the University nor the names of its contributors
43 * may be used to endorse or promote products derived from this software
44 * without specific prior written permission.
45 *
46 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
47 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
48 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
49 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
50 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
51 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
52 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
53 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
54 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
55 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
56 * SUCH DAMAGE.
57 *
58 * @(#)stdio.h 8.5 (Berkeley) 4/29/95
59 */
60
61/*
62 * Common header for stdio.h and xlocale/_stdio.h
63 */
64
65#ifndef __STDIO_H_
66#define __STDIO_H_
67
68#include <sys/cdefs.h>
69#include <Availability.h>
70
71#include <_types.h>
72
73/* DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
74 * __gnuc_va_list and include <stdarg.h> */
75#include <sys/_types/_va_list.h>
76#include <sys/_types/_size_t.h>
77#include <sys/_types/_null.h>
78
79#include <sys/stdio.h>
80
81typedef __darwin_off_t fpos_t;
82
83#define _FSTDIO /* Define for new stdio with functions. */
84
85/*
86 * NB: to fit things in six character monocase externals, the stdio
87 * code uses the prefix `__s' for stdio objects, typically followed
88 * by a three-character attempt at a mnemonic.
89 */
90
91/* stdio buffers */
92struct __sbuf {
93 unsigned char *_base;
94 int _size;
95};
96
97/* hold a buncha junk that would grow the ABI */
98struct __sFILEX;
99
100/*
101 * stdio state variables.
102 *
103 * The following always hold:
104 *
105 * if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
106 * _lbfsize is -_bf._size, else _lbfsize is 0
107 * if _flags&__SRD, _w is 0
108 * if _flags&__SWR, _r is 0
109 *
110 * This ensures that the getc and putc macros (or inline functions) never
111 * try to write or read from a file that is in `read' or `write' mode.
112 * (Moreover, they can, and do, automatically switch from read mode to
113 * write mode, and back, on "r+" and "w+" files.)
114 *
115 * _lbfsize is used only to make the inline line-buffered output stream
116 * code as compact as possible.
117 *
118 * _ub, _up, and _ur are used when ungetc() pushes back more characters
119 * than fit in the current _bf, or when ungetc() pushes back a character
120 * that does not match the previous one in _bf. When this happens,
121 * _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
122 * _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
123 *
124 * NB: see WARNING above before changing the layout of this structure!
125 */
126typedef struct __sFILE {
127 unsigned char *_p; /* current position in (some) buffer */
128 int _r; /* read space left for getc() */
129 int _w; /* write space left for putc() */
130 short _flags; /* flags, below; this FILE is free if 0 */
131 short _file; /* fileno, if Unix descriptor, else -1 */
132 struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */
133 int _lbfsize; /* 0 or -_bf._size, for inline putc */
134
135 /* operations */
136 void *_cookie; /* cookie passed to io functions */
137 int (* _Nullable _close)(void *);
138 int (* _Nullable _read) (void *, char *, int);
139 fpos_t (* _Nullable _seek) (void *, fpos_t, int);
140 int (* _Nullable _write)(void *, const char *, int);
141
142 /* separate buffer for long sequences of ungetc() */
143 struct __sbuf _ub; /* ungetc buffer */
144 struct __sFILEX *_extra; /* additions to FILE to not break ABI */
145 int _ur; /* saved _r when _r is counting ungetc data */
146
147 /* tricks to meet minimum requirements even when malloc() fails */
148 unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */
149 unsigned char _nbuf[1]; /* guarantee a getc() buffer */
150
151 /* separate buffer for fgetln() when line crosses buffer boundary */
152 struct __sbuf _lb; /* buffer for fgetln() */
153
154 /* Unix stdio files get aligned to block boundaries on fseek() */
155 int _blksize; /* stat.st_blksize (may be != _bf._size) */
156 fpos_t _offset; /* current lseek offset (see WARNING) */
157} FILE;
158
159#endif /* __STDIO_H_ */
lib/libc/include/x86_64-macos-gnu/_types.h created+69
......@@ -0,0 +1,69 @@
1/*
2 * Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef __TYPES_H_
25#define __TYPES_H_
26
27#include <sys/_types.h>
28#include <machine/_types.h> /* __uint32_t */
29
30#if __GNUC__ > 2 || __GNUC__ == 2 && __GNUC_MINOR__ >= 7
31#define __strfmonlike(fmtarg, firstvararg) \
32 __attribute__((__format__ (__strfmon__, fmtarg, firstvararg)))
33#define __strftimelike(fmtarg) \
34 __attribute__((__format__ (__strftime__, fmtarg, 0)))
35#else
36#define __strfmonlike(fmtarg, firstvararg)
37#define __strftimelike(fmtarg)
38#endif
39
40typedef int __darwin_nl_item;
41typedef int __darwin_wctrans_t;
42#ifdef __LP64__
43typedef __uint32_t __darwin_wctype_t;
44#else /* !__LP64__ */
45typedef unsigned long __darwin_wctype_t;
46#endif /* __LP64__ */
47
48#ifdef __WCHAR_MAX__
49#define __DARWIN_WCHAR_MAX __WCHAR_MAX__
50#else /* ! __WCHAR_MAX__ */
51#define __DARWIN_WCHAR_MAX 0x7fffffff
52#endif /* __WCHAR_MAX__ */
53
54#if __DARWIN_WCHAR_MAX > 0xffffU
55#define __DARWIN_WCHAR_MIN (-0x7fffffff - 1)
56#else
57#define __DARWIN_WCHAR_MIN 0
58#endif
59#define __DARWIN_WEOF ((__darwin_wint_t)-1)
60
61#ifndef _FORTIFY_SOURCE
62# if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__-0) < 1050)
63# define _FORTIFY_SOURCE 0
64# else
65# define _FORTIFY_SOURCE 2 /* on by default */
66# endif
67#endif
68
69#endif /* __TYPES_H_ */
lib/libc/include/x86_64-macos-gnu/_types/_intmax_t.h created+40
......@@ -0,0 +1,40 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _INTMAX_T
30#define _INTMAX_T
31#ifdef __INTMAX_TYPE__
32typedef __INTMAX_TYPE__ intmax_t;
33#else
34#ifdef __LP64__
35typedef long int intmax_t;
36#else
37typedef long long int intmax_t;
38#endif /* __LP64__ */
39#endif /* __INTMAX_TYPE__ */
40#endif /* _INTMAX_T */
lib/libc/include/x86_64-macos-gnu/_types/_uint16_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _UINT16_T
30#define _UINT16_T
31typedef unsigned short uint16_t;
32#endif /* _UINT16_T */
lib/libc/include/x86_64-macos-gnu/_types/_uint32_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _UINT32_T
30#define _UINT32_T
31typedef unsigned int uint32_t;
32#endif /* _UINT32_T */
lib/libc/include/x86_64-macos-gnu/_types/_uint64_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _UINT64_T
30#define _UINT64_T
31typedef unsigned long long uint64_t;
32#endif /* _UINT64_T */
lib/libc/include/x86_64-macos-gnu/_types/_uint8_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _UINT8_T
30#define _UINT8_T
31typedef unsigned char uint8_t;
32#endif /* _UINT8_T */
lib/libc/include/x86_64-macos-gnu/_types/_uintmax_t.h created+40
......@@ -0,0 +1,40 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _UINTMAX_T
30#define _UINTMAX_T
31#ifdef __UINTMAX_TYPE__
32typedef __UINTMAX_TYPE__ uintmax_t;
33#else
34#ifdef __LP64__
35typedef long unsigned int uintmax_t;
36#else
37typedef long long unsigned int uintmax_t;
38#endif /* __LP64__ */
39#endif /* __UINTMAX_TYPE__ */
40#endif /* _UINTMAX_T */
lib/libc/include/x86_64-macos-gnu/_types/_wctrans_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _WCTRANS_T
30#define _WCTRANS_T
31#include <_types.h>
32typedef __darwin_wctrans_t wctrans_t;
33#endif /* _WCTRANS_T */
\ No newline at end of file
lib/libc/include/x86_64-macos-gnu/_types/_wctype_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _WCTYPE_T
30#define _WCTYPE_T
31#include <_types.h>
32typedef __darwin_wctype_t wctype_t;
33#endif /* _WCTYPE_T */
\ No newline at end of file
lib/libc/include/x86_64-macos-gnu/_wctype.h created+164
......@@ -0,0 +1,164 @@
1/*-
2 * Copyright (c)1999 Citrus Project,
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 */
27
28/*
29 * Common header for wctype.h and wchar.h
30 *
31 * Contains everything required by wctype.h except:
32 *
33 * #include <_types/_wctrans_t.h>
34 * int iswblank(wint_t);
35 * wint_t towctrans(wint_t, wctrans_t);
36 * wctrans_t wctrans(const char *);
37 */
38
39#ifndef __WCTYPE_H_
40#define __WCTYPE_H_
41
42#include <__wctype.h>
43
44/*
45 * Use inline functions if we are allowed to and the compiler supports them.
46 */
47#if !defined(_DONT_USE_CTYPE_INLINE_) && \
48 (defined(_USE_CTYPE_INLINE_) || defined(__GNUC__) || defined(__cplusplus))
49
50__DARWIN_WCTYPE_TOP_inline int
51iswalnum(wint_t _wc)
52{
53 return (__istype(_wc, _CTYPE_A|_CTYPE_D));
54}
55
56__DARWIN_WCTYPE_TOP_inline int
57iswalpha(wint_t _wc)
58{
59 return (__istype(_wc, _CTYPE_A));
60}
61
62__DARWIN_WCTYPE_TOP_inline int
63iswcntrl(wint_t _wc)
64{
65 return (__istype(_wc, _CTYPE_C));
66}
67
68__DARWIN_WCTYPE_TOP_inline int
69iswctype(wint_t _wc, wctype_t _charclass)
70{
71 return (__istype(_wc, _charclass));
72}
73
74__DARWIN_WCTYPE_TOP_inline int
75iswdigit(wint_t _wc)
76{
77 return (__isctype(_wc, _CTYPE_D));
78}
79
80__DARWIN_WCTYPE_TOP_inline int
81iswgraph(wint_t _wc)
82{
83 return (__istype(_wc, _CTYPE_G));
84}
85
86__DARWIN_WCTYPE_TOP_inline int
87iswlower(wint_t _wc)
88{
89 return (__istype(_wc, _CTYPE_L));
90}
91
92__DARWIN_WCTYPE_TOP_inline int
93iswprint(wint_t _wc)
94{
95 return (__istype(_wc, _CTYPE_R));
96}
97
98__DARWIN_WCTYPE_TOP_inline int
99iswpunct(wint_t _wc)
100{
101 return (__istype(_wc, _CTYPE_P));
102}
103
104__DARWIN_WCTYPE_TOP_inline int
105iswspace(wint_t _wc)
106{
107 return (__istype(_wc, _CTYPE_S));
108}
109
110__DARWIN_WCTYPE_TOP_inline int
111iswupper(wint_t _wc)
112{
113 return (__istype(_wc, _CTYPE_U));
114}
115
116__DARWIN_WCTYPE_TOP_inline int
117iswxdigit(wint_t _wc)
118{
119 return (__isctype(_wc, _CTYPE_X));
120}
121
122__DARWIN_WCTYPE_TOP_inline wint_t
123towlower(wint_t _wc)
124{
125 return (__tolower(_wc));
126}
127
128__DARWIN_WCTYPE_TOP_inline wint_t
129towupper(wint_t _wc)
130{
131 return (__toupper(_wc));
132}
133
134#else /* not using inlines */
135
136__BEGIN_DECLS
137int iswalnum(wint_t);
138int iswalpha(wint_t);
139int iswcntrl(wint_t);
140int iswctype(wint_t, wctype_t);
141int iswdigit(wint_t);
142int iswgraph(wint_t);
143int iswlower(wint_t);
144int iswprint(wint_t);
145int iswpunct(wint_t);
146int iswspace(wint_t);
147int iswupper(wint_t);
148int iswxdigit(wint_t);
149wint_t towlower(wint_t);
150wint_t towupper(wint_t);
151__END_DECLS
152
153#endif /* using inlines */
154
155__BEGIN_DECLS
156wctype_t
157 wctype(const char *);
158__END_DECLS
159
160#ifdef _USE_EXTENDED_LOCALES_
161#include <xlocale/__wctype.h>
162#endif /* _USE_EXTENDED_LOCALES_ */
163
164#endif /* __WCTYPE_H_ */
lib/libc/include/x86_64-macos-gnu/alloca.h created+43
......@@ -0,0 +1,43 @@
1/*
2 * Copyright (c) 2003 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _ALLOCA_H_
25#define _ALLOCA_H_
26
27#include <sys/cdefs.h>
28#include <_types.h>
29#include <sys/_types/_size_t.h>
30
31__BEGIN_DECLS
32void *alloca(size_t); /* built-in for gcc */
33__END_DECLS
34
35#if defined(__GNUC__) && __GNUC__ >= 3
36/* built-in for gcc 3 */
37#undef alloca
38#undef __alloca
39#define alloca(size) __alloca(size)
40#define __alloca(size) __builtin_alloca(size)
41#endif
42
43#endif /* _ALLOCA_H_ */
lib/libc/include/x86_64-macos-gnu/assert.h created+111
......@@ -0,0 +1,111 @@
1/*-
2 * Copyright (c) 1992, 1993
3 * The Regents of the University of California. All rights reserved.
4 * (c) UNIX System Laboratories, Inc.
5 * All or some portions of this file are derived from material licensed
6 * to the University of California by American Telephone and Telegraph
7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
8 * the permission of UNIX System Laboratories, Inc.
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 * 1. Redistributions of source code must retain the above copyright
14 * notice, this list of conditions and the following disclaimer.
15 * 2. Redistributions in binary form must reproduce the above copyright
16 * notice, this list of conditions and the following disclaimer in the
17 * documentation and/or other materials provided with the distribution.
18 * 3. All advertising materials mentioning features or use of this software
19 * must display the following acknowledgement:
20 * This product includes software developed by the University of
21 * California, Berkeley and its contributors.
22 * 4. Neither the name of the University nor the names of its contributors
23 * may be used to endorse or promote products derived from this software
24 * without specific prior written permission.
25 *
26 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
27 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
29 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
30 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 * SUCH DAMAGE.
37 *
38 * @(#)assert.h 8.2 (Berkeley) 1/21/94
39 * $FreeBSD: src/include/assert.h,v 1.4 2002/03/23 17:24:53 imp Exp $
40 */
41
42#include <sys/cdefs.h>
43#ifdef __cplusplus
44#include <stdlib.h>
45#endif /* __cplusplus */
46
47/*
48 * Unlike other ANSI header files, <assert.h> may usefully be included
49 * multiple times, with and without NDEBUG defined.
50 */
51
52#undef assert
53#undef __assert
54
55#ifdef NDEBUG
56#define assert(e) ((void)0)
57#else
58
59#ifndef __GNUC__
60
61__BEGIN_DECLS
62#ifndef __cplusplus
63void abort(void) __dead2 __cold;
64#endif /* !__cplusplus */
65int printf(const char * __restrict, ...);
66__END_DECLS
67
68#define assert(e) \
69 ((void) ((e) ? ((void)0) : __assert (#e, __FILE__, __LINE__)))
70#define __assert(e, file, line) \
71 ((void)printf ("%s:%d: failed assertion `%s'\n", file, line, e), abort())
72
73#else /* __GNUC__ */
74
75__BEGIN_DECLS
76void __assert_rtn(const char *, const char *, int, const char *) __dead2 __cold __disable_tail_calls;
77#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__-0) < 1070)
78void __eprintf(const char *, const char *, unsigned, const char *) __dead2 __cold;
79#endif
80__END_DECLS
81
82#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__-0) < 1070)
83#define __assert(e, file, line) \
84 __eprintf ("%s:%d: failed assertion `%s'\n", file, line, e)
85#else
86/* 8462256: modified __assert_rtn() replaces deprecated __eprintf() */
87#define __assert(e, file, line) \
88 __assert_rtn ((const char *)-1L, file, line, e)
89#endif
90
91#if __DARWIN_UNIX03
92#define assert(e) \
93 (__builtin_expect(!(e), 0) ? __assert_rtn(__func__, __FILE__, __LINE__, #e) : (void)0)
94#else /* !__DARWIN_UNIX03 */
95#define assert(e) \
96 (__builtin_expect(!(e), 0) ? __assert (#e, __FILE__, __LINE__) : (void)0)
97#endif /* __DARWIN_UNIX03 */
98
99#endif /* __GNUC__ */
100#endif /* NDEBUG */
101
102#ifndef _ASSERT_H_
103#define _ASSERT_H_
104
105#ifndef __cplusplus
106#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
107#define static_assert _Static_assert
108#endif /* __STDC_VERSION__ */
109#endif /* !__cplusplus */
110
111#endif /* _ASSERT_H_ */
lib/libc/include/x86_64-macos-gnu/complex.h created+167
......@@ -0,0 +1,167 @@
1/*
2 * Copyright (c) 2002-2013 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22
23/******************************************************************************
24 * *
25 * File: complex.h *
26 * *
27 * Contains: prototypes and macros germane to C99 complex math. *
28 * *
29 ******************************************************************************/
30
31#ifndef __COMPLEX_H__
32#define __COMPLEX_H__
33
34#include <sys/cdefs.h>
35
36#undef complex
37#define complex _Complex
38#undef _Complex_I
39/* Constant expression of type const float _Complex */
40#define _Complex_I (__extension__ 1.0iF)
41#undef I
42#define I _Complex_I
43
44#if (__STDC_VERSION__ > 199901L || __DARWIN_C_LEVEL >= __DARWIN_C_FULL) \
45 && defined __clang__
46
47/* Complex initializer macros. These are a C11 feature, but are also provided
48 as an extension in C99 so long as strict POSIX conformance is not
49 requested. They are available only when building with the llvm-clang
50 compiler, as there is no way to support them with the gcc-4.2 frontend.
51 These may be used for static initialization of complex values, like so:
52
53 static const float complex someVariable = CMPLXF(1.0, INFINITY);
54
55 they may, of course, be used outside of static contexts as well. */
56
57#define CMPLX(__real,__imag) \
58 _Pragma("clang diagnostic push") \
59 _Pragma("clang diagnostic ignored \"-Wcomplex-component-init\"") \
60 (double _Complex){(__real),(__imag)} \
61 _Pragma("clang diagnostic pop")
62
63#define CMPLXF(__real,__imag) \
64 _Pragma("clang diagnostic push") \
65 _Pragma("clang diagnostic ignored \"-Wcomplex-component-init\"") \
66 (float _Complex){(__real),(__imag)} \
67 _Pragma("clang diagnostic pop")
68
69#define CMPLXL(__real,__imag) \
70 _Pragma("clang diagnostic push") \
71 _Pragma("clang diagnostic ignored \"-Wcomplex-component-init\"") \
72 (long double _Complex){(__real),(__imag)} \
73 _Pragma("clang diagnostic pop")
74
75#endif /* End C11 features. */
76
77__BEGIN_DECLS
78extern float complex cacosf(float complex);
79extern double complex cacos(double complex);
80extern long double complex cacosl(long double complex);
81
82extern float complex casinf(float complex);
83extern double complex casin(double complex);
84extern long double complex casinl(long double complex);
85
86extern float complex catanf(float complex);
87extern double complex catan(double complex);
88extern long double complex catanl(long double complex);
89
90extern float complex ccosf(float complex);
91extern double complex ccos(double complex);
92extern long double complex ccosl(long double complex);
93
94extern float complex csinf(float complex);
95extern double complex csin(double complex);
96extern long double complex csinl(long double complex);
97
98extern float complex ctanf(float complex);
99extern double complex ctan(double complex);
100extern long double complex ctanl(long double complex);
101
102extern float complex cacoshf(float complex);
103extern double complex cacosh(double complex);
104extern long double complex cacoshl(long double complex);
105
106extern float complex casinhf(float complex);
107extern double complex casinh(double complex);
108extern long double complex casinhl(long double complex);
109
110extern float complex catanhf(float complex);
111extern double complex catanh(double complex);
112extern long double complex catanhl(long double complex);
113
114extern float complex ccoshf(float complex);
115extern double complex ccosh(double complex);
116extern long double complex ccoshl(long double complex);
117
118extern float complex csinhf(float complex);
119extern double complex csinh(double complex);
120extern long double complex csinhl(long double complex);
121
122extern float complex ctanhf(float complex);
123extern double complex ctanh(double complex);
124extern long double complex ctanhl(long double complex);
125
126extern float complex cexpf(float complex);
127extern double complex cexp(double complex);
128extern long double complex cexpl(long double complex);
129
130extern float complex clogf(float complex);
131extern double complex clog(double complex);
132extern long double complex clogl(long double complex);
133
134extern float cabsf(float complex);
135extern double cabs(double complex);
136extern long double cabsl(long double complex);
137
138extern float complex cpowf(float complex, float complex);
139extern double complex cpow(double complex, double complex);
140extern long double complex cpowl(long double complex, long double complex);
141
142extern float complex csqrtf(float complex);
143extern double complex csqrt(double complex);
144extern long double complex csqrtl(long double complex);
145
146extern float cargf(float complex);
147extern double carg(double complex);
148extern long double cargl(long double complex);
149
150extern float cimagf(float complex);
151extern double cimag(double complex);
152extern long double cimagl(long double complex);
153
154extern float complex conjf(float complex);
155extern double complex conj(double complex);
156extern long double complex conjl(long double complex);
157
158extern float complex cprojf(float complex);
159extern double complex cproj(double complex);
160extern long double complex cprojl(long double complex);
161
162extern float crealf(float complex);
163extern double creal(double complex);
164extern long double creall(long double complex);
165__END_DECLS
166
167#endif /* __COMPLEX_H__ */
lib/libc/include/x86_64-macos-gnu/ctype.h created+75
......@@ -0,0 +1,75 @@
1/*
2 * Copyright (c) 2000, 2005, 2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24 * Copyright (c) 1989, 1993
25 * The Regents of the University of California. All rights reserved.
26 * (c) UNIX System Laboratories, Inc.
27 * All or some portions of this file are derived from material licensed
28 * to the University of California by American Telephone and Telegraph
29 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
30 * the permission of UNIX System Laboratories, Inc.
31 *
32 * This code is derived from software contributed to Berkeley by
33 * Paul Borman at Krystal Technologies.
34 *
35 * Redistribution and use in source and binary forms, with or without
36 * modification, are permitted provided that the following conditions
37 * are met:
38 * 1. Redistributions of source code must retain the above copyright
39 * notice, this list of conditions and the following disclaimer.
40 * 2. Redistributions in binary form must reproduce the above copyright
41 * notice, this list of conditions and the following disclaimer in the
42 * documentation and/or other materials provided with the distribution.
43 * 3. All advertising materials mentioning features or use of this software
44 * must display the following acknowledgement:
45 * This product includes software developed by the University of
46 * California, Berkeley and its contributors.
47 * 4. Neither the name of the University nor the names of its contributors
48 * may be used to endorse or promote products derived from this software
49 * without specific prior written permission.
50 *
51 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
52 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
53 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
55 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
59 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
60 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
61 * SUCH DAMAGE.
62 *
63 * @(#)ctype.h 8.4 (Berkeley) 1/21/94
64 */
65
66#ifndef _CTYPE_H_
67#define _CTYPE_H_
68
69#include <_ctype.h>
70
71#ifdef _USE_EXTENDED_LOCALES_
72#include <xlocale/_ctype.h>
73#endif /* _USE_EXTENDED_LOCALES_ */
74
75#endif /* !_CTYPE_H_ */
lib/libc/include/x86_64-macos-gnu/errno.h created+24
......@@ -0,0 +1,24 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23#include <sys/errno.h>
24
lib/libc/include/x86_64-macos-gnu/fenv.h created+361
......@@ -0,0 +1,361 @@
1/*
2 * Copyright (c) 2002-2013 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22
23/******************************************************************************
24 * *
25 * File: fenv.h *
26 * *
27 * Contains: typedefs and prototypes for C99 floating point environment. *
28 * *
29 * A collection of functions designed to provide access to the floating *
30 * point environment for numerical programming. It is compliant with the *
31 * floating-point requirements in C99. *
32 * *
33 * The file <fenv.h> declares many functions in support of numerical *
34 * programming. Programs that test flags or run under non-default mode *
35 * must do so under the effect of an enabling "fenv_access" pragma: *
36 * *
37 * #pragma STDC FENV_ACCESS on *
38 * *
39 ******************************************************************************/
40
41#ifndef __FENV_H__
42#define __FENV_H__
43
44#ifdef __cplusplus
45extern "C" {
46#endif
47
48/******************************************************************************
49 * *
50 * Architecture-specific types and macros. *
51 * *
52 * fenv_t a type for representing the entire floating-point *
53 * environment in a single object. *
54 * *
55 * fexcept_t a type for representing the floating-point *
56 * exception flag state collectively. *
57 * *
58 * FE_INEXACT macros representing the various floating-point *
59 * FE_UNDERFLOW exceptions. *
60 * FE_OVERFLOW *
61 * FE_DIVBYZERO *
62 * FE_INVALID *
63 * FE_ALL_EXCEPT *
64 * *
65 * FE_TONEAREST macros representing the various floating-point *
66 * FE_UPWARD rounding modes *
67 * FE_DOWNWARD *
68 * FE_TOWARDZERO *
69 * *
70 * FE_DFL_ENV a macro expanding to a pointer to an object *
71 * representing the default floating-point environemnt *
72 * *
73 ******************************************************************************/
74
75/******************************************************************************
76 * ARM definitions of architecture-specific types and macros. *
77 ******************************************************************************/
78
79#if defined __arm__ && !defined __SOFTFP__
80
81typedef struct {
82 unsigned int __fpscr;
83 unsigned int __reserved0;
84 unsigned int __reserved1;
85 unsigned int __reserved2;
86} fenv_t;
87
88typedef unsigned short fexcept_t;
89
90#define FE_INEXACT 0x0010
91#define FE_UNDERFLOW 0x0008
92#define FE_OVERFLOW 0x0004
93#define FE_DIVBYZERO 0x0002
94#define FE_INVALID 0x0001
95/* FE_FLUSHTOZERO
96 An ARM-specific flag that is raised when a denormal is flushed to zero.
97 This is also called the "input denormal exception" */
98#define FE_FLUSHTOZERO 0x0080
99#define FE_ALL_EXCEPT 0x009f
100
101#define FE_TONEAREST 0x00000000
102#define FE_UPWARD 0x00400000
103#define FE_DOWNWARD 0x00800000
104#define FE_TOWARDZERO 0x00C00000
105
106/* Masks for values that may be controlled in the FPSCR. Modifying any other
107 bits invokes undefined behavior. */
108enum {
109 __fpscr_trap_invalid = 0x00000100,
110 __fpscr_trap_divbyzero = 0x00000200,
111 __fpscr_trap_overflow = 0x00000400,
112 __fpscr_trap_underflow = 0x00000800,
113 __fpscr_trap_inexact = 0x00001000,
114 __fpscr_trap_denormal = 0x00008000,
115 __fpscr_flush_to_zero = 0x01000000,
116 __fpscr_default_nan = 0x02000000,
117 __fpscr_saturation = 0x08000000,
118};
119
120extern const fenv_t _FE_DFL_ENV;
121#define FE_DFL_ENV &_FE_DFL_ENV
122
123/******************************************************************************
124 * ARM64 definitions of architecture-specific types and macros. *
125 ******************************************************************************/
126
127#elif defined __arm64__
128
129typedef struct {
130 unsigned long long __fpsr;
131 unsigned long long __fpcr;
132} fenv_t;
133
134typedef unsigned short fexcept_t;
135
136#define FE_INEXACT 0x0010
137#define FE_UNDERFLOW 0x0008
138#define FE_OVERFLOW 0x0004
139#define FE_DIVBYZERO 0x0002
140#define FE_INVALID 0x0001
141/* FE_FLUSHTOZERO
142 An ARM-specific flag that is raised when a denormal is flushed to zero.
143 This is also called the "input denormal exception" */
144#define FE_FLUSHTOZERO 0x0080
145#define FE_ALL_EXCEPT 0x009f
146
147#define FE_TONEAREST 0x00000000
148#define FE_UPWARD 0x00400000
149#define FE_DOWNWARD 0x00800000
150#define FE_TOWARDZERO 0x00C00000
151
152/* Masks for values that may be controlled in the FPCR. Modifying any other
153 bits invokes undefined behavior. */
154enum {
155 __fpcr_trap_invalid = 0x00000100,
156 __fpcr_trap_divbyzero = 0x00000200,
157 __fpcr_trap_overflow = 0x00000400,
158 __fpcr_trap_underflow = 0x00000800,
159 __fpcr_trap_inexact = 0x00001000,
160 __fpcr_trap_denormal = 0x00008000,
161 __fpcr_flush_to_zero = 0x01000000,
162};
163
164/* Mask for the QC bit of the FPSR */
165enum { __fpsr_saturation = 0x08000000 };
166
167extern const fenv_t _FE_DFL_ENV;
168#define FE_DFL_ENV &_FE_DFL_ENV
169
170/* FE_DFL_DISABLE_DENORMS_ENV
171
172 A pointer to a fenv_t object with the default floating-point state modified
173 to set the FZ (flush to zero) bit in the FPCR. When using this environment
174 denormals encountered by floating-point calculations will be treated as
175 zero. Denormal results of floating-point operations will also be treated
176 as zero. This calculation mode is not IEEE-754 compliant, but it may
177 prevent lengthy stalls that occur in code that encounters denormals. It is
178 suggested that you do not use this mode unless you have established that
179 denormals are the source of measurable performance problems.
180
181 Note that the math library, and other system libraries, are not guaranteed
182 to do the right thing if called in this mode. Edge cases may be incorrect.
183 Use at your own risk. */
184extern const fenv_t _FE_DFL_DISABLE_DENORMS_ENV;
185#define FE_DFL_DISABLE_DENORMS_ENV &_FE_DFL_DISABLE_DENORMS_ENV
186
187/******************************************************************************
188 * x86 definitions of architecture-specific types and macros. *
189 ******************************************************************************/
190
191#elif defined __i386__ || defined __x86_64__
192
193typedef struct {
194 unsigned short __control; /* x87 control word */
195 unsigned short __status; /* x87 status word */
196 unsigned int __mxcsr; /* SSE status/control register */
197 char __reserved[8]; /* Reserved for future expansion */
198} fenv_t;
199
200typedef unsigned short fexcept_t;
201
202#define FE_INEXACT 0x0020
203#define FE_UNDERFLOW 0x0010
204#define FE_OVERFLOW 0x0008
205#define FE_DIVBYZERO 0x0004
206#define FE_INVALID 0x0001
207/* FE_DENORMALOPERAND
208 An Intel-specific flag that is raised when an operand to a floating-point
209 arithmetic operation is denormal, or a single- or double-precision denormal
210 value is loaded on the x87 stack. This flag is not raised by SSE
211 arithmetic when the DAZ control bit is set. */
212#define FE_DENORMALOPERAND 0x0002
213#define FE_ALL_EXCEPT 0x003f
214
215#define FE_TONEAREST 0x0000
216#define FE_DOWNWARD 0x0400
217#define FE_UPWARD 0x0800
218#define FE_TOWARDZERO 0x0c00
219
220extern const fenv_t _FE_DFL_ENV;
221#define FE_DFL_ENV &_FE_DFL_ENV
222
223/* FE_DFL_DISABLE_SSE_DENORMS_ENV
224
225 A pointer to a fenv_t object with the default floating-point state modifed
226 to set the DAZ and FZ bits in the SSE status/control register. When using
227 this environment, denormals encountered by SSE based calculation (which
228 normally should be all single and double precision scalar floating point
229 calculations, and all SSE/SSE2/SSE3 computation) will be treated as zero.
230 Calculation results that are denormals will also be truncated to zero.
231 This calculation mode is not IEEE-754 compliant, but may prevent lengthy
232 stalls that occur in code that encounters denormals. It is suggested that
233 you do not use this mode unless you have established that denormals are
234 causing trouble for your code. Please use wisely.
235
236 CAUTION: The math library currently is not architected to do the right
237 thing in the face of DAZ + FZ mode. For example, ceil( +denormal) might
238 return +denormal rather than 1.0 in some versions of MacOS X. In some
239 circumstances this may lead to unexpected application behavior. Use at
240 your own risk.
241
242 It is not possible to disable denormal stalls for calculations performed
243 on the x87 FPU */
244extern const fenv_t _FE_DFL_DISABLE_SSE_DENORMS_ENV;
245#define FE_DFL_DISABLE_SSE_DENORMS_ENV &_FE_DFL_DISABLE_SSE_DENORMS_ENV
246
247/******************************************************************************
248 * Totally generic definitions and macros if we don't know anything about *
249 * the target platform, or if the platform does not have hardware floating- *
250 * point support. *
251 ******************************************************************************/
252
253#else /* Unknown architectures */
254
255typedef int fenv_t;
256typedef unsigned short fexcept_t;
257#define FE_ALL_EXCEPT 0
258#define FE_TONEAREST 0
259extern const fenv_t _FE_DFL_ENV;
260#define FE_DFL_ENV &_FE_DFL_ENV
261
262#endif
263
264/******************************************************************************
265 * The following functions provide high level access to the exception flags. *
266 * The "int" input argument can be constructed by bitwise ORs of the *
267 * exception macros: for example: FE_OVERFLOW | FE_INEXACT. *
268 * *
269 * The function "feclearexcept" clears the supported floating point *
270 * exceptions represented by its argument. *
271 * *
272 * The function "fegetexceptflag" stores a implementation-defined *
273 * representation of the states of the floating-point status flags indicated *
274 * by its integer argument excepts in the object pointed to by the argument, *
275 * flagp. *
276 * *
277 * The function "feraiseexcept" raises the supported floating-point *
278 * exceptions represented by its argument. The order in which these *
279 * floating-point exceptions are raised is unspecified. *
280 * *
281 * The function "fesetexceptflag" sets or clears the floating point status *
282 * flags indicated by the argument excepts to the states stored in the *
283 * object pointed to by flagp. The value of the *flagp shall have been set *
284 * by a previous call to fegetexceptflag whose second argument represented *
285 * at least those floating-point exceptions represented by the argument *
286 * excepts. This function does not raise floating-point exceptions; it just *
287 * sets the state of the flags. *
288 * *
289 * The function "fetestexcept" determines which of the specified subset of *
290 * the floating-point exception flags are currently set. The excepts *
291 * argument specifies the floating-point status flags to be queried. This *
292 * function returns the value of the bitwise OR of the floating-point *
293 * exception macros corresponding to the currently set floating-point *
294 * exceptions included in excepts. *
295 ******************************************************************************/
296
297extern int feclearexcept(int /* excepts */);
298extern int fegetexceptflag(fexcept_t * /* flagp */, int /* excepts */);
299extern int feraiseexcept(int /* excepts */);
300extern int fesetexceptflag(const fexcept_t * /* flagp */, int /* excepts */);
301extern int fetestexcept(int /* excepts */);
302
303/******************************************************************************
304 * The following functions provide control of rounding direction modes. *
305 * *
306 * The function "fegetround" returns the value of the rounding direction *
307 * macro which represents the current rounding direction, or a negative *
308 * if there is no such rounding direction macro or the current rounding *
309 * direction is not determinable. *
310 * *
311 * The function "fesetround" establishes the rounding direction represented *
312 * by its argument "round". If the argument is not equal to the value of a *
313 * rounding direction macro, the rounding direction is not changed. It *
314 * returns zero if and only if the argument is equal to a rounding *
315 * direction macro. *
316 ******************************************************************************/
317
318extern int fegetround(void);
319extern int fesetround(int /* round */);
320
321/******************************************************************************
322 * The following functions manage the floating-point environment, exception *
323 * flags and dynamic modes, as one entity. *
324 * *
325 * The fegetenv function stores the current floating-point enviornment in *
326 * the object pointed to by envp. *
327 * *
328 * The feholdexcept function saves the current floating-point environment in *
329 * the object pointed to by envp, clears the floating-point status flags, *
330 * and then installs a non-stop (continue on floating-point exceptions) *
331 * mode, if available, for all floating-point exceptions. The feholdexcept *
332 * function returns zero if and only if non-stop floating-point exceptions *
333 * handling was successfully installed. *
334 * *
335 * The fesetnv function establishes the floating-point environment *
336 * represented by the object pointed to by envp. The argument envp shall *
337 * point to an object set by a call to fegetenv or feholdexcept, or equal to *
338 * a floating-point environment macro to be C99 standard compliant and *
339 * portable to other architectures. Note that fesetnv merely installs the *
340 * state of the floating-point status flags represented through its *
341 * argument, and does not raise these floating-point exceptions. *
342 * *
343 * The feupdateenv function saves the currently raised floating-point *
344 * exceptions in its automatic storage, installs the floating-point *
345 * environment represented by the object pointed to by envp, and then raises *
346 * the saved floating-point exceptions. The argument envp shall point to an *
347 * object set by a call to feholdexcept or fegetenv or equal a *
348 * floating-point environment macro. *
349 ******************************************************************************/
350
351extern int fegetenv(fenv_t * /* envp */);
352extern int feholdexcept(fenv_t * /* envp */);
353extern int fesetenv(const fenv_t * /* envp */);
354extern int feupdateenv(const fenv_t * /* envp */);
355
356#ifdef __cplusplus
357}
358#endif
359
360#endif /* __FENV_H__ */
361
lib/libc/include/x86_64-macos-gnu/float.h created+140
......@@ -0,0 +1,140 @@
1/* Copyright (c) 2017 Apple Inc. All rights reserved.
2 *
3 * @APPLE_LICENSE_HEADER_START@
4 *
5 * The contents of this file constitute Original Code as defined in and
6 * are subject to the Apple Public Source License Version 1.1 (the
7 * "License"). You may not use this file except in compliance with the
8 * License. Please obtain a copy of the License at
9 * http://www.apple.com/publicsource and read it before using this file.
10 *
11 * This Original Code and all software distributed under the License are
12 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
13 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
14 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
15 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
16 * License for the specific language governing rights and limitations
17 * under the License.
18 *
19 * @APPLE_LICENSE_HEADER_END@
20 */
21
22#ifndef __FLOAT_H
23#define __FLOAT_H
24
25/* Undefine anything that we'll be redefining below. */
26#undef FLT_EVAL_METHOD
27#undef FLT_ROUNDS
28#undef FLT_RADIX
29#undef FLT_MANT_DIG
30#undef DBL_MANT_DIG
31#undef LDBL_MANT_DIG
32#undef FLT_DIG
33#undef DBL_DIG
34#undef LDBL_DIG
35#undef FLT_MIN_EXP
36#undef DBL_MIN_EXP
37#undef LDBL_MIN_EXP
38#undef FLT_MIN_10_EXP
39#undef DBL_MIN_10_EXP
40#undef LDBL_MIN_10_EXP
41#undef FLT_MAX_EXP
42#undef DBL_MAX_EXP
43#undef LDBL_MAX_EXP
44#undef FLT_MAX_10_EXP
45#undef DBL_MAX_10_EXP
46#undef LDBL_MAX_10_EXP
47#undef FLT_MAX
48#undef DBL_MAX
49#undef LDBL_MAX
50#undef FLT_EPSILON
51#undef DBL_EPSILON
52#undef LDBL_EPSILON
53#undef FLT_MIN
54#undef DBL_MIN
55#undef LDBL_MIN
56
57#if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__)
58# undef DECIMAL_DIG
59#endif
60
61#if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__)
62# undef FLT_HAS_SUBNORM
63# undef DBL_HAS_SUBNORM
64# undef LDBL_HAS_SUBNORM
65# undef FLT_TRUE_MIN
66# undef DBL_TRUE_MIN
67# undef LDBL_TRUE_MIN
68# undef FLT_DECIMAL_DIG
69# undef DBL_DECIMAL_DIG
70# undef LDBL_DECIMAL_DIG
71#endif
72
73/* Characteristics of floating point types, C99 5.2.4.2.2 */
74
75#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
76#define FLT_ROUNDS (__builtin_flt_rounds())
77#define FLT_RADIX __FLT_RADIX__
78
79#define FLT_MANT_DIG __FLT_MANT_DIG__
80#define DBL_MANT_DIG __DBL_MANT_DIG__
81#define LDBL_MANT_DIG __LDBL_MANT_DIG__
82
83#define FLT_DIG __FLT_DIG__
84#define DBL_DIG __DBL_DIG__
85#define LDBL_DIG __LDBL_DIG__
86
87#define FLT_MIN_EXP __FLT_MIN_EXP__
88#define DBL_MIN_EXP __DBL_MIN_EXP__
89#define LDBL_MIN_EXP __LDBL_MIN_EXP__
90
91#define FLT_MIN_10_EXP __FLT_MIN_10_EXP__
92#define DBL_MIN_10_EXP __DBL_MIN_10_EXP__
93#define LDBL_MIN_10_EXP __LDBL_MIN_10_EXP__
94
95#define FLT_MAX_EXP __FLT_MAX_EXP__
96#define DBL_MAX_EXP __DBL_MAX_EXP__
97#define LDBL_MAX_EXP __LDBL_MAX_EXP__
98
99#define FLT_MAX_10_EXP __FLT_MAX_10_EXP__
100#define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
101#define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__
102
103#define FLT_MAX __FLT_MAX__
104#define DBL_MAX __DBL_MAX__
105#define LDBL_MAX __LDBL_MAX__
106
107#define FLT_EPSILON __FLT_EPSILON__
108#define DBL_EPSILON __DBL_EPSILON__
109#define LDBL_EPSILON __LDBL_EPSILON__
110
111#define FLT_MIN __FLT_MIN__
112#define DBL_MIN __DBL_MIN__
113#define LDBL_MIN __LDBL_MIN__
114
115#if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__)
116# define DECIMAL_DIG __DECIMAL_DIG__
117#endif
118
119#if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__)
120# if defined __arm__ /* On 32-bit arm, denorms are not supported. */
121# define FLT_HAS_SUBNORM 0
122# define DBL_HAS_SUBNORM 0
123# define LDBL_HAS_SUBNORM 0
124# define FLT_TRUE_MIN __FLT_MIN__
125# define DBL_TRUE_MIN __DBL_MIN__
126# define LDBL_TRUE_MIN __LDBL_MIN__
127# else /* All Apple platforms except 32-bit arm have denorms. */
128# define FLT_HAS_SUBNORM 1
129# define DBL_HAS_SUBNORM 1
130# define LDBL_HAS_SUBNORM 1
131# define FLT_TRUE_MIN __FLT_DENORM_MIN__
132# define DBL_TRUE_MIN __DBL_DENORM_MIN__
133# define LDBL_TRUE_MIN __LDBL_DENORM_MIN__
134# endif
135# define FLT_DECIMAL_DIG __FLT_DECIMAL_DIG__
136# define DBL_DECIMAL_DIG __DBL_DECIMAL_DIG__
137# define LDBL_DECIMAL_DIG __LDBL_DECIMAL_DIG__
138#endif
139
140#endif /* __FLOAT_H */
lib/libc/include/x86_64-macos-gnu/i386/_limits.h created+27
......@@ -0,0 +1,27 @@
1/*
2 * Copyright (c) 2004 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22#ifndef _I386__LIMITS_H_
23#define _I386__LIMITS_H_
24
25#define __DARWIN_CLK_TCK 100 /* ticks per second */
26
27#endif /* _I386__LIMITS_H_ */
lib/libc/include/x86_64-macos-gnu/i386/_mcontext.h created+212
......@@ -0,0 +1,212 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef __I386_MCONTEXT_H_
30#define __I386_MCONTEXT_H_
31
32#include <sys/cdefs.h> /* __DARWIN_UNIX03 */
33#include <sys/appleapiopts.h>
34#include <mach/machine/_structs.h>
35
36#ifndef _STRUCT_MCONTEXT32
37#if __DARWIN_UNIX03
38#define _STRUCT_MCONTEXT32 struct __darwin_mcontext32
39_STRUCT_MCONTEXT32
40{
41 _STRUCT_X86_EXCEPTION_STATE32 __es;
42 _STRUCT_X86_THREAD_STATE32 __ss;
43 _STRUCT_X86_FLOAT_STATE32 __fs;
44};
45
46#define _STRUCT_MCONTEXT_AVX32 struct __darwin_mcontext_avx32
47_STRUCT_MCONTEXT_AVX32
48{
49 _STRUCT_X86_EXCEPTION_STATE32 __es;
50 _STRUCT_X86_THREAD_STATE32 __ss;
51 _STRUCT_X86_AVX_STATE32 __fs;
52};
53
54#if defined(_STRUCT_X86_AVX512_STATE32)
55#define _STRUCT_MCONTEXT_AVX512_32 struct __darwin_mcontext_avx512_32
56_STRUCT_MCONTEXT_AVX512_32
57{
58 _STRUCT_X86_EXCEPTION_STATE32 __es;
59 _STRUCT_X86_THREAD_STATE32 __ss;
60 _STRUCT_X86_AVX512_STATE32 __fs;
61};
62#endif /* _STRUCT_X86_AVX512_STATE32 */
63
64#else /* !__DARWIN_UNIX03 */
65#define _STRUCT_MCONTEXT32 struct mcontext32
66_STRUCT_MCONTEXT32
67{
68 _STRUCT_X86_EXCEPTION_STATE32 es;
69 _STRUCT_X86_THREAD_STATE32 ss;
70 _STRUCT_X86_FLOAT_STATE32 fs;
71};
72
73#define _STRUCT_MCONTEXT_AVX32 struct mcontext_avx32
74_STRUCT_MCONTEXT_AVX32
75{
76 _STRUCT_X86_EXCEPTION_STATE32 es;
77 _STRUCT_X86_THREAD_STATE32 ss;
78 _STRUCT_X86_AVX_STATE32 fs;
79};
80
81#if defined(_STRUCT_X86_AVX512_STATE32)
82#define _STRUCT_MCONTEXT_AVX512_32 struct mcontext_avx512_32
83_STRUCT_MCONTEXT_AVX512_32
84{
85 _STRUCT_X86_EXCEPTION_STATE32 es;
86 _STRUCT_X86_THREAD_STATE32 ss;
87 _STRUCT_X86_AVX512_STATE32 fs;
88};
89#endif /* _STRUCT_X86_AVX512_STATE32 */
90
91#endif /* __DARWIN_UNIX03 */
92#endif /* _STRUCT_MCONTEXT32 */
93
94#ifndef _STRUCT_MCONTEXT64
95#if __DARWIN_UNIX03
96#define _STRUCT_MCONTEXT64 struct __darwin_mcontext64
97_STRUCT_MCONTEXT64
98{
99 _STRUCT_X86_EXCEPTION_STATE64 __es;
100 _STRUCT_X86_THREAD_STATE64 __ss;
101 _STRUCT_X86_FLOAT_STATE64 __fs;
102};
103
104#define _STRUCT_MCONTEXT64_FULL struct __darwin_mcontext64_full
105_STRUCT_MCONTEXT64_FULL
106{
107 _STRUCT_X86_EXCEPTION_STATE64 __es;
108 _STRUCT_X86_THREAD_FULL_STATE64 __ss;
109 _STRUCT_X86_FLOAT_STATE64 __fs;
110};
111
112#define _STRUCT_MCONTEXT_AVX64 struct __darwin_mcontext_avx64
113_STRUCT_MCONTEXT_AVX64
114{
115 _STRUCT_X86_EXCEPTION_STATE64 __es;
116 _STRUCT_X86_THREAD_STATE64 __ss;
117 _STRUCT_X86_AVX_STATE64 __fs;
118};
119
120#define _STRUCT_MCONTEXT_AVX64_FULL struct __darwin_mcontext_avx64_full
121_STRUCT_MCONTEXT_AVX64_FULL
122{
123 _STRUCT_X86_EXCEPTION_STATE64 __es;
124 _STRUCT_X86_THREAD_FULL_STATE64 __ss;
125 _STRUCT_X86_AVX_STATE64 __fs;
126};
127
128#if defined(_STRUCT_X86_AVX512_STATE64)
129#define _STRUCT_MCONTEXT_AVX512_64 struct __darwin_mcontext_avx512_64
130_STRUCT_MCONTEXT_AVX512_64
131{
132 _STRUCT_X86_EXCEPTION_STATE64 __es;
133 _STRUCT_X86_THREAD_STATE64 __ss;
134 _STRUCT_X86_AVX512_STATE64 __fs;
135};
136
137#define _STRUCT_MCONTEXT_AVX512_64_FULL struct __darwin_mcontext_avx512_64_full
138_STRUCT_MCONTEXT_AVX512_64_FULL
139{
140 _STRUCT_X86_EXCEPTION_STATE64 __es;
141 _STRUCT_X86_THREAD_FULL_STATE64 __ss;
142 _STRUCT_X86_AVX512_STATE64 __fs;
143};
144#endif /* _STRUCT_X86_AVX512_STATE64 */
145
146#else /* !__DARWIN_UNIX03 */
147#define _STRUCT_MCONTEXT64 struct mcontext64
148_STRUCT_MCONTEXT64
149{
150 _STRUCT_X86_EXCEPTION_STATE64 es;
151 _STRUCT_X86_THREAD_STATE64 ss;
152 _STRUCT_X86_FLOAT_STATE64 fs;
153};
154
155#define _STRUCT_MCONTEXT64_FULL struct mcontext64_full
156_STRUCT_MCONTEXT64_FULL
157{
158 _STRUCT_X86_EXCEPTION_STATE64 es;
159 _STRUCT_X86_THREAD_FULL_STATE64 ss;
160 _STRUCT_X86_FLOAT_STATE64 fs;
161};
162
163#define _STRUCT_MCONTEXT_AVX64 struct mcontext_avx64
164_STRUCT_MCONTEXT_AVX64
165{
166 _STRUCT_X86_EXCEPTION_STATE64 es;
167 _STRUCT_X86_THREAD_STATE64 ss;
168 _STRUCT_X86_AVX_STATE64 fs;
169};
170
171#define _STRUCT_MCONTEXT_AVX64_FULL struct mcontext_avx64_full
172_STRUCT_MCONTEXT_AVX64_FULL
173{
174 _STRUCT_X86_EXCEPTION_STATE64 es;
175 _STRUCT_X86_THREAD_FULL_STATE64 ss;
176 _STRUCT_X86_AVX_STATE64 fs;
177};
178
179#if defined(_STRUCT_X86_AVX512_STATE64)
180#define _STRUCT_MCONTEXT_AVX512_64 struct mcontext_avx512_64
181_STRUCT_MCONTEXT_AVX512_64
182{
183 _STRUCT_X86_EXCEPTION_STATE64 es;
184 _STRUCT_X86_THREAD_STATE64 ss;
185 _STRUCT_X86_AVX512_STATE64 fs;
186};
187
188#define _STRUCT_MCONTEXT_AVX512_64_FULL struct mcontext_avx512_64_full
189_STRUCT_MCONTEXT_AVX512_64_FULL
190{
191 _STRUCT_X86_EXCEPTION_STATE64 es;
192 _STRUCT_X86_THREAD_FULL_STATE64 ss;
193 _STRUCT_X86_AVX512_STATE64 fs;
194};
195#endif /* _STRUCT_X86_AVX512_STATE64 */
196
197#endif /* __DARWIN_UNIX03 */
198#endif /* _STRUCT_MCONTEXT64 */
199
200
201#ifndef _MCONTEXT_T
202#define _MCONTEXT_T
203#if defined(__LP64__)
204typedef _STRUCT_MCONTEXT64 *mcontext_t;
205#define _STRUCT_MCONTEXT _STRUCT_MCONTEXT64
206#else
207typedef _STRUCT_MCONTEXT32 *mcontext_t;
208#define _STRUCT_MCONTEXT _STRUCT_MCONTEXT32
209#endif
210#endif /* _MCONTEXT_T */
211
212#endif /* __I386_MCONTEXT_H_ */
lib/libc/include/x86_64-macos-gnu/i386/_types.h created+122
......@@ -0,0 +1,122 @@
1/*
2 * Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _BSD_I386__TYPES_H_
29#define _BSD_I386__TYPES_H_
30
31/*
32 * This header file contains integer types. It's intended to also contain
33 * flotaing point and other arithmetic types, as needed, later.
34 */
35
36#ifdef __GNUC__
37typedef __signed char __int8_t;
38#else /* !__GNUC__ */
39typedef char __int8_t;
40#endif /* !__GNUC__ */
41typedef unsigned char __uint8_t;
42typedef short __int16_t;
43typedef unsigned short __uint16_t;
44typedef int __int32_t;
45typedef unsigned int __uint32_t;
46typedef long long __int64_t;
47typedef unsigned long long __uint64_t;
48
49typedef long __darwin_intptr_t;
50typedef unsigned int __darwin_natural_t;
51
52/*
53 * The rune type below is declared to be an ``int'' instead of the more natural
54 * ``unsigned long'' or ``long''. Two things are happening here. It is not
55 * unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
56 * it looks like 10646 will be a 31 bit standard. This means that if your
57 * ints cannot hold 32 bits, you will be in trouble. The reason an int was
58 * chosen over a long is that the is*() and to*() routines take ints (says
59 * ANSI C), but they use __darwin_ct_rune_t instead of int. By changing it
60 * here, you lose a bit of ANSI conformance, but your programs will still
61 * work.
62 *
63 * NOTE: rune_t is not covered by ANSI nor other standards, and should not
64 * be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
65 * rune_t must be the same type. Also wint_t must be no narrower than
66 * wchar_t, and should also be able to hold all members of the largest
67 * character set plus one extra value (WEOF). wint_t must be at least 16 bits.
68 */
69
70typedef int __darwin_ct_rune_t; /* ct_rune_t */
71
72/*
73 * mbstate_t is an opaque object to keep conversion state, during multibyte
74 * stream conversions. The content must not be referenced by user programs.
75 */
76typedef union {
77 char __mbstate8[128];
78 long long _mbstateL; /* for alignment */
79} __mbstate_t;
80
81typedef __mbstate_t __darwin_mbstate_t; /* mbstate_t */
82
83#if defined(__PTRDIFF_TYPE__)
84typedef __PTRDIFF_TYPE__ __darwin_ptrdiff_t; /* ptr1 - ptr2 */
85#elif defined(__LP64__)
86typedef long __darwin_ptrdiff_t; /* ptr1 - ptr2 */
87#else
88typedef int __darwin_ptrdiff_t; /* ptr1 - ptr2 */
89#endif /* __GNUC__ */
90
91#if defined(__SIZE_TYPE__)
92typedef __SIZE_TYPE__ __darwin_size_t; /* sizeof() */
93#else
94typedef unsigned long __darwin_size_t; /* sizeof() */
95#endif
96
97#if (__GNUC__ > 2)
98typedef __builtin_va_list __darwin_va_list; /* va_list */
99#else
100typedef void * __darwin_va_list; /* va_list */
101#endif
102
103#if defined(__WCHAR_TYPE__)
104typedef __WCHAR_TYPE__ __darwin_wchar_t; /* wchar_t */
105#else
106typedef __darwin_ct_rune_t __darwin_wchar_t; /* wchar_t */
107#endif
108
109typedef __darwin_wchar_t __darwin_rune_t; /* rune_t */
110
111#if defined(__WINT_TYPE__)
112typedef __WINT_TYPE__ __darwin_wint_t; /* wint_t */
113#else
114typedef __darwin_ct_rune_t __darwin_wint_t; /* wint_t */
115#endif
116
117typedef unsigned long __darwin_clock_t; /* clock() */
118typedef __uint32_t __darwin_socklen_t; /* socklen_t (duh) */
119typedef long __darwin_ssize_t; /* byte count or error */
120typedef long __darwin_time_t; /* time() */
121
122#endif /* _BSD_I386__TYPES_H_ */
lib/libc/include/x86_64-macos-gnu/i386/endian.h created+102
......@@ -0,0 +1,102 @@
1/*
2 * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright 1995 NeXT Computer, Inc. All rights reserved.
30 */
31/*
32 * Copyright (c) 1987, 1991, 1993
33 * The Regents of the University of California. All rights reserved.
34 *
35 * Redistribution and use in source and binary forms, with or without
36 * modification, are permitted provided that the following conditions
37 * are met:
38 * 1. Redistributions of source code must retain the above copyright
39 * notice, this list of conditions and the following disclaimer.
40 * 2. Redistributions in binary form must reproduce the above copyright
41 * notice, this list of conditions and the following disclaimer in the
42 * documentation and/or other materials provided with the distribution.
43 * 3. All advertising materials mentioning features or use of this software
44 * must display the following acknowledgement:
45 * This product includes software developed by the University of
46 * California, Berkeley and its contributors.
47 * 4. Neither the name of the University nor the names of its contributors
48 * may be used to endorse or promote products derived from this software
49 * without specific prior written permission.
50 *
51 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
52 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
53 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
55 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
59 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
60 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
61 * SUCH DAMAGE.
62 *
63 * @(#)endian.h 8.1 (Berkeley) 6/11/93
64 */
65
66#ifndef _I386__ENDIAN_H_
67#define _I386__ENDIAN_H_
68
69#include <sys/cdefs.h>
70/*
71 * Define _NOQUAD if the compiler does NOT support 64-bit integers.
72 */
73/* #define _NOQUAD */
74
75/*
76 * Define the order of 32-bit words in 64-bit words.
77 */
78#define _QUAD_HIGHWORD 1
79#define _QUAD_LOWWORD 0
80
81/*
82 * Definitions for byte order, according to byte significance from low
83 * address to high.
84 */
85#define __DARWIN_LITTLE_ENDIAN 1234 /* LSB first: i386, vax */
86#define __DARWIN_BIG_ENDIAN 4321 /* MSB first: 68000, ibm, net */
87#define __DARWIN_PDP_ENDIAN 3412 /* LSB first in word, MSW first in long */
88
89#define __DARWIN_BYTE_ORDER __DARWIN_LITTLE_ENDIAN
90
91#if defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
92
93#define LITTLE_ENDIAN __DARWIN_LITTLE_ENDIAN
94#define BIG_ENDIAN __DARWIN_BIG_ENDIAN
95#define PDP_ENDIAN __DARWIN_PDP_ENDIAN
96
97#define BYTE_ORDER __DARWIN_BYTE_ORDER
98
99#include <sys/_endian.h>
100
101#endif /* defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
102#endif /* !_I386__ENDIAN_H_ */
lib/libc/include/x86_64-macos-gnu/i386/limits.h created+107
......@@ -0,0 +1,107 @@
1/*
2 * Copyright (c) 1988, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. All advertising materials mentioning features or use of this software
14 * must display the following acknowledgement:
15 * This product includes software developed by the University of
16 * California, Berkeley and its contributors.
17 * 4. Neither the name of the University nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)limits.h 8.3 (Berkeley) 1/4/94
34 */
35
36#ifndef _I386_LIMITS_H_
37#define _I386_LIMITS_H_
38
39#include <sys/cdefs.h>
40#include <i386/_limits.h>
41
42#define CHAR_BIT 8 /* number of bits in a char */
43#define MB_LEN_MAX 6 /* Allow 31 bit UTF2 */
44
45#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
46#define CLK_TCK __DARWIN_CLK_TCK /* ticks per second */
47#endif /* !_ANSI_SOURCE && (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
48
49/*
50 * According to ANSI (section 2.2.4.2), the values below must be usable by
51 * #if preprocessing directives. Additionally, the expression must have the
52 * same type as would an expression that is an object of the corresponding
53 * type converted according to the integral promotions. The subtraction for
54 * INT_MIN and LONG_MIN is so the value is not unsigned; 2147483648 is an
55 * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
56 * These numbers work for pcc as well. The UINT_MAX and ULONG_MAX values
57 * are written as hex so that GCC will be quiet about large integer constants.
58 */
59#define SCHAR_MAX 127 /* min value for a signed char */
60#define SCHAR_MIN (-128) /* max value for a signed char */
61
62#define UCHAR_MAX 255 /* max value for an unsigned char */
63#define CHAR_MAX 127 /* max value for a char */
64#define CHAR_MIN (-128) /* min value for a char */
65
66#define USHRT_MAX 65535 /* max value for an unsigned short */
67#define SHRT_MAX 32767 /* max value for a short */
68#define SHRT_MIN (-32768) /* min value for a short */
69
70#define UINT_MAX 0xffffffff /* max value for an unsigned int */
71#define INT_MAX 2147483647 /* max value for an int */
72#define INT_MIN (-2147483647-1) /* min value for an int */
73
74#ifdef __LP64__
75#define ULONG_MAX 0xffffffffffffffffUL /* max unsigned long */
76#define LONG_MAX 0x7fffffffffffffffL /* max signed long */
77#define LONG_MIN (-0x7fffffffffffffffL-1) /* min signed long */
78#else /* !__LP64__ */
79#define ULONG_MAX 0xffffffffUL /* max unsigned long */
80#define LONG_MAX 2147483647L /* max signed long */
81#define LONG_MIN (-2147483647L-1) /* min signed long */
82#endif /* __LP64__ */
83
84#define ULLONG_MAX 0xffffffffffffffffULL /* max unsigned long long */
85#define LLONG_MAX 0x7fffffffffffffffLL /* max signed long long */
86#define LLONG_MIN (-0x7fffffffffffffffLL-1) /* min signed long long */
87
88#if !defined(_ANSI_SOURCE)
89#ifdef __LP64__
90#define LONG_BIT 64
91#else /* !__LP64__ */
92#define LONG_BIT 32
93#endif /* __LP64__ */
94#define SSIZE_MAX LONG_MAX /* max value for a ssize_t */
95#define WORD_BIT 32
96
97#if (!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || defined(_DARWIN_C_SOURCE)
98#define SIZE_T_MAX ULONG_MAX /* max value for a size_t */
99
100#define UQUAD_MAX ULLONG_MAX
101#define QUAD_MAX LLONG_MAX
102#define QUAD_MIN LLONG_MIN
103
104#endif /* (!_POSIX_C_SOURCE && !_XOPEN_SOURCE) || _DARWIN_C_SOURCE */
105#endif /* !_ANSI_SOURCE */
106
107#endif /* _I386_LIMITS_H_ */
lib/libc/include/x86_64-macos-gnu/i386/signal.h created+43
......@@ -0,0 +1,43 @@
1/*
2 * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright (c) 1992 NeXT Computer, Inc.
30 *
31 */
32
33#ifndef _I386_SIGNAL_H_
34#define _I386_SIGNAL_H_ 1
35
36#include <sys/cdefs.h>
37
38#ifndef _ANSI_SOURCE
39typedef int sig_atomic_t;
40
41#endif /* ! _ANSI_SOURCE */
42
43#endif /* _I386_SIGNAL_H_ */
lib/libc/include/x86_64-macos-gnu/i386/types.h created+114
......@@ -0,0 +1,114 @@
1/*
2 * Copyright (c) 2000-2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright 1995 NeXT Computer, Inc. All rights reserved.
30 */
31/*
32 * Copyright (c) 1990, 1993
33 * The Regents of the University of California. All rights reserved.
34 *
35 * Redistribution and use in source and binary forms, with or without
36 * modification, are permitted provided that the following conditions
37 * are met:
38 * 1. Redistributions of source code must retain the above copyright
39 * notice, this list of conditions and the following disclaimer.
40 * 2. Redistributions in binary form must reproduce the above copyright
41 * notice, this list of conditions and the following disclaimer in the
42 * documentation and/or other materials provided with the distribution.
43 * 3. All advertising materials mentioning features or use of this software
44 * must display the following acknowledgement:
45 * This product includes software developed by the University of
46 * California, Berkeley and its contributors.
47 * 4. Neither the name of the University nor the names of its contributors
48 * may be used to endorse or promote products derived from this software
49 * without specific prior written permission.
50 *
51 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
52 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
53 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
55 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
57 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
58 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
59 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
60 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
61 * SUCH DAMAGE.
62 *
63 * @(#)types.h 8.3 (Berkeley) 1/5/94
64 */
65
66#ifndef _MACHTYPES_H_
67#define _MACHTYPES_H_
68
69#ifndef __ASSEMBLER__
70#include <i386/_types.h>
71#include <sys/cdefs.h>
72/*
73 * Basic integral types. Omit the typedef if
74 * not possible for a machine/compiler combination.
75 */
76#include <sys/_types/_int8_t.h>
77#include <sys/_types/_int16_t.h>
78#include <sys/_types/_int32_t.h>
79#include <sys/_types/_int64_t.h>
80
81#include <sys/_types/_u_int8_t.h>
82#include <sys/_types/_u_int16_t.h>
83#include <sys/_types/_u_int32_t.h>
84#include <sys/_types/_u_int64_t.h>
85
86#if __LP64__
87typedef int64_t register_t;
88#else
89typedef int32_t register_t;
90#endif
91
92#include <sys/_types/_intptr_t.h>
93#include <sys/_types/_uintptr_t.h>
94
95#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
96/* These types are used for reserving the largest possible size. */
97typedef u_int64_t user_addr_t;
98typedef u_int64_t user_size_t;
99typedef int64_t user_ssize_t;
100typedef int64_t user_long_t;
101typedef u_int64_t user_ulong_t;
102typedef int64_t user_time_t;
103typedef int64_t user_off_t;
104#define USER_ADDR_NULL ((user_addr_t) 0)
105#define CAST_USER_ADDR_T(a_ptr) ((user_addr_t)((uintptr_t)(a_ptr)))
106
107
108#endif /* !_ANSI_SOURCE && (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
109
110/* This defines the size of syscall arguments after copying into the kernel: */
111typedef u_int64_t syscall_arg_t;
112
113#endif /* __ASSEMBLER__ */
114#endif /* _MACHTYPES_H_ */
lib/libc/include/x86_64-macos-gnu/inttypes.h created+297
......@@ -0,0 +1,297 @@
1/*
2 * Copyright (c) 2000-2004, 2013 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24/*
25 * <inttypes.h> -- Standard C header, defined in ISO/IEC 9899:1999
26 * (aka "C99"), section 7.8. This defines format string conversion
27 * specifiers suitable for use within arguments to fprintf and fscanf
28 * and their ilk.
29 */
30
31#if !defined(_INTTYPES_H_)
32#define _INTTYPES_H_
33
34# define __PRI_8_LENGTH_MODIFIER__ "hh"
35# define __PRI_64_LENGTH_MODIFIER__ "ll"
36# define __SCN_64_LENGTH_MODIFIER__ "ll"
37# define __PRI_MAX_LENGTH_MODIFIER__ "j"
38# define __SCN_MAX_LENGTH_MODIFIER__ "j"
39
40# define PRId8 __PRI_8_LENGTH_MODIFIER__ "d"
41# define PRIi8 __PRI_8_LENGTH_MODIFIER__ "i"
42# define PRIo8 __PRI_8_LENGTH_MODIFIER__ "o"
43# define PRIu8 __PRI_8_LENGTH_MODIFIER__ "u"
44# define PRIx8 __PRI_8_LENGTH_MODIFIER__ "x"
45# define PRIX8 __PRI_8_LENGTH_MODIFIER__ "X"
46
47# define PRId16 "hd"
48# define PRIi16 "hi"
49# define PRIo16 "ho"
50# define PRIu16 "hu"
51# define PRIx16 "hx"
52# define PRIX16 "hX"
53
54# define PRId32 "d"
55# define PRIi32 "i"
56# define PRIo32 "o"
57# define PRIu32 "u"
58# define PRIx32 "x"
59# define PRIX32 "X"
60
61# define PRId64 __PRI_64_LENGTH_MODIFIER__ "d"
62# define PRIi64 __PRI_64_LENGTH_MODIFIER__ "i"
63# define PRIo64 __PRI_64_LENGTH_MODIFIER__ "o"
64# define PRIu64 __PRI_64_LENGTH_MODIFIER__ "u"
65# define PRIx64 __PRI_64_LENGTH_MODIFIER__ "x"
66# define PRIX64 __PRI_64_LENGTH_MODIFIER__ "X"
67
68# define PRIdLEAST8 PRId8
69# define PRIiLEAST8 PRIi8
70# define PRIoLEAST8 PRIo8
71# define PRIuLEAST8 PRIu8
72# define PRIxLEAST8 PRIx8
73# define PRIXLEAST8 PRIX8
74
75# define PRIdLEAST16 PRId16
76# define PRIiLEAST16 PRIi16
77# define PRIoLEAST16 PRIo16
78# define PRIuLEAST16 PRIu16
79# define PRIxLEAST16 PRIx16
80# define PRIXLEAST16 PRIX16
81
82# define PRIdLEAST32 PRId32
83# define PRIiLEAST32 PRIi32
84# define PRIoLEAST32 PRIo32
85# define PRIuLEAST32 PRIu32
86# define PRIxLEAST32 PRIx32
87# define PRIXLEAST32 PRIX32
88
89# define PRIdLEAST64 PRId64
90# define PRIiLEAST64 PRIi64
91# define PRIoLEAST64 PRIo64
92# define PRIuLEAST64 PRIu64
93# define PRIxLEAST64 PRIx64
94# define PRIXLEAST64 PRIX64
95
96# define PRIdFAST8 PRId8
97# define PRIiFAST8 PRIi8
98# define PRIoFAST8 PRIo8
99# define PRIuFAST8 PRIu8
100# define PRIxFAST8 PRIx8
101# define PRIXFAST8 PRIX8
102
103# define PRIdFAST16 PRId16
104# define PRIiFAST16 PRIi16
105# define PRIoFAST16 PRIo16
106# define PRIuFAST16 PRIu16
107# define PRIxFAST16 PRIx16
108# define PRIXFAST16 PRIX16
109
110# define PRIdFAST32 PRId32
111# define PRIiFAST32 PRIi32
112# define PRIoFAST32 PRIo32
113# define PRIuFAST32 PRIu32
114# define PRIxFAST32 PRIx32
115# define PRIXFAST32 PRIX32
116
117# define PRIdFAST64 PRId64
118# define PRIiFAST64 PRIi64
119# define PRIoFAST64 PRIo64
120# define PRIuFAST64 PRIu64
121# define PRIxFAST64 PRIx64
122# define PRIXFAST64 PRIX64
123
124/* int32_t is 'int', but intptr_t is 'long'. */
125# define PRIdPTR "ld"
126# define PRIiPTR "li"
127# define PRIoPTR "lo"
128# define PRIuPTR "lu"
129# define PRIxPTR "lx"
130# define PRIXPTR "lX"
131
132# define PRIdMAX __PRI_MAX_LENGTH_MODIFIER__ "d"
133# define PRIiMAX __PRI_MAX_LENGTH_MODIFIER__ "i"
134# define PRIoMAX __PRI_MAX_LENGTH_MODIFIER__ "o"
135# define PRIuMAX __PRI_MAX_LENGTH_MODIFIER__ "u"
136# define PRIxMAX __PRI_MAX_LENGTH_MODIFIER__ "x"
137# define PRIXMAX __PRI_MAX_LENGTH_MODIFIER__ "X"
138
139# define SCNd8 __PRI_8_LENGTH_MODIFIER__ "d"
140# define SCNi8 __PRI_8_LENGTH_MODIFIER__ "i"
141# define SCNo8 __PRI_8_LENGTH_MODIFIER__ "o"
142# define SCNu8 __PRI_8_LENGTH_MODIFIER__ "u"
143# define SCNx8 __PRI_8_LENGTH_MODIFIER__ "x"
144
145# define SCNd16 "hd"
146# define SCNi16 "hi"
147# define SCNo16 "ho"
148# define SCNu16 "hu"
149# define SCNx16 "hx"
150
151# define SCNd32 "d"
152# define SCNi32 "i"
153# define SCNo32 "o"
154# define SCNu32 "u"
155# define SCNx32 "x"
156
157# define SCNd64 __SCN_64_LENGTH_MODIFIER__ "d"
158# define SCNi64 __SCN_64_LENGTH_MODIFIER__ "i"
159# define SCNo64 __SCN_64_LENGTH_MODIFIER__ "o"
160# define SCNu64 __SCN_64_LENGTH_MODIFIER__ "u"
161# define SCNx64 __SCN_64_LENGTH_MODIFIER__ "x"
162
163# define SCNdLEAST8 SCNd8
164# define SCNiLEAST8 SCNi8
165# define SCNoLEAST8 SCNo8
166# define SCNuLEAST8 SCNu8
167# define SCNxLEAST8 SCNx8
168
169# define SCNdLEAST16 SCNd16
170# define SCNiLEAST16 SCNi16
171# define SCNoLEAST16 SCNo16
172# define SCNuLEAST16 SCNu16
173# define SCNxLEAST16 SCNx16
174
175# define SCNdLEAST32 SCNd32
176# define SCNiLEAST32 SCNi32
177# define SCNoLEAST32 SCNo32
178# define SCNuLEAST32 SCNu32
179# define SCNxLEAST32 SCNx32
180
181# define SCNdLEAST64 SCNd64
182# define SCNiLEAST64 SCNi64
183# define SCNoLEAST64 SCNo64
184# define SCNuLEAST64 SCNu64
185# define SCNxLEAST64 SCNx64
186
187# define SCNdFAST8 SCNd8
188# define SCNiFAST8 SCNi8
189# define SCNoFAST8 SCNo8
190# define SCNuFAST8 SCNu8
191# define SCNxFAST8 SCNx8
192
193# define SCNdFAST16 SCNd16
194# define SCNiFAST16 SCNi16
195# define SCNoFAST16 SCNo16
196# define SCNuFAST16 SCNu16
197# define SCNxFAST16 SCNx16
198
199# define SCNdFAST32 SCNd32
200# define SCNiFAST32 SCNi32
201# define SCNoFAST32 SCNo32
202# define SCNuFAST32 SCNu32
203# define SCNxFAST32 SCNx32
204
205# define SCNdFAST64 SCNd64
206# define SCNiFAST64 SCNi64
207# define SCNoFAST64 SCNo64
208# define SCNuFAST64 SCNu64
209# define SCNxFAST64 SCNx64
210
211# define SCNdPTR "ld"
212# define SCNiPTR "li"
213# define SCNoPTR "lo"
214# define SCNuPTR "lu"
215# define SCNxPTR "lx"
216
217# define SCNdMAX __SCN_MAX_LENGTH_MODIFIER__ "d"
218# define SCNiMAX __SCN_MAX_LENGTH_MODIFIER__ "i"
219# define SCNoMAX __SCN_MAX_LENGTH_MODIFIER__ "o"
220# define SCNuMAX __SCN_MAX_LENGTH_MODIFIER__ "u"
221# define SCNxMAX __SCN_MAX_LENGTH_MODIFIER__ "x"
222
223#include <sys/cdefs.h>
224#include <Availability.h>
225
226#include <_types.h>
227#include <sys/_types/_wchar_t.h>
228
229#include <stdint.h>
230
231__BEGIN_DECLS
232
233/* 7.8.2.1 */
234__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
235extern intmax_t
236imaxabs(intmax_t j);
237
238/* 7.8.2.2 */
239typedef struct {
240 intmax_t quot;
241 intmax_t rem;
242} imaxdiv_t;
243
244__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
245extern imaxdiv_t
246imaxdiv(intmax_t __numer, intmax_t __denom);
247
248/* 7.8.2.3 */
249__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
250extern intmax_t
251strtoimax(const char * __restrict __nptr,
252 char ** __restrict __endptr,
253 int __base);
254
255__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
256extern uintmax_t
257strtoumax(const char * __restrict __nptr,
258 char ** __restrict __endptr,
259 int __base);
260
261/* 7.8.2.4 */
262__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
263extern intmax_t
264wcstoimax(const wchar_t * __restrict __nptr,
265 wchar_t ** __restrict __endptr,
266 int __base);
267
268__OSX_AVAILABLE_STARTING(__MAC_10_4, __IPHONE_2_0)
269extern uintmax_t
270wcstoumax(const wchar_t * __restrict __nptr,
271 wchar_t ** __restrict __endptr,
272 int __base);
273
274/* Poison the following routines if -fshort-wchar is set */
275#if !defined(__cplusplus) && defined(__WCHAR_MAX__) && __WCHAR_MAX__ <= 0xffffU
276#pragma GCC poison wcstoimax wcstoumax
277#endif
278
279__END_DECLS
280
281#ifdef _USE_EXTENDED_LOCALES_
282#include <xlocale/_inttypes.h>
283#endif /* _USE_EXTENDED_LOCALES_ */
284
285/*
286 No need to #undef the __*_{8,64}_LENGTH_MODIFIER__ macros;
287 in fact, you can't #undef them, because later uses of any of
288 their dependents will *not* then do the intended substitution.
289 Expansion of a #define like this one:
290
291 #define x IDENT y
292
293 uses the cpp value of IDENT at the location where x is *expanded*,
294 not where it is #defined.
295*/
296
297#endif /* !_INTTYPES_H_ */
lib/libc/include/x86_64-macos-gnu/libkern/_OSByteOrder.h created+130
......@@ -0,0 +1,130 @@
1/*
2 * Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _OS__OSBYTEORDER_H
30#define _OS__OSBYTEORDER_H
31
32/*
33 * This header is normally included from <libkern/OSByteOrder.h>. However,
34 * <sys/_endian.h> also includes this in the case of little-endian
35 * architectures, so that we can map OSByteOrder routines to the hton* and ntoh*
36 * macros. This results in the asymmetry below; we only include
37 * <libkern/arch/_OSByteOrder.h> for little-endian architectures.
38 */
39
40#include <sys/_types.h>
41
42/* Macros for swapping constant values in the preprocessing stage. */
43#define __DARWIN_OSSwapConstInt16(x) \
44 ((__uint16_t)((((__uint16_t)(x) & 0xff00) >> 8) | \
45 (((__uint16_t)(x) & 0x00ff) << 8)))
46
47#define __DARWIN_OSSwapConstInt32(x) \
48 ((__uint32_t)((((__uint32_t)(x) & 0xff000000) >> 24) | \
49 (((__uint32_t)(x) & 0x00ff0000) >> 8) | \
50 (((__uint32_t)(x) & 0x0000ff00) << 8) | \
51 (((__uint32_t)(x) & 0x000000ff) << 24)))
52
53#define __DARWIN_OSSwapConstInt64(x) \
54 ((__uint64_t)((((__uint64_t)(x) & 0xff00000000000000ULL) >> 56) | \
55 (((__uint64_t)(x) & 0x00ff000000000000ULL) >> 40) | \
56 (((__uint64_t)(x) & 0x0000ff0000000000ULL) >> 24) | \
57 (((__uint64_t)(x) & 0x000000ff00000000ULL) >> 8) | \
58 (((__uint64_t)(x) & 0x00000000ff000000ULL) << 8) | \
59 (((__uint64_t)(x) & 0x0000000000ff0000ULL) << 24) | \
60 (((__uint64_t)(x) & 0x000000000000ff00ULL) << 40) | \
61 (((__uint64_t)(x) & 0x00000000000000ffULL) << 56)))
62
63#if defined(__GNUC__)
64
65#if defined(__i386__) || defined(__x86_64__)
66#include <libkern/i386/_OSByteOrder.h>
67#endif
68
69
70
71#define __DARWIN_OSSwapInt16(x) \
72 ((__uint16_t)(__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt16(x) : _OSSwapInt16(x)))
73
74#define __DARWIN_OSSwapInt32(x) \
75 (__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt32(x) : _OSSwapInt32(x))
76
77#define __DARWIN_OSSwapInt64(x) \
78 (__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt64(x) : _OSSwapInt64(x))
79
80#else /* ! __GNUC__ */
81
82#if defined(__i386__) || defined(__x86_64__)
83
84#if !defined(__DARWIN_OS_INLINE)
85# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
86# define __DARWIN_OS_INLINE static inline
87# elif defined(__MWERKS__) || defined(__cplusplus)
88# define __DARWIN_OS_INLINE static inline
89# else
90# define __DARWIN_OS_INLINE static __inline__
91# endif
92#endif
93
94__DARWIN_OS_INLINE
95uint16_t
96_OSSwapInt16(
97 uint16_t data
98 )
99{
100 return __DARWIN_OSSwapConstInt16(data);
101}
102
103__DARWIN_OS_INLINE
104uint32_t
105_OSSwapInt32(
106 uint32_t data
107 )
108{
109 return __DARWIN_OSSwapConstInt32(data);
110}
111
112__DARWIN_OS_INLINE
113uint64_t
114_OSSwapInt64(
115 uint64_t data
116 )
117{
118 return __DARWIN_OSSwapConstInt64(data);
119}
120#endif
121
122#define __DARWIN_OSSwapInt16(x) _OSSwapInt16(x)
123
124#define __DARWIN_OSSwapInt32(x) _OSSwapInt32(x)
125
126#define __DARWIN_OSSwapInt64(x) _OSSwapInt64(x)
127
128#endif /* __GNUC__ */
129
130#endif /* ! _OS__OSBYTEORDER_H */
lib/libc/include/x86_64-macos-gnu/libkern/i386/_OSByteOrder.h created+104
......@@ -0,0 +1,104 @@
1/*
2 * Copyright (c) 2006-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _OS__OSBYTEORDERI386_H
30#define _OS__OSBYTEORDERI386_H
31
32#if !defined(__DARWIN_OS_INLINE)
33# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
34# define __DARWIN_OS_INLINE static inline
35# elif defined(__MWERKS__) || defined(__cplusplus)
36# define __DARWIN_OS_INLINE static inline
37# else
38# define __DARWIN_OS_INLINE static __inline__
39# endif
40#endif
41
42/* Generic byte swapping functions. */
43
44__DARWIN_OS_INLINE
45__uint16_t
46_OSSwapInt16(
47 __uint16_t _data
48 )
49{
50 return (__uint16_t)((_data << 8) | (_data >> 8));
51}
52
53__DARWIN_OS_INLINE
54__uint32_t
55_OSSwapInt32(
56 __uint32_t _data
57 )
58{
59#if defined(__llvm__)
60 return __builtin_bswap32(_data);
61#else
62 __asm__ ("bswap %0" : "+r" (_data));
63 return _data;
64#endif
65}
66
67#if defined(__llvm__)
68__DARWIN_OS_INLINE
69__uint64_t
70_OSSwapInt64(
71 __uint64_t _data
72 )
73{
74 return __builtin_bswap64(_data);
75}
76
77#elif defined(__i386__)
78__DARWIN_OS_INLINE
79__uint64_t
80_OSSwapInt64(
81 __uint64_t _data
82 )
83{
84 __asm__ ("bswap %%eax\n\t"
85 "bswap %%edx\n\t"
86 "xchgl %%eax, %%edx"
87 : "+A" (_data));
88 return _data;
89}
90#elif defined(__x86_64__)
91__DARWIN_OS_INLINE
92__uint64_t
93_OSSwapInt64(
94 __uint64_t _data
95 )
96{
97 __asm__ ("bswap %0" : "+r" (_data));
98 return _data;
99}
100#else
101#error Unknown architecture
102#endif
103
104#endif /* ! _OS__OSBYTEORDERI386_H */
lib/libc/include/x86_64-macos-gnu/limits.h created+167
......@@ -0,0 +1,167 @@
1/*
2 * Copyright (c) 2000, 2004-2007, 2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/* $NetBSD: limits.h,v 1.8 1996/10/21 05:10:50 jtc Exp $ */
24
25/*
26 * Copyright (c) 1988, 1993
27 * The Regents of the University of California. All rights reserved.
28 *
29 * Redistribution and use in source and binary forms, with or without
30 * modification, are permitted provided that the following conditions
31 * are met:
32 * 1. Redistributions of source code must retain the above copyright
33 * notice, this list of conditions and the following disclaimer.
34 * 2. Redistributions in binary form must reproduce the above copyright
35 * notice, this list of conditions and the following disclaimer in the
36 * documentation and/or other materials provided with the distribution.
37 * 3. All advertising materials mentioning features or use of this software
38 * must display the following acknowledgement:
39 * This product includes software developed by the University of
40 * California, Berkeley and its contributors.
41 * 4. Neither the name of the University nor the names of its contributors
42 * may be used to endorse or promote products derived from this software
43 * without specific prior written permission.
44 *
45 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
46 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
47 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
48 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
49 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
50 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
51 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
52 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
53 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
54 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
55 * SUCH DAMAGE.
56 *
57 * @(#)limits.h 8.2 (Berkeley) 1/4/94
58 */
59
60#ifndef _LIMITS_H_
61#define _LIMITS_H_
62
63#include <sys/cdefs.h>
64#include <machine/limits.h>
65#include <sys/syslimits.h>
66
67#if __DARWIN_C_LEVEL > __DARWIN_C_ANSI
68#define _POSIX_ARG_MAX 4096
69#define _POSIX_CHILD_MAX 25
70#define _POSIX_LINK_MAX 8
71#define _POSIX_MAX_CANON 255
72#define _POSIX_MAX_INPUT 255
73#define _POSIX_NAME_MAX 14
74#define _POSIX_NGROUPS_MAX 8
75#define _POSIX_OPEN_MAX 20
76#define _POSIX_PATH_MAX 256
77#define _POSIX_PIPE_BUF 512
78#define _POSIX_SSIZE_MAX 32767
79#define _POSIX_STREAM_MAX 8
80#define _POSIX_TZNAME_MAX 6
81
82#define _POSIX2_BC_BASE_MAX 99
83#define _POSIX2_BC_DIM_MAX 2048
84#define _POSIX2_BC_SCALE_MAX 99
85#define _POSIX2_BC_STRING_MAX 1000
86#define _POSIX2_EQUIV_CLASS_MAX 2
87#define _POSIX2_EXPR_NEST_MAX 32
88#define _POSIX2_LINE_MAX 2048
89#define _POSIX2_RE_DUP_MAX 255
90#endif /* __DARWIN_C_LEVEL > __DARWIN_C_ANSI */
91
92#if __DARWIN_C_LEVEL >= 199309L
93#define _POSIX_AIO_LISTIO_MAX 2
94#define _POSIX_AIO_MAX 1
95#define _POSIX_DELAYTIMER_MAX 32
96#define _POSIX_MQ_OPEN_MAX 8
97#define _POSIX_MQ_PRIO_MAX 32
98#define _POSIX_RTSIG_MAX 8
99#define _POSIX_SEM_NSEMS_MAX 256
100#define _POSIX_SEM_VALUE_MAX 32767
101#define _POSIX_SIGQUEUE_MAX 32
102#define _POSIX_TIMER_MAX 32
103
104#define _POSIX_CLOCKRES_MIN 20000000
105#endif /* __DARWIN_C_LEVEL >= 199309L */
106
107#if __DARWIN_C_LEVEL >= 199506L
108#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4
109#define _POSIX_THREAD_KEYS_MAX 128
110#define _POSIX_THREAD_THREADS_MAX 64
111
112#define PTHREAD_DESTRUCTOR_ITERATIONS 4
113#define PTHREAD_KEYS_MAX 512
114#if defined(__arm__) || defined(__arm64__)
115#define PTHREAD_STACK_MIN 16384
116#else
117#define PTHREAD_STACK_MIN 8192
118#endif
119#endif /* __DARWIN_C_LEVEL >= 199506L */
120
121#if __DARWIN_C_LEVEL >= 200112
122#define _POSIX_HOST_NAME_MAX 255
123#define _POSIX_LOGIN_NAME_MAX 9
124#define _POSIX_SS_REPL_MAX 4
125#define _POSIX_SYMLINK_MAX 255
126#define _POSIX_SYMLOOP_MAX 8
127#define _POSIX_TRACE_EVENT_NAME_MAX 30
128#define _POSIX_TRACE_NAME_MAX 8
129#define _POSIX_TRACE_SYS_MAX 8
130#define _POSIX_TRACE_USER_EVENT_MAX 32
131#define _POSIX_TTY_NAME_MAX 9
132#define _POSIX2_CHARCLASS_NAME_MAX 14
133#define _POSIX2_COLL_WEIGHTS_MAX 2
134
135#define _POSIX_RE_DUP_MAX _POSIX2_RE_DUP_MAX
136#endif /* __DARWIN_C_LEVEL >= 200112 */
137
138#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
139#define OFF_MIN LLONG_MIN /* min value for an off_t */
140#define OFF_MAX LLONG_MAX /* max value for an off_t */
141#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
142
143/* Actually for XSI Visible */
144#if __DARWIN_C_LEVEL > __DARWIN_C_ANSI
145
146/* Removed in Issue 6 */
147#if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200112L
148#define PASS_MAX 128
149#endif
150
151#define NL_ARGMAX 9
152#define NL_LANGMAX 14
153#define NL_MSGMAX 32767
154#define NL_NMAX 1
155#define NL_SETMAX 255
156#define NL_TEXTMAX 2048
157
158#define _XOPEN_IOV_MAX 16
159#define IOV_MAX 1024
160#define _XOPEN_NAME_MAX 255
161#define _XOPEN_PATH_MAX 1024
162
163#endif /* __DARWIN_C_LEVEL > __DARWIN_C_ANSI */
164
165/* NZERO to be defined here. TBD. See also sys/param.h */
166
167#endif /* !_LIMITS_H_ */
lib/libc/include/x86_64-macos-gnu/locale.h created+56
......@@ -0,0 +1,56 @@
1/*
2 * Copyright (c) 1991, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. All advertising materials mentioning features or use of this software
14 * must display the following acknowledgement:
15 * This product includes software developed by the University of
16 * California, Berkeley and its contributors.
17 * 4. Neither the name of the University nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)locale.h 8.1 (Berkeley) 6/2/93
34 * $FreeBSD: /repoman/r/ncvs/src/include/locale.h,v 1.7 2002/10/09 09:19:27 tjr Exp $
35 */
36
37#ifndef _LOCALE_H_
38#define _LOCALE_H_
39
40#include <_locale.h>
41
42#define LC_ALL 0
43#define LC_COLLATE 1
44#define LC_CTYPE 2
45#define LC_MONETARY 3
46#define LC_NUMERIC 4
47#define LC_TIME 5
48#define LC_MESSAGES 6
49
50#define _LC_LAST 7 /* marks end */
51
52__BEGIN_DECLS
53char *setlocale(int, const char *);
54__END_DECLS
55
56#endif /* _LOCALE_H_ */
lib/libc/include/x86_64-macos-gnu/mach/i386/_structs.h created+1232
......@@ -0,0 +1,1232 @@
1/*
2 * Copyright (c) 2004-2006 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * @OSF_COPYRIGHT@
30 */
31
32#ifndef _MACH_I386__STRUCTS_H_
33#define _MACH_I386__STRUCTS_H_
34
35#include <sys/cdefs.h> /* __DARWIN_UNIX03 */
36#include <machine/types.h> /* __uint8_t */
37
38/*
39 * i386 is the structure that is exported to user threads for
40 * use in status/mutate calls. This structure should never change.
41 *
42 */
43
44#if __DARWIN_UNIX03
45#define _STRUCT_X86_THREAD_STATE32 struct __darwin_i386_thread_state
46_STRUCT_X86_THREAD_STATE32
47{
48 unsigned int __eax;
49 unsigned int __ebx;
50 unsigned int __ecx;
51 unsigned int __edx;
52 unsigned int __edi;
53 unsigned int __esi;
54 unsigned int __ebp;
55 unsigned int __esp;
56 unsigned int __ss;
57 unsigned int __eflags;
58 unsigned int __eip;
59 unsigned int __cs;
60 unsigned int __ds;
61 unsigned int __es;
62 unsigned int __fs;
63 unsigned int __gs;
64};
65#else /* !__DARWIN_UNIX03 */
66#define _STRUCT_X86_THREAD_STATE32 struct i386_thread_state
67_STRUCT_X86_THREAD_STATE32
68{
69 unsigned int eax;
70 unsigned int ebx;
71 unsigned int ecx;
72 unsigned int edx;
73 unsigned int edi;
74 unsigned int esi;
75 unsigned int ebp;
76 unsigned int esp;
77 unsigned int ss;
78 unsigned int eflags;
79 unsigned int eip;
80 unsigned int cs;
81 unsigned int ds;
82 unsigned int es;
83 unsigned int fs;
84 unsigned int gs;
85};
86#endif /* !__DARWIN_UNIX03 */
87
88/* This structure should be double-word aligned for performance */
89
90#if __DARWIN_UNIX03
91#define _STRUCT_FP_CONTROL struct __darwin_fp_control
92_STRUCT_FP_CONTROL
93{
94 unsigned short __invalid :1,
95 __denorm :1,
96 __zdiv :1,
97 __ovrfl :1,
98 __undfl :1,
99 __precis :1,
100 :2,
101 __pc :2,
102#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
103#define FP_PREC_24B 0
104#define FP_PREC_53B 2
105#define FP_PREC_64B 3
106#endif /* !_POSIX_C_SOURCE || _DARWIN_C_SOURCE */
107 __rc :2,
108#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
109#define FP_RND_NEAR 0
110#define FP_RND_DOWN 1
111#define FP_RND_UP 2
112#define FP_CHOP 3
113#endif /* !_POSIX_C_SOURCE || _DARWIN_C_SOURCE */
114 /*inf*/ :1,
115 :3;
116};
117typedef _STRUCT_FP_CONTROL __darwin_fp_control_t;
118#else /* !__DARWIN_UNIX03 */
119#define _STRUCT_FP_CONTROL struct fp_control
120_STRUCT_FP_CONTROL
121{
122 unsigned short invalid :1,
123 denorm :1,
124 zdiv :1,
125 ovrfl :1,
126 undfl :1,
127 precis :1,
128 :2,
129 pc :2,
130#define FP_PREC_24B 0
131#define FP_PREC_53B 2
132#define FP_PREC_64B 3
133 rc :2,
134#define FP_RND_NEAR 0
135#define FP_RND_DOWN 1
136#define FP_RND_UP 2
137#define FP_CHOP 3
138 /*inf*/ :1,
139 :3;
140};
141typedef _STRUCT_FP_CONTROL fp_control_t;
142#endif /* !__DARWIN_UNIX03 */
143
144/*
145 * Status word.
146 */
147
148#if __DARWIN_UNIX03
149#define _STRUCT_FP_STATUS struct __darwin_fp_status
150_STRUCT_FP_STATUS
151{
152 unsigned short __invalid :1,
153 __denorm :1,
154 __zdiv :1,
155 __ovrfl :1,
156 __undfl :1,
157 __precis :1,
158 __stkflt :1,
159 __errsumm :1,
160 __c0 :1,
161 __c1 :1,
162 __c2 :1,
163 __tos :3,
164 __c3 :1,
165 __busy :1;
166};
167typedef _STRUCT_FP_STATUS __darwin_fp_status_t;
168#else /* !__DARWIN_UNIX03 */
169#define _STRUCT_FP_STATUS struct fp_status
170_STRUCT_FP_STATUS
171{
172 unsigned short invalid :1,
173 denorm :1,
174 zdiv :1,
175 ovrfl :1,
176 undfl :1,
177 precis :1,
178 stkflt :1,
179 errsumm :1,
180 c0 :1,
181 c1 :1,
182 c2 :1,
183 tos :3,
184 c3 :1,
185 busy :1;
186};
187typedef _STRUCT_FP_STATUS fp_status_t;
188#endif /* !__DARWIN_UNIX03 */
189
190/* defn of 80bit x87 FPU or MMX register */
191
192#if __DARWIN_UNIX03
193#define _STRUCT_MMST_REG struct __darwin_mmst_reg
194_STRUCT_MMST_REG
195{
196 char __mmst_reg[10];
197 char __mmst_rsrv[6];
198};
199#else /* !__DARWIN_UNIX03 */
200#define _STRUCT_MMST_REG struct mmst_reg
201_STRUCT_MMST_REG
202{
203 char mmst_reg[10];
204 char mmst_rsrv[6];
205};
206#endif /* !__DARWIN_UNIX03 */
207
208
209/* defn of 128 bit XMM regs */
210
211#if __DARWIN_UNIX03
212#define _STRUCT_XMM_REG struct __darwin_xmm_reg
213_STRUCT_XMM_REG
214{
215 char __xmm_reg[16];
216};
217#else /* !__DARWIN_UNIX03 */
218#define _STRUCT_XMM_REG struct xmm_reg
219_STRUCT_XMM_REG
220{
221 char xmm_reg[16];
222};
223#endif /* !__DARWIN_UNIX03 */
224
225/* defn of 256 bit YMM regs */
226
227#if __DARWIN_UNIX03
228#define _STRUCT_YMM_REG struct __darwin_ymm_reg
229_STRUCT_YMM_REG
230{
231 char __ymm_reg[32];
232};
233#else /* !__DARWIN_UNIX03 */
234#define _STRUCT_YMM_REG struct ymm_reg
235_STRUCT_YMM_REG
236{
237 char ymm_reg[32];
238};
239#endif /* !__DARWIN_UNIX03 */
240
241/* defn of 512 bit ZMM regs */
242
243#if __DARWIN_UNIX03
244#define _STRUCT_ZMM_REG struct __darwin_zmm_reg
245_STRUCT_ZMM_REG
246{
247 char __zmm_reg[64];
248};
249#else /* !__DARWIN_UNIX03 */
250#define _STRUCT_ZMM_REG struct zmm_reg
251_STRUCT_ZMM_REG
252{
253 char zmm_reg[64];
254};
255#endif /* !__DARWIN_UNIX03 */
256
257#if __DARWIN_UNIX03
258#define _STRUCT_OPMASK_REG struct __darwin_opmask_reg
259_STRUCT_OPMASK_REG
260{
261 char __opmask_reg[8];
262};
263#else /* !__DARWIN_UNIX03 */
264#define _STRUCT_OPMASK_REG struct opmask_reg
265_STRUCT_OPMASK_REG
266{
267 char opmask_reg[8];
268};
269#endif /* !__DARWIN_UNIX03 */
270
271/*
272 * Floating point state.
273 */
274
275#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
276#define FP_STATE_BYTES 512 /* number of chars worth of data from fpu_fcw */
277#endif /* !_POSIX_C_SOURCE || _DARWIN_C_SOURCE */
278
279#if __DARWIN_UNIX03
280#define _STRUCT_X86_FLOAT_STATE32 struct __darwin_i386_float_state
281_STRUCT_X86_FLOAT_STATE32
282{
283 int __fpu_reserved[2];
284 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
285 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
286 __uint8_t __fpu_ftw; /* x87 FPU tag word */
287 __uint8_t __fpu_rsrv1; /* reserved */
288 __uint16_t __fpu_fop; /* x87 FPU Opcode */
289 __uint32_t __fpu_ip; /* x87 FPU Instruction Pointer offset */
290 __uint16_t __fpu_cs; /* x87 FPU Instruction Pointer Selector */
291 __uint16_t __fpu_rsrv2; /* reserved */
292 __uint32_t __fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
293 __uint16_t __fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
294 __uint16_t __fpu_rsrv3; /* reserved */
295 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
296 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
297 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
298 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
299 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
300 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
301 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
302 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
303 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
304 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
305 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
306 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
307 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
308 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
309 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
310 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
311 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
312 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
313 char __fpu_rsrv4[14*16]; /* reserved */
314 int __fpu_reserved1;
315};
316
317#define _STRUCT_X86_AVX_STATE32 struct __darwin_i386_avx_state
318_STRUCT_X86_AVX_STATE32
319{
320 int __fpu_reserved[2];
321 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
322 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
323 __uint8_t __fpu_ftw; /* x87 FPU tag word */
324 __uint8_t __fpu_rsrv1; /* reserved */
325 __uint16_t __fpu_fop; /* x87 FPU Opcode */
326 __uint32_t __fpu_ip; /* x87 FPU Instruction Pointer offset */
327 __uint16_t __fpu_cs; /* x87 FPU Instruction Pointer Selector */
328 __uint16_t __fpu_rsrv2; /* reserved */
329 __uint32_t __fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
330 __uint16_t __fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
331 __uint16_t __fpu_rsrv3; /* reserved */
332 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
333 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
334 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
335 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
336 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
337 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
338 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
339 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
340 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
341 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
342 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
343 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
344 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
345 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
346 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
347 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
348 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
349 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
350 char __fpu_rsrv4[14*16]; /* reserved */
351 int __fpu_reserved1;
352 char __avx_reserved1[64];
353 _STRUCT_XMM_REG __fpu_ymmh0; /* YMMH 0 */
354 _STRUCT_XMM_REG __fpu_ymmh1; /* YMMH 1 */
355 _STRUCT_XMM_REG __fpu_ymmh2; /* YMMH 2 */
356 _STRUCT_XMM_REG __fpu_ymmh3; /* YMMH 3 */
357 _STRUCT_XMM_REG __fpu_ymmh4; /* YMMH 4 */
358 _STRUCT_XMM_REG __fpu_ymmh5; /* YMMH 5 */
359 _STRUCT_XMM_REG __fpu_ymmh6; /* YMMH 6 */
360 _STRUCT_XMM_REG __fpu_ymmh7; /* YMMH 7 */
361};
362
363#define _STRUCT_X86_AVX512_STATE32 struct __darwin_i386_avx512_state
364_STRUCT_X86_AVX512_STATE32
365{
366 int __fpu_reserved[2];
367 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
368 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
369 __uint8_t __fpu_ftw; /* x87 FPU tag word */
370 __uint8_t __fpu_rsrv1; /* reserved */
371 __uint16_t __fpu_fop; /* x87 FPU Opcode */
372 __uint32_t __fpu_ip; /* x87 FPU Instruction Pointer offset */
373 __uint16_t __fpu_cs; /* x87 FPU Instruction Pointer Selector */
374 __uint16_t __fpu_rsrv2; /* reserved */
375 __uint32_t __fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
376 __uint16_t __fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
377 __uint16_t __fpu_rsrv3; /* reserved */
378 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
379 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
380 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
381 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
382 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
383 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
384 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
385 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
386 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
387 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
388 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
389 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
390 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
391 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
392 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
393 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
394 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
395 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
396 char __fpu_rsrv4[14*16]; /* reserved */
397 int __fpu_reserved1;
398 char __avx_reserved1[64];
399 _STRUCT_XMM_REG __fpu_ymmh0; /* YMMH 0 */
400 _STRUCT_XMM_REG __fpu_ymmh1; /* YMMH 1 */
401 _STRUCT_XMM_REG __fpu_ymmh2; /* YMMH 2 */
402 _STRUCT_XMM_REG __fpu_ymmh3; /* YMMH 3 */
403 _STRUCT_XMM_REG __fpu_ymmh4; /* YMMH 4 */
404 _STRUCT_XMM_REG __fpu_ymmh5; /* YMMH 5 */
405 _STRUCT_XMM_REG __fpu_ymmh6; /* YMMH 6 */
406 _STRUCT_XMM_REG __fpu_ymmh7; /* YMMH 7 */
407 _STRUCT_OPMASK_REG __fpu_k0; /* K0 */
408 _STRUCT_OPMASK_REG __fpu_k1; /* K1 */
409 _STRUCT_OPMASK_REG __fpu_k2; /* K2 */
410 _STRUCT_OPMASK_REG __fpu_k3; /* K3 */
411 _STRUCT_OPMASK_REG __fpu_k4; /* K4 */
412 _STRUCT_OPMASK_REG __fpu_k5; /* K5 */
413 _STRUCT_OPMASK_REG __fpu_k6; /* K6 */
414 _STRUCT_OPMASK_REG __fpu_k7; /* K7 */
415 _STRUCT_YMM_REG __fpu_zmmh0; /* ZMMH 0 */
416 _STRUCT_YMM_REG __fpu_zmmh1; /* ZMMH 1 */
417 _STRUCT_YMM_REG __fpu_zmmh2; /* ZMMH 2 */
418 _STRUCT_YMM_REG __fpu_zmmh3; /* ZMMH 3 */
419 _STRUCT_YMM_REG __fpu_zmmh4; /* ZMMH 4 */
420 _STRUCT_YMM_REG __fpu_zmmh5; /* ZMMH 5 */
421 _STRUCT_YMM_REG __fpu_zmmh6; /* ZMMH 6 */
422 _STRUCT_YMM_REG __fpu_zmmh7; /* ZMMH 7 */
423};
424
425#else /* !__DARWIN_UNIX03 */
426#define _STRUCT_X86_FLOAT_STATE32 struct i386_float_state
427_STRUCT_X86_FLOAT_STATE32
428{
429 int fpu_reserved[2];
430 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
431 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
432 __uint8_t fpu_ftw; /* x87 FPU tag word */
433 __uint8_t fpu_rsrv1; /* reserved */
434 __uint16_t fpu_fop; /* x87 FPU Opcode */
435 __uint32_t fpu_ip; /* x87 FPU Instruction Pointer offset */
436 __uint16_t fpu_cs; /* x87 FPU Instruction Pointer Selector */
437 __uint16_t fpu_rsrv2; /* reserved */
438 __uint32_t fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
439 __uint16_t fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
440 __uint16_t fpu_rsrv3; /* reserved */
441 __uint32_t fpu_mxcsr; /* MXCSR Register state */
442 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
443 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
444 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
445 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
446 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
447 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
448 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
449 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
450 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
451 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
452 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
453 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
454 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
455 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
456 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
457 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
458 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
459 char fpu_rsrv4[14*16]; /* reserved */
460 int fpu_reserved1;
461};
462
463#define _STRUCT_X86_AVX_STATE32 struct i386_avx_state
464_STRUCT_X86_AVX_STATE32
465{
466 int fpu_reserved[2];
467 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
468 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
469 __uint8_t fpu_ftw; /* x87 FPU tag word */
470 __uint8_t fpu_rsrv1; /* reserved */
471 __uint16_t fpu_fop; /* x87 FPU Opcode */
472 __uint32_t fpu_ip; /* x87 FPU Instruction Pointer offset */
473 __uint16_t fpu_cs; /* x87 FPU Instruction Pointer Selector */
474 __uint16_t fpu_rsrv2; /* reserved */
475 __uint32_t fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
476 __uint16_t fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
477 __uint16_t fpu_rsrv3; /* reserved */
478 __uint32_t fpu_mxcsr; /* MXCSR Register state */
479 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
480 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
481 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
482 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
483 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
484 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
485 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
486 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
487 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
488 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
489 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
490 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
491 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
492 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
493 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
494 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
495 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
496 char fpu_rsrv4[14*16]; /* reserved */
497 int fpu_reserved1;
498 char avx_reserved1[64];
499 _STRUCT_XMM_REG fpu_ymmh0; /* YMMH 0 */
500 _STRUCT_XMM_REG fpu_ymmh1; /* YMMH 1 */
501 _STRUCT_XMM_REG fpu_ymmh2; /* YMMH 2 */
502 _STRUCT_XMM_REG fpu_ymmh3; /* YMMH 3 */
503 _STRUCT_XMM_REG fpu_ymmh4; /* YMMH 4 */
504 _STRUCT_XMM_REG fpu_ymmh5; /* YMMH 5 */
505 _STRUCT_XMM_REG fpu_ymmh6; /* YMMH 6 */
506 _STRUCT_XMM_REG fpu_ymmh7; /* YMMH 7 */
507};
508
509#define _STRUCT_X86_AVX512_STATE32 struct i386_avx512_state
510_STRUCT_X86_AVX512_STATE32
511{
512 int fpu_reserved[2];
513 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
514 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
515 __uint8_t fpu_ftw; /* x87 FPU tag word */
516 __uint8_t fpu_rsrv1; /* reserved */
517 __uint16_t fpu_fop; /* x87 FPU Opcode */
518 __uint32_t fpu_ip; /* x87 FPU Instruction Pointer offset */
519 __uint16_t fpu_cs; /* x87 FPU Instruction Pointer Selector */
520 __uint16_t fpu_rsrv2; /* reserved */
521 __uint32_t fpu_dp; /* x87 FPU Instruction Operand(Data) Pointer offset */
522 __uint16_t fpu_ds; /* x87 FPU Instruction Operand(Data) Pointer Selector */
523 __uint16_t fpu_rsrv3; /* reserved */
524 __uint32_t fpu_mxcsr; /* MXCSR Register state */
525 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
526 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
527 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
528 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
529 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
530 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
531 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
532 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
533 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
534 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
535 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
536 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
537 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
538 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
539 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
540 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
541 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
542 char fpu_rsrv4[14*16]; /* reserved */
543 int fpu_reserved1;
544 char avx_reserved1[64];
545 _STRUCT_XMM_REG fpu_ymmh0; /* YMMH 0 */
546 _STRUCT_XMM_REG fpu_ymmh1; /* YMMH 1 */
547 _STRUCT_XMM_REG fpu_ymmh2; /* YMMH 2 */
548 _STRUCT_XMM_REG fpu_ymmh3; /* YMMH 3 */
549 _STRUCT_XMM_REG fpu_ymmh4; /* YMMH 4 */
550 _STRUCT_XMM_REG fpu_ymmh5; /* YMMH 5 */
551 _STRUCT_XMM_REG fpu_ymmh6; /* YMMH 6 */
552 _STRUCT_XMM_REG fpu_ymmh7; /* YMMH 7 */
553 _STRUCT_OPMASK_REG fpu_k0; /* K0 */
554 _STRUCT_OPMASK_REG fpu_k1; /* K1 */
555 _STRUCT_OPMASK_REG fpu_k2; /* K2 */
556 _STRUCT_OPMASK_REG fpu_k3; /* K3 */
557 _STRUCT_OPMASK_REG fpu_k4; /* K4 */
558 _STRUCT_OPMASK_REG fpu_k5; /* K5 */
559 _STRUCT_OPMASK_REG fpu_k6; /* K6 */
560 _STRUCT_OPMASK_REG fpu_k7; /* K7 */
561 _STRUCT_YMM_REG fpu_zmmh0; /* ZMMH 0 */
562 _STRUCT_YMM_REG fpu_zmmh1; /* ZMMH 1 */
563 _STRUCT_YMM_REG fpu_zmmh2; /* ZMMH 2 */
564 _STRUCT_YMM_REG fpu_zmmh3; /* ZMMH 3 */
565 _STRUCT_YMM_REG fpu_zmmh4; /* ZMMH 4 */
566 _STRUCT_YMM_REG fpu_zmmh5; /* ZMMH 5 */
567 _STRUCT_YMM_REG fpu_zmmh6; /* ZMMH 6 */
568 _STRUCT_YMM_REG fpu_zmmh7; /* ZMMH 7 */
569};
570
571#endif /* !__DARWIN_UNIX03 */
572
573#if __DARWIN_UNIX03
574#define _STRUCT_X86_EXCEPTION_STATE32 struct __darwin_i386_exception_state
575_STRUCT_X86_EXCEPTION_STATE32
576{
577 __uint16_t __trapno;
578 __uint16_t __cpu;
579 __uint32_t __err;
580 __uint32_t __faultvaddr;
581};
582#else /* !__DARWIN_UNIX03 */
583#define _STRUCT_X86_EXCEPTION_STATE32 struct i386_exception_state
584_STRUCT_X86_EXCEPTION_STATE32
585{
586 __uint16_t trapno;
587 __uint16_t cpu;
588 __uint32_t err;
589 __uint32_t faultvaddr;
590};
591#endif /* !__DARWIN_UNIX03 */
592
593#if __DARWIN_UNIX03
594#define _STRUCT_X86_DEBUG_STATE32 struct __darwin_x86_debug_state32
595_STRUCT_X86_DEBUG_STATE32
596{
597 unsigned int __dr0;
598 unsigned int __dr1;
599 unsigned int __dr2;
600 unsigned int __dr3;
601 unsigned int __dr4;
602 unsigned int __dr5;
603 unsigned int __dr6;
604 unsigned int __dr7;
605};
606#else /* !__DARWIN_UNIX03 */
607#define _STRUCT_X86_DEBUG_STATE32 struct x86_debug_state32
608_STRUCT_X86_DEBUG_STATE32
609{
610 unsigned int dr0;
611 unsigned int dr1;
612 unsigned int dr2;
613 unsigned int dr3;
614 unsigned int dr4;
615 unsigned int dr5;
616 unsigned int dr6;
617 unsigned int dr7;
618};
619#endif /* !__DARWIN_UNIX03 */
620
621#define _STRUCT_X86_PAGEIN_STATE struct __x86_pagein_state
622_STRUCT_X86_PAGEIN_STATE
623{
624 int __pagein_error;
625};
626
627/*
628 * 64 bit versions of the above
629 */
630
631#if __DARWIN_UNIX03
632#define _STRUCT_X86_THREAD_STATE64 struct __darwin_x86_thread_state64
633_STRUCT_X86_THREAD_STATE64
634{
635 __uint64_t __rax;
636 __uint64_t __rbx;
637 __uint64_t __rcx;
638 __uint64_t __rdx;
639 __uint64_t __rdi;
640 __uint64_t __rsi;
641 __uint64_t __rbp;
642 __uint64_t __rsp;
643 __uint64_t __r8;
644 __uint64_t __r9;
645 __uint64_t __r10;
646 __uint64_t __r11;
647 __uint64_t __r12;
648 __uint64_t __r13;
649 __uint64_t __r14;
650 __uint64_t __r15;
651 __uint64_t __rip;
652 __uint64_t __rflags;
653 __uint64_t __cs;
654 __uint64_t __fs;
655 __uint64_t __gs;
656};
657#else /* !__DARWIN_UNIX03 */
658#define _STRUCT_X86_THREAD_STATE64 struct x86_thread_state64
659_STRUCT_X86_THREAD_STATE64
660{
661 __uint64_t rax;
662 __uint64_t rbx;
663 __uint64_t rcx;
664 __uint64_t rdx;
665 __uint64_t rdi;
666 __uint64_t rsi;
667 __uint64_t rbp;
668 __uint64_t rsp;
669 __uint64_t r8;
670 __uint64_t r9;
671 __uint64_t r10;
672 __uint64_t r11;
673 __uint64_t r12;
674 __uint64_t r13;
675 __uint64_t r14;
676 __uint64_t r15;
677 __uint64_t rip;
678 __uint64_t rflags;
679 __uint64_t cs;
680 __uint64_t fs;
681 __uint64_t gs;
682};
683#endif /* !__DARWIN_UNIX03 */
684
685/*
686 * 64 bit versions of the above (complete)
687 */
688
689#if __DARWIN_UNIX03
690#define _STRUCT_X86_THREAD_FULL_STATE64 struct __darwin_x86_thread_full_state64
691_STRUCT_X86_THREAD_FULL_STATE64
692{
693 _STRUCT_X86_THREAD_STATE64 __ss64;
694 __uint64_t __ds;
695 __uint64_t __es;
696 __uint64_t __ss;
697 __uint64_t __gsbase;
698};
699#else /* !__DARWIN_UNIX03 */
700#define _STRUCT_X86_THREAD_FULL_STATE64 struct x86_thread_full_state64
701_STRUCT_X86_THREAD_FULL_STATE64
702{
703 _STRUCT_X86_THREAD_STATE64 ss64;
704 __uint64_t ds;
705 __uint64_t es;
706 __uint64_t ss;
707 __uint64_t gsbase;
708};
709#endif /* !__DARWIN_UNIX03 */
710
711
712#if __DARWIN_UNIX03
713#define _STRUCT_X86_FLOAT_STATE64 struct __darwin_x86_float_state64
714_STRUCT_X86_FLOAT_STATE64
715{
716 int __fpu_reserved[2];
717 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
718 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
719 __uint8_t __fpu_ftw; /* x87 FPU tag word */
720 __uint8_t __fpu_rsrv1; /* reserved */
721 __uint16_t __fpu_fop; /* x87 FPU Opcode */
722
723 /* x87 FPU Instruction Pointer */
724 __uint32_t __fpu_ip; /* offset */
725 __uint16_t __fpu_cs; /* Selector */
726
727 __uint16_t __fpu_rsrv2; /* reserved */
728
729 /* x87 FPU Instruction Operand(Data) Pointer */
730 __uint32_t __fpu_dp; /* offset */
731 __uint16_t __fpu_ds; /* Selector */
732
733 __uint16_t __fpu_rsrv3; /* reserved */
734 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
735 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
736 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
737 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
738 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
739 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
740 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
741 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
742 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
743 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
744 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
745 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
746 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
747 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
748 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
749 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
750 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
751 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
752 _STRUCT_XMM_REG __fpu_xmm8; /* XMM 8 */
753 _STRUCT_XMM_REG __fpu_xmm9; /* XMM 9 */
754 _STRUCT_XMM_REG __fpu_xmm10; /* XMM 10 */
755 _STRUCT_XMM_REG __fpu_xmm11; /* XMM 11 */
756 _STRUCT_XMM_REG __fpu_xmm12; /* XMM 12 */
757 _STRUCT_XMM_REG __fpu_xmm13; /* XMM 13 */
758 _STRUCT_XMM_REG __fpu_xmm14; /* XMM 14 */
759 _STRUCT_XMM_REG __fpu_xmm15; /* XMM 15 */
760 char __fpu_rsrv4[6*16]; /* reserved */
761 int __fpu_reserved1;
762};
763
764#define _STRUCT_X86_AVX_STATE64 struct __darwin_x86_avx_state64
765_STRUCT_X86_AVX_STATE64
766{
767 int __fpu_reserved[2];
768 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
769 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
770 __uint8_t __fpu_ftw; /* x87 FPU tag word */
771 __uint8_t __fpu_rsrv1; /* reserved */
772 __uint16_t __fpu_fop; /* x87 FPU Opcode */
773
774 /* x87 FPU Instruction Pointer */
775 __uint32_t __fpu_ip; /* offset */
776 __uint16_t __fpu_cs; /* Selector */
777
778 __uint16_t __fpu_rsrv2; /* reserved */
779
780 /* x87 FPU Instruction Operand(Data) Pointer */
781 __uint32_t __fpu_dp; /* offset */
782 __uint16_t __fpu_ds; /* Selector */
783
784 __uint16_t __fpu_rsrv3; /* reserved */
785 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
786 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
787 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
788 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
789 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
790 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
791 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
792 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
793 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
794 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
795 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
796 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
797 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
798 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
799 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
800 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
801 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
802 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
803 _STRUCT_XMM_REG __fpu_xmm8; /* XMM 8 */
804 _STRUCT_XMM_REG __fpu_xmm9; /* XMM 9 */
805 _STRUCT_XMM_REG __fpu_xmm10; /* XMM 10 */
806 _STRUCT_XMM_REG __fpu_xmm11; /* XMM 11 */
807 _STRUCT_XMM_REG __fpu_xmm12; /* XMM 12 */
808 _STRUCT_XMM_REG __fpu_xmm13; /* XMM 13 */
809 _STRUCT_XMM_REG __fpu_xmm14; /* XMM 14 */
810 _STRUCT_XMM_REG __fpu_xmm15; /* XMM 15 */
811 char __fpu_rsrv4[6*16]; /* reserved */
812 int __fpu_reserved1;
813 char __avx_reserved1[64];
814 _STRUCT_XMM_REG __fpu_ymmh0; /* YMMH 0 */
815 _STRUCT_XMM_REG __fpu_ymmh1; /* YMMH 1 */
816 _STRUCT_XMM_REG __fpu_ymmh2; /* YMMH 2 */
817 _STRUCT_XMM_REG __fpu_ymmh3; /* YMMH 3 */
818 _STRUCT_XMM_REG __fpu_ymmh4; /* YMMH 4 */
819 _STRUCT_XMM_REG __fpu_ymmh5; /* YMMH 5 */
820 _STRUCT_XMM_REG __fpu_ymmh6; /* YMMH 6 */
821 _STRUCT_XMM_REG __fpu_ymmh7; /* YMMH 7 */
822 _STRUCT_XMM_REG __fpu_ymmh8; /* YMMH 8 */
823 _STRUCT_XMM_REG __fpu_ymmh9; /* YMMH 9 */
824 _STRUCT_XMM_REG __fpu_ymmh10; /* YMMH 10 */
825 _STRUCT_XMM_REG __fpu_ymmh11; /* YMMH 11 */
826 _STRUCT_XMM_REG __fpu_ymmh12; /* YMMH 12 */
827 _STRUCT_XMM_REG __fpu_ymmh13; /* YMMH 13 */
828 _STRUCT_XMM_REG __fpu_ymmh14; /* YMMH 14 */
829 _STRUCT_XMM_REG __fpu_ymmh15; /* YMMH 15 */
830};
831
832#define _STRUCT_X86_AVX512_STATE64 struct __darwin_x86_avx512_state64
833_STRUCT_X86_AVX512_STATE64
834{
835 int __fpu_reserved[2];
836 _STRUCT_FP_CONTROL __fpu_fcw; /* x87 FPU control word */
837 _STRUCT_FP_STATUS __fpu_fsw; /* x87 FPU status word */
838 __uint8_t __fpu_ftw; /* x87 FPU tag word */
839 __uint8_t __fpu_rsrv1; /* reserved */
840 __uint16_t __fpu_fop; /* x87 FPU Opcode */
841
842 /* x87 FPU Instruction Pointer */
843 __uint32_t __fpu_ip; /* offset */
844 __uint16_t __fpu_cs; /* Selector */
845
846 __uint16_t __fpu_rsrv2; /* reserved */
847
848 /* x87 FPU Instruction Operand(Data) Pointer */
849 __uint32_t __fpu_dp; /* offset */
850 __uint16_t __fpu_ds; /* Selector */
851
852 __uint16_t __fpu_rsrv3; /* reserved */
853 __uint32_t __fpu_mxcsr; /* MXCSR Register state */
854 __uint32_t __fpu_mxcsrmask; /* MXCSR mask */
855 _STRUCT_MMST_REG __fpu_stmm0; /* ST0/MM0 */
856 _STRUCT_MMST_REG __fpu_stmm1; /* ST1/MM1 */
857 _STRUCT_MMST_REG __fpu_stmm2; /* ST2/MM2 */
858 _STRUCT_MMST_REG __fpu_stmm3; /* ST3/MM3 */
859 _STRUCT_MMST_REG __fpu_stmm4; /* ST4/MM4 */
860 _STRUCT_MMST_REG __fpu_stmm5; /* ST5/MM5 */
861 _STRUCT_MMST_REG __fpu_stmm6; /* ST6/MM6 */
862 _STRUCT_MMST_REG __fpu_stmm7; /* ST7/MM7 */
863 _STRUCT_XMM_REG __fpu_xmm0; /* XMM 0 */
864 _STRUCT_XMM_REG __fpu_xmm1; /* XMM 1 */
865 _STRUCT_XMM_REG __fpu_xmm2; /* XMM 2 */
866 _STRUCT_XMM_REG __fpu_xmm3; /* XMM 3 */
867 _STRUCT_XMM_REG __fpu_xmm4; /* XMM 4 */
868 _STRUCT_XMM_REG __fpu_xmm5; /* XMM 5 */
869 _STRUCT_XMM_REG __fpu_xmm6; /* XMM 6 */
870 _STRUCT_XMM_REG __fpu_xmm7; /* XMM 7 */
871 _STRUCT_XMM_REG __fpu_xmm8; /* XMM 8 */
872 _STRUCT_XMM_REG __fpu_xmm9; /* XMM 9 */
873 _STRUCT_XMM_REG __fpu_xmm10; /* XMM 10 */
874 _STRUCT_XMM_REG __fpu_xmm11; /* XMM 11 */
875 _STRUCT_XMM_REG __fpu_xmm12; /* XMM 12 */
876 _STRUCT_XMM_REG __fpu_xmm13; /* XMM 13 */
877 _STRUCT_XMM_REG __fpu_xmm14; /* XMM 14 */
878 _STRUCT_XMM_REG __fpu_xmm15; /* XMM 15 */
879 char __fpu_rsrv4[6*16]; /* reserved */
880 int __fpu_reserved1;
881 char __avx_reserved1[64];
882 _STRUCT_XMM_REG __fpu_ymmh0; /* YMMH 0 */
883 _STRUCT_XMM_REG __fpu_ymmh1; /* YMMH 1 */
884 _STRUCT_XMM_REG __fpu_ymmh2; /* YMMH 2 */
885 _STRUCT_XMM_REG __fpu_ymmh3; /* YMMH 3 */
886 _STRUCT_XMM_REG __fpu_ymmh4; /* YMMH 4 */
887 _STRUCT_XMM_REG __fpu_ymmh5; /* YMMH 5 */
888 _STRUCT_XMM_REG __fpu_ymmh6; /* YMMH 6 */
889 _STRUCT_XMM_REG __fpu_ymmh7; /* YMMH 7 */
890 _STRUCT_XMM_REG __fpu_ymmh8; /* YMMH 8 */
891 _STRUCT_XMM_REG __fpu_ymmh9; /* YMMH 9 */
892 _STRUCT_XMM_REG __fpu_ymmh10; /* YMMH 10 */
893 _STRUCT_XMM_REG __fpu_ymmh11; /* YMMH 11 */
894 _STRUCT_XMM_REG __fpu_ymmh12; /* YMMH 12 */
895 _STRUCT_XMM_REG __fpu_ymmh13; /* YMMH 13 */
896 _STRUCT_XMM_REG __fpu_ymmh14; /* YMMH 14 */
897 _STRUCT_XMM_REG __fpu_ymmh15; /* YMMH 15 */
898 _STRUCT_OPMASK_REG __fpu_k0; /* K0 */
899 _STRUCT_OPMASK_REG __fpu_k1; /* K1 */
900 _STRUCT_OPMASK_REG __fpu_k2; /* K2 */
901 _STRUCT_OPMASK_REG __fpu_k3; /* K3 */
902 _STRUCT_OPMASK_REG __fpu_k4; /* K4 */
903 _STRUCT_OPMASK_REG __fpu_k5; /* K5 */
904 _STRUCT_OPMASK_REG __fpu_k6; /* K6 */
905 _STRUCT_OPMASK_REG __fpu_k7; /* K7 */
906 _STRUCT_YMM_REG __fpu_zmmh0; /* ZMMH 0 */
907 _STRUCT_YMM_REG __fpu_zmmh1; /* ZMMH 1 */
908 _STRUCT_YMM_REG __fpu_zmmh2; /* ZMMH 2 */
909 _STRUCT_YMM_REG __fpu_zmmh3; /* ZMMH 3 */
910 _STRUCT_YMM_REG __fpu_zmmh4; /* ZMMH 4 */
911 _STRUCT_YMM_REG __fpu_zmmh5; /* ZMMH 5 */
912 _STRUCT_YMM_REG __fpu_zmmh6; /* ZMMH 6 */
913 _STRUCT_YMM_REG __fpu_zmmh7; /* ZMMH 7 */
914 _STRUCT_YMM_REG __fpu_zmmh8; /* ZMMH 8 */
915 _STRUCT_YMM_REG __fpu_zmmh9; /* ZMMH 9 */
916 _STRUCT_YMM_REG __fpu_zmmh10; /* ZMMH 10 */
917 _STRUCT_YMM_REG __fpu_zmmh11; /* ZMMH 11 */
918 _STRUCT_YMM_REG __fpu_zmmh12; /* ZMMH 12 */
919 _STRUCT_YMM_REG __fpu_zmmh13; /* ZMMH 13 */
920 _STRUCT_YMM_REG __fpu_zmmh14; /* ZMMH 14 */
921 _STRUCT_YMM_REG __fpu_zmmh15; /* ZMMH 15 */
922 _STRUCT_ZMM_REG __fpu_zmm16; /* ZMM 16 */
923 _STRUCT_ZMM_REG __fpu_zmm17; /* ZMM 17 */
924 _STRUCT_ZMM_REG __fpu_zmm18; /* ZMM 18 */
925 _STRUCT_ZMM_REG __fpu_zmm19; /* ZMM 19 */
926 _STRUCT_ZMM_REG __fpu_zmm20; /* ZMM 20 */
927 _STRUCT_ZMM_REG __fpu_zmm21; /* ZMM 21 */
928 _STRUCT_ZMM_REG __fpu_zmm22; /* ZMM 22 */
929 _STRUCT_ZMM_REG __fpu_zmm23; /* ZMM 23 */
930 _STRUCT_ZMM_REG __fpu_zmm24; /* ZMM 24 */
931 _STRUCT_ZMM_REG __fpu_zmm25; /* ZMM 25 */
932 _STRUCT_ZMM_REG __fpu_zmm26; /* ZMM 26 */
933 _STRUCT_ZMM_REG __fpu_zmm27; /* ZMM 27 */
934 _STRUCT_ZMM_REG __fpu_zmm28; /* ZMM 28 */
935 _STRUCT_ZMM_REG __fpu_zmm29; /* ZMM 29 */
936 _STRUCT_ZMM_REG __fpu_zmm30; /* ZMM 30 */
937 _STRUCT_ZMM_REG __fpu_zmm31; /* ZMM 31 */
938};
939
940#else /* !__DARWIN_UNIX03 */
941#define _STRUCT_X86_FLOAT_STATE64 struct x86_float_state64
942_STRUCT_X86_FLOAT_STATE64
943{
944 int fpu_reserved[2];
945 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
946 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
947 __uint8_t fpu_ftw; /* x87 FPU tag word */
948 __uint8_t fpu_rsrv1; /* reserved */
949 __uint16_t fpu_fop; /* x87 FPU Opcode */
950
951 /* x87 FPU Instruction Pointer */
952 __uint32_t fpu_ip; /* offset */
953 __uint16_t fpu_cs; /* Selector */
954
955 __uint16_t fpu_rsrv2; /* reserved */
956
957 /* x87 FPU Instruction Operand(Data) Pointer */
958 __uint32_t fpu_dp; /* offset */
959 __uint16_t fpu_ds; /* Selector */
960
961 __uint16_t fpu_rsrv3; /* reserved */
962 __uint32_t fpu_mxcsr; /* MXCSR Register state */
963 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
964 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
965 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
966 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
967 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
968 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
969 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
970 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
971 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
972 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
973 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
974 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
975 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
976 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
977 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
978 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
979 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
980 _STRUCT_XMM_REG fpu_xmm8; /* XMM 8 */
981 _STRUCT_XMM_REG fpu_xmm9; /* XMM 9 */
982 _STRUCT_XMM_REG fpu_xmm10; /* XMM 10 */
983 _STRUCT_XMM_REG fpu_xmm11; /* XMM 11 */
984 _STRUCT_XMM_REG fpu_xmm12; /* XMM 12 */
985 _STRUCT_XMM_REG fpu_xmm13; /* XMM 13 */
986 _STRUCT_XMM_REG fpu_xmm14; /* XMM 14 */
987 _STRUCT_XMM_REG fpu_xmm15; /* XMM 15 */
988 char fpu_rsrv4[6*16]; /* reserved */
989 int fpu_reserved1;
990};
991
992#define _STRUCT_X86_AVX_STATE64 struct x86_avx_state64
993_STRUCT_X86_AVX_STATE64
994{
995 int fpu_reserved[2];
996 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
997 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
998 __uint8_t fpu_ftw; /* x87 FPU tag word */
999 __uint8_t fpu_rsrv1; /* reserved */
1000 __uint16_t fpu_fop; /* x87 FPU Opcode */
1001
1002 /* x87 FPU Instruction Pointer */
1003 __uint32_t fpu_ip; /* offset */
1004 __uint16_t fpu_cs; /* Selector */
1005
1006 __uint16_t fpu_rsrv2; /* reserved */
1007
1008 /* x87 FPU Instruction Operand(Data) Pointer */
1009 __uint32_t fpu_dp; /* offset */
1010 __uint16_t fpu_ds; /* Selector */
1011
1012 __uint16_t fpu_rsrv3; /* reserved */
1013 __uint32_t fpu_mxcsr; /* MXCSR Register state */
1014 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
1015 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
1016 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
1017 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
1018 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
1019 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
1020 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
1021 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
1022 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
1023 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
1024 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
1025 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
1026 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
1027 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
1028 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
1029 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
1030 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
1031 _STRUCT_XMM_REG fpu_xmm8; /* XMM 8 */
1032 _STRUCT_XMM_REG fpu_xmm9; /* XMM 9 */
1033 _STRUCT_XMM_REG fpu_xmm10; /* XMM 10 */
1034 _STRUCT_XMM_REG fpu_xmm11; /* XMM 11 */
1035 _STRUCT_XMM_REG fpu_xmm12; /* XMM 12 */
1036 _STRUCT_XMM_REG fpu_xmm13; /* XMM 13 */
1037 _STRUCT_XMM_REG fpu_xmm14; /* XMM 14 */
1038 _STRUCT_XMM_REG fpu_xmm15; /* XMM 15 */
1039 char fpu_rsrv4[6*16]; /* reserved */
1040 int fpu_reserved1;
1041 char avx_reserved1[64];
1042 _STRUCT_XMM_REG fpu_ymmh0; /* YMMH 0 */
1043 _STRUCT_XMM_REG fpu_ymmh1; /* YMMH 1 */
1044 _STRUCT_XMM_REG fpu_ymmh2; /* YMMH 2 */
1045 _STRUCT_XMM_REG fpu_ymmh3; /* YMMH 3 */
1046 _STRUCT_XMM_REG fpu_ymmh4; /* YMMH 4 */
1047 _STRUCT_XMM_REG fpu_ymmh5; /* YMMH 5 */
1048 _STRUCT_XMM_REG fpu_ymmh6; /* YMMH 6 */
1049 _STRUCT_XMM_REG fpu_ymmh7; /* YMMH 7 */
1050 _STRUCT_XMM_REG fpu_ymmh8; /* YMMH 8 */
1051 _STRUCT_XMM_REG fpu_ymmh9; /* YMMH 9 */
1052 _STRUCT_XMM_REG fpu_ymmh10; /* YMMH 10 */
1053 _STRUCT_XMM_REG fpu_ymmh11; /* YMMH 11 */
1054 _STRUCT_XMM_REG fpu_ymmh12; /* YMMH 12 */
1055 _STRUCT_XMM_REG fpu_ymmh13; /* YMMH 13 */
1056 _STRUCT_XMM_REG fpu_ymmh14; /* YMMH 14 */
1057 _STRUCT_XMM_REG fpu_ymmh15; /* YMMH 15 */
1058};
1059
1060#define _STRUCT_X86_AVX512_STATE64 struct x86_avx512_state64
1061_STRUCT_X86_AVX512_STATE64
1062{
1063 int fpu_reserved[2];
1064 _STRUCT_FP_CONTROL fpu_fcw; /* x87 FPU control word */
1065 _STRUCT_FP_STATUS fpu_fsw; /* x87 FPU status word */
1066 __uint8_t fpu_ftw; /* x87 FPU tag word */
1067 __uint8_t fpu_rsrv1; /* reserved */
1068 __uint16_t fpu_fop; /* x87 FPU Opcode */
1069
1070 /* x87 FPU Instruction Pointer */
1071 __uint32_t fpu_ip; /* offset */
1072 __uint16_t fpu_cs; /* Selector */
1073
1074 __uint16_t fpu_rsrv2; /* reserved */
1075
1076 /* x87 FPU Instruction Operand(Data) Pointer */
1077 __uint32_t fpu_dp; /* offset */
1078 __uint16_t fpu_ds; /* Selector */
1079
1080 __uint16_t fpu_rsrv3; /* reserved */
1081 __uint32_t fpu_mxcsr; /* MXCSR Register state */
1082 __uint32_t fpu_mxcsrmask; /* MXCSR mask */
1083 _STRUCT_MMST_REG fpu_stmm0; /* ST0/MM0 */
1084 _STRUCT_MMST_REG fpu_stmm1; /* ST1/MM1 */
1085 _STRUCT_MMST_REG fpu_stmm2; /* ST2/MM2 */
1086 _STRUCT_MMST_REG fpu_stmm3; /* ST3/MM3 */
1087 _STRUCT_MMST_REG fpu_stmm4; /* ST4/MM4 */
1088 _STRUCT_MMST_REG fpu_stmm5; /* ST5/MM5 */
1089 _STRUCT_MMST_REG fpu_stmm6; /* ST6/MM6 */
1090 _STRUCT_MMST_REG fpu_stmm7; /* ST7/MM7 */
1091 _STRUCT_XMM_REG fpu_xmm0; /* XMM 0 */
1092 _STRUCT_XMM_REG fpu_xmm1; /* XMM 1 */
1093 _STRUCT_XMM_REG fpu_xmm2; /* XMM 2 */
1094 _STRUCT_XMM_REG fpu_xmm3; /* XMM 3 */
1095 _STRUCT_XMM_REG fpu_xmm4; /* XMM 4 */
1096 _STRUCT_XMM_REG fpu_xmm5; /* XMM 5 */
1097 _STRUCT_XMM_REG fpu_xmm6; /* XMM 6 */
1098 _STRUCT_XMM_REG fpu_xmm7; /* XMM 7 */
1099 _STRUCT_XMM_REG fpu_xmm8; /* XMM 8 */
1100 _STRUCT_XMM_REG fpu_xmm9; /* XMM 9 */
1101 _STRUCT_XMM_REG fpu_xmm10; /* XMM 10 */
1102 _STRUCT_XMM_REG fpu_xmm11; /* XMM 11 */
1103 _STRUCT_XMM_REG fpu_xmm12; /* XMM 12 */
1104 _STRUCT_XMM_REG fpu_xmm13; /* XMM 13 */
1105 _STRUCT_XMM_REG fpu_xmm14; /* XMM 14 */
1106 _STRUCT_XMM_REG fpu_xmm15; /* XMM 15 */
1107 char fpu_rsrv4[6*16]; /* reserved */
1108 int fpu_reserved1;
1109 char avx_reserved1[64];
1110 _STRUCT_XMM_REG fpu_ymmh0; /* YMMH 0 */
1111 _STRUCT_XMM_REG fpu_ymmh1; /* YMMH 1 */
1112 _STRUCT_XMM_REG fpu_ymmh2; /* YMMH 2 */
1113 _STRUCT_XMM_REG fpu_ymmh3; /* YMMH 3 */
1114 _STRUCT_XMM_REG fpu_ymmh4; /* YMMH 4 */
1115 _STRUCT_XMM_REG fpu_ymmh5; /* YMMH 5 */
1116 _STRUCT_XMM_REG fpu_ymmh6; /* YMMH 6 */
1117 _STRUCT_XMM_REG fpu_ymmh7; /* YMMH 7 */
1118 _STRUCT_XMM_REG fpu_ymmh8; /* YMMH 8 */
1119 _STRUCT_XMM_REG fpu_ymmh9; /* YMMH 9 */
1120 _STRUCT_XMM_REG fpu_ymmh10; /* YMMH 10 */
1121 _STRUCT_XMM_REG fpu_ymmh11; /* YMMH 11 */
1122 _STRUCT_XMM_REG fpu_ymmh12; /* YMMH 12 */
1123 _STRUCT_XMM_REG fpu_ymmh13; /* YMMH 13 */
1124 _STRUCT_XMM_REG fpu_ymmh14; /* YMMH 14 */
1125 _STRUCT_XMM_REG fpu_ymmh15; /* YMMH 15 */
1126 _STRUCT_OPMASK_REG fpu_k0; /* K0 */
1127 _STRUCT_OPMASK_REG fpu_k1; /* K1 */
1128 _STRUCT_OPMASK_REG fpu_k2; /* K2 */
1129 _STRUCT_OPMASK_REG fpu_k3; /* K3 */
1130 _STRUCT_OPMASK_REG fpu_k4; /* K4 */
1131 _STRUCT_OPMASK_REG fpu_k5; /* K5 */
1132 _STRUCT_OPMASK_REG fpu_k6; /* K6 */
1133 _STRUCT_OPMASK_REG fpu_k7; /* K7 */
1134 _STRUCT_YMM_REG fpu_zmmh0; /* ZMMH 0 */
1135 _STRUCT_YMM_REG fpu_zmmh1; /* ZMMH 1 */
1136 _STRUCT_YMM_REG fpu_zmmh2; /* ZMMH 2 */
1137 _STRUCT_YMM_REG fpu_zmmh3; /* ZMMH 3 */
1138 _STRUCT_YMM_REG fpu_zmmh4; /* ZMMH 4 */
1139 _STRUCT_YMM_REG fpu_zmmh5; /* ZMMH 5 */
1140 _STRUCT_YMM_REG fpu_zmmh6; /* ZMMH 6 */
1141 _STRUCT_YMM_REG fpu_zmmh7; /* ZMMH 7 */
1142 _STRUCT_YMM_REG fpu_zmmh8; /* ZMMH 8 */
1143 _STRUCT_YMM_REG fpu_zmmh9; /* ZMMH 9 */
1144 _STRUCT_YMM_REG fpu_zmmh10; /* ZMMH 10 */
1145 _STRUCT_YMM_REG fpu_zmmh11; /* ZMMH 11 */
1146 _STRUCT_YMM_REG fpu_zmmh12; /* ZMMH 12 */
1147 _STRUCT_YMM_REG fpu_zmmh13; /* ZMMH 13 */
1148 _STRUCT_YMM_REG fpu_zmmh14; /* ZMMH 14 */
1149 _STRUCT_YMM_REG fpu_zmmh15; /* ZMMH 15 */
1150 _STRUCT_ZMM_REG fpu_zmm16; /* ZMM 16 */
1151 _STRUCT_ZMM_REG fpu_zmm17; /* ZMM 17 */
1152 _STRUCT_ZMM_REG fpu_zmm18; /* ZMM 18 */
1153 _STRUCT_ZMM_REG fpu_zmm19; /* ZMM 19 */
1154 _STRUCT_ZMM_REG fpu_zmm20; /* ZMM 20 */
1155 _STRUCT_ZMM_REG fpu_zmm21; /* ZMM 21 */
1156 _STRUCT_ZMM_REG fpu_zmm22; /* ZMM 22 */
1157 _STRUCT_ZMM_REG fpu_zmm23; /* ZMM 23 */
1158 _STRUCT_ZMM_REG fpu_zmm24; /* ZMM 24 */
1159 _STRUCT_ZMM_REG fpu_zmm25; /* ZMM 25 */
1160 _STRUCT_ZMM_REG fpu_zmm26; /* ZMM 26 */
1161 _STRUCT_ZMM_REG fpu_zmm27; /* ZMM 27 */
1162 _STRUCT_ZMM_REG fpu_zmm28; /* ZMM 28 */
1163 _STRUCT_ZMM_REG fpu_zmm29; /* ZMM 29 */
1164 _STRUCT_ZMM_REG fpu_zmm30; /* ZMM 30 */
1165 _STRUCT_ZMM_REG fpu_zmm31; /* ZMM 31 */
1166};
1167
1168#endif /* !__DARWIN_UNIX03 */
1169
1170#if __DARWIN_UNIX03
1171#define _STRUCT_X86_EXCEPTION_STATE64 struct __darwin_x86_exception_state64
1172_STRUCT_X86_EXCEPTION_STATE64
1173{
1174 __uint16_t __trapno;
1175 __uint16_t __cpu;
1176 __uint32_t __err;
1177 __uint64_t __faultvaddr;
1178};
1179#else /* !__DARWIN_UNIX03 */
1180#define _STRUCT_X86_EXCEPTION_STATE64 struct x86_exception_state64
1181_STRUCT_X86_EXCEPTION_STATE64
1182{
1183 __uint16_t trapno;
1184 __uint16_t cpu;
1185 __uint32_t err;
1186 __uint64_t faultvaddr;
1187};
1188#endif /* !__DARWIN_UNIX03 */
1189
1190#if __DARWIN_UNIX03
1191#define _STRUCT_X86_DEBUG_STATE64 struct __darwin_x86_debug_state64
1192_STRUCT_X86_DEBUG_STATE64
1193{
1194 __uint64_t __dr0;
1195 __uint64_t __dr1;
1196 __uint64_t __dr2;
1197 __uint64_t __dr3;
1198 __uint64_t __dr4;
1199 __uint64_t __dr5;
1200 __uint64_t __dr6;
1201 __uint64_t __dr7;
1202};
1203#else /* !__DARWIN_UNIX03 */
1204#define _STRUCT_X86_DEBUG_STATE64 struct x86_debug_state64
1205_STRUCT_X86_DEBUG_STATE64
1206{
1207 __uint64_t dr0;
1208 __uint64_t dr1;
1209 __uint64_t dr2;
1210 __uint64_t dr3;
1211 __uint64_t dr4;
1212 __uint64_t dr5;
1213 __uint64_t dr6;
1214 __uint64_t dr7;
1215};
1216#endif /* !__DARWIN_UNIX03 */
1217
1218#if __DARWIN_UNIX03
1219#define _STRUCT_X86_CPMU_STATE64 struct __darwin_x86_cpmu_state64
1220_STRUCT_X86_CPMU_STATE64
1221{
1222 __uint64_t __ctrs[16];
1223};
1224#else /* __DARWIN_UNIX03 */
1225#define _STRUCT_X86_CPMU_STATE64 struct x86_cpmu_state64
1226_STRUCT_X86_CPMU_STATE64
1227{
1228 __uint64_t ctrs[16];
1229};
1230#endif /* !__DARWIN_UNIX03 */
1231
1232#endif /* _MACH_I386__STRUCTS_H_ */
lib/libc/include/x86_64-macos-gnu/mach/machine/_structs.h created+38
......@@ -0,0 +1,38 @@
1/*
2 * Copyright (c) 2017 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _MACH_MACHINE__STRUCTS_H_
30#define _MACH_MACHINE__STRUCTS_H_
31
32#if defined (__i386__) || defined(__x86_64__)
33#include "mach/i386/_structs.h"
34#else
35#error architecture not supported
36#endif
37
38#endif /* _MACH_MACHINE__STRUCTS_H_ */
lib/libc/include/x86_64-macos-gnu/machine/_mcontext.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#if defined (__i386__) || defined (__x86_64__)
29#include "i386/_mcontext.h"
30#else
31#error architecture not supported
32#endif
lib/libc/include/x86_64-macos-gnu/machine/_types.h created+37
......@@ -0,0 +1,37 @@
1/*
2 * Copyright (c) 2003-2007 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _BSD_MACHINE__TYPES_H_
29#define _BSD_MACHINE__TYPES_H_
30
31#if defined (__i386__) || defined(__x86_64__)
32#include "i386/_types.h"
33#else
34#error architecture not supported
35#endif
36
37#endif /* _BSD_MACHINE__TYPES_H_ */
lib/libc/include/x86_64-macos-gnu/machine/endian.h created+40
......@@ -0,0 +1,40 @@
1/*
2 * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright 1995 NeXT Computer, Inc. All rights reserved.
30 */
31#ifndef _BSD_MACHINE_ENDIAN_H_
32#define _BSD_MACHINE_ENDIAN_H_
33
34#if defined (__i386__) || defined(__x86_64__)
35#include "i386/endian.h"
36#else
37#error architecture not supported
38#endif
39
40#endif /* _BSD_MACHINE_ENDIAN_H_ */
lib/libc/include/x86_64-macos-gnu/machine/limits.h created+9
......@@ -0,0 +1,9 @@
1/* This is the `system' limits.h, independent of any particular
2 * compiler. GCC provides its own limits.h which can be found in
3 * /usr/lib/gcc, although it is not very informative.
4 * This file is public domain. */
5#if defined (__i386__) || defined(__x86_64__)
6#include <i386/limits.h>
7#else
8#error architecture not supported
9#endif
lib/libc/include/x86_64-macos-gnu/machine/signal.h created+37
......@@ -0,0 +1,37 @@
1/*
2 * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _BSD_MACHINE_SIGNAL_H_
29#define _BSD_MACHINE_SIGNAL_H_
30
31#if defined (__i386__) || defined(__x86_64__)
32#include "i386/signal.h"
33#else
34#error architecture not supported
35#endif
36
37#endif /* _BSD_MACHINE_SIGNAL_H_ */
lib/libc/include/x86_64-macos-gnu/machine/types.h created+40
......@@ -0,0 +1,40 @@
1/*
2 * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/*
29 * Copyright 1995 NeXT Computer, Inc. All rights reserved.
30 */
31#ifndef _BSD_MACHINE_TYPES_H_
32#define _BSD_MACHINE_TYPES_H_
33
34#if defined (__i386__) || defined(__x86_64__)
35#include "i386/types.h"
36#else
37#error architecture not supported
38#endif
39
40#endif /* _BSD_MACHINE_TYPES_H_ */
lib/libc/include/x86_64-macos-gnu/malloc/_malloc.h created+56
......@@ -0,0 +1,56 @@
1/*
2 * Copyright (c) 2018 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _MALLOC_UNDERSCORE_MALLOC_H_
25#define _MALLOC_UNDERSCORE_MALLOC_H_
26
27/*
28 * This header is included from <stdlib.h>, so the contents of this file have
29 * broad source compatibility and POSIX conformance implications.
30 * Be cautious about what is included and declared here.
31 */
32
33#include <Availability.h>
34#include <sys/cdefs.h>
35#include <_types.h>
36#include <sys/_types/_size_t.h>
37
38__BEGIN_DECLS
39
40void *malloc(size_t __size) __result_use_check __alloc_size(1);
41void *calloc(size_t __count, size_t __size) __result_use_check __alloc_size(1,2);
42void free(void *);
43void *realloc(void *__ptr, size_t __size) __result_use_check __alloc_size(2);
44#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
45void *valloc(size_t) __alloc_size(1);
46#endif // !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
47#if (__DARWIN_C_LEVEL >= __DARWIN_C_FULL) && \
48 ((defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \
49 (defined(__cplusplus) && __cplusplus >= 201703L))
50void *aligned_alloc(size_t __alignment, size_t __size) __result_use_check __alloc_size(2) __OSX_AVAILABLE(10.15) __IOS_AVAILABLE(13.0) __TVOS_AVAILABLE(13.0) __WATCHOS_AVAILABLE(6.0);
51#endif
52int posix_memalign(void **__memptr, size_t __alignment, size_t __size) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_0);
53
54__END_DECLS
55
56#endif /* _MALLOC_UNDERSCORE_MALLOC_H_ */
lib/libc/include/x86_64-macos-gnu/math.h created+771
......@@ -0,0 +1,771 @@
1/*
2 * Copyright (c) 2002-2017 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22
23#ifndef __MATH_H__
24#define __MATH_H__
25
26#ifndef __MATH__
27#define __MATH__
28#endif
29
30#include <sys/cdefs.h>
31#include <Availability.h>
32
33__BEGIN_DECLS
34
35/******************************************************************************
36 * Floating point data types *
37 ******************************************************************************/
38
39/* Define float_t and double_t per C standard, ISO/IEC 9899:2011 7.12 2,
40 taking advantage of GCC's __FLT_EVAL_METHOD__ (which a compiler may
41 define anytime and GCC does) that shadows FLT_EVAL_METHOD (which a
42 compiler must define only in float.h). */
43#if __FLT_EVAL_METHOD__ == 0
44 typedef float float_t;
45 typedef double double_t;
46#elif __FLT_EVAL_METHOD__ == 1
47 typedef double float_t;
48 typedef double double_t;
49#elif __FLT_EVAL_METHOD__ == 2 || __FLT_EVAL_METHOD__ == -1
50 typedef long double float_t;
51 typedef long double double_t;
52#else /* __FLT_EVAL_METHOD__ */
53# error "Unsupported value of __FLT_EVAL_METHOD__."
54#endif /* __FLT_EVAL_METHOD__ */
55
56#if defined(__GNUC__)
57# define HUGE_VAL __builtin_huge_val()
58# define HUGE_VALF __builtin_huge_valf()
59# define HUGE_VALL __builtin_huge_vall()
60# define NAN __builtin_nanf("0x7fc00000")
61#else
62# define HUGE_VAL 1e500
63# define HUGE_VALF 1e50f
64# define HUGE_VALL 1e5000L
65# define NAN __nan()
66#endif
67
68#define INFINITY HUGE_VALF
69
70/******************************************************************************
71 * Taxonomy of floating point data types *
72 ******************************************************************************/
73
74#define FP_NAN 1
75#define FP_INFINITE 2
76#define FP_ZERO 3
77#define FP_NORMAL 4
78#define FP_SUBNORMAL 5
79#define FP_SUPERNORMAL 6 /* legacy PowerPC support; this is otherwise unused */
80
81#if defined __arm64__ || defined __ARM_VFPV4__
82/* On these architectures, fma(), fmaf( ), and fmal( ) are generally about as
83 fast as (or faster than) separate multiply and add of the same operands. */
84# define FP_FAST_FMA 1
85# define FP_FAST_FMAF 1
86# define FP_FAST_FMAL 1
87#elif (defined __i386__ || defined __x86_64__) && (defined __FMA__ || defined __AVX512F__)
88/* When targeting the FMA ISA extension, fma() and fmaf( ) are generally
89 about as fast as (or faster than) separate multiply and add of the same
90 operands, but fmal( ) may be more costly. */
91# define FP_FAST_FMA 1
92# define FP_FAST_FMAF 1
93# undef FP_FAST_FMAL
94#else
95/* On these architectures, fma( ), fmaf( ), and fmal( ) function calls are
96 significantly more costly than separate multiply and add operations. */
97# undef FP_FAST_FMA
98# undef FP_FAST_FMAF
99# undef FP_FAST_FMAL
100#endif
101
102/* The values returned by `ilogb' for 0 and NaN respectively. */
103#define FP_ILOGB0 (-2147483647 - 1)
104#define FP_ILOGBNAN (-2147483647 - 1)
105
106/* Bitmasks for the math_errhandling macro. */
107#define MATH_ERRNO 1 /* errno set by math functions. */
108#define MATH_ERREXCEPT 2 /* Exceptions raised by math functions. */
109
110#define math_errhandling (__math_errhandling())
111extern int __math_errhandling(void);
112
113/******************************************************************************
114 * *
115 * Inquiry macros *
116 * *
117 * fpclassify Returns one of the FP_* values. *
118 * isnormal Non-zero if and only if the argument x is normalized. *
119 * isfinite Non-zero if and only if the argument x is finite. *
120 * isnan Non-zero if and only if the argument x is a NaN. *
121 * signbit Non-zero if and only if the sign of the argument x is *
122 * negative. This includes, NaNs, infinities and zeros. *
123 * *
124 ******************************************************************************/
125
126#define fpclassify(x) \
127 ( sizeof(x) == sizeof(float) ? __fpclassifyf((float)(x)) \
128 : sizeof(x) == sizeof(double) ? __fpclassifyd((double)(x)) \
129 : __fpclassifyl((long double)(x)))
130
131extern int __fpclassifyf(float);
132extern int __fpclassifyd(double);
133extern int __fpclassifyl(long double);
134
135#if (defined(__GNUC__) && 0 == __FINITE_MATH_ONLY__)
136/* These inline functions may fail to return expected results if unsafe
137 math optimizations like those enabled by -ffast-math are turned on.
138 Thus, (somewhat surprisingly) you only get the fast inline
139 implementations if such compiler options are NOT enabled. This is
140 because the inline functions require the compiler to be adhering to
141 the standard in order to work properly; -ffast-math, among other
142 things, implies that NaNs don't happen, which allows the compiler to
143 optimize away checks like x != x, which might lead to things like
144 isnan(NaN) returning false.
145
146 Thus, if you compile with -ffast-math, actual function calls are
147 generated for these utilities. */
148
149#define isnormal(x) \
150 ( sizeof(x) == sizeof(float) ? __inline_isnormalf((float)(x)) \
151 : sizeof(x) == sizeof(double) ? __inline_isnormald((double)(x)) \
152 : __inline_isnormall((long double)(x)))
153
154#define isfinite(x) \
155 ( sizeof(x) == sizeof(float) ? __inline_isfinitef((float)(x)) \
156 : sizeof(x) == sizeof(double) ? __inline_isfinited((double)(x)) \
157 : __inline_isfinitel((long double)(x)))
158
159#define isinf(x) \
160 ( sizeof(x) == sizeof(float) ? __inline_isinff((float)(x)) \
161 : sizeof(x) == sizeof(double) ? __inline_isinfd((double)(x)) \
162 : __inline_isinfl((long double)(x)))
163
164#define isnan(x) \
165 ( sizeof(x) == sizeof(float) ? __inline_isnanf((float)(x)) \
166 : sizeof(x) == sizeof(double) ? __inline_isnand((double)(x)) \
167 : __inline_isnanl((long double)(x)))
168
169#define signbit(x) \
170 ( sizeof(x) == sizeof(float) ? __inline_signbitf((float)(x)) \
171 : sizeof(x) == sizeof(double) ? __inline_signbitd((double)(x)) \
172 : __inline_signbitl((long double)(x)))
173
174__header_always_inline int __inline_isfinitef(float);
175__header_always_inline int __inline_isfinited(double);
176__header_always_inline int __inline_isfinitel(long double);
177__header_always_inline int __inline_isinff(float);
178__header_always_inline int __inline_isinfd(double);
179__header_always_inline int __inline_isinfl(long double);
180__header_always_inline int __inline_isnanf(float);
181__header_always_inline int __inline_isnand(double);
182__header_always_inline int __inline_isnanl(long double);
183__header_always_inline int __inline_isnormalf(float);
184__header_always_inline int __inline_isnormald(double);
185__header_always_inline int __inline_isnormall(long double);
186__header_always_inline int __inline_signbitf(float);
187__header_always_inline int __inline_signbitd(double);
188__header_always_inline int __inline_signbitl(long double);
189
190__header_always_inline int __inline_isfinitef(float __x) {
191 return __x == __x && __builtin_fabsf(__x) != __builtin_inff();
192}
193__header_always_inline int __inline_isfinited(double __x) {
194 return __x == __x && __builtin_fabs(__x) != __builtin_inf();
195}
196__header_always_inline int __inline_isfinitel(long double __x) {
197 return __x == __x && __builtin_fabsl(__x) != __builtin_infl();
198}
199__header_always_inline int __inline_isinff(float __x) {
200 return __builtin_fabsf(__x) == __builtin_inff();
201}
202__header_always_inline int __inline_isinfd(double __x) {
203 return __builtin_fabs(__x) == __builtin_inf();
204}
205__header_always_inline int __inline_isinfl(long double __x) {
206 return __builtin_fabsl(__x) == __builtin_infl();
207}
208__header_always_inline int __inline_isnanf(float __x) {
209 return __x != __x;
210}
211__header_always_inline int __inline_isnand(double __x) {
212 return __x != __x;
213}
214__header_always_inline int __inline_isnanl(long double __x) {
215 return __x != __x;
216}
217__header_always_inline int __inline_signbitf(float __x) {
218 union { float __f; unsigned int __u; } __u;
219 __u.__f = __x;
220 return (int)(__u.__u >> 31);
221}
222__header_always_inline int __inline_signbitd(double __x) {
223 union { double __f; unsigned long long __u; } __u;
224 __u.__f = __x;
225 return (int)(__u.__u >> 63);
226}
227#if defined __i386__ || defined __x86_64__
228__header_always_inline int __inline_signbitl(long double __x) {
229 union {
230 long double __ld;
231 struct{ unsigned long long __m; unsigned short __sexp; } __p;
232 } __u;
233 __u.__ld = __x;
234 return (int)(__u.__p.__sexp >> 15);
235}
236#else
237__header_always_inline int __inline_signbitl(long double __x) {
238 union { long double __f; unsigned long long __u;} __u;
239 __u.__f = __x;
240 return (int)(__u.__u >> 63);
241}
242#endif
243__header_always_inline int __inline_isnormalf(float __x) {
244 return __inline_isfinitef(__x) && __builtin_fabsf(__x) >= __FLT_MIN__;
245}
246__header_always_inline int __inline_isnormald(double __x) {
247 return __inline_isfinited(__x) && __builtin_fabs(__x) >= __DBL_MIN__;
248}
249__header_always_inline int __inline_isnormall(long double __x) {
250 return __inline_isfinitel(__x) && __builtin_fabsl(__x) >= __LDBL_MIN__;
251}
252
253#else /* defined(__GNUC__) && 0 == __FINITE_MATH_ONLY__ */
254
255/* Implementations making function calls to fall back on when -ffast-math
256 or similar is specified. These are not available in iOS versions prior
257 to 6.0. If you need them, you must target that version or later. */
258
259#define isnormal(x) \
260 ( sizeof(x) == sizeof(float) ? __isnormalf((float)(x)) \
261 : sizeof(x) == sizeof(double) ? __isnormald((double)(x)) \
262 : __isnormall((long double)(x)))
263
264#define isfinite(x) \
265 ( sizeof(x) == sizeof(float) ? __isfinitef((float)(x)) \
266 : sizeof(x) == sizeof(double) ? __isfinited((double)(x)) \
267 : __isfinitel((long double)(x)))
268
269#define isinf(x) \
270 ( sizeof(x) == sizeof(float) ? __isinff((float)(x)) \
271 : sizeof(x) == sizeof(double) ? __isinfd((double)(x)) \
272 : __isinfl((long double)(x)))
273
274#define isnan(x) \
275 ( sizeof(x) == sizeof(float) ? __isnanf((float)(x)) \
276 : sizeof(x) == sizeof(double) ? __isnand((double)(x)) \
277 : __isnanl((long double)(x)))
278
279#define signbit(x) \
280 ( sizeof(x) == sizeof(float) ? __signbitf((float)(x)) \
281 : sizeof(x) == sizeof(double) ? __signbitd((double)(x)) \
282 : __signbitl((long double)(x)))
283
284extern int __isnormalf(float);
285extern int __isnormald(double);
286extern int __isnormall(long double);
287extern int __isfinitef(float);
288extern int __isfinited(double);
289extern int __isfinitel(long double);
290extern int __isinff(float);
291extern int __isinfd(double);
292extern int __isinfl(long double);
293extern int __isnanf(float);
294extern int __isnand(double);
295extern int __isnanl(long double);
296extern int __signbitf(float);
297extern int __signbitd(double);
298extern int __signbitl(long double);
299
300#endif /* defined(__GNUC__) && 0 == __FINITE_MATH_ONLY__ */
301
302/******************************************************************************
303 * *
304 * Math Functions *
305 * *
306 ******************************************************************************/
307
308extern float acosf(float);
309extern double acos(double);
310extern long double acosl(long double);
311
312extern float asinf(float);
313extern double asin(double);
314extern long double asinl(long double);
315
316extern float atanf(float);
317extern double atan(double);
318extern long double atanl(long double);
319
320extern float atan2f(float, float);
321extern double atan2(double, double);
322extern long double atan2l(long double, long double);
323
324extern float cosf(float);
325extern double cos(double);
326extern long double cosl(long double);
327
328extern float sinf(float);
329extern double sin(double);
330extern long double sinl(long double);
331
332extern float tanf(float);
333extern double tan(double);
334extern long double tanl(long double);
335
336extern float acoshf(float);
337extern double acosh(double);
338extern long double acoshl(long double);
339
340extern float asinhf(float);
341extern double asinh(double);
342extern long double asinhl(long double);
343
344extern float atanhf(float);
345extern double atanh(double);
346extern long double atanhl(long double);
347
348extern float coshf(float);
349extern double cosh(double);
350extern long double coshl(long double);
351
352extern float sinhf(float);
353extern double sinh(double);
354extern long double sinhl(long double);
355
356extern float tanhf(float);
357extern double tanh(double);
358extern long double tanhl(long double);
359
360extern float expf(float);
361extern double exp(double);
362extern long double expl(long double);
363
364extern float exp2f(float);
365extern double exp2(double);
366extern long double exp2l(long double);
367
368extern float expm1f(float);
369extern double expm1(double);
370extern long double expm1l(long double);
371
372extern float logf(float);
373extern double log(double);
374extern long double logl(long double);
375
376extern float log10f(float);
377extern double log10(double);
378extern long double log10l(long double);
379
380extern float log2f(float);
381extern double log2(double);
382extern long double log2l(long double);
383
384extern float log1pf(float);
385extern double log1p(double);
386extern long double log1pl(long double);
387
388extern float logbf(float);
389extern double logb(double);
390extern long double logbl(long double);
391
392extern float modff(float, float *);
393extern double modf(double, double *);
394extern long double modfl(long double, long double *);
395
396extern float ldexpf(float, int);
397extern double ldexp(double, int);
398extern long double ldexpl(long double, int);
399
400extern float frexpf(float, int *);
401extern double frexp(double, int *);
402extern long double frexpl(long double, int *);
403
404extern int ilogbf(float);
405extern int ilogb(double);
406extern int ilogbl(long double);
407
408extern float scalbnf(float, int);
409extern double scalbn(double, int);
410extern long double scalbnl(long double, int);
411
412extern float scalblnf(float, long int);
413extern double scalbln(double, long int);
414extern long double scalblnl(long double, long int);
415
416extern float fabsf(float);
417extern double fabs(double);
418extern long double fabsl(long double);
419
420extern float cbrtf(float);
421extern double cbrt(double);
422extern long double cbrtl(long double);
423
424extern float hypotf(float, float);
425extern double hypot(double, double);
426extern long double hypotl(long double, long double);
427
428extern float powf(float, float);
429extern double pow(double, double);
430extern long double powl(long double, long double);
431
432extern float sqrtf(float);
433extern double sqrt(double);
434extern long double sqrtl(long double);
435
436extern float erff(float);
437extern double erf(double);
438extern long double erfl(long double);
439
440extern float erfcf(float);
441extern double erfc(double);
442extern long double erfcl(long double);
443
444/* lgammaf, lgamma, and lgammal are not thread-safe. The thread-safe
445 variants lgammaf_r, lgamma_r, and lgammal_r are made available if
446 you define the _REENTRANT symbol before including <math.h> */
447extern float lgammaf(float);
448extern double lgamma(double);
449extern long double lgammal(long double);
450
451extern float tgammaf(float);
452extern double tgamma(double);
453extern long double tgammal(long double);
454
455extern float ceilf(float);
456extern double ceil(double);
457extern long double ceill(long double);
458
459extern float floorf(float);
460extern double floor(double);
461extern long double floorl(long double);
462
463extern float nearbyintf(float);
464extern double nearbyint(double);
465extern long double nearbyintl(long double);
466
467extern float rintf(float);
468extern double rint(double);
469extern long double rintl(long double);
470
471extern long int lrintf(float);
472extern long int lrint(double);
473extern long int lrintl(long double);
474
475extern float roundf(float);
476extern double round(double);
477extern long double roundl(long double);
478
479extern long int lroundf(float);
480extern long int lround(double);
481extern long int lroundl(long double);
482
483/* long long is not part of C90. Make sure you are passing -std=c99 or
484 -std=gnu99 or higher if you need these functions returning long longs */
485#if !(__DARWIN_NO_LONG_LONG)
486extern long long int llrintf(float);
487extern long long int llrint(double);
488extern long long int llrintl(long double);
489
490extern long long int llroundf(float);
491extern long long int llround(double);
492extern long long int llroundl(long double);
493#endif /* !(__DARWIN_NO_LONG_LONG) */
494
495extern float truncf(float);
496extern double trunc(double);
497extern long double truncl(long double);
498
499extern float fmodf(float, float);
500extern double fmod(double, double);
501extern long double fmodl(long double, long double);
502
503extern float remainderf(float, float);
504extern double remainder(double, double);
505extern long double remainderl(long double, long double);
506
507extern float remquof(float, float, int *);
508extern double remquo(double, double, int *);
509extern long double remquol(long double, long double, int *);
510
511extern float copysignf(float, float);
512extern double copysign(double, double);
513extern long double copysignl(long double, long double);
514
515extern float nanf(const char *);
516extern double nan(const char *);
517extern long double nanl(const char *);
518
519extern float nextafterf(float, float);
520extern double nextafter(double, double);
521extern long double nextafterl(long double, long double);
522
523extern double nexttoward(double, long double);
524extern float nexttowardf(float, long double);
525extern long double nexttowardl(long double, long double);
526
527extern float fdimf(float, float);
528extern double fdim(double, double);
529extern long double fdiml(long double, long double);
530
531extern float fmaxf(float, float);
532extern double fmax(double, double);
533extern long double fmaxl(long double, long double);
534
535extern float fminf(float, float);
536extern double fmin(double, double);
537extern long double fminl(long double, long double);
538
539extern float fmaf(float, float, float);
540extern double fma(double, double, double);
541extern long double fmal(long double, long double, long double);
542
543#define isgreater(x, y) __builtin_isgreater((x),(y))
544#define isgreaterequal(x, y) __builtin_isgreaterequal((x),(y))
545#define isless(x, y) __builtin_isless((x),(y))
546#define islessequal(x, y) __builtin_islessequal((x),(y))
547#define islessgreater(x, y) __builtin_islessgreater((x),(y))
548#define isunordered(x, y) __builtin_isunordered((x),(y))
549
550/* Deprecated functions; use the INFINITY and NAN macros instead. */
551extern float __inff(void)
552__API_DEPRECATED("use `(float)INFINITY` instead", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
553extern double __inf(void)
554__API_DEPRECATED("use `INFINITY` instead", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
555extern long double __infl(void)
556__API_DEPRECATED("use `(long double)INFINITY` instead", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
557extern float __nan(void)
558__API_DEPRECATED("use `NAN` instead", macos(10.0, 10.14)) __API_UNAVAILABLE(ios, watchos, tvos);
559
560/******************************************************************************
561 * Reentrant variants of lgamma[fl] *
562 ******************************************************************************/
563
564#ifdef _REENTRANT
565/* Reentrant variants of the lgamma[fl] functions. */
566extern float lgammaf_r(float, int *) __API_AVAILABLE(macos(10.6), ios(3.1));
567extern double lgamma_r(double, int *) __API_AVAILABLE(macos(10.6), ios(3.1));
568extern long double lgammal_r(long double, int *) __API_AVAILABLE(macos(10.6), ios(3.1));
569#endif /* _REENTRANT */
570
571/******************************************************************************
572 * Apple extensions to the C standard *
573 ******************************************************************************/
574
575/* Because these functions are not specified by any relevant standard, they
576 are prefixed with __, which places them in the implementor's namespace, so
577 they should not conflict with any developer or third-party code. If they
578 are added to a relevant standard in the future, un-prefixed names may be
579 added to the library and they may be moved out of this section of the
580 header.
581
582 Because these functions are non-standard, they may not be available on non-
583 Apple platforms. */
584
585/* __exp10(x) returns 10**x. Edge cases match those of exp( ) and exp2( ). */
586extern float __exp10f(float) __API_AVAILABLE(macos(10.9), ios(7.0));
587extern double __exp10(double) __API_AVAILABLE(macos(10.9), ios(7.0));
588
589/* __sincos(x,sinp,cosp) computes the sine and cosine of x with a single
590 function call, storing the sine in the memory pointed to by sinp, and
591 the cosine in the memory pointed to by cosp. Edge cases match those of
592 separate calls to sin( ) and cos( ). */
593__header_always_inline void __sincosf(float __x, float *__sinp, float *__cosp);
594__header_always_inline void __sincos(double __x, double *__sinp, double *__cosp);
595
596/* __sinpi(x) returns the sine of pi times x; __cospi(x) and __tanpi(x) return
597 the cosine and tangent, respectively. These functions can produce a more
598 accurate answer than expressions of the form sin(M_PI * x) because they
599 avoid any loss of precision that results from rounding the result of the
600 multiplication M_PI * x. They may also be significantly more efficient in
601 some cases because the argument reduction for these functions is easier
602 to compute. Consult the man pages for edge case details. */
603extern float __cospif(float) __API_AVAILABLE(macos(10.9), ios(7.0));
604extern double __cospi(double) __API_AVAILABLE(macos(10.9), ios(7.0));
605extern float __sinpif(float) __API_AVAILABLE(macos(10.9), ios(7.0));
606extern double __sinpi(double) __API_AVAILABLE(macos(10.9), ios(7.0));
607extern float __tanpif(float) __API_AVAILABLE(macos(10.9), ios(7.0));
608extern double __tanpi(double) __API_AVAILABLE(macos(10.9), ios(7.0));
609
610#if (defined __MAC_OS_X_VERSION_MIN_REQUIRED && __MAC_OS_X_VERSION_MIN_REQUIRED < 1090) || \
611 (defined __IPHONE_OS_VERSION_MIN_REQUIRED && __IPHONE_OS_VERSION_MIN_REQUIRED < 70000)
612/* __sincos and __sincosf were introduced in OSX 10.9 and iOS 7.0. When
613 targeting an older system, we simply split them up into discrete calls
614 to sin( ) and cos( ). */
615__header_always_inline void __sincosf(float __x, float *__sinp, float *__cosp) {
616 *__sinp = sinf(__x);
617 *__cosp = cosf(__x);
618}
619
620__header_always_inline void __sincos(double __x, double *__sinp, double *__cosp) {
621 *__sinp = sin(__x);
622 *__cosp = cos(__x);
623}
624#else
625/* __sincospi(x,sinp,cosp) computes the sine and cosine of pi times x with a
626 single function call, storing the sine in the memory pointed to by sinp,
627 and the cosine in the memory pointed to by cosp. Edge cases match those
628 of separate calls to __sinpi( ) and __cospi( ), and are documented in the
629 man pages.
630
631 These functions were introduced in OSX 10.9 and iOS 7.0. Because they are
632 implemented as header inlines, weak-linking does not function as normal,
633 and they are simply hidden when targeting earlier OS versions. */
634__header_always_inline void __sincospif(float __x, float *__sinp, float *__cosp);
635__header_always_inline void __sincospi(double __x, double *__sinp, double *__cosp);
636
637/* Implementation details of __sincos and __sincospi allowing them to return
638 two results while allowing the compiler to optimize away unnecessary load-
639 store traffic. Although these interfaces are exposed in the math.h header
640 to allow compilers to generate better code, users should call __sincos[f]
641 and __sincospi[f] instead and allow the compiler to emit these calls. */
642struct __float2 { float __sinval; float __cosval; };
643struct __double2 { double __sinval; double __cosval; };
644
645extern struct __float2 __sincosf_stret(float);
646extern struct __double2 __sincos_stret(double);
647extern struct __float2 __sincospif_stret(float);
648extern struct __double2 __sincospi_stret(double);
649
650__header_always_inline void __sincosf(float __x, float *__sinp, float *__cosp) {
651 const struct __float2 __stret = __sincosf_stret(__x);
652 *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
653}
654
655__header_always_inline void __sincos(double __x, double *__sinp, double *__cosp) {
656 const struct __double2 __stret = __sincos_stret(__x);
657 *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
658}
659
660__header_always_inline void __sincospif(float __x, float *__sinp, float *__cosp) {
661 const struct __float2 __stret = __sincospif_stret(__x);
662 *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
663}
664
665__header_always_inline void __sincospi(double __x, double *__sinp, double *__cosp) {
666 const struct __double2 __stret = __sincospi_stret(__x);
667 *__sinp = __stret.__sinval; *__cosp = __stret.__cosval;
668}
669#endif
670
671/******************************************************************************
672 * POSIX/UNIX extensions to the C standard *
673 ******************************************************************************/
674
675#if __DARWIN_C_LEVEL >= 199506L
676extern double j0(double) __API_AVAILABLE(macos(10.0), ios(3.2));
677extern double j1(double) __API_AVAILABLE(macos(10.0), ios(3.2));
678extern double jn(int, double) __API_AVAILABLE(macos(10.0), ios(3.2));
679extern double y0(double) __API_AVAILABLE(macos(10.0), ios(3.2));
680extern double y1(double) __API_AVAILABLE(macos(10.0), ios(3.2));
681extern double yn(int, double) __API_AVAILABLE(macos(10.0), ios(3.2));
682extern double scalb(double, double);
683extern int signgam;
684
685/* Even though these might be more useful as long doubles, POSIX requires
686 that they be double-precision literals. */
687#define M_E 2.71828182845904523536028747135266250 /* e */
688#define M_LOG2E 1.44269504088896340735992468100189214 /* log2(e) */
689#define M_LOG10E 0.434294481903251827651128918916605082 /* log10(e) */
690#define M_LN2 0.693147180559945309417232121458176568 /* loge(2) */
691#define M_LN10 2.30258509299404568401799145468436421 /* loge(10) */
692#define M_PI 3.14159265358979323846264338327950288 /* pi */
693#define M_PI_2 1.57079632679489661923132169163975144 /* pi/2 */
694#define M_PI_4 0.785398163397448309615660845819875721 /* pi/4 */
695#define M_1_PI 0.318309886183790671537767526745028724 /* 1/pi */
696#define M_2_PI 0.636619772367581343075535053490057448 /* 2/pi */
697#define M_2_SQRTPI 1.12837916709551257389615890312154517 /* 2/sqrt(pi) */
698#define M_SQRT2 1.41421356237309504880168872420969808 /* sqrt(2) */
699#define M_SQRT1_2 0.707106781186547524400844362104849039 /* 1/sqrt(2) */
700
701#define MAXFLOAT 0x1.fffffep+127f
702#endif /* __DARWIN_C_LEVEL >= 199506L */
703
704/* Long-double versions of M_E, etc for convenience on Intel where long-
705 double is not the same as double. Define __MATH_LONG_DOUBLE_CONSTANTS
706 to make these constants available. */
707#if defined __MATH_LONG_DOUBLE_CONSTANTS
708#define M_El 0xa.df85458a2bb4a9bp-2L
709#define M_LOG2El 0xb.8aa3b295c17f0bcp-3L
710#define M_LOG10El 0xd.e5bd8a937287195p-5L
711#define M_LN2l 0xb.17217f7d1cf79acp-4L
712#define M_LN10l 0x9.35d8dddaaa8ac17p-2L
713#define M_PIl 0xc.90fdaa22168c235p-2L
714#define M_PI_2l 0xc.90fdaa22168c235p-3L
715#define M_PI_4l 0xc.90fdaa22168c235p-4L
716#define M_1_PIl 0xa.2f9836e4e44152ap-5L
717#define M_2_PIl 0xa.2f9836e4e44152ap-4L
718#define M_2_SQRTPIl 0x9.06eba8214db688dp-3L
719#define M_SQRT2l 0xb.504f333f9de6484p-3L
720#define M_SQRT1_2l 0xb.504f333f9de6484p-4L
721#endif /* defined __MATH_LONG_DOUBLE_CONSTANTS */
722
723/******************************************************************************
724 * Legacy BSD extensions to the C standard *
725 ******************************************************************************/
726
727#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
728#define FP_SNAN FP_NAN
729#define FP_QNAN FP_NAN
730#define HUGE MAXFLOAT
731#define X_TLOSS 1.41484755040568800000e+16
732#define DOMAIN 1
733#define SING 2
734#define OVERFLOW 3
735#define UNDERFLOW 4
736#define TLOSS 5
737#define PLOSS 6
738
739/* Legacy BSD API; use the C99 `lrint( )` function instead. */
740extern long int rinttol(double)
741__API_DEPRECATED_WITH_REPLACEMENT("lrint", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
742/* Legacy BSD API; use the C99 `lround( )` function instead. */
743extern long int roundtol(double)
744__API_DEPRECATED_WITH_REPLACEMENT("lround", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
745/* Legacy BSD API; use the C99 `remainder( )` function instead. */
746extern double drem(double, double)
747__API_DEPRECATED_WITH_REPLACEMENT("remainder", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
748/* Legacy BSD API; use the C99 `isfinite( )` macro instead. */
749extern int finite(double)
750__API_DEPRECATED("Use `isfinite((double)x)` instead.", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
751/* Legacy BSD API; use the C99 `tgamma( )` function instead. */
752extern double gamma(double)
753__API_DEPRECATED_WITH_REPLACEMENT("tgamma", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
754/* Legacy BSD API; use `2*frexp( )` or `scalbn(x, -ilogb(x))` instead. */
755extern double significand(double)
756__API_DEPRECATED("Use `2*frexp( )` or `scalbn(x, -ilogb(x))` instead.", macos(10.0, 10.9)) __API_UNAVAILABLE(ios, watchos, tvos);
757
758#if !defined __cplusplus
759struct exception {
760 int type;
761 char *name;
762 double arg1;
763 double arg2;
764 double retval;
765};
766
767#endif /* !defined __cplusplus */
768#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
769
770__END_DECLS
771#endif /* __MATH_H__ */
lib/libc/include/x86_64-macos-gnu/runetype.h created+115
......@@ -0,0 +1,115 @@
1/*-
2 * Copyright (c) 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Paul Borman at Krystal Technologies.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
16 * 3. All advertising materials mentioning features or use of this software
17 * must display the following acknowledgement:
18 * This product includes software developed by the University of
19 * California, Berkeley and its contributors.
20 * 4. Neither the name of the University nor the names of its contributors
21 * may be used to endorse or promote products derived from this software
22 * without specific prior written permission.
23 *
24 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * @(#)runetype.h 8.1 (Berkeley) 6/2/93
37 */
38
39#ifndef _RUNETYPE_H_
40#define _RUNETYPE_H_
41
42#include <_types.h>
43
44#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
45
46#include <sys/_types/_size_t.h>
47#include <sys/_types/_ct_rune_t.h>
48#include <sys/_types/_rune_t.h>
49#include <sys/_types/_wchar_t.h>
50#include <sys/_types/_wint_t.h>
51
52#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
53
54#define _CACHED_RUNES (1 <<8 ) /* Must be a power of 2 */
55#define _CRMASK (~(_CACHED_RUNES - 1))
56
57/*
58 * The lower 8 bits of runetype[] contain the digit value of the rune.
59 */
60typedef struct {
61 __darwin_rune_t __min; /* First rune of the range */
62 __darwin_rune_t __max; /* Last rune (inclusive) of the range */
63 __darwin_rune_t __map; /* What first maps to in maps */
64 __uint32_t *__types; /* Array of types in range */
65} _RuneEntry;
66
67typedef struct {
68 int __nranges; /* Number of ranges stored */
69 _RuneEntry *__ranges; /* Pointer to the ranges */
70} _RuneRange;
71
72typedef struct {
73 char __name[14]; /* CHARCLASS_NAME_MAX = 14 */
74 __uint32_t __mask; /* charclass mask */
75} _RuneCharClass;
76
77typedef struct {
78 char __magic[8]; /* Magic saying what version we are */
79 char __encoding[32]; /* ASCII name of this encoding */
80
81 __darwin_rune_t (*__sgetrune)(const char *, __darwin_size_t, char const **);
82 int (*__sputrune)(__darwin_rune_t, char *, __darwin_size_t, char **);
83 __darwin_rune_t __invalid_rune;
84
85 __uint32_t __runetype[_CACHED_RUNES];
86 __darwin_rune_t __maplower[_CACHED_RUNES];
87 __darwin_rune_t __mapupper[_CACHED_RUNES];
88
89 /*
90 * The following are to deal with Runes larger than _CACHED_RUNES - 1.
91 * Their data is actually contiguous with this structure so as to make
92 * it easier to read/write from/to disk.
93 */
94 _RuneRange __runetype_ext;
95 _RuneRange __maplower_ext;
96 _RuneRange __mapupper_ext;
97
98 void *__variable; /* Data which depends on the encoding */
99 int __variable_len; /* how long that data is */
100
101 /*
102 * extra fields to deal with arbitrary character classes
103 */
104 int __ncharclasses;
105 _RuneCharClass *__charclasses;
106} _RuneLocale;
107
108#define _RUNE_MAGIC_A "RuneMagA" /* Indicates version A of RuneLocale */
109
110__BEGIN_DECLS
111extern _RuneLocale _DefaultRuneLocale;
112extern _RuneLocale *_CurrentRuneLocale;
113__END_DECLS
114
115#endif /* !_RUNETYPE_H_ */
lib/libc/include/x86_64-macos-gnu/secure/_common.h created+41
......@@ -0,0 +1,41 @@
1/*
2 * Copyright (c) 2007, 2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _SECURE__COMMON_H_
25#define _SECURE__COMMON_H_
26
27#undef _USE_FORTIFY_LEVEL
28#if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0
29# if _FORTIFY_SOURCE > 1
30# define _USE_FORTIFY_LEVEL 2
31# else
32# define _USE_FORTIFY_LEVEL 1
33# endif
34#else
35# define _USE_FORTIFY_LEVEL 0
36#endif
37
38#define __darwin_obsz0(object) __builtin_object_size (object, 0)
39#define __darwin_obsz(object) __builtin_object_size (object, _USE_FORTIFY_LEVEL > 1 ? 1 : 0)
40
41#endif
lib/libc/include/x86_64-macos-gnu/secure/_stdio.h created+86
......@@ -0,0 +1,86 @@
1/*
2 * Copyright (c) 2007, 2010 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _STDIO_H_
25 #error error "Never use <secure/_stdio.h> directly; include <stdio.h> instead."
26#endif
27
28#ifndef _SECURE__STDIO_H_
29#define _SECURE__STDIO_H_
30
31#include <secure/_common.h>
32
33#if _USE_FORTIFY_LEVEL > 0
34
35#ifndef __has_builtin
36#define _undef__has_builtin
37#define __has_builtin(x) 0
38#endif
39
40/* sprintf, vsprintf, snprintf, vsnprintf */
41#if __has_builtin(__builtin___sprintf_chk) || defined(__GNUC__)
42extern int __sprintf_chk (char * __restrict, int, size_t,
43 const char * __restrict, ...);
44
45#undef sprintf
46#define sprintf(str, ...) \
47 __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__)
48#endif
49
50#if __DARWIN_C_LEVEL >= 200112L
51#if __has_builtin(__builtin___snprintf_chk) || defined(__GNUC__)
52extern int __snprintf_chk (char * __restrict, size_t, int, size_t,
53 const char * __restrict, ...);
54
55#undef snprintf
56#define snprintf(str, len, ...) \
57 __builtin___snprintf_chk (str, len, 0, __darwin_obsz(str), __VA_ARGS__)
58#endif
59
60#if __has_builtin(__builtin___vsprintf_chk) || defined(__GNUC__)
61extern int __vsprintf_chk (char * __restrict, int, size_t,
62 const char * __restrict, va_list);
63
64#undef vsprintf
65#define vsprintf(str, format, ap) \
66 __builtin___vsprintf_chk (str, 0, __darwin_obsz(str), format, ap)
67#endif
68
69#if __has_builtin(__builtin___vsnprintf_chk) || defined(__GNUC__)
70extern int __vsnprintf_chk (char * __restrict, size_t, int, size_t,
71 const char * __restrict, va_list);
72
73#undef vsnprintf
74#define vsnprintf(str, len, format, ap) \
75 __builtin___vsnprintf_chk (str, len, 0, __darwin_obsz(str), format, ap)
76#endif
77
78#endif /* __DARWIN_C_LEVEL >= 200112L */
79
80#ifdef _undef__has_builtin
81#undef _undef__has_builtin
82#undef __has_builtin
83#endif
84
85#endif /* _USE_FORTIFY_LEVEL > 0 */
86#endif /* _SECURE__STDIO_H_ */
lib/libc/include/x86_64-macos-gnu/secure/_string.h created+150
......@@ -0,0 +1,150 @@
1/*
2 * Copyright (c) 2007,2017 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _STRING_H_
25# error "Never use <secure/_string.h> directly; include <string.h> instead."
26#endif
27
28#ifndef _SECURE__STRING_H_
29#define _SECURE__STRING_H_
30
31#include <sys/cdefs.h>
32#include <Availability.h>
33#include <secure/_common.h>
34
35#if _USE_FORTIFY_LEVEL > 0
36
37/* <rdar://problem/12622659> */
38#if defined(__clang__) && \
39 ((defined(__apple_build_version__) && __apple_build_version__ >= 4260006) || \
40 (!defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3))))
41#define __HAS_FIXED_CHK_PROTOTYPES 1
42#else
43#define __HAS_FIXED_CHK_PROTOTYPES 0
44#endif
45
46/* memccpy, memcpy, mempcpy, memmove, memset, strcpy, strlcpy, stpcpy,
47 strncpy, stpncpy, strcat, strlcat, and strncat */
48
49#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 70000 || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090 || \
50 defined(__DRIVERKIT_VERSION_MIN_REQUIRED)
51#if __has_builtin(__builtin___memccpy_chk) && __HAS_FIXED_CHK_PROTOTYPES
52#undef memccpy
53/* void *memccpy(void *dst, const void *src, int c, size_t n) */
54#define memccpy(dest, ...) \
55 __builtin___memccpy_chk (dest, __VA_ARGS__, __darwin_obsz0 (dest))
56#endif
57#endif
58
59#if __has_builtin(__builtin___memcpy_chk) || defined(__GNUC__)
60#undef memcpy
61/* void *memcpy(void *dst, const void *src, size_t n) */
62#define memcpy(dest, ...) \
63 __builtin___memcpy_chk (dest, __VA_ARGS__, __darwin_obsz0 (dest))
64#endif
65
66#if __has_builtin(__builtin___memmove_chk) || defined(__GNUC__)
67#undef memmove
68/* void *memmove(void *dst, const void *src, size_t len) */
69#define memmove(dest, ...) \
70 __builtin___memmove_chk (dest, __VA_ARGS__, __darwin_obsz0 (dest))
71#endif
72
73#if __has_builtin(__builtin___memset_chk) || defined(__GNUC__)
74#undef memset
75/* void *memset(void *b, int c, size_t len) */
76#define memset(dest, ...) \
77 __builtin___memset_chk (dest, __VA_ARGS__, __darwin_obsz0 (dest))
78#endif
79
80#if __has_builtin(__builtin___strcpy_chk) || defined(__GNUC__)
81#undef strcpy
82/* char *strcpy(char *dst, const char *src) */
83#define strcpy(dest, ...) \
84 __builtin___strcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
85#endif
86
87#if __DARWIN_C_LEVEL >= 200809L
88#if __has_builtin(__builtin___stpcpy_chk) || defined(__GNUC__)
89#undef stpcpy
90/* char *stpcpy(char *dst, const char *src) */
91#define stpcpy(dest, ...) \
92 __builtin___stpcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
93#endif
94#endif /* __DARWIN_C_LEVEL >= 200809L */
95
96#if __DARWIN_C_LEVEL >= 200809L
97#if __has_builtin(__builtin___stpncpy_chk) || __APPLE_CC__ >= 5666 || __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7)
98#undef stpncpy
99/* char *stpncpy(char *dst, const char *src, size_t n) */
100#define stpncpy(dest, ...) \
101 __builtin___stpncpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
102#endif
103#endif /* _DARWIN_C_LEVEL >= 200809L */
104
105#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
106#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 70000 || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090 || \
107 defined(__DRIVERKIT_VERSION_MIN_REQUIRED)
108#if __has_builtin(__builtin___strlcpy_chk) && __HAS_FIXED_CHK_PROTOTYPES
109#undef strlcpy
110/* size_t strlcpy(char *dst, const char *source, size_t size) */
111#define strlcpy(dest, ...) \
112 __builtin___strlcpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
113#endif
114
115#if __has_builtin(__builtin___strlcat_chk) && __HAS_FIXED_CHK_PROTOTYPES
116#undef strlcat
117/* size_t strlcat(char *dst, const char *source, size_t size) */
118#define strlcat(dest, ...) \
119 __builtin___strlcat_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
120#endif
121#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED >= 70000 || __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090 */
122#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
123
124#if __has_builtin(__builtin___strncpy_chk) || defined(__GNUC__)
125#undef strncpy
126/* char *strncpy(char *dst, const char *src, size_t n) */
127#define strncpy(dest, ...) \
128 __builtin___strncpy_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
129#endif
130
131#if __has_builtin(__builtin___strcat_chk) || defined(__GNUC__)
132#undef strcat
133/* char *strcat(char *s1, const char *s2) */
134#define strcat(dest, ...) \
135 __builtin___strcat_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
136#endif
137
138#if ! (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED < 32000)
139#if __has_builtin(__builtin___strncat_chk) || defined(__GNUC__)
140#undef strncat
141/* char *strncat(char *s1, const char *s2, size_t n) */
142#define strncat(dest, ...) \
143 __builtin___strncat_chk (dest, __VA_ARGS__, __darwin_obsz (dest))
144#endif
145#endif
146
147#undef __HAS_FIXED_CHK_PROTOTYPES
148
149#endif /* _USE_FORTIFY_LEVEL > 0 */
150#endif /* _SECURE__STRING_H_ */
lib/libc/include/x86_64-macos-gnu/secure/_strings.h created+59
......@@ -0,0 +1,59 @@
1/*
2 * Copyright (c) 2017 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _STRINGS_H_
25# error "Never use <secure/_strings.h> directly; include <strings.h> instead."
26#endif
27
28#ifndef _SECURE__STRINGS_H_
29#define _SECURE__STRINGS_H_
30
31#include <sys/cdefs.h>
32#include <Availability.h>
33#include <secure/_common.h>
34
35#if _USE_FORTIFY_LEVEL > 0
36
37/* bcopy and bzero */
38
39/* Removed in Issue 7 */
40#if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200809L
41
42#if __has_builtin(__builtin___memmove_chk) || defined(__GNUC__)
43#undef bcopy
44/* void bcopy(const void *src, void *dst, size_t len) */
45#define bcopy(src, dest, ...) \
46 __builtin___memmove_chk (dest, src, __VA_ARGS__, __darwin_obsz0 (dest))
47#endif
48
49#if __has_builtin(__builtin___memset_chk) || defined(__GNUC__)
50#undef bzero
51/* void bzero(void *s, size_t n) */
52#define bzero(dest, ...) \
53 __builtin___memset_chk (dest, 0, __VA_ARGS__, __darwin_obsz0 (dest))
54#endif
55
56#endif
57
58#endif /* _USE_FORTIFY_LEVEL > 0 */
59#endif /* _SECURE__STRINGS_H_ */
lib/libc/include/x86_64-macos-gnu/setjmp.h created+102
......@@ -0,0 +1,102 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23#ifndef _BSD_SETJMP_H
24#define _BSD_SETJMP_H
25
26#include <sys/cdefs.h>
27#include <Availability.h>
28
29#if defined(__x86_64__)
30/*
31 * _JBLEN is number of ints required to save the following:
32 * rflags, rip, rbp, rsp, rbx, r12, r13, r14, r15... these are 8 bytes each
33 * mxcsr, fp control word, sigmask... these are 4 bytes each
34 * add 16 ints for future expansion needs...
35 */
36#define _JBLEN ((9 * 2) + 3 + 16)
37typedef int jmp_buf[_JBLEN];
38typedef int sigjmp_buf[_JBLEN + 1];
39
40#elif defined(__i386__)
41
42/*
43 * _JBLEN is number of ints required to save the following:
44 * eax, ebx, ecx, edx, edi, esi, ebp, esp, ss, eflags, eip,
45 * cs, de, es, fs, gs == 16 ints
46 * onstack, mask = 2 ints
47 */
48
49#define _JBLEN (18)
50typedef int jmp_buf[_JBLEN];
51typedef int sigjmp_buf[_JBLEN + 1];
52
53#elif defined(__arm__) && !defined(__ARM_ARCH_7K__)
54
55#include <machine/signal.h>
56
57/*
58 * _JBLEN is number of ints required to save the following:
59 * r4-r8, r10, fp, sp, lr, sig == 10 register_t sized
60 * s16-s31 == 16 register_t sized + 1 int for FSTMX
61 * 1 extra int for future use
62 */
63#define _JBLEN (10 + 16 + 2)
64#define _JBLEN_MAX _JBLEN
65
66typedef int jmp_buf[_JBLEN];
67typedef int sigjmp_buf[_JBLEN + 1];
68
69#elif defined(__arm64__) || defined(__ARM_ARCH_7K__)
70/*
71 * _JBLEN is the number of ints required to save the following:
72 * r21-r29, sp, fp, lr == 12 registers, 8 bytes each. d8-d15
73 * are another 8 registers, each 8 bytes long. (aapcs64 specifies
74 * that only 64-bit versions of FP registers need to be saved).
75 * Finally, two 8-byte fields for signal handling purposes.
76 */
77#define _JBLEN ((14 + 8 + 2) * 2)
78
79typedef int jmp_buf[_JBLEN];
80typedef int sigjmp_buf[_JBLEN + 1];
81
82#else
83# error Undefined platform for setjmp
84#endif
85
86__BEGIN_DECLS
87extern int setjmp(jmp_buf);
88extern void longjmp(jmp_buf, int) __dead2;
89
90#ifndef _ANSI_SOURCE
91int _setjmp(jmp_buf);
92void _longjmp(jmp_buf, int) __dead2;
93int sigsetjmp(sigjmp_buf, int);
94void siglongjmp(sigjmp_buf, int) __dead2;
95#endif /* _ANSI_SOURCE */
96
97#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
98void longjmperror(void);
99#endif /* neither ANSI nor POSIX */
100__END_DECLS
101
102#endif /* _BSD_SETJMP_H */
lib/libc/include/x86_64-macos-gnu/signal.h created+129
......@@ -0,0 +1,129 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1991, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * Redistribution and use in source and binary forms, with or without
28 * modification, are permitted provided that the following conditions
29 * are met:
30 * 1. Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * 2. Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in the
34 * documentation and/or other materials provided with the distribution.
35 * 3. All advertising materials mentioning features or use of this software
36 * must display the following acknowledgement:
37 * This product includes software developed by the University of
38 * California, Berkeley and its contributors.
39 * 4. Neither the name of the University nor the names of its contributors
40 * may be used to endorse or promote products derived from this software
41 * without specific prior written permission.
42 *
43 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
44 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
45 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
46 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
47 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
48 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
53 * SUCH DAMAGE.
54 *
55 * @(#)signal.h 8.3 (Berkeley) 3/30/94
56 */
57
58#ifndef _USER_SIGNAL_H
59#define _USER_SIGNAL_H
60
61#include <sys/cdefs.h>
62#include <_types.h>
63#include <sys/signal.h>
64
65#include <sys/_pthread/_pthread_types.h>
66#include <sys/_pthread/_pthread_t.h>
67
68#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
69extern __const char *__const sys_signame[NSIG];
70extern __const char *__const sys_siglist[NSIG];
71#endif
72
73__BEGIN_DECLS
74int raise(int);
75__END_DECLS
76
77#ifndef _ANSI_SOURCE
78__BEGIN_DECLS
79void (* _Nullable bsd_signal(int, void (* _Nullable)(int)))(int);
80int kill(pid_t, int) __DARWIN_ALIAS(kill);
81int killpg(pid_t, int) __DARWIN_ALIAS(killpg);
82int pthread_kill(pthread_t, int);
83int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
84int sigaction(int, const struct sigaction * __restrict,
85 struct sigaction * __restrict);
86int sigaddset(sigset_t *, int);
87int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
88int sigdelset(sigset_t *, int);
89int sigemptyset(sigset_t *);
90int sigfillset(sigset_t *);
91int sighold(int);
92int sigignore(int);
93int siginterrupt(int, int);
94int sigismember(const sigset_t *, int);
95int sigpause(int) __DARWIN_ALIAS_C(sigpause);
96int sigpending(sigset_t *);
97int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
98int sigrelse(int);
99void (* _Nullable sigset(int, void (* _Nullable)(int)))(int);
100int sigsuspend(const sigset_t *) __DARWIN_ALIAS_C(sigsuspend);
101int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
102#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
103void psignal(unsigned int, const char *);
104int sigblock(int);
105int sigsetmask(int);
106int sigvec(int, struct sigvec *, struct sigvec *);
107#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
108__END_DECLS
109
110/* List definitions after function declarations, or Reiser cpp gets upset. */
111#if defined(__i386__) || defined(__x86_64__)
112/* The left shift operator on intel is modulo 32 */
113__header_always_inline int
114__sigbits(int __signo)
115{
116 return __signo > __DARWIN_NSIG ? 0 : (1 << (__signo - 1));
117}
118#else /* !__i386__ && !__x86_64__ */
119#define __sigbits(signo) (1 << ((signo) - 1))
120#endif /* __i386__ || __x86_64__ */
121
122#define sigaddset(set, signo) (*(set) |= __sigbits(signo), 0)
123#define sigdelset(set, signo) (*(set) &= ~__sigbits(signo), 0)
124#define sigismember(set, signo) ((*(set) & __sigbits(signo)) != 0)
125#define sigemptyset(set) (*(set) = 0, 0)
126#define sigfillset(set) (*(set) = ~(sigset_t)0, 0)
127#endif /* !_ANSI_SOURCE */
128
129#endif /* !_USER_SIGNAL_H */
lib/libc/include/x86_64-macos-gnu/stdint.h created+214
......@@ -0,0 +1,214 @@
1/*
2 * Copyright (c) 2000-2010 Apple Inc.
3 * All rights reserved.
4 */
5
6/*
7 * Note from the Zig project:
8 *
9 * Apple released their libc as a whole under the APSL 2.0 license [1], which
10 * includes this file. Therefore, this file is governed by the APSL 2.0 license.
11 *
12 * [1]: https://opensource.apple.com/source/Libc/Libc-1353.100.2/
13 */
14
15#ifndef _STDINT_H_
16#define _STDINT_H_
17
18#if __LP64__
19#define __WORDSIZE 64
20#else
21#define __WORDSIZE 32
22#endif
23
24/* from ISO/IEC 988:1999 spec */
25
26/* 7.18.1.1 Exact-width integer types */
27#include <sys/_types/_int8_t.h>
28#include <sys/_types/_int16_t.h>
29#include <sys/_types/_int32_t.h>
30#include <sys/_types/_int64_t.h>
31
32#include <_types/_uint8_t.h>
33#include <_types/_uint16_t.h>
34#include <_types/_uint32_t.h>
35#include <_types/_uint64_t.h>
36
37/* 7.18.1.2 Minimum-width integer types */
38typedef int8_t int_least8_t;
39typedef int16_t int_least16_t;
40typedef int32_t int_least32_t;
41typedef int64_t int_least64_t;
42typedef uint8_t uint_least8_t;
43typedef uint16_t uint_least16_t;
44typedef uint32_t uint_least32_t;
45typedef uint64_t uint_least64_t;
46
47
48/* 7.18.1.3 Fastest-width integer types */
49typedef int8_t int_fast8_t;
50typedef int16_t int_fast16_t;
51typedef int32_t int_fast32_t;
52typedef int64_t int_fast64_t;
53typedef uint8_t uint_fast8_t;
54typedef uint16_t uint_fast16_t;
55typedef uint32_t uint_fast32_t;
56typedef uint64_t uint_fast64_t;
57
58
59/* 7.18.1.4 Integer types capable of holding object pointers */
60
61#include <sys/_types.h>
62#include <sys/_types/_intptr_t.h>
63#include <sys/_types/_uintptr_t.h>
64
65
66/* 7.18.1.5 Greatest-width integer types */
67#include <_types/_intmax_t.h>
68#include <_types/_uintmax_t.h>
69
70/* 7.18.4 Macros for integer constants */
71#define INT8_C(v) (v)
72#define INT16_C(v) (v)
73#define INT32_C(v) (v)
74#define INT64_C(v) (v ## LL)
75
76#define UINT8_C(v) (v)
77#define UINT16_C(v) (v)
78#define UINT32_C(v) (v ## U)
79#define UINT64_C(v) (v ## ULL)
80
81#ifdef __LP64__
82#define INTMAX_C(v) (v ## L)
83#define UINTMAX_C(v) (v ## UL)
84#else
85#define INTMAX_C(v) (v ## LL)
86#define UINTMAX_C(v) (v ## ULL)
87#endif
88
89/* 7.18.2 Limits of specified-width integer types:
90 * These #defines specify the minimum and maximum limits
91 * of each of the types declared above.
92 *
93 * They must have "the same type as would an expression that is an
94 * object of the corresponding type converted according to the integer
95 * promotion".
96 */
97
98
99/* 7.18.2.1 Limits of exact-width integer types */
100#define INT8_MAX 127
101#define INT16_MAX 32767
102#define INT32_MAX 2147483647
103#define INT64_MAX 9223372036854775807LL
104
105#define INT8_MIN -128
106#define INT16_MIN -32768
107 /*
108 Note: the literal "most negative int" cannot be written in C --
109 the rules in the standard (section 6.4.4.1 in C99) will give it
110 an unsigned type, so INT32_MIN (and the most negative member of
111 any larger signed type) must be written via a constant expression.
112 */
113#define INT32_MIN (-INT32_MAX-1)
114#define INT64_MIN (-INT64_MAX-1)
115
116#define UINT8_MAX 255
117#define UINT16_MAX 65535
118#define UINT32_MAX 4294967295U
119#define UINT64_MAX 18446744073709551615ULL
120
121/* 7.18.2.2 Limits of minimum-width integer types */
122#define INT_LEAST8_MIN INT8_MIN
123#define INT_LEAST16_MIN INT16_MIN
124#define INT_LEAST32_MIN INT32_MIN
125#define INT_LEAST64_MIN INT64_MIN
126
127#define INT_LEAST8_MAX INT8_MAX
128#define INT_LEAST16_MAX INT16_MAX
129#define INT_LEAST32_MAX INT32_MAX
130#define INT_LEAST64_MAX INT64_MAX
131
132#define UINT_LEAST8_MAX UINT8_MAX
133#define UINT_LEAST16_MAX UINT16_MAX
134#define UINT_LEAST32_MAX UINT32_MAX
135#define UINT_LEAST64_MAX UINT64_MAX
136
137/* 7.18.2.3 Limits of fastest minimum-width integer types */
138#define INT_FAST8_MIN INT8_MIN
139#define INT_FAST16_MIN INT16_MIN
140#define INT_FAST32_MIN INT32_MIN
141#define INT_FAST64_MIN INT64_MIN
142
143#define INT_FAST8_MAX INT8_MAX
144#define INT_FAST16_MAX INT16_MAX
145#define INT_FAST32_MAX INT32_MAX
146#define INT_FAST64_MAX INT64_MAX
147
148#define UINT_FAST8_MAX UINT8_MAX
149#define UINT_FAST16_MAX UINT16_MAX
150#define UINT_FAST32_MAX UINT32_MAX
151#define UINT_FAST64_MAX UINT64_MAX
152
153/* 7.18.2.4 Limits of integer types capable of holding object pointers */
154
155#if __WORDSIZE == 64
156#define INTPTR_MAX 9223372036854775807L
157#else
158#define INTPTR_MAX 2147483647L
159#endif
160#define INTPTR_MIN (-INTPTR_MAX-1)
161
162#if __WORDSIZE == 64
163#define UINTPTR_MAX 18446744073709551615UL
164#else
165#define UINTPTR_MAX 4294967295UL
166#endif
167
168/* 7.18.2.5 Limits of greatest-width integer types */
169#define INTMAX_MAX INTMAX_C(9223372036854775807)
170#define UINTMAX_MAX UINTMAX_C(18446744073709551615)
171#define INTMAX_MIN (-INTMAX_MAX-1)
172
173/* 7.18.3 "Other" */
174#if __WORDSIZE == 64
175#define PTRDIFF_MIN INTMAX_MIN
176#define PTRDIFF_MAX INTMAX_MAX
177#else
178#define PTRDIFF_MIN INT32_MIN
179#define PTRDIFF_MAX INT32_MAX
180#endif
181
182#define SIZE_MAX UINTPTR_MAX
183
184#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1
185#define RSIZE_MAX (SIZE_MAX >> 1)
186#endif
187
188#ifndef WCHAR_MAX
189# ifdef __WCHAR_MAX__
190# define WCHAR_MAX __WCHAR_MAX__
191# else
192# define WCHAR_MAX 0x7fffffff
193# endif
194#endif
195
196/* WCHAR_MIN should be 0 if wchar_t is an unsigned type and
197 (-WCHAR_MAX-1) if wchar_t is a signed type. Unfortunately,
198 it turns out that -fshort-wchar changes the signedness of
199 the type. */
200#ifndef WCHAR_MIN
201# if WCHAR_MAX == 0xffff
202# define WCHAR_MIN 0
203# else
204# define WCHAR_MIN (-WCHAR_MAX-1)
205# endif
206#endif
207
208#define WINT_MIN INT32_MIN
209#define WINT_MAX INT32_MAX
210
211#define SIG_ATOMIC_MIN INT32_MIN
212#define SIG_ATOMIC_MAX INT32_MAX
213
214#endif /* _STDINT_H_ */
lib/libc/include/x86_64-macos-gnu/stdio.h created+410
......@@ -0,0 +1,410 @@
1/*
2 * Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1990, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * This code is derived from software contributed to Berkeley by
28 * Chris Torek.
29 *
30 * Redistribution and use in source and binary forms, with or without
31 * modification, are permitted provided that the following conditions
32 * are met:
33 * 1. Redistributions of source code must retain the above copyright
34 * notice, this list of conditions and the following disclaimer.
35 * 2. Redistributions in binary form must reproduce the above copyright
36 * notice, this list of conditions and the following disclaimer in the
37 * documentation and/or other materials provided with the distribution.
38 * 3. All advertising materials mentioning features or use of this software
39 * must display the following acknowledgement:
40 * This product includes software developed by the University of
41 * California, Berkeley and its contributors.
42 * 4. Neither the name of the University nor the names of its contributors
43 * may be used to endorse or promote products derived from this software
44 * without specific prior written permission.
45 *
46 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
47 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
48 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
49 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
50 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
51 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
52 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
53 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
54 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
55 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
56 * SUCH DAMAGE.
57 *
58 * @(#)stdio.h 8.5 (Berkeley) 4/29/95
59 */
60
61#ifndef _STDIO_H_
62#define _STDIO_H_
63
64#include <_stdio.h>
65
66__BEGIN_DECLS
67extern FILE *__stdinp;
68extern FILE *__stdoutp;
69extern FILE *__stderrp;
70__END_DECLS
71
72#define __SLBF 0x0001 /* line buffered */
73#define __SNBF 0x0002 /* unbuffered */
74#define __SRD 0x0004 /* OK to read */
75#define __SWR 0x0008 /* OK to write */
76 /* RD and WR are never simultaneously asserted */
77#define __SRW 0x0010 /* open for reading & writing */
78#define __SEOF 0x0020 /* found EOF */
79#define __SERR 0x0040 /* found error */
80#define __SMBF 0x0080 /* _buf is from malloc */
81#define __SAPP 0x0100 /* fdopen()ed in append mode */
82#define __SSTR 0x0200 /* this is an sprintf/snprintf string */
83#define __SOPT 0x0400 /* do fseek() optimisation */
84#define __SNPT 0x0800 /* do not do fseek() optimisation */
85#define __SOFF 0x1000 /* set iff _offset is in fact correct */
86#define __SMOD 0x2000 /* true => fgetln modified _p text */
87#define __SALC 0x4000 /* allocate string space dynamically */
88#define __SIGN 0x8000 /* ignore this file in _fwalk */
89
90/*
91 * The following three definitions are for ANSI C, which took them
92 * from System V, which brilliantly took internal interface macros and
93 * made them official arguments to setvbuf(), without renaming them.
94 * Hence, these ugly _IOxxx names are *supposed* to appear in user code.
95 *
96 * Although numbered as their counterparts above, the implementation
97 * does not rely on this.
98 */
99#define _IOFBF 0 /* setvbuf should set fully buffered */
100#define _IOLBF 1 /* setvbuf should set line buffered */
101#define _IONBF 2 /* setvbuf should set unbuffered */
102
103#define BUFSIZ 1024 /* size of buffer used by setbuf */
104#define EOF (-1)
105
106 /* must be == _POSIX_STREAM_MAX <limits.h> */
107#define FOPEN_MAX 20 /* must be <= OPEN_MAX <sys/syslimits.h> */
108#define FILENAME_MAX 1024 /* must be <= PATH_MAX <sys/syslimits.h> */
109
110/* System V/ANSI C; this is the wrong way to do this, do *not* use these. */
111#ifndef _ANSI_SOURCE
112#define P_tmpdir "/var/tmp/"
113#endif
114#define L_tmpnam 1024 /* XXX must be == PATH_MAX */
115#define TMP_MAX 308915776
116
117#ifndef SEEK_SET
118#define SEEK_SET 0 /* set file offset to offset */
119#endif
120#ifndef SEEK_CUR
121#define SEEK_CUR 1 /* set file offset to current plus offset */
122#endif
123#ifndef SEEK_END
124#define SEEK_END 2 /* set file offset to EOF plus offset */
125#endif
126
127#define stdin __stdinp
128#define stdout __stdoutp
129#define stderr __stderrp
130
131#ifdef _DARWIN_UNLIMITED_STREAMS
132#if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_3_2
133#error "_DARWIN_UNLIMITED_STREAMS specified, but -miphoneos-version-min version does not support it."
134#elif defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED < __MAC_10_6
135#error "_DARWIN_UNLIMITED_STREAMS specified, but -mmacosx-version-min version does not support it."
136#endif
137#endif
138
139/* ANSI-C */
140
141__BEGIN_DECLS
142void clearerr(FILE *);
143int fclose(FILE *);
144int feof(FILE *);
145int ferror(FILE *);
146int fflush(FILE *);
147int fgetc(FILE *);
148int fgetpos(FILE * __restrict, fpos_t *);
149char *fgets(char * __restrict, int, FILE *);
150#if defined(_DARWIN_UNLIMITED_STREAMS) || defined(_DARWIN_C_SOURCE)
151FILE *fopen(const char * __restrict __filename, const char * __restrict __mode) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_3_2, __DARWIN_EXTSN(fopen));
152#else /* !_DARWIN_UNLIMITED_STREAMS && !_DARWIN_C_SOURCE */
153FILE *fopen(const char * __restrict __filename, const char * __restrict __mode) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fopen));
154#endif /* (DARWIN_UNLIMITED_STREAMS || _DARWIN_C_SOURCE) */
155int fprintf(FILE * __restrict, const char * __restrict, ...) __printflike(2, 3);
156int fputc(int, FILE *);
157int fputs(const char * __restrict, FILE * __restrict) __DARWIN_ALIAS(fputs);
158size_t fread(void * __restrict __ptr, size_t __size, size_t __nitems, FILE * __restrict __stream);
159FILE *freopen(const char * __restrict, const char * __restrict,
160 FILE * __restrict) __DARWIN_ALIAS(freopen);
161int fscanf(FILE * __restrict, const char * __restrict, ...) __scanflike(2, 3);
162int fseek(FILE *, long, int);
163int fsetpos(FILE *, const fpos_t *);
164long ftell(FILE *);
165size_t fwrite(const void * __restrict __ptr, size_t __size, size_t __nitems, FILE * __restrict __stream) __DARWIN_ALIAS(fwrite);
166int getc(FILE *);
167int getchar(void);
168char *gets(char *);
169void perror(const char *) __cold;
170int printf(const char * __restrict, ...) __printflike(1, 2);
171int putc(int, FILE *);
172int putchar(int);
173int puts(const char *);
174int remove(const char *);
175int rename (const char *__old, const char *__new);
176void rewind(FILE *);
177int scanf(const char * __restrict, ...) __scanflike(1, 2);
178void setbuf(FILE * __restrict, char * __restrict);
179int setvbuf(FILE * __restrict, char * __restrict, int, size_t);
180int sprintf(char * __restrict, const char * __restrict, ...) __printflike(2, 3) __swift_unavailable("Use snprintf instead.");
181int sscanf(const char * __restrict, const char * __restrict, ...) __scanflike(2, 3);
182FILE *tmpfile(void);
183
184__swift_unavailable("Use mkstemp(3) instead.")
185#if !defined(_POSIX_C_SOURCE)
186__deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of tmpnam(3), it is highly recommended that you use mkstemp(3) instead.")
187#endif
188char *tmpnam(char *);
189int ungetc(int, FILE *);
190int vfprintf(FILE * __restrict, const char * __restrict, va_list) __printflike(2, 0);
191int vprintf(const char * __restrict, va_list) __printflike(1, 0);
192int vsprintf(char * __restrict, const char * __restrict, va_list) __printflike(2, 0) __swift_unavailable("Use vsnprintf instead.");
193__END_DECLS
194
195
196
197/* Additional functionality provided by:
198 * POSIX.1-1988
199 */
200
201#if __DARWIN_C_LEVEL >= 198808L
202#define L_ctermid 1024 /* size for ctermid(); PATH_MAX */
203
204__BEGIN_DECLS
205#include <_ctermid.h>
206
207#if defined(_DARWIN_UNLIMITED_STREAMS) || defined(_DARWIN_C_SOURCE)
208FILE *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_3_2, __DARWIN_EXTSN(fdopen));
209#else /* !_DARWIN_UNLIMITED_STREAMS && !_DARWIN_C_SOURCE */
210FILE *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fdopen));
211#endif /* (DARWIN_UNLIMITED_STREAMS || _DARWIN_C_SOURCE) */
212int fileno(FILE *);
213__END_DECLS
214#endif /* __DARWIN_C_LEVEL >= 198808L */
215
216
217/* Additional functionality provided by:
218 * POSIX.2-1992 C Language Binding Option
219 */
220#if TARGET_OS_EMBEDDED
221#define __swift_unavailable_on(osx_msg, ios_msg) __swift_unavailable(ios_msg)
222#else
223#define __swift_unavailable_on(osx_msg, ios_msg) __swift_unavailable(osx_msg)
224#endif
225
226#if __DARWIN_C_LEVEL >= 199209L
227__BEGIN_DECLS
228int pclose(FILE *) __swift_unavailable_on("Use posix_spawn APIs or NSTask instead.", "Process spawning is unavailable.");
229#if defined(_DARWIN_UNLIMITED_STREAMS) || defined(_DARWIN_C_SOURCE)
230FILE *popen(const char *, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_3_2, __DARWIN_EXTSN(popen)) __swift_unavailable_on("Use posix_spawn APIs or NSTask instead.", "Process spawning is unavailable.");
231#else /* !_DARWIN_UNLIMITED_STREAMS && !_DARWIN_C_SOURCE */
232FILE *popen(const char *, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(popen)) __swift_unavailable_on("Use posix_spawn APIs or NSTask instead.", "Process spawning is unavailable.");
233#endif /* (DARWIN_UNLIMITED_STREAMS || _DARWIN_C_SOURCE) */
234__END_DECLS
235#endif /* __DARWIN_C_LEVEL >= 199209L */
236
237#undef __swift_unavailable_on
238
239/* Additional functionality provided by:
240 * POSIX.1c-1995,
241 * POSIX.1i-1995,
242 * and the omnibus ISO/IEC 9945-1: 1996
243 */
244
245#if __DARWIN_C_LEVEL >= 199506L
246
247/* Functions internal to the implementation. */
248__BEGIN_DECLS
249int __srget(FILE *);
250int __svfscanf(FILE *, const char *, va_list) __scanflike(2, 0);
251int __swbuf(int, FILE *);
252__END_DECLS
253
254/*
255 * The __sfoo macros are here so that we can
256 * define function versions in the C library.
257 */
258#define __sgetc(p) (--(p)->_r < 0 ? __srget(p) : (int)(*(p)->_p++))
259#if defined(__GNUC__) && defined(__STDC__)
260__header_always_inline int __sputc(int _c, FILE *_p) {
261 if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))
262 return (*_p->_p++ = _c);
263 else
264 return (__swbuf(_c, _p));
265}
266#else
267/*
268 * This has been tuned to generate reasonable code on the vax using pcc.
269 */
270#define __sputc(c, p) \
271 (--(p)->_w < 0 ? \
272 (p)->_w >= (p)->_lbfsize ? \
273 (*(p)->_p = (c)), *(p)->_p != '\n' ? \
274 (int)*(p)->_p++ : \
275 __swbuf('\n', p) : \
276 __swbuf((int)(c), p) : \
277 (*(p)->_p = (c), (int)*(p)->_p++))
278#endif
279
280#define __sfeof(p) (((p)->_flags & __SEOF) != 0)
281#define __sferror(p) (((p)->_flags & __SERR) != 0)
282#define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF)))
283#define __sfileno(p) ((p)->_file)
284
285__BEGIN_DECLS
286void flockfile(FILE *);
287int ftrylockfile(FILE *);
288void funlockfile(FILE *);
289int getc_unlocked(FILE *);
290int getchar_unlocked(void);
291int putc_unlocked(int, FILE *);
292int putchar_unlocked(int);
293
294/* Removed in Issue 6 */
295#if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200112L
296int getw(FILE *);
297int putw(int, FILE *);
298#endif
299
300__swift_unavailable("Use mkstemp(3) instead.")
301#if !defined(_POSIX_C_SOURCE)
302__deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of tempnam(3), it is highly recommended that you use mkstemp(3) instead.")
303#endif
304char *tempnam(const char *__dir, const char *__prefix) __DARWIN_ALIAS(tempnam);
305__END_DECLS
306
307#ifndef lint
308#define getc_unlocked(fp) __sgetc(fp)
309#define putc_unlocked(x, fp) __sputc(x, fp)
310#endif /* lint */
311
312#define getchar_unlocked() getc_unlocked(stdin)
313#define putchar_unlocked(x) putc_unlocked(x, stdout)
314#endif /* __DARWIN_C_LEVEL >= 199506L */
315
316
317
318/* Additional functionality provided by:
319 * POSIX.1-2001
320 * ISO C99
321 */
322
323#if __DARWIN_C_LEVEL >= 200112L
324#include <sys/_types/_off_t.h>
325
326__BEGIN_DECLS
327int fseeko(FILE * __stream, off_t __offset, int __whence);
328off_t ftello(FILE * __stream);
329__END_DECLS
330#endif /* __DARWIN_C_LEVEL >= 200112L */
331
332#if __DARWIN_C_LEVEL >= 200112L || defined(_C99_SOURCE) || defined(__cplusplus)
333__BEGIN_DECLS
334int snprintf(char * __restrict __str, size_t __size, const char * __restrict __format, ...) __printflike(3, 4);
335int vfscanf(FILE * __restrict __stream, const char * __restrict __format, va_list) __scanflike(2, 0);
336int vscanf(const char * __restrict __format, va_list) __scanflike(1, 0);
337int vsnprintf(char * __restrict __str, size_t __size, const char * __restrict __format, va_list) __printflike(3, 0);
338int vsscanf(const char * __restrict __str, const char * __restrict __format, va_list) __scanflike(2, 0);
339__END_DECLS
340#endif /* __DARWIN_C_LEVEL >= 200112L || defined(_C99_SOURCE) || defined(__cplusplus) */
341
342
343
344/* Additional functionality provided by:
345 * POSIX.1-2008
346 */
347
348#if __DARWIN_C_LEVEL >= 200809L
349#include <sys/_types/_ssize_t.h>
350
351__BEGIN_DECLS
352int dprintf(int, const char * __restrict, ...) __printflike(2, 3) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
353int vdprintf(int, const char * __restrict, va_list) __printflike(2, 0) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
354ssize_t getdelim(char ** __restrict __linep, size_t * __restrict __linecapp, int __delimiter, FILE * __restrict __stream) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
355ssize_t getline(char ** __restrict __linep, size_t * __restrict __linecapp, FILE * __restrict __stream) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
356FILE *fmemopen(void * __restrict __buf, size_t __size, const char * __restrict __mode) __API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
357FILE *open_memstream(char **__bufp, size_t *__sizep) __API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
358__END_DECLS
359#endif /* __DARWIN_C_LEVEL >= 200809L */
360
361
362
363/* Darwin extensions */
364
365#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
366__BEGIN_DECLS
367extern __const int sys_nerr; /* perror(3) external variables */
368extern __const char *__const sys_errlist[];
369
370int asprintf(char ** __restrict, const char * __restrict, ...) __printflike(2, 3);
371char *ctermid_r(char *);
372char *fgetln(FILE *, size_t *);
373__const char *fmtcheck(const char *, const char *);
374int fpurge(FILE *);
375void setbuffer(FILE *, char *, int);
376int setlinebuf(FILE *);
377int vasprintf(char ** __restrict, const char * __restrict, va_list) __printflike(2, 0);
378FILE *zopen(const char *, const char *, int);
379
380
381/*
382 * Stdio function-access interface.
383 */
384FILE *funopen(const void *,
385 int (* _Nullable)(void *, char *, int),
386 int (* _Nullable)(void *, const char *, int),
387 fpos_t (* _Nullable)(void *, fpos_t, int),
388 int (* _Nullable)(void *));
389__END_DECLS
390#define fropen(cookie, fn) funopen(cookie, fn, 0, 0, 0)
391#define fwopen(cookie, fn) funopen(cookie, 0, fn, 0, 0)
392
393#define feof_unlocked(p) __sfeof(p)
394#define ferror_unlocked(p) __sferror(p)
395#define clearerr_unlocked(p) __sclearerr(p)
396#define fileno_unlocked(p) __sfileno(p)
397
398#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
399
400
401#ifdef _USE_EXTENDED_LOCALES_
402#include <xlocale/_stdio.h>
403#endif /* _USE_EXTENDED_LOCALES_ */
404
405#if defined (__GNUC__) && _FORTIFY_SOURCE > 0 && !defined (__cplusplus)
406/* Security checking functions. */
407#include <secure/_stdio.h>
408#endif
409
410#endif /* _STDIO_H_ */
lib/libc/include/x86_64-macos-gnu/stdlib.h created+370
......@@ -0,0 +1,370 @@
1/*
2 * Copyright (c) 2000, 2002 - 2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1990, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * Redistribution and use in source and binary forms, with or without
28 * modification, are permitted provided that the following conditions
29 * are met:
30 * 1. Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * 2. Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in the
34 * documentation and/or other materials provided with the distribution.
35 * 3. All advertising materials mentioning features or use of this software
36 * must display the following acknowledgement:
37 * This product includes software developed by the University of
38 * California, Berkeley and its contributors.
39 * 4. Neither the name of the University nor the names of its contributors
40 * may be used to endorse or promote products derived from this software
41 * without specific prior written permission.
42 *
43 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
44 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
45 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
46 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
47 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
48 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
53 * SUCH DAMAGE.
54 *
55 * @(#)stdlib.h 8.5 (Berkeley) 5/19/95
56 */
57
58#ifndef _STDLIB_H_
59#define _STDLIB_H_
60
61#include <Availability.h>
62#include <sys/cdefs.h>
63
64#include <_types.h>
65#if !defined(_ANSI_SOURCE)
66#include <sys/wait.h>
67#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
68#include <alloca.h>
69#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
70#endif /* !_ANSI_SOURCE */
71
72/* DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
73 * _GCC_SIZE_T */
74#include <sys/_types/_size_t.h>
75
76#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
77#include <sys/_types/_ct_rune_t.h>
78#include <sys/_types/_rune_t.h>
79#endif /* !_ANSI_SOURCE && (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
80
81#include <sys/_types/_wchar_t.h>
82
83typedef struct {
84 int quot; /* quotient */
85 int rem; /* remainder */
86} div_t;
87
88typedef struct {
89 long quot; /* quotient */
90 long rem; /* remainder */
91} ldiv_t;
92
93#if !__DARWIN_NO_LONG_LONG
94typedef struct {
95 long long quot;
96 long long rem;
97} lldiv_t;
98#endif /* !__DARWIN_NO_LONG_LONG */
99
100#include <sys/_types/_null.h>
101
102#define EXIT_FAILURE 1
103#define EXIT_SUCCESS 0
104
105#define RAND_MAX 0x7fffffff
106
107#ifdef _USE_EXTENDED_LOCALES_
108#include <_xlocale.h>
109#endif /* _USE_EXTENDED_LOCALES_ */
110
111#ifndef MB_CUR_MAX
112#ifdef _USE_EXTENDED_LOCALES_
113#define MB_CUR_MAX (___mb_cur_max())
114#ifndef MB_CUR_MAX_L
115#define MB_CUR_MAX_L(x) (___mb_cur_max_l(x))
116#endif /* !MB_CUR_MAX_L */
117#else /* !_USE_EXTENDED_LOCALES_ */
118extern int __mb_cur_max;
119#define MB_CUR_MAX __mb_cur_max
120#endif /* _USE_EXTENDED_LOCALES_ */
121#endif /* MB_CUR_MAX */
122
123#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) \
124 && defined(_USE_EXTENDED_LOCALES_) && !defined(MB_CUR_MAX_L)
125#define MB_CUR_MAX_L(x) (___mb_cur_max_l(x))
126#endif
127
128#include <malloc/_malloc.h>
129
130__BEGIN_DECLS
131void abort(void) __cold __dead2;
132int abs(int) __pure2;
133int atexit(void (* _Nonnull)(void));
134double atof(const char *);
135int atoi(const char *);
136long atol(const char *);
137#if !__DARWIN_NO_LONG_LONG
138long long
139 atoll(const char *);
140#endif /* !__DARWIN_NO_LONG_LONG */
141void *bsearch(const void *__key, const void *__base, size_t __nel,
142 size_t __width, int (* _Nonnull __compar)(const void *, const void *));
143/* calloc is now declared in _malloc.h */
144div_t div(int, int) __pure2;
145void exit(int) __dead2;
146/* free is now declared in _malloc.h */
147char *getenv(const char *);
148long labs(long) __pure2;
149ldiv_t ldiv(long, long) __pure2;
150#if !__DARWIN_NO_LONG_LONG
151long long
152 llabs(long long);
153lldiv_t lldiv(long long, long long);
154#endif /* !__DARWIN_NO_LONG_LONG */
155/* malloc is now declared in _malloc.h */
156int mblen(const char *__s, size_t __n);
157size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
158int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
159/* posix_memalign is now declared in _malloc.h */
160void qsort(void *__base, size_t __nel, size_t __width,
161 int (* _Nonnull __compar)(const void *, const void *));
162int rand(void) __swift_unavailable("Use arc4random instead.");
163/* realloc is now declared in _malloc.h */
164void srand(unsigned) __swift_unavailable("Use arc4random instead.");
165double strtod(const char *, char **) __DARWIN_ALIAS(strtod);
166float strtof(const char *, char **) __DARWIN_ALIAS(strtof);
167long strtol(const char *__str, char **__endptr, int __base);
168long double
169 strtold(const char *, char **);
170#if !__DARWIN_NO_LONG_LONG
171long long
172 strtoll(const char *__str, char **__endptr, int __base);
173#endif /* !__DARWIN_NO_LONG_LONG */
174unsigned long
175 strtoul(const char *__str, char **__endptr, int __base);
176#if !__DARWIN_NO_LONG_LONG
177unsigned long long
178 strtoull(const char *__str, char **__endptr, int __base);
179#endif /* !__DARWIN_NO_LONG_LONG */
180
181#if TARGET_OS_EMBEDDED
182#define __swift_unavailable_on(osx_msg, ios_msg) __swift_unavailable(ios_msg)
183#else
184#define __swift_unavailable_on(osx_msg, ios_msg) __swift_unavailable(osx_msg)
185#endif
186
187__swift_unavailable_on("Use posix_spawn APIs or NSTask instead.", "Process spawning is unavailable")
188__API_AVAILABLE(macos(10.0)) __IOS_PROHIBITED
189__WATCHOS_PROHIBITED __TVOS_PROHIBITED
190int system(const char *) __DARWIN_ALIAS_C(system);
191
192#undef __swift_unavailable_on
193
194size_t wcstombs(char * __restrict, const wchar_t * __restrict, size_t);
195int wctomb(char *, wchar_t);
196
197#ifndef _ANSI_SOURCE
198void _Exit(int) __dead2;
199long a64l(const char *);
200double drand48(void);
201char *ecvt(double, int, int *__restrict, int *__restrict); /* LEGACY */
202double erand48(unsigned short[3]);
203char *fcvt(double, int, int *__restrict, int *__restrict); /* LEGACY */
204char *gcvt(double, int, char *); /* LEGACY */
205int getsubopt(char **, char * const *, char **);
206int grantpt(int);
207#if __DARWIN_UNIX03
208char *initstate(unsigned, char *, size_t); /* no __DARWIN_ALIAS needed */
209#else /* !__DARWIN_UNIX03 */
210char *initstate(unsigned long, char *, long);
211#endif /* __DARWIN_UNIX03 */
212long jrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
213char *l64a(long);
214void lcong48(unsigned short[7]);
215long lrand48(void) __swift_unavailable("Use arc4random instead.");
216char *mktemp(char *);
217int mkstemp(char *);
218long mrand48(void) __swift_unavailable("Use arc4random instead.");
219long nrand48(unsigned short[3]) __swift_unavailable("Use arc4random instead.");
220int posix_openpt(int);
221char *ptsname(int);
222
223#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
224int ptsname_r(int fildes, char *buffer, size_t buflen) __API_AVAILABLE(macos(10.13.4), ios(11.3), tvos(11.3), watchos(4.3));
225#endif
226
227int putenv(char *) __DARWIN_ALIAS(putenv);
228long random(void) __swift_unavailable("Use arc4random instead.");
229int rand_r(unsigned *) __swift_unavailable("Use arc4random instead.");
230#if (__DARWIN_UNIX03 && !defined(_POSIX_C_SOURCE)) || defined(_DARWIN_C_SOURCE) || defined(_DARWIN_BETTER_REALPATH)
231char *realpath(const char * __restrict, char * __restrict) __DARWIN_EXTSN(realpath);
232#else /* (!__DARWIN_UNIX03 || _POSIX_C_SOURCE) && !_DARWIN_C_SOURCE && !_DARWIN_BETTER_REALPATH */
233char *realpath(const char * __restrict, char * __restrict) __DARWIN_ALIAS(realpath);
234#endif /* (__DARWIN_UNIX03 && _POSIX_C_SOURCE) || _DARWIN_C_SOURCE || _DARWIN_BETTER_REALPATH */
235unsigned short
236 *seed48(unsigned short[3]);
237int setenv(const char * __name, const char * __value, int __overwrite) __DARWIN_ALIAS(setenv);
238#if __DARWIN_UNIX03
239void setkey(const char *) __DARWIN_ALIAS(setkey);
240#else /* !__DARWIN_UNIX03 */
241int setkey(const char *);
242#endif /* __DARWIN_UNIX03 */
243char *setstate(const char *);
244void srand48(long);
245#if __DARWIN_UNIX03
246void srandom(unsigned);
247#else /* !__DARWIN_UNIX03 */
248void srandom(unsigned long);
249#endif /* __DARWIN_UNIX03 */
250int unlockpt(int);
251#if __DARWIN_UNIX03
252int unsetenv(const char *) __DARWIN_ALIAS(unsetenv);
253#else /* !__DARWIN_UNIX03 */
254void unsetenv(const char *);
255#endif /* __DARWIN_UNIX03 */
256#endif /* !_ANSI_SOURCE */
257
258#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
259#include <machine/types.h>
260#include <sys/_types/_dev_t.h>
261#include <sys/_types/_mode_t.h>
262#include <_types/_uint32_t.h>
263
264uint32_t arc4random(void);
265void arc4random_addrandom(unsigned char * /*dat*/, int /*datlen*/)
266 __OSX_DEPRECATED(10.0, 10.12, "use arc4random_stir")
267 __IOS_DEPRECATED(2.0, 10.0, "use arc4random_stir")
268 __TVOS_DEPRECATED(2.0, 10.0, "use arc4random_stir")
269 __WATCHOS_DEPRECATED(1.0, 3.0, "use arc4random_stir");
270void arc4random_buf(void * __buf, size_t __nbytes) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
271void arc4random_stir(void);
272uint32_t
273 arc4random_uniform(uint32_t __upper_bound) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
274#ifdef __BLOCKS__
275int atexit_b(void (^ _Nonnull)(void)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
276void *bsearch_b(const void *__key, const void *__base, size_t __nel,
277 size_t __width, int (^ _Nonnull __compar)(const void *, const void *)) __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
278#endif /* __BLOCKS__ */
279
280 /* getcap(3) functions */
281char *cgetcap(char *, const char *, int);
282int cgetclose(void);
283int cgetent(char **, char **, const char *);
284int cgetfirst(char **, char **);
285int cgetmatch(const char *, const char *);
286int cgetnext(char **, char **);
287int cgetnum(char *, const char *, long *);
288int cgetset(const char *);
289int cgetstr(char *, const char *, char **);
290int cgetustr(char *, const char *, char **);
291
292int daemon(int, int) __DARWIN_1050(daemon) __OSX_AVAILABLE_BUT_DEPRECATED_MSG(__MAC_10_0, __MAC_10_5, __IPHONE_2_0, __IPHONE_2_0, "Use posix_spawn APIs instead.") __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
293char *devname(dev_t, mode_t);
294char *devname_r(dev_t, mode_t, char *buf, int len);
295char *getbsize(int *, long *);
296int getloadavg(double [], int);
297const char
298 *getprogname(void);
299void setprogname(const char *);
300
301#ifdef __BLOCKS__
302#if __has_attribute(noescape)
303#define __sort_noescape __attribute__((__noescape__))
304#else
305#define __sort_noescape
306#endif
307#endif /* __BLOCKS__ */
308
309int heapsort(void *__base, size_t __nel, size_t __width,
310 int (* _Nonnull __compar)(const void *, const void *));
311#ifdef __BLOCKS__
312int heapsort_b(void *__base, size_t __nel, size_t __width,
313 int (^ _Nonnull __compar)(const void *, const void *) __sort_noescape)
314 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
315#endif /* __BLOCKS__ */
316int mergesort(void *__base, size_t __nel, size_t __width,
317 int (* _Nonnull __compar)(const void *, const void *));
318#ifdef __BLOCKS__
319int mergesort_b(void *__base, size_t __nel, size_t __width,
320 int (^ _Nonnull __compar)(const void *, const void *) __sort_noescape)
321 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
322#endif /* __BLOCKS__ */
323void psort(void *__base, size_t __nel, size_t __width,
324 int (* _Nonnull __compar)(const void *, const void *))
325 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
326#ifdef __BLOCKS__
327void psort_b(void *__base, size_t __nel, size_t __width,
328 int (^ _Nonnull __compar)(const void *, const void *) __sort_noescape)
329 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
330#endif /* __BLOCKS__ */
331void psort_r(void *__base, size_t __nel, size_t __width, void *,
332 int (* _Nonnull __compar)(void *, const void *, const void *))
333 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
334#ifdef __BLOCKS__
335void qsort_b(void *__base, size_t __nel, size_t __width,
336 int (^ _Nonnull __compar)(const void *, const void *) __sort_noescape)
337 __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_2);
338#endif /* __BLOCKS__ */
339void qsort_r(void *__base, size_t __nel, size_t __width, void *,
340 int (* _Nonnull __compar)(void *, const void *, const void *));
341int radixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
342 unsigned __endbyte);
343int rpmatch(const char *)
344 __API_AVAILABLE(macos(10.15), ios(13.0), tvos(13.0), watchos(6.0));
345int sradixsort(const unsigned char **__base, int __nel, const unsigned char *__table,
346 unsigned __endbyte);
347void sranddev(void);
348void srandomdev(void);
349void *reallocf(void *__ptr, size_t __size) __alloc_size(2);
350#if !__DARWIN_NO_LONG_LONG
351long long
352 strtoq(const char *__str, char **__endptr, int __base);
353unsigned long long
354 strtouq(const char *__str, char **__endptr, int __base);
355#endif /* !__DARWIN_NO_LONG_LONG */
356extern char *suboptarg; /* getsubopt(3) external variable */
357/* valloc is now declared in _malloc.h */
358#endif /* !_ANSI_SOURCE && !_POSIX_SOURCE */
359
360/* Poison the following routines if -fshort-wchar is set */
361#if !defined(__cplusplus) && defined(__WCHAR_MAX__) && __WCHAR_MAX__ <= 0xffffU
362#pragma GCC poison mbstowcs mbtowc wcstombs wctomb
363#endif
364__END_DECLS
365
366#ifdef _USE_EXTENDED_LOCALES_
367#include <xlocale/_stdlib.h>
368#endif /* _USE_EXTENDED_LOCALES_ */
369
370#endif /* _STDLIB_H_ */
lib/libc/include/x86_64-macos-gnu/string.h created+193
......@@ -0,0 +1,193 @@
1/*
2 * Copyright (c) 2000, 2007, 2010 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1990, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * Redistribution and use in source and binary forms, with or without
28 * modification, are permitted provided that the following conditions
29 * are met:
30 * 1. Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * 2. Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in the
34 * documentation and/or other materials provided with the distribution.
35 * 3. All advertising materials mentioning features or use of this software
36 * must display the following acknowledgement:
37 * This product includes software developed by the University of
38 * California, Berkeley and its contributors.
39 * 4. Neither the name of the University nor the names of its contributors
40 * may be used to endorse or promote products derived from this software
41 * without specific prior written permission.
42 *
43 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
44 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
45 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
46 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
47 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
48 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
53 * SUCH DAMAGE.
54 *
55 * @(#)string.h 8.1 (Berkeley) 6/2/93
56 */
57
58#ifndef _STRING_H_
59#define _STRING_H_
60
61#include <_types.h>
62#include <sys/cdefs.h>
63#include <Availability.h>
64#include <sys/_types/_size_t.h>
65#include <sys/_types/_null.h>
66
67/* ANSI-C */
68
69__BEGIN_DECLS
70void *memchr(const void *__s, int __c, size_t __n);
71int memcmp(const void *__s1, const void *__s2, size_t __n);
72void *memcpy(void *__dst, const void *__src, size_t __n);
73void *memmove(void *__dst, const void *__src, size_t __len);
74void *memset(void *__b, int __c, size_t __len);
75char *strcat(char *__s1, const char *__s2);
76char *strchr(const char *__s, int __c);
77int strcmp(const char *__s1, const char *__s2);
78int strcoll(const char *__s1, const char *__s2);
79char *strcpy(char *__dst, const char *__src);
80size_t strcspn(const char *__s, const char *__charset);
81char *strerror(int __errnum) __DARWIN_ALIAS(strerror);
82size_t strlen(const char *__s);
83char *strncat(char *__s1, const char *__s2, size_t __n);
84int strncmp(const char *__s1, const char *__s2, size_t __n);
85char *strncpy(char *__dst, const char *__src, size_t __n);
86char *strpbrk(const char *__s, const char *__charset);
87char *strrchr(const char *__s, int __c);
88size_t strspn(const char *__s, const char *__charset);
89char *strstr(const char *__big, const char *__little);
90char *strtok(char *__str, const char *__sep);
91size_t strxfrm(char *__s1, const char *__s2, size_t __n);
92__END_DECLS
93
94
95
96/* Additional functionality provided by:
97 * POSIX.1c-1995,
98 * POSIX.1i-1995,
99 * and the omnibus ISO/IEC 9945-1: 1996
100 */
101
102#if __DARWIN_C_LEVEL >= 199506L
103__BEGIN_DECLS
104char *strtok_r(char *__str, const char *__sep, char **__lasts);
105__END_DECLS
106#endif /* __DARWIN_C_LEVEL >= 199506L */
107
108
109
110/* Additional functionality provided by:
111 * POSIX.1-2001
112 */
113
114#if __DARWIN_C_LEVEL >= 200112L
115__BEGIN_DECLS
116int strerror_r(int __errnum, char *__strerrbuf, size_t __buflen);
117char *strdup(const char *__s1);
118void *memccpy(void *__dst, const void *__src, int __c, size_t __n);
119__END_DECLS
120#endif /* __DARWIN_C_LEVEL >= 200112L */
121
122
123
124/* Additional functionality provided by:
125 * POSIX.1-2008
126 */
127
128#if __DARWIN_C_LEVEL >= 200809L
129__BEGIN_DECLS
130char *stpcpy(char *__dst, const char *__src);
131char *stpncpy(char *__dst, const char *__src, size_t __n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
132char *strndup(const char *__s1, size_t __n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
133size_t strnlen(const char *__s1, size_t __n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
134char *strsignal(int __sig);
135__END_DECLS
136#endif /* __DARWIN_C_LEVEL >= 200809L */
137
138/* C11 Annex K */
139
140#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1
141#include <sys/_types/_rsize_t.h>
142#include <sys/_types/_errno_t.h>
143
144__BEGIN_DECLS
145errno_t memset_s(void *__s, rsize_t __smax, int __c, rsize_t __n) __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0);
146__END_DECLS
147#endif
148
149/* Darwin extensions */
150
151#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
152#include <sys/_types/_ssize_t.h>
153
154__BEGIN_DECLS
155void *memmem(const void *__big, size_t __big_len, const void *__little, size_t __little_len) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
156void memset_pattern4(void *__b, const void *__pattern4, size_t __len) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_3_0);
157void memset_pattern8(void *__b, const void *__pattern8, size_t __len) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_3_0);
158void memset_pattern16(void *__b, const void *__pattern16, size_t __len) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_3_0);
159
160char *strcasestr(const char *__big, const char *__little);
161char *strnstr(const char *__big, const char *__little, size_t __len);
162size_t strlcat(char *__dst, const char *__source, size_t __size);
163size_t strlcpy(char *__dst, const char *__source, size_t __size);
164void strmode(int __mode, char *__bp);
165char *strsep(char **__stringp, const char *__delim);
166
167/* SUS places swab() in unistd.h. It is listed here for source compatibility */
168void swab(const void * __restrict, void * __restrict, ssize_t);
169
170__OSX_AVAILABLE(10.12.1) __IOS_AVAILABLE(10.1)
171__TVOS_AVAILABLE(10.0.1) __WATCHOS_AVAILABLE(3.1)
172int timingsafe_bcmp(const void *__b1, const void *__b2, size_t __len);
173__END_DECLS
174
175/* Some functions historically defined in string.h were placed in strings.h
176 * by SUS. We are using "strings.h" instead of <strings.h> to avoid an issue
177 * where /Developer/Headers/FlatCarbon/Strings.h could be included instead on
178 * case-insensitive file systems.
179 */
180#include "strings.h"
181#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
182
183
184#ifdef _USE_EXTENDED_LOCALES_
185#include <xlocale/_string.h>
186#endif /* _USE_EXTENDED_LOCALES_ */
187
188#if defined (__GNUC__) && _FORTIFY_SOURCE > 0 && !defined (__cplusplus)
189/* Security checking functions. */
190#include <secure/_string.h>
191#endif
192
193#endif /* _STRING_H_ */
lib/libc/include/x86_64-macos-gnu/strings.h created+101
......@@ -0,0 +1,101 @@
1/*
2 * Copyright (c) 2000, 2007, 2010 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*-
24 * Copyright (c) 1990, 1993
25 * The Regents of the University of California. All rights reserved.
26 *
27 * Redistribution and use in source and binary forms, with or without
28 * modification, are permitted provided that the following conditions
29 * are met:
30 * 1. Redistributions of source code must retain the above copyright
31 * notice, this list of conditions and the following disclaimer.
32 * 2. Redistributions in binary form must reproduce the above copyright
33 * notice, this list of conditions and the following disclaimer in the
34 * documentation and/or other materials provided with the distribution.
35 * 3. All advertising materials mentioning features or use of this software
36 * must display the following acknowledgement:
37 * This product includes software developed by the University of
38 * California, Berkeley and its contributors.
39 * 4. Neither the name of the University nor the names of its contributors
40 * may be used to endorse or promote products derived from this software
41 * without specific prior written permission.
42 *
43 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
44 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
45 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
46 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
47 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
48 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
49 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
50 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
51 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
52 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
53 * SUCH DAMAGE.
54 *
55 * @(#)strings.h 8.1 (Berkeley) 6/2/93
56 */
57
58#ifndef _STRINGS_H_
59#define _STRINGS_H_
60
61#include <_types.h>
62
63#include <sys/cdefs.h>
64#include <Availability.h>
65#include <sys/_types/_size_t.h>
66
67__BEGIN_DECLS
68/* Removed in Issue 7 */
69#if !defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 200809L
70int bcmp(const void *, const void *, size_t) __POSIX_C_DEPRECATED(200112L);
71void bcopy(const void *, void *, size_t) __POSIX_C_DEPRECATED(200112L);
72void bzero(void *, size_t) __POSIX_C_DEPRECATED(200112L);
73char *index(const char *, int) __POSIX_C_DEPRECATED(200112L);
74char *rindex(const char *, int) __POSIX_C_DEPRECATED(200112L);
75#endif
76
77int ffs(int);
78int strcasecmp(const char *, const char *);
79int strncasecmp(const char *, const char *, size_t);
80__END_DECLS
81
82/* Darwin extensions */
83#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
84__BEGIN_DECLS
85int ffsl(long) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
86int ffsll(long long) __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0);
87int fls(int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
88int flsl(long) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
89int flsll(long long) __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0);
90__END_DECLS
91
92#include <string.h>
93#endif
94
95#if defined (__GNUC__) && _FORTIFY_SOURCE > 0 && !defined (__cplusplus)
96/* Security checking functions. */
97#include <secure/_strings.h>
98#endif
99
100#endif /* _STRINGS_H_ */
101
lib/libc/include/x86_64-macos-gnu/sys/_endian.h created+151
......@@ -0,0 +1,151 @@
1/*
2 * Copyright (c) 2004, 2006 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29/*
30 * Copyright (c) 1995 NeXT Computer, Inc. All rights reserved.
31 * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
32 *
33 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
34 *
35 * This file contains Original Code and/or Modifications of Original Code
36 * as defined in and that are subject to the Apple Public Source License
37 * Version 2.0 (the 'License'). You may not use this file except in
38 * compliance with the License. The rights granted to you under the License
39 * may not be used to create, or enable the creation or redistribution of,
40 * unlawful or unlicensed copies of an Apple operating system, or to
41 * circumvent, violate, or enable the circumvention or violation of, any
42 * terms of an Apple operating system software license agreement.
43 *
44 * Please obtain a copy of the License at
45 * http://www.opensource.apple.com/apsl/ and read it before using this file.
46 *
47 * The Original Code and all software distributed under the License are
48 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
49 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
50 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
51 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
52 * Please see the License for the specific language governing rights and
53 * limitations under the License.
54 *
55 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
56 */
57/*
58 * Copyright (c) 1987, 1991, 1993
59 * The Regents of the University of California. All rights reserved.
60 *
61 * Redistribution and use in source and binary forms, with or without
62 * modification, are permitted provided that the following conditions
63 * are met:
64 * 1. Redistributions of source code must retain the above copyright
65 * notice, this list of conditions and the following disclaimer.
66 * 2. Redistributions in binary form must reproduce the above copyright
67 * notice, this list of conditions and the following disclaimer in the
68 * documentation and/or other materials provided with the distribution.
69 * 3. All advertising materials mentioning features or use of this software
70 * must display the following acknowledgement:
71 * This product includes software developed by the University of
72 * California, Berkeley and its contributors.
73 * 4. Neither the name of the University nor the names of its contributors
74 * may be used to endorse or promote products derived from this software
75 * without specific prior written permission.
76 *
77 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
78 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
79 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
80 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
81 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
82 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
83 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
84 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
85 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
86 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
87 * SUCH DAMAGE.
88 */
89
90#ifndef _SYS__ENDIAN_H_
91#define _SYS__ENDIAN_H_
92
93#include <sys/cdefs.h>
94
95/*
96 * Macros for network/external number representation conversion.
97 */
98
99#if defined(lint)
100
101__BEGIN_DECLS
102__uint16_t ntohs(__uint16_t);
103__uint16_t htons(__uint16_t);
104__uint32_t ntohl(__uint32_t);
105__uint32_t htonl(__uint32_t);
106__END_DECLS
107
108#elif __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
109
110#define ntohl(x) ((__uint32_t)(x))
111#define ntohs(x) ((__uint16_t)(x))
112#define htonl(x) ((__uint32_t)(x))
113#define htons(x) ((__uint16_t)(x))
114
115#if defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
116
117#define ntohll(x) ((__uint64_t)(x))
118#define htonll(x) ((__uint64_t)(x))
119
120#define NTOHL(x) (x)
121#define NTOHS(x) (x)
122#define NTOHLL(x) (x)
123#define HTONL(x) (x)
124#define HTONS(x) (x)
125#define HTONLL(x) (x)
126#endif /* defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
127
128#else /* __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN */
129
130#include <libkern/_OSByteOrder.h>
131
132#define ntohs(x) __DARWIN_OSSwapInt16(x)
133#define htons(x) __DARWIN_OSSwapInt16(x)
134
135#define ntohl(x) __DARWIN_OSSwapInt32(x)
136#define htonl(x) __DARWIN_OSSwapInt32(x)
137
138#if defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
139
140#define ntohll(x) __DARWIN_OSSwapInt64(x)
141#define htonll(x) __DARWIN_OSSwapInt64(x)
142
143#define NTOHL(x) (x) = ntohl((__uint32_t)x)
144#define NTOHS(x) (x) = ntohs((__uint16_t)x)
145#define NTOHLL(x) (x) = ntohll((__uint64_t)x)
146#define HTONL(x) (x) = htonl((__uint32_t)x)
147#define HTONS(x) (x) = htons((__uint16_t)x)
148#define HTONLL(x) (x) = htonll((__uint64_t)x)
149#endif /* defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
150#endif /* __DARWIN_BYTE_ORDER */
151#endif /* !_SYS__ENDIAN_H_ */
lib/libc/include/x86_64-macos-gnu/sys/_posix_availability.h created+73
......@@ -0,0 +1,73 @@
1/* Copyright (c) 2010 Apple Inc. All rights reserved.
2 *
3 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
4 *
5 * This file contains Original Code and/or Modifications of Original Code
6 * as defined in and that are subject to the Apple Public Source License
7 * Version 2.0 (the 'License'). You may not use this file except in
8 * compliance with the License. The rights granted to you under the License
9 * may not be used to create, or enable the creation or redistribution of,
10 * unlawful or unlicensed copies of an Apple operating system, or to
11 * circumvent, violate, or enable the circumvention or violation of, any
12 * terms of an Apple operating system software license agreement.
13 *
14 * Please obtain a copy of the License at
15 * http://www.opensource.apple.com/apsl/ and read it before using this file.
16 *
17 * The Original Code and all software distributed under the License are
18 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
19 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
20 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
21 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
22 * Please see the License for the specific language governing rights and
23 * limitations under the License.
24 *
25 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
26 */
27
28#ifndef _CDEFS_H_
29# error "Never use <sys/_posix_availability.h> directly. Use <sys/cdefs.h> instead."
30#endif
31
32#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 198808L
33#define ___POSIX_C_DEPRECATED_STARTING_198808L __deprecated
34#else
35#define ___POSIX_C_DEPRECATED_STARTING_198808L
36#endif
37
38#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199009L
39#define ___POSIX_C_DEPRECATED_STARTING_199009L __deprecated
40#else
41#define ___POSIX_C_DEPRECATED_STARTING_199009L
42#endif
43
44#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199209L
45#define ___POSIX_C_DEPRECATED_STARTING_199209L __deprecated
46#else
47#define ___POSIX_C_DEPRECATED_STARTING_199209L
48#endif
49
50#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199309L
51#define ___POSIX_C_DEPRECATED_STARTING_199309L __deprecated
52#else
53#define ___POSIX_C_DEPRECATED_STARTING_199309L
54#endif
55
56#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199506L
57#define ___POSIX_C_DEPRECATED_STARTING_199506L __deprecated
58#else
59#define ___POSIX_C_DEPRECATED_STARTING_199506L
60#endif
61
62#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L
63#define ___POSIX_C_DEPRECATED_STARTING_200112L __deprecated
64#else
65#define ___POSIX_C_DEPRECATED_STARTING_200112L
66#endif
67
68#if !defined(_DARWIN_C_SOURCE) && defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200809L
69#define ___POSIX_C_DEPRECATED_STARTING_200809L __deprecated
70#else
71#define ___POSIX_C_DEPRECATED_STARTING_200809L
72#endif
73
lib/libc/include/x86_64-macos-gnu/sys/_pthread/_pthread_attr_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _PTHREAD_ATTR_T
29#define _PTHREAD_ATTR_T
30#include <sys/_pthread/_pthread_types.h> /* __darwin_pthread_attr_t */
31typedef __darwin_pthread_attr_t pthread_attr_t;
32#endif /* _PTHREAD_ATTR_T */
lib/libc/include/x86_64-macos-gnu/sys/_pthread/_pthread_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _PTHREAD_T
29#define _PTHREAD_T
30#include <sys/_pthread/_pthread_types.h> /* __darwin_pthread_t */
31typedef __darwin_pthread_t pthread_t;
32#endif /* _PTHREAD_T */
lib/libc/include/x86_64-macos-gnu/sys/_pthread/_pthread_types.h created+120
......@@ -0,0 +1,120 @@
1/*
2 * Copyright (c) 2003-2013 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _SYS__PTHREAD_TYPES_H_
30#define _SYS__PTHREAD_TYPES_H_
31
32#include <sys/cdefs.h>
33
34// pthread opaque structures
35#if defined(__LP64__)
36#define __PTHREAD_SIZE__ 8176
37#define __PTHREAD_ATTR_SIZE__ 56
38#define __PTHREAD_MUTEXATTR_SIZE__ 8
39#define __PTHREAD_MUTEX_SIZE__ 56
40#define __PTHREAD_CONDATTR_SIZE__ 8
41#define __PTHREAD_COND_SIZE__ 40
42#define __PTHREAD_ONCE_SIZE__ 8
43#define __PTHREAD_RWLOCK_SIZE__ 192
44#define __PTHREAD_RWLOCKATTR_SIZE__ 16
45#else // !__LP64__
46#define __PTHREAD_SIZE__ 4088
47#define __PTHREAD_ATTR_SIZE__ 36
48#define __PTHREAD_MUTEXATTR_SIZE__ 8
49#define __PTHREAD_MUTEX_SIZE__ 40
50#define __PTHREAD_CONDATTR_SIZE__ 4
51#define __PTHREAD_COND_SIZE__ 24
52#define __PTHREAD_ONCE_SIZE__ 4
53#define __PTHREAD_RWLOCK_SIZE__ 124
54#define __PTHREAD_RWLOCKATTR_SIZE__ 12
55#endif // !__LP64__
56
57struct __darwin_pthread_handler_rec {
58 void (*__routine)(void *); // Routine to call
59 void *__arg; // Argument to pass
60 struct __darwin_pthread_handler_rec *__next;
61};
62
63struct _opaque_pthread_attr_t {
64 long __sig;
65 char __opaque[__PTHREAD_ATTR_SIZE__];
66};
67
68struct _opaque_pthread_cond_t {
69 long __sig;
70 char __opaque[__PTHREAD_COND_SIZE__];
71};
72
73struct _opaque_pthread_condattr_t {
74 long __sig;
75 char __opaque[__PTHREAD_CONDATTR_SIZE__];
76};
77
78struct _opaque_pthread_mutex_t {
79 long __sig;
80 char __opaque[__PTHREAD_MUTEX_SIZE__];
81};
82
83struct _opaque_pthread_mutexattr_t {
84 long __sig;
85 char __opaque[__PTHREAD_MUTEXATTR_SIZE__];
86};
87
88struct _opaque_pthread_once_t {
89 long __sig;
90 char __opaque[__PTHREAD_ONCE_SIZE__];
91};
92
93struct _opaque_pthread_rwlock_t {
94 long __sig;
95 char __opaque[__PTHREAD_RWLOCK_SIZE__];
96};
97
98struct _opaque_pthread_rwlockattr_t {
99 long __sig;
100 char __opaque[__PTHREAD_RWLOCKATTR_SIZE__];
101};
102
103struct _opaque_pthread_t {
104 long __sig;
105 struct __darwin_pthread_handler_rec *__cleanup_stack;
106 char __opaque[__PTHREAD_SIZE__];
107};
108
109typedef struct _opaque_pthread_attr_t __darwin_pthread_attr_t;
110typedef struct _opaque_pthread_cond_t __darwin_pthread_cond_t;
111typedef struct _opaque_pthread_condattr_t __darwin_pthread_condattr_t;
112typedef unsigned long __darwin_pthread_key_t;
113typedef struct _opaque_pthread_mutex_t __darwin_pthread_mutex_t;
114typedef struct _opaque_pthread_mutexattr_t __darwin_pthread_mutexattr_t;
115typedef struct _opaque_pthread_once_t __darwin_pthread_once_t;
116typedef struct _opaque_pthread_rwlock_t __darwin_pthread_rwlock_t;
117typedef struct _opaque_pthread_rwlockattr_t __darwin_pthread_rwlockattr_t;
118typedef struct _opaque_pthread_t *__darwin_pthread_t;
119
120#endif // _SYS__PTHREAD_TYPES_H_
lib/libc/include/x86_64-macos-gnu/sys/_symbol_aliasing.h created+499
......@@ -0,0 +1,499 @@
1/* Copyright (c) 2010 Apple Inc. All rights reserved.
2 *
3 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
4 *
5 * This file contains Original Code and/or Modifications of Original Code
6 * as defined in and that are subject to the Apple Public Source License
7 * Version 2.0 (the 'License'). You may not use this file except in
8 * compliance with the License. The rights granted to you under the License
9 * may not be used to create, or enable the creation or redistribution of,
10 * unlawful or unlicensed copies of an Apple operating system, or to
11 * circumvent, violate, or enable the circumvention or violation of, any
12 * terms of an Apple operating system software license agreement.
13 *
14 * Please obtain a copy of the License at
15 * http://www.opensource.apple.com/apsl/ and read it before using this file.
16 *
17 * The Original Code and all software distributed under the License are
18 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
19 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
20 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
21 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
22 * Please see the License for the specific language governing rights and
23 * limitations under the License.
24 *
25 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
26 */
27
28#ifndef _CDEFS_H_
29# error "Never use <sys/_symbol_aliasing.h> directly. Use <sys/cdefs.h> instead."
30#endif
31
32#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 20000
33#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_0(x) x
34#else
35#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_0(x)
36#endif
37
38#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 20100
39#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_1(x) x
40#else
41#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_1(x)
42#endif
43
44#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 20200
45#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_2(x) x
46#else
47#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_2_2(x)
48#endif
49
50#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 30000
51#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_0(x) x
52#else
53#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_0(x)
54#endif
55
56#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 30100
57#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_1(x) x
58#else
59#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_1(x)
60#endif
61
62#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 30200
63#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_2(x) x
64#else
65#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_3_2(x)
66#endif
67
68#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 40000
69#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_0(x) x
70#else
71#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_0(x)
72#endif
73
74#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 40100
75#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_1(x) x
76#else
77#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_1(x)
78#endif
79
80#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 40200
81#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_2(x) x
82#else
83#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_2(x)
84#endif
85
86#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 40300
87#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_3(x) x
88#else
89#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_4_3(x)
90#endif
91
92#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 50000
93#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_5_0(x) x
94#else
95#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_5_0(x)
96#endif
97
98#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 50100
99#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_5_1(x) x
100#else
101#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_5_1(x)
102#endif
103
104#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 60000
105#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_6_0(x) x
106#else
107#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_6_0(x)
108#endif
109
110#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 60100
111#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_6_1(x) x
112#else
113#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_6_1(x)
114#endif
115
116#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 70000
117#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_7_0(x) x
118#else
119#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_7_0(x)
120#endif
121
122#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 70100
123#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_7_1(x) x
124#else
125#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_7_1(x)
126#endif
127
128#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 80000
129#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_0(x) x
130#else
131#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_0(x)
132#endif
133
134#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 80100
135#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_1(x) x
136#else
137#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_1(x)
138#endif
139
140#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 80200
141#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_2(x) x
142#else
143#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_2(x)
144#endif
145
146#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 80300
147#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_3(x) x
148#else
149#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_3(x)
150#endif
151
152#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 80400
153#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_4(x) x
154#else
155#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_8_4(x)
156#endif
157
158#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 90000
159#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_0(x) x
160#else
161#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_0(x)
162#endif
163
164#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 90100
165#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_1(x) x
166#else
167#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_1(x)
168#endif
169
170#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 90200
171#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_2(x) x
172#else
173#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_2(x)
174#endif
175
176#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 90300
177#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_3(x) x
178#else
179#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_9_3(x)
180#endif
181
182#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 100000
183#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_0(x) x
184#else
185#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_0(x)
186#endif
187
188#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 100100
189#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_1(x) x
190#else
191#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_1(x)
192#endif
193
194#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 100200
195#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_2(x) x
196#else
197#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_2(x)
198#endif
199
200#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 100300
201#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_3(x) x
202#else
203#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_10_3(x)
204#endif
205
206#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 110000
207#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_0(x) x
208#else
209#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_0(x)
210#endif
211
212#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 110100
213#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_1(x) x
214#else
215#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_1(x)
216#endif
217
218#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 110200
219#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_2(x) x
220#else
221#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_2(x)
222#endif
223
224#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 110300
225#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_3(x) x
226#else
227#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_3(x)
228#endif
229
230#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 110400
231#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_4(x) x
232#else
233#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_11_4(x)
234#endif
235
236#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 120000
237#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_0(x) x
238#else
239#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_0(x)
240#endif
241
242#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 120100
243#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_1(x) x
244#else
245#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_1(x)
246#endif
247
248#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 120200
249#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_2(x) x
250#else
251#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_2(x)
252#endif
253
254#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 120300
255#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_3(x) x
256#else
257#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_3(x)
258#endif
259
260#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 120400
261#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_4(x) x
262#else
263#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_12_4(x)
264#endif
265
266#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130000
267#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_0(x) x
268#else
269#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_0(x)
270#endif
271
272#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130100
273#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_1(x) x
274#else
275#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_1(x)
276#endif
277
278#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130200
279#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_2(x) x
280#else
281#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_2(x)
282#endif
283
284#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130300
285#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_3(x) x
286#else
287#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_3(x)
288#endif
289
290#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130400
291#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_4(x) x
292#else
293#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_4(x)
294#endif
295
296#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130500
297#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_5(x) x
298#else
299#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_5(x)
300#endif
301
302#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ >= 130600
303#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_6(x) x
304#else
305#define __DARWIN_ALIAS_STARTING_IPHONE___IPHONE_13_6(x)
306#endif
307
308#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1000
309#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x) x
310#else
311#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_0(x)
312#endif
313
314#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1010
315#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_1(x) x
316#else
317#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_1(x)
318#endif
319
320#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1020
321#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_2(x) x
322#else
323#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_2(x)
324#endif
325
326#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1030
327#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_3(x) x
328#else
329#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_3(x)
330#endif
331
332#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1040
333#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_4(x) x
334#else
335#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_4(x)
336#endif
337
338#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050
339#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_5(x) x
340#else
341#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_5(x)
342#endif
343
344#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1060
345#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_6(x) x
346#else
347#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_6(x)
348#endif
349
350#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1070
351#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_7(x) x
352#else
353#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_7(x)
354#endif
355
356#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1080
357#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_8(x) x
358#else
359#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_8(x)
360#endif
361
362#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1090
363#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_9(x) x
364#else
365#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_9(x)
366#endif
367
368#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101000
369#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10(x) x
370#else
371#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10(x)
372#endif
373
374#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101002
375#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10_2(x) x
376#else
377#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10_2(x)
378#endif
379
380#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101003
381#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10_3(x) x
382#else
383#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_10_3(x)
384#endif
385
386#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101100
387#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11(x) x
388#else
389#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11(x)
390#endif
391
392#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101102
393#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_2(x) x
394#else
395#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_2(x)
396#endif
397
398#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101103
399#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_3(x) x
400#else
401#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_3(x)
402#endif
403
404#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101104
405#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_4(x) x
406#else
407#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_11_4(x)
408#endif
409
410#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101200
411#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12(x) x
412#else
413#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12(x)
414#endif
415
416#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101201
417#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_1(x) x
418#else
419#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_1(x)
420#endif
421
422#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101202
423#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_2(x) x
424#else
425#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_2(x)
426#endif
427
428#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101204
429#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_4(x) x
430#else
431#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_12_4(x)
432#endif
433
434#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101300
435#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13(x) x
436#else
437#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13(x)
438#endif
439
440#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101301
441#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_1(x) x
442#else
443#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_1(x)
444#endif
445
446#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101302
447#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_2(x) x
448#else
449#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_2(x)
450#endif
451
452#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101304
453#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_4(x) x
454#else
455#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_13_4(x)
456#endif
457
458#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101400
459#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14(x) x
460#else
461#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14(x)
462#endif
463
464#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101401
465#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_1(x) x
466#else
467#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_1(x)
468#endif
469
470#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101404
471#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_4(x) x
472#else
473#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_4(x)
474#endif
475
476#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101405
477#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_5(x) x
478#else
479#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_5(x)
480#endif
481
482#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101406
483#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_6(x) x
484#else
485#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_14_6(x)
486#endif
487
488#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101500
489#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_15(x) x
490#else
491#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_15(x)
492#endif
493
494#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101501
495#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_15_1(x) x
496#else
497#define __DARWIN_ALIAS_STARTING_MAC___MAC_10_15_1(x)
498#endif
499
lib/libc/include/x86_64-macos-gnu/sys/_types.h created+89
......@@ -0,0 +1,89 @@
1/*
2 * Copyright (c) 2003-2007 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _SYS__TYPES_H_
30#define _SYS__TYPES_H_
31
32#include <sys/cdefs.h>
33#include <machine/_types.h>
34
35/*
36 * Type definitions; takes common type definitions that must be used
37 * in multiple header files due to [XSI], removes them from the system
38 * space, and puts them in the implementation space.
39 */
40
41#ifdef __cplusplus
42#ifdef __GNUG__
43#define __DARWIN_NULL __null
44#else /* ! __GNUG__ */
45#ifdef __LP64__
46#define __DARWIN_NULL (0L)
47#else /* !__LP64__ */
48#define __DARWIN_NULL 0
49#endif /* __LP64__ */
50#endif /* __GNUG__ */
51#else /* ! __cplusplus */
52#define __DARWIN_NULL ((void *)0)
53#endif /* __cplusplus */
54
55typedef __int64_t __darwin_blkcnt_t; /* total blocks */
56typedef __int32_t __darwin_blksize_t; /* preferred block size */
57typedef __int32_t __darwin_dev_t; /* dev_t */
58typedef unsigned int __darwin_fsblkcnt_t; /* Used by statvfs and fstatvfs */
59typedef unsigned int __darwin_fsfilcnt_t; /* Used by statvfs and fstatvfs */
60typedef __uint32_t __darwin_gid_t; /* [???] process and group IDs */
61typedef __uint32_t __darwin_id_t; /* [XSI] pid_t, uid_t, or gid_t*/
62typedef __uint64_t __darwin_ino64_t; /* [???] Used for 64 bit inodes */
63#if __DARWIN_64_BIT_INO_T
64typedef __darwin_ino64_t __darwin_ino_t; /* [???] Used for inodes */
65#else /* !__DARWIN_64_BIT_INO_T */
66typedef __uint32_t __darwin_ino_t; /* [???] Used for inodes */
67#endif /* __DARWIN_64_BIT_INO_T */
68typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */
69typedef __darwin_mach_port_name_t __darwin_mach_port_t; /* Used by mach */
70typedef __uint16_t __darwin_mode_t; /* [???] Some file attributes */
71typedef __int64_t __darwin_off_t; /* [???] Used for file sizes */
72typedef __int32_t __darwin_pid_t; /* [???] process and group IDs */
73typedef __uint32_t __darwin_sigset_t; /* [???] signal set */
74typedef __int32_t __darwin_suseconds_t; /* [???] microseconds */
75typedef __uint32_t __darwin_uid_t; /* [???] user IDs */
76typedef __uint32_t __darwin_useconds_t; /* [???] microseconds */
77typedef unsigned char __darwin_uuid_t[16];
78typedef char __darwin_uuid_string_t[37];
79
80#include <sys/_pthread/_pthread_types.h>
81
82#if defined(__GNUC__) && (__GNUC__ == 3 && __GNUC_MINOR__ >= 5 || __GNUC__ > 3)
83#define __offsetof(type, field) __builtin_offsetof(type, field)
84#else /* !(gcc >= 3.5) */
85#define __offsetof(type, field) ((size_t)(&((type *)0)->field))
86#endif /* (gcc >= 3.5) */
87
88
89#endif /* _SYS__TYPES_H_ */
lib/libc/include/x86_64-macos-gnu/sys/_types/_clock_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _CLOCK_T
29#define _CLOCK_T
30#include <machine/types.h> /* __darwin_clock_t */
31typedef __darwin_clock_t clock_t;
32#endif /* _CLOCK_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_ct_rune_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _CT_RUNE_T
30#define _CT_RUNE_T
31#include <machine/_types.h> /* __darwin_ct_rune_t */
32typedef __darwin_ct_rune_t ct_rune_t;
33#endif /* _CT_RUNE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_dev_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _DEV_T
29#define _DEV_T
30#include <sys/_types.h> /* __darwin_dev_t */
31typedef __darwin_dev_t dev_t; /* device number */
32#endif /* _DEV_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_errno_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _ERRNO_T
29#define _ERRNO_T
30typedef int errno_t;
31#endif /* _ERRNO_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_id_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _ID_T
29#define _ID_T
30#include <sys/_types.h> /* __darwin_id_t */
31typedef __darwin_id_t id_t; /* can hold pid_t, gid_t, or uid_t */
32#endif /* _ID_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_int16_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _INT16_T
29#define _INT16_T
30typedef short int16_t;
31#endif /* _INT16_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_int32_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _INT32_T
29#define _INT32_T
30typedef int int32_t;
31#endif /* _INT32_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_int64_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _INT64_T
29#define _INT64_T
30typedef long long int64_t;
31#endif /* _INT64_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_int8_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _INT8_T
29#define _INT8_T
30typedef __signed char int8_t;
31#endif /* _INT8_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_intptr_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _INTPTR_T
29#define _INTPTR_T
30#include <machine/types.h> /* __darwin_intptr_t */
31
32typedef __darwin_intptr_t intptr_t;
33#endif /* _INTPTR_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_mbstate_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _MBSTATE_T
30#define _MBSTATE_T
31#include <machine/types.h> /* __darwin_mbstate_t */
32typedef __darwin_mbstate_t mbstate_t;
33#endif /* _MBSTATE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_mode_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _MODE_T
29#define _MODE_T
30#include <sys/_types.h> /* __darwin_mode_t */
31typedef __darwin_mode_t mode_t;
32#endif /* _MODE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_null.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef NULL
29#include <sys/_types.h> /* __DARWIN_NULL */
30#define NULL __DARWIN_NULL
31#endif /* NULL */
lib/libc/include/x86_64-macos-gnu/sys/_types/_off_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _OFF_T
29#define _OFF_T
30#include <sys/_types.h> /* __darwin_off_t */
31typedef __darwin_off_t off_t;
32#endif /* _OFF_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_pid_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _PID_T
29#define _PID_T
30#include <sys/_types.h> /* __darwin_pid_t */
31typedef __darwin_pid_t pid_t;
32#endif /* _PID_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_rsize_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _RSIZE_T
29#define _RSIZE_T
30#include <machine/types.h> /* __darwin_size_t */
31typedef __darwin_size_t rsize_t;
32#endif /* _RSIZE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_rune_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _RUNE_T
29#define _RUNE_T
30#include <machine/_types.h> /* __darwin_rune_t */
31typedef __darwin_rune_t rune_t;
32#endif /* _RUNE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_sigaltstack.h created+50
......@@ -0,0 +1,50 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29/* Structure used in sigaltstack call. */
30#ifndef _STRUCT_SIGALTSTACK
31
32#include <sys/cdefs.h> /* __DARWIN_UNIX03 */
33
34#if __DARWIN_UNIX03
35#define _STRUCT_SIGALTSTACK struct __darwin_sigaltstack
36#else /* !__DARWIN_UNIX03 */
37#define _STRUCT_SIGALTSTACK struct sigaltstack
38#endif /* __DARWIN_UNIX03 */
39
40#include <machine/types.h> /* __darwin_size_t */
41
42_STRUCT_SIGALTSTACK
43{
44 void *ss_sp; /* signal stack base */
45 __darwin_size_t ss_size; /* signal stack length */
46 int ss_flags; /* SA_DISABLE and/or SA_ONSTACK */
47};
48typedef _STRUCT_SIGALTSTACK stack_t; /* [???] signal stack */
49
50#endif /* _STRUCT_SIGALTSTACK */
lib/libc/include/x86_64-macos-gnu/sys/_types/_sigset_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _SIGSET_T
29#define _SIGSET_T
30#include <sys/_types.h> /* __darwin_sigset_t */
31typedef __darwin_sigset_t sigset_t;
32#endif /* _SIGSET_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_size_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _SIZE_T
29#define _SIZE_T
30#include <machine/_types.h> /* __darwin_size_t */
31typedef __darwin_size_t size_t;
32#endif /* _SIZE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_ssize_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _SSIZE_T
29#define _SSIZE_T
30#include <machine/types.h> /* __darwin_ssize_t */
31typedef __darwin_ssize_t ssize_t;
32#endif /* _SSIZE_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_time_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _TIME_T
29#define _TIME_T
30#include <machine/types.h> /* __darwin_time_t */
31typedef __darwin_time_t time_t;
32#endif /* _TIME_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_timespec.h created+38
......@@ -0,0 +1,38 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _STRUCT_TIMESPEC
29#define _STRUCT_TIMESPEC struct timespec
30
31#include <machine/types.h> /* __darwin_time_t */
32
33_STRUCT_TIMESPEC
34{
35 __darwin_time_t tv_sec;
36 long tv_nsec;
37};
38#endif /* _STRUCT_TIMESPEC */
lib/libc/include/x86_64-macos-gnu/sys/_types/_timeval.h created+39
......@@ -0,0 +1,39 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _STRUCT_TIMEVAL
29#define _STRUCT_TIMEVAL struct timeval
30
31#include <machine/types.h> /* __darwin_time_t */
32#include <sys/_types.h> /* __darwin_suseconds_t */
33
34_STRUCT_TIMEVAL
35{
36 __darwin_time_t tv_sec; /* seconds */
37 __darwin_suseconds_t tv_usec; /* and microseconds */
38};
39#endif /* _STRUCT_TIMEVAL */
lib/libc/include/x86_64-macos-gnu/sys/_types/_u_int16_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _U_INT16_T
29#define _U_INT16_T
30typedef unsigned short u_int16_t;
31#endif /* _U_INT16_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_u_int32_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _U_INT32_T
29#define _U_INT32_T
30typedef unsigned int u_int32_t;
31#endif /* _U_INT32_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_u_int64_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _U_INT64_T
29#define _U_INT64_T
30typedef unsigned long long u_int64_t;
31#endif /* _U_INT64_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_u_int8_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2016 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _U_INT8_T
29#define _U_INT8_T
30typedef unsigned char u_int8_t;
31#endif /* _U_INT8_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_ucontext.h created+58
......@@ -0,0 +1,58 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _STRUCT_UCONTEXT
29
30#include <sys/cdefs.h> /* __DARWIN_UNIX03 */
31
32#if __DARWIN_UNIX03
33#define _STRUCT_UCONTEXT struct __darwin_ucontext
34#else /* !__DARWIN_UNIX03 */
35#define _STRUCT_UCONTEXT struct ucontext
36#endif /* __DARWIN_UNIX03 */
37
38#include <machine/types.h> /* __darwin_size_t */
39#include <machine/_mcontext.h> /* _STRUCT_MCONTEXT */
40#include <sys/_types.h> /* __darwin_sigset_t */
41
42_STRUCT_UCONTEXT
43{
44 int uc_onstack;
45 __darwin_sigset_t uc_sigmask; /* signal mask used by this context */
46 _STRUCT_SIGALTSTACK uc_stack; /* stack used by this context */
47 _STRUCT_UCONTEXT *uc_link; /* pointer to resuming context */
48 __darwin_size_t uc_mcsize; /* size of the machine context passed in */
49 _STRUCT_MCONTEXT *uc_mcontext; /* pointer to machine specific context */
50#ifdef _XOPEN_SOURCE
51 _STRUCT_MCONTEXT __mcontext_data;
52#endif /* _XOPEN_SOURCE */
53};
54
55/* user context */
56typedef _STRUCT_UCONTEXT ucontext_t; /* [???] user context */
57
58#endif /* _STRUCT_UCONTEXT */
lib/libc/include/x86_64-macos-gnu/sys/_types/_uid_t.h created+32
......@@ -0,0 +1,32 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _UID_T
29#define _UID_T
30#include <sys/_types.h> /* __darwin_uid_t */
31typedef __darwin_uid_t uid_t;
32#endif /* _UID_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_uintptr_t.h created+31
......@@ -0,0 +1,31 @@
1/*
2 * Copyright (c) 2003-2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28#ifndef _UINTPTR_T
29#define _UINTPTR_T
30typedef unsigned long uintptr_t;
31#endif /* _UINTPTR_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_va_list.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _VA_LIST_T
30#define _VA_LIST_T
31#include <machine/types.h> /* __darwin_va_list */
32typedef __darwin_va_list va_list;
33#endif /* _VA_LIST_T */
lib/libc/include/x86_64-macos-gnu/sys/_types/_wchar_t.h created+36
......@@ -0,0 +1,36 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29/* wchar_t is a built-in type in C++ */
30#ifndef __cplusplus
31#ifndef _WCHAR_T
32#define _WCHAR_T
33#include <machine/_types.h> /* __darwin_wchar_t */
34typedef __darwin_wchar_t wchar_t;
35#endif /* _WCHAR_T */
36#endif /* __cplusplus */
lib/libc/include/x86_64-macos-gnu/sys/_types/_wint_t.h created+33
......@@ -0,0 +1,33 @@
1/*
2 * Copyright (c) 2012 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _WINT_T
30#define _WINT_T
31#include <machine/_types.h> /* __darwin_wint_t */
32typedef __darwin_wint_t wint_t;
33#endif /* _WINT_T */
lib/libc/include/x86_64-macos-gnu/sys/appleapiopts.h created+61
......@@ -0,0 +1,61 @@
1/*
2 * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef __SYS_APPLEAPIOPTS_H__
30#define __SYS_APPLEAPIOPTS_H__
31
32
33#ifndef __APPLE_API_STANDARD
34#define __APPLE_API_STANDARD
35#endif /* __APPLE_API_STANDARD */
36
37#ifndef __APPLE_API_STABLE
38#define __APPLE_API_STABLE
39#endif /* __APPLE_API_STABLE */
40
41#ifndef __APPLE_API_STRICT_CONFORMANCE
42
43#ifndef __APPLE_API_EVOLVING
44#define __APPLE_API_EVOLVING
45#endif /* __APPLE_API_EVOLVING */
46
47#ifndef __APPLE_API_UNSTABLE
48#define __APPLE_API_UNSTABLE
49#endif /* __APPLE_API_UNSTABLE */
50
51#ifndef __APPLE_API_PRIVATE
52#define __APPLE_API_PRIVATE
53#endif /* __APPLE_API_PRIVATE */
54
55#ifndef __APPLE_API_OBSOLETE
56#define __APPLE_API_OBSOLETE
57#endif /* __APPLE_API_OBSOLETE */
58
59#endif /* __APPLE_API_STRICT_CONFORMANCE */
60
61#endif /* __SYS_APPLEAPIOPTS_H__ */
lib/libc/include/x86_64-macos-gnu/sys/cdefs.h created+855
......@@ -0,0 +1,855 @@
1/*
2 * Copyright (c) 2000-2018 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* Copyright 1995 NeXT Computer, Inc. All rights reserved. */
29/*
30 * Copyright (c) 1991, 1993
31 * The Regents of the University of California. All rights reserved.
32 *
33 * This code is derived from software contributed to Berkeley by
34 * Berkeley Software Design, Inc.
35 *
36 * Redistribution and use in source and binary forms, with or without
37 * modification, are permitted provided that the following conditions
38 * are met:
39 * 1. Redistributions of source code must retain the above copyright
40 * notice, this list of conditions and the following disclaimer.
41 * 2. Redistributions in binary form must reproduce the above copyright
42 * notice, this list of conditions and the following disclaimer in the
43 * documentation and/or other materials provided with the distribution.
44 * 3. All advertising materials mentioning features or use of this software
45 * must display the following acknowledgement:
46 * This product includes software developed by the University of
47 * California, Berkeley and its contributors.
48 * 4. Neither the name of the University nor the names of its contributors
49 * may be used to endorse or promote products derived from this software
50 * without specific prior written permission.
51 *
52 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
53 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
54 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
55 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
56 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
57 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
58 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
59 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
60 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
61 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
62 * SUCH DAMAGE.
63 *
64 * @(#)cdefs.h 8.8 (Berkeley) 1/9/95
65 */
66
67#ifndef _CDEFS_H_
68#define _CDEFS_H_
69
70#if defined(__cplusplus)
71#define __BEGIN_DECLS extern "C" {
72#define __END_DECLS }
73#else
74#define __BEGIN_DECLS
75#define __END_DECLS
76#endif
77
78/* This SDK is designed to work with clang and specific versions of
79 * gcc >= 4.0 with Apple's patch sets */
80#if !defined(__GNUC__) || __GNUC__ < 4
81#warning "Unsupported compiler detected"
82#endif
83
84/*
85 * Compatibility with compilers and environments that don't support compiler
86 * feature checking function-like macros.
87 */
88#ifndef __has_builtin
89#define __has_builtin(x) 0
90#endif
91#ifndef __has_include
92#define __has_include(x) 0
93#endif
94#ifndef __has_feature
95#define __has_feature(x) 0
96#endif
97#ifndef __has_attribute
98#define __has_attribute(x) 0
99#endif
100#ifndef __has_extension
101#define __has_extension(x) 0
102#endif
103
104/*
105 * The __CONCAT macro is used to concatenate parts of symbol names, e.g.
106 * with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
107 * The __CONCAT macro is a bit tricky -- make sure you don't put spaces
108 * in between its arguments. __CONCAT can also concatenate double-quoted
109 * strings produced by the __STRING macro, but this only works with ANSI C.
110 */
111#if defined(__STDC__) || defined(__cplusplus)
112#define __P(protos) protos /* full-blown ANSI C */
113#define __CONCAT(x, y) x ## y
114#define __STRING(x) #x
115
116#define __const const /* define reserved names to standard */
117#define __signed signed
118#define __volatile volatile
119#if defined(__cplusplus)
120#define __inline inline /* convert to C++ keyword */
121#else
122#ifndef __GNUC__
123#define __inline /* delete GCC keyword */
124#endif /* !__GNUC__ */
125#endif /* !__cplusplus */
126
127#else /* !(__STDC__ || __cplusplus) */
128#define __P(protos) () /* traditional C preprocessor */
129#define __CONCAT(x, y) x /**/ y
130#define __STRING(x) "x"
131
132#ifndef __GNUC__
133#define __const /* delete pseudo-ANSI C keywords */
134#define __inline
135#define __signed
136#define __volatile
137#endif /* !__GNUC__ */
138
139/*
140 * In non-ANSI C environments, new programs will want ANSI-only C keywords
141 * deleted from the program and old programs will want them left alone.
142 * When using a compiler other than gcc, programs using the ANSI C keywords
143 * const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
144 * When using "gcc -traditional", we assume that this is the intent; if
145 * __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
146 */
147#ifndef NO_ANSI_KEYWORDS
148#define const __const /* convert ANSI C keywords */
149#define inline __inline
150#define signed __signed
151#define volatile __volatile
152#endif /* !NO_ANSI_KEYWORDS */
153#endif /* !(__STDC__ || __cplusplus) */
154
155#define __dead2 __attribute__((__noreturn__))
156#define __pure2 __attribute__((__const__))
157
158/* __unused denotes variables and functions that may not be used, preventing
159 * the compiler from warning about it if not used.
160 */
161#define __unused __attribute__((__unused__))
162
163/* __used forces variables and functions to be included even if it appears
164 * to the compiler that they are not used (and would thust be discarded).
165 */
166#define __used __attribute__((__used__))
167
168/* __cold marks code used for debugging or that is rarely taken
169 * and tells the compiler to optimize for size and outline code.
170 */
171#if __has_attribute(cold)
172#define __cold __attribute__((__cold__))
173#else
174#define __cold
175#endif
176
177/* __deprecated causes the compiler to produce a warning when encountering
178 * code using the deprecated functionality.
179 * __deprecated_msg() does the same, and compilers that support it will print
180 * a message along with the deprecation warning.
181 * This may require turning on such warning with the -Wdeprecated flag.
182 * __deprecated_enum_msg() should be used on enums, and compilers that support
183 * it will print the deprecation warning.
184 * __kpi_deprecated() specifically indicates deprecation of kernel programming
185 * interfaces in Kernel.framework used by KEXTs.
186 */
187#define __deprecated __attribute__((__deprecated__))
188
189#if __has_extension(attribute_deprecated_with_message) || \
190 (defined(__GNUC__) && ((__GNUC__ >= 5) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 5))))
191 #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
192#else
193 #define __deprecated_msg(_msg) __attribute__((__deprecated__))
194#endif
195
196#if __has_extension(enumerator_attributes)
197 #define __deprecated_enum_msg(_msg) __deprecated_msg(_msg)
198#else
199 #define __deprecated_enum_msg(_msg)
200#endif
201
202#define __kpi_deprecated(_msg)
203
204/* __unavailable causes the compiler to error out when encountering
205 * code using the tagged function of variable.
206 */
207#define __unavailable __attribute__((__unavailable__))
208
209/* Delete pseudo-keywords wherever they are not available or needed. */
210#ifndef __dead
211#define __dead
212#define __pure
213#endif
214
215/*
216 * We use `__restrict' as a way to define the `restrict' type qualifier
217 * without disturbing older software that is unaware of C99 keywords.
218 */
219#if __STDC_VERSION__ < 199901
220#define __restrict
221#else
222#define __restrict restrict
223#endif
224
225/* Compatibility with compilers and environments that don't support the
226 * nullability feature.
227 */
228
229#if !__has_feature(nullability)
230#ifndef __nullable
231#define __nullable
232#endif
233#ifndef __nonnull
234#define __nonnull
235#endif
236#ifndef __null_unspecified
237#define __null_unspecified
238#endif
239#ifndef _Nullable
240#define _Nullable
241#endif
242#ifndef _Nonnull
243#define _Nonnull
244#endif
245#ifndef _Null_unspecified
246#define _Null_unspecified
247#endif
248#endif
249
250/*
251 * __disable_tail_calls causes the compiler to not perform tail call
252 * optimization inside the marked function.
253 */
254#if __has_attribute(disable_tail_calls)
255#define __disable_tail_calls __attribute__((__disable_tail_calls__))
256#else
257#define __disable_tail_calls
258#endif
259
260/*
261 * __not_tail_called causes the compiler to prevent tail call optimization
262 * on statically bound calls to the function. It has no effect on indirect
263 * calls. Virtual functions, objective-c methods, and functions marked as
264 * "always_inline" cannot be marked as __not_tail_called.
265 */
266#if __has_attribute(not_tail_called)
267#define __not_tail_called __attribute__((__not_tail_called__))
268#else
269#define __not_tail_called
270#endif
271
272/*
273 * __result_use_check warns callers of a function that not using the function
274 * return value is a bug, i.e. dismissing malloc() return value results in a
275 * memory leak.
276 */
277#if __has_attribute(warn_unused_result)
278#define __result_use_check __attribute__((__warn_unused_result__))
279#else
280#define __result_use_check
281#endif
282
283/*
284 * __swift_unavailable causes the compiler to mark a symbol as specifically
285 * unavailable in Swift, regardless of any other availability in C.
286 */
287#if __has_feature(attribute_availability_swift)
288#define __swift_unavailable(_msg) __attribute__((__availability__(swift, unavailable, message=_msg)))
289#else
290#define __swift_unavailable(_msg)
291#endif
292
293/*
294 * __abortlike is the attribute to put on functions like abort() that are
295 * typically used to mark assertions. These optimize the codegen
296 * for outlining while still maintaining debugability.
297 */
298#ifndef __abortlike
299#define __abortlike __dead2 __cold __not_tail_called
300#endif
301
302/* Declaring inline functions within headers is error-prone due to differences
303 * across various versions of the C language and extensions. __header_inline
304 * can be used to declare inline functions within system headers. In cases
305 * where you want to force inlining instead of letting the compiler make
306 * the decision, you can use __header_always_inline.
307 *
308 * Be aware that using inline for functions which compilers may also provide
309 * builtins can behave differently under various compilers. If you intend to
310 * provide an inline version of such a function, you may want to use a macro
311 * instead.
312 *
313 * The check for !__GNUC__ || __clang__ is because gcc doesn't correctly
314 * support c99 inline in some cases:
315 * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55965
316 */
317
318#if defined(__cplusplus) || \
319 (__STDC_VERSION__ >= 199901L && \
320 !defined(__GNUC_GNU_INLINE__) && \
321 (!defined(__GNUC__) || defined(__clang__)))
322# define __header_inline inline
323#elif defined(__GNUC__) && defined(__GNUC_STDC_INLINE__)
324# define __header_inline extern __inline __attribute__((__gnu_inline__))
325#elif defined(__GNUC__)
326# define __header_inline extern __inline
327#else
328/* If we land here, we've encountered an unsupported compiler,
329 * so hopefully it understands static __inline as a fallback.
330 */
331# define __header_inline static __inline
332#endif
333
334#ifdef __GNUC__
335# define __header_always_inline __header_inline __attribute__ ((__always_inline__))
336#else
337/* Unfortunately, we're using a compiler that we don't know how to force to
338 * inline. Oh well.
339 */
340# define __header_always_inline __header_inline
341#endif
342
343/*
344 * Compiler-dependent macros that bracket portions of code where the
345 * "-Wunreachable-code" warning should be ignored. Please use sparingly.
346 */
347#if defined(__clang__)
348# define __unreachable_ok_push \
349 _Pragma("clang diagnostic push") \
350 _Pragma("clang diagnostic ignored \"-Wunreachable-code\"")
351# define __unreachable_ok_pop \
352 _Pragma("clang diagnostic pop")
353#elif defined(__GNUC__) && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
354# define __unreachable_ok_push \
355 _Pragma("GCC diagnostic push") \
356 _Pragma("GCC diagnostic ignored \"-Wunreachable-code\"")
357# define __unreachable_ok_pop \
358 _Pragma("GCC diagnostic pop")
359#else
360# define __unreachable_ok_push
361# define __unreachable_ok_pop
362#endif
363
364/*
365 * Compiler-dependent macros to declare that functions take printf-like
366 * or scanf-like arguments. They are null except for versions of gcc
367 * that are known to support the features properly. Functions declared
368 * with these attributes will cause compilation warnings if there is a
369 * mismatch between the format string and subsequent function parameter
370 * types.
371 */
372#define __printflike(fmtarg, firstvararg) \
373 __attribute__((__format__ (__printf__, fmtarg, firstvararg)))
374#define __printf0like(fmtarg, firstvararg) \
375 __attribute__((__format__ (__printf0__, fmtarg, firstvararg)))
376#define __scanflike(fmtarg, firstvararg) \
377 __attribute__((__format__ (__scanf__, fmtarg, firstvararg)))
378
379#define __IDSTRING(name, string) static const char name[] __used = string
380
381#ifndef __COPYRIGHT
382#define __COPYRIGHT(s) __IDSTRING(copyright,s)
383#endif
384
385#ifndef __RCSID
386#define __RCSID(s) __IDSTRING(rcsid,s)
387#endif
388
389#ifndef __SCCSID
390#define __SCCSID(s) __IDSTRING(sccsid,s)
391#endif
392
393#ifndef __PROJECT_VERSION
394#define __PROJECT_VERSION(s) __IDSTRING(project_version,s)
395#endif
396
397/* Source compatibility only, ID string not emitted in object file */
398#ifndef __FBSDID
399#define __FBSDID(s)
400#endif
401
402#ifndef __DECONST
403#define __DECONST(type, var) __CAST_AWAY_QUALIFIER(var, const, type)
404#endif
405
406#ifndef __DEVOLATILE
407#define __DEVOLATILE(type, var) __CAST_AWAY_QUALIFIER(var, volatile, type)
408#endif
409
410#ifndef __DEQUALIFY
411#define __DEQUALIFY(type, var) __CAST_AWAY_QUALIFIER(var, const volatile, type)
412#endif
413
414/*
415 * __alloc_size can be used to label function arguments that represent the
416 * size of memory that the function allocates and returns. The one-argument
417 * form labels a single argument that gives the allocation size (where the
418 * arguments are numbered from 1):
419 *
420 * void *malloc(size_t __size) __alloc_size(1);
421 *
422 * The two-argument form handles the case where the size is calculated as the
423 * product of two arguments:
424 *
425 * void *calloc(size_t __count, size_t __size) __alloc_size(1,2);
426 */
427#ifndef __alloc_size
428#if __has_attribute(alloc_size)
429#define __alloc_size(...) __attribute__((alloc_size(__VA_ARGS__)))
430#else
431#define __alloc_size(...)
432#endif
433#endif // __alloc_size
434
435/*
436 * COMPILATION ENVIRONMENTS -- see compat(5) for additional detail
437 *
438 * DEFAULT By default newly complied code will get POSIX APIs plus
439 * Apple API extensions in scope.
440 *
441 * Most users will use this compilation environment to avoid
442 * behavioral differences between 32 and 64 bit code.
443 *
444 * LEGACY Defining _NONSTD_SOURCE will get pre-POSIX APIs plus Apple
445 * API extensions in scope.
446 *
447 * This is generally equivalent to the Tiger release compilation
448 * environment, except that it cannot be applied to 64 bit code;
449 * its use is discouraged.
450 *
451 * We expect this environment to be deprecated in the future.
452 *
453 * STRICT Defining _POSIX_C_SOURCE or _XOPEN_SOURCE restricts the
454 * available APIs to exactly the set of APIs defined by the
455 * corresponding standard, based on the value defined.
456 *
457 * A correct, portable definition for _POSIX_C_SOURCE is 200112L.
458 * A correct, portable definition for _XOPEN_SOURCE is 600L.
459 *
460 * Apple API extensions are not visible in this environment,
461 * which can cause Apple specific code to fail to compile,
462 * or behave incorrectly if prototypes are not in scope or
463 * warnings about missing prototypes are not enabled or ignored.
464 *
465 * In any compilation environment, for correct symbol resolution to occur,
466 * function prototypes must be in scope. It is recommended that all Apple
467 * tools users add either the "-Wall" or "-Wimplicit-function-declaration"
468 * compiler flags to their projects to be warned when a function is being
469 * used without a prototype in scope.
470 */
471
472/* These settings are particular to each product. */
473/* Platform: MacOSX */
474#define __DARWIN_ONLY_64_BIT_INO_T 0
475/* #undef __DARWIN_ONLY_UNIX_CONFORMANCE (automatically set for 64-bit) */
476#define __DARWIN_ONLY_VERS_1050 0
477
478/*
479 * The __DARWIN_ALIAS macros are used to do symbol renaming; they allow
480 * legacy code to use the old symbol, thus maintaining binary compatibility
481 * while new code can use a standards compliant version of the same function.
482 *
483 * __DARWIN_ALIAS is used by itself if the function signature has not
484 * changed, it is used along with a #ifdef check for __DARWIN_UNIX03
485 * if the signature has changed. Because the __LP64__ environment
486 * only supports UNIX03 semantics it causes __DARWIN_UNIX03 to be
487 * defined, but causes __DARWIN_ALIAS to do no symbol mangling.
488 *
489 * As a special case, when XCode is used to target a specific version of the
490 * OS, the manifest constant __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
491 * will be defined by the compiler, with the digits representing major version
492 * time 100 + minor version times 10 (e.g. 10.5 := 1050). If we are targeting
493 * pre-10.5, and it is the default compilation environment, revert the
494 * compilation environment to pre-__DARWIN_UNIX03.
495 */
496#if !defined(__DARWIN_ONLY_UNIX_CONFORMANCE)
497# if defined(__LP64__)
498# define __DARWIN_ONLY_UNIX_CONFORMANCE 1
499# else /* !__LP64__ */
500# define __DARWIN_ONLY_UNIX_CONFORMANCE 0
501# endif /* __LP64__ */
502#endif /* !__DARWIN_ONLY_UNIX_CONFORMANCE */
503
504#if !defined(__DARWIN_UNIX03)
505# if __DARWIN_ONLY_UNIX_CONFORMANCE
506# if defined(_NONSTD_SOURCE)
507# error "Can't define _NONSTD_SOURCE when only UNIX conformance is available."
508# endif /* _NONSTD_SOURCE */
509# define __DARWIN_UNIX03 1
510# elif defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ - 0) < 1040)
511# define __DARWIN_UNIX03 0
512# elif defined(_DARWIN_C_SOURCE) || defined(_XOPEN_SOURCE) || defined(_POSIX_C_SOURCE)
513# if defined(_NONSTD_SOURCE)
514# error "Can't define both _NONSTD_SOURCE and any of _DARWIN_C_SOURCE, _XOPEN_SOURCE or _POSIX_C_SOURCE."
515# endif /* _NONSTD_SOURCE */
516# define __DARWIN_UNIX03 1
517# elif defined(_NONSTD_SOURCE)
518# define __DARWIN_UNIX03 0
519# else /* default */
520# if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ - 0) < 1050)
521# define __DARWIN_UNIX03 0
522# else /* __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050 */
523# define __DARWIN_UNIX03 1
524# endif /* __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050 */
525# endif /* _DARWIN_C_SOURCE || _XOPEN_SOURCE || _POSIX_C_SOURCE || __LP64__ */
526#endif /* !__DARWIN_UNIX03 */
527
528#if !defined(__DARWIN_64_BIT_INO_T)
529# if defined(_DARWIN_USE_64_BIT_INODE)
530# if defined(_DARWIN_NO_64_BIT_INODE)
531# error "Can't define both _DARWIN_USE_64_BIT_INODE and _DARWIN_NO_64_BIT_INODE."
532# endif /* _DARWIN_NO_64_BIT_INODE */
533# define __DARWIN_64_BIT_INO_T 1
534# elif defined(_DARWIN_NO_64_BIT_INODE)
535# if __DARWIN_ONLY_64_BIT_INO_T
536# error "Can't define _DARWIN_NO_64_BIT_INODE when only 64-bit inodes are available."
537# endif /* __DARWIN_ONLY_64_BIT_INO_T */
538# define __DARWIN_64_BIT_INO_T 0
539# else /* default */
540# if __DARWIN_ONLY_64_BIT_INO_T
541# define __DARWIN_64_BIT_INO_T 1
542# elif defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ - 0) < 1060) || __DARWIN_UNIX03 == 0
543# define __DARWIN_64_BIT_INO_T 0
544# else /* default */
545# define __DARWIN_64_BIT_INO_T 1
546# endif /* __DARWIN_ONLY_64_BIT_INO_T */
547# endif
548#endif /* !__DARWIN_64_BIT_INO_T */
549
550#if !defined(__DARWIN_VERS_1050)
551# if __DARWIN_ONLY_VERS_1050
552# define __DARWIN_VERS_1050 1
553# elif defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && ((__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ - 0) < 1050) || __DARWIN_UNIX03 == 0
554# define __DARWIN_VERS_1050 0
555# else /* default */
556# define __DARWIN_VERS_1050 1
557# endif
558#endif /* !__DARWIN_VERS_1050 */
559
560#if !defined(__DARWIN_NON_CANCELABLE)
561# define __DARWIN_NON_CANCELABLE 0
562#endif /* !__DARWIN_NON_CANCELABLE */
563
564/*
565 * symbol suffixes used for symbol versioning
566 */
567#if __DARWIN_UNIX03
568# if __DARWIN_ONLY_UNIX_CONFORMANCE
569# define __DARWIN_SUF_UNIX03 /* nothing */
570# else /* !__DARWIN_ONLY_UNIX_CONFORMANCE */
571# define __DARWIN_SUF_UNIX03 "$UNIX2003"
572# endif /* __DARWIN_ONLY_UNIX_CONFORMANCE */
573
574# if __DARWIN_64_BIT_INO_T
575# if __DARWIN_ONLY_64_BIT_INO_T
576# define __DARWIN_SUF_64_BIT_INO_T /* nothing */
577# else /* !__DARWIN_ONLY_64_BIT_INO_T */
578# define __DARWIN_SUF_64_BIT_INO_T "$INODE64"
579# endif /* __DARWIN_ONLY_64_BIT_INO_T */
580# else /* !__DARWIN_64_BIT_INO_T */
581# define __DARWIN_SUF_64_BIT_INO_T /* nothing */
582# endif /* __DARWIN_64_BIT_INO_T */
583
584# if __DARWIN_VERS_1050
585# if __DARWIN_ONLY_VERS_1050
586# define __DARWIN_SUF_1050 /* nothing */
587# else /* !__DARWIN_ONLY_VERS_1050 */
588# define __DARWIN_SUF_1050 "$1050"
589# endif /* __DARWIN_ONLY_VERS_1050 */
590# else /* !__DARWIN_VERS_1050 */
591# define __DARWIN_SUF_1050 /* nothing */
592# endif /* __DARWIN_VERS_1050 */
593
594# if __DARWIN_NON_CANCELABLE
595# define __DARWIN_SUF_NON_CANCELABLE "$NOCANCEL"
596# else /* !__DARWIN_NON_CANCELABLE */
597# define __DARWIN_SUF_NON_CANCELABLE /* nothing */
598# endif /* __DARWIN_NON_CANCELABLE */
599
600#else /* !__DARWIN_UNIX03 */
601# define __DARWIN_SUF_UNIX03 /* nothing */
602# define __DARWIN_SUF_64_BIT_INO_T /* nothing */
603# define __DARWIN_SUF_NON_CANCELABLE /* nothing */
604# define __DARWIN_SUF_1050 /* nothing */
605#endif /* __DARWIN_UNIX03 */
606
607#define __DARWIN_SUF_EXTSN "$DARWIN_EXTSN"
608
609/*
610 * symbol versioning macros
611 */
612#define __DARWIN_ALIAS(sym) __asm("_" __STRING(sym) __DARWIN_SUF_UNIX03)
613#define __DARWIN_ALIAS_C(sym) __asm("_" __STRING(sym) __DARWIN_SUF_NON_CANCELABLE __DARWIN_SUF_UNIX03)
614#define __DARWIN_ALIAS_I(sym) __asm("_" __STRING(sym) __DARWIN_SUF_64_BIT_INO_T __DARWIN_SUF_UNIX03)
615#define __DARWIN_NOCANCEL(sym) __asm("_" __STRING(sym) __DARWIN_SUF_NON_CANCELABLE)
616#define __DARWIN_INODE64(sym) __asm("_" __STRING(sym) __DARWIN_SUF_64_BIT_INO_T)
617
618#define __DARWIN_1050(sym) __asm("_" __STRING(sym) __DARWIN_SUF_1050)
619#define __DARWIN_1050ALIAS(sym) __asm("_" __STRING(sym) __DARWIN_SUF_1050 __DARWIN_SUF_UNIX03)
620#define __DARWIN_1050ALIAS_C(sym) __asm("_" __STRING(sym) __DARWIN_SUF_1050 __DARWIN_SUF_NON_CANCELABLE __DARWIN_SUF_UNIX03)
621#define __DARWIN_1050ALIAS_I(sym) __asm("_" __STRING(sym) __DARWIN_SUF_1050 __DARWIN_SUF_64_BIT_INO_T __DARWIN_SUF_UNIX03)
622#define __DARWIN_1050INODE64(sym) __asm("_" __STRING(sym) __DARWIN_SUF_1050 __DARWIN_SUF_64_BIT_INO_T)
623
624#define __DARWIN_EXTSN(sym) __asm("_" __STRING(sym) __DARWIN_SUF_EXTSN)
625#define __DARWIN_EXTSN_C(sym) __asm("_" __STRING(sym) __DARWIN_SUF_EXTSN __DARWIN_SUF_NON_CANCELABLE)
626
627/*
628 * symbol release macros
629 */
630#include <sys/_symbol_aliasing.h>
631
632#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__)
633#define __DARWIN_ALIAS_STARTING(_mac, _iphone, x) __DARWIN_ALIAS_STARTING_IPHONE_##_iphone(x)
634#elif defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__)
635#define __DARWIN_ALIAS_STARTING(_mac, _iphone, x) __DARWIN_ALIAS_STARTING_MAC_##_mac(x)
636#else
637#define __DARWIN_ALIAS_STARTING(_mac, _iphone, x) x
638#endif
639
640
641/*
642 * POSIX.1 requires that the macros we test be defined before any standard
643 * header file is included. This permits us to convert values for feature
644 * testing, as necessary, using only _POSIX_C_SOURCE.
645 *
646 * Here's a quick run-down of the versions:
647 * defined(_POSIX_SOURCE) 1003.1-1988
648 * _POSIX_C_SOURCE == 1L 1003.1-1990
649 * _POSIX_C_SOURCE == 2L 1003.2-1992 C Language Binding Option
650 * _POSIX_C_SOURCE == 199309L 1003.1b-1993
651 * _POSIX_C_SOURCE == 199506L 1003.1c-1995, 1003.1i-1995,
652 * and the omnibus ISO/IEC 9945-1: 1996
653 * _POSIX_C_SOURCE == 200112L 1003.1-2001
654 * _POSIX_C_SOURCE == 200809L 1003.1-2008
655 *
656 * In addition, the X/Open Portability Guide, which is now the Single UNIX
657 * Specification, defines a feature-test macro which indicates the version of
658 * that specification, and which subsumes _POSIX_C_SOURCE.
659 */
660
661/* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1L. */
662#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 1L
663#undef _POSIX_C_SOURCE
664#define _POSIX_C_SOURCE 199009L
665#endif
666
667/* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2L. */
668#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 2L
669#undef _POSIX_C_SOURCE
670#define _POSIX_C_SOURCE 199209L
671#endif
672
673/* Deal with various X/Open Portability Guides and Single UNIX Spec. */
674#ifdef _XOPEN_SOURCE
675#if _XOPEN_SOURCE - 0L >= 700L && (!defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE - 0L < 200809L)
676#undef _POSIX_C_SOURCE
677#define _POSIX_C_SOURCE 200809L
678#elif _XOPEN_SOURCE - 0L >= 600L && (!defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE - 0L < 200112L)
679#undef _POSIX_C_SOURCE
680#define _POSIX_C_SOURCE 200112L
681#elif _XOPEN_SOURCE - 0L >= 500L && (!defined(_POSIX_C_SOURCE) || _POSIX_C_SOURCE - 0L < 199506L)
682#undef _POSIX_C_SOURCE
683#define _POSIX_C_SOURCE 199506L
684#endif
685#endif
686
687/*
688 * Deal with all versions of POSIX. The ordering relative to the tests above is
689 * important.
690 */
691#if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
692#define _POSIX_C_SOURCE 198808L
693#endif
694
695/* POSIX C deprecation macros */
696#include <sys/_posix_availability.h>
697
698#define __POSIX_C_DEPRECATED(ver) ___POSIX_C_DEPRECATED_STARTING_##ver
699
700/*
701 * Set a single macro which will always be defined and can be used to determine
702 * the appropriate namespace. For POSIX, these values will correspond to
703 * _POSIX_C_SOURCE value. Currently there are two additional levels corresponding
704 * to ANSI (_ANSI_SOURCE) and Darwin extensions (_DARWIN_C_SOURCE)
705 */
706#define __DARWIN_C_ANSI 010000L
707#define __DARWIN_C_FULL 900000L
708
709#if defined(_ANSI_SOURCE)
710#define __DARWIN_C_LEVEL __DARWIN_C_ANSI
711#elif defined(_POSIX_C_SOURCE) && !defined(_DARWIN_C_SOURCE) && !defined(_NONSTD_SOURCE)
712#define __DARWIN_C_LEVEL _POSIX_C_SOURCE
713#else
714#define __DARWIN_C_LEVEL __DARWIN_C_FULL
715#endif
716
717/* If the developer has neither requested a strict language mode nor a version
718 * of POSIX, turn on functionality provided by __STDC_WANT_LIB_EXT1__ as part
719 * of __DARWIN_C_FULL.
720 */
721#if !defined(__STDC_WANT_LIB_EXT1__) && !defined(__STRICT_ANSI__) && __DARWIN_C_LEVEL >= __DARWIN_C_FULL
722#define __STDC_WANT_LIB_EXT1__ 1
723#endif
724
725/*
726 * long long is not supported in c89 (__STRICT_ANSI__), but g++ -ansi and
727 * c99 still want long longs. While not perfect, we allow long longs for
728 * g++.
729 */
730#if (defined(__STRICT_ANSI__) && (__STDC_VERSION__ - 0 < 199901L) && !defined(__GNUG__))
731#define __DARWIN_NO_LONG_LONG 1
732#else
733#define __DARWIN_NO_LONG_LONG 0
734#endif
735
736/*****************************************
737* Public darwin-specific feature macros
738*****************************************/
739
740/*
741 * _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
742 * structures modified for 64-bit inodes (like struct stat) will be used.
743 */
744#if __DARWIN_64_BIT_INO_T
745#define _DARWIN_FEATURE_64_BIT_INODE 1
746#endif
747
748/*
749 * _DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only
750 * be 64-bit; there is no support for 32-bit ino_t when this macro is defined
751 * (and non-zero). There is no struct stat64 either, as the regular
752 * struct stat will already be the 64-bit version.
753 */
754#if __DARWIN_ONLY_64_BIT_INO_T
755#define _DARWIN_FEATURE_ONLY_64_BIT_INODE 1
756#endif
757
758/*
759 * _DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated
760 * in 10.5 exists; no pre-10.5 variants are available.
761 */
762#if __DARWIN_ONLY_VERS_1050
763#define _DARWIN_FEATURE_ONLY_VERS_1050 1
764#endif
765
766/*
767 * _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API
768 * are available (the legacy BSD APIs are not available)
769 */
770#if __DARWIN_ONLY_UNIX_CONFORMANCE
771#define _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE 1
772#endif
773
774/*
775 * _DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on,
776 * and specifies the conformance level (3 is SUSv3)
777 */
778#if __DARWIN_UNIX03
779#define _DARWIN_FEATURE_UNIX_CONFORMANCE 3
780#endif
781
782
783/*
784 * This macro casts away the qualifier from the variable
785 *
786 * Note: use at your own risk, removing qualifiers can result in
787 * catastrophic run-time failures.
788 */
789#ifndef __CAST_AWAY_QUALIFIER
790#define __CAST_AWAY_QUALIFIER(variable, qualifier, type) (type) (long)(variable)
791#endif
792
793/*
794 * __XNU_PRIVATE_EXTERN is a linkage decoration indicating that a symbol can be
795 * used from other compilation units, but not other libraries or executables.
796 */
797#ifndef __XNU_PRIVATE_EXTERN
798#define __XNU_PRIVATE_EXTERN __attribute__((visibility("hidden")))
799#endif
800
801/*
802 * Architecture validation for current SDK
803 */
804#if !defined(__sys_cdefs_arch_unknown__) && defined(__i386__)
805#elif !defined(__sys_cdefs_arch_unknown__) && defined(__x86_64__)
806#else
807#error Unsupported architecture
808#endif
809
810
811
812#define __compiler_barrier() __asm__ __volatile__("" ::: "memory")
813
814#if __has_attribute(enum_extensibility)
815#define __enum_open __attribute__((__enum_extensibility__(open)))
816#define __enum_closed __attribute__((__enum_extensibility__(closed)))
817#else
818#define __enum_open
819#define __enum_closed
820#endif // __has_attribute(enum_extensibility)
821
822#if __has_attribute(flag_enum)
823#define __enum_options __attribute__((__flag_enum__))
824#else
825#define __enum_options
826#endif
827
828/*
829 * Similar to OS_ENUM/OS_CLOSED_ENUM/OS_OPTIONS/OS_CLOSED_OPTIONS
830 *
831 * This provides more advanced type checking on compilers supporting
832 * the proper extensions, even in C.
833 */
834#if __has_feature(objc_fixed_enum) || __has_extension(cxx_fixed_enum) || \
835 __has_extension(cxx_strong_enums)
836#define __enum_decl(_name, _type, ...) \
837 typedef enum : _type __VA_ARGS__ __enum_open _name
838#define __enum_closed_decl(_name, _type, ...) \
839 typedef enum : _type __VA_ARGS__ __enum_closed _name
840#define __options_decl(_name, _type, ...) \
841 typedef enum : _type __VA_ARGS__ __enum_open __enum_options _name
842#define __options_closed_decl(_name, _type, ...) \
843 typedef enum : _type __VA_ARGS__ __enum_closed __enum_options _name
844#else
845#define __enum_decl(_name, _type, ...) \
846 typedef _type _name; enum __VA_ARGS__ __enum_open
847#define __enum_closed_decl(_name, _type, ...) \
848 typedef _type _name; enum __VA_ARGS__ __enum_closed
849#define __options_decl(_name, _type, ...) \
850 typedef _type _name; enum __VA_ARGS__ __enum_open __enum_options
851#define __options_closed_decl(_name, _type, ...) \
852 typedef _type _name; enum __VA_ARGS__ __enum_closed __enum_options
853#endif
854
855#endif /* !_CDEFS_H_ */
lib/libc/include/x86_64-macos-gnu/sys/errno.h created+266
......@@ -0,0 +1,266 @@
1/*
2 * Copyright (c) 2000-2012 Apple, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
29/*
30 * Copyright (c) 1982, 1986, 1989, 1993
31 * The Regents of the University of California. All rights reserved.
32 * (c) UNIX System Laboratories, Inc.
33 * All or some portions of this file are derived from material licensed
34 * to the University of California by American Telephone and Telegraph
35 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
36 * the permission of UNIX System Laboratories, Inc.
37 *
38 * Redistribution and use in source and binary forms, with or without
39 * modification, are permitted provided that the following conditions
40 * are met:
41 * 1. Redistributions of source code must retain the above copyright
42 * notice, this list of conditions and the following disclaimer.
43 * 2. Redistributions in binary form must reproduce the above copyright
44 * notice, this list of conditions and the following disclaimer in the
45 * documentation and/or other materials provided with the distribution.
46 * 3. All advertising materials mentioning features or use of this software
47 * must display the following acknowledgement:
48 * This product includes software developed by the University of
49 * California, Berkeley and its contributors.
50 * 4. Neither the name of the University nor the names of its contributors
51 * may be used to endorse or promote products derived from this software
52 * without specific prior written permission.
53 *
54 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
55 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
56 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
57 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
58 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
59 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
60 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
61 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
62 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
63 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
64 * SUCH DAMAGE.
65 *
66 * @(#)errno.h 8.5 (Berkeley) 1/21/94
67 */
68
69#ifndef _SYS_ERRNO_H_
70#define _SYS_ERRNO_H_
71
72#include <sys/cdefs.h>
73
74
75#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1
76#include <sys/_types/_errno_t.h>
77#endif
78
79__BEGIN_DECLS
80extern int * __error(void);
81#define errno (*__error())
82__END_DECLS
83
84/*
85 * Error codes
86 */
87
88#define EPERM 1 /* Operation not permitted */
89#define ENOENT 2 /* No such file or directory */
90#define ESRCH 3 /* No such process */
91#define EINTR 4 /* Interrupted system call */
92#define EIO 5 /* Input/output error */
93#define ENXIO 6 /* Device not configured */
94#define E2BIG 7 /* Argument list too long */
95#define ENOEXEC 8 /* Exec format error */
96#define EBADF 9 /* Bad file descriptor */
97#define ECHILD 10 /* No child processes */
98#define EDEADLK 11 /* Resource deadlock avoided */
99 /* 11 was EAGAIN */
100#define ENOMEM 12 /* Cannot allocate memory */
101#define EACCES 13 /* Permission denied */
102#define EFAULT 14 /* Bad address */
103#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
104#define ENOTBLK 15 /* Block device required */
105#endif
106#define EBUSY 16 /* Device / Resource busy */
107#define EEXIST 17 /* File exists */
108#define EXDEV 18 /* Cross-device link */
109#define ENODEV 19 /* Operation not supported by device */
110#define ENOTDIR 20 /* Not a directory */
111#define EISDIR 21 /* Is a directory */
112#define EINVAL 22 /* Invalid argument */
113#define ENFILE 23 /* Too many open files in system */
114#define EMFILE 24 /* Too many open files */
115#define ENOTTY 25 /* Inappropriate ioctl for device */
116#define ETXTBSY 26 /* Text file busy */
117#define EFBIG 27 /* File too large */
118#define ENOSPC 28 /* No space left on device */
119#define ESPIPE 29 /* Illegal seek */
120#define EROFS 30 /* Read-only file system */
121#define EMLINK 31 /* Too many links */
122#define EPIPE 32 /* Broken pipe */
123
124/* math software */
125#define EDOM 33 /* Numerical argument out of domain */
126#define ERANGE 34 /* Result too large */
127
128/* non-blocking and interrupt i/o */
129#define EAGAIN 35 /* Resource temporarily unavailable */
130#define EWOULDBLOCK EAGAIN /* Operation would block */
131#define EINPROGRESS 36 /* Operation now in progress */
132#define EALREADY 37 /* Operation already in progress */
133
134/* ipc/network software -- argument errors */
135#define ENOTSOCK 38 /* Socket operation on non-socket */
136#define EDESTADDRREQ 39 /* Destination address required */
137#define EMSGSIZE 40 /* Message too long */
138#define EPROTOTYPE 41 /* Protocol wrong type for socket */
139#define ENOPROTOOPT 42 /* Protocol not available */
140#define EPROTONOSUPPORT 43 /* Protocol not supported */
141#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
142#define ESOCKTNOSUPPORT 44 /* Socket type not supported */
143#endif
144#define ENOTSUP 45 /* Operation not supported */
145#if !__DARWIN_UNIX03 && !defined(KERNEL)
146/*
147 * This is the same for binary and source copmpatability, unless compiling
148 * the kernel itself, or compiling __DARWIN_UNIX03; if compiling for the
149 * kernel, the correct value will be returned. If compiling non-POSIX
150 * source, the kernel return value will be converted by a stub in libc, and
151 * if compiling source with __DARWIN_UNIX03, the conversion in libc is not
152 * done, and the caller gets the expected (discrete) value.
153 */
154#define EOPNOTSUPP ENOTSUP /* Operation not supported on socket */
155#endif /* !__DARWIN_UNIX03 && !KERNEL */
156
157#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
158#define EPFNOSUPPORT 46 /* Protocol family not supported */
159#endif
160#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */
161#define EADDRINUSE 48 /* Address already in use */
162#define EADDRNOTAVAIL 49 /* Can't assign requested address */
163
164/* ipc/network software -- operational errors */
165#define ENETDOWN 50 /* Network is down */
166#define ENETUNREACH 51 /* Network is unreachable */
167#define ENETRESET 52 /* Network dropped connection on reset */
168#define ECONNABORTED 53 /* Software caused connection abort */
169#define ECONNRESET 54 /* Connection reset by peer */
170#define ENOBUFS 55 /* No buffer space available */
171#define EISCONN 56 /* Socket is already connected */
172#define ENOTCONN 57 /* Socket is not connected */
173#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
174#define ESHUTDOWN 58 /* Can't send after socket shutdown */
175#define ETOOMANYREFS 59 /* Too many references: can't splice */
176#endif
177#define ETIMEDOUT 60 /* Operation timed out */
178#define ECONNREFUSED 61 /* Connection refused */
179
180#define ELOOP 62 /* Too many levels of symbolic links */
181#define ENAMETOOLONG 63 /* File name too long */
182
183/* should be rearranged */
184#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
185#define EHOSTDOWN 64 /* Host is down */
186#endif
187#define EHOSTUNREACH 65 /* No route to host */
188#define ENOTEMPTY 66 /* Directory not empty */
189
190/* quotas & mush */
191#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
192#define EPROCLIM 67 /* Too many processes */
193#define EUSERS 68 /* Too many users */
194#endif
195#define EDQUOT 69 /* Disc quota exceeded */
196
197/* Network File System */
198#define ESTALE 70 /* Stale NFS file handle */
199#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
200#define EREMOTE 71 /* Too many levels of remote in path */
201#define EBADRPC 72 /* RPC struct is bad */
202#define ERPCMISMATCH 73 /* RPC version wrong */
203#define EPROGUNAVAIL 74 /* RPC prog. not avail */
204#define EPROGMISMATCH 75 /* Program version wrong */
205#define EPROCUNAVAIL 76 /* Bad procedure for program */
206#endif
207
208#define ENOLCK 77 /* No locks available */
209#define ENOSYS 78 /* Function not implemented */
210
211#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
212#define EFTYPE 79 /* Inappropriate file type or format */
213#define EAUTH 80 /* Authentication error */
214#define ENEEDAUTH 81 /* Need authenticator */
215
216/* Intelligent device errors */
217#define EPWROFF 82 /* Device power is off */
218#define EDEVERR 83 /* Device error, e.g. paper out */
219#endif
220
221#define EOVERFLOW 84 /* Value too large to be stored in data type */
222
223/* Program loading errors */
224#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
225#define EBADEXEC 85 /* Bad executable */
226#define EBADARCH 86 /* Bad CPU type in executable */
227#define ESHLIBVERS 87 /* Shared library version mismatch */
228#define EBADMACHO 88 /* Malformed Macho file */
229#endif
230
231#define ECANCELED 89 /* Operation canceled */
232
233#define EIDRM 90 /* Identifier removed */
234#define ENOMSG 91 /* No message of desired type */
235#define EILSEQ 92 /* Illegal byte sequence */
236#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
237#define ENOATTR 93 /* Attribute not found */
238#endif
239
240#define EBADMSG 94 /* Bad message */
241#define EMULTIHOP 95 /* Reserved */
242#define ENODATA 96 /* No message available on STREAM */
243#define ENOLINK 97 /* Reserved */
244#define ENOSR 98 /* No STREAM resources */
245#define ENOSTR 99 /* Not a STREAM */
246#define EPROTO 100 /* Protocol error */
247#define ETIME 101 /* STREAM ioctl timeout */
248
249#if __DARWIN_UNIX03 || defined(KERNEL)
250/* This value is only discrete when compiling __DARWIN_UNIX03, or KERNEL */
251#define EOPNOTSUPP 102 /* Operation not supported on socket */
252#endif /* __DARWIN_UNIX03 || KERNEL */
253
254#define ENOPOLICY 103 /* No such policy registered */
255
256#if __DARWIN_C_LEVEL >= 200809L
257#define ENOTRECOVERABLE 104 /* State not recoverable */
258#define EOWNERDEAD 105 /* Previous owner died */
259#endif
260
261#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
262#define EQFULL 106 /* Interface output queue is full */
263#define ELAST 106 /* Must be equal largest errno */
264#endif
265
266#endif /* _SYS_ERRNO_H_ */
lib/libc/include/x86_64-macos-gnu/sys/resource.h created+458
......@@ -0,0 +1,458 @@
1/*
2 * Copyright (c) 2000-2018 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
29/*
30 * Copyright (c) 1982, 1986, 1993
31 * The Regents of the University of California. All rights reserved.
32 *
33 * Redistribution and use in source and binary forms, with or without
34 * modification, are permitted provided that the following conditions
35 * are met:
36 * 1. Redistributions of source code must retain the above copyright
37 * notice, this list of conditions and the following disclaimer.
38 * 2. Redistributions in binary form must reproduce the above copyright
39 * notice, this list of conditions and the following disclaimer in the
40 * documentation and/or other materials provided with the distribution.
41 * 3. All advertising materials mentioning features or use of this software
42 * must display the following acknowledgement:
43 * This product includes software developed by the University of
44 * California, Berkeley and its contributors.
45 * 4. Neither the name of the University nor the names of its contributors
46 * may be used to endorse or promote products derived from this software
47 * without specific prior written permission.
48 *
49 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
50 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
51 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
52 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
53 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
54 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
55 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
56 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
57 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
58 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
59 * SUCH DAMAGE.
60 *
61 * @(#)resource.h 8.2 (Berkeley) 1/4/94
62 */
63
64#ifndef _SYS_RESOURCE_H_
65#define _SYS_RESOURCE_H_
66
67#include <sys/appleapiopts.h>
68#include <sys/cdefs.h>
69#include <sys/_types.h>
70
71#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
72#include <stdint.h>
73#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
74
75#include <Availability.h>
76
77/* [XSI] The timeval structure shall be defined as described in
78 * <sys/time.h>
79 */
80#include <sys/_types/_timeval.h>
81
82/* The id_t type shall be defined as described in <sys/types.h> */
83#include <sys/_types/_id_t.h>
84
85
86/*
87 * Resource limit type (low 63 bits, excluding the sign bit)
88 */
89typedef __uint64_t rlim_t;
90
91
92/*****
93 * PRIORITY
94 */
95
96/*
97 * Possible values of the first parameter to getpriority()/setpriority(),
98 * used to indicate the type of the second parameter.
99 */
100#define PRIO_PROCESS 0 /* Second argument is a PID */
101#define PRIO_PGRP 1 /* Second argument is a GID */
102#define PRIO_USER 2 /* Second argument is a UID */
103
104#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
105#define PRIO_DARWIN_THREAD 3 /* Second argument is always 0 (current thread) */
106#define PRIO_DARWIN_PROCESS 4 /* Second argument is a PID */
107
108
109/*
110 * Range limitations for the value of the third parameter to setpriority().
111 */
112#define PRIO_MIN -20
113#define PRIO_MAX 20
114
115/*
116 * use PRIO_DARWIN_BG to set the current thread into "background" state
117 * which lowers CPU, disk IO, and networking priorites until thread terminates
118 * or "background" state is revoked
119 */
120#define PRIO_DARWIN_BG 0x1000
121
122/*
123 * use PRIO_DARWIN_NONUI to restrict a process's ability to make calls to
124 * the GPU. (deprecated)
125 */
126#define PRIO_DARWIN_NONUI 0x1001
127
128#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
129
130
131
132/*****
133 * RESOURCE USAGE
134 */
135
136/*
137 * Possible values of the first parameter to getrusage(), used to indicate
138 * the scope of the information to be returned.
139 */
140#define RUSAGE_SELF 0 /* Current process information */
141#define RUSAGE_CHILDREN -1 /* Current process' children */
142
143/*
144 * A structure representing an accounting of resource utilization. The
145 * address of an instance of this structure is the second parameter to
146 * getrusage().
147 *
148 * Note: All values other than ru_utime and ru_stime are implementaiton
149 * defined and subject to change in a future release. Their use
150 * is discouraged for standards compliant programs.
151 */
152struct rusage {
153 struct timeval ru_utime; /* user time used (PL) */
154 struct timeval ru_stime; /* system time used (PL) */
155#if __DARWIN_C_LEVEL < __DARWIN_C_FULL
156 long ru_opaque[14]; /* implementation defined */
157#else
158 /*
159 * Informational aliases for source compatibility with programs
160 * that need more information than that provided by standards,
161 * and which do not mind being OS-dependent.
162 */
163 long ru_maxrss; /* max resident set size (PL) */
164#define ru_first ru_ixrss /* internal: ruadd() range start */
165 long ru_ixrss; /* integral shared memory size (NU) */
166 long ru_idrss; /* integral unshared data (NU) */
167 long ru_isrss; /* integral unshared stack (NU) */
168 long ru_minflt; /* page reclaims (NU) */
169 long ru_majflt; /* page faults (NU) */
170 long ru_nswap; /* swaps (NU) */
171 long ru_inblock; /* block input operations (atomic) */
172 long ru_oublock; /* block output operations (atomic) */
173 long ru_msgsnd; /* messages sent (atomic) */
174 long ru_msgrcv; /* messages received (atomic) */
175 long ru_nsignals; /* signals received (atomic) */
176 long ru_nvcsw; /* voluntary context switches (atomic) */
177 long ru_nivcsw; /* involuntary " */
178#define ru_last ru_nivcsw /* internal: ruadd() range end */
179#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
180};
181
182#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
183/*
184 * Flavors for proc_pid_rusage().
185 */
186#define RUSAGE_INFO_V0 0
187#define RUSAGE_INFO_V1 1
188#define RUSAGE_INFO_V2 2
189#define RUSAGE_INFO_V3 3
190#define RUSAGE_INFO_V4 4
191#define RUSAGE_INFO_CURRENT RUSAGE_INFO_V4
192
193typedef void *rusage_info_t;
194
195struct rusage_info_v0 {
196 uint8_t ri_uuid[16];
197 uint64_t ri_user_time;
198 uint64_t ri_system_time;
199 uint64_t ri_pkg_idle_wkups;
200 uint64_t ri_interrupt_wkups;
201 uint64_t ri_pageins;
202 uint64_t ri_wired_size;
203 uint64_t ri_resident_size;
204 uint64_t ri_phys_footprint;
205 uint64_t ri_proc_start_abstime;
206 uint64_t ri_proc_exit_abstime;
207};
208
209struct rusage_info_v1 {
210 uint8_t ri_uuid[16];
211 uint64_t ri_user_time;
212 uint64_t ri_system_time;
213 uint64_t ri_pkg_idle_wkups;
214 uint64_t ri_interrupt_wkups;
215 uint64_t ri_pageins;
216 uint64_t ri_wired_size;
217 uint64_t ri_resident_size;
218 uint64_t ri_phys_footprint;
219 uint64_t ri_proc_start_abstime;
220 uint64_t ri_proc_exit_abstime;
221 uint64_t ri_child_user_time;
222 uint64_t ri_child_system_time;
223 uint64_t ri_child_pkg_idle_wkups;
224 uint64_t ri_child_interrupt_wkups;
225 uint64_t ri_child_pageins;
226 uint64_t ri_child_elapsed_abstime;
227};
228
229struct rusage_info_v2 {
230 uint8_t ri_uuid[16];
231 uint64_t ri_user_time;
232 uint64_t ri_system_time;
233 uint64_t ri_pkg_idle_wkups;
234 uint64_t ri_interrupt_wkups;
235 uint64_t ri_pageins;
236 uint64_t ri_wired_size;
237 uint64_t ri_resident_size;
238 uint64_t ri_phys_footprint;
239 uint64_t ri_proc_start_abstime;
240 uint64_t ri_proc_exit_abstime;
241 uint64_t ri_child_user_time;
242 uint64_t ri_child_system_time;
243 uint64_t ri_child_pkg_idle_wkups;
244 uint64_t ri_child_interrupt_wkups;
245 uint64_t ri_child_pageins;
246 uint64_t ri_child_elapsed_abstime;
247 uint64_t ri_diskio_bytesread;
248 uint64_t ri_diskio_byteswritten;
249};
250
251struct rusage_info_v3 {
252 uint8_t ri_uuid[16];
253 uint64_t ri_user_time;
254 uint64_t ri_system_time;
255 uint64_t ri_pkg_idle_wkups;
256 uint64_t ri_interrupt_wkups;
257 uint64_t ri_pageins;
258 uint64_t ri_wired_size;
259 uint64_t ri_resident_size;
260 uint64_t ri_phys_footprint;
261 uint64_t ri_proc_start_abstime;
262 uint64_t ri_proc_exit_abstime;
263 uint64_t ri_child_user_time;
264 uint64_t ri_child_system_time;
265 uint64_t ri_child_pkg_idle_wkups;
266 uint64_t ri_child_interrupt_wkups;
267 uint64_t ri_child_pageins;
268 uint64_t ri_child_elapsed_abstime;
269 uint64_t ri_diskio_bytesread;
270 uint64_t ri_diskio_byteswritten;
271 uint64_t ri_cpu_time_qos_default;
272 uint64_t ri_cpu_time_qos_maintenance;
273 uint64_t ri_cpu_time_qos_background;
274 uint64_t ri_cpu_time_qos_utility;
275 uint64_t ri_cpu_time_qos_legacy;
276 uint64_t ri_cpu_time_qos_user_initiated;
277 uint64_t ri_cpu_time_qos_user_interactive;
278 uint64_t ri_billed_system_time;
279 uint64_t ri_serviced_system_time;
280};
281
282struct rusage_info_v4 {
283 uint8_t ri_uuid[16];
284 uint64_t ri_user_time;
285 uint64_t ri_system_time;
286 uint64_t ri_pkg_idle_wkups;
287 uint64_t ri_interrupt_wkups;
288 uint64_t ri_pageins;
289 uint64_t ri_wired_size;
290 uint64_t ri_resident_size;
291 uint64_t ri_phys_footprint;
292 uint64_t ri_proc_start_abstime;
293 uint64_t ri_proc_exit_abstime;
294 uint64_t ri_child_user_time;
295 uint64_t ri_child_system_time;
296 uint64_t ri_child_pkg_idle_wkups;
297 uint64_t ri_child_interrupt_wkups;
298 uint64_t ri_child_pageins;
299 uint64_t ri_child_elapsed_abstime;
300 uint64_t ri_diskio_bytesread;
301 uint64_t ri_diskio_byteswritten;
302 uint64_t ri_cpu_time_qos_default;
303 uint64_t ri_cpu_time_qos_maintenance;
304 uint64_t ri_cpu_time_qos_background;
305 uint64_t ri_cpu_time_qos_utility;
306 uint64_t ri_cpu_time_qos_legacy;
307 uint64_t ri_cpu_time_qos_user_initiated;
308 uint64_t ri_cpu_time_qos_user_interactive;
309 uint64_t ri_billed_system_time;
310 uint64_t ri_serviced_system_time;
311 uint64_t ri_logical_writes;
312 uint64_t ri_lifetime_max_phys_footprint;
313 uint64_t ri_instructions;
314 uint64_t ri_cycles;
315 uint64_t ri_billed_energy;
316 uint64_t ri_serviced_energy;
317 uint64_t ri_interval_max_phys_footprint;
318 uint64_t ri_runnable_time;
319};
320
321typedef struct rusage_info_v4 rusage_info_current;
322
323#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
324
325
326
327/*****
328 * RESOURCE LIMITS
329 */
330
331/*
332 * Symbolic constants for resource limits; since all limits are representable
333 * as a type rlim_t, we are permitted to define RLIM_SAVED_* in terms of
334 * RLIM_INFINITY.
335 */
336#define RLIM_INFINITY (((__uint64_t)1 << 63) - 1) /* no limit */
337#define RLIM_SAVED_MAX RLIM_INFINITY /* Unrepresentable hard limit */
338#define RLIM_SAVED_CUR RLIM_INFINITY /* Unrepresentable soft limit */
339
340/*
341 * Possible values of the first parameter to getrlimit()/setrlimit(), to
342 * indicate for which resource the operation is being performed.
343 */
344#define RLIMIT_CPU 0 /* cpu time per process */
345#define RLIMIT_FSIZE 1 /* file size */
346#define RLIMIT_DATA 2 /* data segment size */
347#define RLIMIT_STACK 3 /* stack size */
348#define RLIMIT_CORE 4 /* core file size */
349#define RLIMIT_AS 5 /* address space (resident set size) */
350#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
351#define RLIMIT_RSS RLIMIT_AS /* source compatibility alias */
352#define RLIMIT_MEMLOCK 6 /* locked-in-memory address space */
353#define RLIMIT_NPROC 7 /* number of processes */
354#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
355#define RLIMIT_NOFILE 8 /* number of open files */
356#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
357#define RLIM_NLIMITS 9 /* total number of resource limits */
358#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
359#define _RLIMIT_POSIX_FLAG 0x1000 /* Set bit for strict POSIX */
360
361/*
362 * A structure representing a resource limit. The address of an instance
363 * of this structure is the second parameter to getrlimit()/setrlimit().
364 */
365struct rlimit {
366 rlim_t rlim_cur; /* current (soft) limit */
367 rlim_t rlim_max; /* maximum value for rlim_cur */
368};
369
370#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
371/*
372 * proc_rlimit_control()
373 *
374 * Resource limit flavors
375 */
376#define RLIMIT_WAKEUPS_MONITOR 0x1 /* Configure the wakeups monitor. */
377#define RLIMIT_CPU_USAGE_MONITOR 0x2 /* Configure the CPU usage monitor. */
378#define RLIMIT_THREAD_CPULIMITS 0x3 /* Configure a blocking, per-thread, CPU limits. */
379#define RLIMIT_FOOTPRINT_INTERVAL 0x4 /* Configure memory footprint interval tracking */
380
381/*
382 * Flags for wakeups monitor control.
383 */
384#define WAKEMON_ENABLE 0x01
385#define WAKEMON_DISABLE 0x02
386#define WAKEMON_GET_PARAMS 0x04
387#define WAKEMON_SET_DEFAULTS 0x08
388#define WAKEMON_MAKE_FATAL 0x10 /* Configure the task so that violations are fatal. */
389
390/*
391 * Flags for CPU usage monitor control.
392 */
393#define CPUMON_MAKE_FATAL 0x1000
394
395/*
396 * Flags for memory footprint interval tracking.
397 */
398#define FOOTPRINT_INTERVAL_RESET 0x1 /* Reset the footprint interval counter to zero */
399
400struct proc_rlimit_control_wakeupmon {
401 uint32_t wm_flags;
402 int32_t wm_rate;
403};
404
405
406
407/* I/O type */
408#define IOPOL_TYPE_DISK 0
409#define IOPOL_TYPE_VFS_ATIME_UPDATES 2
410#define IOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES 3
411#define IOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME 4
412
413/* scope */
414#define IOPOL_SCOPE_PROCESS 0
415#define IOPOL_SCOPE_THREAD 1
416#define IOPOL_SCOPE_DARWIN_BG 2
417
418/* I/O Priority */
419#define IOPOL_DEFAULT 0
420#define IOPOL_IMPORTANT 1
421#define IOPOL_PASSIVE 2
422#define IOPOL_THROTTLE 3
423#define IOPOL_UTILITY 4
424#define IOPOL_STANDARD 5
425
426/* compatibility with older names */
427#define IOPOL_APPLICATION IOPOL_STANDARD
428#define IOPOL_NORMAL IOPOL_IMPORTANT
429
430
431#define IOPOL_ATIME_UPDATES_DEFAULT 0
432#define IOPOL_ATIME_UPDATES_OFF 1
433
434#define IOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT 0
435#define IOPOL_MATERIALIZE_DATALESS_FILES_OFF 1
436#define IOPOL_MATERIALIZE_DATALESS_FILES_ON 2
437
438#define IOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT 0
439#define IOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME 1
440
441#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
442
443
444__BEGIN_DECLS
445int getpriority(int, id_t);
446#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
447int getiopolicy_np(int, int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
448#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
449int getrlimit(int, struct rlimit *) __DARWIN_ALIAS(getrlimit);
450int getrusage(int, struct rusage *);
451int setpriority(int, id_t, int);
452#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
453int setiopolicy_np(int, int, int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
454#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
455int setrlimit(int, const struct rlimit *) __DARWIN_ALIAS(setrlimit);
456__END_DECLS
457
458#endif /* !_SYS_RESOURCE_H_ */
lib/libc/include/x86_64-macos-gnu/sys/signal.h created+392
......@@ -0,0 +1,392 @@
1/*
2 * Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
29/*
30 * Copyright (c) 1982, 1986, 1989, 1991, 1993
31 * The Regents of the University of California. All rights reserved.
32 * (c) UNIX System Laboratories, Inc.
33 * All or some portions of this file are derived from material licensed
34 * to the University of California by American Telephone and Telegraph
35 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
36 * the permission of UNIX System Laboratories, Inc.
37 *
38 * Redistribution and use in source and binary forms, with or without
39 * modification, are permitted provided that the following conditions
40 * are met:
41 * 1. Redistributions of source code must retain the above copyright
42 * notice, this list of conditions and the following disclaimer.
43 * 2. Redistributions in binary form must reproduce the above copyright
44 * notice, this list of conditions and the following disclaimer in the
45 * documentation and/or other materials provided with the distribution.
46 * 3. All advertising materials mentioning features or use of this software
47 * must display the following acknowledgement:
48 * This product includes software developed by the University of
49 * California, Berkeley and its contributors.
50 * 4. Neither the name of the University nor the names of its contributors
51 * may be used to endorse or promote products derived from this software
52 * without specific prior written permission.
53 *
54 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
55 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
56 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
57 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
58 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
59 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
60 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
61 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
62 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
63 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
64 * SUCH DAMAGE.
65 *
66 * @(#)signal.h 8.2 (Berkeley) 1/21/94
67 */
68
69#ifndef _SYS_SIGNAL_H_
70#define _SYS_SIGNAL_H_
71
72#include <sys/cdefs.h>
73#include <sys/appleapiopts.h>
74#include <Availability.h>
75
76#define __DARWIN_NSIG 32 /* counting 0; could be 33 (mask is 1-32) */
77
78#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
79#define NSIG __DARWIN_NSIG
80#endif
81
82#include <machine/signal.h> /* sigcontext; codes for SIGILL, SIGFPE */
83
84#define SIGHUP 1 /* hangup */
85#define SIGINT 2 /* interrupt */
86#define SIGQUIT 3 /* quit */
87#define SIGILL 4 /* illegal instruction (not reset when caught) */
88#define SIGTRAP 5 /* trace trap (not reset when caught) */
89#define SIGABRT 6 /* abort() */
90#if (defined(_POSIX_C_SOURCE) && !defined(_DARWIN_C_SOURCE))
91#define SIGPOLL 7 /* pollable event ([XSR] generated, not supported) */
92#else /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
93#define SIGIOT SIGABRT /* compatibility */
94#define SIGEMT 7 /* EMT instruction */
95#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
96#define SIGFPE 8 /* floating point exception */
97#define SIGKILL 9 /* kill (cannot be caught or ignored) */
98#define SIGBUS 10 /* bus error */
99#define SIGSEGV 11 /* segmentation violation */
100#define SIGSYS 12 /* bad argument to system call */
101#define SIGPIPE 13 /* write on a pipe with no one to read it */
102#define SIGALRM 14 /* alarm clock */
103#define SIGTERM 15 /* software termination signal from kill */
104#define SIGURG 16 /* urgent condition on IO channel */
105#define SIGSTOP 17 /* sendable stop signal not from tty */
106#define SIGTSTP 18 /* stop signal from tty */
107#define SIGCONT 19 /* continue a stopped process */
108#define SIGCHLD 20 /* to parent on child stop or exit */
109#define SIGTTIN 21 /* to readers pgrp upon background tty read */
110#define SIGTTOU 22 /* like TTIN for output if (tp->t_local&LTOSTOP) */
111#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
112#define SIGIO 23 /* input/output possible signal */
113#endif
114#define SIGXCPU 24 /* exceeded CPU time limit */
115#define SIGXFSZ 25 /* exceeded file size limit */
116#define SIGVTALRM 26 /* virtual time alarm */
117#define SIGPROF 27 /* profiling time alarm */
118#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
119#define SIGWINCH 28 /* window size changes */
120#define SIGINFO 29 /* information request */
121#endif
122#define SIGUSR1 30 /* user defined signal 1 */
123#define SIGUSR2 31 /* user defined signal 2 */
124
125#if defined(_ANSI_SOURCE) || __DARWIN_UNIX03 || defined(__cplusplus)
126/*
127 * Language spec sez we must list exactly one parameter, even though we
128 * actually supply three. Ugh!
129 * SIG_HOLD is chosen to avoid KERN_SIG_* values in <sys/signalvar.h>
130 */
131#define SIG_DFL (void (*)(int))0
132#define SIG_IGN (void (*)(int))1
133#define SIG_HOLD (void (*)(int))5
134#define SIG_ERR ((void (*)(int))-1)
135#else
136/* DO NOT REMOVE THE COMMENTED OUT int: fixincludes needs to see them */
137#define SIG_DFL (void (*)( /*int*/ ))0
138#define SIG_IGN (void (*)( /*int*/ ))1
139#define SIG_HOLD (void (*)( /*int*/ ))5
140#define SIG_ERR ((void (*)( /*int*/ ))-1)
141#endif
142
143#ifndef _ANSI_SOURCE
144#include <sys/_types.h>
145
146#include <machine/_mcontext.h>
147
148#include <sys/_pthread/_pthread_attr_t.h>
149
150#include <sys/_types/_sigaltstack.h>
151#include <sys/_types/_ucontext.h>
152
153#include <sys/_types/_pid_t.h>
154#include <sys/_types/_sigset_t.h>
155#include <sys/_types/_size_t.h>
156#include <sys/_types/_uid_t.h>
157
158union sigval {
159 /* Members as suggested by Annex C of POSIX 1003.1b. */
160 int sival_int;
161 void *sival_ptr;
162};
163
164#define SIGEV_NONE 0 /* No async notification */
165#define SIGEV_SIGNAL 1 /* aio - completion notification */
166#define SIGEV_THREAD 3 /* [NOTIMP] [RTS] call notification function */
167
168struct sigevent {
169 int sigev_notify; /* Notification type */
170 int sigev_signo; /* Signal number */
171 union sigval sigev_value; /* Signal value */
172 void (*sigev_notify_function)(union sigval); /* Notification function */
173 pthread_attr_t *sigev_notify_attributes; /* Notification attributes */
174};
175
176
177typedef struct __siginfo {
178 int si_signo; /* signal number */
179 int si_errno; /* errno association */
180 int si_code; /* signal code */
181 pid_t si_pid; /* sending process */
182 uid_t si_uid; /* sender's ruid */
183 int si_status; /* exit value */
184 void *si_addr; /* faulting instruction */
185 union sigval si_value; /* signal value */
186 long si_band; /* band event for SIGPOLL */
187 unsigned long __pad[7]; /* Reserved for Future Use */
188} siginfo_t;
189
190
191/*
192 * When the signal is SIGILL or SIGFPE, si_addr contains the address of
193 * the faulting instruction.
194 * When the signal is SIGSEGV or SIGBUS, si_addr contains the address of
195 * the faulting memory reference. Although for x86 there are cases of SIGSEGV
196 * for which si_addr cannot be determined and is NULL.
197 * If the signal is SIGCHLD, the si_pid field will contain the child process ID,
198 * si_status contains the exit value or signal and
199 * si_uid contains the real user ID of the process that sent the signal.
200 */
201
202/* Values for si_code */
203
204/* Codes for SIGILL */
205#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
206#define ILL_NOOP 0 /* if only I knew... */
207#endif
208#define ILL_ILLOPC 1 /* [XSI] illegal opcode */
209#define ILL_ILLTRP 2 /* [XSI] illegal trap */
210#define ILL_PRVOPC 3 /* [XSI] privileged opcode */
211#define ILL_ILLOPN 4 /* [XSI] illegal operand -NOTIMP */
212#define ILL_ILLADR 5 /* [XSI] illegal addressing mode -NOTIMP */
213#define ILL_PRVREG 6 /* [XSI] privileged register -NOTIMP */
214#define ILL_COPROC 7 /* [XSI] coprocessor error -NOTIMP */
215#define ILL_BADSTK 8 /* [XSI] internal stack error -NOTIMP */
216
217/* Codes for SIGFPE */
218#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
219#define FPE_NOOP 0 /* if only I knew... */
220#endif
221#define FPE_FLTDIV 1 /* [XSI] floating point divide by zero */
222#define FPE_FLTOVF 2 /* [XSI] floating point overflow */
223#define FPE_FLTUND 3 /* [XSI] floating point underflow */
224#define FPE_FLTRES 4 /* [XSI] floating point inexact result */
225#define FPE_FLTINV 5 /* [XSI] invalid floating point operation */
226#define FPE_FLTSUB 6 /* [XSI] subscript out of range -NOTIMP */
227#define FPE_INTDIV 7 /* [XSI] integer divide by zero */
228#define FPE_INTOVF 8 /* [XSI] integer overflow */
229
230/* Codes for SIGSEGV */
231#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
232#define SEGV_NOOP 0 /* if only I knew... */
233#endif
234#define SEGV_MAPERR 1 /* [XSI] address not mapped to object */
235#define SEGV_ACCERR 2 /* [XSI] invalid permission for mapped object */
236
237/* Codes for SIGBUS */
238#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
239#define BUS_NOOP 0 /* if only I knew... */
240#endif
241#define BUS_ADRALN 1 /* [XSI] Invalid address alignment */
242#define BUS_ADRERR 2 /* [XSI] Nonexistent physical address -NOTIMP */
243#define BUS_OBJERR 3 /* [XSI] Object-specific HW error - NOTIMP */
244
245/* Codes for SIGTRAP */
246#define TRAP_BRKPT 1 /* [XSI] Process breakpoint -NOTIMP */
247#define TRAP_TRACE 2 /* [XSI] Process trace trap -NOTIMP */
248
249/* Codes for SIGCHLD */
250#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
251#define CLD_NOOP 0 /* if only I knew... */
252#endif
253#define CLD_EXITED 1 /* [XSI] child has exited */
254#define CLD_KILLED 2 /* [XSI] terminated abnormally, no core file */
255#define CLD_DUMPED 3 /* [XSI] terminated abnormally, core file */
256#define CLD_TRAPPED 4 /* [XSI] traced child has trapped */
257#define CLD_STOPPED 5 /* [XSI] child has stopped */
258#define CLD_CONTINUED 6 /* [XSI] stopped child has continued */
259
260/* Codes for SIGPOLL */
261#define POLL_IN 1 /* [XSR] Data input available */
262#define POLL_OUT 2 /* [XSR] Output buffers available */
263#define POLL_MSG 3 /* [XSR] Input message available */
264#define POLL_ERR 4 /* [XSR] I/O error */
265#define POLL_PRI 5 /* [XSR] High priority input available */
266#define POLL_HUP 6 /* [XSR] Device disconnected */
267
268/* union for signal handlers */
269union __sigaction_u {
270 void (*__sa_handler)(int);
271 void (*__sa_sigaction)(int, struct __siginfo *,
272 void *);
273};
274
275/* Signal vector template for Kernel user boundary */
276struct __sigaction {
277 union __sigaction_u __sigaction_u; /* signal handler */
278 void (*sa_tramp)(void *, int, int, siginfo_t *, void *);
279 sigset_t sa_mask; /* signal mask to apply */
280 int sa_flags; /* see signal options below */
281};
282
283/*
284 * Signal vector "template" used in sigaction call.
285 */
286struct sigaction {
287 union __sigaction_u __sigaction_u; /* signal handler */
288 sigset_t sa_mask; /* signal mask to apply */
289 int sa_flags; /* see signal options below */
290};
291
292
293
294/* if SA_SIGINFO is set, sa_sigaction is to be used instead of sa_handler. */
295#define sa_handler __sigaction_u.__sa_handler
296#define sa_sigaction __sigaction_u.__sa_sigaction
297
298#define SA_ONSTACK 0x0001 /* take signal on signal stack */
299#define SA_RESTART 0x0002 /* restart system on signal return */
300#define SA_RESETHAND 0x0004 /* reset to SIG_DFL when taking signal */
301#define SA_NOCLDSTOP 0x0008 /* do not generate SIGCHLD on child stop */
302#define SA_NODEFER 0x0010 /* don't mask the signal we're delivering */
303#define SA_NOCLDWAIT 0x0020 /* don't keep zombies around */
304#define SA_SIGINFO 0x0040 /* signal handler with SA_SIGINFO args */
305#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
306#define SA_USERTRAMP 0x0100 /* do not bounce off kernel's sigtramp */
307/* This will provide 64bit register set in a 32bit user address space */
308#define SA_64REGSET 0x0200 /* signal handler with SA_SIGINFO args with 64bit regs information */
309#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
310
311/* the following are the only bits we support from user space, the
312 * rest are for kernel use only.
313 */
314#define SA_USERSPACE_MASK (SA_ONSTACK | SA_RESTART | SA_RESETHAND | SA_NOCLDSTOP | SA_NODEFER | SA_NOCLDWAIT | SA_SIGINFO)
315
316/*
317 * Flags for sigprocmask:
318 */
319#define SIG_BLOCK 1 /* block specified signal set */
320#define SIG_UNBLOCK 2 /* unblock specified signal set */
321#define SIG_SETMASK 3 /* set specified signal set */
322
323/* POSIX 1003.1b required values. */
324#define SI_USER 0x10001 /* [CX] signal from kill() */
325#define SI_QUEUE 0x10002 /* [CX] signal from sigqueue() */
326#define SI_TIMER 0x10003 /* [CX] timer expiration */
327#define SI_ASYNCIO 0x10004 /* [CX] aio request completion */
328#define SI_MESGQ 0x10005 /* [CX] from message arrival on empty queue */
329
330#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
331typedef void (*sig_t)(int); /* type of signal function */
332#endif
333
334/*
335 * Structure used in sigaltstack call.
336 */
337
338#define SS_ONSTACK 0x0001 /* take signal on signal stack */
339#define SS_DISABLE 0x0004 /* disable taking signals on alternate stack */
340#define MINSIGSTKSZ 32768 /* (32K)minimum allowable stack */
341#define SIGSTKSZ 131072 /* (128K)recommended stack size */
342
343#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
344/*
345 * 4.3 compatibility:
346 * Signal vector "template" used in sigvec call.
347 */
348struct sigvec {
349 void (*sv_handler)(int); /* signal handler */
350 int sv_mask; /* signal mask to apply */
351 int sv_flags; /* see signal options below */
352};
353
354#define SV_ONSTACK SA_ONSTACK
355#define SV_INTERRUPT SA_RESTART /* same bit, opposite sense */
356#define SV_RESETHAND SA_RESETHAND
357#define SV_NODEFER SA_NODEFER
358#define SV_NOCLDSTOP SA_NOCLDSTOP
359#define SV_SIGINFO SA_SIGINFO
360
361#define sv_onstack sv_flags /* isn't compatibility wonderful! */
362#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
363
364/*
365 * Structure used in sigstack call.
366 */
367struct sigstack {
368 char *ss_sp; /* signal stack pointer */
369 int ss_onstack; /* current status */
370};
371
372#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
373/*
374 * Macro for converting signal number to a mask suitable for
375 * sigblock().
376 */
377#define sigmask(m) (1 << ((m)-1))
378
379
380#define BADSIG SIG_ERR
381
382#endif /* (!_POSIX_C_SOURCE || _DARWIN_C_SOURCE) */
383#endif /* !_ANSI_SOURCE */
384
385/*
386 * For historical reasons; programs expect signal's return value to be
387 * defined by <sys/signal.h>.
388 */
389__BEGIN_DECLS
390 void(*signal(int, void (*)(int)))(int);
391__END_DECLS
392#endif /* !_SYS_SIGNAL_H_ */
lib/libc/include/x86_64-macos-gnu/sys/stdio.h created+55
......@@ -0,0 +1,55 @@
1/*
2 * Copyright (c) 2013 Apple Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28
29#ifndef _SYS_STDIO_H_
30#define _SYS_STDIO_H_
31
32#include <sys/cdefs.h>
33
34#if __DARWIN_C_LEVEL >= 200809L
35#include <Availability.h>
36
37__BEGIN_DECLS
38
39int renameat(int, const char *, int, const char *) __OSX_AVAILABLE_STARTING(__MAC_10_10, __IPHONE_8_0);
40
41#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
42
43#define RENAME_SECLUDE 0x00000001
44#define RENAME_SWAP 0x00000002
45#define RENAME_EXCL 0x00000004
46int renamex_np(const char *, const char *, unsigned int) __OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
47int renameatx_np(int, const char *, int, const char *, unsigned int) __OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
48
49#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
50
51__END_DECLS
52
53#endif /* __DARWIN_C_LEVEL >= 200809L */
54
55#endif /* _SYS_STDIO_H_ */
lib/libc/include/x86_64-macos-gnu/sys/syslimits.h created+117
......@@ -0,0 +1,117 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* $NetBSD: syslimits.h,v 1.15 1997/06/25 00:48:09 lukem Exp $ */
29
30/*
31 * Copyright (c) 1988, 1993
32 * The Regents of the University of California. All rights reserved.
33 *
34 * Redistribution and use in source and binary forms, with or without
35 * modification, are permitted provided that the following conditions
36 * are met:
37 * 1. Redistributions of source code must retain the above copyright
38 * notice, this list of conditions and the following disclaimer.
39 * 2. Redistributions in binary form must reproduce the above copyright
40 * notice, this list of conditions and the following disclaimer in the
41 * documentation and/or other materials provided with the distribution.
42 * 3. All advertising materials mentioning features or use of this software
43 * must display the following acknowledgement:
44 * This product includes software developed by the University of
45 * California, Berkeley and its contributors.
46 * 4. Neither the name of the University nor the names of its contributors
47 * may be used to endorse or promote products derived from this software
48 * without specific prior written permission.
49 *
50 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
51 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
52 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
53 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
54 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
55 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
56 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
57 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
58 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
59 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
60 * SUCH DAMAGE.
61 *
62 * @(#)syslimits.h 8.1 (Berkeley) 6/2/93
63 */
64
65#ifndef _SYS_SYSLIMITS_H_
66#define _SYS_SYSLIMITS_H_
67
68#include <sys/cdefs.h>
69
70#if !defined(_ANSI_SOURCE)
71/*
72 * Note: CHILD_MAX *must* be less than hard_maxproc, which is set at
73 * compile time; you *cannot* set it higher than the hard limit!!
74 */
75#define ARG_MAX (256 * 1024) /* max bytes for an exec function */
76#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
77#define CHILD_MAX 266 /* max simultaneous processes */
78#define GID_MAX 2147483647U /* max value for a gid_t (2^31-2) */
79#endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
80#define LINK_MAX 32767 /* max file link count */
81#define MAX_CANON 1024 /* max bytes in term canon input line */
82#define MAX_INPUT 1024 /* max bytes in terminal input */
83#define NAME_MAX 255 /* max bytes in a file name */
84#define NGROUPS_MAX 16 /* max supplemental group id's */
85#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
86#define UID_MAX 2147483647U /* max value for a uid_t (2^31-2) */
87
88#define OPEN_MAX 10240 /* max open files per process - todo, make a config option? */
89
90#endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
91#define PATH_MAX 1024 /* max bytes in pathname */
92#define PIPE_BUF 512 /* max bytes for atomic pipe writes */
93
94#define BC_BASE_MAX 99 /* max ibase/obase values in bc(1) */
95#define BC_DIM_MAX 2048 /* max array elements in bc(1) */
96#define BC_SCALE_MAX 99 /* max scale value in bc(1) */
97#define BC_STRING_MAX 1000 /* max const string length in bc(1) */
98#define CHARCLASS_NAME_MAX 14 /* max character class name size */
99#define COLL_WEIGHTS_MAX 2 /* max weights for order keyword */
100#define EQUIV_CLASS_MAX 2
101#define EXPR_NEST_MAX 32 /* max expressions nested in expr(1) */
102#define LINE_MAX 2048 /* max bytes in an input line */
103#define RE_DUP_MAX 255 /* max RE's in interval notation */
104
105#if __DARWIN_UNIX03
106#define NZERO 20 /* default priority [XSI] */
107 /* = ((PRIO_MAX - PRIO_MIN) / 2) + 1 */
108 /* range: 0 - 39 [(2 * NZERO) - 1] */
109 /* 0 is not actually used */
110#else /* !__DARWIN_UNIX03 */
111#define NZERO 0 /* default priority */
112 /* range: -20 - 20 */
113 /* (PRIO_MIN - PRIO_MAX) */
114#endif /* __DARWIN_UNIX03 */
115#endif /* !_ANSI_SOURCE */
116
117#endif /* !_SYS_SYSLIMITS_H_ */
lib/libc/include/x86_64-macos-gnu/sys/wait.h created+258
......@@ -0,0 +1,258 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. The rights granted to you under the License
10 * may not be used to create, or enable the creation or redistribution of,
11 * unlawful or unlicensed copies of an Apple operating system, or to
12 * circumvent, violate, or enable the circumvention or violation of, any
13 * terms of an Apple operating system software license agreement.
14 *
15 * Please obtain a copy of the License at
16 * http://www.opensource.apple.com/apsl/ and read it before using this file.
17 *
18 * The Original Code and all software distributed under the License are
19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23 * Please see the License for the specific language governing rights and
24 * limitations under the License.
25 *
26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27 */
28/* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
29/*
30 * Copyright (c) 1982, 1986, 1989, 1993, 1994
31 * The Regents of the University of California. All rights reserved.
32 *
33 * Redistribution and use in source and binary forms, with or without
34 * modification, are permitted provided that the following conditions
35 * are met:
36 * 1. Redistributions of source code must retain the above copyright
37 * notice, this list of conditions and the following disclaimer.
38 * 2. Redistributions in binary form must reproduce the above copyright
39 * notice, this list of conditions and the following disclaimer in the
40 * documentation and/or other materials provided with the distribution.
41 * 3. All advertising materials mentioning features or use of this software
42 * must display the following acknowledgement:
43 * This product includes software developed by the University of
44 * California, Berkeley and its contributors.
45 * 4. Neither the name of the University nor the names of its contributors
46 * may be used to endorse or promote products derived from this software
47 * without specific prior written permission.
48 *
49 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
50 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
51 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
52 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
53 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
54 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
55 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
56 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
57 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
58 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
59 * SUCH DAMAGE.
60 *
61 * @(#)wait.h 8.2 (Berkeley) 7/10/94
62 */
63
64#ifndef _SYS_WAIT_H_
65#define _SYS_WAIT_H_
66
67#include <sys/cdefs.h>
68#include <sys/_types.h>
69
70/*
71 * This file holds definitions relevent to the wait4 system call
72 * and the alternate interfaces that use it (wait, wait3, waitpid).
73 */
74
75/*
76 * [XSI] The type idtype_t shall be defined as an enumeration type whose
77 * possible values shall include at least P_ALL, P_PID, and P_PGID.
78 */
79typedef enum {
80 P_ALL,
81 P_PID,
82 P_PGID
83} idtype_t;
84
85/*
86 * [XSI] The id_t and pid_t types shall be defined as described
87 * in <sys/types.h>
88 */
89#include <sys/_types/_pid_t.h>
90#include <sys/_types/_id_t.h>
91
92/*
93 * [XSI] The siginfo_t type shall be defined as described in <signal.h>
94 * [XSI] The rusage structure shall be defined as described in <sys/resource.h>
95 * [XSI] Inclusion of the <sys/wait.h> header may also make visible all
96 * symbols from <signal.h> and <sys/resource.h>
97 *
98 * NOTE: This requirement is currently being satisfied by the direct
99 * inclusion of <sys/signal.h> and <sys/resource.h>, below.
100 *
101 * Software should not depend on the exposure of anything other
102 * than the types siginfo_t and struct rusage as a result of
103 * this inclusion. If you depend on any types or manifest
104 * values othe than siginfo_t and struct rusage from either of
105 * those files, you should explicitly include them yourself, as
106 * well, or in future releases your stware may not compile
107 * without modification.
108 */
109#include <sys/signal.h> /* [XSI] for siginfo_t */
110#include <sys/resource.h> /* [XSI] for struct rusage */
111
112/*
113 * Option bits for the third argument of wait4. WNOHANG causes the
114 * wait to not hang if there are no stopped or terminated processes, rather
115 * returning an error indication in this case (pid==0). WUNTRACED
116 * indicates that the caller should receive status about untraced children
117 * which stop due to signals. If children are stopped and a wait without
118 * this option is done, it is as though they were still running... nothing
119 * about them is returned.
120 */
121#define WNOHANG 0x00000001 /* [XSI] no hang in wait/no child to reap */
122#define WUNTRACED 0x00000002 /* [XSI] notify on stop, untraced child */
123
124/*
125 * Macros to test the exit status returned by wait
126 * and extract the relevant values.
127 */
128#if defined(_POSIX_C_SOURCE) && !defined(_DARWIN_C_SOURCE)
129#define _W_INT(i) (i)
130#else
131#define _W_INT(w) (*(int *)&(w)) /* convert union wait to int */
132#define WCOREFLAG 0200
133#endif /* (_POSIX_C_SOURCE && !_DARWIN_C_SOURCE) */
134
135/* These macros are permited, as they are in the implementation namespace */
136#define _WSTATUS(x) (_W_INT(x) & 0177)
137#define _WSTOPPED 0177 /* _WSTATUS if process is stopped */
138
139/*
140 * [XSI] The <sys/wait.h> header shall define the following macros for
141 * analysis of process status values
142 */
143#if __DARWIN_UNIX03
144#define WEXITSTATUS(x) ((_W_INT(x) >> 8) & 0x000000ff)
145#else /* !__DARWIN_UNIX03 */
146#define WEXITSTATUS(x) (_W_INT(x) >> 8)
147#endif /* !__DARWIN_UNIX03 */
148/* 0x13 == SIGCONT */
149#define WSTOPSIG(x) (_W_INT(x) >> 8)
150#define WIFCONTINUED(x) (_WSTATUS(x) == _WSTOPPED && WSTOPSIG(x) == 0x13)
151#define WIFSTOPPED(x) (_WSTATUS(x) == _WSTOPPED && WSTOPSIG(x) != 0x13)
152#define WIFEXITED(x) (_WSTATUS(x) == 0)
153#define WIFSIGNALED(x) (_WSTATUS(x) != _WSTOPPED && _WSTATUS(x) != 0)
154#define WTERMSIG(x) (_WSTATUS(x))
155#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
156#define WCOREDUMP(x) (_W_INT(x) & WCOREFLAG)
157
158#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
159#define W_STOPCODE(sig) ((sig) << 8 | _WSTOPPED)
160#endif /* (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
161
162/*
163 * [XSI] The following symbolic constants shall be defined as possible
164 * values for the fourth argument to waitid().
165 */
166/* WNOHANG already defined for wait4() */
167/* WUNTRACED defined for wait4() but not for waitid() */
168#define WEXITED 0x00000004 /* [XSI] Processes which have exitted */
169#if __DARWIN_UNIX03
170/* waitid() parameter */
171#define WSTOPPED 0x00000008 /* [XSI] Any child stopped by signal */
172#endif
173#define WCONTINUED 0x00000010 /* [XSI] Any child stopped then continued */
174#define WNOWAIT 0x00000020 /* [XSI] Leave process returned waitable */
175
176
177#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
178/* POSIX extensions and 4.2/4.3 compatability: */
179
180/*
181 * Tokens for special values of the "pid" parameter to wait4.
182 */
183#define WAIT_ANY (-1) /* any process */
184#define WAIT_MYPGRP 0 /* any process in my process group */
185
186#include <machine/endian.h>
187
188/*
189 * Deprecated:
190 * Structure of the information in the status word returned by wait4.
191 * If w_stopval==_WSTOPPED, then the second structure describes
192 * the information returned, else the first.
193 */
194union wait {
195 int w_status; /* used in syscall */
196 /*
197 * Terminated process status.
198 */
199 struct {
200#if __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN
201 unsigned int w_Termsig:7, /* termination signal */
202 w_Coredump:1, /* core dump indicator */
203 w_Retcode:8, /* exit code if w_termsig==0 */
204 w_Filler:16; /* upper bits filler */
205#endif
206#if __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
207 unsigned int w_Filler:16, /* upper bits filler */
208 w_Retcode:8, /* exit code if w_termsig==0 */
209 w_Coredump:1, /* core dump indicator */
210 w_Termsig:7; /* termination signal */
211#endif
212 } w_T;
213 /*
214 * Stopped process status. Returned
215 * only for traced children unless requested
216 * with the WUNTRACED option bit.
217 */
218 struct {
219#if __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN
220 unsigned int w_Stopval:8, /* == W_STOPPED if stopped */
221 w_Stopsig:8, /* signal that stopped us */
222 w_Filler:16; /* upper bits filler */
223#endif
224#if __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
225 unsigned int w_Filler:16, /* upper bits filler */
226 w_Stopsig:8, /* signal that stopped us */
227 w_Stopval:8; /* == W_STOPPED if stopped */
228#endif
229 } w_S;
230};
231#define w_termsig w_T.w_Termsig
232#define w_coredump w_T.w_Coredump
233#define w_retcode w_T.w_Retcode
234#define w_stopval w_S.w_Stopval
235#define w_stopsig w_S.w_Stopsig
236
237#endif /* (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
238
239#if !(__DARWIN_UNIX03 - 0)
240/*
241 * Stopped state value; cannot use waitid() parameter of the same name
242 * in the same scope
243 */
244#define WSTOPPED _WSTOPPED
245#endif /* !__DARWIN_UNIX03 */
246
247__BEGIN_DECLS
248pid_t wait(int *) __DARWIN_ALIAS_C(wait);
249pid_t waitpid(pid_t, int *, int) __DARWIN_ALIAS_C(waitpid);
250#ifndef _ANSI_SOURCE
251int waitid(idtype_t, id_t, siginfo_t *, int) __DARWIN_ALIAS_C(waitid);
252#endif /* !_ANSI_SOURCE */
253#if (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
254pid_t wait3(int *, int, struct rusage *);
255pid_t wait4(pid_t, int *, int, struct rusage *);
256#endif /* (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)) */
257__END_DECLS
258#endif /* !_SYS_WAIT_H_ */
lib/libc/include/x86_64-macos-gnu/tgmath.h created+1372
......@@ -0,0 +1,1372 @@
1/*
2 * Copyright (c) 2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22
23#ifndef __TGMATH_H
24#define __TGMATH_H
25
26/* C99 7.22 Type-generic math <tgmath.h>. */
27#include <math.h>
28
29/* C++ handles type genericity with overloading in math.h. */
30#ifndef __cplusplus
31#include <complex.h>
32
33#define _TG_ATTRSp __attribute__((__overloadable__))
34#define _TG_ATTRS __attribute__((__overloadable__, __always_inline__))
35
36// promotion
37
38typedef void _Argument_type_is_not_arithmetic;
39static _Argument_type_is_not_arithmetic __tg_promote(...)
40 __attribute__((__unavailable__,__overloadable__));
41static double _TG_ATTRSp __tg_promote(int);
42static double _TG_ATTRSp __tg_promote(unsigned int);
43static double _TG_ATTRSp __tg_promote(long);
44static double _TG_ATTRSp __tg_promote(unsigned long);
45static double _TG_ATTRSp __tg_promote(long long);
46static double _TG_ATTRSp __tg_promote(unsigned long long);
47static float _TG_ATTRSp __tg_promote(float);
48static double _TG_ATTRSp __tg_promote(double);
49static long double _TG_ATTRSp __tg_promote(long double);
50static float _Complex _TG_ATTRSp __tg_promote(float _Complex);
51static double _Complex _TG_ATTRSp __tg_promote(double _Complex);
52static long double _Complex _TG_ATTRSp __tg_promote(long double _Complex);
53
54#define __tg_promote1(__x) (__typeof__(__tg_promote(__x)))
55#define __tg_promote2(__x, __y) (__typeof__(__tg_promote(__x) + \
56 __tg_promote(__y)))
57#define __tg_promote3(__x, __y, __z) (__typeof__(__tg_promote(__x) + \
58 __tg_promote(__y) + \
59 __tg_promote(__z)))
60
61// acos
62
63static float
64 _TG_ATTRS
65 __tg_acos(float __x) {return acosf(__x);}
66
67static double
68 _TG_ATTRS
69 __tg_acos(double __x) {return acos(__x);}
70
71static long double
72 _TG_ATTRS
73 __tg_acos(long double __x) {return acosl(__x);}
74
75static float _Complex
76 _TG_ATTRS
77 __tg_acos(float _Complex __x) {return cacosf(__x);}
78
79static double _Complex
80 _TG_ATTRS
81 __tg_acos(double _Complex __x) {return cacos(__x);}
82
83static long double _Complex
84 _TG_ATTRS
85 __tg_acos(long double _Complex __x) {return cacosl(__x);}
86
87#undef acos
88#define acos(__x) __tg_acos(__tg_promote1((__x))(__x))
89
90// asin
91
92static float
93 _TG_ATTRS
94 __tg_asin(float __x) {return asinf(__x);}
95
96static double
97 _TG_ATTRS
98 __tg_asin(double __x) {return asin(__x);}
99
100static long double
101 _TG_ATTRS
102 __tg_asin(long double __x) {return asinl(__x);}
103
104static float _Complex
105 _TG_ATTRS
106 __tg_asin(float _Complex __x) {return casinf(__x);}
107
108static double _Complex
109 _TG_ATTRS
110 __tg_asin(double _Complex __x) {return casin(__x);}
111
112static long double _Complex
113 _TG_ATTRS
114 __tg_asin(long double _Complex __x) {return casinl(__x);}
115
116#undef asin
117#define asin(__x) __tg_asin(__tg_promote1((__x))(__x))
118
119// atan
120
121static float
122 _TG_ATTRS
123 __tg_atan(float __x) {return atanf(__x);}
124
125static double
126 _TG_ATTRS
127 __tg_atan(double __x) {return atan(__x);}
128
129static long double
130 _TG_ATTRS
131 __tg_atan(long double __x) {return atanl(__x);}
132
133static float _Complex
134 _TG_ATTRS
135 __tg_atan(float _Complex __x) {return catanf(__x);}
136
137static double _Complex
138 _TG_ATTRS
139 __tg_atan(double _Complex __x) {return catan(__x);}
140
141static long double _Complex
142 _TG_ATTRS
143 __tg_atan(long double _Complex __x) {return catanl(__x);}
144
145#undef atan
146#define atan(__x) __tg_atan(__tg_promote1((__x))(__x))
147
148// acosh
149
150static float
151 _TG_ATTRS
152 __tg_acosh(float __x) {return acoshf(__x);}
153
154static double
155 _TG_ATTRS
156 __tg_acosh(double __x) {return acosh(__x);}
157
158static long double
159 _TG_ATTRS
160 __tg_acosh(long double __x) {return acoshl(__x);}
161
162static float _Complex
163 _TG_ATTRS
164 __tg_acosh(float _Complex __x) {return cacoshf(__x);}
165
166static double _Complex
167 _TG_ATTRS
168 __tg_acosh(double _Complex __x) {return cacosh(__x);}
169
170static long double _Complex
171 _TG_ATTRS
172 __tg_acosh(long double _Complex __x) {return cacoshl(__x);}
173
174#undef acosh
175#define acosh(__x) __tg_acosh(__tg_promote1((__x))(__x))
176
177// asinh
178
179static float
180 _TG_ATTRS
181 __tg_asinh(float __x) {return asinhf(__x);}
182
183static double
184 _TG_ATTRS
185 __tg_asinh(double __x) {return asinh(__x);}
186
187static long double
188 _TG_ATTRS
189 __tg_asinh(long double __x) {return asinhl(__x);}
190
191static float _Complex
192 _TG_ATTRS
193 __tg_asinh(float _Complex __x) {return casinhf(__x);}
194
195static double _Complex
196 _TG_ATTRS
197 __tg_asinh(double _Complex __x) {return casinh(__x);}
198
199static long double _Complex
200 _TG_ATTRS
201 __tg_asinh(long double _Complex __x) {return casinhl(__x);}
202
203#undef asinh
204#define asinh(__x) __tg_asinh(__tg_promote1((__x))(__x))
205
206// atanh
207
208static float
209 _TG_ATTRS
210 __tg_atanh(float __x) {return atanhf(__x);}
211
212static double
213 _TG_ATTRS
214 __tg_atanh(double __x) {return atanh(__x);}
215
216static long double
217 _TG_ATTRS
218 __tg_atanh(long double __x) {return atanhl(__x);}
219
220static float _Complex
221 _TG_ATTRS
222 __tg_atanh(float _Complex __x) {return catanhf(__x);}
223
224static double _Complex
225 _TG_ATTRS
226 __tg_atanh(double _Complex __x) {return catanh(__x);}
227
228static long double _Complex
229 _TG_ATTRS
230 __tg_atanh(long double _Complex __x) {return catanhl(__x);}
231
232#undef atanh
233#define atanh(__x) __tg_atanh(__tg_promote1((__x))(__x))
234
235// cos
236
237static float
238 _TG_ATTRS
239 __tg_cos(float __x) {return cosf(__x);}
240
241static double
242 _TG_ATTRS
243 __tg_cos(double __x) {return cos(__x);}
244
245static long double
246 _TG_ATTRS
247 __tg_cos(long double __x) {return cosl(__x);}
248
249static float _Complex
250 _TG_ATTRS
251 __tg_cos(float _Complex __x) {return ccosf(__x);}
252
253static double _Complex
254 _TG_ATTRS
255 __tg_cos(double _Complex __x) {return ccos(__x);}
256
257static long double _Complex
258 _TG_ATTRS
259 __tg_cos(long double _Complex __x) {return ccosl(__x);}
260
261#undef cos
262#define cos(__x) __tg_cos(__tg_promote1((__x))(__x))
263
264// sin
265
266static float
267 _TG_ATTRS
268 __tg_sin(float __x) {return sinf(__x);}
269
270static double
271 _TG_ATTRS
272 __tg_sin(double __x) {return sin(__x);}
273
274static long double
275 _TG_ATTRS
276 __tg_sin(long double __x) {return sinl(__x);}
277
278static float _Complex
279 _TG_ATTRS
280 __tg_sin(float _Complex __x) {return csinf(__x);}
281
282static double _Complex
283 _TG_ATTRS
284 __tg_sin(double _Complex __x) {return csin(__x);}
285
286static long double _Complex
287 _TG_ATTRS
288 __tg_sin(long double _Complex __x) {return csinl(__x);}
289
290#undef sin
291#define sin(__x) __tg_sin(__tg_promote1((__x))(__x))
292
293// tan
294
295static float
296 _TG_ATTRS
297 __tg_tan(float __x) {return tanf(__x);}
298
299static double
300 _TG_ATTRS
301 __tg_tan(double __x) {return tan(__x);}
302
303static long double
304 _TG_ATTRS
305 __tg_tan(long double __x) {return tanl(__x);}
306
307static float _Complex
308 _TG_ATTRS
309 __tg_tan(float _Complex __x) {return ctanf(__x);}
310
311static double _Complex
312 _TG_ATTRS
313 __tg_tan(double _Complex __x) {return ctan(__x);}
314
315static long double _Complex
316 _TG_ATTRS
317 __tg_tan(long double _Complex __x) {return ctanl(__x);}
318
319#undef tan
320#define tan(__x) __tg_tan(__tg_promote1((__x))(__x))
321
322// cosh
323
324static float
325 _TG_ATTRS
326 __tg_cosh(float __x) {return coshf(__x);}
327
328static double
329 _TG_ATTRS
330 __tg_cosh(double __x) {return cosh(__x);}
331
332static long double
333 _TG_ATTRS
334 __tg_cosh(long double __x) {return coshl(__x);}
335
336static float _Complex
337 _TG_ATTRS
338 __tg_cosh(float _Complex __x) {return ccoshf(__x);}
339
340static double _Complex
341 _TG_ATTRS
342 __tg_cosh(double _Complex __x) {return ccosh(__x);}
343
344static long double _Complex
345 _TG_ATTRS
346 __tg_cosh(long double _Complex __x) {return ccoshl(__x);}
347
348#undef cosh
349#define cosh(__x) __tg_cosh(__tg_promote1((__x))(__x))
350
351// sinh
352
353static float
354 _TG_ATTRS
355 __tg_sinh(float __x) {return sinhf(__x);}
356
357static double
358 _TG_ATTRS
359 __tg_sinh(double __x) {return sinh(__x);}
360
361static long double
362 _TG_ATTRS
363 __tg_sinh(long double __x) {return sinhl(__x);}
364
365static float _Complex
366 _TG_ATTRS
367 __tg_sinh(float _Complex __x) {return csinhf(__x);}
368
369static double _Complex
370 _TG_ATTRS
371 __tg_sinh(double _Complex __x) {return csinh(__x);}
372
373static long double _Complex
374 _TG_ATTRS
375 __tg_sinh(long double _Complex __x) {return csinhl(__x);}
376
377#undef sinh
378#define sinh(__x) __tg_sinh(__tg_promote1((__x))(__x))
379
380// tanh
381
382static float
383 _TG_ATTRS
384 __tg_tanh(float __x) {return tanhf(__x);}
385
386static double
387 _TG_ATTRS
388 __tg_tanh(double __x) {return tanh(__x);}
389
390static long double
391 _TG_ATTRS
392 __tg_tanh(long double __x) {return tanhl(__x);}
393
394static float _Complex
395 _TG_ATTRS
396 __tg_tanh(float _Complex __x) {return ctanhf(__x);}
397
398static double _Complex
399 _TG_ATTRS
400 __tg_tanh(double _Complex __x) {return ctanh(__x);}
401
402static long double _Complex
403 _TG_ATTRS
404 __tg_tanh(long double _Complex __x) {return ctanhl(__x);}
405
406#undef tanh
407#define tanh(__x) __tg_tanh(__tg_promote1((__x))(__x))
408
409// exp
410
411static float
412 _TG_ATTRS
413 __tg_exp(float __x) {return expf(__x);}
414
415static double
416 _TG_ATTRS
417 __tg_exp(double __x) {return exp(__x);}
418
419static long double
420 _TG_ATTRS
421 __tg_exp(long double __x) {return expl(__x);}
422
423static float _Complex
424 _TG_ATTRS
425 __tg_exp(float _Complex __x) {return cexpf(__x);}
426
427static double _Complex
428 _TG_ATTRS
429 __tg_exp(double _Complex __x) {return cexp(__x);}
430
431static long double _Complex
432 _TG_ATTRS
433 __tg_exp(long double _Complex __x) {return cexpl(__x);}
434
435#undef exp
436#define exp(__x) __tg_exp(__tg_promote1((__x))(__x))
437
438// log
439
440static float
441 _TG_ATTRS
442 __tg_log(float __x) {return logf(__x);}
443
444static double
445 _TG_ATTRS
446 __tg_log(double __x) {return log(__x);}
447
448static long double
449 _TG_ATTRS
450 __tg_log(long double __x) {return logl(__x);}
451
452static float _Complex
453 _TG_ATTRS
454 __tg_log(float _Complex __x) {return clogf(__x);}
455
456static double _Complex
457 _TG_ATTRS
458 __tg_log(double _Complex __x) {return clog(__x);}
459
460static long double _Complex
461 _TG_ATTRS
462 __tg_log(long double _Complex __x) {return clogl(__x);}
463
464#undef log
465#define log(__x) __tg_log(__tg_promote1((__x))(__x))
466
467// pow
468
469static float
470 _TG_ATTRS
471 __tg_pow(float __x, float __y) {return powf(__x, __y);}
472
473static double
474 _TG_ATTRS
475 __tg_pow(double __x, double __y) {return pow(__x, __y);}
476
477static long double
478 _TG_ATTRS
479 __tg_pow(long double __x, long double __y) {return powl(__x, __y);}
480
481static float _Complex
482 _TG_ATTRS
483 __tg_pow(float _Complex __x, float _Complex __y) {return cpowf(__x, __y);}
484
485static double _Complex
486 _TG_ATTRS
487 __tg_pow(double _Complex __x, double _Complex __y) {return cpow(__x, __y);}
488
489static long double _Complex
490 _TG_ATTRS
491 __tg_pow(long double _Complex __x, long double _Complex __y)
492 {return cpowl(__x, __y);}
493
494#undef pow
495#define pow(__x, __y) __tg_pow(__tg_promote2((__x), (__y))(__x), \
496 __tg_promote2((__x), (__y))(__y))
497
498// sqrt
499
500static float
501 _TG_ATTRS
502 __tg_sqrt(float __x) {return sqrtf(__x);}
503
504static double
505 _TG_ATTRS
506 __tg_sqrt(double __x) {return sqrt(__x);}
507
508static long double
509 _TG_ATTRS
510 __tg_sqrt(long double __x) {return sqrtl(__x);}
511
512static float _Complex
513 _TG_ATTRS
514 __tg_sqrt(float _Complex __x) {return csqrtf(__x);}
515
516static double _Complex
517 _TG_ATTRS
518 __tg_sqrt(double _Complex __x) {return csqrt(__x);}
519
520static long double _Complex
521 _TG_ATTRS
522 __tg_sqrt(long double _Complex __x) {return csqrtl(__x);}
523
524#undef sqrt
525#define sqrt(__x) __tg_sqrt(__tg_promote1((__x))(__x))
526
527// fabs
528
529static float
530 _TG_ATTRS
531 __tg_fabs(float __x) {return fabsf(__x);}
532
533static double
534 _TG_ATTRS
535 __tg_fabs(double __x) {return fabs(__x);}
536
537static long double
538 _TG_ATTRS
539 __tg_fabs(long double __x) {return fabsl(__x);}
540
541static float
542 _TG_ATTRS
543 __tg_fabs(float _Complex __x) {return cabsf(__x);}
544
545static double
546 _TG_ATTRS
547 __tg_fabs(double _Complex __x) {return cabs(__x);}
548
549static long double
550 _TG_ATTRS
551 __tg_fabs(long double _Complex __x) {return cabsl(__x);}
552
553#undef fabs
554#define fabs(__x) __tg_fabs(__tg_promote1((__x))(__x))
555
556// atan2
557
558static float
559 _TG_ATTRS
560 __tg_atan2(float __x, float __y) {return atan2f(__x, __y);}
561
562static double
563 _TG_ATTRS
564 __tg_atan2(double __x, double __y) {return atan2(__x, __y);}
565
566static long double
567 _TG_ATTRS
568 __tg_atan2(long double __x, long double __y) {return atan2l(__x, __y);}
569
570#undef atan2
571#define atan2(__x, __y) __tg_atan2(__tg_promote2((__x), (__y))(__x), \
572 __tg_promote2((__x), (__y))(__y))
573
574// cbrt
575
576static float
577 _TG_ATTRS
578 __tg_cbrt(float __x) {return cbrtf(__x);}
579
580static double
581 _TG_ATTRS
582 __tg_cbrt(double __x) {return cbrt(__x);}
583
584static long double
585 _TG_ATTRS
586 __tg_cbrt(long double __x) {return cbrtl(__x);}
587
588#undef cbrt
589#define cbrt(__x) __tg_cbrt(__tg_promote1((__x))(__x))
590
591// ceil
592
593static float
594 _TG_ATTRS
595 __tg_ceil(float __x) {return ceilf(__x);}
596
597static double
598 _TG_ATTRS
599 __tg_ceil(double __x) {return ceil(__x);}
600
601static long double
602 _TG_ATTRS
603 __tg_ceil(long double __x) {return ceill(__x);}
604
605#undef ceil
606#define ceil(__x) __tg_ceil(__tg_promote1((__x))(__x))
607
608// copysign
609
610static float
611 _TG_ATTRS
612 __tg_copysign(float __x, float __y) {return copysignf(__x, __y);}
613
614static double
615 _TG_ATTRS
616 __tg_copysign(double __x, double __y) {return copysign(__x, __y);}
617
618static long double
619 _TG_ATTRS
620 __tg_copysign(long double __x, long double __y) {return copysignl(__x, __y);}
621
622#undef copysign
623#define copysign(__x, __y) __tg_copysign(__tg_promote2((__x), (__y))(__x), \
624 __tg_promote2((__x), (__y))(__y))
625
626// erf
627
628static float
629 _TG_ATTRS
630 __tg_erf(float __x) {return erff(__x);}
631
632static double
633 _TG_ATTRS
634 __tg_erf(double __x) {return erf(__x);}
635
636static long double
637 _TG_ATTRS
638 __tg_erf(long double __x) {return erfl(__x);}
639
640#undef erf
641#define erf(__x) __tg_erf(__tg_promote1((__x))(__x))
642
643// erfc
644
645static float
646 _TG_ATTRS
647 __tg_erfc(float __x) {return erfcf(__x);}
648
649static double
650 _TG_ATTRS
651 __tg_erfc(double __x) {return erfc(__x);}
652
653static long double
654 _TG_ATTRS
655 __tg_erfc(long double __x) {return erfcl(__x);}
656
657#undef erfc
658#define erfc(__x) __tg_erfc(__tg_promote1((__x))(__x))
659
660// exp2
661
662static float
663 _TG_ATTRS
664 __tg_exp2(float __x) {return exp2f(__x);}
665
666static double
667 _TG_ATTRS
668 __tg_exp2(double __x) {return exp2(__x);}
669
670static long double
671 _TG_ATTRS
672 __tg_exp2(long double __x) {return exp2l(__x);}
673
674#undef exp2
675#define exp2(__x) __tg_exp2(__tg_promote1((__x))(__x))
676
677// expm1
678
679static float
680 _TG_ATTRS
681 __tg_expm1(float __x) {return expm1f(__x);}
682
683static double
684 _TG_ATTRS
685 __tg_expm1(double __x) {return expm1(__x);}
686
687static long double
688 _TG_ATTRS
689 __tg_expm1(long double __x) {return expm1l(__x);}
690
691#undef expm1
692#define expm1(__x) __tg_expm1(__tg_promote1((__x))(__x))
693
694// fdim
695
696static float
697 _TG_ATTRS
698 __tg_fdim(float __x, float __y) {return fdimf(__x, __y);}
699
700static double
701 _TG_ATTRS
702 __tg_fdim(double __x, double __y) {return fdim(__x, __y);}
703
704static long double
705 _TG_ATTRS
706 __tg_fdim(long double __x, long double __y) {return fdiml(__x, __y);}
707
708#undef fdim
709#define fdim(__x, __y) __tg_fdim(__tg_promote2((__x), (__y))(__x), \
710 __tg_promote2((__x), (__y))(__y))
711
712// floor
713
714static float
715 _TG_ATTRS
716 __tg_floor(float __x) {return floorf(__x);}
717
718static double
719 _TG_ATTRS
720 __tg_floor(double __x) {return floor(__x);}
721
722static long double
723 _TG_ATTRS
724 __tg_floor(long double __x) {return floorl(__x);}
725
726#undef floor
727#define floor(__x) __tg_floor(__tg_promote1((__x))(__x))
728
729// fma
730
731static float
732 _TG_ATTRS
733 __tg_fma(float __x, float __y, float __z)
734 {return fmaf(__x, __y, __z);}
735
736static double
737 _TG_ATTRS
738 __tg_fma(double __x, double __y, double __z)
739 {return fma(__x, __y, __z);}
740
741static long double
742 _TG_ATTRS
743 __tg_fma(long double __x,long double __y, long double __z)
744 {return fmal(__x, __y, __z);}
745
746#undef fma
747#define fma(__x, __y, __z) \
748 __tg_fma(__tg_promote3((__x), (__y), (__z))(__x), \
749 __tg_promote3((__x), (__y), (__z))(__y), \
750 __tg_promote3((__x), (__y), (__z))(__z))
751
752// fmax
753
754static float
755 _TG_ATTRS
756 __tg_fmax(float __x, float __y) {return fmaxf(__x, __y);}
757
758static double
759 _TG_ATTRS
760 __tg_fmax(double __x, double __y) {return fmax(__x, __y);}
761
762static long double
763 _TG_ATTRS
764 __tg_fmax(long double __x, long double __y) {return fmaxl(__x, __y);}
765
766#undef fmax
767#define fmax(__x, __y) __tg_fmax(__tg_promote2((__x), (__y))(__x), \
768 __tg_promote2((__x), (__y))(__y))
769
770// fmin
771
772static float
773 _TG_ATTRS
774 __tg_fmin(float __x, float __y) {return fminf(__x, __y);}
775
776static double
777 _TG_ATTRS
778 __tg_fmin(double __x, double __y) {return fmin(__x, __y);}
779
780static long double
781 _TG_ATTRS
782 __tg_fmin(long double __x, long double __y) {return fminl(__x, __y);}
783
784#undef fmin
785#define fmin(__x, __y) __tg_fmin(__tg_promote2((__x), (__y))(__x), \
786 __tg_promote2((__x), (__y))(__y))
787
788// fmod
789
790static float
791 _TG_ATTRS
792 __tg_fmod(float __x, float __y) {return fmodf(__x, __y);}
793
794static double
795 _TG_ATTRS
796 __tg_fmod(double __x, double __y) {return fmod(__x, __y);}
797
798static long double
799 _TG_ATTRS
800 __tg_fmod(long double __x, long double __y) {return fmodl(__x, __y);}
801
802#undef fmod
803#define fmod(__x, __y) __tg_fmod(__tg_promote2((__x), (__y))(__x), \
804 __tg_promote2((__x), (__y))(__y))
805
806// frexp
807
808static float
809 _TG_ATTRS
810 __tg_frexp(float __x, int* __y) {return frexpf(__x, __y);}
811
812static double
813 _TG_ATTRS
814 __tg_frexp(double __x, int* __y) {return frexp(__x, __y);}
815
816static long double
817 _TG_ATTRS
818 __tg_frexp(long double __x, int* __y) {return frexpl(__x, __y);}
819
820#undef frexp
821#define frexp(__x, __y) __tg_frexp(__tg_promote1((__x))(__x), __y)
822
823// hypot
824
825static float
826 _TG_ATTRS
827 __tg_hypot(float __x, float __y) {return hypotf(__x, __y);}
828
829static double
830 _TG_ATTRS
831 __tg_hypot(double __x, double __y) {return hypot(__x, __y);}
832
833static long double
834 _TG_ATTRS
835 __tg_hypot(long double __x, long double __y) {return hypotl(__x, __y);}
836
837#undef hypot
838#define hypot(__x, __y) __tg_hypot(__tg_promote2((__x), (__y))(__x), \
839 __tg_promote2((__x), (__y))(__y))
840
841// ilogb
842
843static int
844 _TG_ATTRS
845 __tg_ilogb(float __x) {return ilogbf(__x);}
846
847static int
848 _TG_ATTRS
849 __tg_ilogb(double __x) {return ilogb(__x);}
850
851static int
852 _TG_ATTRS
853 __tg_ilogb(long double __x) {return ilogbl(__x);}
854
855#undef ilogb
856#define ilogb(__x) __tg_ilogb(__tg_promote1((__x))(__x))
857
858// ldexp
859
860static float
861 _TG_ATTRS
862 __tg_ldexp(float __x, int __y) {return ldexpf(__x, __y);}
863
864static double
865 _TG_ATTRS
866 __tg_ldexp(double __x, int __y) {return ldexp(__x, __y);}
867
868static long double
869 _TG_ATTRS
870 __tg_ldexp(long double __x, int __y) {return ldexpl(__x, __y);}
871
872#undef ldexp
873#define ldexp(__x, __y) __tg_ldexp(__tg_promote1((__x))(__x), __y)
874
875// lgamma
876
877static float
878 _TG_ATTRS
879 __tg_lgamma(float __x) {return lgammaf(__x);}
880
881static double
882 _TG_ATTRS
883 __tg_lgamma(double __x) {return lgamma(__x);}
884
885static long double
886 _TG_ATTRS
887 __tg_lgamma(long double __x) {return lgammal(__x);}
888
889#undef lgamma
890#define lgamma(__x) __tg_lgamma(__tg_promote1((__x))(__x))
891
892// llrint
893
894static long long
895 _TG_ATTRS
896 __tg_llrint(float __x) {return llrintf(__x);}
897
898static long long
899 _TG_ATTRS
900 __tg_llrint(double __x) {return llrint(__x);}
901
902static long long
903 _TG_ATTRS
904 __tg_llrint(long double __x) {return llrintl(__x);}
905
906#undef llrint
907#define llrint(__x) __tg_llrint(__tg_promote1((__x))(__x))
908
909// llround
910
911static long long
912 _TG_ATTRS
913 __tg_llround(float __x) {return llroundf(__x);}
914
915static long long
916 _TG_ATTRS
917 __tg_llround(double __x) {return llround(__x);}
918
919static long long
920 _TG_ATTRS
921 __tg_llround(long double __x) {return llroundl(__x);}
922
923#undef llround
924#define llround(__x) __tg_llround(__tg_promote1((__x))(__x))
925
926// log10
927
928static float
929 _TG_ATTRS
930 __tg_log10(float __x) {return log10f(__x);}
931
932static double
933 _TG_ATTRS
934 __tg_log10(double __x) {return log10(__x);}
935
936static long double
937 _TG_ATTRS
938 __tg_log10(long double __x) {return log10l(__x);}
939
940#undef log10
941#define log10(__x) __tg_log10(__tg_promote1((__x))(__x))
942
943// log1p
944
945static float
946 _TG_ATTRS
947 __tg_log1p(float __x) {return log1pf(__x);}
948
949static double
950 _TG_ATTRS
951 __tg_log1p(double __x) {return log1p(__x);}
952
953static long double
954 _TG_ATTRS
955 __tg_log1p(long double __x) {return log1pl(__x);}
956
957#undef log1p
958#define log1p(__x) __tg_log1p(__tg_promote1((__x))(__x))
959
960// log2
961
962static float
963 _TG_ATTRS
964 __tg_log2(float __x) {return log2f(__x);}
965
966static double
967 _TG_ATTRS
968 __tg_log2(double __x) {return log2(__x);}
969
970static long double
971 _TG_ATTRS
972 __tg_log2(long double __x) {return log2l(__x);}
973
974#undef log2
975#define log2(__x) __tg_log2(__tg_promote1((__x))(__x))
976
977// logb
978
979static float
980 _TG_ATTRS
981 __tg_logb(float __x) {return logbf(__x);}
982
983static double
984 _TG_ATTRS
985 __tg_logb(double __x) {return logb(__x);}
986
987static long double
988 _TG_ATTRS
989 __tg_logb(long double __x) {return logbl(__x);}
990
991#undef logb
992#define logb(__x) __tg_logb(__tg_promote1((__x))(__x))
993
994// lrint
995
996static long
997 _TG_ATTRS
998 __tg_lrint(float __x) {return lrintf(__x);}
999
1000static long
1001 _TG_ATTRS
1002 __tg_lrint(double __x) {return lrint(__x);}
1003
1004static long
1005 _TG_ATTRS
1006 __tg_lrint(long double __x) {return lrintl(__x);}
1007
1008#undef lrint
1009#define lrint(__x) __tg_lrint(__tg_promote1((__x))(__x))
1010
1011// lround
1012
1013static long
1014 _TG_ATTRS
1015 __tg_lround(float __x) {return lroundf(__x);}
1016
1017static long
1018 _TG_ATTRS
1019 __tg_lround(double __x) {return lround(__x);}
1020
1021static long
1022 _TG_ATTRS
1023 __tg_lround(long double __x) {return lroundl(__x);}
1024
1025#undef lround
1026#define lround(__x) __tg_lround(__tg_promote1((__x))(__x))
1027
1028// nearbyint
1029
1030static float
1031 _TG_ATTRS
1032 __tg_nearbyint(float __x) {return nearbyintf(__x);}
1033
1034static double
1035 _TG_ATTRS
1036 __tg_nearbyint(double __x) {return nearbyint(__x);}
1037
1038static long double
1039 _TG_ATTRS
1040 __tg_nearbyint(long double __x) {return nearbyintl(__x);}
1041
1042#undef nearbyint
1043#define nearbyint(__x) __tg_nearbyint(__tg_promote1((__x))(__x))
1044
1045// nextafter
1046
1047static float
1048 _TG_ATTRS
1049 __tg_nextafter(float __x, float __y) {return nextafterf(__x, __y);}
1050
1051static double
1052 _TG_ATTRS
1053 __tg_nextafter(double __x, double __y) {return nextafter(__x, __y);}
1054
1055static long double
1056 _TG_ATTRS
1057 __tg_nextafter(long double __x, long double __y) {return nextafterl(__x, __y);}
1058
1059#undef nextafter
1060#define nextafter(__x, __y) __tg_nextafter(__tg_promote2((__x), (__y))(__x), \
1061 __tg_promote2((__x), (__y))(__y))
1062
1063// nexttoward
1064
1065static float
1066 _TG_ATTRS
1067 __tg_nexttoward(float __x, long double __y) {return nexttowardf(__x, __y);}
1068
1069static double
1070 _TG_ATTRS
1071 __tg_nexttoward(double __x, long double __y) {return nexttoward(__x, __y);}
1072
1073static long double
1074 _TG_ATTRS
1075 __tg_nexttoward(long double __x, long double __y) {return nexttowardl(__x, __y);}
1076
1077#undef nexttoward
1078#define nexttoward(__x, __y) __tg_nexttoward(__tg_promote1((__x))(__x), (__y))
1079
1080// remainder
1081
1082static float
1083 _TG_ATTRS
1084 __tg_remainder(float __x, float __y) {return remainderf(__x, __y);}
1085
1086static double
1087 _TG_ATTRS
1088 __tg_remainder(double __x, double __y) {return remainder(__x, __y);}
1089
1090static long double
1091 _TG_ATTRS
1092 __tg_remainder(long double __x, long double __y) {return remainderl(__x, __y);}
1093
1094#undef remainder
1095#define remainder(__x, __y) __tg_remainder(__tg_promote2((__x), (__y))(__x), \
1096 __tg_promote2((__x), (__y))(__y))
1097
1098// remquo
1099
1100static float
1101 _TG_ATTRS
1102 __tg_remquo(float __x, float __y, int* __z)
1103 {return remquof(__x, __y, __z);}
1104
1105static double
1106 _TG_ATTRS
1107 __tg_remquo(double __x, double __y, int* __z)
1108 {return remquo(__x, __y, __z);}
1109
1110static long double
1111 _TG_ATTRS
1112 __tg_remquo(long double __x,long double __y, int* __z)
1113 {return remquol(__x, __y, __z);}
1114
1115#undef remquo
1116#define remquo(__x, __y, __z) \
1117 __tg_remquo(__tg_promote2((__x), (__y))(__x), \
1118 __tg_promote2((__x), (__y))(__y), \
1119 (__z))
1120
1121// rint
1122
1123static float
1124 _TG_ATTRS
1125 __tg_rint(float __x) {return rintf(__x);}
1126
1127static double
1128 _TG_ATTRS
1129 __tg_rint(double __x) {return rint(__x);}
1130
1131static long double
1132 _TG_ATTRS
1133 __tg_rint(long double __x) {return rintl(__x);}
1134
1135#undef rint
1136#define rint(__x) __tg_rint(__tg_promote1((__x))(__x))
1137
1138// round
1139
1140static float
1141 _TG_ATTRS
1142 __tg_round(float __x) {return roundf(__x);}
1143
1144static double
1145 _TG_ATTRS
1146 __tg_round(double __x) {return round(__x);}
1147
1148static long double
1149 _TG_ATTRS
1150 __tg_round(long double __x) {return roundl(__x);}
1151
1152#undef round
1153#define round(__x) __tg_round(__tg_promote1((__x))(__x))
1154
1155// scalbn
1156
1157static float
1158 _TG_ATTRS
1159 __tg_scalbn(float __x, int __y) {return scalbnf(__x, __y);}
1160
1161static double
1162 _TG_ATTRS
1163 __tg_scalbn(double __x, int __y) {return scalbn(__x, __y);}
1164
1165static long double
1166 _TG_ATTRS
1167 __tg_scalbn(long double __x, int __y) {return scalbnl(__x, __y);}
1168
1169#undef scalbn
1170#define scalbn(__x, __y) __tg_scalbn(__tg_promote1((__x))(__x), __y)
1171
1172// scalbln
1173
1174static float
1175 _TG_ATTRS
1176 __tg_scalbln(float __x, long __y) {return scalblnf(__x, __y);}
1177
1178static double
1179 _TG_ATTRS
1180 __tg_scalbln(double __x, long __y) {return scalbln(__x, __y);}
1181
1182static long double
1183 _TG_ATTRS
1184 __tg_scalbln(long double __x, long __y) {return scalblnl(__x, __y);}
1185
1186#undef scalbln
1187#define scalbln(__x, __y) __tg_scalbln(__tg_promote1((__x))(__x), __y)
1188
1189// tgamma
1190
1191static float
1192 _TG_ATTRS
1193 __tg_tgamma(float __x) {return tgammaf(__x);}
1194
1195static double
1196 _TG_ATTRS
1197 __tg_tgamma(double __x) {return tgamma(__x);}
1198
1199static long double
1200 _TG_ATTRS
1201 __tg_tgamma(long double __x) {return tgammal(__x);}
1202
1203#undef tgamma
1204#define tgamma(__x) __tg_tgamma(__tg_promote1((__x))(__x))
1205
1206// trunc
1207
1208static float
1209 _TG_ATTRS
1210 __tg_trunc(float __x) {return truncf(__x);}
1211
1212static double
1213 _TG_ATTRS
1214 __tg_trunc(double __x) {return trunc(__x);}
1215
1216static long double
1217 _TG_ATTRS
1218 __tg_trunc(long double __x) {return truncl(__x);}
1219
1220#undef trunc
1221#define trunc(__x) __tg_trunc(__tg_promote1((__x))(__x))
1222
1223// carg
1224
1225static float
1226 _TG_ATTRS
1227 __tg_carg(float __x) {return atan2f(0.F, __x);}
1228
1229static double
1230 _TG_ATTRS
1231 __tg_carg(double __x) {return atan2(0., __x);}
1232
1233static long double
1234 _TG_ATTRS
1235 __tg_carg(long double __x) {return atan2l(0.L, __x);}
1236
1237static float
1238 _TG_ATTRS
1239 __tg_carg(float _Complex __x) {return cargf(__x);}
1240
1241static double
1242 _TG_ATTRS
1243 __tg_carg(double _Complex __x) {return carg(__x);}
1244
1245static long double
1246 _TG_ATTRS
1247 __tg_carg(long double _Complex __x) {return cargl(__x);}
1248
1249#undef carg
1250#define carg(__x) __tg_carg(__tg_promote1((__x))(__x))
1251
1252// cimag
1253
1254static float
1255 _TG_ATTRS
1256 __tg_cimag(float __x) {return 0;}
1257
1258static double
1259 _TG_ATTRS
1260 __tg_cimag(double __x) {return 0;}
1261
1262static long double
1263 _TG_ATTRS
1264 __tg_cimag(long double __x) {return 0;}
1265
1266static float
1267 _TG_ATTRS
1268 __tg_cimag(float _Complex __x) {return cimagf(__x);}
1269
1270static double
1271 _TG_ATTRS
1272 __tg_cimag(double _Complex __x) {return cimag(__x);}
1273
1274static long double
1275 _TG_ATTRS
1276 __tg_cimag(long double _Complex __x) {return cimagl(__x);}
1277
1278#undef cimag
1279#define cimag(__x) __tg_cimag(__tg_promote1((__x))(__x))
1280
1281// conj
1282
1283static float _Complex
1284 _TG_ATTRS
1285 __tg_conj(float __x) {return __x;}
1286
1287static double _Complex
1288 _TG_ATTRS
1289 __tg_conj(double __x) {return __x;}
1290
1291static long double _Complex
1292 _TG_ATTRS
1293 __tg_conj(long double __x) {return __x;}
1294
1295static float _Complex
1296 _TG_ATTRS
1297 __tg_conj(float _Complex __x) {return conjf(__x);}
1298
1299static double _Complex
1300 _TG_ATTRS
1301 __tg_conj(double _Complex __x) {return conj(__x);}
1302
1303static long double _Complex
1304 _TG_ATTRS
1305 __tg_conj(long double _Complex __x) {return conjl(__x);}
1306
1307#undef conj
1308#define conj(__x) __tg_conj(__tg_promote1((__x))(__x))
1309
1310// cproj
1311
1312static float _Complex
1313 _TG_ATTRS
1314 __tg_cproj(float __x) {return cprojf(__x);}
1315
1316static double _Complex
1317 _TG_ATTRS
1318 __tg_cproj(double __x) {return cproj(__x);}
1319
1320static long double _Complex
1321 _TG_ATTRS
1322 __tg_cproj(long double __x) {return cprojl(__x);}
1323
1324static float _Complex
1325 _TG_ATTRS
1326 __tg_cproj(float _Complex __x) {return cprojf(__x);}
1327
1328static double _Complex
1329 _TG_ATTRS
1330 __tg_cproj(double _Complex __x) {return cproj(__x);}
1331
1332static long double _Complex
1333 _TG_ATTRS
1334 __tg_cproj(long double _Complex __x) {return cprojl(__x);}
1335
1336#undef cproj
1337#define cproj(__x) __tg_cproj(__tg_promote1((__x))(__x))
1338
1339// creal
1340
1341static float
1342 _TG_ATTRS
1343 __tg_creal(float __x) {return __x;}
1344
1345static double
1346 _TG_ATTRS
1347 __tg_creal(double __x) {return __x;}
1348
1349static long double
1350 _TG_ATTRS
1351 __tg_creal(long double __x) {return __x;}
1352
1353static float
1354 _TG_ATTRS
1355 __tg_creal(float _Complex __x) {return crealf(__x);}
1356
1357static double
1358 _TG_ATTRS
1359 __tg_creal(double _Complex __x) {return creal(__x);}
1360
1361static long double
1362 _TG_ATTRS
1363 __tg_creal(long double _Complex __x) {return creall(__x);}
1364
1365#undef creal
1366#define creal(__x) __tg_creal(__tg_promote1((__x))(__x))
1367
1368#undef _TG_ATTRSp
1369#undef _TG_ATTRS
1370
1371#endif /* __cplusplus */
1372#endif /* __TGMATH_H */
lib/libc/include/x86_64-macos-gnu/time.h created+208
......@@ -0,0 +1,208 @@
1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24 * Copyright (c) 1989, 1993
25 * The Regents of the University of California. All rights reserved.
26 * (c) UNIX System Laboratories, Inc.
27 * All or some portions of this file are derived from material licensed
28 * to the University of California by American Telephone and Telegraph
29 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
30 * the permission of UNIX System Laboratories, Inc.
31 *
32 * Redistribution and use in source and binary forms, with or without
33 * modification, are permitted provided that the following conditions
34 * are met:
35 * 1. Redistributions of source code must retain the above copyright
36 * notice, this list of conditions and the following disclaimer.
37 * 2. Redistributions in binary form must reproduce the above copyright
38 * notice, this list of conditions and the following disclaimer in the
39 * documentation and/or other materials provided with the distribution.
40 * 3. All advertising materials mentioning features or use of this software
41 * must display the following acknowledgement:
42 * This product includes software developed by the University of
43 * California, Berkeley and its contributors.
44 * 4. Neither the name of the University nor the names of its contributors
45 * may be used to endorse or promote products derived from this software
46 * without specific prior written permission.
47 *
48 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
49 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
50 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
51 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
52 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
53 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
54 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
55 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
56 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
57 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
58 * SUCH DAMAGE.
59 *
60 * @(#)time.h 8.3 (Berkeley) 1/21/94
61 */
62
63#ifndef _TIME_H_
64#define _TIME_H_
65
66#include <_types.h>
67#include <sys/cdefs.h>
68#include <Availability.h>
69#include <sys/_types/_clock_t.h>
70#include <sys/_types/_null.h>
71#include <sys/_types/_size_t.h>
72#include <sys/_types/_time_t.h>
73#include <sys/_types/_timespec.h>
74
75struct tm {
76 int tm_sec; /* seconds after the minute [0-60] */
77 int tm_min; /* minutes after the hour [0-59] */
78 int tm_hour; /* hours since midnight [0-23] */
79 int tm_mday; /* day of the month [1-31] */
80 int tm_mon; /* months since January [0-11] */
81 int tm_year; /* years since 1900 */
82 int tm_wday; /* days since Sunday [0-6] */
83 int tm_yday; /* days since January 1 [0-365] */
84 int tm_isdst; /* Daylight Savings Time flag */
85 long tm_gmtoff; /* offset from UTC in seconds */
86 char *tm_zone; /* timezone abbreviation */
87};
88
89#if __DARWIN_UNIX03
90#define CLOCKS_PER_SEC 1000000 /* [XSI] */
91#else /* !__DARWIN_UNIX03 */
92#include <machine/_limits.h> /* Include file containing CLK_TCK. */
93
94#define CLOCKS_PER_SEC (__DARWIN_CLK_TCK)
95#endif /* __DARWIN_UNIX03 */
96
97#ifndef _ANSI_SOURCE
98extern char *tzname[];
99#endif
100
101extern int getdate_err;
102#if __DARWIN_UNIX03
103extern long timezone __DARWIN_ALIAS(timezone);
104#endif /* __DARWIN_UNIX03 */
105extern int daylight;
106
107__BEGIN_DECLS
108char *asctime(const struct tm *);
109clock_t clock(void) __DARWIN_ALIAS(clock);
110char *ctime(const time_t *);
111double difftime(time_t, time_t);
112struct tm *getdate(const char *);
113struct tm *gmtime(const time_t *);
114struct tm *localtime(const time_t *);
115time_t mktime(struct tm *) __DARWIN_ALIAS(mktime);
116size_t strftime(char * __restrict, size_t, const char * __restrict, const struct tm * __restrict) __DARWIN_ALIAS(strftime);
117char *strptime(const char * __restrict, const char * __restrict, struct tm * __restrict) __DARWIN_ALIAS(strptime);
118time_t time(time_t *);
119
120#ifndef _ANSI_SOURCE
121void tzset(void);
122#endif /* not ANSI */
123
124/* [TSF] Thread safe functions */
125char *asctime_r(const struct tm * __restrict, char * __restrict);
126char *ctime_r(const time_t *, char *);
127struct tm *gmtime_r(const time_t * __restrict, struct tm * __restrict);
128struct tm *localtime_r(const time_t * __restrict, struct tm * __restrict);
129
130#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
131time_t posix2time(time_t);
132#if !__DARWIN_UNIX03
133char *timezone(int, int);
134#endif /* !__DARWIN_UNIX03 */
135void tzsetwall(void);
136time_t time2posix(time_t);
137time_t timelocal(struct tm * const);
138time_t timegm(struct tm * const);
139#endif /* neither ANSI nor POSIX */
140
141#if !defined(_ANSI_SOURCE)
142int nanosleep(const struct timespec *__rqtp, struct timespec *__rmtp) __DARWIN_ALIAS_C(nanosleep);
143#endif
144
145#if !defined(_DARWIN_FEATURE_CLOCK_GETTIME) || _DARWIN_FEATURE_CLOCK_GETTIME != 0
146#if __DARWIN_C_LEVEL >= 199309L
147#if __has_feature(enumerator_attributes)
148#define __CLOCK_AVAILABILITY __OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0)
149#else
150#define __CLOCK_AVAILABILITY
151#endif
152
153typedef enum {
154_CLOCK_REALTIME __CLOCK_AVAILABILITY = 0,
155#define CLOCK_REALTIME _CLOCK_REALTIME
156_CLOCK_MONOTONIC __CLOCK_AVAILABILITY = 6,
157#define CLOCK_MONOTONIC _CLOCK_MONOTONIC
158#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
159_CLOCK_MONOTONIC_RAW __CLOCK_AVAILABILITY = 4,
160#define CLOCK_MONOTONIC_RAW _CLOCK_MONOTONIC_RAW
161_CLOCK_MONOTONIC_RAW_APPROX __CLOCK_AVAILABILITY = 5,
162#define CLOCK_MONOTONIC_RAW_APPROX _CLOCK_MONOTONIC_RAW_APPROX
163_CLOCK_UPTIME_RAW __CLOCK_AVAILABILITY = 8,
164#define CLOCK_UPTIME_RAW _CLOCK_UPTIME_RAW
165_CLOCK_UPTIME_RAW_APPROX __CLOCK_AVAILABILITY = 9,
166#define CLOCK_UPTIME_RAW_APPROX _CLOCK_UPTIME_RAW_APPROX
167#endif
168_CLOCK_PROCESS_CPUTIME_ID __CLOCK_AVAILABILITY = 12,
169#define CLOCK_PROCESS_CPUTIME_ID _CLOCK_PROCESS_CPUTIME_ID
170_CLOCK_THREAD_CPUTIME_ID __CLOCK_AVAILABILITY = 16
171#define CLOCK_THREAD_CPUTIME_ID _CLOCK_THREAD_CPUTIME_ID
172} clockid_t;
173
174__CLOCK_AVAILABILITY
175int clock_getres(clockid_t __clock_id, struct timespec *__res);
176
177__CLOCK_AVAILABILITY
178int clock_gettime(clockid_t __clock_id, struct timespec *__tp);
179
180#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
181__CLOCK_AVAILABILITY
182__uint64_t clock_gettime_nsec_np(clockid_t __clock_id);
183#endif
184
185__OSX_AVAILABLE(10.12) __IOS_PROHIBITED
186__TVOS_PROHIBITED __WATCHOS_PROHIBITED
187int clock_settime(clockid_t __clock_id, const struct timespec *__tp);
188
189#undef __CLOCK_AVAILABILITY
190#endif /* __DARWIN_C_LEVEL */
191#endif /* _DARWIN_FEATURE_CLOCK_GETTIME */
192
193#if (__DARWIN_C_LEVEL >= __DARWIN_C_FULL) && \
194 ((defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \
195 (defined(__cplusplus) && __cplusplus >= 201703L))
196/* ISO/IEC 9899:201x 7.27.2.5 The timespec_get function */
197#define TIME_UTC 1 /* time elapsed since epoch */
198__API_AVAILABLE(macosx(10.15), ios(13.0), tvos(13.0), watchos(6.0))
199int timespec_get(struct timespec *ts, int base);
200#endif
201
202__END_DECLS
203
204#ifdef _USE_EXTENDED_LOCALES_
205#include <xlocale/_time.h>
206#endif /* _USE_EXTENDED_LOCALES_ */
207
208#endif /* !_TIME_H_ */
lib/libc/include/x86_64-macos-gnu/wchar.h created+231
......@@ -0,0 +1,231 @@
1/*-
2 * Copyright (c)1999 Citrus Project,
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: /repoman/r/ncvs/src/include/wchar.h,v 1.34 2003/03/13 06:29:53 tjr Exp $
27 */
28
29/*-
30 * Copyright (c) 1999, 2000 The NetBSD Foundation, Inc.
31 * All rights reserved.
32 *
33 * This code is derived from software contributed to The NetBSD Foundation
34 * by Julian Coleman.
35 *
36 * Redistribution and use in source and binary forms, with or without
37 * modification, are permitted provided that the following conditions
38 * are met:
39 * 1. Redistributions of source code must retain the above copyright
40 * notice, this list of conditions and the following disclaimer.
41 * 2. Redistributions in binary form must reproduce the above copyright
42 * notice, this list of conditions and the following disclaimer in the
43 * documentation and/or other materials provided with the distribution.
44 * 3. All advertising materials mentioning features or use of this software
45 * must display the following acknowledgement:
46 * This product includes software developed by the NetBSD
47 * Foundation, Inc. and its contributors.
48 * 4. Neither the name of The NetBSD Foundation nor the names of its
49 * contributors may be used to endorse or promote products derived
50 * from this software without specific prior written permission.
51 *
52 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
53 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
54 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
55 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
56 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
57 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
58 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
59 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
60 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
61 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
62 * POSSIBILITY OF SUCH DAMAGE.
63 *
64 * $NetBSD: wchar.h,v 1.8 2000/12/22 05:31:42 itojun Exp $
65 */
66
67#ifndef _WCHAR_H_
68#define _WCHAR_H_
69
70#include <_types.h>
71#include <sys/cdefs.h>
72#include <Availability.h>
73
74#include <sys/_types/_null.h>
75#include <sys/_types/_size_t.h>
76#include <sys/_types/_mbstate_t.h>
77#include <sys/_types/_ct_rune_t.h>
78#include <sys/_types/_rune_t.h>
79#include <sys/_types/_wchar_t.h>
80
81#ifndef WCHAR_MIN
82#define WCHAR_MIN __DARWIN_WCHAR_MIN
83#endif
84
85#ifndef WCHAR_MAX
86#define WCHAR_MAX __DARWIN_WCHAR_MAX
87#endif
88
89#include <stdarg.h>
90#include <stdio.h>
91#include <time.h>
92#include <_wctype.h>
93
94
95/* Initially added in Issue 4 */
96__BEGIN_DECLS
97wint_t btowc(int);
98wint_t fgetwc(FILE *);
99wchar_t *fgetws(wchar_t * __restrict, int, FILE * __restrict);
100wint_t fputwc(wchar_t, FILE *);
101int fputws(const wchar_t * __restrict, FILE * __restrict);
102int fwide(FILE *, int);
103int fwprintf(FILE * __restrict, const wchar_t * __restrict, ...);
104int fwscanf(FILE * __restrict, const wchar_t * __restrict, ...);
105wint_t getwc(FILE *);
106wint_t getwchar(void);
107size_t mbrlen(const char * __restrict, size_t, mbstate_t * __restrict);
108size_t mbrtowc(wchar_t * __restrict, const char * __restrict, size_t,
109 mbstate_t * __restrict);
110int mbsinit(const mbstate_t *);
111size_t mbsrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
112 mbstate_t * __restrict);
113wint_t putwc(wchar_t, FILE *);
114wint_t putwchar(wchar_t);
115int swprintf(wchar_t * __restrict, size_t, const wchar_t * __restrict, ...);
116int swscanf(const wchar_t * __restrict, const wchar_t * __restrict, ...);
117wint_t ungetwc(wint_t, FILE *);
118int vfwprintf(FILE * __restrict, const wchar_t * __restrict,
119 __darwin_va_list);
120int vswprintf(wchar_t * __restrict, size_t, const wchar_t * __restrict,
121 __darwin_va_list);
122int vwprintf(const wchar_t * __restrict, __darwin_va_list);
123size_t wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict);
124wchar_t *wcscat(wchar_t * __restrict, const wchar_t * __restrict);
125wchar_t *wcschr(const wchar_t *, wchar_t);
126int wcscmp(const wchar_t *, const wchar_t *);
127int wcscoll(const wchar_t *, const wchar_t *);
128wchar_t *wcscpy(wchar_t * __restrict, const wchar_t * __restrict);
129size_t wcscspn(const wchar_t *, const wchar_t *);
130size_t wcsftime(wchar_t * __restrict, size_t, const wchar_t * __restrict,
131 const struct tm * __restrict) __DARWIN_ALIAS(wcsftime);
132size_t wcslen(const wchar_t *);
133wchar_t *wcsncat(wchar_t * __restrict, const wchar_t * __restrict, size_t);
134int wcsncmp(const wchar_t *, const wchar_t *, size_t);
135wchar_t *wcsncpy(wchar_t * __restrict , const wchar_t * __restrict, size_t);
136wchar_t *wcspbrk(const wchar_t *, const wchar_t *);
137wchar_t *wcsrchr(const wchar_t *, wchar_t);
138size_t wcsrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
139 mbstate_t * __restrict);
140size_t wcsspn(const wchar_t *, const wchar_t *);
141wchar_t *wcsstr(const wchar_t * __restrict, const wchar_t * __restrict);
142size_t wcsxfrm(wchar_t * __restrict, const wchar_t * __restrict, size_t);
143int wctob(wint_t);
144double wcstod(const wchar_t * __restrict, wchar_t ** __restrict);
145wchar_t *wcstok(wchar_t * __restrict, const wchar_t * __restrict,
146 wchar_t ** __restrict);
147long wcstol(const wchar_t * __restrict, wchar_t ** __restrict, int);
148unsigned long
149 wcstoul(const wchar_t * __restrict, wchar_t ** __restrict, int);
150wchar_t *wmemchr(const wchar_t *, wchar_t, size_t);
151int wmemcmp(const wchar_t *, const wchar_t *, size_t);
152wchar_t *wmemcpy(wchar_t * __restrict, const wchar_t * __restrict, size_t);
153wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t);
154wchar_t *wmemset(wchar_t *, wchar_t, size_t);
155int wprintf(const wchar_t * __restrict, ...);
156int wscanf(const wchar_t * __restrict, ...);
157int wcswidth(const wchar_t *, size_t);
158int wcwidth(wchar_t);
159__END_DECLS
160
161
162
163/* Additional functionality provided by:
164 * POSIX.1-2001
165 * ISO C99
166 */
167
168#if __DARWIN_C_LEVEL >= 200112L || defined(_C99_SOURCE) || defined(__cplusplus)
169__BEGIN_DECLS
170int vfwscanf(FILE * __restrict, const wchar_t * __restrict,
171 __darwin_va_list);
172int vswscanf(const wchar_t * __restrict, const wchar_t * __restrict,
173 __darwin_va_list);
174int vwscanf(const wchar_t * __restrict, __darwin_va_list);
175float wcstof(const wchar_t * __restrict, wchar_t ** __restrict);
176long double
177 wcstold(const wchar_t * __restrict, wchar_t ** __restrict);
178#if !__DARWIN_NO_LONG_LONG
179long long
180 wcstoll(const wchar_t * __restrict, wchar_t ** __restrict, int);
181unsigned long long
182 wcstoull(const wchar_t * __restrict, wchar_t ** __restrict, int);
183#endif /* !__DARWIN_NO_LONG_LONG */
184__END_DECLS
185#endif
186
187
188
189/* Additional functionality provided by:
190 * POSIX.1-2008
191 */
192
193#if __DARWIN_C_LEVEL >= 200809L
194__BEGIN_DECLS
195size_t mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
196 size_t, mbstate_t * __restrict);
197wchar_t *wcpcpy(wchar_t * __restrict, const wchar_t * __restrict) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
198wchar_t *wcpncpy(wchar_t * __restrict, const wchar_t * __restrict, size_t) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
199wchar_t *wcsdup(const wchar_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
200int wcscasecmp(const wchar_t *, const wchar_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
201int wcsncasecmp(const wchar_t *, const wchar_t *, size_t n) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
202size_t wcsnlen(const wchar_t *, size_t) __pure __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
203size_t wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
204 size_t, mbstate_t * __restrict);
205FILE *open_wmemstream(wchar_t ** __bufp, size_t * __sizep) __API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
206__END_DECLS
207#endif /* __DARWIN_C_LEVEL >= 200809L */
208
209
210
211/* Darwin extensions */
212
213#if __DARWIN_C_LEVEL >= __DARWIN_C_FULL
214__BEGIN_DECLS
215wchar_t *fgetwln(FILE * __restrict, size_t *) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3);
216size_t wcslcat(wchar_t *, const wchar_t *, size_t);
217size_t wcslcpy(wchar_t *, const wchar_t *, size_t);
218__END_DECLS
219#endif /* __DARWIN_C_LEVEL >= __DARWIN_C_FULL */
220
221
222/* Poison the following routines if -fshort-wchar is set */
223#if !defined(__cplusplus) && defined(__WCHAR_MAX__) && __WCHAR_MAX__ <= 0xffffU
224#pragma GCC poison fgetwln fgetws fputwc fputws fwprintf fwscanf mbrtowc mbsnrtowcs mbsrtowcs putwc putwchar swprintf swscanf vfwprintf vfwscanf vswprintf vswscanf vwprintf vwscanf wcrtomb wcscat wcschr wcscmp wcscoll wcscpy wcscspn wcsftime wcsftime wcslcat wcslcpy wcslen wcsncat wcsncmp wcsncpy wcsnrtombs wcspbrk wcsrchr wcsrtombs wcsspn wcsstr wcstod wcstof wcstok wcstol wcstold wcstoll wcstoul wcstoull wcswidth wcsxfrm wcwidth wmemchr wmemcmp wmemcpy wmemmove wmemset wprintf wscanf
225#endif
226
227#ifdef _USE_EXTENDED_LOCALES_
228#include <xlocale/_wchar.h>
229#endif /* _USE_EXTENDED_LOCALES_ */
230
231#endif /* !_WCHAR_H_ */
lib/libc/include/x86_64-macos-gnu/wctype.h created+130
......@@ -0,0 +1,130 @@
1/*-
2 * Copyright (c)1999 Citrus Project,
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * citrus Id: wctype.h,v 1.4 2000/12/21 01:50:21 itojun Exp
27 * $NetBSD: wctype.h,v 1.3 2000/12/22 14:16:16 itojun Exp $
28 * $FreeBSD: /repoman/r/ncvs/src/include/wctype.h,v 1.10 2002/08/21 16:19:55 mike Exp $
29 */
30
31#ifndef _WCTYPE_H_
32#define _WCTYPE_H_
33
34#include <sys/cdefs.h>
35#include <_types.h>
36#include <_types/_wctrans_t.h>
37
38#define __DARWIN_WCTYPE_TOP_inline __header_inline
39
40#include <_wctype.h>
41#include <ctype.h>
42
43/*
44 * Use inline functions if we are allowed to and the compiler supports them.
45 */
46#if !defined(_DONT_USE_CTYPE_INLINE_) && \
47 (defined(_USE_CTYPE_INLINE_) || defined(__GNUC__) || defined(__cplusplus))
48
49__DARWIN_WCTYPE_TOP_inline int
50iswblank(wint_t _wc)
51{
52 return (__istype(_wc, _CTYPE_B));
53}
54
55#if !defined(_ANSI_SOURCE)
56__DARWIN_WCTYPE_TOP_inline int
57iswascii(wint_t _wc)
58{
59 return ((_wc & ~0x7F) == 0);
60}
61
62__DARWIN_WCTYPE_TOP_inline int
63iswhexnumber(wint_t _wc)
64{
65 return (__istype(_wc, _CTYPE_X));
66}
67
68__DARWIN_WCTYPE_TOP_inline int
69iswideogram(wint_t _wc)
70{
71 return (__istype(_wc, _CTYPE_I));
72}
73
74__DARWIN_WCTYPE_TOP_inline int
75iswnumber(wint_t _wc)
76{
77 return (__istype(_wc, _CTYPE_D));
78}
79
80__DARWIN_WCTYPE_TOP_inline int
81iswphonogram(wint_t _wc)
82{
83 return (__istype(_wc, _CTYPE_Q));
84}
85
86__DARWIN_WCTYPE_TOP_inline int
87iswrune(wint_t _wc)
88{
89 return (__istype(_wc, 0xFFFFFFF0L));
90}
91
92__DARWIN_WCTYPE_TOP_inline int
93iswspecial(wint_t _wc)
94{
95 return (__istype(_wc, _CTYPE_T));
96}
97#endif /* !_ANSI_SOURCE */
98
99#else /* not using inlines */
100
101__BEGIN_DECLS
102int iswblank(wint_t);
103
104#if !defined(_ANSI_SOURCE)
105wint_t iswascii(wint_t);
106wint_t iswhexnumber(wint_t);
107wint_t iswideogram(wint_t);
108wint_t iswnumber(wint_t);
109wint_t iswphonogram(wint_t);
110wint_t iswrune(wint_t);
111wint_t iswspecial(wint_t);
112#endif
113__END_DECLS
114
115#endif /* using inlines */
116
117__BEGIN_DECLS
118#if !defined(_ANSI_SOURCE) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))
119wint_t nextwctype(wint_t, wctype_t);
120#endif
121wint_t towctrans(wint_t, wctrans_t);
122wctrans_t
123 wctrans(const char *);
124__END_DECLS
125
126#ifdef _USE_EXTENDED_LOCALES_
127#include <xlocale/_wctype.h>
128#endif /* _USE_EXTENDED_LOCALES_ */
129
130#endif /* _WCTYPE_H_ */
src/target.zig+1
......@@ -54,6 +54,7 @@ pub const available_libcs = [_]ArchOsAbi{
5454 .{ .arch = .x86_64, .os = .linux, .abi = .gnux32 },
5555 .{ .arch = .x86_64, .os = .linux, .abi = .musl },
5656 .{ .arch = .x86_64, .os = .windows, .abi = .gnu },
57 .{ .arch = .x86_64, .os = .macos, .abi = .gnu },
5758};
5859
5960pub fn libCGenericName(target: std.Target) [:0]const u8 {