stdio_darwin_amd64.go 92 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929
  1. // Code generated by 'ccgo stdio/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -ignore-unsupported-alignment -o stdio/stdio_darwin_amd64.go -pkgname stdio', DO NOT EDIT.
  2. package stdio
  3. import (
  4. "math"
  5. "reflect"
  6. "sync/atomic"
  7. "unsafe"
  8. )
  9. var _ = math.Pi
  10. var _ reflect.Kind
  11. var _ atomic.Value
  12. var _ unsafe.Pointer
  13. const (
  14. BUFSIZ = 1024 // stdio.h:103:1:
  15. EOF = -1 // stdio.h:104:1:
  16. FILENAME_MAX = 1024 // stdio.h:108:1:
  17. FOPEN_MAX = 20 // stdio.h:107:1:
  18. L_ctermid = 1024 // stdio.h:202:1:
  19. L_tmpnam = 1024 // stdio.h:114:1:
  20. P_tmpdir = "/var/tmp/" // stdio.h:112:1:
  21. RENAME_EXCL = 0x00000004 // stdio.h:45:1:
  22. RENAME_SECLUDE = 0x00000001 // stdio.h:43:1:
  23. RENAME_SWAP = 0x00000002 // stdio.h:44:1:
  24. SEEK_CUR = 1 // stdio.h:121:1:
  25. SEEK_END = 2 // stdio.h:124:1:
  26. SEEK_SET = 0 // stdio.h:118:1:
  27. TMP_MAX = 308915776 // stdio.h:115:1:
  28. X_BSD_I386__TYPES_H_ = 0 // _types.h:29:1:
  29. X_BSD_MACHINE_TYPES_H_ = 0 // types.h:32:1:
  30. X_BSD_MACHINE__TYPES_H_ = 0 // _types.h:29:1:
  31. X_CDEFS_H_ = 0 // cdefs.h:68:1:
  32. X_CTERMID_H_ = 0 // _ctermid.h:25:1:
  33. X_DARWIN_FEATURE_64_BIT_INODE = 1 // cdefs.h:745:1:
  34. X_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE = 1 // cdefs.h:771:1:
  35. X_DARWIN_FEATURE_UNIX_CONFORMANCE = 3 // cdefs.h:779:1:
  36. X_FILE_OFFSET_BITS = 64 // <builtin>:25:1:
  37. X_FORTIFY_SOURCE = 2 // _types.h:65:1:
  38. X_FSTDIO = 0 // _stdio.h:83:1:
  39. X_INT16_T = 0 // _int16_t.h:29:1:
  40. X_INT32_T = 0 // _int32_t.h:29:1:
  41. X_INT64_T = 0 // _int64_t.h:29:1:
  42. X_INT8_T = 0 // _int8_t.h:29:1:
  43. X_INTPTR_T = 0 // _intptr_t.h:29:1:
  44. X_IOFBF = 0 // stdio.h:99:1:
  45. X_IOLBF = 1 // stdio.h:100:1:
  46. X_IONBF = 2 // stdio.h:101:1:
  47. X_LP64 = 1 // <predefined>:1:1:
  48. X_MACHTYPES_H_ = 0 // types.h:67:1:
  49. X_Nonnull = 0 // cdefs.h:243:1:
  50. X_Null_unspecified = 0 // cdefs.h:246:1:
  51. X_Nullable = 0 // cdefs.h:240:1:
  52. X_OFF_T = 0 // _off_t.h:29:1:
  53. X_SECURE__COMMON_H_ = 0 // _common.h:25:1:
  54. X_SECURE__STDIO_H_ = 0 // _stdio.h:29:1:
  55. X_SIZE_T = 0 // _size_t.h:29:1:
  56. X_SSIZE_T = 0 // _ssize_t.h:29:1:
  57. X_STDIO_H_ = 0 // stdio.h:62:1:
  58. X_SYS_STDIO_H_ = 0 // stdio.h:30:1:
  59. X_SYS__PTHREAD_TYPES_H_ = 0 // _pthread_types.h:30:1:
  60. X_SYS__TYPES_H_ = 0 // _types.h:30:1:
  61. X_UINTPTR_T = 0 // _uintptr_t.h:29:1:
  62. X_USE_FORTIFY_LEVEL = 2 // _common.h:30:1:
  63. X_U_INT16_T = 0 // _u_int16_t.h:29:1:
  64. X_U_INT32_T = 0 // _u_int32_t.h:29:1:
  65. X_U_INT64_T = 0 // _u_int64_t.h:29:1:
  66. X_U_INT8_T = 0 // _u_int8_t.h:29:1:
  67. X_VA_LIST_T = 0 // _va_list.h:30:1:
  68. )
  69. type Ptrdiff_t = int64 /* <builtin>:3:26 */
  70. type Size_t = uint64 /* <builtin>:9:23 */
  71. type Wchar_t = int32 /* <builtin>:15:24 */
  72. type X__int128_t = struct {
  73. Flo int64
  74. Fhi int64
  75. } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
  76. type X__uint128_t = struct {
  77. Flo uint64
  78. Fhi uint64
  79. } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
  80. type X__builtin_va_list = uintptr /* <builtin>:46:14 */
  81. type X__float128 = float64 /* <builtin>:47:21 */
  82. var X__darwin_check_fd_set_overflow uintptr /* <builtin>:146:5: */
  83. // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
  84. //
  85. // @APPLE_LICENSE_HEADER_START@
  86. //
  87. // This file contains Original Code and/or Modifications of Original Code
  88. // as defined in and that are subject to the Apple Public Source License
  89. // Version 2.0 (the 'License'). You may not use this file except in
  90. // compliance with the License. Please obtain a copy of the License at
  91. // http://www.opensource.apple.com/apsl/ and read it before using this
  92. // file.
  93. //
  94. // The Original Code and all software distributed under the License are
  95. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  96. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  97. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  98. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  99. // Please see the License for the specific language governing rights and
  100. // limitations under the License.
  101. //
  102. // @APPLE_LICENSE_HEADER_END@
  103. // -
  104. // Copyright (c) 1990, 1993
  105. // The Regents of the University of California. All rights reserved.
  106. //
  107. // This code is derived from software contributed to Berkeley by
  108. // Chris Torek.
  109. //
  110. // Redistribution and use in source and binary forms, with or without
  111. // modification, are permitted provided that the following conditions
  112. // are met:
  113. // 1. Redistributions of source code must retain the above copyright
  114. // notice, this list of conditions and the following disclaimer.
  115. // 2. Redistributions in binary form must reproduce the above copyright
  116. // notice, this list of conditions and the following disclaimer in the
  117. // documentation and/or other materials provided with the distribution.
  118. // 3. All advertising materials mentioning features or use of this software
  119. // must display the following acknowledgement:
  120. // This product includes software developed by the University of
  121. // California, Berkeley and its contributors.
  122. // 4. Neither the name of the University nor the names of its contributors
  123. // may be used to endorse or promote products derived from this software
  124. // without specific prior written permission.
  125. //
  126. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  127. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  128. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  129. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  130. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  131. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  132. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  133. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  134. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  135. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  136. // SUCH DAMAGE.
  137. //
  138. // @(#)stdio.h 8.5 (Berkeley) 4/29/95
  139. // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
  140. //
  141. // @APPLE_LICENSE_HEADER_START@
  142. //
  143. // This file contains Original Code and/or Modifications of Original Code
  144. // as defined in and that are subject to the Apple Public Source License
  145. // Version 2.0 (the 'License'). You may not use this file except in
  146. // compliance with the License. Please obtain a copy of the License at
  147. // http://www.opensource.apple.com/apsl/ and read it before using this
  148. // file.
  149. //
  150. // The Original Code and all software distributed under the License are
  151. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  152. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  153. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  154. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  155. // Please see the License for the specific language governing rights and
  156. // limitations under the License.
  157. //
  158. // @APPLE_LICENSE_HEADER_END@
  159. // -
  160. // Copyright (c) 1990, 1993
  161. // The Regents of the University of California. All rights reserved.
  162. //
  163. // This code is derived from software contributed to Berkeley by
  164. // Chris Torek.
  165. //
  166. // Redistribution and use in source and binary forms, with or without
  167. // modification, are permitted provided that the following conditions
  168. // are met:
  169. // 1. Redistributions of source code must retain the above copyright
  170. // notice, this list of conditions and the following disclaimer.
  171. // 2. Redistributions in binary form must reproduce the above copyright
  172. // notice, this list of conditions and the following disclaimer in the
  173. // documentation and/or other materials provided with the distribution.
  174. // 3. All advertising materials mentioning features or use of this software
  175. // must display the following acknowledgement:
  176. // This product includes software developed by the University of
  177. // California, Berkeley and its contributors.
  178. // 4. Neither the name of the University nor the names of its contributors
  179. // may be used to endorse or promote products derived from this software
  180. // without specific prior written permission.
  181. //
  182. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  183. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  184. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  185. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  186. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  187. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  188. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  189. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  190. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  191. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  192. // SUCH DAMAGE.
  193. //
  194. // @(#)stdio.h 8.5 (Berkeley) 4/29/95
  195. // Common header for stdio.h and xlocale/_stdio.h
  196. // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  197. //
  198. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  199. //
  200. // This file contains Original Code and/or Modifications of Original Code
  201. // as defined in and that are subject to the Apple Public Source License
  202. // Version 2.0 (the 'License'). You may not use this file except in
  203. // compliance with the License. The rights granted to you under the License
  204. // may not be used to create, or enable the creation or redistribution of,
  205. // unlawful or unlicensed copies of an Apple operating system, or to
  206. // circumvent, violate, or enable the circumvention or violation of, any
  207. // terms of an Apple operating system software license agreement.
  208. //
  209. // Please obtain a copy of the License at
  210. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  211. //
  212. // The Original Code and all software distributed under the License are
  213. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  214. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  215. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  216. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  217. // Please see the License for the specific language governing rights and
  218. // limitations under the License.
  219. //
  220. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  221. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  222. // Copyright (c) 1991, 1993
  223. // The Regents of the University of California. All rights reserved.
  224. //
  225. // This code is derived from software contributed to Berkeley by
  226. // Berkeley Software Design, Inc.
  227. //
  228. // Redistribution and use in source and binary forms, with or without
  229. // modification, are permitted provided that the following conditions
  230. // are met:
  231. // 1. Redistributions of source code must retain the above copyright
  232. // notice, this list of conditions and the following disclaimer.
  233. // 2. Redistributions in binary form must reproduce the above copyright
  234. // notice, this list of conditions and the following disclaimer in the
  235. // documentation and/or other materials provided with the distribution.
  236. // 3. All advertising materials mentioning features or use of this software
  237. // must display the following acknowledgement:
  238. // This product includes software developed by the University of
  239. // California, Berkeley and its contributors.
  240. // 4. Neither the name of the University nor the names of its contributors
  241. // may be used to endorse or promote products derived from this software
  242. // without specific prior written permission.
  243. //
  244. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  245. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  246. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  247. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  248. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  249. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  250. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  251. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  252. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  253. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  254. // SUCH DAMAGE.
  255. //
  256. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  257. // This SDK is designed to work with clang and specific versions of
  258. // gcc >= 4.0 with Apple's patch sets
  259. // Compatibility with compilers and environments that don't support compiler
  260. // feature checking function-like macros.
  261. // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
  262. // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
  263. // The __CONCAT macro is a bit tricky -- make sure you don't put spaces
  264. // in between its arguments. __CONCAT can also concatenate double-quoted
  265. // strings produced by the __STRING macro, but this only works with ANSI C.
  266. // In non-ANSI C environments, new programs will want ANSI-only C keywords
  267. // deleted from the program and old programs will want them left alone.
  268. // When using a compiler other than gcc, programs using the ANSI C keywords
  269. // const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
  270. // When using "gcc -traditional", we assume that this is the intent; if
  271. // __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
  272. // __unused denotes variables and functions that may not be used, preventing
  273. // the compiler from warning about it if not used.
  274. // __used forces variables and functions to be included even if it appears
  275. // to the compiler that they are not used (and would thust be discarded).
  276. // __cold marks code used for debugging or that is rarely taken
  277. // and tells the compiler to optimize for size and outline code.
  278. // __deprecated causes the compiler to produce a warning when encountering
  279. // code using the deprecated functionality.
  280. // __deprecated_msg() does the same, and compilers that support it will print
  281. // a message along with the deprecation warning.
  282. // This may require turning on such warning with the -Wdeprecated flag.
  283. // __deprecated_enum_msg() should be used on enums, and compilers that support
  284. // it will print the deprecation warning.
  285. // __kpi_deprecated() specifically indicates deprecation of kernel programming
  286. // interfaces in Kernel.framework used by KEXTs.
  287. // __unavailable causes the compiler to error out when encountering
  288. // code using the tagged function of variable.
  289. // Delete pseudo-keywords wherever they are not available or needed.
  290. // We use `__restrict' as a way to define the `restrict' type qualifier
  291. // without disturbing older software that is unaware of C99 keywords.
  292. // Compatibility with compilers and environments that don't support the
  293. // nullability feature.
  294. // __disable_tail_calls causes the compiler to not perform tail call
  295. // optimization inside the marked function.
  296. // __not_tail_called causes the compiler to prevent tail call optimization
  297. // on statically bound calls to the function. It has no effect on indirect
  298. // calls. Virtual functions, objective-c methods, and functions marked as
  299. // "always_inline" cannot be marked as __not_tail_called.
  300. // __result_use_check warns callers of a function that not using the function
  301. // return value is a bug, i.e. dismissing malloc() return value results in a
  302. // memory leak.
  303. // __swift_unavailable causes the compiler to mark a symbol as specifically
  304. // unavailable in Swift, regardless of any other availability in C.
  305. // __abortlike is the attribute to put on functions like abort() that are
  306. // typically used to mark assertions. These optimize the codegen
  307. // for outlining while still maintaining debugability.
  308. // Declaring inline functions within headers is error-prone due to differences
  309. // across various versions of the C language and extensions. __header_inline
  310. // can be used to declare inline functions within system headers. In cases
  311. // where you want to force inlining instead of letting the compiler make
  312. // the decision, you can use __header_always_inline.
  313. //
  314. // Be aware that using inline for functions which compilers may also provide
  315. // builtins can behave differently under various compilers. If you intend to
  316. // provide an inline version of such a function, you may want to use a macro
  317. // instead.
  318. //
  319. // The check for !__GNUC__ || __clang__ is because gcc doesn't correctly
  320. // support c99 inline in some cases:
  321. // http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55965
  322. // Compiler-dependent macros that bracket portions of code where the
  323. // "-Wunreachable-code" warning should be ignored. Please use sparingly.
  324. // Compiler-dependent macros to declare that functions take printf-like
  325. // or scanf-like arguments. They are null except for versions of gcc
  326. // that are known to support the features properly. Functions declared
  327. // with these attributes will cause compilation warnings if there is a
  328. // mismatch between the format string and subsequent function parameter
  329. // types.
  330. // Source compatibility only, ID string not emitted in object file
  331. // __alloc_size can be used to label function arguments that represent the
  332. // size of memory that the function allocates and returns. The one-argument
  333. // form labels a single argument that gives the allocation size (where the
  334. // arguments are numbered from 1):
  335. //
  336. // void *malloc(size_t __size) __alloc_size(1);
  337. //
  338. // The two-argument form handles the case where the size is calculated as the
  339. // product of two arguments:
  340. //
  341. // void *calloc(size_t __count, size_t __size) __alloc_size(1,2);
  342. // COMPILATION ENVIRONMENTS -- see compat(5) for additional detail
  343. //
  344. // DEFAULT By default newly complied code will get POSIX APIs plus
  345. // Apple API extensions in scope.
  346. //
  347. // Most users will use this compilation environment to avoid
  348. // behavioral differences between 32 and 64 bit code.
  349. //
  350. // LEGACY Defining _NONSTD_SOURCE will get pre-POSIX APIs plus Apple
  351. // API extensions in scope.
  352. //
  353. // This is generally equivalent to the Tiger release compilation
  354. // environment, except that it cannot be applied to 64 bit code;
  355. // its use is discouraged.
  356. //
  357. // We expect this environment to be deprecated in the future.
  358. //
  359. // STRICT Defining _POSIX_C_SOURCE or _XOPEN_SOURCE restricts the
  360. // available APIs to exactly the set of APIs defined by the
  361. // corresponding standard, based on the value defined.
  362. //
  363. // A correct, portable definition for _POSIX_C_SOURCE is 200112L.
  364. // A correct, portable definition for _XOPEN_SOURCE is 600L.
  365. //
  366. // Apple API extensions are not visible in this environment,
  367. // which can cause Apple specific code to fail to compile,
  368. // or behave incorrectly if prototypes are not in scope or
  369. // warnings about missing prototypes are not enabled or ignored.
  370. //
  371. // In any compilation environment, for correct symbol resolution to occur,
  372. // function prototypes must be in scope. It is recommended that all Apple
  373. // tools users add either the "-Wall" or "-Wimplicit-function-declaration"
  374. // compiler flags to their projects to be warned when a function is being
  375. // used without a prototype in scope.
  376. // These settings are particular to each product.
  377. // Platform: MacOSX
  378. // #undef __DARWIN_ONLY_UNIX_CONFORMANCE (automatically set for 64-bit)
  379. // The __DARWIN_ALIAS macros are used to do symbol renaming; they allow
  380. // legacy code to use the old symbol, thus maintaining binary compatibility
  381. // while new code can use a standards compliant version of the same function.
  382. //
  383. // __DARWIN_ALIAS is used by itself if the function signature has not
  384. // changed, it is used along with a #ifdef check for __DARWIN_UNIX03
  385. // if the signature has changed. Because the __LP64__ environment
  386. // only supports UNIX03 semantics it causes __DARWIN_UNIX03 to be
  387. // defined, but causes __DARWIN_ALIAS to do no symbol mangling.
  388. //
  389. // As a special case, when XCode is used to target a specific version of the
  390. // OS, the manifest constant __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
  391. // will be defined by the compiler, with the digits representing major version
  392. // time 100 + minor version times 10 (e.g. 10.5 := 1050). If we are targeting
  393. // pre-10.5, and it is the default compilation environment, revert the
  394. // compilation environment to pre-__DARWIN_UNIX03.
  395. // symbol suffixes used for symbol versioning
  396. // symbol versioning macros
  397. // symbol release macros
  398. // Copyright (c) 2010 Apple Inc. All rights reserved.
  399. //
  400. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  401. //
  402. // This file contains Original Code and/or Modifications of Original Code
  403. // as defined in and that are subject to the Apple Public Source License
  404. // Version 2.0 (the 'License'). You may not use this file except in
  405. // compliance with the License. The rights granted to you under the License
  406. // may not be used to create, or enable the creation or redistribution of,
  407. // unlawful or unlicensed copies of an Apple operating system, or to
  408. // circumvent, violate, or enable the circumvention or violation of, any
  409. // terms of an Apple operating system software license agreement.
  410. //
  411. // Please obtain a copy of the License at
  412. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  413. //
  414. // The Original Code and all software distributed under the License are
  415. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  416. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  417. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  418. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  419. // Please see the License for the specific language governing rights and
  420. // limitations under the License.
  421. //
  422. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  423. // POSIX.1 requires that the macros we test be defined before any standard
  424. // header file is included. This permits us to convert values for feature
  425. // testing, as necessary, using only _POSIX_C_SOURCE.
  426. //
  427. // Here's a quick run-down of the versions:
  428. // defined(_POSIX_SOURCE) 1003.1-1988
  429. // _POSIX_C_SOURCE == 1L 1003.1-1990
  430. // _POSIX_C_SOURCE == 2L 1003.2-1992 C Language Binding Option
  431. // _POSIX_C_SOURCE == 199309L 1003.1b-1993
  432. // _POSIX_C_SOURCE == 199506L 1003.1c-1995, 1003.1i-1995,
  433. // and the omnibus ISO/IEC 9945-1: 1996
  434. // _POSIX_C_SOURCE == 200112L 1003.1-2001
  435. // _POSIX_C_SOURCE == 200809L 1003.1-2008
  436. //
  437. // In addition, the X/Open Portability Guide, which is now the Single UNIX
  438. // Specification, defines a feature-test macro which indicates the version of
  439. // that specification, and which subsumes _POSIX_C_SOURCE.
  440. // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1L.
  441. // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2L.
  442. // Deal with various X/Open Portability Guides and Single UNIX Spec.
  443. // Deal with all versions of POSIX. The ordering relative to the tests above is
  444. // important.
  445. // POSIX C deprecation macros
  446. // Copyright (c) 2010 Apple Inc. All rights reserved.
  447. //
  448. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  449. //
  450. // This file contains Original Code and/or Modifications of Original Code
  451. // as defined in and that are subject to the Apple Public Source License
  452. // Version 2.0 (the 'License'). You may not use this file except in
  453. // compliance with the License. The rights granted to you under the License
  454. // may not be used to create, or enable the creation or redistribution of,
  455. // unlawful or unlicensed copies of an Apple operating system, or to
  456. // circumvent, violate, or enable the circumvention or violation of, any
  457. // terms of an Apple operating system software license agreement.
  458. //
  459. // Please obtain a copy of the License at
  460. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  461. //
  462. // The Original Code and all software distributed under the License are
  463. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  464. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  465. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  466. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  467. // Please see the License for the specific language governing rights and
  468. // limitations under the License.
  469. //
  470. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  471. // Set a single macro which will always be defined and can be used to determine
  472. // the appropriate namespace. For POSIX, these values will correspond to
  473. // _POSIX_C_SOURCE value. Currently there are two additional levels corresponding
  474. // to ANSI (_ANSI_SOURCE) and Darwin extensions (_DARWIN_C_SOURCE)
  475. // If the developer has neither requested a strict language mode nor a version
  476. // of POSIX, turn on functionality provided by __STDC_WANT_LIB_EXT1__ as part
  477. // of __DARWIN_C_FULL.
  478. // long long is not supported in c89 (__STRICT_ANSI__), but g++ -ansi and
  479. // c99 still want long longs. While not perfect, we allow long longs for
  480. // g++.
  481. // ****************************************
  482. //
  483. // Public darwin-specific feature macros
  484. //
  485. // _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
  486. // structures modified for 64-bit inodes (like struct stat) will be used.
  487. // _DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only
  488. // be 64-bit; there is no support for 32-bit ino_t when this macro is defined
  489. // (and non-zero). There is no struct stat64 either, as the regular
  490. // struct stat will already be the 64-bit version.
  491. // _DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated
  492. // in 10.5 exists; no pre-10.5 variants are available.
  493. // _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API
  494. // are available (the legacy BSD APIs are not available)
  495. // _DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on,
  496. // and specifies the conformance level (3 is SUSv3)
  497. // This macro casts away the qualifier from the variable
  498. //
  499. // Note: use at your own risk, removing qualifiers can result in
  500. // catastrophic run-time failures.
  501. // __XNU_PRIVATE_EXTERN is a linkage decoration indicating that a symbol can be
  502. // used from other compilation units, but not other libraries or executables.
  503. // Architecture validation for current SDK
  504. // Similar to OS_ENUM/OS_CLOSED_ENUM/OS_OPTIONS/OS_CLOSED_OPTIONS
  505. //
  506. // This provides more advanced type checking on compilers supporting
  507. // the proper extensions, even in C.
  508. // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  509. //
  510. // @APPLE_LICENSE_HEADER_START@
  511. //
  512. // This file contains Original Code and/or Modifications of Original Code
  513. // as defined in and that are subject to the Apple Public Source License
  514. // Version 2.0 (the 'License'). You may not use this file except in
  515. // compliance with the License. Please obtain a copy of the License at
  516. // http://www.opensource.apple.com/apsl/ and read it before using this
  517. // file.
  518. //
  519. // The Original Code and all software distributed under the License are
  520. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  521. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  522. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  523. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  524. // Please see the License for the specific language governing rights and
  525. // limitations under the License.
  526. //
  527. // @APPLE_LICENSE_HEADER_END@
  528. //
  529. // These macros are for use in OS header files. They enable function prototypes
  530. // and Objective-C methods to be tagged with the OS version in which they
  531. // were first available; and, if applicable, the OS version in which they
  532. // became deprecated.
  533. //
  534. // The desktop Mac OS X and iOS each have different version numbers.
  535. // The __OSX_AVAILABLE_STARTING() macro allows you to specify both the desktop
  536. // and iOS version numbers. For instance:
  537. // __OSX_AVAILABLE_STARTING(__MAC_10_2,__IPHONE_2_0)
  538. // means the function/method was first available on Mac OS X 10.2 on the desktop
  539. // and first available in iOS 2.0 on the iPhone.
  540. //
  541. // If a function is available on one platform, but not the other a _NA (not
  542. // applicable) parameter is used. For instance:
  543. // __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA)
  544. // means that the function/method was first available on Mac OS X 10.3, and it
  545. // currently not implemented on the iPhone.
  546. //
  547. // At some point, a function/method may be deprecated. That means Apple
  548. // recommends applications stop using the function, either because there is a
  549. // better replacement or the functionality is being phased out. Deprecated
  550. // functions/methods can be tagged with a __OSX_AVAILABLE_BUT_DEPRECATED()
  551. // macro which specifies the OS version where the function became available
  552. // as well as the OS version in which it became deprecated. For instance:
  553. // __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA)
  554. // means that the function/method was introduced in Mac OS X 10.0, then
  555. // became deprecated beginning in Mac OS X 10.5. On iOS the function
  556. // has never been available.
  557. //
  558. // For these macros to function properly, a program must specify the OS version range
  559. // it is targeting. The min OS version is specified as an option to the compiler:
  560. // -mmacosx-version-min=10.x when building for Mac OS X, and -miphoneos-version-min=y.z
  561. // when building for the iPhone. The upper bound for the OS version is rarely needed,
  562. // but it can be set on the command line via: -D__MAC_OS_X_VERSION_MAX_ALLOWED=10x0 for
  563. // Mac OS X and __IPHONE_OS_VERSION_MAX_ALLOWED = y0z00 for iOS.
  564. //
  565. // Examples:
  566. //
  567. // A function available in Mac OS X 10.5 and later, but not on the phone:
  568. //
  569. // extern void mymacfunc() __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
  570. //
  571. //
  572. // An Objective-C method in Mac OS X 10.5 and later, but not on the phone:
  573. //
  574. // @interface MyClass : NSObject
  575. // -(void) mymacmethod __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
  576. // @end
  577. //
  578. //
  579. // An enum available on the phone, but not available on Mac OS X:
  580. //
  581. // #if __IPHONE_OS_VERSION_MIN_REQUIRED
  582. // enum { myEnum = 1 };
  583. // #endif
  584. // Note: this works when targeting the Mac OS X platform because
  585. // __IPHONE_OS_VERSION_MIN_REQUIRED is undefined which evaluates to zero.
  586. //
  587. //
  588. // An enum with values added in different iPhoneOS versions:
  589. //
  590. // enum {
  591. // myX = 1, // Usable on iPhoneOS 2.1 and later
  592. // myY = 2, // Usable on iPhoneOS 3.0 and later
  593. // myZ = 3, // Usable on iPhoneOS 3.0 and later
  594. // ...
  595. // Note: you do not want to use #if with enumeration values
  596. // when a client needs to see all values at compile time
  597. // and use runtime logic to only use the viable values.
  598. //
  599. //
  600. // It is also possible to use the *_VERSION_MIN_REQUIRED in source code to make one
  601. // source base that can be compiled to target a range of OS versions. It is best
  602. // to not use the _MAC_* and __IPHONE_* macros for comparisons, but rather their values.
  603. // That is because you might get compiled on an old OS that does not define a later
  604. // OS version macro, and in the C preprocessor undefined values evaluate to zero
  605. // in expresssions, which could cause the #if expression to evaluate in an unexpected
  606. // way.
  607. //
  608. // #ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
  609. // // code only compiled when targeting Mac OS X and not iPhone
  610. // // note use of 1050 instead of __MAC_10_5
  611. // #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1050
  612. // // code in here might run on pre-Leopard OS
  613. // #else
  614. // // code here can assume Leopard or later
  615. // #endif
  616. // #endif
  617. //
  618. //
  619. // __API_TO_BE_DEPRECATED is used as a version number in API that will be deprecated
  620. // in an upcoming release. This soft deprecation is an intermediate step before formal
  621. // deprecation to notify developers about the API before compiler warnings are generated.
  622. // You can find all places in your code that use soft deprecated API by redefining the
  623. // value of this macro to your current minimum deployment target, for example:
  624. // (macOS)
  625. // clang -D__API_TO_BE_DEPRECATED=10.12 <other compiler flags>
  626. // (iOS)
  627. // clang -D__API_TO_BE_DEPRECATED=11.0 <other compiler flags>
  628. // __MAC_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable
  629. // __IPHONE_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable
  630. // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  631. //
  632. // @APPLE_LICENSE_HEADER_START@
  633. //
  634. // This file contains Original Code and/or Modifications of Original Code
  635. // as defined in and that are subject to the Apple Public Source License
  636. // Version 2.0 (the 'License'). You may not use this file except in
  637. // compliance with the License. Please obtain a copy of the License at
  638. // http://www.opensource.apple.com/apsl/ and read it before using this
  639. // file.
  640. //
  641. // The Original Code and all software distributed under the License are
  642. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  643. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  644. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  645. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  646. // Please see the License for the specific language governing rights and
  647. // limitations under the License.
  648. //
  649. // @APPLE_LICENSE_HEADER_END@
  650. //
  651. // File: AvailabilityInternal.h
  652. //
  653. // Contains: implementation details of __OSX_AVAILABLE_* macros from <Availability.h>
  654. //
  655. // compiler for Mac OS X sets __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
  656. // make sure a default max version is set
  657. //
  658. // Macros for defining which versions/platform a given symbol can be used.
  659. //
  660. // @see http://clang.llvm.org/docs/AttributeReference.html#availability
  661. //
  662. // Evaluate to nothing for compilers that don't support availability.
  663. // Swift compiler version
  664. // Allows for project-agnostic “epochs” for frameworks imported into Swift via the Clang importer, like #if _compiler_version for Swift
  665. // Example:
  666. //
  667. // #if __swift_compiler_version_at_least(800, 2, 20)
  668. // - (nonnull NSString *)description;
  669. // #else
  670. // - (NSString *)description;
  671. // #endif
  672. // If __SPI_AVAILABLE has not been defined elsewhere, disable it.
  673. // for use to document app extension usage
  674. // for use marking APIs available info for Mac OSX
  675. // for use marking APIs available info for iOS
  676. // for use marking APIs available info for tvOS
  677. // for use marking APIs available info for Watch OS
  678. // for use marking APIs unavailable for swift
  679. //
  680. // Macros for defining which versions/platform a given symbol can be used.
  681. //
  682. // @see http://clang.llvm.org/docs/AttributeReference.html#availability
  683. //
  684. // * Note that these macros are only compatible with clang compilers that
  685. // * support the following target selection options:
  686. // *
  687. // * -mmacosx-version-min
  688. // * -miphoneos-version-min
  689. // * -mwatchos-version-min
  690. // * -mtvos-version-min
  691. //
  692. // Evaluate to nothing for compilers that don't support availability.
  693. // If SPI decorations have not been defined elsewhere, disable them.
  694. // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  695. //
  696. // @APPLE_LICENSE_HEADER_START@
  697. //
  698. // This file contains Original Code and/or Modifications of Original Code
  699. // as defined in and that are subject to the Apple Public Source License
  700. // Version 2.0 (the 'License'). You may not use this file except in
  701. // compliance with the License. Please obtain a copy of the License at
  702. // http://www.opensource.apple.com/apsl/ and read it before using this
  703. // file.
  704. //
  705. // The Original Code and all software distributed under the License are
  706. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  707. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  708. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  709. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  710. // Please see the License for the specific language governing rights and
  711. // limitations under the License.
  712. //
  713. // @APPLE_LICENSE_HEADER_END@
  714. // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  715. //
  716. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  717. //
  718. // This file contains Original Code and/or Modifications of Original Code
  719. // as defined in and that are subject to the Apple Public Source License
  720. // Version 2.0 (the 'License'). You may not use this file except in
  721. // compliance with the License. The rights granted to you under the License
  722. // may not be used to create, or enable the creation or redistribution of,
  723. // unlawful or unlicensed copies of an Apple operating system, or to
  724. // circumvent, violate, or enable the circumvention or violation of, any
  725. // terms of an Apple operating system software license agreement.
  726. //
  727. // Please obtain a copy of the License at
  728. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  729. //
  730. // The Original Code and all software distributed under the License are
  731. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  732. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  733. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  734. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  735. // Please see the License for the specific language governing rights and
  736. // limitations under the License.
  737. //
  738. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  739. // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  740. //
  741. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  742. //
  743. // This file contains Original Code and/or Modifications of Original Code
  744. // as defined in and that are subject to the Apple Public Source License
  745. // Version 2.0 (the 'License'). You may not use this file except in
  746. // compliance with the License. The rights granted to you under the License
  747. // may not be used to create, or enable the creation or redistribution of,
  748. // unlawful or unlicensed copies of an Apple operating system, or to
  749. // circumvent, violate, or enable the circumvention or violation of, any
  750. // terms of an Apple operating system software license agreement.
  751. //
  752. // Please obtain a copy of the License at
  753. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  754. //
  755. // The Original Code and all software distributed under the License are
  756. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  757. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  758. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  759. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  760. // Please see the License for the specific language governing rights and
  761. // limitations under the License.
  762. //
  763. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  764. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  765. // Copyright (c) 1991, 1993
  766. // The Regents of the University of California. All rights reserved.
  767. //
  768. // This code is derived from software contributed to Berkeley by
  769. // Berkeley Software Design, Inc.
  770. //
  771. // Redistribution and use in source and binary forms, with or without
  772. // modification, are permitted provided that the following conditions
  773. // are met:
  774. // 1. Redistributions of source code must retain the above copyright
  775. // notice, this list of conditions and the following disclaimer.
  776. // 2. Redistributions in binary form must reproduce the above copyright
  777. // notice, this list of conditions and the following disclaimer in the
  778. // documentation and/or other materials provided with the distribution.
  779. // 3. All advertising materials mentioning features or use of this software
  780. // must display the following acknowledgement:
  781. // This product includes software developed by the University of
  782. // California, Berkeley and its contributors.
  783. // 4. Neither the name of the University nor the names of its contributors
  784. // may be used to endorse or promote products derived from this software
  785. // without specific prior written permission.
  786. //
  787. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  788. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  789. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  790. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  791. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  792. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  793. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  794. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  795. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  796. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  797. // SUCH DAMAGE.
  798. //
  799. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  800. // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  801. //
  802. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  803. //
  804. // This file contains Original Code and/or Modifications of Original Code
  805. // as defined in and that are subject to the Apple Public Source License
  806. // Version 2.0 (the 'License'). You may not use this file except in
  807. // compliance with the License. The rights granted to you under the License
  808. // may not be used to create, or enable the creation or redistribution of,
  809. // unlawful or unlicensed copies of an Apple operating system, or to
  810. // circumvent, violate, or enable the circumvention or violation of, any
  811. // terms of an Apple operating system software license agreement.
  812. //
  813. // Please obtain a copy of the License at
  814. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  815. //
  816. // The Original Code and all software distributed under the License are
  817. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  818. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  819. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  820. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  821. // Please see the License for the specific language governing rights and
  822. // limitations under the License.
  823. //
  824. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  825. // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
  826. //
  827. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  828. //
  829. // This file contains Original Code and/or Modifications of Original Code
  830. // as defined in and that are subject to the Apple Public Source License
  831. // Version 2.0 (the 'License'). You may not use this file except in
  832. // compliance with the License. The rights granted to you under the License
  833. // may not be used to create, or enable the creation or redistribution of,
  834. // unlawful or unlicensed copies of an Apple operating system, or to
  835. // circumvent, violate, or enable the circumvention or violation of, any
  836. // terms of an Apple operating system software license agreement.
  837. //
  838. // Please obtain a copy of the License at
  839. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  840. //
  841. // The Original Code and all software distributed under the License are
  842. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  843. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  844. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  845. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  846. // Please see the License for the specific language governing rights and
  847. // limitations under the License.
  848. //
  849. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  850. // This header file contains integer types. It's intended to also contain
  851. // flotaing point and other arithmetic types, as needed, later.
  852. type X__int8_t = int8 /* _types.h:37:33 */
  853. type X__uint8_t = uint8 /* _types.h:41:33 */
  854. type X__int16_t = int16 /* _types.h:42:33 */
  855. type X__uint16_t = uint16 /* _types.h:43:33 */
  856. type X__int32_t = int32 /* _types.h:44:33 */
  857. type X__uint32_t = uint32 /* _types.h:45:33 */
  858. type X__int64_t = int64 /* _types.h:46:33 */
  859. type X__uint64_t = uint64 /* _types.h:47:33 */
  860. type X__darwin_intptr_t = int64 /* _types.h:49:33 */
  861. type X__darwin_natural_t = uint32 /* _types.h:50:33 */
  862. // The rune type below is declared to be an ``int'' instead of the more natural
  863. // ``unsigned long'' or ``long''. Two things are happening here. It is not
  864. // unsigned so that EOF (-1) can be naturally assigned to it and used. Also,
  865. // it looks like 10646 will be a 31 bit standard. This means that if your
  866. // ints cannot hold 32 bits, you will be in trouble. The reason an int was
  867. // chosen over a long is that the is*() and to*() routines take ints (says
  868. // ANSI C), but they use __darwin_ct_rune_t instead of int. By changing it
  869. // here, you lose a bit of ANSI conformance, but your programs will still
  870. // work.
  871. //
  872. // NOTE: rune_t is not covered by ANSI nor other standards, and should not
  873. // be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and
  874. // rune_t must be the same type. Also wint_t must be no narrower than
  875. // wchar_t, and should also be able to hold all members of the largest
  876. // character set plus one extra value (WEOF). wint_t must be at least 16 bits.
  877. type X__darwin_ct_rune_t = int32 /* _types.h:70:33 */ // ct_rune_t
  878. // mbstate_t is an opaque object to keep conversion state, during multibyte
  879. // stream conversions. The content must not be referenced by user programs.
  880. type X__mbstate_t = struct {
  881. F__ccgo_pad1 [0]uint64
  882. F__mbstate8 [128]int8
  883. } /* _types.h:79:3 */
  884. type X__darwin_mbstate_t = X__mbstate_t /* _types.h:81:33 */ // mbstate_t
  885. type X__darwin_ptrdiff_t = int64 /* _types.h:84:33 */ // ptr1 - ptr2
  886. type X__darwin_size_t = uint64 /* _types.h:92:33 */ // sizeof()
  887. type X__darwin_va_list = X__builtin_va_list /* _types.h:98:33 */ // va_list
  888. type X__darwin_wchar_t = int32 /* _types.h:104:33 */ // wchar_t
  889. type X__darwin_rune_t = X__darwin_wchar_t /* _types.h:109:33 */ // rune_t
  890. type X__darwin_wint_t = int32 /* _types.h:112:33 */ // wint_t
  891. type X__darwin_clock_t = uint64 /* _types.h:117:33 */ // clock()
  892. type X__darwin_socklen_t = X__uint32_t /* _types.h:118:33 */ // socklen_t (duh)
  893. type X__darwin_ssize_t = int64 /* _types.h:119:33 */ // byte count or error
  894. type X__darwin_time_t = int64 /* _types.h:120:33 */ // time()
  895. // Type definitions; takes common type definitions that must be used
  896. // in multiple header files due to [XSI], removes them from the system
  897. // space, and puts them in the implementation space.
  898. type X__darwin_blkcnt_t = X__int64_t /* _types.h:55:25 */ // total blocks
  899. type X__darwin_blksize_t = X__int32_t /* _types.h:56:25 */ // preferred block size
  900. type X__darwin_dev_t = X__int32_t /* _types.h:57:25 */ // dev_t
  901. type X__darwin_fsblkcnt_t = uint32 /* _types.h:58:25 */ // Used by statvfs and fstatvfs
  902. type X__darwin_fsfilcnt_t = uint32 /* _types.h:59:25 */ // Used by statvfs and fstatvfs
  903. type X__darwin_gid_t = X__uint32_t /* _types.h:60:25 */ // [???] process and group IDs
  904. type X__darwin_id_t = X__uint32_t /* _types.h:61:25 */ // [XSI] pid_t, uid_t, or gid_t
  905. type X__darwin_ino64_t = X__uint64_t /* _types.h:62:25 */ // [???] Used for 64 bit inodes
  906. type X__darwin_ino_t = X__darwin_ino64_t /* _types.h:64:26 */ // [???] Used for inodes
  907. type X__darwin_mach_port_name_t = X__darwin_natural_t /* _types.h:68:28 */ // Used by mach
  908. type X__darwin_mach_port_t = X__darwin_mach_port_name_t /* _types.h:69:35 */ // Used by mach
  909. type X__darwin_mode_t = X__uint16_t /* _types.h:70:25 */ // [???] Some file attributes
  910. type X__darwin_off_t = X__int64_t /* _types.h:71:25 */ // [???] Used for file sizes
  911. type X__darwin_pid_t = X__int32_t /* _types.h:72:25 */ // [???] process and group IDs
  912. type X__darwin_sigset_t = X__uint32_t /* _types.h:73:25 */ // [???] signal set
  913. type X__darwin_suseconds_t = X__int32_t /* _types.h:74:25 */ // [???] microseconds
  914. type X__darwin_uid_t = X__uint32_t /* _types.h:75:25 */ // [???] user IDs
  915. type X__darwin_useconds_t = X__uint32_t /* _types.h:76:25 */ // [???] microseconds
  916. type X__darwin_uuid_t = [16]uint8 /* _types.h:77:25 */
  917. type X__darwin_uuid_string_t = [37]int8 /* _types.h:78:17 */
  918. // Copyright (c) 2003-2013 Apple Inc. All rights reserved.
  919. //
  920. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  921. //
  922. // This file contains Original Code and/or Modifications of Original Code
  923. // as defined in and that are subject to the Apple Public Source License
  924. // Version 2.0 (the 'License'). You may not use this file except in
  925. // compliance with the License. The rights granted to you under the License
  926. // may not be used to create, or enable the creation or redistribution of,
  927. // unlawful or unlicensed copies of an Apple operating system, or to
  928. // circumvent, violate, or enable the circumvention or violation of, any
  929. // terms of an Apple operating system software license agreement.
  930. //
  931. // Please obtain a copy of the License at
  932. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  933. //
  934. // The Original Code and all software distributed under the License are
  935. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  936. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  937. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  938. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  939. // Please see the License for the specific language governing rights and
  940. // limitations under the License.
  941. //
  942. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  943. // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  944. //
  945. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  946. //
  947. // This file contains Original Code and/or Modifications of Original Code
  948. // as defined in and that are subject to the Apple Public Source License
  949. // Version 2.0 (the 'License'). You may not use this file except in
  950. // compliance with the License. The rights granted to you under the License
  951. // may not be used to create, or enable the creation or redistribution of,
  952. // unlawful or unlicensed copies of an Apple operating system, or to
  953. // circumvent, violate, or enable the circumvention or violation of, any
  954. // terms of an Apple operating system software license agreement.
  955. //
  956. // Please obtain a copy of the License at
  957. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  958. //
  959. // The Original Code and all software distributed under the License are
  960. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  961. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  962. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  963. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  964. // Please see the License for the specific language governing rights and
  965. // limitations under the License.
  966. //
  967. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  968. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  969. // Copyright (c) 1991, 1993
  970. // The Regents of the University of California. All rights reserved.
  971. //
  972. // This code is derived from software contributed to Berkeley by
  973. // Berkeley Software Design, Inc.
  974. //
  975. // Redistribution and use in source and binary forms, with or without
  976. // modification, are permitted provided that the following conditions
  977. // are met:
  978. // 1. Redistributions of source code must retain the above copyright
  979. // notice, this list of conditions and the following disclaimer.
  980. // 2. Redistributions in binary form must reproduce the above copyright
  981. // notice, this list of conditions and the following disclaimer in the
  982. // documentation and/or other materials provided with the distribution.
  983. // 3. All advertising materials mentioning features or use of this software
  984. // must display the following acknowledgement:
  985. // This product includes software developed by the University of
  986. // California, Berkeley and its contributors.
  987. // 4. Neither the name of the University nor the names of its contributors
  988. // may be used to endorse or promote products derived from this software
  989. // without specific prior written permission.
  990. //
  991. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  992. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  993. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  994. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  995. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  996. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  997. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  998. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  999. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1000. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1001. // SUCH DAMAGE.
  1002. //
  1003. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1004. // pthread opaque structures
  1005. type X__darwin_pthread_handler_rec = struct {
  1006. F__routine uintptr
  1007. F__arg uintptr
  1008. F__next uintptr
  1009. } /* _pthread_types.h:57:1 */
  1010. type X_opaque_pthread_attr_t = struct {
  1011. F__sig int64
  1012. F__opaque [56]int8
  1013. } /* _pthread_types.h:63:1 */
  1014. type X_opaque_pthread_cond_t = struct {
  1015. F__sig int64
  1016. F__opaque [40]int8
  1017. } /* _pthread_types.h:68:1 */
  1018. type X_opaque_pthread_condattr_t = struct {
  1019. F__sig int64
  1020. F__opaque [8]int8
  1021. } /* _pthread_types.h:73:1 */
  1022. type X_opaque_pthread_mutex_t = struct {
  1023. F__sig int64
  1024. F__opaque [56]int8
  1025. } /* _pthread_types.h:78:1 */
  1026. type X_opaque_pthread_mutexattr_t = struct {
  1027. F__sig int64
  1028. F__opaque [8]int8
  1029. } /* _pthread_types.h:83:1 */
  1030. type X_opaque_pthread_once_t = struct {
  1031. F__sig int64
  1032. F__opaque [8]int8
  1033. } /* _pthread_types.h:88:1 */
  1034. type X_opaque_pthread_rwlock_t = struct {
  1035. F__sig int64
  1036. F__opaque [192]int8
  1037. } /* _pthread_types.h:93:1 */
  1038. type X_opaque_pthread_rwlockattr_t = struct {
  1039. F__sig int64
  1040. F__opaque [16]int8
  1041. } /* _pthread_types.h:98:1 */
  1042. type X_opaque_pthread_t = struct {
  1043. F__sig int64
  1044. F__cleanup_stack uintptr
  1045. F__opaque [8176]int8
  1046. } /* _pthread_types.h:103:1 */
  1047. type X__darwin_pthread_attr_t = X_opaque_pthread_attr_t /* _pthread_types.h:109:39 */
  1048. type X__darwin_pthread_cond_t = X_opaque_pthread_cond_t /* _pthread_types.h:110:39 */
  1049. type X__darwin_pthread_condattr_t = X_opaque_pthread_condattr_t /* _pthread_types.h:111:43 */
  1050. type X__darwin_pthread_key_t = uint64 /* _pthread_types.h:112:23 */
  1051. type X__darwin_pthread_mutex_t = X_opaque_pthread_mutex_t /* _pthread_types.h:113:40 */
  1052. type X__darwin_pthread_mutexattr_t = X_opaque_pthread_mutexattr_t /* _pthread_types.h:114:44 */
  1053. type X__darwin_pthread_once_t = X_opaque_pthread_once_t /* _pthread_types.h:115:39 */
  1054. type X__darwin_pthread_rwlock_t = X_opaque_pthread_rwlock_t /* _pthread_types.h:116:41 */
  1055. type X__darwin_pthread_rwlockattr_t = X_opaque_pthread_rwlockattr_t /* _pthread_types.h:117:45 */
  1056. type X__darwin_pthread_t = uintptr /* _pthread_types.h:118:34 */
  1057. // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  1058. //
  1059. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1060. //
  1061. // This file contains Original Code and/or Modifications of Original Code
  1062. // as defined in and that are subject to the Apple Public Source License
  1063. // Version 2.0 (the 'License'). You may not use this file except in
  1064. // compliance with the License. The rights granted to you under the License
  1065. // may not be used to create, or enable the creation or redistribution of,
  1066. // unlawful or unlicensed copies of an Apple operating system, or to
  1067. // circumvent, violate, or enable the circumvention or violation of, any
  1068. // terms of an Apple operating system software license agreement.
  1069. //
  1070. // Please obtain a copy of the License at
  1071. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1072. //
  1073. // The Original Code and all software distributed under the License are
  1074. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1075. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1076. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1077. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1078. // Please see the License for the specific language governing rights and
  1079. // limitations under the License.
  1080. //
  1081. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1082. type X__darwin_nl_item = int32 /* _types.h:40:14 */
  1083. type X__darwin_wctrans_t = int32 /* _types.h:41:14 */
  1084. type X__darwin_wctype_t = X__uint32_t /* _types.h:43:20 */
  1085. // DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
  1086. // __gnuc_va_list and include <stdarg.h>
  1087. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1088. //
  1089. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1090. //
  1091. // This file contains Original Code and/or Modifications of Original Code
  1092. // as defined in and that are subject to the Apple Public Source License
  1093. // Version 2.0 (the 'License'). You may not use this file except in
  1094. // compliance with the License. The rights granted to you under the License
  1095. // may not be used to create, or enable the creation or redistribution of,
  1096. // unlawful or unlicensed copies of an Apple operating system, or to
  1097. // circumvent, violate, or enable the circumvention or violation of, any
  1098. // terms of an Apple operating system software license agreement.
  1099. //
  1100. // Please obtain a copy of the License at
  1101. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1102. //
  1103. // The Original Code and all software distributed under the License are
  1104. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1105. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1106. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1107. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1108. // Please see the License for the specific language governing rights and
  1109. // limitations under the License.
  1110. //
  1111. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1112. // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1113. //
  1114. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1115. //
  1116. // This file contains Original Code and/or Modifications of Original Code
  1117. // as defined in and that are subject to the Apple Public Source License
  1118. // Version 2.0 (the 'License'). You may not use this file except in
  1119. // compliance with the License. The rights granted to you under the License
  1120. // may not be used to create, or enable the creation or redistribution of,
  1121. // unlawful or unlicensed copies of an Apple operating system, or to
  1122. // circumvent, violate, or enable the circumvention or violation of, any
  1123. // terms of an Apple operating system software license agreement.
  1124. //
  1125. // Please obtain a copy of the License at
  1126. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1127. //
  1128. // The Original Code and all software distributed under the License are
  1129. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1130. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1131. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1132. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1133. // Please see the License for the specific language governing rights and
  1134. // limitations under the License.
  1135. //
  1136. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1137. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1138. // Copyright (c) 2000-2008 Apple Inc. All rights reserved.
  1139. //
  1140. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1141. //
  1142. // This file contains Original Code and/or Modifications of Original Code
  1143. // as defined in and that are subject to the Apple Public Source License
  1144. // Version 2.0 (the 'License'). You may not use this file except in
  1145. // compliance with the License. The rights granted to you under the License
  1146. // may not be used to create, or enable the creation or redistribution of,
  1147. // unlawful or unlicensed copies of an Apple operating system, or to
  1148. // circumvent, violate, or enable the circumvention or violation of, any
  1149. // terms of an Apple operating system software license agreement.
  1150. //
  1151. // Please obtain a copy of the License at
  1152. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1153. //
  1154. // The Original Code and all software distributed under the License are
  1155. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1156. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1157. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1158. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1159. // Please see the License for the specific language governing rights and
  1160. // limitations under the License.
  1161. //
  1162. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1163. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1164. // Copyright (c) 1990, 1993
  1165. // The Regents of the University of California. All rights reserved.
  1166. //
  1167. // Redistribution and use in source and binary forms, with or without
  1168. // modification, are permitted provided that the following conditions
  1169. // are met:
  1170. // 1. Redistributions of source code must retain the above copyright
  1171. // notice, this list of conditions and the following disclaimer.
  1172. // 2. Redistributions in binary form must reproduce the above copyright
  1173. // notice, this list of conditions and the following disclaimer in the
  1174. // documentation and/or other materials provided with the distribution.
  1175. // 3. All advertising materials mentioning features or use of this software
  1176. // must display the following acknowledgement:
  1177. // This product includes software developed by the University of
  1178. // California, Berkeley and its contributors.
  1179. // 4. Neither the name of the University nor the names of its contributors
  1180. // may be used to endorse or promote products derived from this software
  1181. // without specific prior written permission.
  1182. //
  1183. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1184. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1185. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1186. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1187. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1188. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1189. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1190. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1191. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1192. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1193. // SUCH DAMAGE.
  1194. //
  1195. // @(#)types.h 8.3 (Berkeley) 1/5/94
  1196. // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
  1197. //
  1198. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1199. //
  1200. // This file contains Original Code and/or Modifications of Original Code
  1201. // as defined in and that are subject to the Apple Public Source License
  1202. // Version 2.0 (the 'License'). You may not use this file except in
  1203. // compliance with the License. The rights granted to you under the License
  1204. // may not be used to create, or enable the creation or redistribution of,
  1205. // unlawful or unlicensed copies of an Apple operating system, or to
  1206. // circumvent, violate, or enable the circumvention or violation of, any
  1207. // terms of an Apple operating system software license agreement.
  1208. //
  1209. // Please obtain a copy of the License at
  1210. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1211. //
  1212. // The Original Code and all software distributed under the License are
  1213. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1214. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1215. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1216. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1217. // Please see the License for the specific language governing rights and
  1218. // limitations under the License.
  1219. //
  1220. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1221. // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1222. //
  1223. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1224. //
  1225. // This file contains Original Code and/or Modifications of Original Code
  1226. // as defined in and that are subject to the Apple Public Source License
  1227. // Version 2.0 (the 'License'). You may not use this file except in
  1228. // compliance with the License. The rights granted to you under the License
  1229. // may not be used to create, or enable the creation or redistribution of,
  1230. // unlawful or unlicensed copies of an Apple operating system, or to
  1231. // circumvent, violate, or enable the circumvention or violation of, any
  1232. // terms of an Apple operating system software license agreement.
  1233. //
  1234. // Please obtain a copy of the License at
  1235. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1236. //
  1237. // The Original Code and all software distributed under the License are
  1238. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1239. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1240. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1241. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1242. // Please see the License for the specific language governing rights and
  1243. // limitations under the License.
  1244. //
  1245. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1246. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1247. // Copyright (c) 1991, 1993
  1248. // The Regents of the University of California. All rights reserved.
  1249. //
  1250. // This code is derived from software contributed to Berkeley by
  1251. // Berkeley Software Design, Inc.
  1252. //
  1253. // Redistribution and use in source and binary forms, with or without
  1254. // modification, are permitted provided that the following conditions
  1255. // are met:
  1256. // 1. Redistributions of source code must retain the above copyright
  1257. // notice, this list of conditions and the following disclaimer.
  1258. // 2. Redistributions in binary form must reproduce the above copyright
  1259. // notice, this list of conditions and the following disclaimer in the
  1260. // documentation and/or other materials provided with the distribution.
  1261. // 3. All advertising materials mentioning features or use of this software
  1262. // must display the following acknowledgement:
  1263. // This product includes software developed by the University of
  1264. // California, Berkeley and its contributors.
  1265. // 4. Neither the name of the University nor the names of its contributors
  1266. // may be used to endorse or promote products derived from this software
  1267. // without specific prior written permission.
  1268. //
  1269. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1270. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1271. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1272. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1273. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1274. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1275. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1276. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1277. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1278. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1279. // SUCH DAMAGE.
  1280. //
  1281. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1282. // Basic integral types. Omit the typedef if
  1283. // not possible for a machine/compiler combination.
  1284. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1285. //
  1286. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1287. //
  1288. // This file contains Original Code and/or Modifications of Original Code
  1289. // as defined in and that are subject to the Apple Public Source License
  1290. // Version 2.0 (the 'License'). You may not use this file except in
  1291. // compliance with the License. The rights granted to you under the License
  1292. // may not be used to create, or enable the creation or redistribution of,
  1293. // unlawful or unlicensed copies of an Apple operating system, or to
  1294. // circumvent, violate, or enable the circumvention or violation of, any
  1295. // terms of an Apple operating system software license agreement.
  1296. //
  1297. // Please obtain a copy of the License at
  1298. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1299. //
  1300. // The Original Code and all software distributed under the License are
  1301. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1302. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1303. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1304. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1305. // Please see the License for the specific language governing rights and
  1306. // limitations under the License.
  1307. //
  1308. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1309. type Int8_t = int8 /* _int8_t.h:30:33 */
  1310. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1311. //
  1312. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1313. //
  1314. // This file contains Original Code and/or Modifications of Original Code
  1315. // as defined in and that are subject to the Apple Public Source License
  1316. // Version 2.0 (the 'License'). You may not use this file except in
  1317. // compliance with the License. The rights granted to you under the License
  1318. // may not be used to create, or enable the creation or redistribution of,
  1319. // unlawful or unlicensed copies of an Apple operating system, or to
  1320. // circumvent, violate, or enable the circumvention or violation of, any
  1321. // terms of an Apple operating system software license agreement.
  1322. //
  1323. // Please obtain a copy of the License at
  1324. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1325. //
  1326. // The Original Code and all software distributed under the License are
  1327. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1328. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1329. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1330. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1331. // Please see the License for the specific language governing rights and
  1332. // limitations under the License.
  1333. //
  1334. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1335. type Int16_t = int16 /* _int16_t.h:30:33 */
  1336. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1337. //
  1338. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1339. //
  1340. // This file contains Original Code and/or Modifications of Original Code
  1341. // as defined in and that are subject to the Apple Public Source License
  1342. // Version 2.0 (the 'License'). You may not use this file except in
  1343. // compliance with the License. The rights granted to you under the License
  1344. // may not be used to create, or enable the creation or redistribution of,
  1345. // unlawful or unlicensed copies of an Apple operating system, or to
  1346. // circumvent, violate, or enable the circumvention or violation of, any
  1347. // terms of an Apple operating system software license agreement.
  1348. //
  1349. // Please obtain a copy of the License at
  1350. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1351. //
  1352. // The Original Code and all software distributed under the License are
  1353. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1354. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1355. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1356. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1357. // Please see the License for the specific language governing rights and
  1358. // limitations under the License.
  1359. //
  1360. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1361. type Int32_t = int32 /* _int32_t.h:30:33 */
  1362. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1363. //
  1364. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1365. //
  1366. // This file contains Original Code and/or Modifications of Original Code
  1367. // as defined in and that are subject to the Apple Public Source License
  1368. // Version 2.0 (the 'License'). You may not use this file except in
  1369. // compliance with the License. The rights granted to you under the License
  1370. // may not be used to create, or enable the creation or redistribution of,
  1371. // unlawful or unlicensed copies of an Apple operating system, or to
  1372. // circumvent, violate, or enable the circumvention or violation of, any
  1373. // terms of an Apple operating system software license agreement.
  1374. //
  1375. // Please obtain a copy of the License at
  1376. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1377. //
  1378. // The Original Code and all software distributed under the License are
  1379. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1380. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1381. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1382. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1383. // Please see the License for the specific language governing rights and
  1384. // limitations under the License.
  1385. //
  1386. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1387. type Int64_t = int64 /* _int64_t.h:30:33 */
  1388. // Copyright (c) 2016 Apple Inc. All rights reserved.
  1389. //
  1390. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1391. //
  1392. // This file contains Original Code and/or Modifications of Original Code
  1393. // as defined in and that are subject to the Apple Public Source License
  1394. // Version 2.0 (the 'License'). You may not use this file except in
  1395. // compliance with the License. The rights granted to you under the License
  1396. // may not be used to create, or enable the creation or redistribution of,
  1397. // unlawful or unlicensed copies of an Apple operating system, or to
  1398. // circumvent, violate, or enable the circumvention or violation of, any
  1399. // terms of an Apple operating system software license agreement.
  1400. //
  1401. // Please obtain a copy of the License at
  1402. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1403. //
  1404. // The Original Code and all software distributed under the License are
  1405. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1406. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1407. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1408. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1409. // Please see the License for the specific language governing rights and
  1410. // limitations under the License.
  1411. //
  1412. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1413. type U_int8_t = uint8 /* _u_int8_t.h:30:33 */
  1414. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1415. //
  1416. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1417. //
  1418. // This file contains Original Code and/or Modifications of Original Code
  1419. // as defined in and that are subject to the Apple Public Source License
  1420. // Version 2.0 (the 'License'). You may not use this file except in
  1421. // compliance with the License. The rights granted to you under the License
  1422. // may not be used to create, or enable the creation or redistribution of,
  1423. // unlawful or unlicensed copies of an Apple operating system, or to
  1424. // circumvent, violate, or enable the circumvention or violation of, any
  1425. // terms of an Apple operating system software license agreement.
  1426. //
  1427. // Please obtain a copy of the License at
  1428. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1429. //
  1430. // The Original Code and all software distributed under the License are
  1431. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1432. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1433. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1434. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1435. // Please see the License for the specific language governing rights and
  1436. // limitations under the License.
  1437. //
  1438. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1439. type U_int16_t = uint16 /* _u_int16_t.h:30:41 */
  1440. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1441. //
  1442. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1443. //
  1444. // This file contains Original Code and/or Modifications of Original Code
  1445. // as defined in and that are subject to the Apple Public Source License
  1446. // Version 2.0 (the 'License'). You may not use this file except in
  1447. // compliance with the License. The rights granted to you under the License
  1448. // may not be used to create, or enable the creation or redistribution of,
  1449. // unlawful or unlicensed copies of an Apple operating system, or to
  1450. // circumvent, violate, or enable the circumvention or violation of, any
  1451. // terms of an Apple operating system software license agreement.
  1452. //
  1453. // Please obtain a copy of the License at
  1454. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1455. //
  1456. // The Original Code and all software distributed under the License are
  1457. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1458. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1459. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1460. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1461. // Please see the License for the specific language governing rights and
  1462. // limitations under the License.
  1463. //
  1464. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1465. type U_int32_t = uint32 /* _u_int32_t.h:30:33 */
  1466. // Copyright (c) 2012 Apple Inc. All rights reserved.
  1467. //
  1468. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1469. //
  1470. // This file contains Original Code and/or Modifications of Original Code
  1471. // as defined in and that are subject to the Apple Public Source License
  1472. // Version 2.0 (the 'License'). You may not use this file except in
  1473. // compliance with the License. The rights granted to you under the License
  1474. // may not be used to create, or enable the creation or redistribution of,
  1475. // unlawful or unlicensed copies of an Apple operating system, or to
  1476. // circumvent, violate, or enable the circumvention or violation of, any
  1477. // terms of an Apple operating system software license agreement.
  1478. //
  1479. // Please obtain a copy of the License at
  1480. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1481. //
  1482. // The Original Code and all software distributed under the License are
  1483. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1484. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1485. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1486. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1487. // Please see the License for the specific language governing rights and
  1488. // limitations under the License.
  1489. //
  1490. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1491. type U_int64_t = uint64 /* _u_int64_t.h:30:33 */
  1492. type Register_t = Int64_t /* types.h:87:33 */
  1493. // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1494. //
  1495. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1496. //
  1497. // This file contains Original Code and/or Modifications of Original Code
  1498. // as defined in and that are subject to the Apple Public Source License
  1499. // Version 2.0 (the 'License'). You may not use this file except in
  1500. // compliance with the License. The rights granted to you under the License
  1501. // may not be used to create, or enable the creation or redistribution of,
  1502. // unlawful or unlicensed copies of an Apple operating system, or to
  1503. // circumvent, violate, or enable the circumvention or violation of, any
  1504. // terms of an Apple operating system software license agreement.
  1505. //
  1506. // Please obtain a copy of the License at
  1507. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1508. //
  1509. // The Original Code and all software distributed under the License are
  1510. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1511. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1512. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1513. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1514. // Please see the License for the specific language governing rights and
  1515. // limitations under the License.
  1516. //
  1517. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1518. // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1519. //
  1520. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1521. //
  1522. // This file contains Original Code and/or Modifications of Original Code
  1523. // as defined in and that are subject to the Apple Public Source License
  1524. // Version 2.0 (the 'License'). You may not use this file except in
  1525. // compliance with the License. The rights granted to you under the License
  1526. // may not be used to create, or enable the creation or redistribution of,
  1527. // unlawful or unlicensed copies of an Apple operating system, or to
  1528. // circumvent, violate, or enable the circumvention or violation of, any
  1529. // terms of an Apple operating system software license agreement.
  1530. //
  1531. // Please obtain a copy of the License at
  1532. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1533. //
  1534. // The Original Code and all software distributed under the License are
  1535. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1536. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1537. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1538. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1539. // Please see the License for the specific language governing rights and
  1540. // limitations under the License.
  1541. //
  1542. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1543. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1544. type Intptr_t = X__darwin_intptr_t /* _intptr_t.h:32:33 */
  1545. // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1546. //
  1547. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1548. //
  1549. // This file contains Original Code and/or Modifications of Original Code
  1550. // as defined in and that are subject to the Apple Public Source License
  1551. // Version 2.0 (the 'License'). You may not use this file except in
  1552. // compliance with the License. The rights granted to you under the License
  1553. // may not be used to create, or enable the creation or redistribution of,
  1554. // unlawful or unlicensed copies of an Apple operating system, or to
  1555. // circumvent, violate, or enable the circumvention or violation of, any
  1556. // terms of an Apple operating system software license agreement.
  1557. //
  1558. // Please obtain a copy of the License at
  1559. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1560. //
  1561. // The Original Code and all software distributed under the License are
  1562. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1563. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1564. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1565. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1566. // Please see the License for the specific language governing rights and
  1567. // limitations under the License.
  1568. //
  1569. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1570. type Uintptr_t = uint64 /* _uintptr_t.h:30:33 */
  1571. // These types are used for reserving the largest possible size.
  1572. type User_addr_t = U_int64_t /* types.h:97:33 */
  1573. type User_size_t = U_int64_t /* types.h:98:33 */
  1574. type User_ssize_t = Int64_t /* types.h:99:33 */
  1575. type User_long_t = Int64_t /* types.h:100:33 */
  1576. type User_ulong_t = U_int64_t /* types.h:101:33 */
  1577. type User_time_t = Int64_t /* types.h:102:33 */
  1578. type User_off_t = Int64_t /* types.h:103:33 */
  1579. // This defines the size of syscall arguments after copying into the kernel:
  1580. type Syscall_arg_t = U_int64_t /* types.h:111:33 */
  1581. type Va_list = X__darwin_va_list /* _va_list.h:32:26 */
  1582. type Fpos_t = X__darwin_off_t /* _stdio.h:81:25 */
  1583. // NB: to fit things in six character monocase externals, the stdio
  1584. // code uses the prefix `__s' for stdio objects, typically followed
  1585. // by a three-character attempt at a mnemonic.
  1586. // stdio buffers
  1587. type X__sbuf = struct {
  1588. F_base uintptr
  1589. F_size int32
  1590. F__ccgo_pad1 [4]byte
  1591. } /* _stdio.h:92:1 */
  1592. // stdio state variables.
  1593. //
  1594. // The following always hold:
  1595. //
  1596. // if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  1597. // _lbfsize is -_bf._size, else _lbfsize is 0
  1598. // if _flags&__SRD, _w is 0
  1599. // if _flags&__SWR, _r is 0
  1600. //
  1601. // This ensures that the getc and putc macros (or inline functions) never
  1602. // try to write or read from a file that is in `read' or `write' mode.
  1603. // (Moreover, they can, and do, automatically switch from read mode to
  1604. // write mode, and back, on "r+" and "w+" files.)
  1605. //
  1606. // _lbfsize is used only to make the inline line-buffered output stream
  1607. // code as compact as possible.
  1608. //
  1609. // _ub, _up, and _ur are used when ungetc() pushes back more characters
  1610. // than fit in the current _bf, or when ungetc() pushes back a character
  1611. // that does not match the previous one in _bf. When this happens,
  1612. // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  1613. // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  1614. //
  1615. // NB: see WARNING above before changing the layout of this structure!
  1616. type X__sFILE = struct {
  1617. F_p uintptr
  1618. F_r int32
  1619. F_w int32
  1620. F_flags int16
  1621. F_file int16
  1622. F__ccgo_pad1 [4]byte
  1623. F_bf struct {
  1624. F_base uintptr
  1625. F_size int32
  1626. F__ccgo_pad1 [4]byte
  1627. }
  1628. F_lbfsize int32
  1629. F__ccgo_pad2 [4]byte
  1630. F_cookie uintptr
  1631. F_close uintptr
  1632. F_read uintptr
  1633. F_seek uintptr
  1634. F_write uintptr
  1635. F_ub struct {
  1636. F_base uintptr
  1637. F_size int32
  1638. F__ccgo_pad1 [4]byte
  1639. }
  1640. F_extra uintptr
  1641. F_ur int32
  1642. F_ubuf [3]uint8
  1643. F_nbuf [1]uint8
  1644. F_lb struct {
  1645. F_base uintptr
  1646. F_size int32
  1647. F__ccgo_pad1 [4]byte
  1648. }
  1649. F_blksize int32
  1650. F__ccgo_pad3 [4]byte
  1651. F_offset Fpos_t
  1652. } /* _stdio.h:126:9 */
  1653. // stdio state variables.
  1654. //
  1655. // The following always hold:
  1656. //
  1657. // if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  1658. // _lbfsize is -_bf._size, else _lbfsize is 0
  1659. // if _flags&__SRD, _w is 0
  1660. // if _flags&__SWR, _r is 0
  1661. //
  1662. // This ensures that the getc and putc macros (or inline functions) never
  1663. // try to write or read from a file that is in `read' or `write' mode.
  1664. // (Moreover, they can, and do, automatically switch from read mode to
  1665. // write mode, and back, on "r+" and "w+" files.)
  1666. //
  1667. // _lbfsize is used only to make the inline line-buffered output stream
  1668. // code as compact as possible.
  1669. //
  1670. // _ub, _up, and _ur are used when ungetc() pushes back more characters
  1671. // than fit in the current _bf, or when ungetc() pushes back a character
  1672. // that does not match the previous one in _bf. When this happens,
  1673. // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  1674. // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  1675. //
  1676. // NB: see WARNING above before changing the layout of this structure!
  1677. type FILE = X__sFILE /* _stdio.h:157:3 */
  1678. // Additional functionality provided by:
  1679. // POSIX.1-2001
  1680. // ISO C99
  1681. // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1682. //
  1683. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1684. //
  1685. // This file contains Original Code and/or Modifications of Original Code
  1686. // as defined in and that are subject to the Apple Public Source License
  1687. // Version 2.0 (the 'License'). You may not use this file except in
  1688. // compliance with the License. The rights granted to you under the License
  1689. // may not be used to create, or enable the creation or redistribution of,
  1690. // unlawful or unlicensed copies of an Apple operating system, or to
  1691. // circumvent, violate, or enable the circumvention or violation of, any
  1692. // terms of an Apple operating system software license agreement.
  1693. //
  1694. // Please obtain a copy of the License at
  1695. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1696. //
  1697. // The Original Code and all software distributed under the License are
  1698. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1699. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1700. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1701. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1702. // Please see the License for the specific language governing rights and
  1703. // limitations under the License.
  1704. //
  1705. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1706. // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  1707. //
  1708. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1709. //
  1710. // This file contains Original Code and/or Modifications of Original Code
  1711. // as defined in and that are subject to the Apple Public Source License
  1712. // Version 2.0 (the 'License'). You may not use this file except in
  1713. // compliance with the License. The rights granted to you under the License
  1714. // may not be used to create, or enable the creation or redistribution of,
  1715. // unlawful or unlicensed copies of an Apple operating system, or to
  1716. // circumvent, violate, or enable the circumvention or violation of, any
  1717. // terms of an Apple operating system software license agreement.
  1718. //
  1719. // Please obtain a copy of the License at
  1720. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1721. //
  1722. // The Original Code and all software distributed under the License are
  1723. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1724. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1725. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1726. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1727. // Please see the License for the specific language governing rights and
  1728. // limitations under the License.
  1729. //
  1730. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1731. type Off_t = X__darwin_off_t /* _off_t.h:31:33 */
  1732. // Additional functionality provided by:
  1733. // POSIX.1-2008
  1734. // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1735. //
  1736. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1737. //
  1738. // This file contains Original Code and/or Modifications of Original Code
  1739. // as defined in and that are subject to the Apple Public Source License
  1740. // Version 2.0 (the 'License'). You may not use this file except in
  1741. // compliance with the License. The rights granted to you under the License
  1742. // may not be used to create, or enable the creation or redistribution of,
  1743. // unlawful or unlicensed copies of an Apple operating system, or to
  1744. // circumvent, violate, or enable the circumvention or violation of, any
  1745. // terms of an Apple operating system software license agreement.
  1746. //
  1747. // Please obtain a copy of the License at
  1748. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1749. //
  1750. // The Original Code and all software distributed under the License are
  1751. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1752. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1753. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1754. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1755. // Please see the License for the specific language governing rights and
  1756. // limitations under the License.
  1757. //
  1758. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1759. // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1760. //
  1761. // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1762. //
  1763. // This file contains Original Code and/or Modifications of Original Code
  1764. // as defined in and that are subject to the Apple Public Source License
  1765. // Version 2.0 (the 'License'). You may not use this file except in
  1766. // compliance with the License. The rights granted to you under the License
  1767. // may not be used to create, or enable the creation or redistribution of,
  1768. // unlawful or unlicensed copies of an Apple operating system, or to
  1769. // circumvent, violate, or enable the circumvention or violation of, any
  1770. // terms of an Apple operating system software license agreement.
  1771. //
  1772. // Please obtain a copy of the License at
  1773. // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1774. //
  1775. // The Original Code and all software distributed under the License are
  1776. // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1777. // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1778. // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1779. // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1780. // Please see the License for the specific language governing rights and
  1781. // limitations under the License.
  1782. //
  1783. // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1784. // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1785. type Ssize_t = X__darwin_ssize_t /* _ssize_t.h:31:33 */
  1786. var _ int8 /* gen.c:2:13: */