grp_netbsd_amd64.go 75 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596
  1. // Code generated by 'ccgo grp/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 grp/grp_netbsd_amd64.go -pkgname grp', DO NOT EDIT.
  2. package grp
  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. BIG_ENDIAN = 4321 // endian.h:101:1:
  15. BYTE_ORDER = 1234 // endian.h:103:1:
  16. FD_SETSIZE = 256 // fd_set.h:59:1:
  17. INT16_MAX = 32767 // common_int_limits.h:53:1:
  18. INT16_MIN = -32768 // common_int_limits.h:47:1:
  19. INT32_MAX = 2147483647 // common_int_limits.h:54:1:
  20. INT32_MIN = -2147483648 // common_int_limits.h:48:1:
  21. INT64_MAX = 9223372036854775807 // common_int_limits.h:55:1:
  22. INT64_MIN = -9223372036854775808 // common_int_limits.h:49:1:
  23. INT8_MAX = 127 // common_int_limits.h:52:1:
  24. INT8_MIN = -128 // common_int_limits.h:46:1:
  25. INTMAX_MAX = 9223372036854775807 // common_int_limits.h:111:1:
  26. INTMAX_MIN = -9223372036854775808 // common_int_limits.h:110:1:
  27. INTPTR_MAX = 9223372036854775807 // common_int_limits.h:105:1:
  28. INTPTR_MIN = -9223372036854775808 // common_int_limits.h:104:1:
  29. INT_FAST16_MAX = 2147483647 // common_int_limits.h:93:1:
  30. INT_FAST16_MIN = -2147483648 // common_int_limits.h:87:1:
  31. INT_FAST32_MAX = 2147483647 // common_int_limits.h:94:1:
  32. INT_FAST32_MIN = -2147483648 // common_int_limits.h:88:1:
  33. INT_FAST64_MAX = 9223372036854775807 // common_int_limits.h:95:1:
  34. INT_FAST64_MIN = -9223372036854775808 // common_int_limits.h:89:1:
  35. INT_FAST8_MAX = 2147483647 // common_int_limits.h:92:1:
  36. INT_FAST8_MIN = -2147483648 // common_int_limits.h:86:1:
  37. INT_LEAST16_MAX = 32767 // common_int_limits.h:73:1:
  38. INT_LEAST16_MIN = -32768 // common_int_limits.h:67:1:
  39. INT_LEAST32_MAX = 2147483647 // common_int_limits.h:74:1:
  40. INT_LEAST32_MIN = -2147483648 // common_int_limits.h:68:1:
  41. INT_LEAST64_MAX = 9223372036854775807 // common_int_limits.h:75:1:
  42. INT_LEAST64_MIN = -9223372036854775808 // common_int_limits.h:69:1:
  43. INT_LEAST8_MAX = 127 // common_int_limits.h:72:1:
  44. INT_LEAST8_MIN = -128 // common_int_limits.h:66:1:
  45. LITTLE_ENDIAN = 1234 // endian.h:100:1:
  46. NBBY = 8 // types.h:316:1:
  47. NFDBITS = 32 // fd_set.h:93:1:
  48. NODEVMAJOR = -1 // types.h:258:1:
  49. PDP_ENDIAN = 3412 // endian.h:102:1:
  50. PTRDIFF_MAX = 9223372036854775807 // common_int_limits.h:121:1:
  51. PTRDIFF_MIN = -9223372036854775808 // common_int_limits.h:120:1:
  52. SIG_ATOMIC_MAX = 2147483647 // common_int_limits.h:125:1:
  53. SIG_ATOMIC_MIN = -2147483648 // common_int_limits.h:124:1:
  54. SIZE_MAX = 18446744073709551615 // common_int_limits.h:128:1:
  55. UINT16_MAX = 65535 // common_int_limits.h:59:1:
  56. UINT32_MAX = 4294967295 // common_int_limits.h:60:1:
  57. UINT64_MAX = 18446744073709551615 // common_int_limits.h:61:1:
  58. UINT8_MAX = 255 // common_int_limits.h:58:1:
  59. UINTMAX_MAX = 18446744073709551615 // common_int_limits.h:112:1:
  60. UINTPTR_MAX = 18446744073709551615 // common_int_limits.h:106:1:
  61. UINT_FAST16_MAX = 4294967295 // common_int_limits.h:99:1:
  62. UINT_FAST32_MAX = 4294967295 // common_int_limits.h:100:1:
  63. UINT_FAST64_MAX = 18446744073709551615 // common_int_limits.h:101:1:
  64. UINT_FAST8_MAX = 4294967295 // common_int_limits.h:98:1:
  65. UINT_LEAST16_MAX = 65535 // common_int_limits.h:79:1:
  66. UINT_LEAST32_MAX = 4294967295 // common_int_limits.h:80:1:
  67. UINT_LEAST64_MAX = 18446744073709551615 // common_int_limits.h:81:1:
  68. UINT_LEAST8_MAX = 255 // common_int_limits.h:78:1:
  69. WCHAR_MAX = 0x7fffffff // wchar_limits.h:41:1:
  70. WCHAR_MIN = -2147483648 // wchar_limits.h:40:1:
  71. WINT_MAX = 0x7fffffff // wchar_limits.h:45:1:
  72. WINT_MIN = -2147483648 // wchar_limits.h:44:1:
  73. X_AMD64_BYTE_SWAP_H_ = 0 // byte_swap.h:37:1:
  74. X_AMD64_INT_CONST_H_ = 0 // int_const.h:33:1:
  75. X_AMD64_INT_LIMITS_H_ = 0 // int_limits.h:33:1:
  76. X_AMD64_INT_MWGWTYPES_H_ = 0 // int_mwgwtypes.h:33:1:
  77. X_AMD64_INT_TYPES_H_ = 0 // int_types.h:35:1:
  78. X_AMD64_WCHAR_LIMITS_H_ = 0 // wchar_limits.h:33:1:
  79. X_BIG_ENDIAN = 4321 // endian.h:44:1:
  80. X_BSD_INT16_T_ = 0 // types.h:65:1:
  81. X_BSD_INT32_T_ = 0 // types.h:75:1:
  82. X_BSD_INT64_T_ = 0 // types.h:85:1:
  83. X_BSD_INT8_T_ = 0 // types.h:55:1:
  84. X_BSD_INTPTR_T_ = 0 // stdint.h:80:1:
  85. X_BSD_UINT16_T_ = 0 // types.h:70:1:
  86. X_BSD_UINT32_T_ = 0 // types.h:80:1:
  87. X_BSD_UINT64_T_ = 0 // types.h:90:1:
  88. X_BSD_UINT8_T_ = 0 // types.h:60:1:
  89. X_BSD_UINTPTR_T_ = 0 // stdint.h:85:1:
  90. X_BYTE_ORDER = 1234 // endian_machdep.h:3:1:
  91. X_FILE_OFFSET_BITS = 64 // <builtin>:25:1:
  92. X_GRP_H_ = 0 // grp.h:40:1:
  93. X_LIB_PTHREAD_TYPES_H = 0 // pthread_types.h:33:1:
  94. X_LITTLE_ENDIAN = 1234 // endian.h:43:1:
  95. X_LP64 = 1 // <predefined>:268:1:
  96. X_NETBSD_SOURCE = 1 // featuretest.h:70:1:
  97. X_PATH_GROUP = "/etc/group" // grp.h:47:1:
  98. X_PDP_ENDIAN = 3412 // endian.h:45:1:
  99. X_PT_BARRIERATTR_DEAD = 0xDEAD0808 // pthread_types.h:278:1:
  100. X_PT_BARRIERATTR_MAGIC = 0x88880808 // pthread_types.h:277:1:
  101. X_PT_BARRIER_DEAD = 0xDEAD0008 // pthread_types.h:270:1:
  102. X_PT_BARRIER_MAGIC = 0x88880008 // pthread_types.h:269:1:
  103. X_PT_CONDATTR_DEAD = 0xDEAD0006 // pthread_types.h:197:1:
  104. X_PT_CONDATTR_MAGIC = 0x66660006 // pthread_types.h:196:1:
  105. X_PT_COND_DEAD = 0xDEAD0005 // pthread_types.h:182:1:
  106. X_PT_COND_MAGIC = 0x55550005 // pthread_types.h:181:1:
  107. X_PT_MUTEXATTR_DEAD = 0xDEAD0004 // pthread_types.h:167:1:
  108. X_PT_MUTEXATTR_MAGIC = 0x44440004 // pthread_types.h:166:1:
  109. X_PT_MUTEX_DEAD = 0xDEAD0003 // pthread_types.h:139:1:
  110. X_PT_MUTEX_MAGIC = 0x33330003 // pthread_types.h:138:1:
  111. X_PT_RWLOCKATTR_DEAD = 0xDEAD0909 // pthread_types.h:253:1:
  112. X_PT_RWLOCKATTR_MAGIC = 0x99990909 // pthread_types.h:252:1:
  113. X_PT_RWLOCK_DEAD = 0xDEAD0009 // pthread_types.h:236:1:
  114. X_PT_RWLOCK_MAGIC = 0x99990009 // pthread_types.h:235:1:
  115. X_PT_SPINLOCK_DEAD = 0xDEAD0007 // pthread_types.h:213:1:
  116. X_PT_SPINLOCK_MAGIC = 0x77770007 // pthread_types.h:212:1:
  117. X_PT_SPINLOCK_PSHARED = 0x00000001 // pthread_types.h:214:1:
  118. X_QUAD_HIGHWORD = 1 // endian.h:84:1:
  119. X_QUAD_LOWWORD = 0 // endian.h:85:1:
  120. X_SIZE_T = 0 // types.h:279:1:
  121. X_SYS_ANSI_H_ = 0 // ansi.h:33:1:
  122. X_SYS_BSWAP_H_ = 0 // bswap.h:6:1:
  123. X_SYS_CDEFS_ELF_H_ = 0 // cdefs_elf.h:31:1:
  124. X_SYS_CDEFS_H_ = 0 // cdefs.h:37:1:
  125. X_SYS_COMMON_ANSI_H_ = 0 // common_ansi.h:33:1:
  126. X_SYS_COMMON_INT_LIMITS_H_ = 0 // common_int_limits.h:33:1:
  127. X_SYS_COMMON_INT_MWGWTYPES_H_ = 0 // common_int_mwgwtypes.h:33:1:
  128. X_SYS_COMMON_INT_TYPES_H_ = 0 // common_int_types.h:33:1:
  129. X_SYS_ENDIAN_H_ = 0 // endian.h:35:1:
  130. X_SYS_FD_SET_H_ = 0 // fd_set.h:35:1:
  131. X_SYS_STDINT_H_ = 0 // stdint.h:33:1:
  132. X_SYS_TYPES_H_ = 0 // types.h:40:1:
  133. X_X86_64_BSWAP_H_ = 0 // bswap.h:6:1:
  134. X_X86_64_CDEFS_H_ = 0 // cdefs.h:4:1:
  135. X_X86_64_TYPES_H_ = 0 // types.h:35:1:
  136. )
  137. type Ptrdiff_t = int64 /* <builtin>:3:26 */
  138. type Size_t = uint64 /* <builtin>:9:23 */
  139. type Wchar_t = int32 /* <builtin>:15:24 */
  140. type X__int128_t = struct {
  141. Flo int64
  142. Fhi int64
  143. } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
  144. type X__uint128_t = struct {
  145. Flo uint64
  146. Fhi uint64
  147. } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
  148. type X__builtin_va_list = uintptr /* <builtin>:46:14 */
  149. type X__float128 = float64 /* <builtin>:47:21 */
  150. // return true if value 'a' fits in type 't'
  151. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  152. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  153. // Public domain.
  154. //
  155. // NOTE: Do not protect this header against multiple inclusion. Doing
  156. // so can have subtle side-effects due to header file inclusion order
  157. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  158. // protect each CPP macro that we want to supply.
  159. // Feature-test macros are defined by several standards, and allow an
  160. // application to specify what symbols they want the system headers to
  161. // expose, and hence what standard they want them to conform to.
  162. // There are two classes of feature-test macros. The first class
  163. // specify complete standards, and if one of these is defined, header
  164. // files will try to conform to the relevant standard. They are:
  165. //
  166. // ANSI macros:
  167. // _ANSI_SOURCE ANSI C89
  168. //
  169. // POSIX macros:
  170. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  171. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  172. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  173. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  174. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  175. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  176. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  177. //
  178. // X/Open macros:
  179. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  180. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  181. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  182. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  183. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  184. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  185. //
  186. // NetBSD macros:
  187. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  188. //
  189. // If more than one of these "major" feature-test macros is defined,
  190. // then the set of facilities provided (and namespace used) is the
  191. // union of that specified by the relevant standards, and in case of
  192. // conflict, the earlier standard in the above list has precedence (so
  193. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  194. // of rename() that's used is the POSIX one). If none of the "major"
  195. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  196. //
  197. // There are also "minor" feature-test macros, which enable extra
  198. // functionality in addition to some base standard. They should be
  199. // defined along with one of the "major" macros. The "minor" macros
  200. // are:
  201. //
  202. // _REENTRANT
  203. // _ISOC99_SOURCE
  204. // _ISOC11_SOURCE
  205. // _LARGEFILE_SOURCE Large File Support
  206. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  207. // $NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  208. // -
  209. // Copyright (c) 1982, 1986, 1991, 1993, 1994
  210. // The Regents of the University of California. All rights reserved.
  211. // (c) UNIX System Laboratories, Inc.
  212. // All or some portions of this file are derived from material licensed
  213. // to the University of California by American Telephone and Telegraph
  214. // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  215. // the permission of UNIX System Laboratories, Inc.
  216. //
  217. // Redistribution and use in source and binary forms, with or without
  218. // modification, are permitted provided that the following conditions
  219. // are met:
  220. // 1. Redistributions of source code must retain the above copyright
  221. // notice, this list of conditions and the following disclaimer.
  222. // 2. Redistributions in binary form must reproduce the above copyright
  223. // notice, this list of conditions and the following disclaimer in the
  224. // documentation and/or other materials provided with the distribution.
  225. // 3. Neither the name of the University nor the names of its contributors
  226. // may be used to endorse or promote products derived from this software
  227. // without specific prior written permission.
  228. //
  229. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  230. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  231. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  232. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  233. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  234. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  235. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  236. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  237. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  238. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  239. // SUCH DAMAGE.
  240. //
  241. // @(#)types.h 8.4 (Berkeley) 1/21/94
  242. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  243. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  244. // Public domain.
  245. //
  246. // NOTE: Do not protect this header against multiple inclusion. Doing
  247. // so can have subtle side-effects due to header file inclusion order
  248. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  249. // protect each CPP macro that we want to supply.
  250. // Feature-test macros are defined by several standards, and allow an
  251. // application to specify what symbols they want the system headers to
  252. // expose, and hence what standard they want them to conform to.
  253. // There are two classes of feature-test macros. The first class
  254. // specify complete standards, and if one of these is defined, header
  255. // files will try to conform to the relevant standard. They are:
  256. //
  257. // ANSI macros:
  258. // _ANSI_SOURCE ANSI C89
  259. //
  260. // POSIX macros:
  261. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  262. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  263. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  264. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  265. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  266. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  267. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  268. //
  269. // X/Open macros:
  270. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  271. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  272. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  273. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  274. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  275. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  276. //
  277. // NetBSD macros:
  278. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  279. //
  280. // If more than one of these "major" feature-test macros is defined,
  281. // then the set of facilities provided (and namespace used) is the
  282. // union of that specified by the relevant standards, and in case of
  283. // conflict, the earlier standard in the above list has precedence (so
  284. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  285. // of rename() that's used is the POSIX one). If none of the "major"
  286. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  287. //
  288. // There are also "minor" feature-test macros, which enable extra
  289. // functionality in addition to some base standard. They should be
  290. // defined along with one of the "major" macros. The "minor" macros
  291. // are:
  292. //
  293. // _REENTRANT
  294. // _ISOC99_SOURCE
  295. // _ISOC11_SOURCE
  296. // _LARGEFILE_SOURCE Large File Support
  297. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  298. // Machine type dependent parameters.
  299. // $NetBSD: types.h,v 1.60 2019/04/06 03:06:24 thorpej Exp $
  300. // -
  301. // Copyright (c) 1990 The Regents of the University of California.
  302. // All rights reserved.
  303. //
  304. // Redistribution and use in source and binary forms, with or without
  305. // modification, are permitted provided that the following conditions
  306. // are met:
  307. // 1. Redistributions of source code must retain the above copyright
  308. // notice, this list of conditions and the following disclaimer.
  309. // 2. Redistributions in binary form must reproduce the above copyright
  310. // notice, this list of conditions and the following disclaimer in the
  311. // documentation and/or other materials provided with the distribution.
  312. // 3. Neither the name of the University nor the names of its contributors
  313. // may be used to endorse or promote products derived from this software
  314. // without specific prior written permission.
  315. //
  316. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  317. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  318. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  319. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  320. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  321. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  322. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  323. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  324. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  325. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  326. // SUCH DAMAGE.
  327. //
  328. // @(#)types.h 7.5 (Berkeley) 3/9/91
  329. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  330. // * Copyright (c) 1991, 1993
  331. // The Regents of the University of California. All rights reserved.
  332. //
  333. // This code is derived from software contributed to Berkeley by
  334. // Berkeley Software Design, Inc.
  335. //
  336. // Redistribution and use in source and binary forms, with or without
  337. // modification, are permitted provided that the following conditions
  338. // are met:
  339. // 1. Redistributions of source code must retain the above copyright
  340. // notice, this list of conditions and the following disclaimer.
  341. // 2. Redistributions in binary form must reproduce the above copyright
  342. // notice, this list of conditions and the following disclaimer in the
  343. // documentation and/or other materials provided with the distribution.
  344. // 3. Neither the name of the University nor the names of its contributors
  345. // may be used to endorse or promote products derived from this software
  346. // without specific prior written permission.
  347. //
  348. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  349. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  350. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  351. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  352. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  353. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  354. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  355. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  356. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  357. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  358. // SUCH DAMAGE.
  359. //
  360. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  361. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  362. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  363. // Public domain.
  364. //
  365. // NOTE: Do not protect this header against multiple inclusion. Doing
  366. // so can have subtle side-effects due to header file inclusion order
  367. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  368. // protect each CPP macro that we want to supply.
  369. // Feature-test macros are defined by several standards, and allow an
  370. // application to specify what symbols they want the system headers to
  371. // expose, and hence what standard they want them to conform to.
  372. // There are two classes of feature-test macros. The first class
  373. // specify complete standards, and if one of these is defined, header
  374. // files will try to conform to the relevant standard. They are:
  375. //
  376. // ANSI macros:
  377. // _ANSI_SOURCE ANSI C89
  378. //
  379. // POSIX macros:
  380. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  381. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  382. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  383. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  384. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  385. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  386. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  387. //
  388. // X/Open macros:
  389. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  390. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  391. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  392. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  393. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  394. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  395. //
  396. // NetBSD macros:
  397. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  398. //
  399. // If more than one of these "major" feature-test macros is defined,
  400. // then the set of facilities provided (and namespace used) is the
  401. // union of that specified by the relevant standards, and in case of
  402. // conflict, the earlier standard in the above list has precedence (so
  403. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  404. // of rename() that's used is the POSIX one). If none of the "major"
  405. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  406. //
  407. // There are also "minor" feature-test macros, which enable extra
  408. // functionality in addition to some base standard. They should be
  409. // defined along with one of the "major" macros. The "minor" macros
  410. // are:
  411. //
  412. // _REENTRANT
  413. // _ISOC99_SOURCE
  414. // _ISOC11_SOURCE
  415. // _LARGEFILE_SOURCE Large File Support
  416. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  417. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  418. // -
  419. // Copyright (c) 1990 The Regents of the University of California.
  420. // All rights reserved.
  421. //
  422. // Redistribution and use in source and binary forms, with or without
  423. // modification, are permitted provided that the following conditions
  424. // are met:
  425. // 1. Redistributions of source code must retain the above copyright
  426. // notice, this list of conditions and the following disclaimer.
  427. // 2. Redistributions in binary form must reproduce the above copyright
  428. // notice, this list of conditions and the following disclaimer in the
  429. // documentation and/or other materials provided with the distribution.
  430. // 3. Neither the name of the University nor the names of its contributors
  431. // may be used to endorse or promote products derived from this software
  432. // without specific prior written permission.
  433. //
  434. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  435. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  436. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  437. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  438. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  439. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  440. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  441. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  442. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  443. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  444. // SUCH DAMAGE.
  445. //
  446. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  447. // $NetBSD: common_int_types.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
  448. // -
  449. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  450. // All rights reserved.
  451. //
  452. // This code is derived from software contributed to The NetBSD Foundation
  453. // by Joerg Sonnenberger.
  454. //
  455. // Redistribution and use in source and binary forms, with or without
  456. // modification, are permitted provided that the following conditions
  457. // are met:
  458. // 1. Redistributions of source code must retain the above copyright
  459. // notice, this list of conditions and the following disclaimer.
  460. // 2. Redistributions in binary form must reproduce the above copyright
  461. // notice, this list of conditions and the following disclaimer in the
  462. // documentation and/or other materials provided with the distribution.
  463. //
  464. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  465. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  466. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  467. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  468. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  469. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  470. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  471. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  472. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  473. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  474. // POSSIBILITY OF SUCH DAMAGE.
  475. // 7.18.1 Integer types
  476. // 7.18.1.1 Exact-width integer types
  477. type X__int8_t = int8 /* common_int_types.h:45:27 */
  478. type X__uint8_t = uint8 /* common_int_types.h:46:27 */
  479. type X__int16_t = int16 /* common_int_types.h:47:27 */
  480. type X__uint16_t = uint16 /* common_int_types.h:48:27 */
  481. type X__int32_t = int32 /* common_int_types.h:49:27 */
  482. type X__uint32_t = uint32 /* common_int_types.h:50:27 */
  483. type X__int64_t = int64 /* common_int_types.h:51:27 */
  484. type X__uint64_t = uint64 /* common_int_types.h:52:27 */
  485. // 7.18.1.4 Integer types capable of holding object pointers
  486. type X__intptr_t = int64 /* common_int_types.h:58:27 */
  487. type X__uintptr_t = uint64 /* common_int_types.h:59:26 */
  488. type X__register_t = int64 /* types.h:68:19 */
  489. type X__cpu_simple_lock_nv_t = uint8 /* types.h:69:24 */
  490. // __cpu_simple_lock_t used to be a full word.
  491. // The amd64 does not have strict alignment requirements.
  492. // $NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  493. // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  494. // -
  495. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  496. // All rights reserved.
  497. //
  498. // This code is derived from software contributed to The NetBSD Foundation
  499. // by Matt Thomas of 3am Software Foundry.
  500. //
  501. // Redistribution and use in source and binary forms, with or without
  502. // modification, are permitted provided that the following conditions
  503. // are met:
  504. // 1. Redistributions of source code must retain the above copyright
  505. // notice, this list of conditions and the following disclaimer.
  506. // 2. Redistributions in binary form must reproduce the above copyright
  507. // notice, this list of conditions and the following disclaimer in the
  508. // documentation and/or other materials provided with the distribution.
  509. //
  510. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  511. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  512. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  513. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  514. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  515. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  516. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  517. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  518. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  519. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  520. // POSSIBILITY OF SUCH DAMAGE.
  521. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  522. // * Copyright (c) 1991, 1993
  523. // The Regents of the University of California. All rights reserved.
  524. //
  525. // This code is derived from software contributed to Berkeley by
  526. // Berkeley Software Design, Inc.
  527. //
  528. // Redistribution and use in source and binary forms, with or without
  529. // modification, are permitted provided that the following conditions
  530. // are met:
  531. // 1. Redistributions of source code must retain the above copyright
  532. // notice, this list of conditions and the following disclaimer.
  533. // 2. Redistributions in binary form must reproduce the above copyright
  534. // notice, this list of conditions and the following disclaimer in the
  535. // documentation and/or other materials provided with the distribution.
  536. // 3. Neither the name of the University nor the names of its contributors
  537. // may be used to endorse or promote products derived from this software
  538. // without specific prior written permission.
  539. //
  540. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  541. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  542. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  543. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  544. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  545. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  546. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  547. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  548. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  549. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  550. // SUCH DAMAGE.
  551. //
  552. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  553. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  554. // -
  555. // Copyright (c) 1990 The Regents of the University of California.
  556. // All rights reserved.
  557. //
  558. // Redistribution and use in source and binary forms, with or without
  559. // modification, are permitted provided that the following conditions
  560. // are met:
  561. // 1. Redistributions of source code must retain the above copyright
  562. // notice, this list of conditions and the following disclaimer.
  563. // 2. Redistributions in binary form must reproduce the above copyright
  564. // notice, this list of conditions and the following disclaimer in the
  565. // documentation and/or other materials provided with the distribution.
  566. // 3. Neither the name of the University nor the names of its contributors
  567. // may be used to endorse or promote products derived from this software
  568. // without specific prior written permission.
  569. //
  570. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  571. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  572. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  573. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  574. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  575. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  576. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  577. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  578. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  579. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  580. // SUCH DAMAGE.
  581. //
  582. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  583. // Types which are fundamental to the implementation and may appear in
  584. // more than one standard header are defined here. Standard headers
  585. // then use:
  586. // #ifdef _BSD_SIZE_T_
  587. // typedef _BSD_SIZE_T_ size_t;
  588. // #undef _BSD_SIZE_T_
  589. // #endif
  590. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  591. // -
  592. // Copyright (c) 1990 The Regents of the University of California.
  593. // All rights reserved.
  594. //
  595. // Redistribution and use in source and binary forms, with or without
  596. // modification, are permitted provided that the following conditions
  597. // are met:
  598. // 1. Redistributions of source code must retain the above copyright
  599. // notice, this list of conditions and the following disclaimer.
  600. // 2. Redistributions in binary form must reproduce the above copyright
  601. // notice, this list of conditions and the following disclaimer in the
  602. // documentation and/or other materials provided with the distribution.
  603. // 3. Neither the name of the University nor the names of its contributors
  604. // may be used to endorse or promote products derived from this software
  605. // without specific prior written permission.
  606. //
  607. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  608. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  609. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  610. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  611. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  612. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  613. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  614. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  615. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  616. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  617. // SUCH DAMAGE.
  618. //
  619. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  620. // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  621. // -
  622. // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  623. // All rights reserved.
  624. //
  625. // This code is derived from software contributed to The NetBSD Foundation
  626. // by Jun-ichiro itojun Hagino and by Klaus Klein.
  627. //
  628. // Redistribution and use in source and binary forms, with or without
  629. // modification, are permitted provided that the following conditions
  630. // are met:
  631. // 1. Redistributions of source code must retain the above copyright
  632. // notice, this list of conditions and the following disclaimer.
  633. // 2. Redistributions in binary form must reproduce the above copyright
  634. // notice, this list of conditions and the following disclaimer in the
  635. // documentation and/or other materials provided with the distribution.
  636. //
  637. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  638. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  639. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  640. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  641. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  642. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  643. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  644. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  645. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  646. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  647. // POSSIBILITY OF SUCH DAMAGE.
  648. // $NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  649. // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  650. // -
  651. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  652. // All rights reserved.
  653. //
  654. // This code is derived from software contributed to The NetBSD Foundation
  655. // by Matt Thomas of 3am Software Foundry.
  656. //
  657. // Redistribution and use in source and binary forms, with or without
  658. // modification, are permitted provided that the following conditions
  659. // are met:
  660. // 1. Redistributions of source code must retain the above copyright
  661. // notice, this list of conditions and the following disclaimer.
  662. // 2. Redistributions in binary form must reproduce the above copyright
  663. // notice, this list of conditions and the following disclaimer in the
  664. // documentation and/or other materials provided with the distribution.
  665. //
  666. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  667. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  668. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  669. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  670. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  671. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  672. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  673. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  674. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  675. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  676. // POSSIBILITY OF SUCH DAMAGE.
  677. type X__caddr_t = uintptr /* ansi.h:37:14 */ // core address
  678. type X__gid_t = X__uint32_t /* ansi.h:38:20 */ // group id
  679. type X__in_addr_t = X__uint32_t /* ansi.h:39:20 */ // IP(v4) address
  680. type X__in_port_t = X__uint16_t /* ansi.h:40:20 */ // "Internet" port number
  681. type X__mode_t = X__uint32_t /* ansi.h:41:20 */ // file permissions
  682. type X__off_t = X__int64_t /* ansi.h:42:19 */ // file offset
  683. type X__pid_t = X__int32_t /* ansi.h:43:19 */ // process id
  684. type X__sa_family_t = X__uint8_t /* ansi.h:44:19 */ // socket address family
  685. type X__socklen_t = uint32 /* ansi.h:45:22 */ // socket-related datum length
  686. type X__uid_t = X__uint32_t /* ansi.h:46:20 */ // user id
  687. type X__fsblkcnt_t = X__uint64_t /* ansi.h:47:20 */ // fs block count (statvfs)
  688. type X__fsfilcnt_t = X__uint64_t /* ansi.h:48:20 */
  689. type X__wctrans_t = uintptr /* ansi.h:51:32 */
  690. type X__wctype_t = uintptr /* ansi.h:54:31 */
  691. // mbstate_t is an opaque object to keep conversion state, during multibyte
  692. // stream conversions. The content must not be referenced by user programs.
  693. type X__mbstate_t = struct {
  694. F__mbstateL X__int64_t
  695. F__ccgo_pad1 [120]byte
  696. } /* ansi.h:63:3 */
  697. type X__va_list = X__builtin_va_list /* ansi.h:72:27 */
  698. type Int8_t = X__int8_t /* types.h:54:18 */
  699. type Uint8_t = X__uint8_t /* types.h:59:19 */
  700. type Int16_t = X__int16_t /* types.h:64:19 */
  701. type Uint16_t = X__uint16_t /* types.h:69:20 */
  702. type Int32_t = X__int32_t /* types.h:74:19 */
  703. type Uint32_t = X__uint32_t /* types.h:79:20 */
  704. type Int64_t = X__int64_t /* types.h:84:19 */
  705. type Uint64_t = X__uint64_t /* types.h:89:20 */
  706. type U_int8_t = Uint8_t /* types.h:93:18 */
  707. type U_int16_t = Uint16_t /* types.h:94:18 */
  708. type U_int32_t = Uint32_t /* types.h:95:18 */
  709. type U_int64_t = Uint64_t /* types.h:96:18 */
  710. // $NetBSD: endian.h,v 1.1 2003/04/26 18:39:40 fvdl Exp $
  711. // $NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $
  712. // Copyright (c) 1987, 1991, 1993
  713. // The Regents of the University of California. All rights reserved.
  714. //
  715. // Redistribution and use in source and binary forms, with or without
  716. // modification, are permitted provided that the following conditions
  717. // are met:
  718. // 1. Redistributions of source code must retain the above copyright
  719. // notice, this list of conditions and the following disclaimer.
  720. // 2. Redistributions in binary form must reproduce the above copyright
  721. // notice, this list of conditions and the following disclaimer in the
  722. // documentation and/or other materials provided with the distribution.
  723. // 3. Neither the name of the University nor the names of its contributors
  724. // may be used to endorse or promote products derived from this software
  725. // without specific prior written permission.
  726. //
  727. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  728. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  729. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  730. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  731. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  732. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  733. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  734. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  735. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  736. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  737. // SUCH DAMAGE.
  738. //
  739. // @(#)endian.h 8.1 (Berkeley) 6/11/93
  740. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  741. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  742. // Public domain.
  743. //
  744. // NOTE: Do not protect this header against multiple inclusion. Doing
  745. // so can have subtle side-effects due to header file inclusion order
  746. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  747. // protect each CPP macro that we want to supply.
  748. // Feature-test macros are defined by several standards, and allow an
  749. // application to specify what symbols they want the system headers to
  750. // expose, and hence what standard they want them to conform to.
  751. // There are two classes of feature-test macros. The first class
  752. // specify complete standards, and if one of these is defined, header
  753. // files will try to conform to the relevant standard. They are:
  754. //
  755. // ANSI macros:
  756. // _ANSI_SOURCE ANSI C89
  757. //
  758. // POSIX macros:
  759. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  760. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  761. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  762. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  763. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  764. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  765. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  766. //
  767. // X/Open macros:
  768. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  769. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  770. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  771. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  772. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  773. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  774. //
  775. // NetBSD macros:
  776. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  777. //
  778. // If more than one of these "major" feature-test macros is defined,
  779. // then the set of facilities provided (and namespace used) is the
  780. // union of that specified by the relevant standards, and in case of
  781. // conflict, the earlier standard in the above list has precedence (so
  782. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  783. // of rename() that's used is the POSIX one). If none of the "major"
  784. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  785. //
  786. // There are also "minor" feature-test macros, which enable extra
  787. // functionality in addition to some base standard. They should be
  788. // defined along with one of the "major" macros. The "minor" macros
  789. // are:
  790. //
  791. // _REENTRANT
  792. // _ISOC99_SOURCE
  793. // _ISOC11_SOURCE
  794. // _LARGEFILE_SOURCE Large File Support
  795. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  796. // Definitions for byte order, according to byte significance from low
  797. // address to high.
  798. // C-family endian-ness definitions
  799. // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  800. // -
  801. // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  802. // All rights reserved.
  803. //
  804. // This code is derived from software contributed to The NetBSD Foundation
  805. // by Jun-ichiro itojun Hagino and by Klaus Klein.
  806. //
  807. // Redistribution and use in source and binary forms, with or without
  808. // modification, are permitted provided that the following conditions
  809. // are met:
  810. // 1. Redistributions of source code must retain the above copyright
  811. // notice, this list of conditions and the following disclaimer.
  812. // 2. Redistributions in binary form must reproduce the above copyright
  813. // notice, this list of conditions and the following disclaimer in the
  814. // documentation and/or other materials provided with the distribution.
  815. //
  816. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  817. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  818. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  819. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  820. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  821. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  822. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  823. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  824. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  825. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  826. // POSSIBILITY OF SUCH DAMAGE.
  827. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  828. // * Copyright (c) 1991, 1993
  829. // The Regents of the University of California. All rights reserved.
  830. //
  831. // This code is derived from software contributed to Berkeley by
  832. // Berkeley Software Design, Inc.
  833. //
  834. // Redistribution and use in source and binary forms, with or without
  835. // modification, are permitted provided that the following conditions
  836. // are met:
  837. // 1. Redistributions of source code must retain the above copyright
  838. // notice, this list of conditions and the following disclaimer.
  839. // 2. Redistributions in binary form must reproduce the above copyright
  840. // notice, this list of conditions and the following disclaimer in the
  841. // documentation and/or other materials provided with the distribution.
  842. // 3. Neither the name of the University nor the names of its contributors
  843. // may be used to endorse or promote products derived from this software
  844. // without specific prior written permission.
  845. //
  846. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  847. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  848. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  849. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  850. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  851. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  852. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  853. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  854. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  855. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  856. // SUCH DAMAGE.
  857. //
  858. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  859. // $NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  860. // -
  861. // Copyright (c) 1982, 1986, 1991, 1993, 1994
  862. // The Regents of the University of California. All rights reserved.
  863. // (c) UNIX System Laboratories, Inc.
  864. // All or some portions of this file are derived from material licensed
  865. // to the University of California by American Telephone and Telegraph
  866. // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  867. // the permission of UNIX System Laboratories, Inc.
  868. //
  869. // Redistribution and use in source and binary forms, with or without
  870. // modification, are permitted provided that the following conditions
  871. // are met:
  872. // 1. Redistributions of source code must retain the above copyright
  873. // notice, this list of conditions and the following disclaimer.
  874. // 2. Redistributions in binary form must reproduce the above copyright
  875. // notice, this list of conditions and the following disclaimer in the
  876. // documentation and/or other materials provided with the distribution.
  877. // 3. Neither the name of the University nor the names of its contributors
  878. // may be used to endorse or promote products derived from this software
  879. // without specific prior written permission.
  880. //
  881. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  882. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  883. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  884. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  885. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  886. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  887. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  888. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  889. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  890. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  891. // SUCH DAMAGE.
  892. //
  893. // @(#)types.h 8.4 (Berkeley) 1/21/94
  894. type In_addr_t = X__in_addr_t /* endian.h:58:21 */
  895. type In_port_t = X__in_port_t /* endian.h:63:21 */
  896. // $NetBSD: bswap.h,v 1.19 2015/03/12 15:28:16 christos Exp $
  897. // Written by Manuel Bouyer. Public domain
  898. // $NetBSD: stdint.h,v 1.8 2018/11/06 16:26:44 maya Exp $
  899. // -
  900. // Copyright (c) 2001, 2004 The NetBSD Foundation, Inc.
  901. // All rights reserved.
  902. //
  903. // This code is derived from software contributed to The NetBSD Foundation
  904. // by Klaus Klein.
  905. //
  906. // Redistribution and use in source and binary forms, with or without
  907. // modification, are permitted provided that the following conditions
  908. // are met:
  909. // 1. Redistributions of source code must retain the above copyright
  910. // notice, this list of conditions and the following disclaimer.
  911. // 2. Redistributions in binary form must reproduce the above copyright
  912. // notice, this list of conditions and the following disclaimer in the
  913. // documentation and/or other materials provided with the distribution.
  914. //
  915. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  916. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  917. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  918. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  919. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  920. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  921. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  922. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  923. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  924. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  925. // POSSIBILITY OF SUCH DAMAGE.
  926. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  927. // * Copyright (c) 1991, 1993
  928. // The Regents of the University of California. All rights reserved.
  929. //
  930. // This code is derived from software contributed to Berkeley by
  931. // Berkeley Software Design, Inc.
  932. //
  933. // Redistribution and use in source and binary forms, with or without
  934. // modification, are permitted provided that the following conditions
  935. // are met:
  936. // 1. Redistributions of source code must retain the above copyright
  937. // notice, this list of conditions and the following disclaimer.
  938. // 2. Redistributions in binary form must reproduce the above copyright
  939. // notice, this list of conditions and the following disclaimer in the
  940. // documentation and/or other materials provided with the distribution.
  941. // 3. Neither the name of the University nor the names of its contributors
  942. // may be used to endorse or promote products derived from this software
  943. // without specific prior written permission.
  944. //
  945. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  946. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  947. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  948. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  949. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  950. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  951. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  952. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  953. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  954. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  955. // SUCH DAMAGE.
  956. //
  957. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  958. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  959. // -
  960. // Copyright (c) 1990 The Regents of the University of California.
  961. // All rights reserved.
  962. //
  963. // Redistribution and use in source and binary forms, with or without
  964. // modification, are permitted provided that the following conditions
  965. // are met:
  966. // 1. Redistributions of source code must retain the above copyright
  967. // notice, this list of conditions and the following disclaimer.
  968. // 2. Redistributions in binary form must reproduce the above copyright
  969. // notice, this list of conditions and the following disclaimer in the
  970. // documentation and/or other materials provided with the distribution.
  971. // 3. Neither the name of the University nor the names of its contributors
  972. // may be used to endorse or promote products derived from this software
  973. // without specific prior written permission.
  974. //
  975. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  976. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  977. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  978. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  979. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  980. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  981. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  982. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  983. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  984. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  985. // SUCH DAMAGE.
  986. //
  987. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  988. type Intptr_t = X__intptr_t /* stdint.h:79:20 */
  989. type Uintptr_t = X__uintptr_t /* stdint.h:84:21 */
  990. // $NetBSD: int_mwgwtypes.h,v 1.8 2014/07/25 21:43:13 joerg Exp $
  991. // -
  992. // Copyright (c) 2001 The NetBSD Foundation, Inc.
  993. // All rights reserved.
  994. //
  995. // This code is derived from software contributed to The NetBSD Foundation
  996. // by Klaus Klein.
  997. //
  998. // Redistribution and use in source and binary forms, with or without
  999. // modification, are permitted provided that the following conditions
  1000. // are met:
  1001. // 1. Redistributions of source code must retain the above copyright
  1002. // notice, this list of conditions and the following disclaimer.
  1003. // 2. Redistributions in binary form must reproduce the above copyright
  1004. // notice, this list of conditions and the following disclaimer in the
  1005. // documentation and/or other materials provided with the distribution.
  1006. //
  1007. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1008. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1009. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1010. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1011. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1012. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1013. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1014. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1015. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1016. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1017. // POSSIBILITY OF SUCH DAMAGE.
  1018. // $NetBSD: common_int_mwgwtypes.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
  1019. // -
  1020. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  1021. // All rights reserved.
  1022. //
  1023. // This code is derived from software contributed to The NetBSD Foundation
  1024. // by Joerg Sonnenberger.
  1025. //
  1026. // Redistribution and use in source and binary forms, with or without
  1027. // modification, are permitted provided that the following conditions
  1028. // are met:
  1029. // 1. Redistributions of source code must retain the above copyright
  1030. // notice, this list of conditions and the following disclaimer.
  1031. // 2. Redistributions in binary form must reproduce the above copyright
  1032. // notice, this list of conditions and the following disclaimer in the
  1033. // documentation and/or other materials provided with the distribution.
  1034. //
  1035. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1036. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1037. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1038. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1039. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1040. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1041. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1042. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1043. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1044. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1045. // POSSIBILITY OF SUCH DAMAGE.
  1046. // 7.18.1 Integer types
  1047. // 7.18.1.2 Minimum-width integer types
  1048. type Int_least8_t = int8 /* common_int_mwgwtypes.h:45:32 */
  1049. type Uint_least8_t = uint8 /* common_int_mwgwtypes.h:46:32 */
  1050. type Int_least16_t = int16 /* common_int_mwgwtypes.h:47:32 */
  1051. type Uint_least16_t = uint16 /* common_int_mwgwtypes.h:48:32 */
  1052. type Int_least32_t = int32 /* common_int_mwgwtypes.h:49:32 */
  1053. type Uint_least32_t = uint32 /* common_int_mwgwtypes.h:50:32 */
  1054. type Int_least64_t = int64 /* common_int_mwgwtypes.h:51:32 */
  1055. type Uint_least64_t = uint64 /* common_int_mwgwtypes.h:52:32 */
  1056. // 7.18.1.3 Fastest minimum-width integer types
  1057. type Int_fast8_t = int32 /* common_int_mwgwtypes.h:55:32 */
  1058. type Uint_fast8_t = uint32 /* common_int_mwgwtypes.h:56:32 */
  1059. type Int_fast16_t = int32 /* common_int_mwgwtypes.h:57:32 */
  1060. type Uint_fast16_t = uint32 /* common_int_mwgwtypes.h:58:32 */
  1061. type Int_fast32_t = int32 /* common_int_mwgwtypes.h:59:32 */
  1062. type Uint_fast32_t = uint32 /* common_int_mwgwtypes.h:60:32 */
  1063. type Int_fast64_t = int64 /* common_int_mwgwtypes.h:61:32 */
  1064. type Uint_fast64_t = uint64 /* common_int_mwgwtypes.h:62:32 */
  1065. // 7.18.1.5 Greatest-width integer types
  1066. type Intmax_t = int64 /* common_int_mwgwtypes.h:66:33 */
  1067. type Uintmax_t = uint64 /* common_int_mwgwtypes.h:67:32 */
  1068. type U_char = uint8 /* types.h:101:23 */
  1069. type U_short = uint16 /* types.h:102:24 */
  1070. type U_int = uint32 /* types.h:103:22 */
  1071. type U_long = uint64 /* types.h:104:23 */
  1072. type Unchar = uint8 /* types.h:106:23 */ // Sys V compatibility
  1073. type Ushort = uint16 /* types.h:107:24 */ // Sys V compatibility
  1074. type Uint = uint32 /* types.h:108:22 */ // Sys V compatibility
  1075. type Ulong = uint64 /* types.h:109:23 */ // Sys V compatibility
  1076. type U_quad_t = Uint64_t /* types.h:112:18 */ // quads
  1077. type Quad_t = Int64_t /* types.h:113:18 */
  1078. type Qaddr_t = uintptr /* types.h:114:16 */
  1079. // The types longlong_t and u_longlong_t exist for use with the
  1080. // Sun-derived XDR routines involving these types, and their usage
  1081. // in other contexts is discouraged. Further note that these types
  1082. // may not be equivalent to "long long" and "unsigned long long",
  1083. // they are only guaranteed to be signed and unsigned 64-bit types
  1084. // respectively. Portable programs that need 64-bit types should use
  1085. // the C99 types int64_t and uint64_t instead.
  1086. type Longlong_t = Int64_t /* types.h:126:18 */ // for XDR
  1087. type U_longlong_t = Uint64_t /* types.h:127:18 */ // for XDR
  1088. type Blkcnt_t = Int64_t /* types.h:129:18 */ // fs block count
  1089. type Blksize_t = Int32_t /* types.h:130:18 */ // fs optimal block size
  1090. type Fsblkcnt_t = X__fsblkcnt_t /* types.h:133:22 */ // fs block count (statvfs)
  1091. type Fsfilcnt_t = X__fsfilcnt_t /* types.h:138:22 */ // fs file count
  1092. // We don't and shouldn't use caddr_t in the kernel anymore
  1093. type Caddr_t = X__caddr_t /* types.h:145:19 */ // core address
  1094. type Daddr_t = Int64_t /* types.h:154:18 */ // disk address
  1095. type Dev_t = Uint64_t /* types.h:157:18 */ // device number
  1096. type Fixpt_t = Uint32_t /* types.h:158:18 */ // fixed point number
  1097. type Gid_t = X__gid_t /* types.h:161:18 */ // group id
  1098. type Id_t = Uint32_t /* types.h:165:18 */ // group id, process id or user id
  1099. type Ino_t = Uint64_t /* types.h:166:18 */ // inode number
  1100. type Key_t = int64 /* types.h:167:15 */ // IPC key (for Sys V IPC)
  1101. type Mode_t = X__mode_t /* types.h:170:18 */ // permissions
  1102. type Nlink_t = Uint32_t /* types.h:174:18 */ // link count
  1103. type Off_t = X__off_t /* types.h:177:18 */ // file offset
  1104. type Pid_t = X__pid_t /* types.h:182:18 */ // process id
  1105. type Lwpid_t = Int32_t /* types.h:185:18 */ // LWP id
  1106. type Rlim_t = Uint64_t /* types.h:186:18 */ // resource limit
  1107. type Segsz_t = Int32_t /* types.h:187:18 */ // segment size
  1108. type Swblk_t = Int32_t /* types.h:188:18 */ // swap offset
  1109. type Uid_t = X__uid_t /* types.h:191:18 */ // user id
  1110. type Mqd_t = int32 /* types.h:195:14 */
  1111. type Cpuid_t = uint64 /* types.h:197:23 */
  1112. type Psetid_t = int32 /* types.h:199:14 */
  1113. type X__cpu_simple_lock_t = X__cpu_simple_lock_nv_t /* types.h:201:41 */
  1114. // Major, minor numbers, dev_t's.
  1115. type X__devmajor_t = Int32_t /* types.h:255:17 */
  1116. type X__devminor_t = Int32_t /* types.h:255:31 */
  1117. type Clock_t = uint32 /* types.h:268:24 */
  1118. type Ssize_t = int64 /* types.h:284:24 */
  1119. type Time_t = X__int64_t /* types.h:289:23 */
  1120. type Clockid_t = int32 /* types.h:294:26 */
  1121. type Timer_t = int32 /* types.h:299:24 */
  1122. type Suseconds_t = int32 /* types.h:304:27 */
  1123. type Useconds_t = uint32 /* types.h:309:26 */
  1124. // $NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
  1125. // -
  1126. // Copyright (c) 1992, 1993
  1127. // The Regents of the University of California. All rights reserved.
  1128. //
  1129. // Redistribution and use in source and binary forms, with or without
  1130. // modification, are permitted provided that the following conditions
  1131. // are met:
  1132. // 1. Redistributions of source code must retain the above copyright
  1133. // notice, this list of conditions and the following disclaimer.
  1134. // 2. Redistributions in binary form must reproduce the above copyright
  1135. // notice, this list of conditions and the following disclaimer in the
  1136. // documentation and/or other materials provided with the distribution.
  1137. // 3. Neither the name of the University nor the names of its contributors
  1138. // may be used to endorse or promote products derived from this software
  1139. // without specific prior written permission.
  1140. //
  1141. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1142. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1143. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1144. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1145. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1146. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1147. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1148. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1149. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1150. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1151. // SUCH DAMAGE.
  1152. //
  1153. // from: @(#)types.h 8.4 (Berkeley) 1/21/94
  1154. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  1155. // * Copyright (c) 1991, 1993
  1156. // The Regents of the University of California. All rights reserved.
  1157. //
  1158. // This code is derived from software contributed to Berkeley by
  1159. // Berkeley Software Design, Inc.
  1160. //
  1161. // Redistribution and use in source and binary forms, with or without
  1162. // modification, are permitted provided that the following conditions
  1163. // are met:
  1164. // 1. Redistributions of source code must retain the above copyright
  1165. // notice, this list of conditions and the following disclaimer.
  1166. // 2. Redistributions in binary form must reproduce the above copyright
  1167. // notice, this list of conditions and the following disclaimer in the
  1168. // documentation and/or other materials provided with the distribution.
  1169. // 3. Neither the name of the University nor the names of its contributors
  1170. // may be used to endorse or promote products derived from this software
  1171. // without specific prior written permission.
  1172. //
  1173. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1174. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1175. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1176. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1177. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1178. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1179. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1180. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1181. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1182. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1183. // SUCH DAMAGE.
  1184. //
  1185. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1186. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  1187. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  1188. // Public domain.
  1189. //
  1190. // NOTE: Do not protect this header against multiple inclusion. Doing
  1191. // so can have subtle side-effects due to header file inclusion order
  1192. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  1193. // protect each CPP macro that we want to supply.
  1194. // Feature-test macros are defined by several standards, and allow an
  1195. // application to specify what symbols they want the system headers to
  1196. // expose, and hence what standard they want them to conform to.
  1197. // There are two classes of feature-test macros. The first class
  1198. // specify complete standards, and if one of these is defined, header
  1199. // files will try to conform to the relevant standard. They are:
  1200. //
  1201. // ANSI macros:
  1202. // _ANSI_SOURCE ANSI C89
  1203. //
  1204. // POSIX macros:
  1205. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  1206. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  1207. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  1208. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  1209. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  1210. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  1211. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  1212. //
  1213. // X/Open macros:
  1214. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  1215. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  1216. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  1217. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  1218. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  1219. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  1220. //
  1221. // NetBSD macros:
  1222. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  1223. //
  1224. // If more than one of these "major" feature-test macros is defined,
  1225. // then the set of facilities provided (and namespace used) is the
  1226. // union of that specified by the relevant standards, and in case of
  1227. // conflict, the earlier standard in the above list has precedence (so
  1228. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  1229. // of rename() that's used is the POSIX one). If none of the "major"
  1230. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  1231. //
  1232. // There are also "minor" feature-test macros, which enable extra
  1233. // functionality in addition to some base standard. They should be
  1234. // defined along with one of the "major" macros. The "minor" macros
  1235. // are:
  1236. //
  1237. // _REENTRANT
  1238. // _ISOC99_SOURCE
  1239. // _ISOC11_SOURCE
  1240. // _LARGEFILE_SOURCE Large File Support
  1241. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  1242. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1243. // -
  1244. // Copyright (c) 1990 The Regents of the University of California.
  1245. // All rights reserved.
  1246. //
  1247. // Redistribution and use in source and binary forms, with or without
  1248. // modification, are permitted provided that the following conditions
  1249. // are met:
  1250. // 1. Redistributions of source code must retain the above copyright
  1251. // notice, this list of conditions and the following disclaimer.
  1252. // 2. Redistributions in binary form must reproduce the above copyright
  1253. // notice, this list of conditions and the following disclaimer in the
  1254. // documentation and/or other materials provided with the distribution.
  1255. // 3. Neither the name of the University nor the names of its contributors
  1256. // may be used to endorse or promote products derived from this software
  1257. // without specific prior written permission.
  1258. //
  1259. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1260. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1261. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1262. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1263. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1264. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1265. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1266. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1267. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1268. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1269. // SUCH DAMAGE.
  1270. //
  1271. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  1272. // Implementation dependent defines, hidden from user space.
  1273. // POSIX does not specify them.
  1274. type X__fd_mask = X__uint32_t /* fd_set.h:46:20 */
  1275. // 32 = 2 ^ 5
  1276. // Select uses bit fields of file descriptors. These macros manipulate
  1277. // such bit fields. Note: FD_SETSIZE may be defined by the user.
  1278. type Fd_set1 = struct{ Ffds_bits [8]X__fd_mask } /* fd_set.h:66:9 */
  1279. // 32 = 2 ^ 5
  1280. // Select uses bit fields of file descriptors. These macros manipulate
  1281. // such bit fields. Note: FD_SETSIZE may be defined by the user.
  1282. type Fd_set = Fd_set1 /* fd_set.h:68:3 */
  1283. // Expose our internals if we are not required to hide them.
  1284. type Kauth_cred_t = uintptr /* types.h:318:27 */
  1285. type Pri_t = int32 /* types.h:320:13 */
  1286. // $NetBSD: pthread_types.h,v 1.23 2017/09/09 23:21:45 kamil Exp $
  1287. // -
  1288. // Copyright (c) 2001, 2008 The NetBSD Foundation, Inc.
  1289. // All rights reserved.
  1290. //
  1291. // This code is derived from software contributed to The NetBSD Foundation
  1292. // by Nathan J. Williams.
  1293. //
  1294. // Redistribution and use in source and binary forms, with or without
  1295. // modification, are permitted provided that the following conditions
  1296. // are met:
  1297. // 1. Redistributions of source code must retain the above copyright
  1298. // notice, this list of conditions and the following disclaimer.
  1299. // 2. Redistributions in binary form must reproduce the above copyright
  1300. // notice, this list of conditions and the following disclaimer in the
  1301. // documentation and/or other materials provided with the distribution.
  1302. //
  1303. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1304. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1305. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1306. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1307. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1308. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1309. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1310. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1311. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1312. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1313. // POSSIBILITY OF SUCH DAMAGE.
  1314. // We use the "pthread_spin_t" name internally; "pthread_spinlock_t" is the
  1315. // POSIX spinlock object.
  1316. //
  1317. // C++ expects to be using PTHREAD_FOO_INITIALIZER as a member initializer.
  1318. // This does not work for volatile types. Since C++ does not touch the guts
  1319. // of those types, we do not include volatile in the C++ definitions.
  1320. type Pthread_spin_t = X__cpu_simple_lock_t /* pthread_types.h:43:29 */
  1321. type X__pthread_spin_t = Pthread_spin_t /* pthread_types.h:48:24 */
  1322. // Copied from PTQ_HEAD in pthread_queue.h
  1323. type Pthread_queue_struct_t = struct {
  1324. Fptqh_first uintptr
  1325. Fptqh_last uintptr
  1326. } /* pthread_types.h:61:1 */
  1327. type Pthread_queue_t = Pthread_queue_struct_t /* pthread_types.h:62:39 */
  1328. type X__pthread_attr_st = struct {
  1329. Fpta_magic uint32
  1330. Fpta_flags int32
  1331. Fpta_private uintptr
  1332. } /* pthread_types.h:65:1 */
  1333. type X__pthread_mutex_st = struct {
  1334. Fptm_magic uint32
  1335. Fptm_errorcheck X__pthread_spin_t
  1336. Fptm_pad1 [3]Uint8_t
  1337. F__8 struct{ Fptm_ceiling uint8 }
  1338. Fptm_pad2 [3]Uint8_t
  1339. F__ccgo_pad1 [4]byte
  1340. Fptm_owner Pthread_t
  1341. Fptm_waiters uintptr
  1342. Fptm_recursed uint32
  1343. F__ccgo_pad2 [4]byte
  1344. Fptm_spare2 uintptr
  1345. } /* pthread_types.h:66:1 */
  1346. type X__pthread_mutexattr_st = struct {
  1347. Fptma_magic uint32
  1348. F__ccgo_pad1 [4]byte
  1349. Fptma_private uintptr
  1350. } /* pthread_types.h:67:1 */
  1351. type X__pthread_cond_st = struct {
  1352. Fptc_magic uint32
  1353. Fptc_lock X__pthread_spin_t
  1354. F__ccgo_pad1 [3]byte
  1355. Fptc_waiters Pthread_queue_t
  1356. Fptc_mutex uintptr
  1357. Fptc_private uintptr
  1358. } /* pthread_types.h:68:1 */
  1359. type X__pthread_condattr_st = struct {
  1360. Fptca_magic uint32
  1361. F__ccgo_pad1 [4]byte
  1362. Fptca_private uintptr
  1363. } /* pthread_types.h:69:1 */
  1364. type X__pthread_rwlock_st = struct {
  1365. Fptr_magic uint32
  1366. Fptr_interlock X__pthread_spin_t
  1367. F__ccgo_pad1 [3]byte
  1368. Fptr_rblocked Pthread_queue_t
  1369. Fptr_wblocked Pthread_queue_t
  1370. Fptr_nreaders uint32
  1371. F__ccgo_pad2 [4]byte
  1372. Fptr_owner Pthread_t
  1373. Fptr_private uintptr
  1374. } /* pthread_types.h:71:1 */
  1375. type X__pthread_rwlockattr_st = struct {
  1376. Fptra_magic uint32
  1377. F__ccgo_pad1 [4]byte
  1378. Fptra_private uintptr
  1379. } /* pthread_types.h:72:1 */
  1380. type X__pthread_barrier_st = struct {
  1381. Fptb_magic uint32
  1382. Fptb_lock Pthread_spin_t
  1383. F__ccgo_pad1 [3]byte
  1384. Fptb_waiters Pthread_queue_t
  1385. Fptb_initcount uint32
  1386. Fptb_curcount uint32
  1387. Fptb_generation uint32
  1388. F__ccgo_pad2 [4]byte
  1389. Fptb_private uintptr
  1390. } /* pthread_types.h:73:1 */
  1391. type X__pthread_barrierattr_st = struct {
  1392. Fptba_magic uint32
  1393. F__ccgo_pad1 [4]byte
  1394. Fptba_private uintptr
  1395. } /* pthread_types.h:74:1 */
  1396. type Pthread_t = uintptr /* pthread_types.h:76:29 */
  1397. type Pthread_attr_t = X__pthread_attr_st /* pthread_types.h:77:34 */
  1398. type Pthread_mutex_t = X__pthread_mutex_st /* pthread_types.h:78:35 */
  1399. type Pthread_mutexattr_t = X__pthread_mutexattr_st /* pthread_types.h:79:39 */
  1400. type Pthread_cond_t = X__pthread_cond_st /* pthread_types.h:80:34 */
  1401. type Pthread_condattr_t = X__pthread_condattr_st /* pthread_types.h:81:38 */
  1402. type X__pthread_once_st = struct {
  1403. Fpto_mutex Pthread_mutex_t
  1404. Fpto_done int32
  1405. F__ccgo_pad1 [4]byte
  1406. } /* pthread_types.h:82:9 */
  1407. type Pthread_once_t = X__pthread_once_st /* pthread_types.h:82:34 */
  1408. type X__pthread_spinlock_st = struct {
  1409. Fpts_magic uint32
  1410. Fpts_spin X__pthread_spin_t
  1411. F__ccgo_pad1 [3]byte
  1412. Fpts_flags int32
  1413. } /* pthread_types.h:83:9 */
  1414. type Pthread_spinlock_t = X__pthread_spinlock_st /* pthread_types.h:83:38 */
  1415. type Pthread_rwlock_t = X__pthread_rwlock_st /* pthread_types.h:84:36 */
  1416. type Pthread_rwlockattr_t = X__pthread_rwlockattr_st /* pthread_types.h:85:40 */
  1417. type Pthread_barrier_t = X__pthread_barrier_st /* pthread_types.h:86:37 */
  1418. type Pthread_barrierattr_t = X__pthread_barrierattr_st /* pthread_types.h:87:41 */
  1419. type Pthread_key_t = int32 /* pthread_types.h:88:13 */
  1420. type Group = struct {
  1421. Fgr_name uintptr
  1422. Fgr_passwd uintptr
  1423. Fgr_gid X__gid_t
  1424. F__ccgo_pad1 [4]byte
  1425. Fgr_mem uintptr
  1426. } /* grp.h:50:1 */
  1427. var _ int8 /* gen.c:2:13: */