gtsocial-umbx

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

fts_freebsd_amd64.go (113238B)


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