gtsocial-umbx

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

uuid_freebsd_386.go (71782B)


      1 // Code generated by 'ccgo uuid/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 uuid/uuid_freebsd_386.go -pkgname uuid', DO NOT EDIT.
      2 
      3 package uuid
      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 	BIG_ENDIAN                 = 4321 // _endian.h:70:1:
     19 	BYTE_ORDER                 = 1234 // _endian.h:72:1:
     20 	FD_SETSIZE                 = 1024 // select.h:61:1:
     21 	LITTLE_ENDIAN              = 1234 // _endian.h:69:1:
     22 	PDP_ENDIAN                 = 3412 // _endian.h:71:1:
     23 	X_ACCMODE_T_DECLARED       = 0    // types.h:166:1:
     24 	X_BIG_ENDIAN               = 4321 // _endian.h:47:1:
     25 	X_BLKCNT_T_DECLARED        = 0    // types.h:90:1:
     26 	X_BLKSIZE_T_DECLARED       = 0    // types.h:81:1:
     27 	X_BYTE_ORDER               = 1234 // _endian.h:40:1:
     28 	X_CAP_IOCTL_T_DECLARED     = 0    // types.h:243:1:
     29 	X_CAP_RIGHTS_T_DECLARED    = 0    // types.h:248:1:
     30 	X_CLOCKID_T_DECLARED       = 0    // types.h:100:1:
     31 	X_CLOCK_T_DECLARED         = 0    // types.h:95:1:
     32 	X_DEV_T_DECLARED           = 0    // types.h:108:1:
     33 	X_FFLAGS_T_DECLARED        = 0    // types.h:113:1:
     34 	X_FILE_OFFSET_BITS         = 64   // <builtin>:25:1:
     35 	X_FSBLKCNT_T_DECLARED      = 0    // types.h:121:1:
     36 	X_FTRUNCATE_DECLARED       = 0    // types.h:417:1:
     37 	X_GID_T_DECLARED           = 0    // types.h:126:1:
     38 	X_ID_T_DECLARED            = 0    // types.h:141:1:
     39 	X_ILP32                    = 1    // <predefined>:1:1:
     40 	X_INO_T_DECLARED           = 0    // types.h:146:1:
     41 	X_INT16_T_DECLARED         = 0    // _stdint.h:42:1:
     42 	X_INT32_T_DECLARED         = 0    // _stdint.h:47:1:
     43 	X_INT64_T_DECLARED         = 0    // _stdint.h:52:1:
     44 	X_INT8_T_DECLARED          = 0    // _stdint.h:37:1:
     45 	X_INTMAX_T_DECLARED        = 0    // _stdint.h:85:1:
     46 	X_INTPTR_T_DECLARED        = 0    // _stdint.h:77:1:
     47 	X_IN_ADDR_T_DECLARED       = 0    // types.h:131:1:
     48 	X_IN_PORT_T_DECLARED       = 0    // types.h:136:1:
     49 	X_KEY_T_DECLARED           = 0    // types.h:151:1:
     50 	X_LITTLE_ENDIAN            = 1234 // _endian.h:46:1:
     51 	X_LSEEK_DECLARED           = 0    // types.h:421:1:
     52 	X_LWPID_T_DECLARED         = 0    // types.h:156:1:
     53 	X_MACHINE_ENDIAN_H_        = 0    // endian.h:36:1:
     54 	X_MACHINE__LIMITS_H_       = 0    // _limits.h:36:1:
     55 	X_MACHINE__TYPES_H_        = 0    // _types.h:42:1:
     56 	X_MMAP_DECLARED            = 0    // types.h:425:1:
     57 	X_MODE_T_DECLARED          = 0    // types.h:161:1:
     58 	X_MQD_T_DECLARED           = 0    // types.h:227:1:
     59 	X_NLINK_T_DECLARED         = 0    // types.h:171:1:
     60 	X_Nonnull                  = 0    // cdefs.h:790:1:
     61 	X_Null_unspecified         = 0    // cdefs.h:792:1:
     62 	X_Nullable                 = 0    // cdefs.h:791:1:
     63 	X_OFF64_T_DECLARED         = 0    // types.h:181:1:
     64 	X_OFF_T_DECLARED           = 0    // types.h:176:1:
     65 	X_PDP_ENDIAN               = 3412 // _endian.h:48:1:
     66 	X_PID_T_DECLARED           = 0    // types.h:186:1:
     67 	X_PTHREAD_T_DECLARED       = 0    // _pthreadtypes.h:68:1:
     68 	X_QUAD_HIGHWORD            = 1    // _endian.h:55:1:
     69 	X_QUAD_LOWWORD             = 0    // _endian.h:56:1:
     70 	X_RLIM_T_DECLARED          = 0    // types.h:193:1:
     71 	X_SELECT_DECLARED          = 0    // select.h:103:1:
     72 	X_SIGSET_T_DECLARED        = 0    // select.h:50:1:
     73 	X_SIG_MAXSIG               = 128  // _sigset.h:47:1:
     74 	X_SIG_WORDS                = 4    // _sigset.h:46:1:
     75 	X_SIZE_T_DECLARED          = 0    // types.h:202:1:
     76 	X_SSIZE_T_DECLARED         = 0    // types.h:207:1:
     77 	X_SUSECONDS_T_DECLARED     = 0    // types.h:212:1:
     78 	X_SYS_CDEFS_H_             = 0    // cdefs.h:39:1:
     79 	X_SYS_SELECT_H_            = 0    // select.h:35:1:
     80 	X_SYS_TIMESPEC_H_          = 0    // timespec.h:37:1:
     81 	X_SYS_TYPES_H_             = 0    // types.h:41:1:
     82 	X_SYS_UUID_H_              = 0    // uuid.h:32:1:
     83 	X_SYS__ENDIAN_H_           = 0    // _endian.h:33:1:
     84 	X_SYS__PTHREADTYPES_H_     = 0    // _pthreadtypes.h:39:1:
     85 	X_SYS__SIGSET_H_           = 0    // _sigset.h:41:1:
     86 	X_SYS__STDINT_H_           = 0    // _stdint.h:33:1:
     87 	X_SYS__TIMESPEC_H_         = 0    // _timespec.h:37:1:
     88 	X_SYS__TIMEVAL_H_          = 0    // _timeval.h:32:1:
     89 	X_SYS__TYPES_H_            = 0    // _types.h:32:1:
     90 	X_TIMER_T_DECLARED         = 0    // types.h:222:1:
     91 	X_TIME_T_DECLARED          = 0    // types.h:217:1:
     92 	X_TRUNCATE_DECLARED        = 0    // types.h:429:1:
     93 	X_UID_T_DECLARED           = 0    // types.h:234:1:
     94 	X_UINT16_T_DECLARED        = 0    // _stdint.h:62:1:
     95 	X_UINT32_T_DECLARED        = 0    // _stdint.h:67:1:
     96 	X_UINT64_T_DECLARED        = 0    // _stdint.h:72:1:
     97 	X_UINT8_T_DECLARED         = 0    // _stdint.h:57:1:
     98 	X_UINTMAX_T_DECLARED       = 0    // _stdint.h:89:1:
     99 	X_UINTPTR_T_DECLARED       = 0    // _stdint.h:81:1:
    100 	X_USECONDS_T_DECLARED      = 0    // types.h:239:1:
    101 	X_UUID_H_                  = 0    // uuid.h:33:1:
    102 	X_UUID_NODE_LEN            = 6    // uuid.h:37:1:
    103 	I386                       = 1    // <predefined>:335:1:
    104 	Unix                       = 1    // <predefined>:336:1:
    105 	Uuid_s_bad_version         = 1    // uuid.h:46:1:
    106 	Uuid_s_invalid_string_uuid = 2    // uuid.h:47:1:
    107 	Uuid_s_no_memory           = 3    // uuid.h:48:1:
    108 	Uuid_s_ok                  = 0    // uuid.h:45:1:
    109 )
    110 
    111 type Ptrdiff_t = int32 /* <builtin>:3:26 */
    112 
    113 type Size_t = uint32 /* <builtin>:9:23 */
    114 
    115 type Wchar_t = int32 /* <builtin>:15:24 */
    116 
    117 type X__builtin_va_list = uintptr /* <builtin>:46:14 */
    118 type X__float128 = float64        /* <builtin>:47:21 */
    119 
    120 // -
    121 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    122 //
    123 // Copyright (c) 2002,2005 Marcel Moolenaar
    124 // Copyright (c) 2002 Hiten Mahesh Pandya
    125 // All rights reserved.
    126 //
    127 // Redistribution and use in source and binary forms, with or without
    128 // modification, are permitted provided that the following conditions
    129 // are met:
    130 // 1. Redistributions of source code must retain the above copyright
    131 //    notice, this list of conditions and the following disclaimer.
    132 // 2. Redistributions in binary form must reproduce the above copyright
    133 //    notice, this list of conditions and the following disclaimer in the
    134 //    documentation and/or other materials provided with the distribution.
    135 //
    136 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    137 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    138 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    139 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    140 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    141 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    142 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    143 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    144 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    145 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    146 // SUCH DAMAGE.
    147 //
    148 // $FreeBSD$
    149 
    150 // -
    151 // SPDX-License-Identifier: BSD-3-Clause
    152 //
    153 // Copyright (c) 1982, 1986, 1991, 1993, 1994
    154 //	The Regents of the University of California.  All rights reserved.
    155 // (c) UNIX System Laboratories, Inc.
    156 // All or some portions of this file are derived from material licensed
    157 // to the University of California by American Telephone and Telegraph
    158 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
    159 // the permission of UNIX System Laboratories, Inc.
    160 //
    161 // Redistribution and use in source and binary forms, with or without
    162 // modification, are permitted provided that the following conditions
    163 // are met:
    164 // 1. Redistributions of source code must retain the above copyright
    165 //    notice, this list of conditions and the following disclaimer.
    166 // 2. Redistributions in binary form must reproduce the above copyright
    167 //    notice, this list of conditions and the following disclaimer in the
    168 //    documentation and/or other materials provided with the distribution.
    169 // 3. Neither the name of the University nor the names of its contributors
    170 //    may be used to endorse or promote products derived from this software
    171 //    without specific prior written permission.
    172 //
    173 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    174 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    175 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    176 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    177 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    178 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    179 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    180 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    181 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    182 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    183 // SUCH DAMAGE.
    184 //
    185 //	@(#)types.h	8.6 (Berkeley) 2/19/95
    186 // $FreeBSD$
    187 
    188 // -
    189 // SPDX-License-Identifier: BSD-3-Clause
    190 //
    191 // Copyright (c) 1991, 1993
    192 //	The Regents of the University of California.  All rights reserved.
    193 //
    194 // This code is derived from software contributed to Berkeley by
    195 // Berkeley Software Design, Inc.
    196 //
    197 // Redistribution and use in source and binary forms, with or without
    198 // modification, are permitted provided that the following conditions
    199 // are met:
    200 // 1. Redistributions of source code must retain the above copyright
    201 //    notice, this list of conditions and the following disclaimer.
    202 // 2. Redistributions in binary form must reproduce the above copyright
    203 //    notice, this list of conditions and the following disclaimer in the
    204 //    documentation and/or other materials provided with the distribution.
    205 // 3. Neither the name of the University nor the names of its contributors
    206 //    may be used to endorse or promote products derived from this software
    207 //    without specific prior written permission.
    208 //
    209 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    210 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    211 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    212 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    213 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    214 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    215 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    216 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    217 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    218 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    219 // SUCH DAMAGE.
    220 //
    221 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    222 // $FreeBSD$
    223 
    224 // Testing against Clang-specific extensions.
    225 
    226 // This code has been put in place to help reduce the addition of
    227 // compiler specific defines in FreeBSD code.  It helps to aid in
    228 // having a compiler-agnostic source tree.
    229 
    230 // Compiler memory barriers, specific to gcc and clang.
    231 
    232 // XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
    233 
    234 // Macro to test if we're using a specific version of gcc or later.
    235 
    236 // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
    237 // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
    238 // The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
    239 // mode -- there must be no spaces between its arguments, and for nested
    240 // __CONCAT's, all the __CONCAT's must be at the left.  __CONCAT can also
    241 // concatenate double-quoted strings produced by the __STRING macro, but
    242 // this only works with ANSI C.
    243 //
    244 // __XSTRING is like __STRING, but it expands any macros in its argument
    245 // first.  It is only available with ANSI C.
    246 
    247 // Compiler-dependent macros to help declare dead (non-returning) and
    248 // pure (no side effects) functions, and unused variables.  They are
    249 // null except for versions of gcc that are known to support the features
    250 // properly (old versions of gcc-2 supported the dead and pure features
    251 // in a different (wrong) way).  If we do not provide an implementation
    252 // for a given compiler, let the compile fail if it is told to use
    253 // a feature that we cannot live without.
    254 
    255 // Keywords added in C11.
    256 
    257 // Emulation of C11 _Generic().  Unlike the previously defined C11
    258 // keywords, it is not possible to implement this using exactly the same
    259 // syntax.  Therefore implement something similar under the name
    260 // __generic().  Unlike _Generic(), this macro can only distinguish
    261 // between a single type, so it requires nested invocations to
    262 // distinguish multiple cases.
    263 
    264 // C99 Static array indices in function parameter declarations.  Syntax such as:
    265 // void bar(int myArray[static 10]);
    266 // is allowed in C99 but not in C++.  Define __min_size appropriately so
    267 // headers using it can be compiled in either language.  Use like this:
    268 // void bar(int myArray[__min_size(10)]);
    269 
    270 // XXX: should use `#if __STDC_VERSION__ < 199901'.
    271 
    272 // C++11 exposes a load of C99 stuff
    273 
    274 // GCC 2.95 provides `__restrict' as an extension to C90 to support the
    275 // C99-specific `restrict' type qualifier.  We happen to use `__restrict' as
    276 // a way to define the `restrict' type qualifier without disturbing older
    277 // software that is unaware of C99 keywords.
    278 
    279 // GNU C version 2.96 adds explicit branch prediction so that
    280 // the CPU back-end can hint the processor and also so that
    281 // code blocks can be reordered such that the predicted path
    282 // sees a more linear flow, thus improving cache behavior, etc.
    283 //
    284 // The following two macros provide us with a way to utilize this
    285 // compiler feature.  Use __predict_true() if you expect the expression
    286 // to evaluate to true, and __predict_false() if you expect the
    287 // expression to evaluate to false.
    288 //
    289 // A few notes about usage:
    290 //
    291 //	* Generally, __predict_false() error condition checks (unless
    292 //	  you have some _strong_ reason to do otherwise, in which case
    293 //	  document it), and/or __predict_true() `no-error' condition
    294 //	  checks, assuming you want to optimize for the no-error case.
    295 //
    296 //	* Other than that, if you don't know the likelihood of a test
    297 //	  succeeding from empirical or other `hard' evidence, don't
    298 //	  make predictions.
    299 //
    300 //	* These are meant to be used in places that are run `a lot'.
    301 //	  It is wasteful to make predictions in code that is run
    302 //	  seldomly (e.g. at subsystem initialization time) as the
    303 //	  basic block reordering that this affects can often generate
    304 //	  larger code.
    305 
    306 // We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
    307 // require it.
    308 
    309 // Given the pointer x to the member m of the struct s, return
    310 // a pointer to the containing structure.  When using GCC, we first
    311 // assign pointer x to a local variable, to check that its type is
    312 // compatible with member m.
    313 
    314 // Compiler-dependent macros to declare that functions take printf-like
    315 // or scanf-like arguments.  They are null except for versions of gcc
    316 // that are known to support the features properly (old versions of gcc-2
    317 // didn't permit keeping the keywords out of the application namespace).
    318 
    319 // Compiler-dependent macros that rely on FreeBSD-specific extensions.
    320 
    321 // Embed the rcs id of a source file in the resulting library.  Note that in
    322 // more recent ELF binutils, we use .ident allowing the ID to be stripped.
    323 // Usage:
    324 //	__FBSDID("$FreeBSD$");
    325 
    326 // -
    327 // The following definitions are an extension of the behavior originally
    328 // implemented in <sys/_posix.h>, but with a different level of granularity.
    329 // POSIX.1 requires that the macros we test be defined before any standard
    330 // header file is included.
    331 //
    332 // Here's a quick run-down of the versions:
    333 //  defined(_POSIX_SOURCE)		1003.1-1988
    334 //  _POSIX_C_SOURCE == 1		1003.1-1990
    335 //  _POSIX_C_SOURCE == 2		1003.2-1992 C Language Binding Option
    336 //  _POSIX_C_SOURCE == 199309		1003.1b-1993
    337 //  _POSIX_C_SOURCE == 199506		1003.1c-1995, 1003.1i-1995,
    338 //					and the omnibus ISO/IEC 9945-1: 1996
    339 //  _POSIX_C_SOURCE == 200112		1003.1-2001
    340 //  _POSIX_C_SOURCE == 200809		1003.1-2008
    341 //
    342 // In addition, the X/Open Portability Guide, which is now the Single UNIX
    343 // Specification, defines a feature-test macro which indicates the version of
    344 // that specification, and which subsumes _POSIX_C_SOURCE.
    345 //
    346 // Our macros begin with two underscores to avoid namespace screwage.
    347 
    348 // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
    349 
    350 // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
    351 
    352 // Deal with various X/Open Portability Guides and Single UNIX Spec.
    353 
    354 // Deal with all versions of POSIX.  The ordering relative to the tests above is
    355 // important.
    356 // -
    357 // Deal with _ANSI_SOURCE:
    358 // If it is defined, and no other compilation environment is explicitly
    359 // requested, then define our internal feature-test macros to zero.  This
    360 // makes no difference to the preprocessor (undefined symbols in preprocessing
    361 // expressions are defined to have value zero), but makes it more convenient for
    362 // a test program to print out the values.
    363 //
    364 // If a program mistakenly defines _ANSI_SOURCE and some other macro such as
    365 // _POSIX_C_SOURCE, we will assume that it wants the broader compilation
    366 // environment (and in fact we will never get here).
    367 
    368 // User override __EXT1_VISIBLE
    369 
    370 // Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
    371 // translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
    372 
    373 // Nullability qualifiers: currently only supported by Clang.
    374 
    375 // Type Safety Checking
    376 //
    377 // Clang provides additional attributes to enable checking type safety
    378 // properties that cannot be enforced by the C type system.
    379 
    380 // Lock annotations.
    381 //
    382 // Clang provides support for doing basic thread-safety tests at
    383 // compile-time, by marking which locks will/should be held when
    384 // entering/leaving a functions.
    385 //
    386 // Furthermore, it is also possible to annotate variables and structure
    387 // members to enforce that they are only accessed when certain locks are
    388 // held.
    389 
    390 // Structure implements a lock.
    391 
    392 // Function acquires an exclusive or shared lock.
    393 
    394 // Function attempts to acquire an exclusive or shared lock.
    395 
    396 // Function releases a lock.
    397 
    398 // Function asserts that an exclusive or shared lock is held.
    399 
    400 // Function requires that an exclusive or shared lock is or is not held.
    401 
    402 // Function should not be analyzed.
    403 
    404 // Function or variable should not be sanitized, e.g., by AddressSanitizer.
    405 // GCC has the nosanitize attribute, but as a function attribute only, and
    406 // warns on use as a variable attribute.
    407 
    408 // Guard variables and structure members by lock.
    409 
    410 // Alignment builtins for better type checking and improved code generation.
    411 // Provide fallback versions for other compilers (GCC/Clang < 10):
    412 
    413 // Machine type dependent parameters.
    414 // -
    415 // This file is in the public domain.
    416 // $FreeBSD$
    417 
    418 // -
    419 // SPDX-License-Identifier: BSD-3-Clause
    420 //
    421 // Copyright (c) 1987, 1991 Regents of the University of California.
    422 // All rights reserved.
    423 //
    424 // Redistribution and use in source and binary forms, with or without
    425 // modification, are permitted provided that the following conditions
    426 // are met:
    427 // 1. Redistributions of source code must retain the above copyright
    428 //    notice, this list of conditions and the following disclaimer.
    429 // 2. Redistributions in binary form must reproduce the above copyright
    430 //    notice, this list of conditions and the following disclaimer in the
    431 //    documentation and/or other materials provided with the distribution.
    432 // 3. Neither the name of the University nor the names of its contributors
    433 //    may be used to endorse or promote products derived from this software
    434 //    without specific prior written permission.
    435 //
    436 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    437 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    438 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    439 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    440 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    441 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    442 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    443 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    444 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    445 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    446 // SUCH DAMAGE.
    447 //
    448 //	@(#)endian.h	7.8 (Berkeley) 4/3/91
    449 // $FreeBSD$
    450 
    451 // -
    452 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    453 //
    454 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
    455 // All rights reserved.
    456 //
    457 // Redistribution and use in source and binary forms, with or without
    458 // modification, are permitted provided that the following conditions
    459 // are met:
    460 // 1. Redistributions of source code must retain the above copyright
    461 //    notice, this list of conditions and the following disclaimer.
    462 // 2. Redistributions in binary form must reproduce the above copyright
    463 //    notice, this list of conditions and the following disclaimer in the
    464 //    documentation and/or other materials provided with the distribution.
    465 //
    466 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    467 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    468 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    469 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    470 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    471 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    472 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    473 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    474 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    475 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    476 // SUCH DAMAGE.
    477 //
    478 // $FreeBSD$
    479 
    480 // -
    481 // SPDX-License-Identifier: BSD-3-Clause
    482 //
    483 // Copyright (c) 1991, 1993
    484 //	The Regents of the University of California.  All rights reserved.
    485 //
    486 // This code is derived from software contributed to Berkeley by
    487 // Berkeley Software Design, Inc.
    488 //
    489 // Redistribution and use in source and binary forms, with or without
    490 // modification, are permitted provided that the following conditions
    491 // are met:
    492 // 1. Redistributions of source code must retain the above copyright
    493 //    notice, this list of conditions and the following disclaimer.
    494 // 2. Redistributions in binary form must reproduce the above copyright
    495 //    notice, this list of conditions and the following disclaimer in the
    496 //    documentation and/or other materials provided with the distribution.
    497 // 3. Neither the name of the University nor the names of its contributors
    498 //    may be used to endorse or promote products derived from this software
    499 //    without specific prior written permission.
    500 //
    501 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    502 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    503 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    504 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    505 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    506 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    507 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    508 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    509 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    510 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    511 // SUCH DAMAGE.
    512 //
    513 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    514 // $FreeBSD$
    515 
    516 // -
    517 // This file is in the public domain.
    518 // $FreeBSD$
    519 
    520 // -
    521 // SPDX-License-Identifier: BSD-4-Clause
    522 //
    523 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
    524 // Copyright (c) 1990, 1993
    525 //	The Regents of the University of California.  All rights reserved.
    526 //
    527 // Redistribution and use in source and binary forms, with or without
    528 // modification, are permitted provided that the following conditions
    529 // are met:
    530 // 1. Redistributions of source code must retain the above copyright
    531 //    notice, this list of conditions and the following disclaimer.
    532 // 2. Redistributions in binary form must reproduce the above copyright
    533 //    notice, this list of conditions and the following disclaimer in the
    534 //    documentation and/or other materials provided with the distribution.
    535 // 3. All advertising materials mentioning features or use of this software
    536 //    must display the following acknowledgement:
    537 //	This product includes software developed by the University of
    538 //	California, Berkeley and its contributors.
    539 // 4. Neither the name of the University nor the names of its contributors
    540 //    may be used to endorse or promote products derived from this software
    541 //    without specific prior written permission.
    542 //
    543 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    544 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    545 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    546 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    547 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    548 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    549 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    550 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    551 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    552 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    553 // SUCH DAMAGE.
    554 //
    555 //	From: @(#)ansi.h	8.2 (Berkeley) 1/4/94
    556 //	From: @(#)types.h	8.3 (Berkeley) 1/5/94
    557 // $FreeBSD$
    558 
    559 // -
    560 // This file is in the public domain.
    561 // $FreeBSD$
    562 
    563 // -
    564 // SPDX-License-Identifier: BSD-3-Clause
    565 //
    566 // Copyright (c) 1988, 1993
    567 //	The Regents of the University of California.  All rights reserved.
    568 //
    569 // Redistribution and use in source and binary forms, with or without
    570 // modification, are permitted provided that the following conditions
    571 // are met:
    572 // 1. Redistributions of source code must retain the above copyright
    573 //    notice, this list of conditions and the following disclaimer.
    574 // 2. Redistributions in binary form must reproduce the above copyright
    575 //    notice, this list of conditions and the following disclaimer in the
    576 //    documentation and/or other materials provided with the distribution.
    577 // 3. Neither the name of the University nor the names of its contributors
    578 //    may be used to endorse or promote products derived from this software
    579 //    without specific prior written permission.
    580 //
    581 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    582 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    583 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    584 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    585 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    586 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    587 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    588 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    589 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    590 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    591 // SUCH DAMAGE.
    592 //
    593 //	@(#)limits.h	8.3 (Berkeley) 1/4/94
    594 // $FreeBSD$
    595 
    596 // According to ANSI (section 2.2.4.2), the values below must be usable by
    597 // #if preprocessing directives.  Additionally, the expression must have the
    598 // same type as would an expression that is an object of the corresponding
    599 // type converted according to the integral promotions.  The subtraction for
    600 // INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
    601 // unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
    602 
    603 // max value for an unsigned long long
    604 
    605 // Minimum signal stack size.
    606 
    607 // Basic types upon which most other types are built.
    608 type X__int8_t = int8     /* _types.h:55:22 */
    609 type X__uint8_t = uint8   /* _types.h:56:24 */
    610 type X__int16_t = int16   /* _types.h:57:17 */
    611 type X__uint16_t = uint16 /* _types.h:58:25 */
    612 type X__int32_t = int32   /* _types.h:59:15 */
    613 type X__uint32_t = uint32 /* _types.h:60:23 */
    614 
    615 type X__int64_t = int64 /* _types.h:66:20 */
    616 
    617 type X__uint64_t = uint64 /* _types.h:68:28 */
    618 
    619 // Standard type definitions.
    620 type X__clock_t = uint32             /* _types.h:84:23 */
    621 type X__critical_t = X__int32_t      /* _types.h:85:19 */
    622 type X__double_t = float64           /* _types.h:87:21 */
    623 type X__float_t = float64            /* _types.h:88:21 */
    624 type X__intfptr_t = X__int32_t       /* _types.h:90:19 */
    625 type X__intptr_t = X__int32_t        /* _types.h:91:19 */
    626 type X__intmax_t = X__int64_t        /* _types.h:93:19 */
    627 type X__int_fast8_t = X__int32_t     /* _types.h:94:19 */
    628 type X__int_fast16_t = X__int32_t    /* _types.h:95:19 */
    629 type X__int_fast32_t = X__int32_t    /* _types.h:96:19 */
    630 type X__int_fast64_t = X__int64_t    /* _types.h:97:19 */
    631 type X__int_least8_t = X__int8_t     /* _types.h:98:18 */
    632 type X__int_least16_t = X__int16_t   /* _types.h:99:19 */
    633 type X__int_least32_t = X__int32_t   /* _types.h:100:19 */
    634 type X__int_least64_t = X__int64_t   /* _types.h:101:19 */
    635 type X__ptrdiff_t = X__int32_t       /* _types.h:112:19 */
    636 type X__register_t = X__int32_t      /* _types.h:113:19 */
    637 type X__segsz_t = X__int32_t         /* _types.h:114:19 */
    638 type X__size_t = X__uint32_t         /* _types.h:115:20 */
    639 type X__ssize_t = X__int32_t         /* _types.h:116:19 */
    640 type X__time_t = X__int32_t          /* _types.h:117:19 */
    641 type X__uintfptr_t = X__uint32_t     /* _types.h:118:20 */
    642 type X__uintptr_t = X__uint32_t      /* _types.h:119:20 */
    643 type X__uintmax_t = X__uint64_t      /* _types.h:121:20 */
    644 type X__uint_fast8_t = X__uint32_t   /* _types.h:122:20 */
    645 type X__uint_fast16_t = X__uint32_t  /* _types.h:123:20 */
    646 type X__uint_fast32_t = X__uint32_t  /* _types.h:124:20 */
    647 type X__uint_fast64_t = X__uint64_t  /* _types.h:125:20 */
    648 type X__uint_least8_t = X__uint8_t   /* _types.h:126:19 */
    649 type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
    650 type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
    651 type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
    652 type X__u_register_t = X__uint32_t   /* _types.h:136:20 */
    653 type X__vm_offset_t = X__uint32_t    /* _types.h:137:20 */
    654 type X__vm_paddr_t = X__uint64_t     /* _types.h:138:20 */
    655 type X__vm_size_t = X__uint32_t      /* _types.h:139:20 */
    656 type X___wchar_t = int32             /* _types.h:141:14 */
    657 
    658 // Standard type definitions.
    659 type X__blksize_t = X__int32_t   /* _types.h:40:19 */ // file block size
    660 type X__blkcnt_t = X__int64_t    /* _types.h:41:19 */ // file block count
    661 type X__clockid_t = X__int32_t   /* _types.h:42:19 */ // clock_gettime()...
    662 type X__fflags_t = X__uint32_t   /* _types.h:43:20 */ // file flags
    663 type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
    664 type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
    665 type X__gid_t = X__uint32_t      /* _types.h:46:20 */
    666 type X__id_t = X__int64_t        /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
    667 type X__ino_t = X__uint64_t      /* _types.h:48:20 */ // inode number
    668 type X__key_t = int32            /* _types.h:49:15 */ // IPC key (for Sys V IPC)
    669 type X__lwpid_t = X__int32_t     /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
    670 type X__mode_t = X__uint16_t     /* _types.h:51:20 */ // permissions
    671 type X__accmode_t = int32        /* _types.h:52:14 */ // access permissions
    672 type X__nl_item = int32          /* _types.h:53:14 */
    673 type X__nlink_t = X__uint64_t    /* _types.h:54:20 */ // link count
    674 type X__off_t = X__int64_t       /* _types.h:55:19 */ // file offset
    675 type X__off64_t = X__int64_t     /* _types.h:56:19 */ // file offset (alias)
    676 type X__pid_t = X__int32_t       /* _types.h:57:19 */ // process [group]
    677 type X__rlim_t = X__int64_t      /* _types.h:58:19 */ // resource limit - intentionally
    678 // signed, because of legacy code
    679 // that uses -1 for RLIM_INFINITY
    680 type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
    681 type X__socklen_t = X__uint32_t  /* _types.h:62:20 */
    682 type X__suseconds_t = int32      /* _types.h:63:15 */ // microseconds (signed)
    683 type X__timer_t = uintptr        /* _types.h:64:24 */ // timer_gettime()...
    684 type X__mqd_t = uintptr          /* _types.h:65:21 */ // mq_open()...
    685 type X__uid_t = X__uint32_t      /* _types.h:66:20 */
    686 type X__useconds_t = uint32      /* _types.h:67:22 */ // microseconds (unsigned)
    687 type X__cpuwhich_t = int32       /* _types.h:68:14 */ // which parameter for cpuset.
    688 type X__cpulevel_t = int32       /* _types.h:69:14 */ // level parameter for cpuset.
    689 type X__cpusetid_t = int32       /* _types.h:70:14 */ // cpuset identifier.
    690 type X__daddr_t = X__int64_t     /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
    691 
    692 // Unusual type definitions.
    693 // rune_t is declared to be an “int” instead of the more natural
    694 // “unsigned long” or “long”.  Two things are happening here.  It is not
    695 // unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
    696 // it looks like 10646 will be a 31 bit standard.  This means that if your
    697 // ints cannot hold 32 bits, you will be in trouble.  The reason an int was
    698 // chosen over a long is that the is*() and to*() routines take ints (says
    699 // ANSI C), but they use __ct_rune_t instead of int.
    700 //
    701 // NOTE: rune_t is not covered by ANSI nor other standards, and should not
    702 // be instantiated outside of lib/libc/locale.  Use wchar_t.  wint_t and
    703 // rune_t must be the same type.  Also, wint_t should be able to hold all
    704 // members of the largest character set plus one extra value (WEOF), and
    705 // must be at least 16 bits.
    706 type X__ct_rune_t = int32     /* _types.h:91:14 */ // arg type for ctype funcs
    707 type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
    708 type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
    709 
    710 // Clang already provides these types as built-ins, but only in C++ mode.
    711 type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
    712 type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
    713 // In C++11, char16_t and char32_t are built-in types.
    714 
    715 type X__max_align_t = struct {
    716 	F__max_align1 int64
    717 	F__max_align2 float64
    718 } /* _types.h:111:3 */
    719 
    720 type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
    721 
    722 type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
    723 
    724 // mbstate_t is an opaque object to keep conversion state during multibyte
    725 // stream conversions.
    726 type X__mbstate_t = struct {
    727 	F__ccgo_pad1 [0]uint32
    728 	F__mbstate8  [128]int8
    729 } /* _types.h:124:3 */
    730 
    731 type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
    732 
    733 // Types for varargs. These are all provided by builtin types these
    734 // days, so centralize their definition.
    735 type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
    736 type X__gnuc_va_list = X__va_list    /* _types.h:140:20 */
    737 type Pthread_once = struct {
    738 	Fstate int32
    739 	Fmutex Pthread_mutex_t
    740 } /* _pthreadtypes.h:52:1 */
    741 
    742 // Primitive system data type definitions required by P1003.1c.
    743 //
    744 // Note that P1003.1c specifies that there are no defined comparison
    745 // or assignment operators for the types pthread_attr_t, pthread_cond_t,
    746 // pthread_condattr_t, pthread_mutex_t, pthread_mutexattr_t.
    747 type Pthread_t = uintptr             /* _pthreadtypes.h:67:26 */
    748 type Pthread_attr_t = uintptr        /* _pthreadtypes.h:70:30 */
    749 type Pthread_mutex_t = uintptr       /* _pthreadtypes.h:71:31 */
    750 type Pthread_mutexattr_t = uintptr   /* _pthreadtypes.h:72:35 */
    751 type Pthread_cond_t = uintptr        /* _pthreadtypes.h:73:30 */
    752 type Pthread_condattr_t = uintptr    /* _pthreadtypes.h:74:34 */
    753 type Pthread_key_t = int32           /* _pthreadtypes.h:75:20 */
    754 type Pthread_once_t = Pthread_once   /* _pthreadtypes.h:76:30 */
    755 type Pthread_rwlock_t = uintptr      /* _pthreadtypes.h:77:32 */
    756 type Pthread_rwlockattr_t = uintptr  /* _pthreadtypes.h:78:35 */
    757 type Pthread_barrier_t = uintptr     /* _pthreadtypes.h:79:33 */
    758 type Pthread_barrierattr_t = uintptr /* _pthreadtypes.h:80:36 */
    759 type Pthread_spinlock_t = uintptr    /* _pthreadtypes.h:81:33 */
    760 
    761 // Additional type definitions:
    762 //
    763 // Note that P1003.1c reserves the prefixes pthread_ and PTHREAD_ for
    764 // use in header symbols.
    765 type Pthread_addr_t = uintptr         /* _pthreadtypes.h:89:14 */
    766 type Pthread_startroutine_t = uintptr /* _pthreadtypes.h:90:14 */
    767 
    768 type U_char = uint8   /* types.h:52:23 */
    769 type U_short = uint16 /* types.h:53:24 */
    770 type U_int = uint32   /* types.h:54:22 */
    771 type U_long = uint32  /* types.h:55:23 */
    772 type Ushort = uint16  /* types.h:57:24 */ // Sys V compatibility
    773 type Uint = uint32    /* types.h:58:22 */ // Sys V compatibility
    774 
    775 // XXX POSIX sized integrals that should appear only in <sys/stdint.h>.
    776 // -
    777 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
    778 //
    779 // Copyright (c) 2011 David E. O'Brien <obrien@FreeBSD.org>
    780 // Copyright (c) 2001 Mike Barcroft <mike@FreeBSD.org>
    781 // All rights reserved.
    782 //
    783 // Redistribution and use in source and binary forms, with or without
    784 // modification, are permitted provided that the following conditions
    785 // are met:
    786 // 1. Redistributions of source code must retain the above copyright
    787 //    notice, this list of conditions and the following disclaimer.
    788 // 2. Redistributions in binary form must reproduce the above copyright
    789 //    notice, this list of conditions and the following disclaimer in the
    790 //    documentation and/or other materials provided with the distribution.
    791 //
    792 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    793 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    794 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    795 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    796 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    797 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    798 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    799 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    800 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    801 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    802 // SUCH DAMAGE.
    803 //
    804 // $FreeBSD$
    805 
    806 type Int8_t = X__int8_t /* _stdint.h:36:19 */
    807 
    808 type Int16_t = X__int16_t /* _stdint.h:41:20 */
    809 
    810 type Int32_t = X__int32_t /* _stdint.h:46:20 */
    811 
    812 type Int64_t = X__int64_t /* _stdint.h:51:20 */
    813 
    814 type Uint8_t = X__uint8_t /* _stdint.h:56:20 */
    815 
    816 type Uint16_t = X__uint16_t /* _stdint.h:61:21 */
    817 
    818 type Uint32_t = X__uint32_t /* _stdint.h:66:21 */
    819 
    820 type Uint64_t = X__uint64_t /* _stdint.h:71:21 */
    821 
    822 type Intptr_t = X__intptr_t   /* _stdint.h:76:21 */
    823 type Uintptr_t = X__uintptr_t /* _stdint.h:80:22 */
    824 type Intmax_t = X__intmax_t   /* _stdint.h:84:21 */
    825 type Uintmax_t = X__uintmax_t /* _stdint.h:88:22 */
    826 
    827 type U_int8_t = X__uint8_t   /* types.h:67:19 */ // unsigned integrals (deprecated)
    828 type U_int16_t = X__uint16_t /* types.h:68:20 */
    829 type U_int32_t = X__uint32_t /* types.h:69:20 */
    830 type U_int64_t = X__uint64_t /* types.h:70:20 */
    831 
    832 type U_quad_t = X__uint64_t /* types.h:72:20 */ // quads (deprecated)
    833 type Quad_t = X__int64_t    /* types.h:73:19 */
    834 type Qaddr_t = uintptr      /* types.h:74:16 */
    835 
    836 type Caddr_t = uintptr   /* types.h:76:14 */ // core address
    837 type C_caddr_t = uintptr /* types.h:77:20 */ // core address, pointer to const
    838 
    839 type Blksize_t = X__blksize_t /* types.h:80:21 */
    840 
    841 type Cpuwhich_t = X__cpuwhich_t /* types.h:84:22 */
    842 type Cpulevel_t = X__cpulevel_t /* types.h:85:22 */
    843 type Cpusetid_t = X__cpusetid_t /* types.h:86:22 */
    844 
    845 type Blkcnt_t = X__blkcnt_t /* types.h:89:20 */
    846 
    847 type Clock_t = X__clock_t /* types.h:94:19 */
    848 
    849 type Clockid_t = X__clockid_t /* types.h:99:21 */
    850 
    851 type Critical_t = X__critical_t /* types.h:103:22 */ // Critical section value
    852 type Daddr_t = X__daddr_t       /* types.h:104:19 */ // disk address
    853 
    854 type Dev_t = X__dev_t /* types.h:107:18 */ // device number or struct cdev
    855 
    856 type Fflags_t = X__fflags_t /* types.h:112:20 */ // file flags
    857 
    858 type Fixpt_t = X__fixpt_t /* types.h:116:19 */ // fixed point number
    859 
    860 type Fsblkcnt_t = X__fsblkcnt_t /* types.h:119:22 */
    861 type Fsfilcnt_t = X__fsfilcnt_t /* types.h:120:22 */
    862 
    863 type Gid_t = X__gid_t /* types.h:125:18 */ // group id
    864 
    865 type In_addr_t = X__uint32_t /* types.h:130:20 */ // base type for internet address
    866 
    867 type In_port_t = X__uint16_t /* types.h:135:20 */
    868 
    869 type Id_t = X__id_t /* types.h:140:17 */ // can hold a uid_t or pid_t
    870 
    871 type Ino_t = X__ino_t /* types.h:145:18 */ // inode number
    872 
    873 type Key_t = X__key_t /* types.h:150:18 */ // IPC key (for Sys V IPC)
    874 
    875 type Lwpid_t = X__lwpid_t /* types.h:155:19 */ // Thread ID (a.k.a. LWP)
    876 
    877 type Mode_t = X__mode_t /* types.h:160:18 */ // permissions
    878 
    879 type Accmode_t = X__accmode_t /* types.h:165:21 */ // access permissions
    880 
    881 type Nlink_t = X__nlink_t /* types.h:170:19 */ // link count
    882 
    883 type Off_t = X__off_t /* types.h:175:18 */ // file offset
    884 
    885 type Off64_t = X__off64_t /* types.h:180:19 */ // file offset (alias)
    886 
    887 type Pid_t = X__pid_t /* types.h:185:18 */ // process id
    888 
    889 type Register_t = X__register_t /* types.h:189:22 */
    890 
    891 type Rlim_t = X__rlim_t /* types.h:192:18 */ // resource limit
    892 
    893 type Sbintime_t = X__int64_t /* types.h:196:19 */
    894 
    895 type Segsz_t = X__segsz_t /* types.h:198:19 */
    896 
    897 type Ssize_t = X__ssize_t /* types.h:206:19 */
    898 
    899 type Suseconds_t = X__suseconds_t /* types.h:211:23 */ // microseconds (signed)
    900 
    901 type Time_t = X__time_t /* types.h:216:18 */
    902 
    903 type Timer_t = X__timer_t /* types.h:221:19 */
    904 
    905 type Mqd_t = X__mqd_t /* types.h:226:17 */
    906 
    907 type U_register_t = X__u_register_t /* types.h:230:24 */
    908 
    909 type Uid_t = X__uid_t /* types.h:233:18 */ // user id
    910 
    911 type Useconds_t = X__useconds_t /* types.h:238:22 */ // microseconds (unsigned)
    912 
    913 type Cap_ioctl_t = uint32 /* types.h:244:23 */
    914 
    915 // Types suitable for exporting physical addresses, virtual addresses
    916 // (pointers), and memory object sizes from the kernel independent of native
    917 // word size.  These should be used in place of vm_paddr_t, (u)intptr_t, and
    918 // size_t in structs which contain such types that are shared with userspace.
    919 type Kpaddr_t = X__uint64_t /* types.h:260:20 */
    920 type Kvaddr_t = X__uint64_t /* types.h:261:20 */
    921 type Ksize_t = X__uint64_t  /* types.h:262:20 */
    922 type Kssize_t = X__int64_t  /* types.h:263:19 */
    923 
    924 type Vm_offset_t = X__vm_offset_t /* types.h:265:23 */
    925 type Vm_ooffset_t = X__uint64_t   /* types.h:266:20 */
    926 type Vm_paddr_t = X__vm_paddr_t   /* types.h:267:22 */
    927 type Vm_pindex_t = X__uint64_t    /* types.h:268:20 */
    928 type Vm_size_t = X__vm_size_t     /* types.h:269:21 */
    929 
    930 type Rman_res_t = X__rman_res_t /* types.h:271:25 */
    931 
    932 // -
    933 // SPDX-License-Identifier: BSD-3-Clause
    934 //
    935 // Copyright (c) 1992, 1993
    936 //	The Regents of the University of California.  All rights reserved.
    937 //
    938 // Redistribution and use in source and binary forms, with or without
    939 // modification, are permitted provided that the following conditions
    940 // are met:
    941 // 1. Redistributions of source code must retain the above copyright
    942 //    notice, this list of conditions and the following disclaimer.
    943 // 2. Redistributions in binary form must reproduce the above copyright
    944 //    notice, this list of conditions and the following disclaimer in the
    945 //    documentation and/or other materials provided with the distribution.
    946 // 3. Neither the name of the University nor the names of its contributors
    947 //    may be used to endorse or promote products derived from this software
    948 //    without specific prior written permission.
    949 //
    950 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    951 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    952 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    953 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    954 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    955 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    956 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    957 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    958 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    959 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    960 // SUCH DAMAGE.
    961 //
    962 // $FreeBSD$
    963 
    964 // -
    965 // SPDX-License-Identifier: BSD-3-Clause
    966 //
    967 // Copyright (c) 1991, 1993
    968 //	The Regents of the University of California.  All rights reserved.
    969 //
    970 // This code is derived from software contributed to Berkeley by
    971 // Berkeley Software Design, Inc.
    972 //
    973 // Redistribution and use in source and binary forms, with or without
    974 // modification, are permitted provided that the following conditions
    975 // are met:
    976 // 1. Redistributions of source code must retain the above copyright
    977 //    notice, this list of conditions and the following disclaimer.
    978 // 2. Redistributions in binary form must reproduce the above copyright
    979 //    notice, this list of conditions and the following disclaimer in the
    980 //    documentation and/or other materials provided with the distribution.
    981 // 3. Neither the name of the University nor the names of its contributors
    982 //    may be used to endorse or promote products derived from this software
    983 //    without specific prior written permission.
    984 //
    985 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    986 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    987 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    988 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    989 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    990 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    991 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    992 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    993 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    994 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    995 // SUCH DAMAGE.
    996 //
    997 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    998 // $FreeBSD$
    999 
   1000 // -
   1001 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1002 //
   1003 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1004 // All rights reserved.
   1005 //
   1006 // Redistribution and use in source and binary forms, with or without
   1007 // modification, are permitted provided that the following conditions
   1008 // are met:
   1009 // 1. Redistributions of source code must retain the above copyright
   1010 //    notice, this list of conditions and the following disclaimer.
   1011 // 2. Redistributions in binary form must reproduce the above copyright
   1012 //    notice, this list of conditions and the following disclaimer in the
   1013 //    documentation and/or other materials provided with the distribution.
   1014 //
   1015 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1016 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1017 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1018 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1019 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1020 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1021 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1022 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1023 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1024 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1025 // SUCH DAMAGE.
   1026 //
   1027 // $FreeBSD$
   1028 
   1029 // -
   1030 // SPDX-License-Identifier: BSD-3-Clause
   1031 //
   1032 // Copyright (c) 1982, 1986, 1989, 1991, 1993
   1033 //	The Regents of the University of California.  All rights reserved.
   1034 // (c) UNIX System Laboratories, Inc.
   1035 // All or some portions of this file are derived from material licensed
   1036 // to the University of California by American Telephone and Telegraph
   1037 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1038 // the permission of UNIX System Laboratories, Inc.
   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 //	@(#)signal.h	8.4 (Berkeley) 5/4/95
   1065 // $FreeBSD$
   1066 
   1067 // sigset_t macros.
   1068 
   1069 type X__sigset = struct{ F__bits [4]X__uint32_t } /* _sigset.h:53:9 */
   1070 
   1071 // -
   1072 // SPDX-License-Identifier: BSD-3-Clause
   1073 //
   1074 // Copyright (c) 1992, 1993
   1075 //	The Regents of the University of California.  All rights reserved.
   1076 //
   1077 // Redistribution and use in source and binary forms, with or without
   1078 // modification, are permitted provided that the following conditions
   1079 // are met:
   1080 // 1. Redistributions of source code must retain the above copyright
   1081 //    notice, this list of conditions and the following disclaimer.
   1082 // 2. Redistributions in binary form must reproduce the above copyright
   1083 //    notice, this list of conditions and the following disclaimer in the
   1084 //    documentation and/or other materials provided with the distribution.
   1085 // 3. Neither the name of the University nor the names of its contributors
   1086 //    may be used to endorse or promote products derived from this software
   1087 //    without specific prior written permission.
   1088 //
   1089 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1090 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1091 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1092 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1093 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1094 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1095 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1096 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1097 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1098 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1099 // SUCH DAMAGE.
   1100 //
   1101 // $FreeBSD$
   1102 
   1103 // -
   1104 // SPDX-License-Identifier: BSD-3-Clause
   1105 //
   1106 // Copyright (c) 1991, 1993
   1107 //	The Regents of the University of California.  All rights reserved.
   1108 //
   1109 // This code is derived from software contributed to Berkeley by
   1110 // Berkeley Software Design, Inc.
   1111 //
   1112 // Redistribution and use in source and binary forms, with or without
   1113 // modification, are permitted provided that the following conditions
   1114 // are met:
   1115 // 1. Redistributions of source code must retain the above copyright
   1116 //    notice, this list of conditions and the following disclaimer.
   1117 // 2. Redistributions in binary form must reproduce the above copyright
   1118 //    notice, this list of conditions and the following disclaimer in the
   1119 //    documentation and/or other materials provided with the distribution.
   1120 // 3. Neither the name of the University nor the names of its contributors
   1121 //    may be used to endorse or promote products derived from this software
   1122 //    without specific prior written permission.
   1123 //
   1124 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1125 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1126 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1127 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1128 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1129 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1130 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1131 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1132 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1133 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1134 // SUCH DAMAGE.
   1135 //
   1136 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1137 // $FreeBSD$
   1138 
   1139 // -
   1140 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1141 //
   1142 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1143 // All rights reserved.
   1144 //
   1145 // Redistribution and use in source and binary forms, with or without
   1146 // modification, are permitted provided that the following conditions
   1147 // are met:
   1148 // 1. Redistributions of source code must retain the above copyright
   1149 //    notice, this list of conditions and the following disclaimer.
   1150 // 2. Redistributions in binary form must reproduce the above copyright
   1151 //    notice, this list of conditions and the following disclaimer in the
   1152 //    documentation and/or other materials provided with the distribution.
   1153 //
   1154 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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 // $FreeBSD$
   1167 
   1168 // -
   1169 // SPDX-License-Identifier: BSD-3-Clause
   1170 //
   1171 // Copyright (c) 1982, 1986, 1989, 1991, 1993
   1172 //	The Regents of the University of California.  All rights reserved.
   1173 // (c) UNIX System Laboratories, Inc.
   1174 // All or some portions of this file are derived from material licensed
   1175 // to the University of California by American Telephone and Telegraph
   1176 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1177 // the permission of UNIX System Laboratories, Inc.
   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 //	@(#)signal.h	8.4 (Berkeley) 5/4/95
   1204 // $FreeBSD$
   1205 
   1206 // sigset_t macros.
   1207 
   1208 type X__sigset_t = X__sigset /* _sigset.h:55:3 */
   1209 
   1210 // -
   1211 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1212 //
   1213 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1214 // All rights reserved.
   1215 //
   1216 // Redistribution and use in source and binary forms, with or without
   1217 // modification, are permitted provided that the following conditions
   1218 // are met:
   1219 // 1. Redistributions of source code must retain the above copyright
   1220 //    notice, this list of conditions and the following disclaimer.
   1221 // 2. Redistributions in binary form must reproduce the above copyright
   1222 //    notice, this list of conditions and the following disclaimer in the
   1223 //    documentation and/or other materials provided with the distribution.
   1224 //
   1225 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1226 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1227 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1228 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1229 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1230 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1231 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1232 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1233 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1234 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1235 // SUCH DAMAGE.
   1236 //
   1237 // $FreeBSD$
   1238 
   1239 // -
   1240 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1241 //
   1242 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1243 // All rights reserved.
   1244 //
   1245 // Redistribution and use in source and binary forms, with or without
   1246 // modification, are permitted provided that the following conditions
   1247 // are met:
   1248 // 1. Redistributions of source code must retain the above copyright
   1249 //    notice, this list of conditions and the following disclaimer.
   1250 // 2. Redistributions in binary form must reproduce the above copyright
   1251 //    notice, this list of conditions and the following disclaimer in the
   1252 //    documentation and/or other materials provided with the distribution.
   1253 //
   1254 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1255 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1256 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1257 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1258 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1259 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1260 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1261 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1262 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1263 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1264 // SUCH DAMAGE.
   1265 //
   1266 // $FreeBSD$
   1267 
   1268 // Structure returned by gettimeofday(2) system call, and used in other calls.
   1269 type Timeval = struct {
   1270 	Ftv_sec  Time_t
   1271 	Ftv_usec Suseconds_t
   1272 } /* _timeval.h:49:1 */
   1273 
   1274 // -
   1275 // SPDX-License-Identifier: BSD-3-Clause
   1276 //
   1277 // Copyright (c) 1982, 1986, 1993
   1278 //	The Regents of the University of California.  All rights reserved.
   1279 //
   1280 // Redistribution and use in source and binary forms, with or without
   1281 // modification, are permitted provided that the following conditions
   1282 // are met:
   1283 // 1. Redistributions of source code must retain the above copyright
   1284 //    notice, this list of conditions and the following disclaimer.
   1285 // 2. Redistributions in binary form must reproduce the above copyright
   1286 //    notice, this list of conditions and the following disclaimer in the
   1287 //    documentation and/or other materials provided with the distribution.
   1288 // 3. Neither the name of the University nor the names of its contributors
   1289 //    may be used to endorse or promote products derived from this software
   1290 //    without specific prior written permission.
   1291 //
   1292 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1293 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1294 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1295 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1296 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1297 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1298 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1299 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1300 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1301 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1302 // SUCH DAMAGE.
   1303 //
   1304 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1305 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1306 //	$FreeBSD$
   1307 
   1308 // -
   1309 // SPDX-License-Identifier: BSD-3-Clause
   1310 //
   1311 // Copyright (c) 1991, 1993
   1312 //	The Regents of the University of California.  All rights reserved.
   1313 //
   1314 // This code is derived from software contributed to Berkeley by
   1315 // Berkeley Software Design, Inc.
   1316 //
   1317 // Redistribution and use in source and binary forms, with or without
   1318 // modification, are permitted provided that the following conditions
   1319 // are met:
   1320 // 1. Redistributions of source code must retain the above copyright
   1321 //    notice, this list of conditions and the following disclaimer.
   1322 // 2. Redistributions in binary form must reproduce the above copyright
   1323 //    notice, this list of conditions and the following disclaimer in the
   1324 //    documentation and/or other materials provided with the distribution.
   1325 // 3. Neither the name of the University nor the names of its contributors
   1326 //    may be used to endorse or promote products derived from this software
   1327 //    without specific prior written permission.
   1328 //
   1329 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1330 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1331 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1332 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1333 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1334 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1335 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1336 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1337 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1338 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1339 // SUCH DAMAGE.
   1340 //
   1341 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1342 // $FreeBSD$
   1343 
   1344 // -
   1345 // SPDX-License-Identifier: BSD-3-Clause
   1346 //
   1347 // Copyright (c) 1982, 1986, 1993
   1348 //	The Regents of the University of California.  All rights reserved.
   1349 //
   1350 // Redistribution and use in source and binary forms, with or without
   1351 // modification, are permitted provided that the following conditions
   1352 // are met:
   1353 // 1. Redistributions of source code must retain the above copyright
   1354 //    notice, this list of conditions and the following disclaimer.
   1355 // 2. Redistributions in binary form must reproduce the above copyright
   1356 //    notice, this list of conditions and the following disclaimer in the
   1357 //    documentation and/or other materials provided with the distribution.
   1358 // 3. Neither the name of the University nor the names of its contributors
   1359 //    may be used to endorse or promote products derived from this software
   1360 //    without specific prior written permission.
   1361 //
   1362 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1363 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1364 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1365 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1366 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1367 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1368 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1369 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1370 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1371 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1372 // SUCH DAMAGE.
   1373 //
   1374 //	@(#)time.h	8.5 (Berkeley) 5/4/95
   1375 // from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp
   1376 //	$FreeBSD$
   1377 
   1378 // -
   1379 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1380 //
   1381 // Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
   1382 // All rights reserved.
   1383 //
   1384 // Redistribution and use in source and binary forms, with or without
   1385 // modification, are permitted provided that the following conditions
   1386 // are met:
   1387 // 1. Redistributions of source code must retain the above copyright
   1388 //    notice, this list of conditions and the following disclaimer.
   1389 // 2. Redistributions in binary form must reproduce the above copyright
   1390 //    notice, this list of conditions and the following disclaimer in the
   1391 //    documentation and/or other materials provided with the distribution.
   1392 //
   1393 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   1394 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1395 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1396 // ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   1397 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1398 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1399 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1400 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1401 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1402 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1403 // SUCH DAMAGE.
   1404 //
   1405 // $FreeBSD$
   1406 
   1407 type Timespec = struct {
   1408 	Ftv_sec  Time_t
   1409 	Ftv_nsec int32
   1410 } /* _timespec.h:46:1 */
   1411 
   1412 // Structure defined by POSIX.1b to be like a itimerval, but with
   1413 // timespecs. Used in the timer_*() system calls.
   1414 type Itimerspec = struct {
   1415 	Fit_interval struct {
   1416 		Ftv_sec  Time_t
   1417 		Ftv_nsec int32
   1418 	}
   1419 	Fit_value struct {
   1420 		Ftv_sec  Time_t
   1421 		Ftv_nsec int32
   1422 	}
   1423 } /* timespec.h:60:1 */
   1424 
   1425 type X__fd_mask = uint32  /* select.h:44:23 */
   1426 type Fd_mask = X__fd_mask /* select.h:46:19 */
   1427 
   1428 type Sigset_t = X__sigset_t /* select.h:51:20 */
   1429 
   1430 // Select uses bit masks of file descriptors in longs.  These macros
   1431 // manipulate such bit fields (the filesystem macros use chars).
   1432 // FD_SETSIZE may be defined by the user, but the default here should
   1433 // be enough for most uses.
   1434 
   1435 type Fd_set1 = struct{ F__fds_bits [32]X__fd_mask } /* select.h:73:9 */
   1436 
   1437 // Select uses bit masks of file descriptors in longs.  These macros
   1438 // manipulate such bit fields (the filesystem macros use chars).
   1439 // FD_SETSIZE may be defined by the user, but the default here should
   1440 // be enough for most uses.
   1441 
   1442 type Fd_set = Fd_set1 /* select.h:75:3 */
   1443 
   1444 // -
   1445 // SPDX-License-Identifier: BSD-2-Clause-FreeBSD
   1446 //
   1447 // Copyright (c) 2002 Marcel Moolenaar
   1448 // All rights reserved.
   1449 //
   1450 // Redistribution and use in source and binary forms, with or without
   1451 // modification, are permitted provided that the following conditions
   1452 // are met:
   1453 //
   1454 // 1. Redistributions of source code must retain the above copyright
   1455 //    notice, this list of conditions and the following disclaimer.
   1456 // 2. Redistributions in binary form must reproduce the above copyright
   1457 //    notice, this list of conditions and the following disclaimer in the
   1458 //    documentation and/or other materials provided with the distribution.
   1459 //
   1460 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   1461 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   1462 // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   1463 // IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   1464 // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   1465 // NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   1466 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   1467 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   1468 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   1469 // THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   1470 //
   1471 // $FreeBSD$
   1472 
   1473 // -
   1474 // SPDX-License-Identifier: BSD-3-Clause
   1475 //
   1476 // Copyright (c) 1982, 1986, 1991, 1993, 1994
   1477 //	The Regents of the University of California.  All rights reserved.
   1478 // (c) UNIX System Laboratories, Inc.
   1479 // All or some portions of this file are derived from material licensed
   1480 // to the University of California by American Telephone and Telegraph
   1481 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1482 // the permission of UNIX System Laboratories, Inc.
   1483 //
   1484 // Redistribution and use in source and binary forms, with or without
   1485 // modification, are permitted provided that the following conditions
   1486 // are met:
   1487 // 1. Redistributions of source code must retain the above copyright
   1488 //    notice, this list of conditions and the following disclaimer.
   1489 // 2. Redistributions in binary form must reproduce the above copyright
   1490 //    notice, this list of conditions and the following disclaimer in the
   1491 //    documentation and/or other materials provided with the distribution.
   1492 // 3. Neither the name of the University nor the names of its contributors
   1493 //    may be used to endorse or promote products derived from this software
   1494 //    without specific prior written permission.
   1495 //
   1496 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1497 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1498 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1499 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1500 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1501 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1502 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1503 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1504 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1505 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1506 // SUCH DAMAGE.
   1507 //
   1508 //	@(#)types.h	8.6 (Berkeley) 2/19/95
   1509 // $FreeBSD$
   1510 
   1511 // Length of a node address (an IEEE 802 address).
   1512 
   1513 // See also:
   1514 //
   1515 //	http://www.opengroup.org/dce/info/draft-leach-uuids-guids-01.txt
   1516 //	http://www.opengroup.org/onlinepubs/009629399/apdxa.htm
   1517 //
   1518 // A DCE 1.1 compatible source representation of UUIDs.
   1519 type Uuid = struct {
   1520 	Ftime_low                  Uint32_t
   1521 	Ftime_mid                  Uint16_t
   1522 	Ftime_hi_and_version       Uint16_t
   1523 	Fclock_seq_hi_and_reserved Uint8_t
   1524 	Fclock_seq_low             Uint8_t
   1525 	Fnode                      [6]Uint8_t
   1526 } /* uuid.h:46:1 */
   1527 
   1528 // XXX namespace pollution?
   1529 type Uuid_t = Uuid /* uuid.h:93:21 */
   1530 
   1531 var _ int8 /* gen.c:2:13: */