gtsocial-umbx

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

fts_freebsd_arm.go (110754B)


      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_freebsd_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:298:1:
     19 	ALLPERMS                 = 4095               // stat.h:300:1:
     20 	BIG_ENDIAN               = 4321               // _endian.h:70:1:
     21 	BYTE_ORDER               = 1234               // _endian.h:72:1:
     22 	CLK_TCK                  = 128                // time.h:56:1:
     23 	CLOCKS_PER_SEC           = 128                // time.h:60:1:
     24 	CLOCK_BOOTTIME           = 5                  // _clock_id.h:92:1:
     25 	CLOCK_MONOTONIC          = 4                  // _clock_id.h:67:1:
     26 	CLOCK_MONOTONIC_COARSE   = 12                 // _clock_id.h:94:1:
     27 	CLOCK_MONOTONIC_FAST     = 12                 // _clock_id.h:79:1:
     28 	CLOCK_MONOTONIC_PRECISE  = 11                 // _clock_id.h:78:1:
     29 	CLOCK_PROCESS_CPUTIME_ID = 15                 // _clock_id.h:85:1:
     30 	CLOCK_PROF               = 2                  // _clock_id.h:64:1:
     31 	CLOCK_REALTIME           = 0                  // _clock_id.h:60:1:
     32 	CLOCK_REALTIME_COARSE    = 10                 // _clock_id.h:93:1:
     33 	CLOCK_REALTIME_FAST      = 10                 // _clock_id.h:77:1:
     34 	CLOCK_REALTIME_PRECISE   = 9                  // _clock_id.h:76:1:
     35 	CLOCK_SECOND             = 13                 // _clock_id.h:80:1:
     36 	CLOCK_THREAD_CPUTIME_ID  = 14                 // _clock_id.h:84:1:
     37 	CLOCK_UPTIME             = 5                  // _clock_id.h:74:1:
     38 	CLOCK_UPTIME_FAST        = 8                  // _clock_id.h:68:1:
     39 	CLOCK_UPTIME_PRECISE     = 7                  // _clock_id.h:75:1:
     40 	CLOCK_VIRTUAL            = 1                  // _clock_id.h:63:1:
     41 	CPUCLOCK_WHICH_PID       = 0                  // time.h:476:1:
     42 	CPUCLOCK_WHICH_TID       = 1                  // time.h:477:1:
     43 	DEFFILEMODE              = 438                // stat.h:302:1:
     44 	DST_AUST                 = 2                  // time.h:49:1:
     45 	DST_CAN                  = 6                  // time.h:53:1:
     46 	DST_EET                  = 5                  // time.h:52:1:
     47 	DST_MET                  = 4                  // time.h:51:1:
     48 	DST_NONE                 = 0                  // time.h:47:1:
     49 	DST_USA                  = 1                  // time.h:48:1:
     50 	DST_WET                  = 3                  // time.h:50:1:
     51 	FD_SETSIZE               = 1024               // select.h:61:1:
     52 	FTS_AGAIN                = 1                  // fts.h:111:1:
     53 	FTS_COMFOLLOW            = 0x001              // fts.h:52:1:
     54 	FTS_D                    = 1                  // fts.h:90:1:
     55 	FTS_DC                   = 2                  // fts.h:91:1:
     56 	FTS_DEFAULT              = 3                  // fts.h:92:1:
     57 	FTS_DNR                  = 4                  // fts.h:93:1:
     58 	FTS_DONTCHDIR            = 0x01               // fts.h:106:1:
     59 	FTS_DOT                  = 5                  // fts.h:94:1:
     60 	FTS_DP                   = 6                  // fts.h:95:1:
     61 	FTS_ERR                  = 7                  // fts.h:96:1:
     62 	FTS_F                    = 8                  // fts.h:97:1:
     63 	FTS_FOLLOW               = 2                  // fts.h:112:1:
     64 	FTS_INIT                 = 9                  // fts.h:98:1:
     65 	FTS_ISW                  = 0x04               // fts.h:108:1:
     66 	FTS_LOGICAL              = 0x002              // fts.h:53:1:
     67 	FTS_NAMEONLY             = 0x100              // fts.h:62:1:
     68 	FTS_NOCHDIR              = 0x004              // fts.h:54:1:
     69 	FTS_NOINSTR              = 3                  // fts.h:113:1:
     70 	FTS_NOSTAT               = 0x008              // fts.h:55:1:
     71 	FTS_NS                   = 10                 // fts.h:99:1:
     72 	FTS_NSOK                 = 11                 // fts.h:100:1:
     73 	FTS_OPTIONMASK           = 0x0ff              // fts.h:60:1:
     74 	FTS_PHYSICAL             = 0x010              // fts.h:56:1:
     75 	FTS_ROOTLEVEL            = 0                  // fts.h:87:1:
     76 	FTS_ROOTPARENTLEVEL      = -1                 // fts.h:86:1:
     77 	FTS_SEEDOT               = 0x020              // fts.h:57:1:
     78 	FTS_SKIP                 = 4                  // fts.h:114:1:
     79 	FTS_SL                   = 12                 // fts.h:101:1:
     80 	FTS_SLNONE               = 13                 // fts.h:102:1:
     81 	FTS_STOP                 = 0x200              // fts.h:63:1:
     82 	FTS_SYMFOLLOW            = 0x02               // fts.h:107:1:
     83 	FTS_W                    = 14                 // fts.h:103:1:
     84 	FTS_WHITEOUT             = 0x080              // fts.h:59:1:
     85 	FTS_XDEV                 = 0x040              // fts.h:58:1:
     86 	ITIMER_PROF              = 2                  // time.h:457:1:
     87 	ITIMER_REAL              = 0                  // time.h:455:1:
     88 	ITIMER_VIRTUAL           = 1                  // time.h:456:1:
     89 	LITTLE_ENDIAN            = 1234               // _endian.h:69:1:
     90 	PDP_ENDIAN               = 3412               // _endian.h:71:1:
     91 	SBT_MAX                  = 0x7fffffffffffffff // time.h:135:1:
     92 	SF_APPEND                = 0x00040000         // stat.h:341:1:
     93 	SF_ARCHIVED              = 0x00010000         // stat.h:339:1:
     94 	SF_IMMUTABLE             = 0x00020000         // stat.h:340:1:
     95 	SF_NOUNLINK              = 0x00100000         // stat.h:342:1:
     96 	SF_SETTABLE              = 0xffff0000         // stat.h:338:1:
     97 	SF_SNAPSHOT              = 0x00200000         // stat.h:343:1:
     98 	S_BLKSIZE                = 512                // stat.h:304:1:
     99 	S_IEXEC                  = 64                 // stat.h:256:1:
    100 	S_IFBLK                  = 0060000            // stat.h:274:1:
    101 	S_IFCHR                  = 0020000            // stat.h:272:1:
    102 	S_IFDIR                  = 0040000            // stat.h:273:1:
    103 	S_IFIFO                  = 0010000            // stat.h:271:1:
    104 	S_IFLNK                  = 0120000            // stat.h:276:1:
    105 	S_IFMT                   = 0170000            // stat.h:270:1:
    106 	S_IFREG                  = 0100000            // stat.h:275:1:
    107 	S_IFSOCK                 = 0140000            // stat.h:277:1:
    108 	S_IFWHT                  = 0160000            // stat.h:281:1:
    109 	S_IREAD                  = 256                // stat.h:254:1:
    110 	S_IRGRP                  = 0000040            // stat.h:260:1:
    111 	S_IROTH                  = 0000004            // stat.h:265:1:
    112 	S_IRUSR                  = 0000400            // stat.h:249:1:
    113 	S_IRWXG                  = 0000070            // stat.h:259:1:
    114 	S_IRWXO                  = 0000007            // stat.h:264:1:
    115 	S_IRWXU                  = 0000700            // stat.h:248:1:
    116 	S_ISGID                  = 0002000            // stat.h:243:1:
    117 	S_ISTXT                  = 0001000            // stat.h:245:1:
    118 	S_ISUID                  = 0004000            // stat.h:242:1:
    119 	S_ISVTX                  = 0001000            // stat.h:278:1:
    120 	S_IWGRP                  = 0000020            // stat.h:261:1:
    121 	S_IWOTH                  = 0000002            // stat.h:266:1:
    122 	S_IWRITE                 = 128                // stat.h:255:1:
    123 	S_IWUSR                  = 0000200            // stat.h:250:1:
    124 	S_IXGRP                  = 0000010            // stat.h:262:1:
    125 	S_IXOTH                  = 0000001            // stat.h:267:1:
    126 	S_IXUSR                  = 0000100            // stat.h:251:1:
    127 	TIMER_ABSTIME            = 0x1                // _clock_id.h:101:1:
    128 	TIMER_RELTIME            = 0x0                // _clock_id.h:98:1:
    129 	TIME_UTC                 = 1                  // time.h:188:1:
    130 	UF_APPEND                = 0x00000004         // stat.h:314:1:
    131 	UF_ARCHIVE               = 0x00000800         // stat.h:330:1:
    132 	UF_HIDDEN                = 0x00008000         // stat.h:333:1:
    133 	UF_IMMUTABLE             = 0x00000002         // stat.h:313:1:
    134 	UF_NODUMP                = 0x00000001         // stat.h:312:1:
    135 	UF_NOUNLINK              = 0x00000010         // stat.h:316:1:
    136 	UF_OFFLINE               = 0x00000200         // stat.h:328:1:
    137 	UF_OPAQUE                = 0x00000008         // stat.h:315:1:
    138 	UF_READONLY              = 0x00001000         // stat.h:331:1:
    139 	UF_REPARSE               = 0x00000400         // stat.h:329:1:
    140 	UF_SETTABLE              = 0x0000ffff         // stat.h:311:1:
    141 	UF_SPARSE                = 0x00000100         // stat.h:327:1:
    142 	UF_SYSTEM                = 0x00000080         // stat.h:326:1:
    143 	UTIME_NOW                = -1                 // stat.h:358:1:
    144 	UTIME_OMIT               = -2                 // stat.h:359:1:
    145 	X_ACCMODE_T_DECLARED     = 0                  // types.h:166:1:
    146 	X_BIG_ENDIAN             = 4321               // _endian.h:47:1:
    147 	X_BLKCNT_T_DECLARED      = 0                  // types.h:90:1:
    148 	X_BLKSIZE_T_DECLARED     = 0                  // types.h:81:1:
    149 	X_BYTE_ORDER             = 1234               // _endian.h:40:1:
    150 	X_CAP_IOCTL_T_DECLARED   = 0                  // types.h:243:1:
    151 	X_CAP_RIGHTS_T_DECLARED  = 0                  // types.h:248:1:
    152 	X_CLOCKID_T_DECLARED     = 0                  // types.h:100:1:
    153 	X_CLOCK_T_DECLARED       = 0                  // types.h:95:1:
    154 	X_DEV_T_DECLARED         = 0                  // types.h:108:1:
    155 	X_FFLAGS_T_DECLARED      = 0                  // types.h:113:1:
    156 	X_FILE_OFFSET_BITS       = 64                 // <builtin>:25:1:
    157 	X_FSBLKCNT_T_DECLARED    = 0                  // types.h:121:1:
    158 	X_FTRUNCATE_DECLARED     = 0                  // types.h:417:1:
    159 	X_FTS_H_                 = 0                  // fts.h:36:1:
    160 	X_GID_T_DECLARED         = 0                  // types.h:126:1:
    161 	X_ID_T_DECLARED          = 0                  // types.h:141:1:
    162 	X_ILP32                  = 1                  // <predefined>:1:1:
    163 	X_INO_T_DECLARED         = 0                  // types.h:146:1:
    164 	X_INT16_T_DECLARED       = 0                  // _stdint.h:42:1:
    165 	X_INT32_T_DECLARED       = 0                  // _stdint.h:47:1:
    166 	X_INT64_T_DECLARED       = 0                  // _stdint.h:52:1:
    167 	X_INT8_T_DECLARED        = 0                  // _stdint.h:37:1:
    168 	X_INTMAX_T_DECLARED      = 0                  // _stdint.h:85:1:
    169 	X_INTPTR_T_DECLARED      = 0                  // _stdint.h:77:1:
    170 	X_IN_ADDR_T_DECLARED     = 0                  // types.h:131:1:
    171 	X_IN_PORT_T_DECLARED     = 0                  // types.h:136:1:
    172 	X_KEY_T_DECLARED         = 0                  // types.h:151:1:
    173 	X_LITTLE_ENDIAN          = 1234               // _endian.h:46:1:
    174 	X_LOCALE_T_DEFINED       = 0                  // _time.h:34:1:
    175 	X_LSEEK_DECLARED         = 0                  // types.h:421:1:
    176 	X_LWPID_T_DECLARED       = 0                  // types.h:156:1:
    177 	X_MACHINE_ENDIAN_H_      = 0                  // endian.h:36:1:
    178 	X_MACHINE__TYPES_H_      = 0                  // _types.h:42:1:
    179 	X_MKNOD_DECLARED         = 0                  // stat.h:393:1:
    180 	X_MMAP_DECLARED          = 0                  // types.h:425:1:
    181 	X_MODE_T_DECLARED        = 0                  // types.h:161:1:
    182 	X_MQD_T_DECLARED         = 0                  // types.h:227:1:
    183 	X_NLINK_T_DECLARED       = 0                  // types.h:171:1:
    184 	X_Nonnull                = 0                  // cdefs.h:790:1:
    185 	X_Null_unspecified       = 0                  // cdefs.h:792:1:
    186 	X_Nullable               = 0                  // cdefs.h:791:1:
    187 	X_OFF64_T_DECLARED       = 0                  // types.h:181:1:
    188 	X_OFF_T_DECLARED         = 0                  // types.h:176:1:
    189 	X_PDP_ENDIAN             = 3412               // _endian.h:48:1:
    190 	X_PID_T_DECLARED         = 0                  // types.h:186:1:
    191 	X_PTHREAD_T_DECLARED     = 0                  // _pthreadtypes.h:68:1:
    192 	X_QUAD_HIGHWORD          = 1                  // _endian.h:55:1:
    193 	X_QUAD_LOWWORD           = 0                  // _endian.h:56:1:
    194 	X_RLIM_T_DECLARED        = 0                  // types.h:193:1:
    195 	X_SELECT_DECLARED        = 0                  // select.h:103:1:
    196 	X_SIGSET_T_DECLARED      = 0                  // select.h:50:1:
    197 	X_SIG_MAXSIG             = 128                // _sigset.h:47:1:
    198 	X_SIG_WORDS              = 4                  // _sigset.h:46:1:
    199 	X_SIZE_T_DECLARED        = 0                  // types.h:202:1:
    200 	X_SSIZE_T_DECLARED       = 0                  // types.h:207:1:
    201 	X_SUSECONDS_T_DECLARED   = 0                  // types.h:212:1:
    202 	X_SYS_CDEFS_H_           = 0                  // cdefs.h:39:1:
    203 	X_SYS_SELECT_H_          = 0                  // select.h:35:1:
    204 	X_SYS_STAT_H_            = 0                  // stat.h:41:1:
    205 	X_SYS_SYS__CLOCK_ID_H    = 0                  // _clock_id.h:40:1:
    206 	X_SYS_TIMESPEC_H_        = 0                  // timespec.h:37:1:
    207 	X_SYS_TIME_H_            = 0                  // time.h:36:1:
    208 	X_SYS_TYPES_H_           = 0                  // types.h:41:1:
    209 	X_SYS__ENDIAN_H_         = 0                  // _endian.h:33:1:
    210 	X_SYS__PTHREADTYPES_H_   = 0                  // _pthreadtypes.h:39:1:
    211 	X_SYS__SIGSET_H_         = 0                  // _sigset.h:41:1:
    212 	X_SYS__STDINT_H_         = 0                  // _stdint.h:33:1:
    213 	X_SYS__TIMESPEC_H_       = 0                  // _timespec.h:37:1:
    214 	X_SYS__TIMEVAL_H_        = 0                  // _timeval.h:32:1:
    215 	X_SYS__TYPES_H_          = 0                  // _types.h:32:1:
    216 	X_TIMER_T_DECLARED       = 0                  // types.h:222:1:
    217 	X_TIME_H_                = 0                  // time.h:44:1:
    218 	X_TIME_T_DECLARED        = 0                  // types.h:217:1:
    219 	X_TRUNCATE_DECLARED      = 0                  // types.h:429:1:
    220 	X_UID_T_DECLARED         = 0                  // types.h:234:1:
    221 	X_UINT16_T_DECLARED      = 0                  // _stdint.h:62:1:
    222 	X_UINT32_T_DECLARED      = 0                  // _stdint.h:67:1:
    223 	X_UINT64_T_DECLARED      = 0                  // _stdint.h:72:1:
    224 	X_UINT8_T_DECLARED       = 0                  // _stdint.h:57:1:
    225 	X_UINTMAX_T_DECLARED     = 0                  // _stdint.h:89:1:
    226 	X_UINTPTR_T_DECLARED     = 0                  // _stdint.h:81:1:
    227 	X_USECONDS_T_DECLARED    = 0                  // types.h:239:1:
    228 	X_XLOCALE_LOCALE1_H      = 0                  // _time.h:44:1:
    229 	Unix                     = 1                  // <predefined>:367:1:
    230 )
    231 
    232 type Ptrdiff_t = int32 /* <builtin>:3:26 */
    233 
    234 type Size_t = uint32 /* <builtin>:9:23 */
    235 
    236 type Wchar_t = uint32 /* <builtin>:15:24 */
    237 
    238 type X__builtin_va_list = uintptr /* <builtin>:46:14 */
    239 type X__float128 = float64        /* <builtin>:47:21 */
    240 
    241 // -
    242 // SPDX-License-Identifier: BSD-3-Clause
    243 //
    244 // Copyright (c) 1982, 1986, 1991, 1993, 1994
    245 //	The Regents of the University of California.  All rights reserved.
    246 // (c) UNIX System Laboratories, Inc.
    247 // All or some portions of this file are derived from material licensed
    248 // to the University of California by American Telephone and Telegraph
    249 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
    250 // the permission of UNIX System Laboratories, Inc.
    251 //
    252 // Redistribution and use in source and binary forms, with or without
    253 // modification, are permitted provided that the following conditions
    254 // are met:
    255 // 1. Redistributions of source code must retain the above copyright
    256 //    notice, this list of conditions and the following disclaimer.
    257 // 2. Redistributions in binary form must reproduce the above copyright
    258 //    notice, this list of conditions and the following disclaimer in the
    259 //    documentation and/or other materials provided with the distribution.
    260 // 3. Neither the name of the University nor the names of its contributors
    261 //    may be used to endorse or promote products derived from this software
    262 //    without specific prior written permission.
    263 //
    264 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    265 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    266 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    267 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    268 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    269 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    270 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    271 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    272 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    273 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    274 // SUCH DAMAGE.
    275 //
    276 //	@(#)types.h	8.6 (Berkeley) 2/19/95
    277 // $FreeBSD$
    278 
    279 // -
    280 // SPDX-License-Identifier: BSD-3-Clause
    281 //
    282 // Copyright (c) 1991, 1993
    283 //	The Regents of the University of California.  All rights reserved.
    284 //
    285 // This code is derived from software contributed to Berkeley by
    286 // Berkeley Software Design, Inc.
    287 //
    288 // Redistribution and use in source and binary forms, with or without
    289 // modification, are permitted provided that the following conditions
    290 // are met:
    291 // 1. Redistributions of source code must retain the above copyright
    292 //    notice, this list of conditions and the following disclaimer.
    293 // 2. Redistributions in binary form must reproduce the above copyright
    294 //    notice, this list of conditions and the following disclaimer in the
    295 //    documentation and/or other materials provided with the distribution.
    296 // 3. Neither the name of the University nor the names of its contributors
    297 //    may be used to endorse or promote products derived from this software
    298 //    without specific prior written permission.
    299 //
    300 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    301 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    302 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    303 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    304 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    305 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    306 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    307 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    308 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    309 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    310 // SUCH DAMAGE.
    311 //
    312 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    313 // $FreeBSD$
    314 
    315 // Testing against Clang-specific extensions.
    316 
    317 // This code has been put in place to help reduce the addition of
    318 // compiler specific defines in FreeBSD code.  It helps to aid in
    319 // having a compiler-agnostic source tree.
    320 
    321 // Compiler memory barriers, specific to gcc and clang.
    322 
    323 // XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
    324 
    325 // Macro to test if we're using a specific version of gcc or later.
    326 
    327 // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
    328 // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
    329 // The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
    330 // mode -- there must be no spaces between its arguments, and for nested
    331 // __CONCAT's, all the __CONCAT's must be at the left.  __CONCAT can also
    332 // concatenate double-quoted strings produced by the __STRING macro, but
    333 // this only works with ANSI C.
    334 //
    335 // __XSTRING is like __STRING, but it expands any macros in its argument
    336 // first.  It is only available with ANSI C.
    337 
    338 // Compiler-dependent macros to help declare dead (non-returning) and
    339 // pure (no side effects) functions, and unused variables.  They are
    340 // null except for versions of gcc that are known to support the features
    341 // properly (old versions of gcc-2 supported the dead and pure features
    342 // in a different (wrong) way).  If we do not provide an implementation
    343 // for a given compiler, let the compile fail if it is told to use
    344 // a feature that we cannot live without.
    345 
    346 // Keywords added in C11.
    347 
    348 // Emulation of C11 _Generic().  Unlike the previously defined C11
    349 // keywords, it is not possible to implement this using exactly the same
    350 // syntax.  Therefore implement something similar under the name
    351 // __generic().  Unlike _Generic(), this macro can only distinguish
    352 // between a single type, so it requires nested invocations to
    353 // distinguish multiple cases.
    354 
    355 // C99 Static array indices in function parameter declarations.  Syntax such as:
    356 // void bar(int myArray[static 10]);
    357 // is allowed in C99 but not in C++.  Define __min_size appropriately so
    358 // headers using it can be compiled in either language.  Use like this:
    359 // void bar(int myArray[__min_size(10)]);
    360 
    361 // XXX: should use `#if __STDC_VERSION__ < 199901'.
    362 
    363 // C++11 exposes a load of C99 stuff
    364 
    365 // GCC 2.95 provides `__restrict' as an extension to C90 to support the
    366 // C99-specific `restrict' type qualifier.  We happen to use `__restrict' as
    367 // a way to define the `restrict' type qualifier without disturbing older
    368 // software that is unaware of C99 keywords.
    369 
    370 // GNU C version 2.96 adds explicit branch prediction so that
    371 // the CPU back-end can hint the processor and also so that
    372 // code blocks can be reordered such that the predicted path
    373 // sees a more linear flow, thus improving cache behavior, etc.
    374 //
    375 // The following two macros provide us with a way to utilize this
    376 // compiler feature.  Use __predict_true() if you expect the expression
    377 // to evaluate to true, and __predict_false() if you expect the
    378 // expression to evaluate to false.
    379 //
    380 // A few notes about usage:
    381 //
    382 //	* Generally, __predict_false() error condition checks (unless
    383 //	  you have some _strong_ reason to do otherwise, in which case
    384 //	  document it), and/or __predict_true() `no-error' condition
    385 //	  checks, assuming you want to optimize for the no-error case.
    386 //
    387 //	* Other than that, if you don't know the likelihood of a test
    388 //	  succeeding from empirical or other `hard' evidence, don't
    389 //	  make predictions.
    390 //
    391 //	* These are meant to be used in places that are run `a lot'.
    392 //	  It is wasteful to make predictions in code that is run
    393 //	  seldomly (e.g. at subsystem initialization time) as the
    394 //	  basic block reordering that this affects can often generate
    395 //	  larger code.
    396 
    397 // We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
    398 // require it.
    399 
    400 // Given the pointer x to the member m of the struct s, return
    401 // a pointer to the containing structure.  When using GCC, we first
    402 // assign pointer x to a local variable, to check that its type is
    403 // compatible with member m.
    404 
    405 // Compiler-dependent macros to declare that functions take printf-like
    406 // or scanf-like arguments.  They are null except for versions of gcc
    407 // that are known to support the features properly (old versions of gcc-2
    408 // didn't permit keeping the keywords out of the application namespace).
    409 
    410 // Compiler-dependent macros that rely on FreeBSD-specific extensions.
    411 
    412 // Embed the rcs id of a source file in the resulting library.  Note that in
    413 // more recent ELF binutils, we use .ident allowing the ID to be stripped.
    414 // Usage:
    415 //	__FBSDID("$FreeBSD$");
    416 
    417 // -
    418 // The following definitions are an extension of the behavior originally
    419 // implemented in <sys/_posix.h>, but with a different level of granularity.
    420 // POSIX.1 requires that the macros we test be defined before any standard
    421 // header file is included.
    422 //
    423 // Here's a quick run-down of the versions:
    424 //  defined(_POSIX_SOURCE)		1003.1-1988
    425 //  _POSIX_C_SOURCE == 1		1003.1-1990
    426 //  _POSIX_C_SOURCE == 2		1003.2-1992 C Language Binding Option
    427 //  _POSIX_C_SOURCE == 199309		1003.1b-1993
    428 //  _POSIX_C_SOURCE == 199506		1003.1c-1995, 1003.1i-1995,
    429 //					and the omnibus ISO/IEC 9945-1: 1996
    430 //  _POSIX_C_SOURCE == 200112		1003.1-2001
    431 //  _POSIX_C_SOURCE == 200809		1003.1-2008
    432 //
    433 // In addition, the X/Open Portability Guide, which is now the Single UNIX
    434 // Specification, defines a feature-test macro which indicates the version of
    435 // that specification, and which subsumes _POSIX_C_SOURCE.
    436 //
    437 // Our macros begin with two underscores to avoid namespace screwage.
    438 
    439 // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
    440 
    441 // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
    442 
    443 // Deal with various X/Open Portability Guides and Single UNIX Spec.
    444 
    445 // Deal with all versions of POSIX.  The ordering relative to the tests above is
    446 // important.
    447 // -
    448 // Deal with _ANSI_SOURCE:
    449 // If it is defined, and no other compilation environment is explicitly
    450 // requested, then define our internal feature-test macros to zero.  This
    451 // makes no difference to the preprocessor (undefined symbols in preprocessing
    452 // expressions are defined to have value zero), but makes it more convenient for
    453 // a test program to print out the values.
    454 //
    455 // If a program mistakenly defines _ANSI_SOURCE and some other macro such as
    456 // _POSIX_C_SOURCE, we will assume that it wants the broader compilation
    457 // environment (and in fact we will never get here).
    458 
    459 // User override __EXT1_VISIBLE
    460 
    461 // Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
    462 // translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
    463 
    464 // Nullability qualifiers: currently only supported by Clang.
    465 
    466 // Type Safety Checking
    467 //
    468 // Clang provides additional attributes to enable checking type safety
    469 // properties that cannot be enforced by the C type system.
    470 
    471 // Lock annotations.
    472 //
    473 // Clang provides support for doing basic thread-safety tests at
    474 // compile-time, by marking which locks will/should be held when
    475 // entering/leaving a functions.
    476 //
    477 // Furthermore, it is also possible to annotate variables and structure
    478 // members to enforce that they are only accessed when certain locks are
    479 // held.
    480 
    481 // Structure implements a lock.
    482 
    483 // Function acquires an exclusive or shared lock.
    484 
    485 // Function attempts to acquire an exclusive or shared lock.
    486 
    487 // Function releases a lock.
    488 
    489 // Function asserts that an exclusive or shared lock is held.
    490 
    491 // Function requires that an exclusive or shared lock is or is not held.
    492 
    493 // Function should not be analyzed.
    494 
    495 // Function or variable should not be sanitized, e.g., by AddressSanitizer.
    496 // GCC has the nosanitize attribute, but as a function attribute only, and
    497 // warns on use as a variable attribute.
    498 
    499 // Guard variables and structure members by lock.
    500 
    501 // Alignment builtins for better type checking and improved code generation.
    502 // Provide fallback versions for other compilers (GCC/Clang < 10):
    503 
    504 // Machine type dependent parameters.
    505 // -
    506 // SPDX-License-Identifier: BSD-3-Clause
    507 //
    508 // Copyright (c) 2001 David E. O'Brien
    509 //
    510 // Redistribution and use in source and binary forms, with or without
    511 // modification, are permitted provided that the following conditions
    512 // are met:
    513 // 1. Redistributions of source code must retain the above copyright
    514 //    notice, this list of conditions and the following disclaimer.
    515 // 2. Redistributions in binary form must reproduce the above copyright
    516 //    notice, this list of conditions and the following disclaimer in the
    517 //    documentation and/or other materials provided with the distribution.
    518 // 3. Neither the name of the University nor the names of its contributors
    519 //    may be used to endorse or promote products derived from this software
    520 //    without specific prior written permission.
    521 //
    522 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    523 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    524 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    525 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    526 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    527 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    528 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    529 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    530 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    531 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    532 // SUCH DAMAGE.
    533 //
    534 //	@(#)endian.h	8.1 (Berkeley) 6/10/93
    535 // $NetBSD: endian.h,v 1.7 1999/08/21 05:53:51 simonb Exp $
    536 // $FreeBSD$
    537 
    538 // -
    539 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    540 //
    541 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
    542 // All rights reserved.
    543 //
    544 // Redistribution and use in source and binary forms, with or without
    545 // modification, are permitted provided that the following conditions
    546 // are met:
    547 // 1. Redistributions of source code must retain the above copyright
    548 //    notice, this list of conditions and the following disclaimer.
    549 // 2. Redistributions in binary form must reproduce the above copyright
    550 //    notice, this list of conditions and the following disclaimer in the
    551 //    documentation and/or other materials provided with the distribution.
    552 //
    553 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    554 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    555 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    556 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    557 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    558 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    559 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    560 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    561 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    562 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    563 // SUCH DAMAGE.
    564 //
    565 // $FreeBSD$
    566 
    567 // -
    568 // SPDX-License-Identifier: BSD-3-Clause
    569 //
    570 // Copyright (c) 1991, 1993
    571 //	The Regents of the University of California.  All rights reserved.
    572 //
    573 // This code is derived from software contributed to Berkeley by
    574 // Berkeley Software Design, Inc.
    575 //
    576 // Redistribution and use in source and binary forms, with or without
    577 // modification, are permitted provided that the following conditions
    578 // are met:
    579 // 1. Redistributions of source code must retain the above copyright
    580 //    notice, this list of conditions and the following disclaimer.
    581 // 2. Redistributions in binary form must reproduce the above copyright
    582 //    notice, this list of conditions and the following disclaimer in the
    583 //    documentation and/or other materials provided with the distribution.
    584 // 3. Neither the name of the University nor the names of its contributors
    585 //    may be used to endorse or promote products derived from this software
    586 //    without specific prior written permission.
    587 //
    588 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    589 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    590 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    591 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    592 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    593 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    594 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    595 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    596 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    597 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    598 // SUCH DAMAGE.
    599 //
    600 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    601 // $FreeBSD$
    602 
    603 // -
    604 // SPDX-License-Identifier: BSD-4-Clause
    605 //
    606 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
    607 // Copyright (c) 1990, 1993
    608 //	The Regents of the University of California.  All rights reserved.
    609 //
    610 // Redistribution and use in source and binary forms, with or without
    611 // modification, are permitted provided that the following conditions
    612 // are met:
    613 // 1. Redistributions of source code must retain the above copyright
    614 //    notice, this list of conditions and the following disclaimer.
    615 // 2. Redistributions in binary form must reproduce the above copyright
    616 //    notice, this list of conditions and the following disclaimer in the
    617 //    documentation and/or other materials provided with the distribution.
    618 // 3. All advertising materials mentioning features or use of this software
    619 //    must display the following acknowledgement:
    620 //	This product includes software developed by the University of
    621 //	California, Berkeley and its contributors.
    622 // 4. Neither the name of the University nor the names of its contributors
    623 //    may be used to endorse or promote products derived from this software
    624 //    without specific prior written permission.
    625 //
    626 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    627 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    628 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    629 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    630 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    631 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    632 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    633 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    634 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    635 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    636 // SUCH DAMAGE.
    637 //
    638 //	From: @(#)ansi.h	8.2 (Berkeley) 1/4/94
    639 //	From: @(#)types.h	8.3 (Berkeley) 1/5/94
    640 // $FreeBSD$
    641 
    642 // Basic types upon which most other types are built.
    643 type X__int8_t = int8     /* _types.h:51:22 */
    644 type X__uint8_t = uint8   /* _types.h:52:24 */
    645 type X__int16_t = int16   /* _types.h:53:17 */
    646 type X__uint16_t = uint16 /* _types.h:54:25 */
    647 type X__int32_t = int32   /* _types.h:55:15 */
    648 type X__uint32_t = uint32 /* _types.h:56:23 */
    649 
    650 // LONGLONG
    651 type X__int64_t = int64 /* _types.h:61:20 */
    652 
    653 // LONGLONG
    654 type X__uint64_t = uint64 /* _types.h:66:28 */
    655 
    656 // Standard type definitions.
    657 type X__clock_t = X__uint32_t        /* _types.h:71:20 */ // clock()...
    658 type X__critical_t = X__int32_t      /* _types.h:72:19 */
    659 type X__double_t = float64           /* _types.h:74:17 */
    660 type X__float_t = float32            /* _types.h:75:16 */
    661 type X__intfptr_t = X__int32_t       /* _types.h:77:19 */
    662 type X__intmax_t = X__int64_t        /* _types.h:78:19 */
    663 type X__intptr_t = X__int32_t        /* _types.h:79:19 */
    664 type X__int_fast8_t = X__int32_t     /* _types.h:80:19 */
    665 type X__int_fast16_t = X__int32_t    /* _types.h:81:19 */
    666 type X__int_fast32_t = X__int32_t    /* _types.h:82:19 */
    667 type X__int_fast64_t = X__int64_t    /* _types.h:83:19 */
    668 type X__int_least8_t = X__int8_t     /* _types.h:84:18 */
    669 type X__int_least16_t = X__int16_t   /* _types.h:85:19 */
    670 type X__int_least32_t = X__int32_t   /* _types.h:86:19 */
    671 type X__int_least64_t = X__int64_t   /* _types.h:87:19 */
    672 type X__ptrdiff_t = X__int32_t       /* _types.h:88:19 */ // ptr1 - ptr2
    673 type X__register_t = X__int32_t      /* _types.h:89:19 */
    674 type X__segsz_t = X__int32_t         /* _types.h:90:19 */ // segment size (in pages)
    675 type X__size_t = X__uint32_t         /* _types.h:91:20 */ // sizeof()
    676 type X__ssize_t = X__int32_t         /* _types.h:92:19 */ // byte count or error
    677 type X__time_t = X__int64_t          /* _types.h:93:19 */ // time()...
    678 type X__uintfptr_t = X__uint32_t     /* _types.h:94:20 */
    679 type X__uintmax_t = X__uint64_t      /* _types.h:95:20 */
    680 type X__uintptr_t = X__uint32_t      /* _types.h:96:20 */
    681 type X__uint_fast8_t = X__uint32_t   /* _types.h:97:20 */
    682 type X__uint_fast16_t = X__uint32_t  /* _types.h:98:20 */
    683 type X__uint_fast32_t = X__uint32_t  /* _types.h:99:20 */
    684 type X__uint_fast64_t = X__uint64_t  /* _types.h:100:20 */
    685 type X__uint_least8_t = X__uint8_t   /* _types.h:101:19 */
    686 type X__uint_least16_t = X__uint16_t /* _types.h:102:20 */
    687 type X__uint_least32_t = X__uint32_t /* _types.h:103:20 */
    688 type X__uint_least64_t = X__uint64_t /* _types.h:104:20 */
    689 type X__u_register_t = X__uint32_t   /* _types.h:105:20 */
    690 type X__vm_offset_t = X__uint32_t    /* _types.h:106:20 */
    691 type X__vm_paddr_t = X__uint32_t     /* _types.h:107:20 */
    692 type X__vm_size_t = X__uint32_t      /* _types.h:108:20 */
    693 
    694 type X___wchar_t = uint32 /* _types.h:110:22 */
    695 
    696 // Standard type definitions.
    697 type X__blksize_t = X__int32_t   /* _types.h:40:19 */ // file block size
    698 type X__blkcnt_t = X__int64_t    /* _types.h:41:19 */ // file block count
    699 type X__clockid_t = X__int32_t   /* _types.h:42:19 */ // clock_gettime()...
    700 type X__fflags_t = X__uint32_t   /* _types.h:43:20 */ // file flags
    701 type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
    702 type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
    703 type X__gid_t = X__uint32_t      /* _types.h:46:20 */
    704 type X__id_t = X__int64_t        /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
    705 type X__ino_t = X__uint64_t      /* _types.h:48:20 */ // inode number
    706 type X__key_t = int32            /* _types.h:49:15 */ // IPC key (for Sys V IPC)
    707 type X__lwpid_t = X__int32_t     /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
    708 type X__mode_t = X__uint16_t     /* _types.h:51:20 */ // permissions
    709 type X__accmode_t = int32        /* _types.h:52:14 */ // access permissions
    710 type X__nl_item = int32          /* _types.h:53:14 */
    711 type X__nlink_t = X__uint64_t    /* _types.h:54:20 */ // link count
    712 type X__off_t = X__int64_t       /* _types.h:55:19 */ // file offset
    713 type X__off64_t = X__int64_t     /* _types.h:56:19 */ // file offset (alias)
    714 type X__pid_t = X__int32_t       /* _types.h:57:19 */ // process [group]
    715 type X__rlim_t = X__int64_t      /* _types.h:58:19 */ // resource limit - intentionally
    716 // signed, because of legacy code
    717 // that uses -1 for RLIM_INFINITY
    718 type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
    719 type X__socklen_t = X__uint32_t  /* _types.h:62:20 */
    720 type X__suseconds_t = int32      /* _types.h:63:15 */ // microseconds (signed)
    721 type X__timer_t = uintptr        /* _types.h:64:24 */ // timer_gettime()...
    722 type X__mqd_t = uintptr          /* _types.h:65:21 */ // mq_open()...
    723 type X__uid_t = X__uint32_t      /* _types.h:66:20 */
    724 type X__useconds_t = uint32      /* _types.h:67:22 */ // microseconds (unsigned)
    725 type X__cpuwhich_t = int32       /* _types.h:68:14 */ // which parameter for cpuset.
    726 type X__cpulevel_t = int32       /* _types.h:69:14 */ // level parameter for cpuset.
    727 type X__cpusetid_t = int32       /* _types.h:70:14 */ // cpuset identifier.
    728 type X__daddr_t = X__int64_t     /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
    729 
    730 // Unusual type definitions.
    731 // rune_t is declared to be an “int” instead of the more natural
    732 // “unsigned long” or “long”.  Two things are happening here.  It is not
    733 // unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
    734 // it looks like 10646 will be a 31 bit standard.  This means that if your
    735 // ints cannot hold 32 bits, you will be in trouble.  The reason an int was
    736 // chosen over a long is that the is*() and to*() routines take ints (says
    737 // ANSI C), but they use __ct_rune_t instead of int.
    738 //
    739 // NOTE: rune_t is not covered by ANSI nor other standards, and should not
    740 // be instantiated outside of lib/libc/locale.  Use wchar_t.  wint_t and
    741 // rune_t must be the same type.  Also, wint_t should be able to hold all
    742 // members of the largest character set plus one extra value (WEOF), and
    743 // must be at least 16 bits.
    744 type X__ct_rune_t = int32     /* _types.h:91:14 */ // arg type for ctype funcs
    745 type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
    746 type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
    747 
    748 // Clang already provides these types as built-ins, but only in C++ mode.
    749 type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
    750 type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
    751 // In C++11, char16_t and char32_t are built-in types.
    752 
    753 type X__max_align_t = struct {
    754 	F__max_align1 int64
    755 	F__max_align2 float64
    756 } /* _types.h:111:3 */
    757 
    758 type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
    759 
    760 type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
    761 
    762 // mbstate_t is an opaque object to keep conversion state during multibyte
    763 // stream conversions.
    764 type X__mbstate_t = struct {
    765 	F__ccgo_pad1 [0]uint64
    766 	F__mbstate8  [128]uint8
    767 } /* _types.h:124:3 */
    768 
    769 type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
    770 
    771 // Types for varargs. These are all provided by builtin types these
    772 // days, so centralize their definition.
    773 type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
    774 type X__gnuc_va_list = X__va_list    /* _types.h:140:20 */
    775 type Pthread_once = struct {
    776 	Fstate int32
    777 	Fmutex Pthread_mutex_t
    778 } /* _pthreadtypes.h:52:1 */
    779 
    780 // Primitive system data type definitions required by P1003.1c.
    781 //
    782 // Note that P1003.1c specifies that there are no defined comparison
    783 // or assignment operators for the types pthread_attr_t, pthread_cond_t,
    784 // pthread_condattr_t, pthread_mutex_t, pthread_mutexattr_t.
    785 type Pthread_t = uintptr             /* _pthreadtypes.h:67:26 */
    786 type Pthread_attr_t = uintptr        /* _pthreadtypes.h:70:30 */
    787 type Pthread_mutex_t = uintptr       /* _pthreadtypes.h:71:31 */
    788 type Pthread_mutexattr_t = uintptr   /* _pthreadtypes.h:72:35 */
    789 type Pthread_cond_t = uintptr        /* _pthreadtypes.h:73:30 */
    790 type Pthread_condattr_t = uintptr    /* _pthreadtypes.h:74:34 */
    791 type Pthread_key_t = int32           /* _pthreadtypes.h:75:20 */
    792 type Pthread_once_t = Pthread_once   /* _pthreadtypes.h:76:30 */
    793 type Pthread_rwlock_t = uintptr      /* _pthreadtypes.h:77:32 */
    794 type Pthread_rwlockattr_t = uintptr  /* _pthreadtypes.h:78:35 */
    795 type Pthread_barrier_t = uintptr     /* _pthreadtypes.h:79:33 */
    796 type Pthread_barrierattr_t = uintptr /* _pthreadtypes.h:80:36 */
    797 type Pthread_spinlock_t = uintptr    /* _pthreadtypes.h:81:33 */
    798 
    799 // Additional type definitions:
    800 //
    801 // Note that P1003.1c reserves the prefixes pthread_ and PTHREAD_ for
    802 // use in header symbols.
    803 type Pthread_addr_t = uintptr         /* _pthreadtypes.h:89:14 */
    804 type Pthread_startroutine_t = uintptr /* _pthreadtypes.h:90:14 */
    805 
    806 type U_char = uint8   /* types.h:52:23 */
    807 type U_short = uint16 /* types.h:53:24 */
    808 type U_int = uint32   /* types.h:54:22 */
    809 type U_long = uint32  /* types.h:55:23 */
    810 type Ushort = uint16  /* types.h:57:24 */ // Sys V compatibility
    811 type Uint = uint32    /* types.h:58:22 */ // Sys V compatibility
    812 
    813 // XXX POSIX sized integrals that should appear only in <sys/stdint.h>.
    814 // -
    815 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    816 //
    817 // Copyright (c) 2011 David E. O'Brien <obrien@FreeBSD.org>
    818 // Copyright (c) 2001 Mike Barcroft <mike@FreeBSD.org>
    819 // All rights reserved.
    820 //
    821 // Redistribution and use in source and binary forms, with or without
    822 // modification, are permitted provided that the following conditions
    823 // are met:
    824 // 1. Redistributions of source code must retain the above copyright
    825 //    notice, this list of conditions and the following disclaimer.
    826 // 2. Redistributions in binary form must reproduce the above copyright
    827 //    notice, this list of conditions and the following disclaimer in the
    828 //    documentation and/or other materials provided with the distribution.
    829 //
    830 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    831 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    832 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    833 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    834 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    835 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    836 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    837 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    838 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    839 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    840 // SUCH DAMAGE.
    841 //
    842 // $FreeBSD$
    843 
    844 type Int8_t = X__int8_t /* _stdint.h:36:19 */
    845 
    846 type Int16_t = X__int16_t /* _stdint.h:41:20 */
    847 
    848 type Int32_t = X__int32_t /* _stdint.h:46:20 */
    849 
    850 type Int64_t = X__int64_t /* _stdint.h:51:20 */
    851 
    852 type Uint8_t = X__uint8_t /* _stdint.h:56:20 */
    853 
    854 type Uint16_t = X__uint16_t /* _stdint.h:61:21 */
    855 
    856 type Uint32_t = X__uint32_t /* _stdint.h:66:21 */
    857 
    858 type Uint64_t = X__uint64_t /* _stdint.h:71:21 */
    859 
    860 type Intptr_t = X__intptr_t   /* _stdint.h:76:21 */
    861 type Uintptr_t = X__uintptr_t /* _stdint.h:80:22 */
    862 type Intmax_t = X__intmax_t   /* _stdint.h:84:21 */
    863 type Uintmax_t = X__uintmax_t /* _stdint.h:88:22 */
    864 
    865 type U_int8_t = X__uint8_t   /* types.h:67:19 */ // unsigned integrals (deprecated)
    866 type U_int16_t = X__uint16_t /* types.h:68:20 */
    867 type U_int32_t = X__uint32_t /* types.h:69:20 */
    868 type U_int64_t = X__uint64_t /* types.h:70:20 */
    869 
    870 type U_quad_t = X__uint64_t /* types.h:72:20 */ // quads (deprecated)
    871 type Quad_t = X__int64_t    /* types.h:73:19 */
    872 type Qaddr_t = uintptr      /* types.h:74:16 */
    873 
    874 type Caddr_t = uintptr   /* types.h:76:14 */ // core address
    875 type C_caddr_t = uintptr /* types.h:77:20 */ // core address, pointer to const
    876 
    877 type Blksize_t = X__blksize_t /* types.h:80:21 */
    878 
    879 type Cpuwhich_t = X__cpuwhich_t /* types.h:84:22 */
    880 type Cpulevel_t = X__cpulevel_t /* types.h:85:22 */
    881 type Cpusetid_t = X__cpusetid_t /* types.h:86:22 */
    882 
    883 type Blkcnt_t = X__blkcnt_t /* types.h:89:20 */
    884 
    885 type Clock_t = X__clock_t /* types.h:94:19 */
    886 
    887 type Clockid_t = X__clockid_t /* types.h:99:21 */
    888 
    889 type Critical_t = X__critical_t /* types.h:103:22 */ // Critical section value
    890 type Daddr_t = X__daddr_t       /* types.h:104:19 */ // disk address
    891 
    892 type Dev_t = X__dev_t /* types.h:107:18 */ // device number or struct cdev
    893 
    894 type Fflags_t = X__fflags_t /* types.h:112:20 */ // file flags
    895 
    896 type Fixpt_t = X__fixpt_t /* types.h:116:19 */ // fixed point number
    897 
    898 type Fsblkcnt_t = X__fsblkcnt_t /* types.h:119:22 */
    899 type Fsfilcnt_t = X__fsfilcnt_t /* types.h:120:22 */
    900 
    901 type Gid_t = X__gid_t /* types.h:125:18 */ // group id
    902 
    903 type In_addr_t = X__uint32_t /* types.h:130:20 */ // base type for internet address
    904 
    905 type In_port_t = X__uint16_t /* types.h:135:20 */
    906 
    907 type Id_t = X__id_t /* types.h:140:17 */ // can hold a uid_t or pid_t
    908 
    909 type Ino_t = X__ino_t /* types.h:145:18 */ // inode number
    910 
    911 type Key_t = X__key_t /* types.h:150:18 */ // IPC key (for Sys V IPC)
    912 
    913 type Lwpid_t = X__lwpid_t /* types.h:155:19 */ // Thread ID (a.k.a. LWP)
    914 
    915 type Mode_t = X__mode_t /* types.h:160:18 */ // permissions
    916 
    917 type Accmode_t = X__accmode_t /* types.h:165:21 */ // access permissions
    918 
    919 type Nlink_t = X__nlink_t /* types.h:170:19 */ // link count
    920 
    921 type Off_t = X__off_t /* types.h:175:18 */ // file offset
    922 
    923 type Off64_t = X__off64_t /* types.h:180:19 */ // file offset (alias)
    924 
    925 type Pid_t = X__pid_t /* types.h:185:18 */ // process id
    926 
    927 type Register_t = X__register_t /* types.h:189:22 */
    928 
    929 type Rlim_t = X__rlim_t /* types.h:192:18 */ // resource limit
    930 
    931 type Sbintime_t = X__int64_t /* types.h:196:19 */
    932 
    933 type Segsz_t = X__segsz_t /* types.h:198:19 */
    934 
    935 type Ssize_t = X__ssize_t /* types.h:206:19 */
    936 
    937 type Suseconds_t = X__suseconds_t /* types.h:211:23 */ // microseconds (signed)
    938 
    939 type Time_t = X__time_t /* types.h:216:18 */
    940 
    941 type Timer_t = X__timer_t /* types.h:221:19 */
    942 
    943 type Mqd_t = X__mqd_t /* types.h:226:17 */
    944 
    945 type U_register_t = X__u_register_t /* types.h:230:24 */
    946 
    947 type Uid_t = X__uid_t /* types.h:233:18 */ // user id
    948 
    949 type Useconds_t = X__useconds_t /* types.h:238:22 */ // microseconds (unsigned)
    950 
    951 type Cap_ioctl_t = uint32 /* types.h:244:23 */
    952 
    953 // Types suitable for exporting physical addresses, virtual addresses
    954 // (pointers), and memory object sizes from the kernel independent of native
    955 // word size.  These should be used in place of vm_paddr_t, (u)intptr_t, and
    956 // size_t in structs which contain such types that are shared with userspace.
    957 type Kpaddr_t = X__uint64_t /* types.h:260:20 */
    958 type Kvaddr_t = X__uint64_t /* types.h:261:20 */
    959 type Ksize_t = X__uint64_t  /* types.h:262:20 */
    960 type Kssize_t = X__int64_t  /* types.h:263:19 */
    961 
    962 type Vm_offset_t = X__vm_offset_t /* types.h:265:23 */
    963 type Vm_ooffset_t = X__uint64_t   /* types.h:266:20 */
    964 type Vm_paddr_t = X__vm_paddr_t   /* types.h:267:22 */
    965 type Vm_pindex_t = X__uint64_t    /* types.h:268:20 */
    966 type Vm_size_t = X__vm_size_t     /* types.h:269:21 */
    967 
    968 type Rman_res_t = X__rman_res_t /* types.h:271:25 */
    969 
    970 // -
    971 // SPDX-License-Identifier: BSD-3-Clause
    972 //
    973 // Copyright (c) 1992, 1993
    974 //	The Regents of the University of California.  All rights reserved.
    975 //
    976 // Redistribution and use in source and binary forms, with or without
    977 // modification, are permitted provided that the following conditions
    978 // are met:
    979 // 1. Redistributions of source code must retain the above copyright
    980 //    notice, this list of conditions and the following disclaimer.
    981 // 2. Redistributions in binary form must reproduce the above copyright
    982 //    notice, this list of conditions and the following disclaimer in the
    983 //    documentation and/or other materials provided with the distribution.
    984 // 3. Neither the name of the University nor the names of its contributors
    985 //    may be used to endorse or promote products derived from this software
    986 //    without specific prior written permission.
    987 //
    988 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    989 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    990 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    991 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    992 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    993 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    994 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    995 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    996 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    997 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    998 // SUCH DAMAGE.
    999 //
   1000 // $FreeBSD$
   1001 
   1002 // -
   1003 // SPDX-License-Identifier: BSD-3-Clause
   1004 //
   1005 // Copyright (c) 1991, 1993
   1006 //	The Regents of the University of California.  All rights reserved.
   1007 //
   1008 // This code is derived from software contributed to Berkeley by
   1009 // Berkeley Software Design, Inc.
   1010 //
   1011 // Redistribution and use in source and binary forms, with or without
   1012 // modification, are permitted provided that the following conditions
   1013 // are met:
   1014 // 1. Redistributions of source code must retain the above copyright
   1015 //    notice, this list of conditions and the following disclaimer.
   1016 // 2. Redistributions in binary form must reproduce the above copyright
   1017 //    notice, this list of conditions and the following disclaimer in the
   1018 //    documentation and/or other materials provided with the distribution.
   1019 // 3. Neither the name of the University nor the names of its contributors
   1020 //    may be used to endorse or promote products derived from this software
   1021 //    without specific prior written permission.
   1022 //
   1023 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1024 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1025 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1026 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1027 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1028 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1029 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1030 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1031 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1032 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1033 // SUCH DAMAGE.
   1034 //
   1035 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1036 // $FreeBSD$
   1037 
   1038 // -
   1039 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1040 //
   1041 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1042 // All rights reserved.
   1043 //
   1044 // Redistribution and use in source and binary forms, with or without
   1045 // modification, are permitted provided that the following conditions
   1046 // are met:
   1047 // 1. Redistributions of source code must retain the above copyright
   1048 //    notice, this list of conditions and the following disclaimer.
   1049 // 2. Redistributions in binary form must reproduce the above copyright
   1050 //    notice, this list of conditions and the following disclaimer in the
   1051 //    documentation and/or other materials provided with the distribution.
   1052 //
   1053 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1054 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1055 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1056 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1057 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1058 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1059 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1060 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1061 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1062 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1063 // SUCH DAMAGE.
   1064 //
   1065 // $FreeBSD$
   1066 
   1067 // -
   1068 // SPDX-License-Identifier: BSD-3-Clause
   1069 //
   1070 // Copyright (c) 1982, 1986, 1989, 1991, 1993
   1071 //	The Regents of the University of California.  All rights reserved.
   1072 // (c) UNIX System Laboratories, Inc.
   1073 // All or some portions of this file are derived from material licensed
   1074 // to the University of California by American Telephone and Telegraph
   1075 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1076 // the permission of UNIX System Laboratories, Inc.
   1077 //
   1078 // Redistribution and use in source and binary forms, with or without
   1079 // modification, are permitted provided that the following conditions
   1080 // are met:
   1081 // 1. Redistributions of source code must retain the above copyright
   1082 //    notice, this list of conditions and the following disclaimer.
   1083 // 2. Redistributions in binary form must reproduce the above copyright
   1084 //    notice, this list of conditions and the following disclaimer in the
   1085 //    documentation and/or other materials provided with the distribution.
   1086 // 3. Neither the name of the University nor the names of its contributors
   1087 //    may be used to endorse or promote products derived from this software
   1088 //    without specific prior written permission.
   1089 //
   1090 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1091 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1092 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1093 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1094 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1095 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1096 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1097 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1098 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1099 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1100 // SUCH DAMAGE.
   1101 //
   1102 //	@(#)signal.h	8.4 (Berkeley) 5/4/95
   1103 // $FreeBSD$
   1104 
   1105 // sigset_t macros.
   1106 
   1107 type X__sigset = struct{ F__bits [4]X__uint32_t } /* _sigset.h:53:9 */
   1108 
   1109 // -
   1110 // SPDX-License-Identifier: BSD-3-Clause
   1111 //
   1112 // Copyright (c) 1992, 1993
   1113 //	The Regents of the University of California.  All rights reserved.
   1114 //
   1115 // Redistribution and use in source and binary forms, with or without
   1116 // modification, are permitted provided that the following conditions
   1117 // are met:
   1118 // 1. Redistributions of source code must retain the above copyright
   1119 //    notice, this list of conditions and the following disclaimer.
   1120 // 2. Redistributions in binary form must reproduce the above copyright
   1121 //    notice, this list of conditions and the following disclaimer in the
   1122 //    documentation and/or other materials provided with the distribution.
   1123 // 3. Neither the name of the University nor the names of its contributors
   1124 //    may be used to endorse or promote products derived from this software
   1125 //    without specific prior written permission.
   1126 //
   1127 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1128 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1129 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1130 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1131 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1132 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1133 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1134 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1135 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1136 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1137 // SUCH DAMAGE.
   1138 //
   1139 // $FreeBSD$
   1140 
   1141 // -
   1142 // SPDX-License-Identifier: BSD-3-Clause
   1143 //
   1144 // Copyright (c) 1991, 1993
   1145 //	The Regents of the University of California.  All rights reserved.
   1146 //
   1147 // This code is derived from software contributed to Berkeley by
   1148 // Berkeley Software Design, Inc.
   1149 //
   1150 // Redistribution and use in source and binary forms, with or without
   1151 // modification, are permitted provided that the following conditions
   1152 // are met:
   1153 // 1. Redistributions of source code must retain the above copyright
   1154 //    notice, this list of conditions and the following disclaimer.
   1155 // 2. Redistributions in binary form must reproduce the above copyright
   1156 //    notice, this list of conditions and the following disclaimer in the
   1157 //    documentation and/or other materials provided with the distribution.
   1158 // 3. Neither the name of the University nor the names of its contributors
   1159 //    may be used to endorse or promote products derived from this software
   1160 //    without specific prior written permission.
   1161 //
   1162 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1163 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1164 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1165 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1166 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1167 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1168 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1169 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1170 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1171 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1172 // SUCH DAMAGE.
   1173 //
   1174 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1175 // $FreeBSD$
   1176 
   1177 // -
   1178 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1179 //
   1180 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1181 // All rights reserved.
   1182 //
   1183 // Redistribution and use in source and binary forms, with or without
   1184 // modification, are permitted provided that the following conditions
   1185 // are met:
   1186 // 1. Redistributions of source code must retain the above copyright
   1187 //    notice, this list of conditions and the following disclaimer.
   1188 // 2. Redistributions in binary form must reproduce the above copyright
   1189 //    notice, this list of conditions and the following disclaimer in the
   1190 //    documentation and/or other materials provided with the distribution.
   1191 //
   1192 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1193 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1194 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1195 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1196 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1197 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1198 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1199 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1200 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1201 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1202 // SUCH DAMAGE.
   1203 //
   1204 // $FreeBSD$
   1205 
   1206 // -
   1207 // SPDX-License-Identifier: BSD-3-Clause
   1208 //
   1209 // Copyright (c) 1982, 1986, 1989, 1991, 1993
   1210 //	The Regents of the University of California.  All rights reserved.
   1211 // (c) UNIX System Laboratories, Inc.
   1212 // All or some portions of this file are derived from material licensed
   1213 // to the University of California by American Telephone and Telegraph
   1214 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1215 // the permission of UNIX System Laboratories, Inc.
   1216 //
   1217 // Redistribution and use in source and binary forms, with or without
   1218 // modification, are permitted provided that the following conditions
   1219 // are met:
   1220 // 1. Redistributions of source code must retain the above copyright
   1221 //    notice, this list of conditions and the following disclaimer.
   1222 // 2. Redistributions in binary form must reproduce the above copyright
   1223 //    notice, this list of conditions and the following disclaimer in the
   1224 //    documentation and/or other materials provided with the distribution.
   1225 // 3. Neither the name of the University nor the names of its contributors
   1226 //    may be used to endorse or promote products derived from this software
   1227 //    without specific prior written permission.
   1228 //
   1229 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1230 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1231 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1232 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1233 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1234 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1235 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1236 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1237 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1238 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1239 // SUCH DAMAGE.
   1240 //
   1241 //	@(#)signal.h	8.4 (Berkeley) 5/4/95
   1242 // $FreeBSD$
   1243 
   1244 // sigset_t macros.
   1245 
   1246 type X__sigset_t = X__sigset /* _sigset.h:55:3 */
   1247 
   1248 // -
   1249 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1250 //
   1251 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1252 // All rights reserved.
   1253 //
   1254 // Redistribution and use in source and binary forms, with or without
   1255 // modification, are permitted provided that the following conditions
   1256 // are met:
   1257 // 1. Redistributions of source code must retain the above copyright
   1258 //    notice, this list of conditions and the following disclaimer.
   1259 // 2. Redistributions in binary form must reproduce the above copyright
   1260 //    notice, this list of conditions and the following disclaimer in the
   1261 //    documentation and/or other materials provided with the distribution.
   1262 //
   1263 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1264 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1265 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1266 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1267 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1268 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1269 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1270 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1271 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1272 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1273 // SUCH DAMAGE.
   1274 //
   1275 // $FreeBSD$
   1276 
   1277 // -
   1278 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1279 //
   1280 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1281 // All rights reserved.
   1282 //
   1283 // Redistribution and use in source and binary forms, with or without
   1284 // modification, are permitted provided that the following conditions
   1285 // are met:
   1286 // 1. Redistributions of source code must retain the above copyright
   1287 //    notice, this list of conditions and the following disclaimer.
   1288 // 2. Redistributions in binary form must reproduce the above copyright
   1289 //    notice, this list of conditions and the following disclaimer in the
   1290 //    documentation and/or other materials provided with the distribution.
   1291 //
   1292 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1293 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1294 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1295 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1296 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1297 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1298 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1299 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1300 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1301 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1302 // SUCH DAMAGE.
   1303 //
   1304 // $FreeBSD$
   1305 
   1306 // Structure returned by gettimeofday(2) system call, and used in other calls.
   1307 type Timeval = struct {
   1308 	Ftv_sec      Time_t
   1309 	Ftv_usec     Suseconds_t
   1310 	F__ccgo_pad1 [4]byte
   1311 } /* _timeval.h:49:1 */
   1312 
   1313 // -
   1314 // SPDX-License-Identifier: BSD-3-Clause
   1315 //
   1316 // Copyright (c) 1982, 1986, 1993
   1317 //	The Regents of the University of California.  All rights reserved.
   1318 //
   1319 // Redistribution and use in source and binary forms, with or without
   1320 // modification, are permitted provided that the following conditions
   1321 // are met:
   1322 // 1. Redistributions of source code must retain the above copyright
   1323 //    notice, this list of conditions and the following disclaimer.
   1324 // 2. Redistributions in binary form must reproduce the above copyright
   1325 //    notice, this list of conditions and the following disclaimer in the
   1326 //    documentation and/or other materials provided with the distribution.
   1327 // 3. Neither the name of the University nor the names of its contributors
   1328 //    may be used to endorse or promote products derived from this software
   1329 //    without specific prior written permission.
   1330 //
   1331 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1332 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1333 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1334 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1335 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1336 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1337 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1338 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1339 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1340 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1341 // SUCH DAMAGE.
   1342 //
   1343 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1344 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1345 //	$FreeBSD$
   1346 
   1347 // -
   1348 // SPDX-License-Identifier: BSD-3-Clause
   1349 //
   1350 // Copyright (c) 1991, 1993
   1351 //	The Regents of the University of California.  All rights reserved.
   1352 //
   1353 // This code is derived from software contributed to Berkeley by
   1354 // Berkeley Software Design, Inc.
   1355 //
   1356 // Redistribution and use in source and binary forms, with or without
   1357 // modification, are permitted provided that the following conditions
   1358 // are met:
   1359 // 1. Redistributions of source code must retain the above copyright
   1360 //    notice, this list of conditions and the following disclaimer.
   1361 // 2. Redistributions in binary form must reproduce the above copyright
   1362 //    notice, this list of conditions and the following disclaimer in the
   1363 //    documentation and/or other materials provided with the distribution.
   1364 // 3. Neither the name of the University nor the names of its contributors
   1365 //    may be used to endorse or promote products derived from this software
   1366 //    without specific prior written permission.
   1367 //
   1368 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1369 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1370 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1371 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1372 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1373 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1374 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1375 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1376 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1377 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1378 // SUCH DAMAGE.
   1379 //
   1380 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1381 // $FreeBSD$
   1382 
   1383 // -
   1384 // SPDX-License-Identifier: BSD-3-Clause
   1385 //
   1386 // Copyright (c) 1982, 1986, 1993
   1387 //	The Regents of the University of California.  All rights reserved.
   1388 //
   1389 // Redistribution and use in source and binary forms, with or without
   1390 // modification, are permitted provided that the following conditions
   1391 // are met:
   1392 // 1. Redistributions of source code must retain the above copyright
   1393 //    notice, this list of conditions and the following disclaimer.
   1394 // 2. Redistributions in binary form must reproduce the above copyright
   1395 //    notice, this list of conditions and the following disclaimer in the
   1396 //    documentation and/or other materials provided with the distribution.
   1397 // 3. Neither the name of the University nor the names of its contributors
   1398 //    may be used to endorse or promote products derived from this software
   1399 //    without specific prior written permission.
   1400 //
   1401 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1402 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1403 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1404 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1405 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1406 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1407 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1408 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1409 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1410 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1411 // SUCH DAMAGE.
   1412 //
   1413 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1414 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1415 //	$FreeBSD$
   1416 
   1417 // -
   1418 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1419 //
   1420 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1421 // All rights reserved.
   1422 //
   1423 // Redistribution and use in source and binary forms, with or without
   1424 // modification, are permitted provided that the following conditions
   1425 // are met:
   1426 // 1. Redistributions of source code must retain the above copyright
   1427 //    notice, this list of conditions and the following disclaimer.
   1428 // 2. Redistributions in binary form must reproduce the above copyright
   1429 //    notice, this list of conditions and the following disclaimer in the
   1430 //    documentation and/or other materials provided with the distribution.
   1431 //
   1432 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1433 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1434 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1435 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1436 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1437 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1438 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1439 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1440 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1441 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1442 // SUCH DAMAGE.
   1443 //
   1444 // $FreeBSD$
   1445 
   1446 type Timespec = struct {
   1447 	Ftv_sec      Time_t
   1448 	Ftv_nsec     int32
   1449 	F__ccgo_pad1 [4]byte
   1450 } /* _timespec.h:46:1 */
   1451 
   1452 // Structure defined by POSIX.1b to be like a itimerval, but with
   1453 // timespecs. Used in the timer_*() system calls.
   1454 type Itimerspec = struct {
   1455 	Fit_interval struct {
   1456 		Ftv_sec      Time_t
   1457 		Ftv_nsec     int32
   1458 		F__ccgo_pad1 [4]byte
   1459 	}
   1460 	Fit_value struct {
   1461 		Ftv_sec      Time_t
   1462 		Ftv_nsec     int32
   1463 		F__ccgo_pad1 [4]byte
   1464 	}
   1465 } /* timespec.h:60:1 */
   1466 
   1467 type X__fd_mask = uint32  /* select.h:44:23 */
   1468 type Fd_mask = X__fd_mask /* select.h:46:19 */
   1469 
   1470 type Sigset_t = X__sigset_t /* select.h:51:20 */
   1471 
   1472 // Select uses bit masks of file descriptors in longs.  These macros
   1473 // manipulate such bit fields (the filesystem macros use chars).
   1474 // FD_SETSIZE may be defined by the user, but the default here should
   1475 // be enough for most uses.
   1476 
   1477 type Fd_set1 = struct{ F__fds_bits [32]X__fd_mask } /* select.h:73:9 */
   1478 
   1479 // Select uses bit masks of file descriptors in longs.  These macros
   1480 // manipulate such bit fields (the filesystem macros use chars).
   1481 // FD_SETSIZE may be defined by the user, but the default here should
   1482 // be enough for most uses.
   1483 
   1484 type Fd_set = Fd_set1 /* select.h:75:3 */
   1485 
   1486 // -
   1487 // SPDX-License-Identifier: BSD-3-Clause
   1488 //
   1489 // Copyright (c) 1982, 1986, 1989, 1993
   1490 //	The Regents of the University of California.  All rights reserved.
   1491 // (c) UNIX System Laboratories, Inc.
   1492 // All or some portions of this file are derived from material licensed
   1493 // to the University of California by American Telephone and Telegraph
   1494 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1495 // the permission of UNIX System Laboratories, Inc.
   1496 //
   1497 // Redistribution and use in source and binary forms, with or without
   1498 // modification, are permitted provided that the following conditions
   1499 // are met:
   1500 // 1. Redistributions of source code must retain the above copyright
   1501 //    notice, this list of conditions and the following disclaimer.
   1502 // 2. Redistributions in binary form must reproduce the above copyright
   1503 //    notice, this list of conditions and the following disclaimer in the
   1504 //    documentation and/or other materials provided with the distribution.
   1505 // 3. Neither the name of the University nor the names of its contributors
   1506 //    may be used to endorse or promote products derived from this software
   1507 //    without specific prior written permission.
   1508 //
   1509 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1510 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1511 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1512 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1513 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1514 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1515 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1516 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1517 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1518 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1519 // SUCH DAMAGE.
   1520 //
   1521 //	@(#)stat.h	8.12 (Berkeley) 6/16/95
   1522 // $FreeBSD$
   1523 
   1524 // -
   1525 // SPDX-License-Identifier: BSD-3-Clause
   1526 //
   1527 // Copyright (c) 1991, 1993
   1528 //	The Regents of the University of California.  All rights reserved.
   1529 //
   1530 // This code is derived from software contributed to Berkeley by
   1531 // Berkeley Software Design, Inc.
   1532 //
   1533 // Redistribution and use in source and binary forms, with or without
   1534 // modification, are permitted provided that the following conditions
   1535 // are met:
   1536 // 1. Redistributions of source code must retain the above copyright
   1537 //    notice, this list of conditions and the following disclaimer.
   1538 // 2. Redistributions in binary form must reproduce the above copyright
   1539 //    notice, this list of conditions and the following disclaimer in the
   1540 //    documentation and/or other materials provided with the distribution.
   1541 // 3. Neither the name of the University nor the names of its contributors
   1542 //    may be used to endorse or promote products derived from this software
   1543 //    without specific prior written permission.
   1544 //
   1545 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1546 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1547 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1548 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1549 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1550 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1551 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1552 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1553 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1554 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1555 // SUCH DAMAGE.
   1556 //
   1557 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1558 // $FreeBSD$
   1559 
   1560 // -
   1561 // SPDX-License-Identifier: BSD-3-Clause
   1562 //
   1563 // Copyright (c) 1982, 1986, 1993
   1564 //	The Regents of the University of California.  All rights reserved.
   1565 //
   1566 // Redistribution and use in source and binary forms, with or without
   1567 // modification, are permitted provided that the following conditions
   1568 // are met:
   1569 // 1. Redistributions of source code must retain the above copyright
   1570 //    notice, this list of conditions and the following disclaimer.
   1571 // 2. Redistributions in binary form must reproduce the above copyright
   1572 //    notice, this list of conditions and the following disclaimer in the
   1573 //    documentation and/or other materials provided with the distribution.
   1574 // 3. Neither the name of the University nor the names of its contributors
   1575 //    may be used to endorse or promote products derived from this software
   1576 //    without specific prior written permission.
   1577 //
   1578 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1579 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1580 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1581 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1582 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1583 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1584 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1585 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1586 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1587 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1588 // SUCH DAMAGE.
   1589 //
   1590 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1591 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1592 //	$FreeBSD$
   1593 
   1594 // -
   1595 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1596 //
   1597 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1598 // All rights reserved.
   1599 //
   1600 // Redistribution and use in source and binary forms, with or without
   1601 // modification, are permitted provided that the following conditions
   1602 // are met:
   1603 // 1. Redistributions of source code must retain the above copyright
   1604 //    notice, this list of conditions and the following disclaimer.
   1605 // 2. Redistributions in binary form must reproduce the above copyright
   1606 //    notice, this list of conditions and the following disclaimer in the
   1607 //    documentation and/or other materials provided with the distribution.
   1608 //
   1609 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1610 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1611 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1612 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1613 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1614 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1615 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1616 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1617 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1618 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1619 // SUCH DAMAGE.
   1620 //
   1621 // $FreeBSD$
   1622 
   1623 // XXX We get miscellaneous namespace pollution with this.
   1624 // -
   1625 // SPDX-License-Identifier: BSD-3-Clause
   1626 //
   1627 // Copyright (c) 1982, 1986, 1993
   1628 //	The Regents of the University of California.  All rights reserved.
   1629 //
   1630 // Redistribution and use in source and binary forms, with or without
   1631 // modification, are permitted provided that the following conditions
   1632 // are met:
   1633 // 1. Redistributions of source code must retain the above copyright
   1634 //    notice, this list of conditions and the following disclaimer.
   1635 // 2. Redistributions in binary form must reproduce the above copyright
   1636 //    notice, this list of conditions and the following disclaimer in the
   1637 //    documentation and/or other materials provided with the distribution.
   1638 // 3. Neither the name of the University nor the names of its contributors
   1639 //    may be used to endorse or promote products derived from this software
   1640 //    without specific prior written permission.
   1641 //
   1642 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1643 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1644 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1645 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1646 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1647 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1648 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1649 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1650 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1651 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1652 // SUCH DAMAGE.
   1653 //
   1654 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1655 // $FreeBSD$
   1656 
   1657 // -
   1658 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1659 //
   1660 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1661 // All rights reserved.
   1662 //
   1663 // Redistribution and use in source and binary forms, with or without
   1664 // modification, are permitted provided that the following conditions
   1665 // are met:
   1666 // 1. Redistributions of source code must retain the above copyright
   1667 //    notice, this list of conditions and the following disclaimer.
   1668 // 2. Redistributions in binary form must reproduce the above copyright
   1669 //    notice, this list of conditions and the following disclaimer in the
   1670 //    documentation and/or other materials provided with the distribution.
   1671 //
   1672 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1673 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1674 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1675 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1676 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1677 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1678 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1679 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1680 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1681 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1682 // SUCH DAMAGE.
   1683 //
   1684 // $FreeBSD$
   1685 
   1686 // -
   1687 // SPDX-License-Identifier: BSD-3-Clause
   1688 //
   1689 // Copyright (c) 1982, 1986, 1991, 1993, 1994
   1690 //	The Regents of the University of California.  All rights reserved.
   1691 // (c) UNIX System Laboratories, Inc.
   1692 // All or some portions of this file are derived from material licensed
   1693 // to the University of California by American Telephone and Telegraph
   1694 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1695 // the permission of UNIX System Laboratories, Inc.
   1696 //
   1697 // Redistribution and use in source and binary forms, with or without
   1698 // modification, are permitted provided that the following conditions
   1699 // are met:
   1700 // 1. Redistributions of source code must retain the above copyright
   1701 //    notice, this list of conditions and the following disclaimer.
   1702 // 2. Redistributions in binary form must reproduce the above copyright
   1703 //    notice, this list of conditions and the following disclaimer in the
   1704 //    documentation and/or other materials provided with the distribution.
   1705 // 3. Neither the name of the University nor the names of its contributors
   1706 //    may be used to endorse or promote products derived from this software
   1707 //    without specific prior written permission.
   1708 //
   1709 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1710 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1711 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1712 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1713 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1714 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1715 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1716 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1717 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1718 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1719 // SUCH DAMAGE.
   1720 //
   1721 //	@(#)types.h	8.6 (Berkeley) 2/19/95
   1722 // $FreeBSD$
   1723 
   1724 // -
   1725 // SPDX-License-Identifier: BSD-3-Clause
   1726 //
   1727 // Copyright (c) 1982, 1986, 1993
   1728 //	The Regents of the University of California.  All rights reserved.
   1729 //
   1730 // Redistribution and use in source and binary forms, with or without
   1731 // modification, are permitted provided that the following conditions
   1732 // are met:
   1733 // 1. Redistributions of source code must retain the above copyright
   1734 //    notice, this list of conditions and the following disclaimer.
   1735 // 2. Redistributions in binary form must reproduce the above copyright
   1736 //    notice, this list of conditions and the following disclaimer in the
   1737 //    documentation and/or other materials provided with the distribution.
   1738 // 3. Neither the name of the University nor the names of its contributors
   1739 //    may be used to endorse or promote products derived from this software
   1740 //    without specific prior written permission.
   1741 //
   1742 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1743 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1744 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1745 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1746 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1747 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1748 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1749 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1750 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1751 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1752 // SUCH DAMAGE.
   1753 //
   1754 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1755 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1756 //	$FreeBSD$
   1757 
   1758 // -
   1759 // SPDX-License-Identifier: BSD-3-Clause
   1760 //
   1761 // Copyright (c) 1989, 1993
   1762 //	The Regents of the University of California.  All rights reserved.
   1763 // (c) UNIX System Laboratories, Inc.
   1764 // All or some portions of this file are derived from material licensed
   1765 // to the University of California by American Telephone and Telegraph
   1766 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1767 // the permission of UNIX System Laboratories, Inc.
   1768 //
   1769 // Redistribution and use in source and binary forms, with or without
   1770 // modification, are permitted provided that the following conditions
   1771 // are met:
   1772 // 1. Redistributions of source code must retain the above copyright
   1773 //    notice, this list of conditions and the following disclaimer.
   1774 // 2. Redistributions in binary form must reproduce the above copyright
   1775 //    notice, this list of conditions and the following disclaimer in the
   1776 //    documentation and/or other materials provided with the distribution.
   1777 // 3. Neither the name of the University nor the names of its contributors
   1778 //    may be used to endorse or promote products derived from this software
   1779 //    without specific prior written permission.
   1780 //
   1781 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1782 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1783 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1784 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1785 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1786 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1787 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1788 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1789 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1790 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1791 // SUCH DAMAGE.
   1792 //
   1793 //	@(#)time.h	8.3 (Berkeley) 1/21/94
   1794 
   1795 // These macros are shared between time.h and sys/time.h.
   1796 
   1797 // Note: The values shown below as a comment for the __POSIX_VISIBLE values are
   1798 // the ones FreeBSD traditionally used based on our reading of the POSIX
   1799 // standards. However, glibc uses 199309 for all of them, even those many were
   1800 // not defined there. To remain bug compatible with glibc means more software
   1801 // that relied on the glibc behavior will compile easily on FreeBSD.
   1802 //
   1803 // Also, CLOCK_UPTIME_FAST is improperly visible temporarily for the lang/pocl
   1804 // port until it can be updated properly. It incorrectly assumes that this was a
   1805 // standard value. It will be moved back to the __BSD_VISIBLE section once the
   1806 // issue is corrected.
   1807 
   1808 // FreeBSD-specific clocks.
   1809 
   1810 // Linux compatible names.
   1811 
   1812 type Timezone = struct {
   1813 	Ftz_minuteswest int32
   1814 	Ftz_dsttime     int32
   1815 } /* time.h:43:1 */
   1816 
   1817 type Bintime = struct {
   1818 	Fsec  Time_t
   1819 	Ffrac Uint64_t
   1820 } /* time.h:56:1 */
   1821 
   1822 // Operations on timespecs
   1823 
   1824 // Names of the interval timers, and structure
   1825 // defining a timer setting.
   1826 
   1827 type Itimerval = struct {
   1828 	Fit_interval struct {
   1829 		Ftv_sec      Time_t
   1830 		Ftv_usec     Suseconds_t
   1831 		F__ccgo_pad1 [4]byte
   1832 	}
   1833 	Fit_value struct {
   1834 		Ftv_sec      Time_t
   1835 		Ftv_usec     Suseconds_t
   1836 		F__ccgo_pad1 [4]byte
   1837 	}
   1838 } /* time.h:459:1 */
   1839 
   1840 // Getkerninfo clock information structure
   1841 type Clockinfo = struct {
   1842 	Fhz     int32
   1843 	Ftick   int32
   1844 	Fspare  int32
   1845 	Fstathz int32
   1846 	Fprofhz int32
   1847 } /* time.h:467:1 */
   1848 
   1849 // -
   1850 // SPDX-License-Identifier: BSD-3-Clause
   1851 //
   1852 // Copyright (c) 1989, 1993
   1853 //	The Regents of the University of California.  All rights reserved.
   1854 // (c) UNIX System Laboratories, Inc.
   1855 // All or some portions of this file are derived from material licensed
   1856 // to the University of California by American Telephone and Telegraph
   1857 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1858 // the permission of UNIX System Laboratories, Inc.
   1859 //
   1860 // Redistribution and use in source and binary forms, with or without
   1861 // modification, are permitted provided that the following conditions
   1862 // are met:
   1863 // 1. Redistributions of source code must retain the above copyright
   1864 //    notice, this list of conditions and the following disclaimer.
   1865 // 2. Redistributions in binary form must reproduce the above copyright
   1866 //    notice, this list of conditions and the following disclaimer in the
   1867 //    documentation and/or other materials provided with the distribution.
   1868 // 3. Neither the name of the University nor the names of its contributors
   1869 //    may be used to endorse or promote products derived from this software
   1870 //    without specific prior written permission.
   1871 //
   1872 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1873 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1874 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1875 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1876 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1877 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1878 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1879 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1880 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1881 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1882 // SUCH DAMAGE.
   1883 //
   1884 //	@(#)time.h	8.3 (Berkeley) 1/21/94
   1885 
   1886 // $FreeBSD$
   1887 
   1888 // -
   1889 // SPDX-License-Identifier: BSD-3-Clause
   1890 //
   1891 // Copyright (c) 1991, 1993
   1892 //	The Regents of the University of California.  All rights reserved.
   1893 //
   1894 // This code is derived from software contributed to Berkeley by
   1895 // Berkeley Software Design, Inc.
   1896 //
   1897 // Redistribution and use in source and binary forms, with or without
   1898 // modification, are permitted provided that the following conditions
   1899 // are met:
   1900 // 1. Redistributions of source code must retain the above copyright
   1901 //    notice, this list of conditions and the following disclaimer.
   1902 // 2. Redistributions in binary form must reproduce the above copyright
   1903 //    notice, this list of conditions and the following disclaimer in the
   1904 //    documentation and/or other materials provided with the distribution.
   1905 // 3. Neither the name of the University nor the names of its contributors
   1906 //    may be used to endorse or promote products derived from this software
   1907 //    without specific prior written permission.
   1908 //
   1909 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1910 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1911 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1912 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1913 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1914 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1915 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1916 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1917 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1918 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1919 // SUCH DAMAGE.
   1920 //
   1921 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1922 // $FreeBSD$
   1923 
   1924 // -
   1925 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1926 //
   1927 // Copyright (c) 2003 Marcel Moolenaar
   1928 // All rights reserved.
   1929 //
   1930 // Redistribution and use in source and binary forms, with or without
   1931 // modification, are permitted provided that the following conditions
   1932 // are met:
   1933 //
   1934 // 1. Redistributions of source code must retain the above copyright
   1935 //    notice, this list of conditions and the following disclaimer.
   1936 // 2. Redistributions in binary form must reproduce the above copyright
   1937 //    notice, this list of conditions and the following disclaimer in the
   1938 //    documentation and/or other materials provided with the distribution.
   1939 //
   1940 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   1941 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   1942 // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   1943 // IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   1944 // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   1945 // NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   1946 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   1947 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   1948 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   1949 // THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   1950 //
   1951 // $FreeBSD$
   1952 
   1953 // -
   1954 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1955 //
   1956 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1957 // All rights reserved.
   1958 //
   1959 // Redistribution and use in source and binary forms, with or without
   1960 // modification, are permitted provided that the following conditions
   1961 // are met:
   1962 // 1. Redistributions of source code must retain the above copyright
   1963 //    notice, this list of conditions and the following disclaimer.
   1964 // 2. Redistributions in binary form must reproduce the above copyright
   1965 //    notice, this list of conditions and the following disclaimer in the
   1966 //    documentation and/or other materials provided with the distribution.
   1967 //
   1968 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1969 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1970 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1971 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1972 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1973 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1974 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1975 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1976 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1977 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1978 // SUCH DAMAGE.
   1979 //
   1980 // $FreeBSD$
   1981 
   1982 // -
   1983 // SPDX-License-Identifier: BSD-3-Clause
   1984 //
   1985 // Copyright (c) 1989, 1993
   1986 //	The Regents of the University of California.  All rights reserved.
   1987 // (c) UNIX System Laboratories, Inc.
   1988 // All or some portions of this file are derived from material licensed
   1989 // to the University of California by American Telephone and Telegraph
   1990 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1991 // the permission of UNIX System Laboratories, Inc.
   1992 //
   1993 // Redistribution and use in source and binary forms, with or without
   1994 // modification, are permitted provided that the following conditions
   1995 // are met:
   1996 // 1. Redistributions of source code must retain the above copyright
   1997 //    notice, this list of conditions and the following disclaimer.
   1998 // 2. Redistributions in binary form must reproduce the above copyright
   1999 //    notice, this list of conditions and the following disclaimer in the
   2000 //    documentation and/or other materials provided with the distribution.
   2001 // 3. Neither the name of the University nor the names of its contributors
   2002 //    may be used to endorse or promote products derived from this software
   2003 //    without specific prior written permission.
   2004 //
   2005 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2006 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2007 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2008 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2009 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2010 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2011 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2012 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2013 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2014 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2015 // SUCH DAMAGE.
   2016 //
   2017 //	@(#)time.h	8.3 (Berkeley) 1/21/94
   2018 
   2019 // Frequency of the clock ticks reported by times().  Deprecated - use
   2020 // sysconf(_SC_CLK_TCK) instead.  (Removed in 1003.1-2001.)
   2021 
   2022 // Frequency of the clock ticks reported by clock().
   2023 
   2024 // New in POSIX 1003.1b-1993.
   2025 
   2026 // -
   2027 // SPDX-License-Identifier: BSD-3-Clause
   2028 //
   2029 // Copyright (c) 1982, 1986, 1993
   2030 //	The Regents of the University of California.  All rights reserved.
   2031 //
   2032 // Redistribution and use in source and binary forms, with or without
   2033 // modification, are permitted provided that the following conditions
   2034 // are met:
   2035 // 1. Redistributions of source code must retain the above copyright
   2036 //    notice, this list of conditions and the following disclaimer.
   2037 // 2. Redistributions in binary form must reproduce the above copyright
   2038 //    notice, this list of conditions and the following disclaimer in the
   2039 //    documentation and/or other materials provided with the distribution.
   2040 // 3. Neither the name of the University nor the names of its contributors
   2041 //    may be used to endorse or promote products derived from this software
   2042 //    without specific prior written permission.
   2043 //
   2044 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2045 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2046 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2047 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2048 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2049 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2050 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2051 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2052 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2053 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2054 // SUCH DAMAGE.
   2055 //
   2056 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   2057 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   2058 //	$FreeBSD$
   2059 
   2060 type Tm = struct {
   2061 	Ftm_sec    int32
   2062 	Ftm_min    int32
   2063 	Ftm_hour   int32
   2064 	Ftm_mday   int32
   2065 	Ftm_mon    int32
   2066 	Ftm_year   int32
   2067 	Ftm_wday   int32
   2068 	Ftm_yday   int32
   2069 	Ftm_isdst  int32
   2070 	Ftm_gmtoff int32
   2071 	Ftm_zone   uintptr
   2072 } /* time.h:101:1 */
   2073 
   2074 // -
   2075 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   2076 //
   2077 // Copyright (c) 2011, 2012 The FreeBSD Foundation
   2078 //
   2079 // This software was developed by David Chisnall under sponsorship from
   2080 // the FreeBSD Foundation.
   2081 //
   2082 // Redistribution and use in source and binary forms, with or without
   2083 // modification, are permitted provided that the following conditions
   2084 // are met:
   2085 // 1. Redistributions of source code must retain the above copyright
   2086 //    notice, this list of conditions and the following disclaimer.
   2087 // 2. Redistributions in binary form must reproduce the above copyright
   2088 //    notice, this list of conditions and the following disclaimer in the
   2089 //    documentation and/or other materials provided with the distribution.
   2090 //
   2091 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   2092 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2093 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2094 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   2095 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2096 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2097 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2098 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2099 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2100 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2101 // SUCH DAMAGE.
   2102 //
   2103 // $FreeBSD$
   2104 
   2105 type Locale_t = uintptr /* _time.h:35:25 */
   2106 
   2107 type Stat = struct {
   2108 	Fst_dev      Dev_t
   2109 	Fst_ino      Ino_t
   2110 	Fst_nlink    Nlink_t
   2111 	Fst_mode     Mode_t
   2112 	Fst_padding0 X__int16_t
   2113 	Fst_uid      Uid_t
   2114 	Fst_gid      Gid_t
   2115 	Fst_padding1 X__int32_t
   2116 	Fst_rdev     Dev_t
   2117 	Fst_atim     struct {
   2118 		Ftv_sec      Time_t
   2119 		Ftv_nsec     int32
   2120 		F__ccgo_pad1 [4]byte
   2121 	}
   2122 	Fst_mtim struct {
   2123 		Ftv_sec      Time_t
   2124 		Ftv_nsec     int32
   2125 		F__ccgo_pad1 [4]byte
   2126 	}
   2127 	Fst_ctim struct {
   2128 		Ftv_sec      Time_t
   2129 		Ftv_nsec     int32
   2130 		F__ccgo_pad1 [4]byte
   2131 	}
   2132 	Fst_birthtim struct {
   2133 		Ftv_sec      Time_t
   2134 		Ftv_nsec     int32
   2135 		F__ccgo_pad1 [4]byte
   2136 	}
   2137 	Fst_size    Off_t
   2138 	Fst_blocks  Blkcnt_t
   2139 	Fst_blksize Blksize_t
   2140 	Fst_flags   Fflags_t
   2141 	Fst_gen     X__uint64_t
   2142 	Fst_spare   [10]X__uint64_t
   2143 } /* stat.h:160:1 */
   2144 
   2145 // -
   2146 // SPDX-License-Identifier: BSD-3-Clause
   2147 //
   2148 // Copyright (c) 1989, 1993
   2149 //	The Regents of the University of California.  All rights reserved.
   2150 //
   2151 // Redistribution and use in source and binary forms, with or without
   2152 // modification, are permitted provided that the following conditions
   2153 // are met:
   2154 // 1. Redistributions of source code must retain the above copyright
   2155 //    notice, this list of conditions and the following disclaimer.
   2156 // 2. Redistributions in binary form must reproduce the above copyright
   2157 //    notice, this list of conditions and the following disclaimer in the
   2158 //    documentation and/or other materials provided with the distribution.
   2159 // 3. Neither the name of the University nor the names of its contributors
   2160 //    may be used to endorse or promote products derived from this software
   2161 //    without specific prior written permission.
   2162 //
   2163 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2164 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2165 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2166 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2167 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2168 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2169 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2170 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2171 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2172 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2173 // SUCH DAMAGE.
   2174 //
   2175 //	@(#)fts.h	8.3 (Berkeley) 8/14/94
   2176 // $FreeBSD$
   2177 
   2178 // -
   2179 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   2180 //
   2181 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   2182 // All rights reserved.
   2183 //
   2184 // Redistribution and use in source and binary forms, with or without
   2185 // modification, are permitted provided that the following conditions
   2186 // are met:
   2187 // 1. Redistributions of source code must retain the above copyright
   2188 //    notice, this list of conditions and the following disclaimer.
   2189 // 2. Redistributions in binary form must reproduce the above copyright
   2190 //    notice, this list of conditions and the following disclaimer in the
   2191 //    documentation and/or other materials provided with the distribution.
   2192 //
   2193 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   2194 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2195 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2196 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   2197 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2198 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2199 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2200 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2201 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2202 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2203 // SUCH DAMAGE.
   2204 //
   2205 // $FreeBSD$
   2206 
   2207 type X_ftsent = struct {
   2208 	Ffts_cycle   uintptr
   2209 	Ffts_parent  uintptr
   2210 	Ffts_link    uintptr
   2211 	F__ccgo_pad1 [4]byte
   2212 	Ffts_number  int64
   2213 	Ffts_pointer uintptr
   2214 	Ffts_accpath uintptr
   2215 	Ffts_path    uintptr
   2216 	Ffts_errno   int32
   2217 	Ffts_symfd   int32
   2218 	Ffts_pathlen X__size_t
   2219 	Ffts_namelen X__size_t
   2220 	F__ccgo_pad2 [4]byte
   2221 	Ffts_ino     X__ino_t
   2222 	Ffts_dev     X__dev_t
   2223 	Ffts_nlink   X__nlink_t
   2224 	Ffts_level   int32
   2225 	Ffts_info    int32
   2226 	Ffts_flags   uint32
   2227 	Ffts_instr   int32
   2228 	Ffts_statp   uintptr
   2229 	Ffts_name    uintptr
   2230 	Ffts_fts     uintptr
   2231 	F__ccgo_pad3 [4]byte
   2232 } /* fts.h:41:2 */
   2233 
   2234 // -
   2235 // SPDX-License-Identifier: BSD-3-Clause
   2236 //
   2237 // Copyright (c) 1989, 1993
   2238 //	The Regents of the University of California.  All rights reserved.
   2239 //
   2240 // Redistribution and use in source and binary forms, with or without
   2241 // modification, are permitted provided that the following conditions
   2242 // are met:
   2243 // 1. Redistributions of source code must retain the above copyright
   2244 //    notice, this list of conditions and the following disclaimer.
   2245 // 2. Redistributions in binary form must reproduce the above copyright
   2246 //    notice, this list of conditions and the following disclaimer in the
   2247 //    documentation and/or other materials provided with the distribution.
   2248 // 3. Neither the name of the University nor the names of its contributors
   2249 //    may be used to endorse or promote products derived from this software
   2250 //    without specific prior written permission.
   2251 //
   2252 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   2253 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2254 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2255 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   2256 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2257 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2258 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2259 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2260 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2261 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2262 // SUCH DAMAGE.
   2263 //
   2264 //	@(#)fts.h	8.3 (Berkeley) 8/14/94
   2265 // $FreeBSD$
   2266 
   2267 // -
   2268 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   2269 //
   2270 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   2271 // All rights reserved.
   2272 //
   2273 // Redistribution and use in source and binary forms, with or without
   2274 // modification, are permitted provided that the following conditions
   2275 // are met:
   2276 // 1. Redistributions of source code must retain the above copyright
   2277 //    notice, this list of conditions and the following disclaimer.
   2278 // 2. Redistributions in binary form must reproduce the above copyright
   2279 //    notice, this list of conditions and the following disclaimer in the
   2280 //    documentation and/or other materials provided with the distribution.
   2281 //
   2282 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   2283 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   2284 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   2285 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   2286 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   2287 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   2288 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   2289 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   2290 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   2291 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   2292 // SUCH DAMAGE.
   2293 //
   2294 // $FreeBSD$
   2295 
   2296 type FTS = struct {
   2297 	Ffts_cur       uintptr
   2298 	Ffts_child     uintptr
   2299 	Ffts_array     uintptr
   2300 	F__ccgo_pad1   [4]byte
   2301 	Ffts_dev       X__dev_t
   2302 	Ffts_path      uintptr
   2303 	Ffts_rfd       int32
   2304 	Ffts_pathlen   X__size_t
   2305 	Ffts_nitems    X__size_t
   2306 	Ffts_compar    uintptr
   2307 	Ffts_options   int32
   2308 	Ffts_clientptr uintptr
   2309 	F__ccgo_pad2   [4]byte
   2310 } /* fts.h:66:3 */
   2311 
   2312 type FTSENT = X_ftsent /* fts.h:120:3 */
   2313 
   2314 var _ uint8 /* gen.c:5:13: */