modernc.org/libc@v1.24.1/fts/fts_netbsd_arm.go (about)

     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: */