github.com/afumu/libc@v0.0.6/stdio/stdio_darwin_amd64.go (about)

     1  // Code generated by 'ccgo stdio/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 stdio/stdio_darwin_amd64.go -pkgname stdio', DO NOT EDIT.
     2  
     3  package stdio
     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  	BUFSIZ                                 = 1024        // stdio.h:103:1:
    19  	EOF                                    = -1          // stdio.h:104:1:
    20  	FILENAME_MAX                           = 1024        // stdio.h:108:1:
    21  	FOPEN_MAX                              = 20          // stdio.h:107:1:
    22  	L_ctermid                              = 1024        // stdio.h:202:1:
    23  	L_tmpnam                               = 1024        // stdio.h:114:1:
    24  	P_tmpdir                               = "/var/tmp/" // stdio.h:112:1:
    25  	RENAME_EXCL                            = 0x00000004  // stdio.h:45:1:
    26  	RENAME_SECLUDE                         = 0x00000001  // stdio.h:43:1:
    27  	RENAME_SWAP                            = 0x00000002  // stdio.h:44:1:
    28  	SEEK_CUR                               = 1           // stdio.h:121:1:
    29  	SEEK_END                               = 2           // stdio.h:124:1:
    30  	SEEK_SET                               = 0           // stdio.h:118:1:
    31  	TMP_MAX                                = 308915776   // stdio.h:115:1:
    32  	X_BSD_I386__TYPES_H_                   = 0           // _types.h:29:1:
    33  	X_BSD_MACHINE_TYPES_H_                 = 0           // types.h:32:1:
    34  	X_BSD_MACHINE__TYPES_H_                = 0           // _types.h:29:1:
    35  	X_CDEFS_H_                             = 0           // cdefs.h:68:1:
    36  	X_CTERMID_H_                           = 0           // _ctermid.h:25:1:
    37  	X_DARWIN_FEATURE_64_BIT_INODE          = 1           // cdefs.h:745:1:
    38  	X_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE = 1           // cdefs.h:771:1:
    39  	X_DARWIN_FEATURE_UNIX_CONFORMANCE      = 3           // cdefs.h:779:1:
    40  	X_FILE_OFFSET_BITS                     = 64          // <builtin>:25:1:
    41  	X_FORTIFY_SOURCE                       = 2           // _types.h:65:1:
    42  	X_FSTDIO                               = 0           // _stdio.h:83:1:
    43  	X_INT16_T                              = 0           // _int16_t.h:29:1:
    44  	X_INT32_T                              = 0           // _int32_t.h:29:1:
    45  	X_INT64_T                              = 0           // _int64_t.h:29:1:
    46  	X_INT8_T                               = 0           // _int8_t.h:29:1:
    47  	X_INTPTR_T                             = 0           // _intptr_t.h:29:1:
    48  	X_IOFBF                                = 0           // stdio.h:99:1:
    49  	X_IOLBF                                = 1           // stdio.h:100:1:
    50  	X_IONBF                                = 2           // stdio.h:101:1:
    51  	X_LP64                                 = 1           // <predefined>:1:1:
    52  	X_MACHTYPES_H_                         = 0           // types.h:67:1:
    53  	X_Nonnull                              = 0           // cdefs.h:243:1:
    54  	X_Null_unspecified                     = 0           // cdefs.h:246:1:
    55  	X_Nullable                             = 0           // cdefs.h:240:1:
    56  	X_OFF_T                                = 0           // _off_t.h:29:1:
    57  	X_SECURE__COMMON_H_                    = 0           // _common.h:25:1:
    58  	X_SECURE__STDIO_H_                     = 0           // _stdio.h:29:1:
    59  	X_SIZE_T                               = 0           // _size_t.h:29:1:
    60  	X_SSIZE_T                              = 0           // _ssize_t.h:29:1:
    61  	X_STDIO_H_                             = 0           // stdio.h:62:1:
    62  	X_SYS_STDIO_H_                         = 0           // stdio.h:30:1:
    63  	X_SYS__PTHREAD_TYPES_H_                = 0           // _pthread_types.h:30:1:
    64  	X_SYS__TYPES_H_                        = 0           // _types.h:30:1:
    65  	X_UINTPTR_T                            = 0           // _uintptr_t.h:29:1:
    66  	X_USE_FORTIFY_LEVEL                    = 2           // _common.h:30:1:
    67  	X_U_INT16_T                            = 0           // _u_int16_t.h:29:1:
    68  	X_U_INT32_T                            = 0           // _u_int32_t.h:29:1:
    69  	X_U_INT64_T                            = 0           // _u_int64_t.h:29:1:
    70  	X_U_INT8_T                             = 0           // _u_int8_t.h:29:1:
    71  	X_VA_LIST_T                            = 0           // _va_list.h:30:1:
    72  )
    73  
    74  type Ptrdiff_t = int64 /* <builtin>:3:26 */
    75  
    76  type Size_t = uint64 /* <builtin>:9:23 */
    77  
    78  type Wchar_t = int32 /* <builtin>:15:24 */
    79  
    80  type X__int128_t = struct {
    81  	Flo int64
    82  	Fhi int64
    83  } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
    84  type X__uint128_t = struct {
    85  	Flo uint64
    86  	Fhi uint64
    87  } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
    88  
    89  type X__builtin_va_list = uintptr /* <builtin>:46:14 */
    90  type X__float128 = float64        /* <builtin>:47:21 */
    91  
    92  var X__darwin_check_fd_set_overflow uintptr /* <builtin>:146:5: */
    93  
    94  // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
    95  //
    96  // @APPLE_LICENSE_HEADER_START@
    97  //
    98  // This file contains Original Code and/or Modifications of Original Code
    99  // as defined in and that are subject to the Apple Public Source License
   100  // Version 2.0 (the 'License'). You may not use this file except in
   101  // compliance with the License. Please obtain a copy of the License at
   102  // http://www.opensource.apple.com/apsl/ and read it before using this
   103  // file.
   104  //
   105  // The Original Code and all software distributed under the License are
   106  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   107  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   108  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   109  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   110  // Please see the License for the specific language governing rights and
   111  // limitations under the License.
   112  //
   113  // @APPLE_LICENSE_HEADER_END@
   114  // -
   115  // Copyright (c) 1990, 1993
   116  //	The Regents of the University of California.  All rights reserved.
   117  //
   118  // This code is derived from software contributed to Berkeley by
   119  // Chris Torek.
   120  //
   121  // Redistribution and use in source and binary forms, with or without
   122  // modification, are permitted provided that the following conditions
   123  // are met:
   124  // 1. Redistributions of source code must retain the above copyright
   125  //    notice, this list of conditions and the following disclaimer.
   126  // 2. Redistributions in binary form must reproduce the above copyright
   127  //    notice, this list of conditions and the following disclaimer in the
   128  //    documentation and/or other materials provided with the distribution.
   129  // 3. All advertising materials mentioning features or use of this software
   130  //    must display the following acknowledgement:
   131  //	This product includes software developed by the University of
   132  //	California, Berkeley and its contributors.
   133  // 4. Neither the name of the University nor the names of its contributors
   134  //    may be used to endorse or promote products derived from this software
   135  //    without specific prior written permission.
   136  //
   137  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   138  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   139  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   140  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   141  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   142  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   143  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   144  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   145  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   146  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   147  // SUCH DAMAGE.
   148  //
   149  //	@(#)stdio.h	8.5 (Berkeley) 4/29/95
   150  
   151  // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
   152  //
   153  // @APPLE_LICENSE_HEADER_START@
   154  //
   155  // This file contains Original Code and/or Modifications of Original Code
   156  // as defined in and that are subject to the Apple Public Source License
   157  // Version 2.0 (the 'License'). You may not use this file except in
   158  // compliance with the License. Please obtain a copy of the License at
   159  // http://www.opensource.apple.com/apsl/ and read it before using this
   160  // file.
   161  //
   162  // The Original Code and all software distributed under the License are
   163  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   164  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   165  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   166  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   167  // Please see the License for the specific language governing rights and
   168  // limitations under the License.
   169  //
   170  // @APPLE_LICENSE_HEADER_END@
   171  // -
   172  // Copyright (c) 1990, 1993
   173  //	The Regents of the University of California.  All rights reserved.
   174  //
   175  // This code is derived from software contributed to Berkeley by
   176  // Chris Torek.
   177  //
   178  // Redistribution and use in source and binary forms, with or without
   179  // modification, are permitted provided that the following conditions
   180  // are met:
   181  // 1. Redistributions of source code must retain the above copyright
   182  //    notice, this list of conditions and the following disclaimer.
   183  // 2. Redistributions in binary form must reproduce the above copyright
   184  //    notice, this list of conditions and the following disclaimer in the
   185  //    documentation and/or other materials provided with the distribution.
   186  // 3. All advertising materials mentioning features or use of this software
   187  //    must display the following acknowledgement:
   188  //	This product includes software developed by the University of
   189  //	California, Berkeley and its contributors.
   190  // 4. Neither the name of the University nor the names of its contributors
   191  //    may be used to endorse or promote products derived from this software
   192  //    without specific prior written permission.
   193  //
   194  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   195  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   196  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   197  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   198  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   199  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   200  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   201  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   202  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   203  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   204  // SUCH DAMAGE.
   205  //
   206  //	@(#)stdio.h	8.5 (Berkeley) 4/29/95
   207  
   208  // Common header for stdio.h and xlocale/_stdio.h
   209  
   210  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
   211  //
   212  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   213  //
   214  // This file contains Original Code and/or Modifications of Original Code
   215  // as defined in and that are subject to the Apple Public Source License
   216  // Version 2.0 (the 'License'). You may not use this file except in
   217  // compliance with the License. The rights granted to you under the License
   218  // may not be used to create, or enable the creation or redistribution of,
   219  // unlawful or unlicensed copies of an Apple operating system, or to
   220  // circumvent, violate, or enable the circumvention or violation of, any
   221  // terms of an Apple operating system software license agreement.
   222  //
   223  // Please obtain a copy of the License at
   224  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   225  //
   226  // The Original Code and all software distributed under the License are
   227  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   228  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   229  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   230  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   231  // Please see the License for the specific language governing rights and
   232  // limitations under the License.
   233  //
   234  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   235  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
   236  // Copyright (c) 1991, 1993
   237  //	The Regents of the University of California.  All rights reserved.
   238  //
   239  // This code is derived from software contributed to Berkeley by
   240  // Berkeley Software Design, Inc.
   241  //
   242  // Redistribution and use in source and binary forms, with or without
   243  // modification, are permitted provided that the following conditions
   244  // are met:
   245  // 1. Redistributions of source code must retain the above copyright
   246  //    notice, this list of conditions and the following disclaimer.
   247  // 2. Redistributions in binary form must reproduce the above copyright
   248  //    notice, this list of conditions and the following disclaimer in the
   249  //    documentation and/or other materials provided with the distribution.
   250  // 3. All advertising materials mentioning features or use of this software
   251  //    must display the following acknowledgement:
   252  //	This product includes software developed by the University of
   253  //	California, Berkeley and its contributors.
   254  // 4. Neither the name of the University nor the names of its contributors
   255  //    may be used to endorse or promote products derived from this software
   256  //    without specific prior written permission.
   257  //
   258  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   259  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   260  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   261  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   262  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   263  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   264  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   265  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   266  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   267  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   268  // SUCH DAMAGE.
   269  //
   270  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   271  
   272  // This SDK is designed to work with clang and specific versions of
   273  // gcc >= 4.0 with Apple's patch sets
   274  
   275  // Compatibility with compilers and environments that don't support compiler
   276  // feature checking function-like macros.
   277  
   278  // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
   279  // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
   280  // The __CONCAT macro is a bit tricky -- make sure you don't put spaces
   281  // in between its arguments.  __CONCAT can also concatenate double-quoted
   282  // strings produced by the __STRING macro, but this only works with ANSI C.
   283  
   284  // In non-ANSI C environments, new programs will want ANSI-only C keywords
   285  // deleted from the program and old programs will want them left alone.
   286  // When using a compiler other than gcc, programs using the ANSI C keywords
   287  // const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
   288  // When using "gcc -traditional", we assume that this is the intent; if
   289  // __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
   290  
   291  // __unused denotes variables and functions that may not be used, preventing
   292  // the compiler from warning about it if not used.
   293  
   294  // __used forces variables and functions to be included even if it appears
   295  // to the compiler that they are not used (and would thust be discarded).
   296  
   297  // __cold marks code used for debugging or that is rarely taken
   298  // and tells the compiler to optimize for size and outline code.
   299  
   300  // __deprecated causes the compiler to produce a warning when encountering
   301  // code using the deprecated functionality.
   302  // __deprecated_msg() does the same, and compilers that support it will print
   303  // a message along with the deprecation warning.
   304  // This may require turning on such warning with the -Wdeprecated flag.
   305  // __deprecated_enum_msg() should be used on enums, and compilers that support
   306  // it will print the deprecation warning.
   307  // __kpi_deprecated() specifically indicates deprecation of kernel programming
   308  // interfaces in Kernel.framework used by KEXTs.
   309  
   310  // __unavailable causes the compiler to error out when encountering
   311  // code using the tagged function of variable.
   312  
   313  // Delete pseudo-keywords wherever they are not available or needed.
   314  
   315  // We use `__restrict' as a way to define the `restrict' type qualifier
   316  // without disturbing older software that is unaware of C99 keywords.
   317  
   318  // Compatibility with compilers and environments that don't support the
   319  // nullability feature.
   320  
   321  // __disable_tail_calls causes the compiler to not perform tail call
   322  // optimization inside the marked function.
   323  
   324  // __not_tail_called causes the compiler to prevent tail call optimization
   325  // on statically bound calls to the function.  It has no effect on indirect
   326  // calls.  Virtual functions, objective-c methods, and functions marked as
   327  // "always_inline" cannot be marked as __not_tail_called.
   328  
   329  // __result_use_check warns callers of a function that not using the function
   330  // return value is a bug, i.e. dismissing malloc() return value results in a
   331  // memory leak.
   332  
   333  // __swift_unavailable causes the compiler to mark a symbol as specifically
   334  // unavailable in Swift, regardless of any other availability in C.
   335  
   336  // __abortlike is the attribute to put on functions like abort() that are
   337  // typically used to mark assertions. These optimize the codegen
   338  // for outlining while still maintaining debugability.
   339  
   340  // Declaring inline functions within headers is error-prone due to differences
   341  // across various versions of the C language and extensions.  __header_inline
   342  // can be used to declare inline functions within system headers.  In cases
   343  // where you want to force inlining instead of letting the compiler make
   344  // the decision, you can use __header_always_inline.
   345  //
   346  // Be aware that using inline for functions which compilers may also provide
   347  // builtins can behave differently under various compilers.  If you intend to
   348  // provide an inline version of such a function, you may want to use a macro
   349  // instead.
   350  //
   351  // The check for !__GNUC__ || __clang__ is because gcc doesn't correctly
   352  // support c99 inline in some cases:
   353  // http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55965
   354  
   355  // Compiler-dependent macros that bracket portions of code where the
   356  // "-Wunreachable-code" warning should be ignored. Please use sparingly.
   357  
   358  // Compiler-dependent macros to declare that functions take printf-like
   359  // or scanf-like arguments.  They are null except for versions of gcc
   360  // that are known to support the features properly.  Functions declared
   361  // with these attributes will cause compilation warnings if there is a
   362  // mismatch between the format string and subsequent function parameter
   363  // types.
   364  
   365  // Source compatibility only, ID string not emitted in object file
   366  
   367  // __alloc_size can be used to label function arguments that represent the
   368  // size of memory that the function allocates and returns. The one-argument
   369  // form labels a single argument that gives the allocation size (where the
   370  // arguments are numbered from 1):
   371  //
   372  // void	*malloc(size_t __size) __alloc_size(1);
   373  //
   374  // The two-argument form handles the case where the size is calculated as the
   375  // product of two arguments:
   376  //
   377  // void	*calloc(size_t __count, size_t __size) __alloc_size(1,2);
   378  
   379  // COMPILATION ENVIRONMENTS -- see compat(5) for additional detail
   380  //
   381  // DEFAULT	By default newly complied code will get POSIX APIs plus
   382  //		Apple API extensions in scope.
   383  //
   384  //		Most users will use this compilation environment to avoid
   385  //		behavioral differences between 32 and 64 bit code.
   386  //
   387  // LEGACY	Defining _NONSTD_SOURCE will get pre-POSIX APIs plus Apple
   388  //		API extensions in scope.
   389  //
   390  //		This is generally equivalent to the Tiger release compilation
   391  //		environment, except that it cannot be applied to 64 bit code;
   392  //		its use is discouraged.
   393  //
   394  //		We expect this environment to be deprecated in the future.
   395  //
   396  // STRICT	Defining _POSIX_C_SOURCE or _XOPEN_SOURCE restricts the
   397  //		available APIs to exactly the set of APIs defined by the
   398  //		corresponding standard, based on the value defined.
   399  //
   400  //		A correct, portable definition for _POSIX_C_SOURCE is 200112L.
   401  //		A correct, portable definition for _XOPEN_SOURCE is 600L.
   402  //
   403  //		Apple API extensions are not visible in this environment,
   404  //		which can cause Apple specific code to fail to compile,
   405  //		or behave incorrectly if prototypes are not in scope or
   406  //		warnings about missing prototypes are not enabled or ignored.
   407  //
   408  // In any compilation environment, for correct symbol resolution to occur,
   409  // function prototypes must be in scope.  It is recommended that all Apple
   410  // tools users add either the "-Wall" or "-Wimplicit-function-declaration"
   411  // compiler flags to their projects to be warned when a function is being
   412  // used without a prototype in scope.
   413  
   414  // These settings are particular to each product.
   415  // Platform: MacOSX
   416  // #undef __DARWIN_ONLY_UNIX_CONFORMANCE (automatically set for 64-bit)
   417  
   418  // The __DARWIN_ALIAS macros are used to do symbol renaming; they allow
   419  // legacy code to use the old symbol, thus maintaining binary compatibility
   420  // while new code can use a standards compliant version of the same function.
   421  //
   422  // __DARWIN_ALIAS is used by itself if the function signature has not
   423  // changed, it is used along with a #ifdef check for __DARWIN_UNIX03
   424  // if the signature has changed.  Because the __LP64__ environment
   425  // only supports UNIX03 semantics it causes __DARWIN_UNIX03 to be
   426  // defined, but causes __DARWIN_ALIAS to do no symbol mangling.
   427  //
   428  // As a special case, when XCode is used to target a specific version of the
   429  // OS, the manifest constant __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
   430  // will be defined by the compiler, with the digits representing major version
   431  // time 100 + minor version times 10 (e.g. 10.5 := 1050).  If we are targeting
   432  // pre-10.5, and it is the default compilation environment, revert the
   433  // compilation environment to pre-__DARWIN_UNIX03.
   434  
   435  // symbol suffixes used for symbol versioning
   436  
   437  // symbol versioning macros
   438  
   439  // symbol release macros
   440  // Copyright (c) 2010 Apple Inc. All rights reserved.
   441  //
   442  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   443  //
   444  // This file contains Original Code and/or Modifications of Original Code
   445  // as defined in and that are subject to the Apple Public Source License
   446  // Version 2.0 (the 'License'). You may not use this file except in
   447  // compliance with the License. The rights granted to you under the License
   448  // may not be used to create, or enable the creation or redistribution of,
   449  // unlawful or unlicensed copies of an Apple operating system, or to
   450  // circumvent, violate, or enable the circumvention or violation of, any
   451  // terms of an Apple operating system software license agreement.
   452  //
   453  // Please obtain a copy of the License at
   454  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   455  //
   456  // The Original Code and all software distributed under the License are
   457  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   458  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   459  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   460  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   461  // Please see the License for the specific language governing rights and
   462  // limitations under the License.
   463  //
   464  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   465  
   466  // POSIX.1 requires that the macros we test be defined before any standard
   467  // header file is included.  This permits us to convert values for feature
   468  // testing, as necessary, using only _POSIX_C_SOURCE.
   469  //
   470  // Here's a quick run-down of the versions:
   471  //  defined(_POSIX_SOURCE)		1003.1-1988
   472  //  _POSIX_C_SOURCE == 1L		1003.1-1990
   473  //  _POSIX_C_SOURCE == 2L		1003.2-1992 C Language Binding Option
   474  //  _POSIX_C_SOURCE == 199309L		1003.1b-1993
   475  //  _POSIX_C_SOURCE == 199506L		1003.1c-1995, 1003.1i-1995,
   476  //					and the omnibus ISO/IEC 9945-1: 1996
   477  //  _POSIX_C_SOURCE == 200112L		1003.1-2001
   478  //  _POSIX_C_SOURCE == 200809L		1003.1-2008
   479  //
   480  // In addition, the X/Open Portability Guide, which is now the Single UNIX
   481  // Specification, defines a feature-test macro which indicates the version of
   482  // that specification, and which subsumes _POSIX_C_SOURCE.
   483  
   484  // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1L.
   485  
   486  // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2L.
   487  
   488  // Deal with various X/Open Portability Guides and Single UNIX Spec.
   489  
   490  // Deal with all versions of POSIX.  The ordering relative to the tests above is
   491  // important.
   492  
   493  // POSIX C deprecation macros
   494  // Copyright (c) 2010 Apple Inc. All rights reserved.
   495  //
   496  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   497  //
   498  // This file contains Original Code and/or Modifications of Original Code
   499  // as defined in and that are subject to the Apple Public Source License
   500  // Version 2.0 (the 'License'). You may not use this file except in
   501  // compliance with the License. The rights granted to you under the License
   502  // may not be used to create, or enable the creation or redistribution of,
   503  // unlawful or unlicensed copies of an Apple operating system, or to
   504  // circumvent, violate, or enable the circumvention or violation of, any
   505  // terms of an Apple operating system software license agreement.
   506  //
   507  // Please obtain a copy of the License at
   508  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   509  //
   510  // The Original Code and all software distributed under the License are
   511  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   512  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   513  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   514  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   515  // Please see the License for the specific language governing rights and
   516  // limitations under the License.
   517  //
   518  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   519  
   520  // Set a single macro which will always be defined and can be used to determine
   521  // the appropriate namespace.  For POSIX, these values will correspond to
   522  // _POSIX_C_SOURCE value.  Currently there are two additional levels corresponding
   523  // to ANSI (_ANSI_SOURCE) and Darwin extensions (_DARWIN_C_SOURCE)
   524  
   525  // If the developer has neither requested a strict language mode nor a version
   526  // of POSIX, turn on functionality provided by __STDC_WANT_LIB_EXT1__ as part
   527  // of __DARWIN_C_FULL.
   528  
   529  // long long is not supported in c89 (__STRICT_ANSI__), but g++ -ansi and
   530  // c99 still want long longs.  While not perfect, we allow long longs for
   531  // g++.
   532  
   533  // ****************************************
   534  //
   535  //  Public darwin-specific feature macros
   536  //
   537  
   538  // _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
   539  // structures modified for 64-bit inodes (like struct stat) will be used.
   540  
   541  // _DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only
   542  // be 64-bit; there is no support for 32-bit ino_t when this macro is defined
   543  // (and non-zero).  There is no struct stat64 either, as the regular
   544  // struct stat will already be the 64-bit version.
   545  
   546  // _DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated
   547  // in 10.5 exists; no pre-10.5 variants are available.
   548  
   549  // _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API
   550  // are available (the legacy BSD APIs are not available)
   551  
   552  // _DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on,
   553  // and specifies the conformance level (3 is SUSv3)
   554  
   555  // This macro casts away the qualifier from the variable
   556  //
   557  // Note: use at your own risk, removing qualifiers can result in
   558  // catastrophic run-time failures.
   559  
   560  // __XNU_PRIVATE_EXTERN is a linkage decoration indicating that a symbol can be
   561  // used from other compilation units, but not other libraries or executables.
   562  
   563  // Architecture validation for current SDK
   564  
   565  // Similar to OS_ENUM/OS_CLOSED_ENUM/OS_OPTIONS/OS_CLOSED_OPTIONS
   566  //
   567  // This provides more advanced type checking on compilers supporting
   568  // the proper extensions, even in C.
   569  
   570  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
   571  //
   572  // @APPLE_LICENSE_HEADER_START@
   573  //
   574  // This file contains Original Code and/or Modifications of Original Code
   575  // as defined in and that are subject to the Apple Public Source License
   576  // Version 2.0 (the 'License'). You may not use this file except in
   577  // compliance with the License. Please obtain a copy of the License at
   578  // http://www.opensource.apple.com/apsl/ and read it before using this
   579  // file.
   580  //
   581  // The Original Code and all software distributed under the License are
   582  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   583  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   584  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   585  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   586  // Please see the License for the specific language governing rights and
   587  // limitations under the License.
   588  //
   589  // @APPLE_LICENSE_HEADER_END@
   590  
   591  //
   592  //     These macros are for use in OS header files. They enable function prototypes
   593  //     and Objective-C methods to be tagged with the OS version in which they
   594  //     were first available; and, if applicable, the OS version in which they
   595  //     became deprecated.
   596  //
   597  //     The desktop Mac OS X and iOS each have different version numbers.
   598  //     The __OSX_AVAILABLE_STARTING() macro allows you to specify both the desktop
   599  //     and iOS version numbers.  For instance:
   600  //         __OSX_AVAILABLE_STARTING(__MAC_10_2,__IPHONE_2_0)
   601  //     means the function/method was first available on Mac OS X 10.2 on the desktop
   602  //     and first available in iOS 2.0 on the iPhone.
   603  //
   604  //     If a function is available on one platform, but not the other a _NA (not
   605  //     applicable) parameter is used.  For instance:
   606  //             __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA)
   607  //     means that the function/method was first available on Mac OS X 10.3, and it
   608  //     currently not implemented on the iPhone.
   609  //
   610  //     At some point, a function/method may be deprecated.  That means Apple
   611  //     recommends applications stop using the function, either because there is a
   612  //     better replacement or the functionality is being phased out.  Deprecated
   613  //     functions/methods can be tagged with a __OSX_AVAILABLE_BUT_DEPRECATED()
   614  //     macro which specifies the OS version where the function became available
   615  //     as well as the OS version in which it became deprecated.  For instance:
   616  //         __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA)
   617  //     means that the function/method was introduced in Mac OS X 10.0, then
   618  //     became deprecated beginning in Mac OS X 10.5.  On iOS the function
   619  //     has never been available.
   620  //
   621  //     For these macros to function properly, a program must specify the OS version range
   622  //     it is targeting.  The min OS version is specified as an option to the compiler:
   623  //     -mmacosx-version-min=10.x when building for Mac OS X, and -miphoneos-version-min=y.z
   624  //     when building for the iPhone.  The upper bound for the OS version is rarely needed,
   625  //     but it can be set on the command line via: -D__MAC_OS_X_VERSION_MAX_ALLOWED=10x0 for
   626  //     Mac OS X and __IPHONE_OS_VERSION_MAX_ALLOWED = y0z00 for iOS.
   627  //
   628  //     Examples:
   629  //
   630  //         A function available in Mac OS X 10.5 and later, but not on the phone:
   631  //
   632  //             extern void mymacfunc() __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
   633  //
   634  //
   635  //         An Objective-C method in Mac OS X 10.5 and later, but not on the phone:
   636  //
   637  //             @interface MyClass : NSObject
   638  //             -(void) mymacmethod __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
   639  //             @end
   640  //
   641  //
   642  //         An enum available on the phone, but not available on Mac OS X:
   643  //
   644  //             #if __IPHONE_OS_VERSION_MIN_REQUIRED
   645  //                 enum { myEnum = 1 };
   646  //             #endif
   647  //            Note: this works when targeting the Mac OS X platform because
   648  //            __IPHONE_OS_VERSION_MIN_REQUIRED is undefined which evaluates to zero.
   649  //
   650  //
   651  //         An enum with values added in different iPhoneOS versions:
   652  //
   653  // 			enum {
   654  // 			    myX  = 1,	// Usable on iPhoneOS 2.1 and later
   655  // 			    myY  = 2,	// Usable on iPhoneOS 3.0 and later
   656  // 			    myZ  = 3,	// Usable on iPhoneOS 3.0 and later
   657  // 				...
   658  // 		      Note: you do not want to use #if with enumeration values
   659  // 			  when a client needs to see all values at compile time
   660  // 			  and use runtime logic to only use the viable values.
   661  //
   662  //
   663  //     It is also possible to use the *_VERSION_MIN_REQUIRED in source code to make one
   664  //     source base that can be compiled to target a range of OS versions.  It is best
   665  //     to not use the _MAC_* and __IPHONE_* macros for comparisons, but rather their values.
   666  //     That is because you might get compiled on an old OS that does not define a later
   667  //     OS version macro, and in the C preprocessor undefined values evaluate to zero
   668  //     in expresssions, which could cause the #if expression to evaluate in an unexpected
   669  //     way.
   670  //
   671  //         #ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
   672  //             // code only compiled when targeting Mac OS X and not iPhone
   673  //             // note use of 1050 instead of __MAC_10_5
   674  //             #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1050
   675  //                 // code in here might run on pre-Leopard OS
   676  //             #else
   677  //                 // code here can assume Leopard or later
   678  //             #endif
   679  //         #endif
   680  //
   681  //
   682  
   683  // __API_TO_BE_DEPRECATED is used as a version number in API that will be deprecated
   684  // in an upcoming release. This soft deprecation is an intermediate step before formal
   685  // deprecation to notify developers about the API before compiler warnings are generated.
   686  // You can find all places in your code that use soft deprecated API by redefining the
   687  // value of this macro to your current minimum deployment target, for example:
   688  // (macOS)
   689  //   clang -D__API_TO_BE_DEPRECATED=10.12 <other compiler flags>
   690  // (iOS)
   691  //   clang -D__API_TO_BE_DEPRECATED=11.0 <other compiler flags>
   692  
   693  // __MAC_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable
   694  
   695  // __IPHONE_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable
   696  
   697  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
   698  //
   699  // @APPLE_LICENSE_HEADER_START@
   700  //
   701  // This file contains Original Code and/or Modifications of Original Code
   702  // as defined in and that are subject to the Apple Public Source License
   703  // Version 2.0 (the 'License'). You may not use this file except in
   704  // compliance with the License. Please obtain a copy of the License at
   705  // http://www.opensource.apple.com/apsl/ and read it before using this
   706  // file.
   707  //
   708  // The Original Code and all software distributed under the License are
   709  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   710  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   711  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   712  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   713  // Please see the License for the specific language governing rights and
   714  // limitations under the License.
   715  //
   716  // @APPLE_LICENSE_HEADER_END@
   717  
   718  //
   719  //     File:       AvailabilityInternal.h
   720  //
   721  //     Contains:   implementation details of __OSX_AVAILABLE_* macros from <Availability.h>
   722  //
   723  
   724  // compiler for Mac OS X sets __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
   725  
   726  // make sure a default max version is set
   727  
   728  //
   729  //  Macros for defining which versions/platform a given symbol can be used.
   730  //
   731  //  @see http://clang.llvm.org/docs/AttributeReference.html#availability
   732  //
   733  
   734  // Evaluate to nothing for compilers that don't support availability.
   735  
   736  // Swift compiler version
   737  // Allows for project-agnostic “epochs” for frameworks imported into Swift via the Clang importer, like #if _compiler_version for Swift
   738  // Example:
   739  //
   740  //  #if __swift_compiler_version_at_least(800, 2, 20)
   741  //  - (nonnull NSString *)description;
   742  //  #else
   743  //  - (NSString *)description;
   744  //  #endif
   745  
   746  // If __SPI_AVAILABLE has not been defined elsewhere, disable it.
   747  
   748  // for use to document app extension usage
   749  
   750  // for use marking APIs available info for Mac OSX
   751  
   752  // for use marking APIs available info for iOS
   753  
   754  // for use marking APIs available info for tvOS
   755  
   756  // for use marking APIs available info for Watch OS
   757  
   758  // for use marking APIs unavailable for swift
   759  
   760  //
   761  //  Macros for defining which versions/platform a given symbol can be used.
   762  //
   763  //  @see http://clang.llvm.org/docs/AttributeReference.html#availability
   764  //
   765  //  * Note that these macros are only compatible with clang compilers that
   766  //  * support the following target selection options:
   767  //  *
   768  //  * -mmacosx-version-min
   769  //  * -miphoneos-version-min
   770  //  * -mwatchos-version-min
   771  //  * -mtvos-version-min
   772  //
   773  
   774  // Evaluate to nothing for compilers that don't support availability.
   775  
   776  // If SPI decorations have not been defined elsewhere, disable them.
   777  
   778  // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
   779  //
   780  // @APPLE_LICENSE_HEADER_START@
   781  //
   782  // This file contains Original Code and/or Modifications of Original Code
   783  // as defined in and that are subject to the Apple Public Source License
   784  // Version 2.0 (the 'License'). You may not use this file except in
   785  // compliance with the License. Please obtain a copy of the License at
   786  // http://www.opensource.apple.com/apsl/ and read it before using this
   787  // file.
   788  //
   789  // The Original Code and all software distributed under the License are
   790  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   791  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   792  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   793  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   794  // Please see the License for the specific language governing rights and
   795  // limitations under the License.
   796  //
   797  // @APPLE_LICENSE_HEADER_END@
   798  
   799  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   800  //
   801  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   802  //
   803  // This file contains Original Code and/or Modifications of Original Code
   804  // as defined in and that are subject to the Apple Public Source License
   805  // Version 2.0 (the 'License'). You may not use this file except in
   806  // compliance with the License. The rights granted to you under the License
   807  // may not be used to create, or enable the creation or redistribution of,
   808  // unlawful or unlicensed copies of an Apple operating system, or to
   809  // circumvent, violate, or enable the circumvention or violation of, any
   810  // terms of an Apple operating system software license agreement.
   811  //
   812  // Please obtain a copy of the License at
   813  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   814  //
   815  // The Original Code and all software distributed under the License are
   816  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   817  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   818  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   819  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   820  // Please see the License for the specific language governing rights and
   821  // limitations under the License.
   822  //
   823  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   824  
   825  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
   826  //
   827  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   828  //
   829  // This file contains Original Code and/or Modifications of Original Code
   830  // as defined in and that are subject to the Apple Public Source License
   831  // Version 2.0 (the 'License'). You may not use this file except in
   832  // compliance with the License. The rights granted to you under the License
   833  // may not be used to create, or enable the creation or redistribution of,
   834  // unlawful or unlicensed copies of an Apple operating system, or to
   835  // circumvent, violate, or enable the circumvention or violation of, any
   836  // terms of an Apple operating system software license agreement.
   837  //
   838  // Please obtain a copy of the License at
   839  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   840  //
   841  // The Original Code and all software distributed under the License are
   842  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   843  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   844  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   845  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   846  // Please see the License for the specific language governing rights and
   847  // limitations under the License.
   848  //
   849  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   850  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
   851  // Copyright (c) 1991, 1993
   852  //	The Regents of the University of California.  All rights reserved.
   853  //
   854  // This code is derived from software contributed to Berkeley by
   855  // Berkeley Software Design, Inc.
   856  //
   857  // Redistribution and use in source and binary forms, with or without
   858  // modification, are permitted provided that the following conditions
   859  // are met:
   860  // 1. Redistributions of source code must retain the above copyright
   861  //    notice, this list of conditions and the following disclaimer.
   862  // 2. Redistributions in binary form must reproduce the above copyright
   863  //    notice, this list of conditions and the following disclaimer in the
   864  //    documentation and/or other materials provided with the distribution.
   865  // 3. All advertising materials mentioning features or use of this software
   866  //    must display the following acknowledgement:
   867  //	This product includes software developed by the University of
   868  //	California, Berkeley and its contributors.
   869  // 4. Neither the name of the University nor the names of its contributors
   870  //    may be used to endorse or promote products derived from this software
   871  //    without specific prior written permission.
   872  //
   873  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   874  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   875  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   876  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   877  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   878  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   879  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   880  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   881  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   882  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   883  // SUCH DAMAGE.
   884  //
   885  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   886  
   887  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   888  //
   889  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   890  //
   891  // This file contains Original Code and/or Modifications of Original Code
   892  // as defined in and that are subject to the Apple Public Source License
   893  // Version 2.0 (the 'License'). You may not use this file except in
   894  // compliance with the License. The rights granted to you under the License
   895  // may not be used to create, or enable the creation or redistribution of,
   896  // unlawful or unlicensed copies of an Apple operating system, or to
   897  // circumvent, violate, or enable the circumvention or violation of, any
   898  // terms of an Apple operating system software license agreement.
   899  //
   900  // Please obtain a copy of the License at
   901  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   902  //
   903  // The Original Code and all software distributed under the License are
   904  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   905  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   906  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   907  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   908  // Please see the License for the specific language governing rights and
   909  // limitations under the License.
   910  //
   911  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   912  
   913  // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
   914  //
   915  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   916  //
   917  // This file contains Original Code and/or Modifications of Original Code
   918  // as defined in and that are subject to the Apple Public Source License
   919  // Version 2.0 (the 'License'). You may not use this file except in
   920  // compliance with the License. The rights granted to you under the License
   921  // may not be used to create, or enable the creation or redistribution of,
   922  // unlawful or unlicensed copies of an Apple operating system, or to
   923  // circumvent, violate, or enable the circumvention or violation of, any
   924  // terms of an Apple operating system software license agreement.
   925  //
   926  // Please obtain a copy of the License at
   927  // http://www.opensource.apple.com/apsl/ and read it before using this file.
   928  //
   929  // The Original Code and all software distributed under the License are
   930  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   931  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   932  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   933  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   934  // Please see the License for the specific language governing rights and
   935  // limitations under the License.
   936  //
   937  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   938  
   939  // This header file contains integer types.  It's intended to also contain
   940  // flotaing point and other arithmetic types, as needed, later.
   941  
   942  type X__int8_t = int8     /* _types.h:37:33 */
   943  type X__uint8_t = uint8   /* _types.h:41:33 */
   944  type X__int16_t = int16   /* _types.h:42:33 */
   945  type X__uint16_t = uint16 /* _types.h:43:33 */
   946  type X__int32_t = int32   /* _types.h:44:33 */
   947  type X__uint32_t = uint32 /* _types.h:45:33 */
   948  type X__int64_t = int64   /* _types.h:46:33 */
   949  type X__uint64_t = uint64 /* _types.h:47:33 */
   950  
   951  type X__darwin_intptr_t = int64   /* _types.h:49:33 */
   952  type X__darwin_natural_t = uint32 /* _types.h:50:33 */
   953  
   954  // The rune type below is declared to be an ``int'' instead of the more natural
   955  // ``unsigned long'' or ``long''.  Two things are happening here.  It is not
   956  // unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
   957  // it looks like 10646 will be a 31 bit standard.  This means that if your
   958  // ints cannot hold 32 bits, you will be in trouble.  The reason an int was
   959  // chosen over a long is that the is*() and to*() routines take ints (says
   960  // ANSI C), but they use __darwin_ct_rune_t instead of int.  By changing it
   961  // here, you lose a bit of ANSI conformance, but your programs will still
   962  // work.
   963  //
   964  // NOTE: rune_t is not covered by ANSI nor other standards, and should not
   965  // be instantiated outside of lib/libc/locale.  Use wchar_t.  wchar_t and
   966  // rune_t must be the same type.  Also wint_t must be no narrower than
   967  // wchar_t, and should also be able to hold all members of the largest
   968  // character set plus one extra value (WEOF). wint_t must be at least 16 bits.
   969  
   970  type X__darwin_ct_rune_t = int32 /* _types.h:70:33 */ // ct_rune_t
   971  
   972  // mbstate_t is an opaque object to keep conversion state, during multibyte
   973  // stream conversions.  The content must not be referenced by user programs.
   974  type X__mbstate_t = struct {
   975  	F__ccgo_pad1 [0]uint64
   976  	F__mbstate8  [128]int8
   977  } /* _types.h:79:3 */
   978  
   979  type X__darwin_mbstate_t = X__mbstate_t /* _types.h:81:33 */ // mbstate_t
   980  
   981  type X__darwin_ptrdiff_t = int64 /* _types.h:84:33 */ // ptr1 - ptr2
   982  
   983  type X__darwin_size_t = uint64 /* _types.h:92:33 */ // sizeof()
   984  
   985  type X__darwin_va_list = X__builtin_va_list /* _types.h:98:33 */ // va_list
   986  
   987  type X__darwin_wchar_t = int32 /* _types.h:104:33 */ // wchar_t
   988  
   989  type X__darwin_rune_t = X__darwin_wchar_t /* _types.h:109:33 */ // rune_t
   990  
   991  type X__darwin_wint_t = int32 /* _types.h:112:33 */ // wint_t
   992  
   993  type X__darwin_clock_t = uint64        /* _types.h:117:33 */ // clock()
   994  type X__darwin_socklen_t = X__uint32_t /* _types.h:118:33 */ // socklen_t (duh)
   995  type X__darwin_ssize_t = int64         /* _types.h:119:33 */ // byte count or error
   996  type X__darwin_time_t = int64          /* _types.h:120:33 */ // time()
   997  
   998  // Type definitions; takes common type definitions that must be used
   999  // in multiple header files due to [XSI], removes them from the system
  1000  // space, and puts them in the implementation space.
  1001  
  1002  type X__darwin_blkcnt_t = X__int64_t                    /* _types.h:55:25 */ // total blocks
  1003  type X__darwin_blksize_t = X__int32_t                   /* _types.h:56:25 */ // preferred block size
  1004  type X__darwin_dev_t = X__int32_t                       /* _types.h:57:25 */ // dev_t
  1005  type X__darwin_fsblkcnt_t = uint32                      /* _types.h:58:25 */ // Used by statvfs and fstatvfs
  1006  type X__darwin_fsfilcnt_t = uint32                      /* _types.h:59:25 */ // Used by statvfs and fstatvfs
  1007  type X__darwin_gid_t = X__uint32_t                      /* _types.h:60:25 */ // [???] process and group IDs
  1008  type X__darwin_id_t = X__uint32_t                       /* _types.h:61:25 */ // [XSI] pid_t, uid_t, or gid_t
  1009  type X__darwin_ino64_t = X__uint64_t                    /* _types.h:62:25 */ // [???] Used for 64 bit inodes
  1010  type X__darwin_ino_t = X__darwin_ino64_t                /* _types.h:64:26 */ // [???] Used for inodes
  1011  type X__darwin_mach_port_name_t = X__darwin_natural_t   /* _types.h:68:28 */ // Used by mach
  1012  type X__darwin_mach_port_t = X__darwin_mach_port_name_t /* _types.h:69:35 */ // Used by mach
  1013  type X__darwin_mode_t = X__uint16_t                     /* _types.h:70:25 */ // [???] Some file attributes
  1014  type X__darwin_off_t = X__int64_t                       /* _types.h:71:25 */ // [???] Used for file sizes
  1015  type X__darwin_pid_t = X__int32_t                       /* _types.h:72:25 */ // [???] process and group IDs
  1016  type X__darwin_sigset_t = X__uint32_t                   /* _types.h:73:25 */ // [???] signal set
  1017  type X__darwin_suseconds_t = X__int32_t                 /* _types.h:74:25 */ // [???] microseconds
  1018  type X__darwin_uid_t = X__uint32_t                      /* _types.h:75:25 */ // [???] user IDs
  1019  type X__darwin_useconds_t = X__uint32_t                 /* _types.h:76:25 */ // [???] microseconds
  1020  type X__darwin_uuid_t = [16]uint8                       /* _types.h:77:25 */
  1021  type X__darwin_uuid_string_t = [37]int8                 /* _types.h:78:17 */
  1022  
  1023  // Copyright (c) 2003-2013 Apple Inc. All rights reserved.
  1024  //
  1025  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1026  //
  1027  // This file contains Original Code and/or Modifications of Original Code
  1028  // as defined in and that are subject to the Apple Public Source License
  1029  // Version 2.0 (the 'License'). You may not use this file except in
  1030  // compliance with the License. The rights granted to you under the License
  1031  // may not be used to create, or enable the creation or redistribution of,
  1032  // unlawful or unlicensed copies of an Apple operating system, or to
  1033  // circumvent, violate, or enable the circumvention or violation of, any
  1034  // terms of an Apple operating system software license agreement.
  1035  //
  1036  // Please obtain a copy of the License at
  1037  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1038  //
  1039  // The Original Code and all software distributed under the License are
  1040  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1041  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1042  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1043  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1044  // Please see the License for the specific language governing rights and
  1045  // limitations under the License.
  1046  //
  1047  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1048  
  1049  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1050  //
  1051  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1052  //
  1053  // This file contains Original Code and/or Modifications of Original Code
  1054  // as defined in and that are subject to the Apple Public Source License
  1055  // Version 2.0 (the 'License'). You may not use this file except in
  1056  // compliance with the License. The rights granted to you under the License
  1057  // may not be used to create, or enable the creation or redistribution of,
  1058  // unlawful or unlicensed copies of an Apple operating system, or to
  1059  // circumvent, violate, or enable the circumvention or violation of, any
  1060  // terms of an Apple operating system software license agreement.
  1061  //
  1062  // Please obtain a copy of the License at
  1063  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1064  //
  1065  // The Original Code and all software distributed under the License are
  1066  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1067  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1068  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1069  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1070  // Please see the License for the specific language governing rights and
  1071  // limitations under the License.
  1072  //
  1073  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1074  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1075  // Copyright (c) 1991, 1993
  1076  //	The Regents of the University of California.  All rights reserved.
  1077  //
  1078  // This code is derived from software contributed to Berkeley by
  1079  // Berkeley Software Design, Inc.
  1080  //
  1081  // Redistribution and use in source and binary forms, with or without
  1082  // modification, are permitted provided that the following conditions
  1083  // are met:
  1084  // 1. Redistributions of source code must retain the above copyright
  1085  //    notice, this list of conditions and the following disclaimer.
  1086  // 2. Redistributions in binary form must reproduce the above copyright
  1087  //    notice, this list of conditions and the following disclaimer in the
  1088  //    documentation and/or other materials provided with the distribution.
  1089  // 3. All advertising materials mentioning features or use of this software
  1090  //    must display the following acknowledgement:
  1091  //	This product includes software developed by the University of
  1092  //	California, Berkeley and its contributors.
  1093  // 4. Neither the name of the University nor the names of its contributors
  1094  //    may be used to endorse or promote products derived from this software
  1095  //    without specific prior written permission.
  1096  //
  1097  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1098  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1099  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1100  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1101  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1102  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1103  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1104  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1105  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1106  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1107  // SUCH DAMAGE.
  1108  //
  1109  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1110  
  1111  // pthread opaque structures
  1112  
  1113  type X__darwin_pthread_handler_rec = struct {
  1114  	F__routine uintptr
  1115  	F__arg     uintptr
  1116  	F__next    uintptr
  1117  } /* _pthread_types.h:57:1 */
  1118  
  1119  type X_opaque_pthread_attr_t = struct {
  1120  	F__sig    int64
  1121  	F__opaque [56]int8
  1122  } /* _pthread_types.h:63:1 */
  1123  
  1124  type X_opaque_pthread_cond_t = struct {
  1125  	F__sig    int64
  1126  	F__opaque [40]int8
  1127  } /* _pthread_types.h:68:1 */
  1128  
  1129  type X_opaque_pthread_condattr_t = struct {
  1130  	F__sig    int64
  1131  	F__opaque [8]int8
  1132  } /* _pthread_types.h:73:1 */
  1133  
  1134  type X_opaque_pthread_mutex_t = struct {
  1135  	F__sig    int64
  1136  	F__opaque [56]int8
  1137  } /* _pthread_types.h:78:1 */
  1138  
  1139  type X_opaque_pthread_mutexattr_t = struct {
  1140  	F__sig    int64
  1141  	F__opaque [8]int8
  1142  } /* _pthread_types.h:83:1 */
  1143  
  1144  type X_opaque_pthread_once_t = struct {
  1145  	F__sig    int64
  1146  	F__opaque [8]int8
  1147  } /* _pthread_types.h:88:1 */
  1148  
  1149  type X_opaque_pthread_rwlock_t = struct {
  1150  	F__sig    int64
  1151  	F__opaque [192]int8
  1152  } /* _pthread_types.h:93:1 */
  1153  
  1154  type X_opaque_pthread_rwlockattr_t = struct {
  1155  	F__sig    int64
  1156  	F__opaque [16]int8
  1157  } /* _pthread_types.h:98:1 */
  1158  
  1159  type X_opaque_pthread_t = struct {
  1160  	F__sig           int64
  1161  	F__cleanup_stack uintptr
  1162  	F__opaque        [8176]int8
  1163  } /* _pthread_types.h:103:1 */
  1164  
  1165  type X__darwin_pthread_attr_t = X_opaque_pthread_attr_t             /* _pthread_types.h:109:39 */
  1166  type X__darwin_pthread_cond_t = X_opaque_pthread_cond_t             /* _pthread_types.h:110:39 */
  1167  type X__darwin_pthread_condattr_t = X_opaque_pthread_condattr_t     /* _pthread_types.h:111:43 */
  1168  type X__darwin_pthread_key_t = uint64                               /* _pthread_types.h:112:23 */
  1169  type X__darwin_pthread_mutex_t = X_opaque_pthread_mutex_t           /* _pthread_types.h:113:40 */
  1170  type X__darwin_pthread_mutexattr_t = X_opaque_pthread_mutexattr_t   /* _pthread_types.h:114:44 */
  1171  type X__darwin_pthread_once_t = X_opaque_pthread_once_t             /* _pthread_types.h:115:39 */
  1172  type X__darwin_pthread_rwlock_t = X_opaque_pthread_rwlock_t         /* _pthread_types.h:116:41 */
  1173  type X__darwin_pthread_rwlockattr_t = X_opaque_pthread_rwlockattr_t /* _pthread_types.h:117:45 */
  1174  type X__darwin_pthread_t = uintptr                                  /* _pthread_types.h:118:34 */
  1175  
  1176  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  1177  //
  1178  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1179  //
  1180  // This file contains Original Code and/or Modifications of Original Code
  1181  // as defined in and that are subject to the Apple Public Source License
  1182  // Version 2.0 (the 'License'). You may not use this file except in
  1183  // compliance with the License. The rights granted to you under the License
  1184  // may not be used to create, or enable the creation or redistribution of,
  1185  // unlawful or unlicensed copies of an Apple operating system, or to
  1186  // circumvent, violate, or enable the circumvention or violation of, any
  1187  // terms of an Apple operating system software license agreement.
  1188  //
  1189  // Please obtain a copy of the License at
  1190  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1191  //
  1192  // The Original Code and all software distributed under the License are
  1193  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1194  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1195  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1196  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1197  // Please see the License for the specific language governing rights and
  1198  // limitations under the License.
  1199  //
  1200  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1201  
  1202  type X__darwin_nl_item = int32        /* _types.h:40:14 */
  1203  type X__darwin_wctrans_t = int32      /* _types.h:41:14 */
  1204  type X__darwin_wctype_t = X__uint32_t /* _types.h:43:20 */
  1205  
  1206  // DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
  1207  // __gnuc_va_list and include <stdarg.h>
  1208  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1209  //
  1210  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1211  //
  1212  // This file contains Original Code and/or Modifications of Original Code
  1213  // as defined in and that are subject to the Apple Public Source License
  1214  // Version 2.0 (the 'License'). You may not use this file except in
  1215  // compliance with the License. The rights granted to you under the License
  1216  // may not be used to create, or enable the creation or redistribution of,
  1217  // unlawful or unlicensed copies of an Apple operating system, or to
  1218  // circumvent, violate, or enable the circumvention or violation of, any
  1219  // terms of an Apple operating system software license agreement.
  1220  //
  1221  // Please obtain a copy of the License at
  1222  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1223  //
  1224  // The Original Code and all software distributed under the License are
  1225  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1226  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1227  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1228  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1229  // Please see the License for the specific language governing rights and
  1230  // limitations under the License.
  1231  //
  1232  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1233  
  1234  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1235  //
  1236  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1237  //
  1238  // This file contains Original Code and/or Modifications of Original Code
  1239  // as defined in and that are subject to the Apple Public Source License
  1240  // Version 2.0 (the 'License'). You may not use this file except in
  1241  // compliance with the License. The rights granted to you under the License
  1242  // may not be used to create, or enable the creation or redistribution of,
  1243  // unlawful or unlicensed copies of an Apple operating system, or to
  1244  // circumvent, violate, or enable the circumvention or violation of, any
  1245  // terms of an Apple operating system software license agreement.
  1246  //
  1247  // Please obtain a copy of the License at
  1248  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1249  //
  1250  // The Original Code and all software distributed under the License are
  1251  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1252  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1253  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1254  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1255  // Please see the License for the specific language governing rights and
  1256  // limitations under the License.
  1257  //
  1258  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1259  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1260  
  1261  // Copyright (c) 2000-2008 Apple Inc. All rights reserved.
  1262  //
  1263  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1264  //
  1265  // This file contains Original Code and/or Modifications of Original Code
  1266  // as defined in and that are subject to the Apple Public Source License
  1267  // Version 2.0 (the 'License'). You may not use this file except in
  1268  // compliance with the License. The rights granted to you under the License
  1269  // may not be used to create, or enable the creation or redistribution of,
  1270  // unlawful or unlicensed copies of an Apple operating system, or to
  1271  // circumvent, violate, or enable the circumvention or violation of, any
  1272  // terms of an Apple operating system software license agreement.
  1273  //
  1274  // Please obtain a copy of the License at
  1275  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1276  //
  1277  // The Original Code and all software distributed under the License are
  1278  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1279  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1280  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1281  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1282  // Please see the License for the specific language governing rights and
  1283  // limitations under the License.
  1284  //
  1285  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1286  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1287  // Copyright (c) 1990, 1993
  1288  //	The Regents of the University of California.  All rights reserved.
  1289  //
  1290  // Redistribution and use in source and binary forms, with or without
  1291  // modification, are permitted provided that the following conditions
  1292  // are met:
  1293  // 1. Redistributions of source code must retain the above copyright
  1294  //    notice, this list of conditions and the following disclaimer.
  1295  // 2. Redistributions in binary form must reproduce the above copyright
  1296  //    notice, this list of conditions and the following disclaimer in the
  1297  //    documentation and/or other materials provided with the distribution.
  1298  // 3. All advertising materials mentioning features or use of this software
  1299  //    must display the following acknowledgement:
  1300  //	This product includes software developed by the University of
  1301  //	California, Berkeley and its contributors.
  1302  // 4. Neither the name of the University nor the names of its contributors
  1303  //    may be used to endorse or promote products derived from this software
  1304  //    without specific prior written permission.
  1305  //
  1306  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1307  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1308  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1309  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1310  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1311  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1312  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1313  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1314  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1315  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1316  // SUCH DAMAGE.
  1317  //
  1318  //	@(#)types.h	8.3 (Berkeley) 1/5/94
  1319  
  1320  // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
  1321  //
  1322  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1323  //
  1324  // This file contains Original Code and/or Modifications of Original Code
  1325  // as defined in and that are subject to the Apple Public Source License
  1326  // Version 2.0 (the 'License'). You may not use this file except in
  1327  // compliance with the License. The rights granted to you under the License
  1328  // may not be used to create, or enable the creation or redistribution of,
  1329  // unlawful or unlicensed copies of an Apple operating system, or to
  1330  // circumvent, violate, or enable the circumvention or violation of, any
  1331  // terms of an Apple operating system software license agreement.
  1332  //
  1333  // Please obtain a copy of the License at
  1334  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1335  //
  1336  // The Original Code and all software distributed under the License are
  1337  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1338  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1339  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1340  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1341  // Please see the License for the specific language governing rights and
  1342  // limitations under the License.
  1343  //
  1344  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1345  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1346  //
  1347  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1348  //
  1349  // This file contains Original Code and/or Modifications of Original Code
  1350  // as defined in and that are subject to the Apple Public Source License
  1351  // Version 2.0 (the 'License'). You may not use this file except in
  1352  // compliance with the License. The rights granted to you under the License
  1353  // may not be used to create, or enable the creation or redistribution of,
  1354  // unlawful or unlicensed copies of an Apple operating system, or to
  1355  // circumvent, violate, or enable the circumvention or violation of, any
  1356  // terms of an Apple operating system software license agreement.
  1357  //
  1358  // Please obtain a copy of the License at
  1359  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1360  //
  1361  // The Original Code and all software distributed under the License are
  1362  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1363  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1364  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1365  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1366  // Please see the License for the specific language governing rights and
  1367  // limitations under the License.
  1368  //
  1369  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1370  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1371  // Copyright (c) 1991, 1993
  1372  //	The Regents of the University of California.  All rights reserved.
  1373  //
  1374  // This code is derived from software contributed to Berkeley by
  1375  // Berkeley Software Design, Inc.
  1376  //
  1377  // Redistribution and use in source and binary forms, with or without
  1378  // modification, are permitted provided that the following conditions
  1379  // are met:
  1380  // 1. Redistributions of source code must retain the above copyright
  1381  //    notice, this list of conditions and the following disclaimer.
  1382  // 2. Redistributions in binary form must reproduce the above copyright
  1383  //    notice, this list of conditions and the following disclaimer in the
  1384  //    documentation and/or other materials provided with the distribution.
  1385  // 3. All advertising materials mentioning features or use of this software
  1386  //    must display the following acknowledgement:
  1387  //	This product includes software developed by the University of
  1388  //	California, Berkeley and its contributors.
  1389  // 4. Neither the name of the University nor the names of its contributors
  1390  //    may be used to endorse or promote products derived from this software
  1391  //    without specific prior written permission.
  1392  //
  1393  // THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1406  
  1407  // Basic integral types.  Omit the typedef if
  1408  // not possible for a machine/compiler combination.
  1409  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1410  //
  1411  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1412  //
  1413  // This file contains Original Code and/or Modifications of Original Code
  1414  // as defined in and that are subject to the Apple Public Source License
  1415  // Version 2.0 (the 'License'). You may not use this file except in
  1416  // compliance with the License. The rights granted to you under the License
  1417  // may not be used to create, or enable the creation or redistribution of,
  1418  // unlawful or unlicensed copies of an Apple operating system, or to
  1419  // circumvent, violate, or enable the circumvention or violation of, any
  1420  // terms of an Apple operating system software license agreement.
  1421  //
  1422  // Please obtain a copy of the License at
  1423  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1424  //
  1425  // The Original Code and all software distributed under the License are
  1426  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1427  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1428  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1429  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1430  // Please see the License for the specific language governing rights and
  1431  // limitations under the License.
  1432  //
  1433  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1434  type Int8_t = int8 /* _int8_t.h:30:33 */
  1435  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1436  //
  1437  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1438  //
  1439  // This file contains Original Code and/or Modifications of Original Code
  1440  // as defined in and that are subject to the Apple Public Source License
  1441  // Version 2.0 (the 'License'). You may not use this file except in
  1442  // compliance with the License. The rights granted to you under the License
  1443  // may not be used to create, or enable the creation or redistribution of,
  1444  // unlawful or unlicensed copies of an Apple operating system, or to
  1445  // circumvent, violate, or enable the circumvention or violation of, any
  1446  // terms of an Apple operating system software license agreement.
  1447  //
  1448  // Please obtain a copy of the License at
  1449  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1450  //
  1451  // The Original Code and all software distributed under the License are
  1452  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1453  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1454  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1455  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1456  // Please see the License for the specific language governing rights and
  1457  // limitations under the License.
  1458  //
  1459  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1460  type Int16_t = int16 /* _int16_t.h:30:33 */
  1461  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1462  //
  1463  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1464  //
  1465  // This file contains Original Code and/or Modifications of Original Code
  1466  // as defined in and that are subject to the Apple Public Source License
  1467  // Version 2.0 (the 'License'). You may not use this file except in
  1468  // compliance with the License. The rights granted to you under the License
  1469  // may not be used to create, or enable the creation or redistribution of,
  1470  // unlawful or unlicensed copies of an Apple operating system, or to
  1471  // circumvent, violate, or enable the circumvention or violation of, any
  1472  // terms of an Apple operating system software license agreement.
  1473  //
  1474  // Please obtain a copy of the License at
  1475  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1476  //
  1477  // The Original Code and all software distributed under the License are
  1478  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1479  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1480  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1481  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1482  // Please see the License for the specific language governing rights and
  1483  // limitations under the License.
  1484  //
  1485  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1486  type Int32_t = int32 /* _int32_t.h:30:33 */
  1487  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1488  //
  1489  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1490  //
  1491  // This file contains Original Code and/or Modifications of Original Code
  1492  // as defined in and that are subject to the Apple Public Source License
  1493  // Version 2.0 (the 'License'). You may not use this file except in
  1494  // compliance with the License. The rights granted to you under the License
  1495  // may not be used to create, or enable the creation or redistribution of,
  1496  // unlawful or unlicensed copies of an Apple operating system, or to
  1497  // circumvent, violate, or enable the circumvention or violation of, any
  1498  // terms of an Apple operating system software license agreement.
  1499  //
  1500  // Please obtain a copy of the License at
  1501  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1502  //
  1503  // The Original Code and all software distributed under the License are
  1504  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1505  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1506  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1507  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1508  // Please see the License for the specific language governing rights and
  1509  // limitations under the License.
  1510  //
  1511  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1512  type Int64_t = int64 /* _int64_t.h:30:33 */
  1513  
  1514  // Copyright (c) 2016 Apple Inc. All rights reserved.
  1515  //
  1516  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1517  //
  1518  // This file contains Original Code and/or Modifications of Original Code
  1519  // as defined in and that are subject to the Apple Public Source License
  1520  // Version 2.0 (the 'License'). You may not use this file except in
  1521  // compliance with the License. The rights granted to you under the License
  1522  // may not be used to create, or enable the creation or redistribution of,
  1523  // unlawful or unlicensed copies of an Apple operating system, or to
  1524  // circumvent, violate, or enable the circumvention or violation of, any
  1525  // terms of an Apple operating system software license agreement.
  1526  //
  1527  // Please obtain a copy of the License at
  1528  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1529  //
  1530  // The Original Code and all software distributed under the License are
  1531  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1532  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1533  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1534  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1535  // Please see the License for the specific language governing rights and
  1536  // limitations under the License.
  1537  //
  1538  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1539  type U_int8_t = uint8 /* _u_int8_t.h:30:33 */
  1540  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1541  //
  1542  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1543  //
  1544  // This file contains Original Code and/or Modifications of Original Code
  1545  // as defined in and that are subject to the Apple Public Source License
  1546  // Version 2.0 (the 'License'). You may not use this file except in
  1547  // compliance with the License. The rights granted to you under the License
  1548  // may not be used to create, or enable the creation or redistribution of,
  1549  // unlawful or unlicensed copies of an Apple operating system, or to
  1550  // circumvent, violate, or enable the circumvention or violation of, any
  1551  // terms of an Apple operating system software license agreement.
  1552  //
  1553  // Please obtain a copy of the License at
  1554  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1555  //
  1556  // The Original Code and all software distributed under the License are
  1557  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1558  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1559  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1560  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1561  // Please see the License for the specific language governing rights and
  1562  // limitations under the License.
  1563  //
  1564  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1565  type U_int16_t = uint16 /* _u_int16_t.h:30:41 */
  1566  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1567  //
  1568  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1569  //
  1570  // This file contains Original Code and/or Modifications of Original Code
  1571  // as defined in and that are subject to the Apple Public Source License
  1572  // Version 2.0 (the 'License'). You may not use this file except in
  1573  // compliance with the License. The rights granted to you under the License
  1574  // may not be used to create, or enable the creation or redistribution of,
  1575  // unlawful or unlicensed copies of an Apple operating system, or to
  1576  // circumvent, violate, or enable the circumvention or violation of, any
  1577  // terms of an Apple operating system software license agreement.
  1578  //
  1579  // Please obtain a copy of the License at
  1580  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1581  //
  1582  // The Original Code and all software distributed under the License are
  1583  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1584  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1585  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1586  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1587  // Please see the License for the specific language governing rights and
  1588  // limitations under the License.
  1589  //
  1590  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1591  type U_int32_t = uint32 /* _u_int32_t.h:30:33 */
  1592  // Copyright (c) 2012 Apple Inc. All rights reserved.
  1593  //
  1594  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1595  //
  1596  // This file contains Original Code and/or Modifications of Original Code
  1597  // as defined in and that are subject to the Apple Public Source License
  1598  // Version 2.0 (the 'License'). You may not use this file except in
  1599  // compliance with the License. The rights granted to you under the License
  1600  // may not be used to create, or enable the creation or redistribution of,
  1601  // unlawful or unlicensed copies of an Apple operating system, or to
  1602  // circumvent, violate, or enable the circumvention or violation of, any
  1603  // terms of an Apple operating system software license agreement.
  1604  //
  1605  // Please obtain a copy of the License at
  1606  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1607  //
  1608  // The Original Code and all software distributed under the License are
  1609  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1610  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1611  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1612  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1613  // Please see the License for the specific language governing rights and
  1614  // limitations under the License.
  1615  //
  1616  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1617  type U_int64_t = uint64 /* _u_int64_t.h:30:33 */
  1618  
  1619  type Register_t = Int64_t /* types.h:87:33 */
  1620  
  1621  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1622  //
  1623  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1624  //
  1625  // This file contains Original Code and/or Modifications of Original Code
  1626  // as defined in and that are subject to the Apple Public Source License
  1627  // Version 2.0 (the 'License'). You may not use this file except in
  1628  // compliance with the License. The rights granted to you under the License
  1629  // may not be used to create, or enable the creation or redistribution of,
  1630  // unlawful or unlicensed copies of an Apple operating system, or to
  1631  // circumvent, violate, or enable the circumvention or violation of, any
  1632  // terms of an Apple operating system software license agreement.
  1633  //
  1634  // Please obtain a copy of the License at
  1635  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1636  //
  1637  // The Original Code and all software distributed under the License are
  1638  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1639  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1640  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1641  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1642  // Please see the License for the specific language governing rights and
  1643  // limitations under the License.
  1644  //
  1645  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1646  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1647  //
  1648  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1649  //
  1650  // This file contains Original Code and/or Modifications of Original Code
  1651  // as defined in and that are subject to the Apple Public Source License
  1652  // Version 2.0 (the 'License'). You may not use this file except in
  1653  // compliance with the License. The rights granted to you under the License
  1654  // may not be used to create, or enable the creation or redistribution of,
  1655  // unlawful or unlicensed copies of an Apple operating system, or to
  1656  // circumvent, violate, or enable the circumvention or violation of, any
  1657  // terms of an Apple operating system software license agreement.
  1658  //
  1659  // Please obtain a copy of the License at
  1660  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1661  //
  1662  // The Original Code and all software distributed under the License are
  1663  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1664  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1665  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1666  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1667  // Please see the License for the specific language governing rights and
  1668  // limitations under the License.
  1669  //
  1670  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1671  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1672  
  1673  type Intptr_t = X__darwin_intptr_t /* _intptr_t.h:32:33 */
  1674  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1675  //
  1676  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1677  //
  1678  // This file contains Original Code and/or Modifications of Original Code
  1679  // as defined in and that are subject to the Apple Public Source License
  1680  // Version 2.0 (the 'License'). You may not use this file except in
  1681  // compliance with the License. The rights granted to you under the License
  1682  // may not be used to create, or enable the creation or redistribution of,
  1683  // unlawful or unlicensed copies of an Apple operating system, or to
  1684  // circumvent, violate, or enable the circumvention or violation of, any
  1685  // terms of an Apple operating system software license agreement.
  1686  //
  1687  // Please obtain a copy of the License at
  1688  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1689  //
  1690  // The Original Code and all software distributed under the License are
  1691  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1692  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1693  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1694  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1695  // Please see the License for the specific language governing rights and
  1696  // limitations under the License.
  1697  //
  1698  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1699  type Uintptr_t = uint64 /* _uintptr_t.h:30:33 */
  1700  
  1701  // These types are used for reserving the largest possible size.
  1702  type User_addr_t = U_int64_t  /* types.h:97:33 */
  1703  type User_size_t = U_int64_t  /* types.h:98:33 */
  1704  type User_ssize_t = Int64_t   /* types.h:99:33 */
  1705  type User_long_t = Int64_t    /* types.h:100:33 */
  1706  type User_ulong_t = U_int64_t /* types.h:101:33 */
  1707  type User_time_t = Int64_t    /* types.h:102:33 */
  1708  type User_off_t = Int64_t     /* types.h:103:33 */
  1709  
  1710  // This defines the size of syscall arguments after copying into the kernel:
  1711  type Syscall_arg_t = U_int64_t /* types.h:111:33 */
  1712  
  1713  type Va_list = X__darwin_va_list /* _va_list.h:32:26 */
  1714  
  1715  type Fpos_t = X__darwin_off_t /* _stdio.h:81:25 */
  1716  
  1717  // NB: to fit things in six character monocase externals, the stdio
  1718  // code uses the prefix `__s' for stdio objects, typically followed
  1719  // by a three-character attempt at a mnemonic.
  1720  
  1721  // stdio buffers
  1722  type X__sbuf = struct {
  1723  	F_base       uintptr
  1724  	F_size       int32
  1725  	F__ccgo_pad1 [4]byte
  1726  } /* _stdio.h:92:1 */
  1727  
  1728  // stdio state variables.
  1729  //
  1730  // The following always hold:
  1731  //
  1732  //	if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  1733  //		_lbfsize is -_bf._size, else _lbfsize is 0
  1734  //	if _flags&__SRD, _w is 0
  1735  //	if _flags&__SWR, _r is 0
  1736  //
  1737  // This ensures that the getc and putc macros (or inline functions) never
  1738  // try to write or read from a file that is in `read' or `write' mode.
  1739  // (Moreover, they can, and do, automatically switch from read mode to
  1740  // write mode, and back, on "r+" and "w+" files.)
  1741  //
  1742  // _lbfsize is used only to make the inline line-buffered output stream
  1743  // code as compact as possible.
  1744  //
  1745  // _ub, _up, and _ur are used when ungetc() pushes back more characters
  1746  // than fit in the current _bf, or when ungetc() pushes back a character
  1747  // that does not match the previous one in _bf.  When this happens,
  1748  // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  1749  // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  1750  //
  1751  // NB: see WARNING above before changing the layout of this structure!
  1752  type X__sFILE = struct {
  1753  	F_p          uintptr
  1754  	F_r          int32
  1755  	F_w          int32
  1756  	F_flags      int16
  1757  	F_file       int16
  1758  	F__ccgo_pad1 [4]byte
  1759  	F_bf         struct {
  1760  		F_base       uintptr
  1761  		F_size       int32
  1762  		F__ccgo_pad1 [4]byte
  1763  	}
  1764  	F_lbfsize    int32
  1765  	F__ccgo_pad2 [4]byte
  1766  	F_cookie     uintptr
  1767  	F_close      uintptr
  1768  	F_read       uintptr
  1769  	F_seek       uintptr
  1770  	F_write      uintptr
  1771  	F_ub         struct {
  1772  		F_base       uintptr
  1773  		F_size       int32
  1774  		F__ccgo_pad1 [4]byte
  1775  	}
  1776  	F_extra uintptr
  1777  	F_ur    int32
  1778  	F_ubuf  [3]uint8
  1779  	F_nbuf  [1]uint8
  1780  	F_lb    struct {
  1781  		F_base       uintptr
  1782  		F_size       int32
  1783  		F__ccgo_pad1 [4]byte
  1784  	}
  1785  	F_blksize    int32
  1786  	F__ccgo_pad3 [4]byte
  1787  	F_offset     Fpos_t
  1788  } /* _stdio.h:126:9 */
  1789  
  1790  // stdio state variables.
  1791  //
  1792  // The following always hold:
  1793  //
  1794  //	if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  1795  //		_lbfsize is -_bf._size, else _lbfsize is 0
  1796  //	if _flags&__SRD, _w is 0
  1797  //	if _flags&__SWR, _r is 0
  1798  //
  1799  // This ensures that the getc and putc macros (or inline functions) never
  1800  // try to write or read from a file that is in `read' or `write' mode.
  1801  // (Moreover, they can, and do, automatically switch from read mode to
  1802  // write mode, and back, on "r+" and "w+" files.)
  1803  //
  1804  // _lbfsize is used only to make the inline line-buffered output stream
  1805  // code as compact as possible.
  1806  //
  1807  // _ub, _up, and _ur are used when ungetc() pushes back more characters
  1808  // than fit in the current _bf, or when ungetc() pushes back a character
  1809  // that does not match the previous one in _bf.  When this happens,
  1810  // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  1811  // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  1812  //
  1813  // NB: see WARNING above before changing the layout of this structure!
  1814  type FILE = X__sFILE /* _stdio.h:157:3 */
  1815  
  1816  // Additional functionality provided by:
  1817  // POSIX.1-2001
  1818  // ISO C99
  1819  
  1820  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1821  //
  1822  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1823  //
  1824  // This file contains Original Code and/or Modifications of Original Code
  1825  // as defined in and that are subject to the Apple Public Source License
  1826  // Version 2.0 (the 'License'). You may not use this file except in
  1827  // compliance with the License. The rights granted to you under the License
  1828  // may not be used to create, or enable the creation or redistribution of,
  1829  // unlawful or unlicensed copies of an Apple operating system, or to
  1830  // circumvent, violate, or enable the circumvention or violation of, any
  1831  // terms of an Apple operating system software license agreement.
  1832  //
  1833  // Please obtain a copy of the License at
  1834  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1835  //
  1836  // The Original Code and all software distributed under the License are
  1837  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1838  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1839  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1840  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1841  // Please see the License for the specific language governing rights and
  1842  // limitations under the License.
  1843  //
  1844  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1845  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  1846  //
  1847  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1848  //
  1849  // This file contains Original Code and/or Modifications of Original Code
  1850  // as defined in and that are subject to the Apple Public Source License
  1851  // Version 2.0 (the 'License'). You may not use this file except in
  1852  // compliance with the License. The rights granted to you under the License
  1853  // may not be used to create, or enable the creation or redistribution of,
  1854  // unlawful or unlicensed copies of an Apple operating system, or to
  1855  // circumvent, violate, or enable the circumvention or violation of, any
  1856  // terms of an Apple operating system software license agreement.
  1857  //
  1858  // Please obtain a copy of the License at
  1859  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1860  //
  1861  // The Original Code and all software distributed under the License are
  1862  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1863  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1864  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1865  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1866  // Please see the License for the specific language governing rights and
  1867  // limitations under the License.
  1868  //
  1869  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1870  
  1871  type Off_t = X__darwin_off_t /* _off_t.h:31:33 */
  1872  
  1873  // Additional functionality provided by:
  1874  // POSIX.1-2008
  1875  
  1876  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  1877  //
  1878  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1879  //
  1880  // This file contains Original Code and/or Modifications of Original Code
  1881  // as defined in and that are subject to the Apple Public Source License
  1882  // Version 2.0 (the 'License'). You may not use this file except in
  1883  // compliance with the License. The rights granted to you under the License
  1884  // may not be used to create, or enable the creation or redistribution of,
  1885  // unlawful or unlicensed copies of an Apple operating system, or to
  1886  // circumvent, violate, or enable the circumvention or violation of, any
  1887  // terms of an Apple operating system software license agreement.
  1888  //
  1889  // Please obtain a copy of the License at
  1890  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1891  //
  1892  // The Original Code and all software distributed under the License are
  1893  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1894  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1895  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1896  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1897  // Please see the License for the specific language governing rights and
  1898  // limitations under the License.
  1899  //
  1900  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1901  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  1902  //
  1903  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1904  //
  1905  // This file contains Original Code and/or Modifications of Original Code
  1906  // as defined in and that are subject to the Apple Public Source License
  1907  // Version 2.0 (the 'License'). You may not use this file except in
  1908  // compliance with the License. The rights granted to you under the License
  1909  // may not be used to create, or enable the creation or redistribution of,
  1910  // unlawful or unlicensed copies of an Apple operating system, or to
  1911  // circumvent, violate, or enable the circumvention or violation of, any
  1912  // terms of an Apple operating system software license agreement.
  1913  //
  1914  // Please obtain a copy of the License at
  1915  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1916  //
  1917  // The Original Code and all software distributed under the License are
  1918  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1919  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1920  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1921  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1922  // Please see the License for the specific language governing rights and
  1923  // limitations under the License.
  1924  //
  1925  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1926  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1927  type Ssize_t = X__darwin_ssize_t /* _ssize_t.h:31:33 */
  1928  
  1929  var _ int8 /* gen.c:2:13: */