gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

fts_netbsd_arm.go (125888B)


      1 // Code generated by 'ccgo fts/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 fts/fts_netbsd_arm.go -pkgname fts', DO NOT EDIT.
      2 
      3 package fts
      4 
      5 import (
      6 	"math"
      7 	"reflect"
      8 	"sync/atomic"
      9 	"unsafe"
     10 )
     11 
     12 var _ = math.Pi
     13 var _ reflect.Kind
     14 var _ atomic.Value
     15 var _ unsafe.Pointer
     16 
     17 const (
     18 	ACCESSPERMS                   = 511                  // stat.h:189:1:
     19 	ALLPERMS                      = 4095                 // stat.h:191:1:
     20 	BIG_ENDIAN                    = 4321                 // endian.h:101:1:
     21 	BYTE_ORDER                    = 1234                 // endian.h:103:1:
     22 	CLOCKS_PER_SEC                = 100                  // time.h:73:1:
     23 	CLOCK_MONOTONIC               = 3                    // time.h:297:1:
     24 	CLOCK_PROCESS_CPUTIME_ID      = 0x40000000           // time.h:299:1:
     25 	CLOCK_PROF                    = 2                    // time.h:296:1:
     26 	CLOCK_REALTIME                = 0                    // time.h:294:1:
     27 	CLOCK_THREAD_CPUTIME_ID       = 0x20000000           // time.h:298:1:
     28 	CLOCK_VIRTUAL                 = 1                    // time.h:295:1:
     29 	DEFFILEMODE                   = 438                  // stat.h:193:1:
     30 	FD_SETSIZE                    = 256                  // fd_set.h:59:1:
     31 	FTS_AGAIN                     = 1                    // fts.h:128:1:
     32 	FTS_COMFOLLOW                 = 0x001                // fts.h:71:1:
     33 	FTS_D                         = 1                    // fts.h:107:1:
     34 	FTS_DC                        = 2                    // fts.h:108:1:
     35 	FTS_DEFAULT                   = 3                    // fts.h:109:1:
     36 	FTS_DNR                       = 4                    // fts.h:110:1:
     37 	FTS_DONTCHDIR                 = 0x01                 // fts.h:123:1:
     38 	FTS_DOT                       = 5                    // fts.h:111:1:
     39 	FTS_DP                        = 6                    // fts.h:112:1:
     40 	FTS_ERR                       = 7                    // fts.h:113:1:
     41 	FTS_F                         = 8                    // fts.h:114:1:
     42 	FTS_FOLLOW                    = 2                    // fts.h:129:1:
     43 	FTS_INIT                      = 9                    // fts.h:115:1:
     44 	FTS_ISW                       = 0x04                 // fts.h:125:1:
     45 	FTS_LOGICAL                   = 0x002                // fts.h:72:1:
     46 	FTS_NAMEONLY                  = 0x100                // fts.h:81:1:
     47 	FTS_NOCHDIR                   = 0x004                // fts.h:73:1:
     48 	FTS_NOINSTR                   = 3                    // fts.h:130:1:
     49 	FTS_NOSTAT                    = 0x008                // fts.h:74:1:
     50 	FTS_NS                        = 10                   // fts.h:116:1:
     51 	FTS_NSOK                      = 11                   // fts.h:117:1:
     52 	FTS_OPTIONMASK                = 0x0ff                // fts.h:79:1:
     53 	FTS_PHYSICAL                  = 0x010                // fts.h:75:1:
     54 	FTS_ROOTLEVEL                 = 0                    // fts.h:104:1:
     55 	FTS_ROOTPARENTLEVEL           = -1                   // fts.h:103:1:
     56 	FTS_SEEDOT                    = 0x020                // fts.h:76:1:
     57 	FTS_SKIP                      = 4                    // fts.h:131:1:
     58 	FTS_SL                        = 12                   // fts.h:118:1:
     59 	FTS_SLNONE                    = 13                   // fts.h:119:1:
     60 	FTS_STOP                      = 0x200                // fts.h:82:1:
     61 	FTS_SYMFOLLOW                 = 0x02                 // fts.h:124:1:
     62 	FTS_W                         = 14                   // fts.h:120:1:
     63 	FTS_WHITEOUT                  = 0x080                // fts.h:78:1:
     64 	FTS_XDEV                      = 0x040                // fts.h:77:1:
     65 	INT16_MAX                     = 32767                // common_int_limits.h:53:1:
     66 	INT16_MIN                     = -32768               // common_int_limits.h:47:1:
     67 	INT32_MAX                     = 2147483647           // common_int_limits.h:54:1:
     68 	INT32_MIN                     = -2147483648          // common_int_limits.h:48:1:
     69 	INT64_MAX                     = 9223372036854775807  // common_int_limits.h:55:1:
     70 	INT64_MIN                     = -9223372036854775808 // common_int_limits.h:49:1:
     71 	INT8_MAX                      = 127                  // common_int_limits.h:52:1:
     72 	INT8_MIN                      = -128                 // common_int_limits.h:46:1:
     73 	INTMAX_MAX                    = 9223372036854775807  // common_int_limits.h:111:1:
     74 	INTMAX_MIN                    = -9223372036854775808 // common_int_limits.h:110:1:
     75 	INTPTR_MAX                    = 2147483647           // common_int_limits.h:105:1:
     76 	INTPTR_MIN                    = -2147483648          // common_int_limits.h:104:1:
     77 	INT_FAST16_MAX                = 2147483647           // common_int_limits.h:93:1:
     78 	INT_FAST16_MIN                = -2147483648          // common_int_limits.h:87:1:
     79 	INT_FAST32_MAX                = 2147483647           // common_int_limits.h:94:1:
     80 	INT_FAST32_MIN                = -2147483648          // common_int_limits.h:88:1:
     81 	INT_FAST64_MAX                = 9223372036854775807  // common_int_limits.h:95:1:
     82 	INT_FAST64_MIN                = -9223372036854775808 // common_int_limits.h:89:1:
     83 	INT_FAST8_MAX                 = 2147483647           // common_int_limits.h:92:1:
     84 	INT_FAST8_MIN                 = -2147483648          // common_int_limits.h:86:1:
     85 	INT_LEAST16_MAX               = 32767                // common_int_limits.h:73:1:
     86 	INT_LEAST16_MIN               = -32768               // common_int_limits.h:67:1:
     87 	INT_LEAST32_MAX               = 2147483647           // common_int_limits.h:74:1:
     88 	INT_LEAST32_MIN               = -2147483648          // common_int_limits.h:68:1:
     89 	INT_LEAST64_MAX               = 9223372036854775807  // common_int_limits.h:75:1:
     90 	INT_LEAST64_MIN               = -9223372036854775808 // common_int_limits.h:69:1:
     91 	INT_LEAST8_MAX                = 127                  // common_int_limits.h:72:1:
     92 	INT_LEAST8_MIN                = -128                 // common_int_limits.h:66:1:
     93 	ITIMER_MONOTONIC              = 3                    // time.h:278:1:
     94 	ITIMER_PROF                   = 2                    // time.h:277:1:
     95 	ITIMER_REAL                   = 0                    // time.h:275:1:
     96 	ITIMER_VIRTUAL                = 1                    // time.h:276:1:
     97 	LITTLE_ENDIAN                 = 1234                 // endian.h:100:1:
     98 	NBBY                          = 8                    // types.h:316:1:
     99 	NFDBITS                       = 32                   // fd_set.h:93:1:
    100 	NODEVMAJOR                    = -1                   // types.h:258:1:
    101 	PDP_ENDIAN                    = 3412                 // endian.h:102:1:
    102 	PTRDIFF_MAX                   = 2147483647           // common_int_limits.h:121:1:
    103 	PTRDIFF_MIN                   = -2147483648          // common_int_limits.h:120:1:
    104 	SF_APPEND                     = 0x00040000           // stat.h:214:1:
    105 	SF_ARCHIVED                   = 0x00010000           // stat.h:212:1:
    106 	SF_IMMUTABLE                  = 0x00020000           // stat.h:213:1:
    107 	SF_LOG                        = 0x00400000           // stat.h:217:1:
    108 	SF_SETTABLE                   = 0xffff0000           // stat.h:211:1:
    109 	SF_SNAPINVAL                  = 0x00800000           // stat.h:218:1:
    110 	SF_SNAPSHOT                   = 0x00200000           // stat.h:216:1:
    111 	SIG_ATOMIC_MAX                = 2147483647           // common_int_limits.h:125:1:
    112 	SIG_ATOMIC_MIN                = -2147483648          // common_int_limits.h:124:1:
    113 	SIZE_MAX                      = 4294967295           // common_int_limits.h:128:1:
    114 	S_ARCH1                       = 65536                // stat.h:167:1:
    115 	S_ARCH2                       = 131072               // stat.h:168:1:
    116 	S_BLKSIZE                     = 512                  // stat.h:195:1:
    117 	S_IEXEC                       = 64                   // stat.h:125:1:
    118 	S_IFBLK                       = 24576                // stat.h:156:1:
    119 	S_IFCHR                       = 8192                 // stat.h:154:1:
    120 	S_IFDIR                       = 16384                // stat.h:155:1:
    121 	S_IFIFO                       = 4096                 // stat.h:153:1:
    122 	S_IFLNK                       = 40960                // stat.h:158:1:
    123 	S_IFMT                        = 61440                // stat.h:152:1:
    124 	S_IFREG                       = 32768                // stat.h:157:1:
    125 	S_IFSOCK                      = 49152                // stat.h:162:1:
    126 	S_IFWHT                       = 57344                // stat.h:165:1:
    127 	S_IREAD                       = 256                  // stat.h:123:1:
    128 	S_IRGRP                       = 0000040              // stat.h:129:1:
    129 	S_IROTH                       = 0000004              // stat.h:134:1:
    130 	S_IRUSR                       = 0000400              // stat.h:118:1:
    131 	S_IRWXG                       = 0000070              // stat.h:128:1:
    132 	S_IRWXO                       = 0000007              // stat.h:133:1:
    133 	S_IRWXU                       = 0000700              // stat.h:117:1:
    134 	S_ISGID                       = 0002000              // stat.h:112:1:
    135 	S_ISTXT                       = 0001000              // stat.h:114:1:
    136 	S_ISUID                       = 0004000              // stat.h:111:1:
    137 	S_ISVTX                       = 512                  // stat.h:159:1:
    138 	S_IWGRP                       = 0000020              // stat.h:130:1:
    139 	S_IWOTH                       = 0000002              // stat.h:135:1:
    140 	S_IWRITE                      = 128                  // stat.h:124:1:
    141 	S_IWUSR                       = 0000200              // stat.h:119:1:
    142 	S_IXGRP                       = 0000010              // stat.h:131:1:
    143 	S_IXOTH                       = 0000001              // stat.h:136:1:
    144 	S_IXUSR                       = 0000100              // stat.h:120:1:
    145 	TIMER_ABSTIME                 = 0x1                  // time.h:304:1:
    146 	TIMER_RELTIME                 = 0x0                  // time.h:302:1:
    147 	TIME_UTC                      = 1                    // time.h:238:1:
    148 	UF_APPEND                     = 0x00000004           // stat.h:205:1:
    149 	UF_IMMUTABLE                  = 0x00000002           // stat.h:204:1:
    150 	UF_NODUMP                     = 0x00000001           // stat.h:203:1:
    151 	UF_OPAQUE                     = 0x00000008           // stat.h:206:1:
    152 	UF_SETTABLE                   = 0x0000ffff           // stat.h:202:1:
    153 	UINT16_MAX                    = 65535                // common_int_limits.h:59:1:
    154 	UINT32_MAX                    = 4294967295           // common_int_limits.h:60:1:
    155 	UINT64_MAX                    = 18446744073709551615 // common_int_limits.h:61:1:
    156 	UINT8_MAX                     = 255                  // common_int_limits.h:58:1:
    157 	UINTMAX_MAX                   = 18446744073709551615 // common_int_limits.h:112:1:
    158 	UINTPTR_MAX                   = 4294967295           // common_int_limits.h:106:1:
    159 	UINT_FAST16_MAX               = 4294967295           // common_int_limits.h:99:1:
    160 	UINT_FAST32_MAX               = 4294967295           // common_int_limits.h:100:1:
    161 	UINT_FAST64_MAX               = 18446744073709551615 // common_int_limits.h:101:1:
    162 	UINT_FAST8_MAX                = 4294967295           // common_int_limits.h:98:1:
    163 	UINT_LEAST16_MAX              = 65535                // common_int_limits.h:79:1:
    164 	UINT_LEAST32_MAX              = 4294967295           // common_int_limits.h:80:1:
    165 	UINT_LEAST64_MAX              = 18446744073709551615 // common_int_limits.h:81:1:
    166 	UINT_LEAST8_MAX               = 255                  // common_int_limits.h:78:1:
    167 	UTIME_NOW                     = 1073741823           // stat.h:235:1:
    168 	UTIME_OMIT                    = 1073741822           // stat.h:236:1:
    169 	WCHAR_MAX                     = 2147483647           // wchar_limits.h:50:1:
    170 	WCHAR_MIN                     = -2147483648          // wchar_limits.h:42:1:
    171 	WINT_MAX                      = 2147483647           // wchar_limits.h:68:1:
    172 	WINT_MIN                      = -2147483648          // wchar_limits.h:60:1:
    173 	X_ARM_ARCH_4T                 = 0                    // cdefs.h:44:1:
    174 	X_ARM_ARCH_5                  = 0                    // cdefs.h:40:1:
    175 	X_ARM_ARCH_5T                 = 0                    // cdefs.h:36:1:
    176 	X_ARM_ARCH_6                  = 0                    // cdefs.h:31:1:
    177 	X_ARM_ARCH_7                  = 0                    // cdefs.h:20:1:
    178 	X_ARM_ARCH_DWORD_OK           = 0                    // cdefs.h:51:1:
    179 	X_ARM_ARCH_T2                 = 0                    // cdefs.h:24:1:
    180 	X_ARM_BSWAP_H_                = 0                    // bswap.h:4:1:
    181 	X_ARM_BYTE_SWAP_H_            = 0                    // byte_swap.h:33:1:
    182 	X_ARM_CDEFS_H_                = 0                    // cdefs.h:4:1:
    183 	X_ARM_INT_CONST_H_            = 0                    // int_const.h:33:1:
    184 	X_ARM_INT_LIMITS_H_           = 0                    // int_limits.h:33:1:
    185 	X_ARM_INT_MWGWTYPES_H_        = 0                    // int_mwgwtypes.h:33:1:
    186 	X_ARM_INT_TYPES_H_            = 0                    // int_types.h:33:1:
    187 	X_ARM_TYPES_H_                = 0                    // types.h:35:1:
    188 	X_ARM_WCHAR_LIMITS_H_         = 0                    // wchar_limits.h:33:1:
    189 	X_BIG_ENDIAN                  = 4321                 // endian.h:44:1:
    190 	X_BSD_INT16_T_                = 0                    // types.h:65:1:
    191 	X_BSD_INT32_T_                = 0                    // types.h:75:1:
    192 	X_BSD_INT64_T_                = 0                    // types.h:85:1:
    193 	X_BSD_INT8_T_                 = 0                    // types.h:55:1:
    194 	X_BSD_INTPTR_T_               = 0                    // stdint.h:80:1:
    195 	X_BSD_UINT16_T_               = 0                    // types.h:70:1:
    196 	X_BSD_UINT32_T_               = 0                    // types.h:80:1:
    197 	X_BSD_UINT64_T_               = 0                    // types.h:90:1:
    198 	X_BSD_UINT8_T_                = 0                    // types.h:60:1:
    199 	X_BSD_UINTPTR_T_              = 0                    // stdint.h:85:1:
    200 	X_BYTE_ORDER                  = 1234                 // endian_machdep.h:7:1:
    201 	X_FILE_OFFSET_BITS            = 64                   // <builtin>:25:1:
    202 	X_FTS_H_                      = 0                    // fts.h:35:1:
    203 	X_LIB_PTHREAD_TYPES_H         = 0                    // pthread_types.h:33:1:
    204 	X_LITTLE_ENDIAN               = 1234                 // endian.h:43:1:
    205 	X_NETBSD_SOURCE               = 1                    // featuretest.h:70:1:
    206 	X_PDP_ENDIAN                  = 3412                 // endian.h:45:1:
    207 	X_PT_BARRIERATTR_DEAD         = 0xDEAD0808           // pthread_types.h:278:1:
    208 	X_PT_BARRIERATTR_MAGIC        = 0x88880808           // pthread_types.h:277:1:
    209 	X_PT_BARRIER_DEAD             = 0xDEAD0008           // pthread_types.h:270:1:
    210 	X_PT_BARRIER_MAGIC            = 0x88880008           // pthread_types.h:269:1:
    211 	X_PT_CONDATTR_DEAD            = 0xDEAD0006           // pthread_types.h:197:1:
    212 	X_PT_CONDATTR_MAGIC           = 0x66660006           // pthread_types.h:196:1:
    213 	X_PT_COND_DEAD                = 0xDEAD0005           // pthread_types.h:182:1:
    214 	X_PT_COND_MAGIC               = 0x55550005           // pthread_types.h:181:1:
    215 	X_PT_MUTEXATTR_DEAD           = 0xDEAD0004           // pthread_types.h:167:1:
    216 	X_PT_MUTEXATTR_MAGIC          = 0x44440004           // pthread_types.h:166:1:
    217 	X_PT_MUTEX_DEAD               = 0xDEAD0003           // pthread_types.h:139:1:
    218 	X_PT_MUTEX_MAGIC              = 0x33330003           // pthread_types.h:138:1:
    219 	X_PT_RWLOCKATTR_DEAD          = 0xDEAD0909           // pthread_types.h:253:1:
    220 	X_PT_RWLOCKATTR_MAGIC         = 0x99990909           // pthread_types.h:252:1:
    221 	X_PT_RWLOCK_DEAD              = 0xDEAD0009           // pthread_types.h:236:1:
    222 	X_PT_RWLOCK_MAGIC             = 0x99990009           // pthread_types.h:235:1:
    223 	X_PT_SPINLOCK_DEAD            = 0xDEAD0007           // pthread_types.h:213:1:
    224 	X_PT_SPINLOCK_MAGIC           = 0x77770007           // pthread_types.h:212:1:
    225 	X_PT_SPINLOCK_PSHARED         = 0x00000001           // pthread_types.h:214:1:
    226 	X_QUAD_HIGHWORD               = 1                    // endian.h:84:1:
    227 	X_QUAD_LOWWORD                = 0                    // endian.h:85:1:
    228 	X_SIZE_T                      = 0                    // types.h:279:1:
    229 	X_SYS_ANSI_H_                 = 0                    // ansi.h:33:1:
    230 	X_SYS_BSWAP_H_                = 0                    // bswap.h:6:1:
    231 	X_SYS_CDEFS_ELF_H_            = 0                    // cdefs_elf.h:31:1:
    232 	X_SYS_CDEFS_H_                = 0                    // cdefs.h:37:1:
    233 	X_SYS_COMMON_ANSI_H_          = 0                    // common_ansi.h:33:1:
    234 	X_SYS_COMMON_INT_LIMITS_H_    = 0                    // common_int_limits.h:33:1:
    235 	X_SYS_COMMON_INT_MWGWTYPES_H_ = 0                    // common_int_mwgwtypes.h:33:1:
    236 	X_SYS_COMMON_INT_TYPES_H_     = 0                    // common_int_types.h:33:1:
    237 	X_SYS_ENDIAN_H_               = 0                    // endian.h:35:1:
    238 	X_SYS_FD_SET_H_               = 0                    // fd_set.h:35:1:
    239 	X_SYS_IDTYPE_H_               = 0                    // idtype.h:32:1:
    240 	X_SYS_NULL_H_                 = 0                    // null.h:9:1:
    241 	X_SYS_SELECT_H_               = 0                    // select.h:35:1:
    242 	X_SYS_SIGTYPES_H_             = 0                    // sigtypes.h:40:1:
    243 	X_SYS_STAT_H_                 = 0                    // stat.h:40:1:
    244 	X_SYS_STDINT_H_               = 0                    // stdint.h:33:1:
    245 	X_SYS_TIMESPEC_H_             = 0                    // timespec.h:38:1:
    246 	X_SYS_TIME_H_                 = 0                    // time.h:35:1:
    247 	X_SYS_TYPES_H_                = 0                    // types.h:40:1:
    248 	X_S_ARCH1                     = 0200000              // stat.h:148:1:
    249 	X_S_ARCH2                     = 0400000              // stat.h:149:1:
    250 	X_S_IFBLK                     = 0060000              // stat.h:142:1:
    251 	X_S_IFCHR                     = 0020000              // stat.h:140:1:
    252 	X_S_IFDIR                     = 0040000              // stat.h:141:1:
    253 	X_S_IFIFO                     = 0010000              // stat.h:139:1:
    254 	X_S_IFLNK                     = 0120000              // stat.h:144:1:
    255 	X_S_IFMT                      = 0170000              // stat.h:138:1:
    256 	X_S_IFREG                     = 0100000              // stat.h:143:1:
    257 	X_S_IFSOCK                    = 0140000              // stat.h:146:1:
    258 	X_S_IFWHT                     = 0160000              // stat.h:147:1:
    259 	X_S_ISVTX                     = 0001000              // stat.h:145:1:
    260 	X_TIME_H_                     = 0                    // time.h:40:1:
    261 )
    262 
    263 //	$NetBSD: idtype.h,v 1.5 2016/04/09 17:02:51 riastradh Exp $
    264 
    265 // -
    266 // Copyright (c) 2016 The NetBSD Foundation, Inc.
    267 // All rights reserved.
    268 //
    269 // This code is derived from software contributed to The NetBSD Foundation
    270 // by Christos Zoulas.
    271 //
    272 // Redistribution and use in source and binary forms, with or without
    273 // modification, are permitted provided that the following conditions
    274 // are met:
    275 // 1. Redistributions of source code must retain the above copyright
    276 //    notice, this list of conditions and the following disclaimer.
    277 // 2. Redistributions in binary form must reproduce the above copyright
    278 //    notice, this list of conditions and the following disclaimer in the
    279 //    documentation and/or other materials provided with the distribution.
    280 //
    281 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    282 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    283 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    284 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    285 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    286 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    287 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    288 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    289 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    290 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    291 // POSSIBILITY OF SUCH DAMAGE.
    292 
    293 // Using the solaris constants, some of them are not applicable to us
    294 // Do not re-order the list, or add elements in the middle as this will
    295 // break the ABI of the system calls using this.  We set a high private
    296 // maximum so that new values can be added in the future without
    297 // changing the width of the type.
    298 const ( /* idtype.h:41:1: */
    299 	P_MYID        = -1 // Me/my process group
    300 	P_ALL         = 0  // All processes.
    301 	P_PID         = 1  // A process identifier.
    302 	P_LWPID       = 2  // An LWP identifier.
    303 	P_PPID        = 3  // A parent process identifier.
    304 	P_PGID        = 4  // A process group identifier.
    305 	P_SID         = 5  // A session identifier.
    306 	P_CID         = 6  // A scheduling class identifier.
    307 	P_UID         = 7  // A user identifier.
    308 	P_GID         = 8  // A group identifier.
    309 	P_TASKID      = 9  // A task identifier.
    310 	P_PROJID      = 10 // A project identifier.
    311 	P_POOLID      = 11 // A pool identifier.
    312 	P_ZONEID      = 12 // A zone identifier.
    313 	P_CTID        = 13 // A (process) contract identifier.
    314 	P_CPUID       = 14 // CPU identifier.
    315 	P_PSETID      = 15 // Processor set identifier.
    316 	X_P_MAXIDTYPE = 2147483647
    317 )
    318 
    319 type Ptrdiff_t = int32 /* <builtin>:3:26 */
    320 
    321 type Size_t = uint32 /* <builtin>:9:23 */
    322 
    323 type Wchar_t = int32 /* <builtin>:15:24 */
    324 
    325 type X__builtin_va_list = uintptr /* <builtin>:46:14 */
    326 type X__float128 = float64        /* <builtin>:47:21 */
    327 
    328 // return true if value 'a' fits in type 't'
    329 
    330 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
    331 
    332 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
    333 // Public domain.
    334 //
    335 // NOTE: Do not protect this header against multiple inclusion.  Doing
    336 // so can have subtle side-effects due to header file inclusion order
    337 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
    338 // protect each CPP macro that we want to supply.
    339 
    340 // Feature-test macros are defined by several standards, and allow an
    341 // application to specify what symbols they want the system headers to
    342 // expose, and hence what standard they want them to conform to.
    343 // There are two classes of feature-test macros.  The first class
    344 // specify complete standards, and if one of these is defined, header
    345 // files will try to conform to the relevant standard.  They are:
    346 //
    347 // ANSI macros:
    348 // _ANSI_SOURCE			ANSI C89
    349 //
    350 // POSIX macros:
    351 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
    352 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
    353 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
    354 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
    355 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
    356 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
    357 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
    358 //
    359 // X/Open macros:
    360 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
    361 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
    362 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
    363 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
    364 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
    365 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
    366 //
    367 // NetBSD macros:
    368 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
    369 //
    370 // If more than one of these "major" feature-test macros is defined,
    371 // then the set of facilities provided (and namespace used) is the
    372 // union of that specified by the relevant standards, and in case of
    373 // conflict, the earlier standard in the above list has precedence (so
    374 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
    375 // of rename() that's used is the POSIX one).  If none of the "major"
    376 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
    377 //
    378 // There are also "minor" feature-test macros, which enable extra
    379 // functionality in addition to some base standard.  They should be
    380 // defined along with one of the "major" macros.  The "minor" macros
    381 // are:
    382 //
    383 // _REENTRANT
    384 // _ISOC99_SOURCE
    385 // _ISOC11_SOURCE
    386 // _LARGEFILE_SOURCE		Large File Support
    387 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
    388 
    389 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
    390 
    391 // -
    392 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    393 // All rights reserved.
    394 //
    395 // This code is derived from software contributed to The NetBSD Foundation
    396 // by Matt Thomas of 3am Software Foundry.
    397 //
    398 // Redistribution and use in source and binary forms, with or without
    399 // modification, are permitted provided that the following conditions
    400 // are met:
    401 // 1. Redistributions of source code must retain the above copyright
    402 //    notice, this list of conditions and the following disclaimer.
    403 // 2. Redistributions in binary form must reproduce the above copyright
    404 //    notice, this list of conditions and the following disclaimer in the
    405 //    documentation and/or other materials provided with the distribution.
    406 //
    407 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    408 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    409 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    410 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    411 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    412 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    413 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    414 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    415 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    416 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    417 // POSSIBILITY OF SUCH DAMAGE.
    418 
    419 //	$NetBSD: common_int_types.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
    420 
    421 // -
    422 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    423 // All rights reserved.
    424 //
    425 // This code is derived from software contributed to The NetBSD Foundation
    426 // by Joerg Sonnenberger.
    427 //
    428 // Redistribution and use in source and binary forms, with or without
    429 // modification, are permitted provided that the following conditions
    430 // are met:
    431 // 1. Redistributions of source code must retain the above copyright
    432 //    notice, this list of conditions and the following disclaimer.
    433 // 2. Redistributions in binary form must reproduce the above copyright
    434 //    notice, this list of conditions and the following disclaimer in the
    435 //    documentation and/or other materials provided with the distribution.
    436 //
    437 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    438 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    439 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    440 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    441 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    442 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    443 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    444 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    445 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    446 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    447 // POSSIBILITY OF SUCH DAMAGE.
    448 
    449 // 7.18.1 Integer types
    450 
    451 // 7.18.1.1 Exact-width integer types
    452 
    453 type X__int8_t = int8     /* common_int_types.h:45:27 */
    454 type X__uint8_t = uint8   /* common_int_types.h:46:27 */
    455 type X__int16_t = int16   /* common_int_types.h:47:27 */
    456 type X__uint16_t = uint16 /* common_int_types.h:48:27 */
    457 type X__int32_t = int32   /* common_int_types.h:49:27 */
    458 type X__uint32_t = uint32 /* common_int_types.h:50:27 */
    459 type X__int64_t = int64   /* common_int_types.h:51:27 */
    460 type X__uint64_t = uint64 /* common_int_types.h:52:27 */
    461 
    462 // 7.18.1.4 Integer types capable of holding object pointers
    463 
    464 type X__intptr_t = int32   /* common_int_types.h:58:27 */
    465 type X__uintptr_t = uint32 /* common_int_types.h:59:26 */
    466 
    467 // This should have always been an 8-bit type, but since it's been exposed
    468 // to user-space, we don't want ABI breakage there.
    469 type X__cpu_simple_lock_nv_t = int32 /* types.h:75:14 */
    470 type X__register_t = int32           /* types.h:77:14 */
    471 
    472 //	$NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $
    473 
    474 //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
    475 
    476 // -
    477 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    478 // All rights reserved.
    479 //
    480 // This code is derived from software contributed to The NetBSD Foundation
    481 // by Matt Thomas of 3am Software Foundry.
    482 //
    483 // Redistribution and use in source and binary forms, with or without
    484 // modification, are permitted provided that the following conditions
    485 // are met:
    486 // 1. Redistributions of source code must retain the above copyright
    487 //    notice, this list of conditions and the following disclaimer.
    488 // 2. Redistributions in binary form must reproduce the above copyright
    489 //    notice, this list of conditions and the following disclaimer in the
    490 //    documentation and/or other materials provided with the distribution.
    491 //
    492 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    493 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    494 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    495 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    496 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    497 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    498 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    499 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    500 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    501 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    502 // POSSIBILITY OF SUCH DAMAGE.
    503 
    504 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
    505 
    506 // * Copyright (c) 1991, 1993
    507 //	The Regents of the University of California.  All rights reserved.
    508 //
    509 // This code is derived from software contributed to Berkeley by
    510 // Berkeley Software Design, Inc.
    511 //
    512 // Redistribution and use in source and binary forms, with or without
    513 // modification, are permitted provided that the following conditions
    514 // are met:
    515 // 1. Redistributions of source code must retain the above copyright
    516 //    notice, this list of conditions and the following disclaimer.
    517 // 2. Redistributions in binary form must reproduce the above copyright
    518 //    notice, this list of conditions and the following disclaimer in the
    519 //    documentation and/or other materials provided with the distribution.
    520 // 3. Neither the name of the University nor the names of its contributors
    521 //    may be used to endorse or promote products derived from this software
    522 //    without specific prior written permission.
    523 //
    524 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    525 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    526 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    527 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    528 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    529 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    530 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    531 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    532 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    533 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    534 // SUCH DAMAGE.
    535 //
    536 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    537 
    538 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
    539 
    540 // -
    541 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    542 // All rights reserved.
    543 //
    544 // This code is derived from software contributed to The NetBSD Foundation
    545 // by Matt Thomas of 3am Software Foundry.
    546 //
    547 // Redistribution and use in source and binary forms, with or without
    548 // modification, are permitted provided that the following conditions
    549 // are met:
    550 // 1. Redistributions of source code must retain the above copyright
    551 //    notice, this list of conditions and the following disclaimer.
    552 // 2. Redistributions in binary form must reproduce the above copyright
    553 //    notice, this list of conditions and the following disclaimer in the
    554 //    documentation and/or other materials provided with the distribution.
    555 //
    556 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    557 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    558 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    559 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    560 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    561 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    562 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    563 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    564 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    565 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    566 // POSSIBILITY OF SUCH DAMAGE.
    567 
    568 // Types which are fundamental to the implementation and may appear in
    569 // more than one standard header are defined here.  Standard headers
    570 // then use:
    571 //	#ifdef	_BSD_SIZE_T_
    572 //	typedef	_BSD_SIZE_T_ size_t;
    573 //	#undef	_BSD_SIZE_T_
    574 //	#endif
    575 
    576 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
    577 
    578 // -
    579 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    580 // All rights reserved.
    581 //
    582 // This code is derived from software contributed to The NetBSD Foundation
    583 // by Matt Thomas of 3am Software Foundry.
    584 //
    585 // Redistribution and use in source and binary forms, with or without
    586 // modification, are permitted provided that the following conditions
    587 // are met:
    588 // 1. Redistributions of source code must retain the above copyright
    589 //    notice, this list of conditions and the following disclaimer.
    590 // 2. Redistributions in binary form must reproduce the above copyright
    591 //    notice, this list of conditions and the following disclaimer in the
    592 //    documentation and/or other materials provided with the distribution.
    593 //
    594 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    595 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    596 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    597 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    598 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    599 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    600 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    601 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    602 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    603 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    604 // POSSIBILITY OF SUCH DAMAGE.
    605 
    606 //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
    607 
    608 // -
    609 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
    610 // All rights reserved.
    611 //
    612 // This code is derived from software contributed to The NetBSD Foundation
    613 // by Jun-ichiro itojun Hagino and by Klaus Klein.
    614 //
    615 // Redistribution and use in source and binary forms, with or without
    616 // modification, are permitted provided that the following conditions
    617 // are met:
    618 // 1. Redistributions of source code must retain the above copyright
    619 //    notice, this list of conditions and the following disclaimer.
    620 // 2. Redistributions in binary form must reproduce the above copyright
    621 //    notice, this list of conditions and the following disclaimer in the
    622 //    documentation and/or other materials provided with the distribution.
    623 //
    624 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    625 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    626 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    627 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    628 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    629 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    630 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    631 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    632 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    633 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    634 // POSSIBILITY OF SUCH DAMAGE.
    635 
    636 //	$NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $
    637 
    638 //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
    639 
    640 // -
    641 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    642 // All rights reserved.
    643 //
    644 // This code is derived from software contributed to The NetBSD Foundation
    645 // by Matt Thomas of 3am Software Foundry.
    646 //
    647 // Redistribution and use in source and binary forms, with or without
    648 // modification, are permitted provided that the following conditions
    649 // are met:
    650 // 1. Redistributions of source code must retain the above copyright
    651 //    notice, this list of conditions and the following disclaimer.
    652 // 2. Redistributions in binary form must reproduce the above copyright
    653 //    notice, this list of conditions and the following disclaimer in the
    654 //    documentation and/or other materials provided with the distribution.
    655 //
    656 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    657 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    658 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    659 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    660 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    661 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    662 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    663 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    664 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    665 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    666 // POSSIBILITY OF SUCH DAMAGE.
    667 
    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 
    683 // mbstate_t is an opaque object to keep conversion state, during multibyte
    684 // stream conversions.  The content must not be referenced by user programs.
    685 type X__mbstate_t = struct {
    686 	F__mbstateL  X__int64_t
    687 	F__ccgo_pad1 [120]byte
    688 } /* ansi.h:63:3 */
    689 
    690 type X__va_list = X__builtin_va_list /* ansi.h:72:27 */
    691 
    692 type Int8_t = X__int8_t /* types.h:54:18 */
    693 
    694 type Uint8_t = X__uint8_t /* types.h:59:19 */
    695 
    696 type Int16_t = X__int16_t /* types.h:64:19 */
    697 
    698 type Uint16_t = X__uint16_t /* types.h:69:20 */
    699 
    700 type Int32_t = X__int32_t /* types.h:74:19 */
    701 
    702 type Uint32_t = X__uint32_t /* types.h:79:20 */
    703 
    704 type Int64_t = X__int64_t /* types.h:84:19 */
    705 
    706 type Uint64_t = X__uint64_t /* types.h:89:20 */
    707 
    708 type U_int8_t = Uint8_t   /* types.h:93:18 */
    709 type U_int16_t = Uint16_t /* types.h:94:18 */
    710 type U_int32_t = Uint32_t /* types.h:95:18 */
    711 type U_int64_t = Uint64_t /* types.h:96:18 */
    712 
    713 //	$NetBSD: endian.h,v 1.3 2001/06/23 12:20:27 bjh21 Exp $
    714 
    715 //	$NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $
    716 
    717 // Copyright (c) 1987, 1991, 1993
    718 //	The Regents of the University of California.  All rights reserved.
    719 //
    720 // Redistribution and use in source and binary forms, with or without
    721 // modification, are permitted provided that the following conditions
    722 // are met:
    723 // 1. Redistributions of source code must retain the above copyright
    724 //    notice, this list of conditions and the following disclaimer.
    725 // 2. Redistributions in binary form must reproduce the above copyright
    726 //    notice, this list of conditions and the following disclaimer in the
    727 //    documentation and/or other materials provided with the distribution.
    728 // 3. Neither the name of the University nor the names of its contributors
    729 //    may be used to endorse or promote products derived from this software
    730 //    without specific prior written permission.
    731 //
    732 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    733 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    734 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    735 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    736 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    737 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    738 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    739 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    740 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    741 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    742 // SUCH DAMAGE.
    743 //
    744 //	@(#)endian.h	8.1 (Berkeley) 6/11/93
    745 
    746 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
    747 
    748 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
    749 // Public domain.
    750 //
    751 // NOTE: Do not protect this header against multiple inclusion.  Doing
    752 // so can have subtle side-effects due to header file inclusion order
    753 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
    754 // protect each CPP macro that we want to supply.
    755 
    756 // Feature-test macros are defined by several standards, and allow an
    757 // application to specify what symbols they want the system headers to
    758 // expose, and hence what standard they want them to conform to.
    759 // There are two classes of feature-test macros.  The first class
    760 // specify complete standards, and if one of these is defined, header
    761 // files will try to conform to the relevant standard.  They are:
    762 //
    763 // ANSI macros:
    764 // _ANSI_SOURCE			ANSI C89
    765 //
    766 // POSIX macros:
    767 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
    768 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
    769 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
    770 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
    771 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
    772 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
    773 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
    774 //
    775 // X/Open macros:
    776 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
    777 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
    778 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
    779 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
    780 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
    781 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
    782 //
    783 // NetBSD macros:
    784 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
    785 //
    786 // If more than one of these "major" feature-test macros is defined,
    787 // then the set of facilities provided (and namespace used) is the
    788 // union of that specified by the relevant standards, and in case of
    789 // conflict, the earlier standard in the above list has precedence (so
    790 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
    791 // of rename() that's used is the POSIX one).  If none of the "major"
    792 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
    793 //
    794 // There are also "minor" feature-test macros, which enable extra
    795 // functionality in addition to some base standard.  They should be
    796 // defined along with one of the "major" macros.  The "minor" macros
    797 // are:
    798 //
    799 // _REENTRANT
    800 // _ISOC99_SOURCE
    801 // _ISOC11_SOURCE
    802 // _LARGEFILE_SOURCE		Large File Support
    803 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
    804 
    805 // Definitions for byte order, according to byte significance from low
    806 // address to high.
    807 
    808 // C-family endian-ness definitions
    809 
    810 //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
    811 
    812 // -
    813 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
    814 // All rights reserved.
    815 //
    816 // This code is derived from software contributed to The NetBSD Foundation
    817 // by Jun-ichiro itojun Hagino and by Klaus Klein.
    818 //
    819 // Redistribution and use in source and binary forms, with or without
    820 // modification, are permitted provided that the following conditions
    821 // are met:
    822 // 1. Redistributions of source code must retain the above copyright
    823 //    notice, this list of conditions and the following disclaimer.
    824 // 2. Redistributions in binary form must reproduce the above copyright
    825 //    notice, this list of conditions and the following disclaimer in the
    826 //    documentation and/or other materials provided with the distribution.
    827 //
    828 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    829 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    830 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    831 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    832 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    833 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    834 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    835 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    836 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    837 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    838 // POSSIBILITY OF SUCH DAMAGE.
    839 
    840 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
    841 
    842 // * Copyright (c) 1991, 1993
    843 //	The Regents of the University of California.  All rights reserved.
    844 //
    845 // This code is derived from software contributed to Berkeley by
    846 // Berkeley Software Design, Inc.
    847 //
    848 // Redistribution and use in source and binary forms, with or without
    849 // modification, are permitted provided that the following conditions
    850 // are met:
    851 // 1. Redistributions of source code must retain the above copyright
    852 //    notice, this list of conditions and the following disclaimer.
    853 // 2. Redistributions in binary form must reproduce the above copyright
    854 //    notice, this list of conditions and the following disclaimer in the
    855 //    documentation and/or other materials provided with the distribution.
    856 // 3. Neither the name of the University nor the names of its contributors
    857 //    may be used to endorse or promote products derived from this software
    858 //    without specific prior written permission.
    859 //
    860 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    861 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    862 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    863 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    864 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    865 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    866 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    867 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    868 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    869 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    870 // SUCH DAMAGE.
    871 //
    872 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    873 
    874 //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
    875 
    876 // -
    877 // Copyright (c) 1982, 1986, 1991, 1993, 1994
    878 //	The Regents of the University of California.  All rights reserved.
    879 // (c) UNIX System Laboratories, Inc.
    880 // All or some portions of this file are derived from material licensed
    881 // to the University of California by American Telephone and Telegraph
    882 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
    883 // the permission of UNIX System Laboratories, Inc.
    884 //
    885 // Redistribution and use in source and binary forms, with or without
    886 // modification, are permitted provided that the following conditions
    887 // are met:
    888 // 1. Redistributions of source code must retain the above copyright
    889 //    notice, this list of conditions and the following disclaimer.
    890 // 2. Redistributions in binary form must reproduce the above copyright
    891 //    notice, this list of conditions and the following disclaimer in the
    892 //    documentation and/or other materials provided with the distribution.
    893 // 3. Neither the name of the University nor the names of its contributors
    894 //    may be used to endorse or promote products derived from this software
    895 //    without specific prior written permission.
    896 //
    897 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    898 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    899 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    900 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    901 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    902 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    903 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    904 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    905 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    906 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    907 // SUCH DAMAGE.
    908 //
    909 //	@(#)types.h	8.4 (Berkeley) 1/21/94
    910 
    911 type In_addr_t = X__in_addr_t /* endian.h:58:21 */
    912 
    913 type In_port_t = X__in_port_t /* endian.h:63:21 */
    914 
    915 //      $NetBSD: bswap.h,v 1.19 2015/03/12 15:28:16 christos Exp $
    916 
    917 // Written by Manuel Bouyer. Public domain
    918 
    919 //	$NetBSD: stdint.h,v 1.8 2018/11/06 16:26:44 maya Exp $
    920 
    921 // -
    922 // Copyright (c) 2001, 2004 The NetBSD Foundation, Inc.
    923 // All rights reserved.
    924 //
    925 // This code is derived from software contributed to The NetBSD Foundation
    926 // by Klaus Klein.
    927 //
    928 // Redistribution and use in source and binary forms, with or without
    929 // modification, are permitted provided that the following conditions
    930 // are met:
    931 // 1. Redistributions of source code must retain the above copyright
    932 //    notice, this list of conditions and the following disclaimer.
    933 // 2. Redistributions in binary form must reproduce the above copyright
    934 //    notice, this list of conditions and the following disclaimer in the
    935 //    documentation and/or other materials provided with the distribution.
    936 //
    937 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    938 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    939 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    940 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    941 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    942 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    943 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    944 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    945 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    946 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    947 // POSSIBILITY OF SUCH DAMAGE.
    948 
    949 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
    950 
    951 // * Copyright (c) 1991, 1993
    952 //	The Regents of the University of California.  All rights reserved.
    953 //
    954 // This code is derived from software contributed to Berkeley by
    955 // Berkeley Software Design, Inc.
    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 // 3. Neither the name of the University nor the names of its contributors
    966 //    may be used to endorse or promote products derived from this software
    967 //    without specific prior written permission.
    968 //
    969 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    970 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    971 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    972 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    973 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    974 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    975 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    976 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    977 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    978 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    979 // SUCH DAMAGE.
    980 //
    981 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    982 
    983 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
    984 
    985 // -
    986 // Copyright (c) 2014 The NetBSD Foundation, Inc.
    987 // All rights reserved.
    988 //
    989 // This code is derived from software contributed to The NetBSD Foundation
    990 // by Matt Thomas of 3am Software Foundry.
    991 //
    992 // Redistribution and use in source and binary forms, with or without
    993 // modification, are permitted provided that the following conditions
    994 // are met:
    995 // 1. Redistributions of source code must retain the above copyright
    996 //    notice, this list of conditions and the following disclaimer.
    997 // 2. Redistributions in binary form must reproduce the above copyright
    998 //    notice, this list of conditions and the following disclaimer in the
    999 //    documentation and/or other materials provided with the distribution.
   1000 //
   1001 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   1002 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   1003 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   1004 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   1005 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   1006 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   1007 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   1008 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   1009 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   1010 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   1011 // POSSIBILITY OF SUCH DAMAGE.
   1012 
   1013 type Intptr_t = X__intptr_t /* stdint.h:79:20 */
   1014 
   1015 type Uintptr_t = X__uintptr_t /* stdint.h:84:21 */
   1016 
   1017 // $NetBSD: int_mwgwtypes.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
   1018 
   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 Matt Thomas of 3am Software Foundry.
   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 
   1047 //	$NetBSD: common_int_mwgwtypes.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
   1048 
   1049 // -
   1050 // Copyright (c) 2014 The NetBSD Foundation, Inc.
   1051 // All rights reserved.
   1052 //
   1053 // This code is derived from software contributed to The NetBSD Foundation
   1054 // by Joerg Sonnenberger.
   1055 //
   1056 // Redistribution and use in source and binary forms, with or without
   1057 // modification, are permitted provided that the following conditions
   1058 // are met:
   1059 // 1. Redistributions of source code must retain the above copyright
   1060 //    notice, this list of conditions and the following disclaimer.
   1061 // 2. Redistributions in binary form must reproduce the above copyright
   1062 //    notice, this list of conditions and the following disclaimer in the
   1063 //    documentation and/or other materials provided with the distribution.
   1064 //
   1065 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   1066 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   1067 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   1068 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   1069 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   1070 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   1071 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   1072 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   1073 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   1074 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   1075 // POSSIBILITY OF SUCH DAMAGE.
   1076 
   1077 // 7.18.1 Integer types
   1078 
   1079 // 7.18.1.2 Minimum-width integer types
   1080 
   1081 type Int_least8_t = int8     /* common_int_mwgwtypes.h:45:32 */
   1082 type Uint_least8_t = uint8   /* common_int_mwgwtypes.h:46:32 */
   1083 type Int_least16_t = int16   /* common_int_mwgwtypes.h:47:32 */
   1084 type Uint_least16_t = uint16 /* common_int_mwgwtypes.h:48:32 */
   1085 type Int_least32_t = int32   /* common_int_mwgwtypes.h:49:32 */
   1086 type Uint_least32_t = uint32 /* common_int_mwgwtypes.h:50:32 */
   1087 type Int_least64_t = int64   /* common_int_mwgwtypes.h:51:32 */
   1088 type Uint_least64_t = uint64 /* common_int_mwgwtypes.h:52:32 */
   1089 
   1090 // 7.18.1.3 Fastest minimum-width integer types
   1091 type Int_fast8_t = int32    /* common_int_mwgwtypes.h:55:32 */
   1092 type Uint_fast8_t = uint32  /* common_int_mwgwtypes.h:56:32 */
   1093 type Int_fast16_t = int32   /* common_int_mwgwtypes.h:57:32 */
   1094 type Uint_fast16_t = uint32 /* common_int_mwgwtypes.h:58:32 */
   1095 type Int_fast32_t = int32   /* common_int_mwgwtypes.h:59:32 */
   1096 type Uint_fast32_t = uint32 /* common_int_mwgwtypes.h:60:32 */
   1097 type Int_fast64_t = int64   /* common_int_mwgwtypes.h:61:32 */
   1098 type Uint_fast64_t = uint64 /* common_int_mwgwtypes.h:62:32 */
   1099 
   1100 // 7.18.1.5 Greatest-width integer types
   1101 
   1102 type Intmax_t = int64   /* common_int_mwgwtypes.h:66:33 */
   1103 type Uintmax_t = uint64 /* common_int_mwgwtypes.h:67:32 */
   1104 
   1105 type U_char = uint8   /* types.h:101:23 */
   1106 type U_short = uint16 /* types.h:102:24 */
   1107 type U_int = uint32   /* types.h:103:22 */
   1108 type U_long = uint32  /* types.h:104:23 */
   1109 
   1110 type Unchar = uint8  /* types.h:106:23 */ // Sys V compatibility
   1111 type Ushort = uint16 /* types.h:107:24 */ // Sys V compatibility
   1112 type Uint = uint32   /* types.h:108:22 */ // Sys V compatibility
   1113 type Ulong = uint32  /* types.h:109:23 */ // Sys V compatibility
   1114 
   1115 type U_quad_t = Uint64_t /* types.h:112:18 */ // quads
   1116 type Quad_t = Int64_t    /* types.h:113:18 */
   1117 type Qaddr_t = uintptr   /* types.h:114:16 */
   1118 
   1119 // The types longlong_t and u_longlong_t exist for use with the
   1120 // Sun-derived XDR routines involving these types, and their usage
   1121 // in other contexts is discouraged.  Further note that these types
   1122 // may not be equivalent to "long long" and "unsigned long long",
   1123 // they are only guaranteed to be signed and unsigned 64-bit types
   1124 // respectively.  Portable programs that need 64-bit types should use
   1125 // the C99 types int64_t and uint64_t instead.
   1126 
   1127 type Longlong_t = Int64_t    /* types.h:126:18 */ // for XDR
   1128 type U_longlong_t = Uint64_t /* types.h:127:18 */ // for XDR
   1129 
   1130 type Blkcnt_t = Int64_t  /* types.h:129:18 */ // fs block count
   1131 type Blksize_t = Int32_t /* types.h:130:18 */ // fs optimal block size
   1132 
   1133 type Fsblkcnt_t = X__fsblkcnt_t /* types.h:133:22 */ // fs block count (statvfs)
   1134 
   1135 type Fsfilcnt_t = X__fsfilcnt_t /* types.h:138:22 */ // fs file count
   1136 
   1137 // We don't and shouldn't use caddr_t in the kernel anymore
   1138 type Caddr_t = X__caddr_t /* types.h:145:19 */ // core address
   1139 
   1140 type Daddr_t = Int64_t /* types.h:154:18 */ // disk address
   1141 
   1142 type Dev_t = Uint64_t   /* types.h:157:18 */ // device number
   1143 type Fixpt_t = Uint32_t /* types.h:158:18 */ // fixed point number
   1144 
   1145 type Gid_t = X__gid_t /* types.h:161:18 */ // group id
   1146 
   1147 type Id_t = Uint32_t  /* types.h:165:18 */ // group id, process id or user id
   1148 type Ino_t = Uint64_t /* types.h:166:18 */ // inode number
   1149 type Key_t = int32    /* types.h:167:15 */ // IPC key (for Sys V IPC)
   1150 
   1151 type Mode_t = X__mode_t /* types.h:170:18 */ // permissions
   1152 
   1153 type Nlink_t = Uint32_t /* types.h:174:18 */ // link count
   1154 
   1155 type Off_t = X__off_t /* types.h:177:18 */ // file offset
   1156 
   1157 type Pid_t = X__pid_t  /* types.h:182:18 */ // process id
   1158 type Lwpid_t = Int32_t /* types.h:185:18 */ // LWP id
   1159 type Rlim_t = Uint64_t /* types.h:186:18 */ // resource limit
   1160 type Segsz_t = Int32_t /* types.h:187:18 */ // segment size
   1161 type Swblk_t = Int32_t /* types.h:188:18 */ // swap offset
   1162 
   1163 type Uid_t = X__uid_t /* types.h:191:18 */ // user id
   1164 
   1165 type Mqd_t = int32 /* types.h:195:14 */
   1166 
   1167 type Cpuid_t = uint32 /* types.h:197:23 */
   1168 
   1169 type Psetid_t = int32 /* types.h:199:14 */
   1170 
   1171 type X__cpu_simple_lock_t = X__cpu_simple_lock_nv_t /* types.h:201:41 */
   1172 
   1173 // Major, minor numbers, dev_t's.
   1174 type X__devmajor_t = Int32_t /* types.h:255:17 */
   1175 type X__devminor_t = Int32_t /* types.h:255:31 */
   1176 
   1177 type Clock_t = uint32 /* types.h:268:24 */
   1178 
   1179 type Ssize_t = int32 /* types.h:284:24 */
   1180 
   1181 type Time_t = X__int64_t /* types.h:289:23 */
   1182 
   1183 type Clockid_t = int32 /* types.h:294:26 */
   1184 
   1185 type Timer_t = int32 /* types.h:299:24 */
   1186 
   1187 type Suseconds_t = int32 /* types.h:304:27 */
   1188 
   1189 type Useconds_t = uint32 /* types.h:309:26 */
   1190 
   1191 //	$NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
   1192 
   1193 // -
   1194 // Copyright (c) 1992, 1993
   1195 //	The Regents of the University of California.  All rights reserved.
   1196 //
   1197 // Redistribution and use in source and binary forms, with or without
   1198 // modification, are permitted provided that the following conditions
   1199 // are met:
   1200 // 1. Redistributions of source code must retain the above copyright
   1201 //    notice, this list of conditions and the following disclaimer.
   1202 // 2. Redistributions in binary form must reproduce the above copyright
   1203 //    notice, this list of conditions and the following disclaimer in the
   1204 //    documentation and/or other materials provided with the distribution.
   1205 // 3. Neither the name of the University nor the names of its contributors
   1206 //    may be used to endorse or promote products derived from this software
   1207 //    without specific prior written permission.
   1208 //
   1209 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1210 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1211 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1212 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1213 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1214 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1215 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1216 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1217 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1218 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1219 // SUCH DAMAGE.
   1220 //
   1221 //	from: @(#)types.h	8.4 (Berkeley) 1/21/94
   1222 
   1223 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   1224 
   1225 // * Copyright (c) 1991, 1993
   1226 //	The Regents of the University of California.  All rights reserved.
   1227 //
   1228 // This code is derived from software contributed to Berkeley by
   1229 // Berkeley Software Design, Inc.
   1230 //
   1231 // Redistribution and use in source and binary forms, with or without
   1232 // modification, are permitted provided that the following conditions
   1233 // are met:
   1234 // 1. Redistributions of source code must retain the above copyright
   1235 //    notice, this list of conditions and the following disclaimer.
   1236 // 2. Redistributions in binary form must reproduce the above copyright
   1237 //    notice, this list of conditions and the following disclaimer in the
   1238 //    documentation and/or other materials provided with the distribution.
   1239 // 3. Neither the name of the University nor the names of its contributors
   1240 //    may be used to endorse or promote products derived from this software
   1241 //    without specific prior written permission.
   1242 //
   1243 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1244 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1245 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1246 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1247 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1248 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1249 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1250 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1251 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1252 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1253 // SUCH DAMAGE.
   1254 //
   1255 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1256 
   1257 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   1258 
   1259 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   1260 // Public domain.
   1261 //
   1262 // NOTE: Do not protect this header against multiple inclusion.  Doing
   1263 // so can have subtle side-effects due to header file inclusion order
   1264 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   1265 // protect each CPP macro that we want to supply.
   1266 
   1267 // Feature-test macros are defined by several standards, and allow an
   1268 // application to specify what symbols they want the system headers to
   1269 // expose, and hence what standard they want them to conform to.
   1270 // There are two classes of feature-test macros.  The first class
   1271 // specify complete standards, and if one of these is defined, header
   1272 // files will try to conform to the relevant standard.  They are:
   1273 //
   1274 // ANSI macros:
   1275 // _ANSI_SOURCE			ANSI C89
   1276 //
   1277 // POSIX macros:
   1278 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   1279 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   1280 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   1281 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   1282 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   1283 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   1284 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   1285 //
   1286 // X/Open macros:
   1287 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   1288 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   1289 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   1290 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   1291 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   1292 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   1293 //
   1294 // NetBSD macros:
   1295 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   1296 //
   1297 // If more than one of these "major" feature-test macros is defined,
   1298 // then the set of facilities provided (and namespace used) is the
   1299 // union of that specified by the relevant standards, and in case of
   1300 // conflict, the earlier standard in the above list has precedence (so
   1301 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   1302 // of rename() that's used is the POSIX one).  If none of the "major"
   1303 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   1304 //
   1305 // There are also "minor" feature-test macros, which enable extra
   1306 // functionality in addition to some base standard.  They should be
   1307 // defined along with one of the "major" macros.  The "minor" macros
   1308 // are:
   1309 //
   1310 // _REENTRANT
   1311 // _ISOC99_SOURCE
   1312 // _ISOC11_SOURCE
   1313 // _LARGEFILE_SOURCE		Large File Support
   1314 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   1315 
   1316 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
   1317 
   1318 // -
   1319 // Copyright (c) 2014 The NetBSD Foundation, Inc.
   1320 // All rights reserved.
   1321 //
   1322 // This code is derived from software contributed to The NetBSD Foundation
   1323 // by Matt Thomas of 3am Software Foundry.
   1324 //
   1325 // Redistribution and use in source and binary forms, with or without
   1326 // modification, are permitted provided that the following conditions
   1327 // are met:
   1328 // 1. Redistributions of source code must retain the above copyright
   1329 //    notice, this list of conditions and the following disclaimer.
   1330 // 2. Redistributions in binary form must reproduce the above copyright
   1331 //    notice, this list of conditions and the following disclaimer in the
   1332 //    documentation and/or other materials provided with the distribution.
   1333 //
   1334 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   1335 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   1336 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   1337 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   1338 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   1339 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   1340 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   1341 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   1342 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   1343 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   1344 // POSSIBILITY OF SUCH DAMAGE.
   1345 
   1346 // Implementation dependent defines, hidden from user space.
   1347 // POSIX does not specify them.
   1348 
   1349 type X__fd_mask = X__uint32_t /* fd_set.h:46:20 */
   1350 
   1351 // 32 = 2 ^ 5
   1352 
   1353 // Select uses bit fields of file descriptors.  These macros manipulate
   1354 // such bit fields.  Note: FD_SETSIZE may be defined by the user.
   1355 
   1356 type Fd_set1 = struct{ Ffds_bits [8]X__fd_mask } /* fd_set.h:66:9 */
   1357 
   1358 // 32 = 2 ^ 5
   1359 
   1360 // Select uses bit fields of file descriptors.  These macros manipulate
   1361 // such bit fields.  Note: FD_SETSIZE may be defined by the user.
   1362 
   1363 type Fd_set = Fd_set1 /* fd_set.h:68:3 */
   1364 
   1365 // Expose our internals if we are not required to hide them.
   1366 
   1367 type Kauth_cred_t = uintptr /* types.h:318:27 */
   1368 
   1369 type Pri_t = int32 /* types.h:320:13 */
   1370 
   1371 //	$NetBSD: pthread_types.h,v 1.23 2017/09/09 23:21:45 kamil Exp $
   1372 
   1373 // -
   1374 // Copyright (c) 2001, 2008 The NetBSD Foundation, Inc.
   1375 // All rights reserved.
   1376 //
   1377 // This code is derived from software contributed to The NetBSD Foundation
   1378 // by Nathan J. Williams.
   1379 //
   1380 // Redistribution and use in source and binary forms, with or without
   1381 // modification, are permitted provided that the following conditions
   1382 // are met:
   1383 // 1. Redistributions of source code must retain the above copyright
   1384 //    notice, this list of conditions and the following disclaimer.
   1385 // 2. Redistributions in binary form must reproduce the above copyright
   1386 //    notice, this list of conditions and the following disclaimer in the
   1387 //    documentation and/or other materials provided with the distribution.
   1388 //
   1389 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   1390 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   1391 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   1392 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   1393 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   1394 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   1395 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   1396 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   1397 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   1398 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   1399 // POSSIBILITY OF SUCH DAMAGE.
   1400 
   1401 // We use the "pthread_spin_t" name internally; "pthread_spinlock_t" is the
   1402 // POSIX spinlock object.
   1403 //
   1404 // C++ expects to be using PTHREAD_FOO_INITIALIZER as a member initializer.
   1405 // This does not work for volatile types.  Since C++ does not touch the guts
   1406 // of those types, we do not include volatile in the C++ definitions.
   1407 type Pthread_spin_t = X__cpu_simple_lock_t /* pthread_types.h:43:29 */
   1408 type X__pthread_spin_t = Pthread_spin_t    /* pthread_types.h:48:24 */
   1409 
   1410 // Copied from PTQ_HEAD in pthread_queue.h
   1411 
   1412 type Pthread_queue_struct_t = struct {
   1413 	Fptqh_first uintptr
   1414 	Fptqh_last  uintptr
   1415 } /* pthread_types.h:61:1 */
   1416 
   1417 type Pthread_queue_t = Pthread_queue_struct_t /* pthread_types.h:62:39 */
   1418 type X__pthread_attr_st = struct {
   1419 	Fpta_magic   uint32
   1420 	Fpta_flags   int32
   1421 	Fpta_private uintptr
   1422 } /* pthread_types.h:65:1 */
   1423 
   1424 type X__pthread_mutex_st = struct {
   1425 	Fptm_magic      uint32
   1426 	Fptm_errorcheck X__pthread_spin_t
   1427 	F__8            struct {
   1428 		F__ccgo_pad1 [0]uint32
   1429 		Fptm_ceiling uint8
   1430 		F__ccgo_pad2 [3]byte
   1431 	}
   1432 	Fptm_owner    Pthread_t
   1433 	Fptm_waiters  uintptr
   1434 	Fptm_recursed uint32
   1435 	Fptm_spare2   uintptr
   1436 } /* pthread_types.h:66:1 */
   1437 
   1438 type X__pthread_mutexattr_st = struct {
   1439 	Fptma_magic   uint32
   1440 	Fptma_private uintptr
   1441 } /* pthread_types.h:67:1 */
   1442 
   1443 type X__pthread_cond_st = struct {
   1444 	Fptc_magic   uint32
   1445 	Fptc_lock    X__pthread_spin_t
   1446 	Fptc_waiters Pthread_queue_t
   1447 	Fptc_mutex   uintptr
   1448 	Fptc_private uintptr
   1449 } /* pthread_types.h:68:1 */
   1450 
   1451 type X__pthread_condattr_st = struct {
   1452 	Fptca_magic   uint32
   1453 	Fptca_private uintptr
   1454 } /* pthread_types.h:69:1 */
   1455 
   1456 type X__pthread_rwlock_st = struct {
   1457 	Fptr_magic     uint32
   1458 	Fptr_interlock X__pthread_spin_t
   1459 	Fptr_rblocked  Pthread_queue_t
   1460 	Fptr_wblocked  Pthread_queue_t
   1461 	Fptr_nreaders  uint32
   1462 	Fptr_owner     Pthread_t
   1463 	Fptr_private   uintptr
   1464 } /* pthread_types.h:71:1 */
   1465 
   1466 type X__pthread_rwlockattr_st = struct {
   1467 	Fptra_magic   uint32
   1468 	Fptra_private uintptr
   1469 } /* pthread_types.h:72:1 */
   1470 
   1471 type X__pthread_barrier_st = struct {
   1472 	Fptb_magic      uint32
   1473 	Fptb_lock       Pthread_spin_t
   1474 	Fptb_waiters    Pthread_queue_t
   1475 	Fptb_initcount  uint32
   1476 	Fptb_curcount   uint32
   1477 	Fptb_generation uint32
   1478 	Fptb_private    uintptr
   1479 } /* pthread_types.h:73:1 */
   1480 
   1481 type X__pthread_barrierattr_st = struct {
   1482 	Fptba_magic   uint32
   1483 	Fptba_private uintptr
   1484 } /* pthread_types.h:74:1 */
   1485 
   1486 type Pthread_t = uintptr                           /* pthread_types.h:76:29 */
   1487 type Pthread_attr_t = X__pthread_attr_st           /* pthread_types.h:77:34 */
   1488 type Pthread_mutex_t = X__pthread_mutex_st         /* pthread_types.h:78:35 */
   1489 type Pthread_mutexattr_t = X__pthread_mutexattr_st /* pthread_types.h:79:39 */
   1490 type Pthread_cond_t = X__pthread_cond_st           /* pthread_types.h:80:34 */
   1491 type Pthread_condattr_t = X__pthread_condattr_st   /* pthread_types.h:81:38 */
   1492 type X__pthread_once_st = struct {
   1493 	Fpto_mutex Pthread_mutex_t
   1494 	Fpto_done  int32
   1495 } /* pthread_types.h:82:9 */
   1496 
   1497 type Pthread_once_t = X__pthread_once_st /* pthread_types.h:82:34 */
   1498 type X__pthread_spinlock_st = struct {
   1499 	Fpts_magic uint32
   1500 	Fpts_spin  X__pthread_spin_t
   1501 	Fpts_flags int32
   1502 } /* pthread_types.h:83:9 */
   1503 
   1504 type Pthread_spinlock_t = X__pthread_spinlock_st       /* pthread_types.h:83:38 */
   1505 type Pthread_rwlock_t = X__pthread_rwlock_st           /* pthread_types.h:84:36 */
   1506 type Pthread_rwlockattr_t = X__pthread_rwlockattr_st   /* pthread_types.h:85:40 */
   1507 type Pthread_barrier_t = X__pthread_barrier_st         /* pthread_types.h:86:37 */
   1508 type Pthread_barrierattr_t = X__pthread_barrierattr_st /* pthread_types.h:87:41 */
   1509 type Pthread_key_t = int32                             /* pthread_types.h:88:13 */
   1510 
   1511 //	$NetBSD: stat.h,v 1.68 2013/10/17 18:01:11 njoly Exp $
   1512 
   1513 // -
   1514 // Copyright (c) 1982, 1986, 1989, 1993
   1515 //	The Regents of the University of California.  All rights reserved.
   1516 // (c) UNIX System Laboratories, Inc.
   1517 // All or some portions of this file are derived from material licensed
   1518 // to the University of California by American Telephone and Telegraph
   1519 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1520 // the permission of UNIX System Laboratories, Inc.
   1521 //
   1522 // Redistribution and use in source and binary forms, with or without
   1523 // modification, are permitted provided that the following conditions
   1524 // are met:
   1525 // 1. Redistributions of source code must retain the above copyright
   1526 //    notice, this list of conditions and the following disclaimer.
   1527 // 2. Redistributions in binary form must reproduce the above copyright
   1528 //    notice, this list of conditions and the following disclaimer in the
   1529 //    documentation and/or other materials provided with the distribution.
   1530 // 3. Neither the name of the University nor the names of its contributors
   1531 //    may be used to endorse or promote products derived from this software
   1532 //    without specific prior written permission.
   1533 //
   1534 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1535 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1536 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1537 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1538 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1539 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1540 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1541 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1542 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1543 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1544 // SUCH DAMAGE.
   1545 //
   1546 //	@(#)stat.h	8.12 (Berkeley) 8/17/94
   1547 
   1548 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   1549 
   1550 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   1551 // Public domain.
   1552 //
   1553 // NOTE: Do not protect this header against multiple inclusion.  Doing
   1554 // so can have subtle side-effects due to header file inclusion order
   1555 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   1556 // protect each CPP macro that we want to supply.
   1557 
   1558 // Feature-test macros are defined by several standards, and allow an
   1559 // application to specify what symbols they want the system headers to
   1560 // expose, and hence what standard they want them to conform to.
   1561 // There are two classes of feature-test macros.  The first class
   1562 // specify complete standards, and if one of these is defined, header
   1563 // files will try to conform to the relevant standard.  They are:
   1564 //
   1565 // ANSI macros:
   1566 // _ANSI_SOURCE			ANSI C89
   1567 //
   1568 // POSIX macros:
   1569 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   1570 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   1571 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   1572 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   1573 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   1574 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   1575 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   1576 //
   1577 // X/Open macros:
   1578 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   1579 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   1580 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   1581 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   1582 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   1583 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   1584 //
   1585 // NetBSD macros:
   1586 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   1587 //
   1588 // If more than one of these "major" feature-test macros is defined,
   1589 // then the set of facilities provided (and namespace used) is the
   1590 // union of that specified by the relevant standards, and in case of
   1591 // conflict, the earlier standard in the above list has precedence (so
   1592 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   1593 // of rename() that's used is the POSIX one).  If none of the "major"
   1594 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   1595 //
   1596 // There are also "minor" feature-test macros, which enable extra
   1597 // functionality in addition to some base standard.  They should be
   1598 // defined along with one of the "major" macros.  The "minor" macros
   1599 // are:
   1600 //
   1601 // _REENTRANT
   1602 // _ISOC99_SOURCE
   1603 // _ISOC11_SOURCE
   1604 // _LARGEFILE_SOURCE		Large File Support
   1605 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   1606 
   1607 //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
   1608 
   1609 // -
   1610 // Copyright (c) 1982, 1986, 1991, 1993, 1994
   1611 //	The Regents of the University of California.  All rights reserved.
   1612 // (c) UNIX System Laboratories, Inc.
   1613 // All or some portions of this file are derived from material licensed
   1614 // to the University of California by American Telephone and Telegraph
   1615 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1616 // the permission of UNIX System Laboratories, Inc.
   1617 //
   1618 // Redistribution and use in source and binary forms, with or without
   1619 // modification, are permitted provided that the following conditions
   1620 // are met:
   1621 // 1. Redistributions of source code must retain the above copyright
   1622 //    notice, this list of conditions and the following disclaimer.
   1623 // 2. Redistributions in binary form must reproduce the above copyright
   1624 //    notice, this list of conditions and the following disclaimer in the
   1625 //    documentation and/or other materials provided with the distribution.
   1626 // 3. Neither the name of the University nor the names of its contributors
   1627 //    may be used to endorse or promote products derived from this software
   1628 //    without specific prior written permission.
   1629 //
   1630 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1631 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1632 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1633 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1634 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1635 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1636 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1637 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1638 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1639 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1640 // SUCH DAMAGE.
   1641 //
   1642 //	@(#)types.h	8.4 (Berkeley) 1/21/94
   1643 
   1644 // POSIX:2008 / XPG7 requires struct timespec to be declared in
   1645 // this header, but does not provide the usual exemption
   1646 // "inclusion of this header may make visible symbols defined in <time.h>".
   1647 //
   1648 // This is a Standard omission, acknowledged by the committee and
   1649 // scheduled to be corrected in Technical Corrigendum 2, according to
   1650 // http://austingroupbugs.net/view.php?id=531
   1651 //	$NetBSD: time.h,v 1.79 2017/01/17 15:28:34 maya Exp $
   1652 
   1653 // Copyright (c) 1982, 1986, 1993
   1654 //	The Regents of the University of California.  All rights reserved.
   1655 //
   1656 // Redistribution and use in source and binary forms, with or without
   1657 // modification, are permitted provided that the following conditions
   1658 // are met:
   1659 // 1. Redistributions of source code must retain the above copyright
   1660 //    notice, this list of conditions and the following disclaimer.
   1661 // 2. Redistributions in binary form must reproduce the above copyright
   1662 //    notice, this list of conditions and the following disclaimer in the
   1663 //    documentation and/or other materials provided with the distribution.
   1664 // 3. Neither the name of the University nor the names of its contributors
   1665 //    may be used to endorse or promote products derived from this software
   1666 //    without specific prior written permission.
   1667 //
   1668 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1669 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1670 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1671 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1672 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1673 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1674 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1675 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1676 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1677 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1678 // SUCH DAMAGE.
   1679 //
   1680 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1681 
   1682 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   1683 
   1684 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   1685 // Public domain.
   1686 //
   1687 // NOTE: Do not protect this header against multiple inclusion.  Doing
   1688 // so can have subtle side-effects due to header file inclusion order
   1689 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   1690 // protect each CPP macro that we want to supply.
   1691 
   1692 // Feature-test macros are defined by several standards, and allow an
   1693 // application to specify what symbols they want the system headers to
   1694 // expose, and hence what standard they want them to conform to.
   1695 // There are two classes of feature-test macros.  The first class
   1696 // specify complete standards, and if one of these is defined, header
   1697 // files will try to conform to the relevant standard.  They are:
   1698 //
   1699 // ANSI macros:
   1700 // _ANSI_SOURCE			ANSI C89
   1701 //
   1702 // POSIX macros:
   1703 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   1704 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   1705 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   1706 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   1707 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   1708 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   1709 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   1710 //
   1711 // X/Open macros:
   1712 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   1713 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   1714 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   1715 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   1716 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   1717 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   1718 //
   1719 // NetBSD macros:
   1720 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   1721 //
   1722 // If more than one of these "major" feature-test macros is defined,
   1723 // then the set of facilities provided (and namespace used) is the
   1724 // union of that specified by the relevant standards, and in case of
   1725 // conflict, the earlier standard in the above list has precedence (so
   1726 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   1727 // of rename() that's used is the POSIX one).  If none of the "major"
   1728 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   1729 //
   1730 // There are also "minor" feature-test macros, which enable extra
   1731 // functionality in addition to some base standard.  They should be
   1732 // defined along with one of the "major" macros.  The "minor" macros
   1733 // are:
   1734 //
   1735 // _REENTRANT
   1736 // _ISOC99_SOURCE
   1737 // _ISOC11_SOURCE
   1738 // _LARGEFILE_SOURCE		Large File Support
   1739 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   1740 
   1741 //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
   1742 
   1743 // -
   1744 // Copyright (c) 1982, 1986, 1991, 1993, 1994
   1745 //	The Regents of the University of California.  All rights reserved.
   1746 // (c) UNIX System Laboratories, Inc.
   1747 // All or some portions of this file are derived from material licensed
   1748 // to the University of California by American Telephone and Telegraph
   1749 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1750 // the permission of UNIX System Laboratories, Inc.
   1751 //
   1752 // Redistribution and use in source and binary forms, with or without
   1753 // modification, are permitted provided that the following conditions
   1754 // are met:
   1755 // 1. Redistributions of source code must retain the above copyright
   1756 //    notice, this list of conditions and the following disclaimer.
   1757 // 2. Redistributions in binary form must reproduce the above copyright
   1758 //    notice, this list of conditions and the following disclaimer in the
   1759 //    documentation and/or other materials provided with the distribution.
   1760 // 3. Neither the name of the University nor the names of its contributors
   1761 //    may be used to endorse or promote products derived from this software
   1762 //    without specific prior written permission.
   1763 //
   1764 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1765 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1766 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1767 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1768 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1769 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1770 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1771 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1772 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1773 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1774 // SUCH DAMAGE.
   1775 //
   1776 //	@(#)types.h	8.4 (Berkeley) 1/21/94
   1777 
   1778 // Structure returned by gettimeofday(2) system call,
   1779 // and used in other calls.
   1780 type Timeval = struct {
   1781 	Ftv_sec      Time_t
   1782 	Ftv_usec     Suseconds_t
   1783 	F__ccgo_pad1 [4]byte
   1784 } /* time.h:44:1 */
   1785 
   1786 //	$NetBSD: timespec.h,v 1.1 2015/07/31 12:51:32 kamil Exp $
   1787 
   1788 // Copyright (c) 1982, 1986, 1993
   1789 //	The Regents of the University of California.  All rights reserved.
   1790 //
   1791 // Redistribution and use in source and binary forms, with or without
   1792 // modification, are permitted provided that the following conditions
   1793 // are met:
   1794 // 1. Redistributions of source code must retain the above copyright
   1795 //    notice, this list of conditions and the following disclaimer.
   1796 // 2. Redistributions in binary form must reproduce the above copyright
   1797 //    notice, this list of conditions and the following disclaimer in the
   1798 //    documentation and/or other materials provided with the distribution.
   1799 // 3. Neither the name of the University nor the names of its contributors
   1800 //    may be used to endorse or promote products derived from this software
   1801 //    without specific prior written permission.
   1802 //
   1803 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1804 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1805 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1806 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1807 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1808 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1809 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1810 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1811 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1812 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1813 // SUCH DAMAGE.
   1814 //
   1815 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1816 //
   1817 // Extracted by Kamil Rytarowski from:
   1818 // NetBSD: src/sys/sys/time.h,v 1.69 2015/05/19 23:35:11 riastradh Exp
   1819 
   1820 //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
   1821 
   1822 // -
   1823 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
   1824 // All rights reserved.
   1825 //
   1826 // This code is derived from software contributed to The NetBSD Foundation
   1827 // by Jun-ichiro itojun Hagino and by Klaus Klein.
   1828 //
   1829 // Redistribution and use in source and binary forms, with or without
   1830 // modification, are permitted provided that the following conditions
   1831 // are met:
   1832 // 1. Redistributions of source code must retain the above copyright
   1833 //    notice, this list of conditions and the following disclaimer.
   1834 // 2. Redistributions in binary form must reproduce the above copyright
   1835 //    notice, this list of conditions and the following disclaimer in the
   1836 //    documentation and/or other materials provided with the distribution.
   1837 //
   1838 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   1839 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   1840 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   1841 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   1842 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   1843 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   1844 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   1845 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   1846 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   1847 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   1848 // POSSIBILITY OF SUCH DAMAGE.
   1849 
   1850 type Timespec = struct {
   1851 	Ftv_sec      Time_t
   1852 	Ftv_nsec     int32
   1853 	F__ccgo_pad1 [4]byte
   1854 } /* timespec.h:47:1 */
   1855 
   1856 // Note: timezone is obsolete. All timezone handling is now in
   1857 // userland. Its just here for back compatibility.
   1858 type Timezone = struct {
   1859 	Ftz_minuteswest int32
   1860 	Ftz_dsttime     int32
   1861 } /* time.h:65:1 */
   1862 
   1863 // Operations on timevals.
   1864 
   1865 // hide bintime for _STANDALONE because this header is used for hpcboot.exe,
   1866 // which is built with compilers which don't recognize LL suffix.
   1867 //
   1868 //	http://mail-index.NetBSD.org/tech-userlevel/2008/02/27/msg000181.html
   1869 type Bintime = struct {
   1870 	Fsec  Time_t
   1871 	Ffrac Uint64_t
   1872 } /* time.h:102:1 */
   1873 
   1874 // Operations on timespecs.
   1875 
   1876 // Names of the interval timers, and structure
   1877 // defining a timer setting.
   1878 // NB: Must match the CLOCK_ constants below.
   1879 
   1880 type Itimerval = struct {
   1881 	Fit_interval struct {
   1882 		Ftv_sec      Time_t
   1883 		Ftv_usec     Suseconds_t
   1884 		F__ccgo_pad1 [4]byte
   1885 	}
   1886 	Fit_value struct {
   1887 		Ftv_sec      Time_t
   1888 		Ftv_usec     Suseconds_t
   1889 		F__ccgo_pad1 [4]byte
   1890 	}
   1891 } /* time.h:280:1 */
   1892 
   1893 // Structure defined by POSIX.1b to be like a itimerval, but with
   1894 // timespecs. Used in the timer_*() system calls.
   1895 type Itimerspec = struct {
   1896 	Fit_interval struct {
   1897 		Ftv_sec      Time_t
   1898 		Ftv_nsec     int32
   1899 		F__ccgo_pad1 [4]byte
   1900 	}
   1901 	Fit_value struct {
   1902 		Ftv_sec      Time_t
   1903 		Ftv_nsec     int32
   1904 		F__ccgo_pad1 [4]byte
   1905 	}
   1906 } /* time.h:289:1 */
   1907 
   1908 //	$NetBSD: select.h,v 1.37 2014/04/25 15:52:45 pooka Exp $
   1909 
   1910 // -
   1911 // Copyright (c) 1992, 1993
   1912 //	The Regents of the University of California.  All rights reserved.
   1913 //
   1914 // Redistribution and use in source and binary forms, with or without
   1915 // modification, are permitted provided that the following conditions
   1916 // are met:
   1917 // 1. Redistributions of source code must retain the above copyright
   1918 //    notice, this list of conditions and the following disclaimer.
   1919 // 2. Redistributions in binary form must reproduce the above copyright
   1920 //    notice, this list of conditions and the following disclaimer in the
   1921 //    documentation and/or other materials provided with the distribution.
   1922 // 3. Neither the name of the University nor the names of its contributors
   1923 //    may be used to endorse or promote products derived from this software
   1924 //    without specific prior written permission.
   1925 //
   1926 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1927 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1928 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1929 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1930 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1931 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1932 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1933 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1934 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1935 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1936 // SUCH DAMAGE.
   1937 //
   1938 //	@(#)select.h	8.2 (Berkeley) 1/4/94
   1939 
   1940 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   1941 
   1942 // * Copyright (c) 1991, 1993
   1943 //	The Regents of the University of California.  All rights reserved.
   1944 //
   1945 // This code is derived from software contributed to Berkeley by
   1946 // Berkeley Software Design, Inc.
   1947 //
   1948 // Redistribution and use in source and binary forms, with or without
   1949 // modification, are permitted provided that the following conditions
   1950 // are met:
   1951 // 1. Redistributions of source code must retain the above copyright
   1952 //    notice, this list of conditions and the following disclaimer.
   1953 // 2. Redistributions in binary form must reproduce the above copyright
   1954 //    notice, this list of conditions and the following disclaimer in the
   1955 //    documentation and/or other materials provided with the distribution.
   1956 // 3. Neither the name of the University nor the names of its contributors
   1957 //    may be used to endorse or promote products derived from this software
   1958 //    without specific prior written permission.
   1959 //
   1960 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1961 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1962 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1963 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1964 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1965 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1966 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1967 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1968 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1969 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1970 // SUCH DAMAGE.
   1971 //
   1972 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1973 
   1974 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   1975 
   1976 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   1977 // Public domain.
   1978 //
   1979 // NOTE: Do not protect this header against multiple inclusion.  Doing
   1980 // so can have subtle side-effects due to header file inclusion order
   1981 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   1982 // protect each CPP macro that we want to supply.
   1983 
   1984 // Feature-test macros are defined by several standards, and allow an
   1985 // application to specify what symbols they want the system headers to
   1986 // expose, and hence what standard they want them to conform to.
   1987 // There are two classes of feature-test macros.  The first class
   1988 // specify complete standards, and if one of these is defined, header
   1989 // files will try to conform to the relevant standard.  They are:
   1990 //
   1991 // ANSI macros:
   1992 // _ANSI_SOURCE			ANSI C89
   1993 //
   1994 // POSIX macros:
   1995 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   1996 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   1997 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   1998 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   1999 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   2000 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   2001 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   2002 //
   2003 // X/Open macros:
   2004 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   2005 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   2006 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   2007 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   2008 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   2009 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   2010 //
   2011 // NetBSD macros:
   2012 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   2013 //
   2014 // If more than one of these "major" feature-test macros is defined,
   2015 // then the set of facilities provided (and namespace used) is the
   2016 // union of that specified by the relevant standards, and in case of
   2017 // conflict, the earlier standard in the above list has precedence (so
   2018 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   2019 // of rename() that's used is the POSIX one).  If none of the "major"
   2020 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   2021 //
   2022 // There are also "minor" feature-test macros, which enable extra
   2023 // functionality in addition to some base standard.  They should be
   2024 // defined along with one of the "major" macros.  The "minor" macros
   2025 // are:
   2026 //
   2027 // _REENTRANT
   2028 // _ISOC99_SOURCE
   2029 // _ISOC11_SOURCE
   2030 // _LARGEFILE_SOURCE		Large File Support
   2031 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   2032 
   2033 //	$NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
   2034 
   2035 // -
   2036 // Copyright (c) 1992, 1993
   2037 //	The Regents of the University of California.  All rights reserved.
   2038 //
   2039 // Redistribution and use in source and binary forms, with or without
   2040 // modification, are permitted provided that the following conditions
   2041 // are met:
   2042 // 1. Redistributions of source code must retain the above copyright
   2043 //    notice, this list of conditions and the following disclaimer.
   2044 // 2. Redistributions in binary form must reproduce the above copyright
   2045 //    notice, this list of conditions and the following disclaimer in the
   2046 //    documentation and/or other materials provided with the distribution.
   2047 // 3. Neither the name of the University nor the names of its contributors
   2048 //    may be used to endorse or promote products derived from this software
   2049 //    without specific prior written permission.
   2050 //
   2051 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2052 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2053 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2054 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2055 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2056 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2057 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2058 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2059 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2060 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2061 // SUCH DAMAGE.
   2062 //
   2063 //	from: @(#)types.h	8.4 (Berkeley) 1/21/94
   2064 
   2065 //	$NetBSD: sigtypes.h,v 1.11 2017/01/12 18:29:14 christos Exp $
   2066 
   2067 // Copyright (c) 1982, 1986, 1989, 1991, 1993
   2068 //	The Regents of the University of California.  All rights reserved.
   2069 // (c) UNIX System Laboratories, Inc.
   2070 // All or some portions of this file are derived from material licensed
   2071 // to the University of California by American Telephone and Telegraph
   2072 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   2073 // the permission of UNIX System Laboratories, Inc.
   2074 //
   2075 // Redistribution and use in source and binary forms, with or without
   2076 // modification, are permitted provided that the following conditions
   2077 // are met:
   2078 // 1. Redistributions of source code must retain the above copyright
   2079 //    notice, this list of conditions and the following disclaimer.
   2080 // 2. Redistributions in binary form must reproduce the above copyright
   2081 //    notice, this list of conditions and the following disclaimer in the
   2082 //    documentation and/or other materials provided with the distribution.
   2083 // 3. Neither the name of the University nor the names of its contributors
   2084 //    may be used to endorse or promote products derived from this software
   2085 //    without specific prior written permission.
   2086 //
   2087 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2088 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2089 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2090 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2091 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2092 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2093 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2094 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2095 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2096 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2097 // SUCH DAMAGE.
   2098 //
   2099 //	@(#)signal.h	8.4 (Berkeley) 5/4/95
   2100 
   2101 // This header file defines various signal-related types.  We also keep
   2102 // the macros to manipulate sigset_t here, to encapsulate knowledge of
   2103 // its internals.
   2104 
   2105 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   2106 
   2107 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   2108 // Public domain.
   2109 //
   2110 // NOTE: Do not protect this header against multiple inclusion.  Doing
   2111 // so can have subtle side-effects due to header file inclusion order
   2112 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   2113 // protect each CPP macro that we want to supply.
   2114 
   2115 // Feature-test macros are defined by several standards, and allow an
   2116 // application to specify what symbols they want the system headers to
   2117 // expose, and hence what standard they want them to conform to.
   2118 // There are two classes of feature-test macros.  The first class
   2119 // specify complete standards, and if one of these is defined, header
   2120 // files will try to conform to the relevant standard.  They are:
   2121 //
   2122 // ANSI macros:
   2123 // _ANSI_SOURCE			ANSI C89
   2124 //
   2125 // POSIX macros:
   2126 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   2127 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   2128 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   2129 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   2130 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   2131 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   2132 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   2133 //
   2134 // X/Open macros:
   2135 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   2136 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   2137 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   2138 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   2139 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   2140 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   2141 //
   2142 // NetBSD macros:
   2143 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   2144 //
   2145 // If more than one of these "major" feature-test macros is defined,
   2146 // then the set of facilities provided (and namespace used) is the
   2147 // union of that specified by the relevant standards, and in case of
   2148 // conflict, the earlier standard in the above list has precedence (so
   2149 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   2150 // of rename() that's used is the POSIX one).  If none of the "major"
   2151 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   2152 //
   2153 // There are also "minor" feature-test macros, which enable extra
   2154 // functionality in addition to some base standard.  They should be
   2155 // defined along with one of the "major" macros.  The "minor" macros
   2156 // are:
   2157 //
   2158 // _REENTRANT
   2159 // _ISOC99_SOURCE
   2160 // _ISOC11_SOURCE
   2161 // _LARGEFILE_SOURCE		Large File Support
   2162 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   2163 
   2164 //	$NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $
   2165 
   2166 // -
   2167 // Copyright (c) 2014 The NetBSD Foundation, Inc.
   2168 // All rights reserved.
   2169 //
   2170 // This code is derived from software contributed to The NetBSD Foundation
   2171 // by Matt Thomas of 3am Software Foundry.
   2172 //
   2173 // Redistribution and use in source and binary forms, with or without
   2174 // modification, are permitted provided that the following conditions
   2175 // are met:
   2176 // 1. Redistributions of source code must retain the above copyright
   2177 //    notice, this list of conditions and the following disclaimer.
   2178 // 2. Redistributions in binary form must reproduce the above copyright
   2179 //    notice, this list of conditions and the following disclaimer in the
   2180 //    documentation and/or other materials provided with the distribution.
   2181 //
   2182 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   2183 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   2184 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2185 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   2186 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   2187 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   2188 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   2189 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   2190 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   2191 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   2192 // POSSIBILITY OF SUCH DAMAGE.
   2193 
   2194 //	$NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $
   2195 
   2196 //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
   2197 
   2198 // -
   2199 // Copyright (c) 2014 The NetBSD Foundation, Inc.
   2200 // All rights reserved.
   2201 //
   2202 // This code is derived from software contributed to The NetBSD Foundation
   2203 // by Matt Thomas of 3am Software Foundry.
   2204 //
   2205 // Redistribution and use in source and binary forms, with or without
   2206 // modification, are permitted provided that the following conditions
   2207 // are met:
   2208 // 1. Redistributions of source code must retain the above copyright
   2209 //    notice, this list of conditions and the following disclaimer.
   2210 // 2. Redistributions in binary form must reproduce the above copyright
   2211 //    notice, this list of conditions and the following disclaimer in the
   2212 //    documentation and/or other materials provided with the distribution.
   2213 //
   2214 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   2215 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   2216 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2217 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   2218 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   2219 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   2220 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   2221 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   2222 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   2223 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   2224 // POSSIBILITY OF SUCH DAMAGE.
   2225 
   2226 type Sigset_t = struct{ F__bits [4]X__uint32_t } /* sigtypes.h:62:3 */
   2227 
   2228 // Macro for manipulating signal masks.
   2229 
   2230 type Sigaltstack = struct {
   2231 	Fss_sp    uintptr
   2232 	Fss_size  Size_t
   2233 	Fss_flags int32
   2234 } /* sigtypes.h:108:9 */
   2235 
   2236 // Macro for manipulating signal masks.
   2237 
   2238 type Stack_t = Sigaltstack /* sigtypes.h:116:3 */
   2239 
   2240 //	$NetBSD: time.h,v 1.47 2016/10/04 09:41:41 kamil Exp $
   2241 
   2242 // Copyright (c) 1989, 1993
   2243 //	The Regents of the University of California.  All rights reserved.
   2244 // (c) UNIX System Laboratories, Inc.
   2245 // All or some portions of this file are derived from material licensed
   2246 // to the University of California by American Telephone and Telegraph
   2247 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   2248 // the permission of UNIX System Laboratories, Inc.
   2249 //
   2250 // Redistribution and use in source and binary forms, with or without
   2251 // modification, are permitted provided that the following conditions
   2252 // are met:
   2253 // 1. Redistributions of source code must retain the above copyright
   2254 //    notice, this list of conditions and the following disclaimer.
   2255 // 2. Redistributions in binary form must reproduce the above copyright
   2256 //    notice, this list of conditions and the following disclaimer in the
   2257 //    documentation and/or other materials provided with the distribution.
   2258 // 3. Neither the name of the University nor the names of its contributors
   2259 //    may be used to endorse or promote products derived from this software
   2260 //    without specific prior written permission.
   2261 //
   2262 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2263 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2264 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2265 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2266 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2267 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2268 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2269 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2270 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2271 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2272 // SUCH DAMAGE.
   2273 //
   2274 //	@(#)time.h	8.3 (Berkeley) 1/21/94
   2275 
   2276 //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   2277 
   2278 // * Copyright (c) 1991, 1993
   2279 //	The Regents of the University of California.  All rights reserved.
   2280 //
   2281 // This code is derived from software contributed to Berkeley by
   2282 // Berkeley Software Design, Inc.
   2283 //
   2284 // Redistribution and use in source and binary forms, with or without
   2285 // modification, are permitted provided that the following conditions
   2286 // are met:
   2287 // 1. Redistributions of source code must retain the above copyright
   2288 //    notice, this list of conditions and the following disclaimer.
   2289 // 2. Redistributions in binary form must reproduce the above copyright
   2290 //    notice, this list of conditions and the following disclaimer in the
   2291 //    documentation and/or other materials provided with the distribution.
   2292 // 3. Neither the name of the University nor the names of its contributors
   2293 //    may be used to endorse or promote products derived from this software
   2294 //    without specific prior written permission.
   2295 //
   2296 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2297 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2298 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2299 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2300 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2301 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2302 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2303 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2304 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2305 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2306 // SUCH DAMAGE.
   2307 //
   2308 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   2309 
   2310 //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   2311 
   2312 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   2313 // Public domain.
   2314 //
   2315 // NOTE: Do not protect this header against multiple inclusion.  Doing
   2316 // so can have subtle side-effects due to header file inclusion order
   2317 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   2318 // protect each CPP macro that we want to supply.
   2319 
   2320 // Feature-test macros are defined by several standards, and allow an
   2321 // application to specify what symbols they want the system headers to
   2322 // expose, and hence what standard they want them to conform to.
   2323 // There are two classes of feature-test macros.  The first class
   2324 // specify complete standards, and if one of these is defined, header
   2325 // files will try to conform to the relevant standard.  They are:
   2326 //
   2327 // ANSI macros:
   2328 // _ANSI_SOURCE			ANSI C89
   2329 //
   2330 // POSIX macros:
   2331 // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   2332 // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   2333 // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   2334 // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   2335 // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   2336 // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   2337 // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   2338 //
   2339 // X/Open macros:
   2340 // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   2341 // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   2342 // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   2343 // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   2344 // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   2345 // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   2346 //
   2347 // NetBSD macros:
   2348 // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   2349 //
   2350 // If more than one of these "major" feature-test macros is defined,
   2351 // then the set of facilities provided (and namespace used) is the
   2352 // union of that specified by the relevant standards, and in case of
   2353 // conflict, the earlier standard in the above list has precedence (so
   2354 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   2355 // of rename() that's used is the POSIX one).  If none of the "major"
   2356 // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   2357 //
   2358 // There are also "minor" feature-test macros, which enable extra
   2359 // functionality in addition to some base standard.  They should be
   2360 // defined along with one of the "major" macros.  The "minor" macros
   2361 // are:
   2362 //
   2363 // _REENTRANT
   2364 // _ISOC99_SOURCE
   2365 // _ISOC11_SOURCE
   2366 // _LARGEFILE_SOURCE		Large File Support
   2367 //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   2368 
   2369 //	$NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $
   2370 
   2371 //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
   2372 
   2373 // -
   2374 // Copyright (c) 2014 The NetBSD Foundation, Inc.
   2375 // All rights reserved.
   2376 //
   2377 // This code is derived from software contributed to The NetBSD Foundation
   2378 // by Matt Thomas of 3am Software Foundry.
   2379 //
   2380 // Redistribution and use in source and binary forms, with or without
   2381 // modification, are permitted provided that the following conditions
   2382 // are met:
   2383 // 1. Redistributions of source code must retain the above copyright
   2384 //    notice, this list of conditions and the following disclaimer.
   2385 // 2. Redistributions in binary form must reproduce the above copyright
   2386 //    notice, this list of conditions and the following disclaimer in the
   2387 //    documentation and/or other materials provided with the distribution.
   2388 //
   2389 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   2390 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   2391 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2392 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   2393 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   2394 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   2395 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   2396 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   2397 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   2398 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   2399 // POSSIBILITY OF SUCH DAMAGE.
   2400 
   2401 //	$NetBSD: null.h,v 1.9 2010/07/06 11:56:20 kleink Exp $
   2402 
   2403 // Written by Klaus Klein <kleink@NetBSD.org>, December 22, 1999.
   2404 // Public domain.
   2405 
   2406 type Tm = struct {
   2407 	Ftm_sec    int32
   2408 	Ftm_min    int32
   2409 	Ftm_hour   int32
   2410 	Ftm_mday   int32
   2411 	Ftm_mon    int32
   2412 	Ftm_year   int32
   2413 	Ftm_wday   int32
   2414 	Ftm_yday   int32
   2415 	Ftm_isdst  int32
   2416 	Ftm_gmtoff int32
   2417 	Ftm_zone   uintptr
   2418 } /* time.h:75:1 */
   2419 
   2420 //	$NetBSD: idtype.h,v 1.5 2016/04/09 17:02:51 riastradh Exp $
   2421 
   2422 // -
   2423 // Copyright (c) 2016 The NetBSD Foundation, Inc.
   2424 // All rights reserved.
   2425 //
   2426 // This code is derived from software contributed to The NetBSD Foundation
   2427 // by Christos Zoulas.
   2428 //
   2429 // Redistribution and use in source and binary forms, with or without
   2430 // modification, are permitted provided that the following conditions
   2431 // are met:
   2432 // 1. Redistributions of source code must retain the above copyright
   2433 //    notice, this list of conditions and the following disclaimer.
   2434 // 2. Redistributions in binary form must reproduce the above copyright
   2435 //    notice, this list of conditions and the following disclaimer in the
   2436 //    documentation and/or other materials provided with the distribution.
   2437 //
   2438 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   2439 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   2440 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2441 // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   2442 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   2443 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   2444 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   2445 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   2446 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   2447 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   2448 // POSSIBILITY OF SUCH DAMAGE.
   2449 
   2450 // Using the solaris constants, some of them are not applicable to us
   2451 // Do not re-order the list, or add elements in the middle as this will
   2452 // break the ABI of the system calls using this.  We set a high private
   2453 // maximum so that new values can be added in the future without
   2454 // changing the width of the type.
   2455 type Idtype_t = int32 /* idtype.h:60:3 */
   2456 
   2457 type Locale_t = uintptr /* time.h:188:25 */
   2458 
   2459 type Timezone_t = uintptr /* time.h:198:24 */
   2460 
   2461 type Stat = struct {
   2462 	Fst_dev      Dev_t
   2463 	Fst_mode     X__mode_t
   2464 	F__ccgo_pad1 [4]byte
   2465 	Fst_ino      Ino_t
   2466 	Fst_nlink    Nlink_t
   2467 	Fst_uid      X__uid_t
   2468 	Fst_gid      X__gid_t
   2469 	F__ccgo_pad2 [4]byte
   2470 	Fst_rdev     Dev_t
   2471 	Fst_atim     struct {
   2472 		Ftv_sec      Time_t
   2473 		Ftv_nsec     int32
   2474 		F__ccgo_pad1 [4]byte
   2475 	}
   2476 	Fst_mtim struct {
   2477 		Ftv_sec      Time_t
   2478 		Ftv_nsec     int32
   2479 		F__ccgo_pad1 [4]byte
   2480 	}
   2481 	Fst_ctim struct {
   2482 		Ftv_sec      Time_t
   2483 		Ftv_nsec     int32
   2484 		F__ccgo_pad1 [4]byte
   2485 	}
   2486 	Fst_birthtim struct {
   2487 		Ftv_sec      Time_t
   2488 		Ftv_nsec     int32
   2489 		F__ccgo_pad1 [4]byte
   2490 	}
   2491 	Fst_size     X__off_t
   2492 	Fst_blocks   Blkcnt_t
   2493 	Fst_blksize  Blksize_t
   2494 	Fst_flags    Uint32_t
   2495 	Fst_gen      Uint32_t
   2496 	Fst_spare    [2]Uint32_t
   2497 	F__ccgo_pad3 [4]byte
   2498 } /* stat.h:59:1 */
   2499 
   2500 //	$NetBSD: fts.h,v 1.19 2009/08/16 19:33:38 christos Exp $
   2501 
   2502 // Copyright (c) 1989, 1993
   2503 //	The Regents of the University of California.  All rights reserved.
   2504 //
   2505 // Redistribution and use in source and binary forms, with or without
   2506 // modification, are permitted provided that the following conditions
   2507 // are met:
   2508 // 1. Redistributions of source code must retain the above copyright
   2509 //    notice, this list of conditions and the following disclaimer.
   2510 // 2. Redistributions in binary form must reproduce the above copyright
   2511 //    notice, this list of conditions and the following disclaimer in the
   2512 //    documentation and/or other materials provided with the distribution.
   2513 // 3. Neither the name of the University nor the names of its contributors
   2514 //    may be used to endorse or promote products derived from this software
   2515 //    without specific prior written permission.
   2516 //
   2517 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2518 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2519 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2520 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2521 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2522 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2523 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2524 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2525 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2526 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2527 // SUCH DAMAGE.
   2528 //
   2529 //	@(#)fts.h	8.3 (Berkeley) 8/14/94
   2530 
   2531 type X_ftsent = struct {
   2532 	Ffts_cycle   uintptr
   2533 	Ffts_parent  uintptr
   2534 	Ffts_link    uintptr
   2535 	F__ccgo_pad1 [4]byte
   2536 	Ffts_number  Int64_t
   2537 	Ffts_pointer uintptr
   2538 	Ffts_accpath uintptr
   2539 	Ffts_path    uintptr
   2540 	Ffts_errno   int32
   2541 	Ffts_symfd   int32
   2542 	Ffts_pathlen uint32
   2543 	Ffts_namelen uint32
   2544 	F__ccgo_pad2 [4]byte
   2545 	Ffts_ino     Ino_t
   2546 	Ffts_dev     Dev_t
   2547 	Ffts_nlink   Nlink_t
   2548 	Ffts_level   int32
   2549 	Ffts_info    uint16
   2550 	Ffts_flags   uint16
   2551 	Ffts_instr   uint16
   2552 	F__ccgo_pad3 [2]byte
   2553 	Ffts_statp   uintptr
   2554 	Ffts_name    [1]uint8
   2555 	F__ccgo_pad4 [3]byte
   2556 } /* fts.h:60:2 */
   2557 
   2558 //	$NetBSD: fts.h,v 1.19 2009/08/16 19:33:38 christos Exp $
   2559 
   2560 // Copyright (c) 1989, 1993
   2561 //	The Regents of the University of California.  All rights reserved.
   2562 //
   2563 // Redistribution and use in source and binary forms, with or without
   2564 // modification, are permitted provided that the following conditions
   2565 // are met:
   2566 // 1. Redistributions of source code must retain the above copyright
   2567 //    notice, this list of conditions and the following disclaimer.
   2568 // 2. Redistributions in binary form must reproduce the above copyright
   2569 //    notice, this list of conditions and the following disclaimer in the
   2570 //    documentation and/or other materials provided with the distribution.
   2571 // 3. Neither the name of the University nor the names of its contributors
   2572 //    may be used to endorse or promote products derived from this software
   2573 //    without specific prior written permission.
   2574 //
   2575 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2576 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2577 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2578 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2579 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2580 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2581 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2582 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2583 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2584 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2585 // SUCH DAMAGE.
   2586 //
   2587 //	@(#)fts.h	8.3 (Berkeley) 8/14/94
   2588 
   2589 type FTS = struct {
   2590 	Ffts_cur     uintptr
   2591 	Ffts_child   uintptr
   2592 	Ffts_array   uintptr
   2593 	F__ccgo_pad1 [4]byte
   2594 	Ffts_dev     Dev_t
   2595 	Ffts_path    uintptr
   2596 	Ffts_rfd     int32
   2597 	Ffts_pathlen uint32
   2598 	Ffts_nitems  uint32
   2599 	Ffts_compar  uintptr
   2600 	Ffts_options int32
   2601 } /* fts.h:84:3 */
   2602 
   2603 type FTSENT = X_ftsent /* fts.h:136:3 */
   2604 
   2605 var _ uint8 /* gen.c:5:13: */