grp_netbsd_arm.go 74 KB

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